Современная теория информации

    Версия курса на 30.03.2026

    Слайды лекций.

    Лекция 1. Историческая справка. Структура курса. Измерение информации. Энтропия: 01-introduction.pdf
    Лекция 2. Условная энтропия. Марковские источники: 02-condentropy.pdf
    Лекция 3. Энтропия на сообщение. Побуквенные коды: 03-prefixcodes.pdf
    Лекция 4. Арифметические кодирование. Ассиметричные системы исчисления: 04-arithmeticcoding.pdf
    Лекция 5. Кодирование дискретных источников при неизвестной статистике: 05-codingwithunknownprob.pdf
    Лекция 6. Алгоритмы сжатия, используемые в архиваторах. 06-archivators.pdf
    Лекция 7. Кодирование с заданным критерием скажения. Скалярное и векторное квантование.
    Лекция 8. Сжатие изображений. Стандарт JPEG.
    Лекция 9. Сжатие изображений. Стандарт JPEG 2000. Стандарт JPEG AI.
    Лекция 10. Сжатие видеоинформации.
    Лекция 11. Модели каналов. Информационная ёмкость каналов связи.
    Лекция 12. Коды, исправляющие ошибки.

    Видеозаписи лекций.

    Лекция 1 [download]
    Лекция 2, Часть 1 [download]. Лекция 2, Часть 2 [download]
    Лекция 3, Часть 1 [download]. Лекция 3, Часть 2 + Практика, Часть 1 [download]. Практика, Часть 2 [download]
    Лекция 4, Часть 1 [download]. Лекция 4, Часть 2 [download] Лекция 4, Часть 3 [download]
    Лекция 5, Часть 1 [download] Лекция 5, Часть 2 [download]
    Лекция 6, Часть 1 [download] Лекция 6, Часть 2 [download]

    Лабораторная работа №1

    Тестовый датасет: [download].
    Дедлайн сдачи: 23 апреля 2026 13:00.

    № Алгоритм Параметры Баллы
    1Код ХаффманаДвухпроходный10
    2Код ХаффманаДвухпроходный, блоками по 2 символа15
    3Код ХаффманаДвухпроходный, с учетом предыдущего символа15
    4Нумерационное кодированиеНа основе арифметического кодирования20
    5Арифметическое кодированиеОценка вероятности A15
    6Арифметическое кодированиеОценка вероятности D15
    7"Стопка книг"Кодирование монотонным кодом10
    8LZ77vlc(x) - монотонный код10
    9LZ77vlc(x) - код Хаффмана15
    10LZW10
    11PPMA20
    12PPMD20
    13Барроуза-УиллераСжатие методом "стопки книг"20

    Требования к программе

    1. Написать кодер и декодер, которые работают как отдельные программы и запускаются с командной строки:
    2. В качестве параметра на вход кодера подаётся имя сжимаемого файла. На выходе программа выдаёт файл со сжатыми данными: encoder infile zipfile.
    3. На вход декодера подаётся файл со сжатыми данными и имя декодированного файла: decoder zipfile decfile. На выходе декодер выдаёт файл decfile, который идентичен исходному infile (бит в бит).
    4. Алгоритмы, относящиеся непосредственно к кодированию и декодированию должны быть реализованы без использования сторонних библиотек.

    На почту eabelyaev@itmo.ru прислать:

    1. Отчет в pdf формате, который включает в себя:
      • ФИО студента, номер группы и задания.
      • Описание алгоритма кодирования и декодирования.
      • Для каждого из 14 файлов Calgary corpus вычислить оценки H(X), H(X|X), H(X|XX), а также указать значения средних затрат на символ для реализованного алгоритма (в битах) и суммарный размер сжатого файла в байтах. Данные представить в виде таблицы.
      • Суммарное значение сжатого размера всех файлов в байтах.
    2. Исходный код кодера и декодера.
    3. Исполняемые программы кодера и декодера, готовыми к запуску на Windows 10.