Современные Компьютерные Технологии
2008 - 2009
Тематический план курсa
- Oбзор современных алгоритмов и структур данных
- Основы теории графов и линейнай алгебра
- Современные информационные технологии information retieval
- Архитектура и алгоритмы поисковых систем, PageRank, Hits
- Измерения в интернете
- Передача информации и элементы криптографии
- Распределенные системы и алгоритмы, map-reduce
- Алгоритмы компрессии данных
- Алгоритмы для электронной коммерции
- Рандомизированные (случайные) алгоритмы
Лекции
Модуль 1
- [03.09.2008] Основы линейной алгебры и теории графов, матрицы смежности,
собственные значения и вектора
- [10.09.2008] Основы алгоритмов и структур данных: очереди, стеки, деревья,
поиск в ширину, поиск в глубину, понятие сложности алгоритма
- [17.09.2008] Maрковские цепи, случайные блуждания, стохастические процессы
- [24.09.2008] PageRank aлгоритм, теорема Перрона-Фробениуса, приводимость матрицы
- [01.10.2008] HITS алгоритм. Понятия Hubs и Authorities, структура веб графа
- [08.10.2008] Архитектура поисковых систем, инвертированный индех, хеш таблицы и хеш функции,
ранжирование, точность и полонота, information retrieval
- [15.10.2008] Сингулярное разложение матрицы (SVD), Латенто-семантический анализ (LSI),
Спектральная кластеризация графов
- [22.10.2008] Зачет
Модуль 2
- [29.10.2008] Основы криптографии
- [05.11.2008] Методы измерений в интернете (гостевая лекция - Spylog)
- [12.11.2008] Распределенные системы, архитекруа, параллельное программирование, MPI
- [19.11.2008] MapReduce. функциональное программирование, использование в информационных технологиях
- [26.11.2008] Закон Амдала, балансировние нагрузки, многоуровневые схемы делeния графa
- [03.12.2008] Сжатие данных, информационная энтропия, теорема Шеннона, алгоритм Хаффмана
- [10.12.2008] Сжатие данных без потерь, алгоритмы RLE, LZ77, LZW
- [17.11.2008] Контрольная работа
Модуль 3
- [26.01.2009] Сдача ДЗ
- [02.02.2009] Дискретное преобразование Фурье, FFT, сжатие с потерями, сжатие изображений, JPEG
- [16.02.2009] Рандомизированные алгоритмы, Лас Вегас и Монте Карло, семплирование, приближенное умножение матриц
- [02.03.2009] Экзамен
Домашние задания
Модуль 1
- Рассмотреть поведение алгоритма BFS при замене очереди на стек.
Написать на Matlab stack и queue.
- Имплементировать алгоритм PageRank, подсчитать PageRank для двух графов
из раздела "Данные" и отсортировать узлы в графах по рангу.
-
Имплементировать алгоритм HITS, подсчитать hubs и authorities для двух графов
Модуль 2
-
Написать генератор для линейной конгруентной последовательности
-
Имплементировать процедуру параллельного умножения матриц
-
Имплементировать процедуру параллельного умножения разряженной матрицы на вектор,
сбалансировать вычислительные нагрузки между процессорами.
-
Вычислить информационную энтропию текста
-
Написать процедуру построения кодировочного дерева алгоритма Хаффмана
Модуль 3
-
Фильтрaция изображений с помощью дискретного косинус предобразования (DCT)
-
Приблеженное умножение матриц (Монте-Карло алгоритм) с использованием 1) равномерного и 2) неравномерного семплирования
Литература к курсу
Книги
-
Introduction to Algorithms. Thomas Cormen, Charles Leiserson, Ronlad Rivest, Clifford Stein. MIT Press, 2003.
Алгоритмы. Построение и Анализ. Томас Кормен, Чарльз Лейзерсон, Рональд Ривер, Клиффорд Штейн
-
Managing Gigabytes. Alistair Moffat, Timothy C. Bell, Morgan Kaufmann, 1999.
-
Matrix Computations. Gene H. Golub , Charles F. Van Loan, The Johns Hopkins University Press, 1996.
Матричные вычисления. Джине Голуб и Чарльз Ван Лоун
-
Mining the Web. Soumen Chakrabarti, Morgan Kaufmann, 2002.
-
Introduction to Information Retrieval.Christopher D. Manning,Prabhakar Raghavan,Hinrich Schutze, Cambridge University Press, 2008
Статьи
-
A Survey of Eigenvector Methods for Web Information Retrieval,
Amy N. Langville and Carl D. Meyer
- The PageRank citation ranking: bringing order to the web
, Sergey Brin and Larry Page
- Authoritative Sources in a Hyperlinked Environment
, Jon M. Kleinberg
-
Graph structure in the web,
A. Broder et al
-
Как работают поисковые системы, Илья Сегалович,
-
Introduction to search engines design,
Lecture slides
- Indexing by Latent Semantic Analysis
,
Scott Deerwester, Susan T. Dumais et al
-
Spectral Graph Partitioning,
Lecture slides
-
Измерения интернета ,
Sergey Kedrov, Lecture slides from Spylog
-
Cookie Corrected Audience Data, White Paper,
Quantcast
-
Public Key Cryptography,
Applications Algorithms and Mathematical Explanations AMS
-
Overview of Cryptography,,
Handbook of Applied Cryptography, A. Menezes, P. van
Oorschot, and S. Vanstone
-
Introduction to Parallel Computing
Los Alamos Naional Laboratory
-
MapReduce: Simplified Data Processing on Large Clusters
Jeffrey Dean and Sanjay Ghemawat
-
A Fast and High Quality Multilevel Scheme for
Partitioning Irregular Graphs
George Karypis and Vipin Kumar
-
Lecture slides on Huffman coding
-
Introduction to Data Compression
Guy E. Blelloch
-
Numerical Recipes in C Numerical Recipes in C: The Art of Scientific Computing.
Chapter 7. Random Numbers
William H. Press, Brian P. Flannery, Saul A. Teukolsky, William T. Vetterling
-
Acceptance-Rejection Method. Lecture notes
Karl Sigman
-
Fast Monte-Carlo Algorithms for Approximate Matrix Multiplication
Petros Drineas, Ravi Kannan
-
Fast Monte Carlo Algorithms for Matrix Operations & Massive Data Set Analysis. Lecture slides
Michael W. Mahoney
Данные
-
web1 и web2
-
matrix для параллельных вычислений
- Тексты для рассчета энтропопии и алгоритмов сжатия
1,
2,
3,
4,