SlideShare a Scribd company logo
Теория кодирования
МФТИ, осень 2013
Александр Дайняк
www.dainiak.com
Граф канала
Можно задать модель канала графом, вершины которого — символы
алфавита канала.
Дуга идёт из 𝑥 в 𝑦, если в канале возможна ошибка замещения 𝑥 на 𝑦.
Если в канале для каждой пары символов 𝑥, 𝑦 возможны либо оба
замещения 𝑥 → 𝑦, 𝑦 → 𝑥, либо ни одно из них, то граф канала можно
считать неориентированным.
Граф канала
Пример: если алфавит канала 0,1,2 , и возможны только
замещения 0 → 1 и 1 → 2, то граф такой:
Если возможны замещения 0 → 1, 1 → 0, 1 → 2 и 2 → 1,
то граф такой:
0 1 2
0 1 2
Граф канала
Пусть 𝐺 — граф канала.
Если считать каждый символ канала отдельным сообщением, то во
избежание ошибок придётся использовать множество символов
𝐶1, являющееся независимым множеством в 𝐺:
При этом в лучшем случае пропускная способность канала
получается такой же, как у канала без ошибок, алфавит которого
имеет мощность 𝛼 𝐺 .
𝟎 1 𝟐
Граф канала
Пусть 𝐺 = 𝑉, 𝐸 — граф канала.
Если по каналу мы посылаем пары символов, то следует выбирать
для использования такое множество пар 𝐶2, чтобы
∄ 𝑥′, 𝑦′ , 𝑥′′, 𝑦′′ ∈ 𝐶2:
𝑥′
= 𝑥′′
∨ 𝑥′
𝑥′′
∈ 𝐸 ∧ 𝑦′
= 𝑦′′
∨ 𝑦′
𝑦′′
∈ 𝐸
Если мы рассмотрим такое 𝐶2, имеющее максимально возможную
мощность, то данный код позволяет достичь пропускной
способности 𝐶2 .
Граф канала
Замечание. В чём смысл извлечения квадратного корня из 𝐶2 :
Это скорость передачи данных в канале в расчёте на один
передаваемый символ.
Если бы у нас был безошибочный канал, в алфавите которого ровно
𝐶2 символов, то мы могли бы передавать по нему как раз 𝐶2
сообщений длины 2.
Граф канала
Если 𝐺 — граф канала, и мы посылаем тройки символов, то следует
выбирать такое множество троек 𝐶3, чтобы в нём не было двух
троек, соответствующие компоненты которых совпадают или
образуют ребро в 𝐺.
Если мы рассмотрим такое 𝐶3, имеющее максимально возможную
мощность, то данный код позволит достичь пропускной
способности
3
𝐶3 .
И так далее…
Шенноновское произведение
Шенноновское произведение графов 𝐺 и 𝐻 — это граф 𝐺 × 𝐻 со
множеством вершин
𝑉 𝐺 × 𝐻 = 𝑥, 𝑦 ∣ 𝑥 ∈ 𝑉 𝐺 , 𝑦 ∈ 𝑉 𝐻
Рёбра в 𝐺 × 𝐻 между парами 𝑥′, 𝑦′ и 𝑥′′, 𝑦′′ , для которых
𝑥′
= 𝑥′′
∨ 𝑥′
𝑥′′
∈ 𝐸 𝐺 ∧ 𝑦′
= 𝑦′′
∨ 𝑦′
𝑦′′
∈ 𝐸 𝐻
Очевидно, 𝐺1 × 𝐺2 × 𝐺3 ≃ 𝐺1 × 𝐺2 × 𝐺3 и 𝐺1 × 𝐺2 ≃ 𝐺2 × 𝐺1
для любых 𝐺1, 𝐺2, 𝐺3.
Шенноновское произведение
Пример:
× =
𝑎
𝑏
𝑐
1 2
𝑎1
𝑏1
𝑐1
𝑎2
𝑏2
𝑐2
Шенноновская ёмкость
Шенноновская ёмкость графа 𝐺:
cap 𝐺 = sup
𝑛∈ℕ
𝑛
𝛼 𝐺 × 𝐺 × ⋯ × 𝐺
Это наибольшая возможная (в пределе) «скорость», с которой
можно передавать без ошибок данные по каналу, моделью
которого является граф 𝐺.
𝑛 раз
Верхняя оценка
шенноновской ёмкости графа
Пусть 𝐺 — произвольный граф.
Будем рассматривать наборы весов 𝒘 на вершинах графа 𝐺, такие,
что
• ∀𝑥 𝑤 𝑥 ≥ 0
• 𝑥∈𝑉 𝐺 𝑤 𝑥 = 1
Для любого множества 𝐴 ⊆ 𝐺 обозначим
𝑤 𝐴 ≔
𝑥∈𝐴
𝑤 𝑥
Верхняя оценка
шенноновской ёмкости графа
Для произвольного графа 𝐺 рассмотрим величину
𝜈 𝐺 ≔ min
𝒘
max
𝐾−клика
в 𝐺
𝑤 𝐾
(ясно, что max достаточно брать только по максимальным по
включению кликам)
Теорема Шеннона о верхней оценке ёмкости:
Для любого 𝐺 справедливо неравенство
cap 𝐺 ≤ 𝜈 𝐺
−1
Доказательство верхней оценки
шенноновской ёмкости графа
Докажем, что
𝑛
𝛼 𝐺 𝑛 ≤ 𝜈 𝐺
−1
для каждого 𝑛.
Пусть 𝐴 ⊆ 𝑉 𝐺 — независимое множество размера 𝛼 𝐺 .
Рассмотрим набор весов 𝒘0, в котором
• 𝑤0 𝑥 ≔ 0, если 𝑥 ∉ 𝐴,
• 𝑤0 𝑥 ≔ 𝛼 𝐺
−1
, если 𝑥 ∈ 𝐴.
Для таких весов получим
𝜈 𝐺 ≤ max
𝐾−клика
в 𝐺
𝑤0 𝐾 = 𝛼 𝐺
−1
откуда 𝛼 𝐺 ≤ 𝜈 𝐺
−1
.
Доказательство верхней оценки
шенноновской ёмкости графа
Итак, 𝜈 𝐺 ≤ 𝛼 𝐺
−1
для любого 𝐺.
Лемма. Для любых графов 𝐺, 𝐻 выполнено
𝜈 𝐺 × 𝐻 = 𝜈 𝐺 ⋅ 𝜈 𝐻
Если докажем лемму, то докажем и теорему:
𝜈 𝐺 𝑛 = 𝜈 𝐺
𝑛
⇒
𝑛
𝛼 𝐺 𝑛 ≤
𝑛
𝜈 𝐺 𝑛 −1
= 𝜈 𝐺
−1
Доказательство верхней оценки
шенноновской ёмкости графа
Лемма. Для любых графов 𝐺, 𝐻 выполнено
𝜈 𝐺 × 𝐻 = 𝜈 𝐺 ⋅ 𝜈 𝐻
Доказательство леммы:
Пусть 𝒘 𝐺
∗
и 𝒘 𝐻
∗
— наборы весов на вершинах графов 𝐺 и 𝐻, на
которых достигаются минимумы в 𝜈 𝐺 и 𝜈 𝐻 .
Рассмотрим набор весов 𝒘 𝐺×𝐻 на вершинах графа 𝐺 × 𝐻, такой,
что
𝑤 𝐺×𝐻 𝑥, 𝑦 ≔ 𝑤 𝐺
∗
𝑥 ⋅ 𝑤 𝐻
∗
𝑦
Доказательство верхней оценки
шенноновской ёмкости графа
Берём набор весов 𝑤 𝐺×𝐻 𝑥, 𝑦 ≔ 𝑤 𝐺
∗
𝑥 ⋅ 𝑤 𝐻
∗
𝑦 .
Любая максимальная по включению клика 𝐾 в графе 𝐺 × 𝐻
является множеством пар вида
𝑥, 𝑦 ∣ 𝑥 ∈ 𝐾 𝐺, 𝑦 ∈ 𝐾 𝐻
где 𝐾 𝐺 и 𝐾 𝐻 — клики в 𝐺 и 𝐻 соответственно. Для таких клик 𝐾
имеем
𝑤 𝐺×𝐻 𝐾 =
𝑥,𝑦 ∈𝐾
𝑤 𝐺
∗
𝑥 ⋅ 𝑤 𝐻
∗
𝑦 =
𝑥∈𝐾 𝐺
𝑤 𝐺
∗
𝑥
𝑦∈𝐾 𝐻
𝑤 𝐻
∗
𝑦 =
= 𝑤 𝐺
∗
𝐾 𝐺 ⋅ 𝑤 𝐻
∗
𝐾 𝐻
Доказательство верхней оценки
шенноновской ёмкости графа
Имеем
𝜈 𝐺 × 𝐻 = min
𝒘
max
𝐾−клика
в 𝐺×𝐻
𝑤 𝐾 ≤
≤ max
𝐾−клика
в 𝐺×𝐻
𝑤 𝐺×𝐻 𝐾 = max
𝐾−клика
в 𝐺×𝐻
𝑤 𝐺
∗
𝐾 𝐺 ⋅ 𝑤 𝐻
∗
𝐾 𝐻 ≤
≤ max
𝐾−клика
в 𝐺
𝑤 𝐺
∗
𝐾 ⋅ max
𝐾−клика
в 𝐻
𝑤 𝐻
∗
𝐾 = 𝜈 𝐺 ⋅ 𝜈 𝐻
В итоге, 𝜈 𝐺 × 𝐻 ≤ 𝜈 𝐺 ⋅ 𝜈 𝐻 .
Доказательство верхней оценки
шенноновской ёмкости графа
Обозначим через 𝒘 набор весов на кликах графа (неотрицательны,
сумма равна единице).
По теореме о свойствах двойственных задач линейного
программирования, для любого графа имеет место равенство
min
𝒘
max
𝐾
𝑥∈𝐾
𝑤 𝑥 = max
𝒘
min
𝑥
𝐾∋𝑥
𝑤 𝐾
Доказательство верхней оценки
шенноновской ёмкости графа
max
𝒘
min
𝑥
𝐾∋𝑥
𝑤 𝐾
Пусть 𝒘 𝐺
∗
и 𝒘 𝐻
∗
— наборы весов, на которых достигается max для
графов 𝐺 и 𝐻.
Построим набор весов 𝑤 𝐺×𝐻 на кликах графа 𝐺 × 𝐻:
• Пусть клика 𝐾 может быть представлена в виде 𝐾 𝐺 × 𝐾 𝐻, где 𝐾 𝐺 и
𝐾 𝐻 — клики в 𝐺 и 𝐻. Тогда полагаем 𝑤 𝐺×𝐻 𝐾 ≔ 𝑤 𝐺
∗
𝐾 𝐺 ⋅ 𝑤 𝐻
∗
𝐾 𝐻 .
• Для остальных клик 𝐾 полагаем 𝑤 𝐺×𝐻 𝐾 ≔ 0.
Доказательство верхней оценки
шенноновской ёмкости графа
Для такого набора весов и для любой фиксированной вершины 𝑥, 𝑦 ∈
𝑉 𝐺 × 𝐻 имеем
𝐾∋ 𝑥,𝑦
𝑤 𝐺×𝐻 𝐾 ≥
𝐾∋ 𝑥,𝑦
∃𝐾 𝐺,𝐾 𝐻: 𝐾=𝐾 𝐺×𝐾 𝐻
𝑤 𝐺×𝐻 𝐾 =
𝐾 𝐺∋𝑥,
𝐾 𝐻∋𝑦
𝑤 𝐺
∗
𝐾 𝐺 ⋅ 𝑤 𝐻
∗
𝐾 𝐻 =
=
𝐾 𝐺∋𝑥
𝑤 𝐺
∗
𝐾 𝐺
𝐾 𝐻∋𝑦
𝑤 𝐻
∗
𝐾 𝐻 ≥ 𝜈 𝐺 ⋅ 𝜈 𝐻
Отсюда следует неравенство 𝜈 𝐺 × 𝐻 ≥ 𝜈 𝐺 ⋅ 𝜈 𝐻 , а значит верно
равенство 𝜈 𝐺 × 𝐻 = 𝜈 𝐺 ⋅ 𝜈 𝐻 .
Пример применения теоремы
Оценим шенноновскую ёмкость цепи на трёх вершинах. Рассмотрим набор
весов на вершинах графа 𝑃3, на котором достигается минимум.
Пусть веса на крайних вершинах цепи равны 𝑥 и 𝑧, а у средней вершины вес
равен 𝑦. Получаем задачу линейного программирования:
𝑥, 𝑦, 𝑧 ≥ 0
𝑥 + 𝑦 + 𝑧 = 1
𝑥 + 𝑦 ≤ 𝜈
𝑦 + 𝑧 ≤ 𝜈
𝜈 → min
Решение этой задачи: 𝑥 = 𝑧 = 1 2 , 𝑦 = 0 и 𝜈 = 1 2. Отсюда cap 𝑃3 ≤ 2.
При этом очевидны соотношения cap 𝑃3 ≥ 𝛼 𝑃3 = 2, а значит cap 𝑃3 = 2.

More Related Content

Viewers also liked

Циклические коды БЧХ, Хемминга. Восстановление синхронизации
Циклические коды БЧХ, Хемминга. Восстановление синхронизацииЦиклические коды БЧХ, Хемминга. Восстановление синхронизации
Циклические коды БЧХ, Хемминга. Восстановление синхронизации
Alex Dainiak
 
Основы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьяхОсновы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьях
Alex Dainiak
 
Основы теории графов 03: связность
Основы теории графов 03: связностьОсновы теории графов 03: связность
Основы теории графов 03: связность
Alex Dainiak
 
Основы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графовОсновы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графов
Alex Dainiak
 
Эйлеровы и гамильтоновы циклы. Теорема Турана.
Эйлеровы и гамильтоновы циклы. Теорема Турана.Эйлеровы и гамильтоновы циклы. Теорема Турана.
Эйлеровы и гамильтоновы циклы. Теорема Турана.Alex Dainiak
 
Основы теории графов 06: триангуляции и трёхсвязные планарные графы
Основы теории графов 06: триангуляции и трёхсвязные планарные графыОсновы теории графов 06: триангуляции и трёхсвязные планарные графы
Основы теории графов 06: триангуляции и трёхсвязные планарные графы
Alex Dainiak
 

Viewers also liked (6)

Циклические коды БЧХ, Хемминга. Восстановление синхронизации
Циклические коды БЧХ, Хемминга. Восстановление синхронизацииЦиклические коды БЧХ, Хемминга. Восстановление синхронизации
Циклические коды БЧХ, Хемминга. Восстановление синхронизации
 
Основы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьяхОсновы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьях
 
Основы теории графов 03: связность
Основы теории графов 03: связностьОсновы теории графов 03: связность
Основы теории графов 03: связность
 
Основы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графовОсновы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графов
 
Эйлеровы и гамильтоновы циклы. Теорема Турана.
Эйлеровы и гамильтоновы циклы. Теорема Турана.Эйлеровы и гамильтоновы циклы. Теорема Турана.
Эйлеровы и гамильтоновы циклы. Теорема Турана.
 
Основы теории графов 06: триангуляции и трёхсвязные планарные графы
Основы теории графов 06: триангуляции и трёхсвязные планарные графыОсновы теории графов 06: триангуляции и трёхсвязные планарные графы
Основы теории графов 06: триангуляции и трёхсвязные планарные графы
 

Similar to Графовая модель канала связи. Шенноновская ёмкость

Гиперграфы. Покрытия. Жадный алгоритм.
Гиперграфы. Покрытия. Жадный алгоритм.Гиперграфы. Покрытия. Жадный алгоритм.
Гиперграфы. Покрытия. Жадный алгоритм.Alex Dainiak
 
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—ШпильманаЗадача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Alex Dainiak
 
Границы Плоткина и Элайеса—Бассалыго
Границы Плоткина и Элайеса—БассалыгоГраницы Плоткина и Элайеса—Бассалыго
Границы Плоткина и Элайеса—Бассалыго
Alex Dainiak
 
Теорема Алона о нулях и её применения
Теорема Алона о нулях и её примененияТеорема Алона о нулях и её применения
Теорема Алона о нулях и её примененияAlex Dainiak
 
Производящие функции
Производящие функцииПроизводящие функции
Производящие функцииAlex Dainiak
 
Обращение Мёбиуса на ч.у.м.
Обращение Мёбиуса на ч.у.м.Обращение Мёбиуса на ч.у.м.
Обращение Мёбиуса на ч.у.м.Alex Dainiak
 
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
Alex Dainiak
 
Коды Адамара. Каскадные коды Форни.
Коды Адамара. Каскадные коды Форни.Коды Адамара. Каскадные коды Форни.
Коды Адамара. Каскадные коды Форни.
Alex Dainiak
 
Линейные коды
Линейные кодыЛинейные коды
Линейные коды
Alex Dainiak
 
ТФРВС - весна 2014 - лекция 4
ТФРВС - весна 2014 - лекция 4ТФРВС - весна 2014 - лекция 4
ТФРВС - весна 2014 - лекция 4
Alexey Paznikov
 
Алгоритмы и структуры данных осень 2013 лекция 7
Алгоритмы и структуры данных осень 2013 лекция 7Алгоритмы и структуры данных осень 2013 лекция 7
Алгоритмы и структуры данных осень 2013 лекция 7Technopark
 
Основы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задачОсновы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задач
DEVTYPE
 
Циклические коды. Граница БЧХ
Циклические коды. Граница БЧХЦиклические коды. Граница БЧХ
Циклические коды. Граница БЧХ
Alex Dainiak
 
Коды на основе многочленов и алгоритмы их декодирования
Коды на основе многочленов и алгоритмы их декодированияКоды на основе многочленов и алгоритмы их декодирования
Коды на основе многочленов и алгоритмы их декодирования
Alex Dainiak
 
ТФРВС - весна 2014 - лекция 8
ТФРВС - весна 2014 - лекция 8ТФРВС - весна 2014 - лекция 8
ТФРВС - весна 2014 - лекция 8
Alexey Paznikov
 
Use of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signatureUse of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signature
Andrei Poliakov
 
ТФРВС - весна 2014 - лекция 10
ТФРВС - весна 2014 - лекция 10ТФРВС - весна 2014 - лекция 10
ТФРВС - весна 2014 - лекция 10
Alexey Paznikov
 
VOL-1-No-53-2020
VOL-1-No-53-2020VOL-1-No-53-2020
VOL-1-No-53-2020
Sciences of Europe
 
Informatika nova ya
Informatika nova yaInformatika nova ya
Informatika nova ya
matthewzharecky1998
 

Similar to Графовая модель канала связи. Шенноновская ёмкость (20)

Гиперграфы. Покрытия. Жадный алгоритм.
Гиперграфы. Покрытия. Жадный алгоритм.Гиперграфы. Покрытия. Жадный алгоритм.
Гиперграфы. Покрытия. Жадный алгоритм.
 
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—ШпильманаЗадача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
 
Границы Плоткина и Элайеса—Бассалыго
Границы Плоткина и Элайеса—БассалыгоГраницы Плоткина и Элайеса—Бассалыго
Границы Плоткина и Элайеса—Бассалыго
 
Теорема Алона о нулях и её применения
Теорема Алона о нулях и её примененияТеорема Алона о нулях и её применения
Теорема Алона о нулях и её применения
 
Производящие функции
Производящие функцииПроизводящие функции
Производящие функции
 
Обращение Мёбиуса на ч.у.м.
Обращение Мёбиуса на ч.у.м.Обращение Мёбиуса на ч.у.м.
Обращение Мёбиуса на ч.у.м.
 
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
Коды, исправляющие ошибки. Простейшие границы. Коды Варшамова—Тененгольца.
 
Коды Адамара. Каскадные коды Форни.
Коды Адамара. Каскадные коды Форни.Коды Адамара. Каскадные коды Форни.
Коды Адамара. Каскадные коды Форни.
 
Линейные коды
Линейные кодыЛинейные коды
Линейные коды
 
ТФРВС - весна 2014 - лекция 4
ТФРВС - весна 2014 - лекция 4ТФРВС - весна 2014 - лекция 4
ТФРВС - весна 2014 - лекция 4
 
Matanal 31oct
Matanal 31octMatanal 31oct
Matanal 31oct
 
Алгоритмы и структуры данных осень 2013 лекция 7
Алгоритмы и структуры данных осень 2013 лекция 7Алгоритмы и структуры данных осень 2013 лекция 7
Алгоритмы и структуры данных осень 2013 лекция 7
 
Основы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задачОсновы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задач
 
Циклические коды. Граница БЧХ
Циклические коды. Граница БЧХЦиклические коды. Граница БЧХ
Циклические коды. Граница БЧХ
 
Коды на основе многочленов и алгоритмы их декодирования
Коды на основе многочленов и алгоритмы их декодированияКоды на основе многочленов и алгоритмы их декодирования
Коды на основе многочленов и алгоритмы их декодирования
 
ТФРВС - весна 2014 - лекция 8
ТФРВС - весна 2014 - лекция 8ТФРВС - весна 2014 - лекция 8
ТФРВС - весна 2014 - лекция 8
 
Use of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signatureUse of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signature
 
ТФРВС - весна 2014 - лекция 10
ТФРВС - весна 2014 - лекция 10ТФРВС - весна 2014 - лекция 10
ТФРВС - весна 2014 - лекция 10
 
VOL-1-No-53-2020
VOL-1-No-53-2020VOL-1-No-53-2020
VOL-1-No-53-2020
 
Informatika nova ya
Informatika nova yaInformatika nova ya
Informatika nova ya
 

More from Alex Dainiak

Конспект лекций по теории кодирования
Конспект лекций по теории кодированияКонспект лекций по теории кодирования
Конспект лекций по теории кодирования
Alex Dainiak
 
Приложения теории кодирования
Приложения теории кодированияПриложения теории кодирования
Приложения теории кодирования
Alex Dainiak
 
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Alex Dainiak
 
Визуализация графов: left-right алгоритм распознавания планарности
Визуализация графов: left-right алгоритм распознавания планарностиВизуализация графов: left-right алгоритм распознавания планарности
Визуализация графов: left-right алгоритм распознавания планарностиAlex Dainiak
 
Визуализация графов: укладки деревьев
Визуализация графов: укладки деревьевВизуализация графов: укладки деревьев
Визуализация графов: укладки деревьевAlex Dainiak
 
Визуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладкеВизуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладкеAlex Dainiak
 
Визуализация графов: история
Визуализация графов: историяВизуализация графов: история
Визуализация графов: историяAlex Dainiak
 
Визуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудностьВизуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудностьAlex Dainiak
 
Размерность Вапника—Червоненкиса
Размерность Вапника—ЧервоненкисаРазмерность Вапника—Червоненкиса
Размерность Вапника—ЧервоненкисаAlex Dainiak
 
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...Alex Dainiak
 

More from Alex Dainiak (10)

Конспект лекций по теории кодирования
Конспект лекций по теории кодированияКонспект лекций по теории кодирования
Конспект лекций по теории кодирования
 
Приложения теории кодирования
Приложения теории кодированияПриложения теории кодирования
Приложения теории кодирования
 
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
 
Визуализация графов: left-right алгоритм распознавания планарности
Визуализация графов: left-right алгоритм распознавания планарностиВизуализация графов: left-right алгоритм распознавания планарности
Визуализация графов: left-right алгоритм распознавания планарности
 
Визуализация графов: укладки деревьев
Визуализация графов: укладки деревьевВизуализация графов: укладки деревьев
Визуализация графов: укладки деревьев
 
Визуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладкеВизуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладке
 
Визуализация графов: история
Визуализация графов: историяВизуализация графов: история
Визуализация графов: история
 
Визуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудностьВизуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудность
 
Размерность Вапника—Червоненкиса
Размерность Вапника—ЧервоненкисаРазмерность Вапника—Червоненкиса
Размерность Вапника—Червоненкиса
 
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...
 

Графовая модель канала связи. Шенноновская ёмкость

  • 1. Теория кодирования МФТИ, осень 2013 Александр Дайняк www.dainiak.com
  • 2. Граф канала Можно задать модель канала графом, вершины которого — символы алфавита канала. Дуга идёт из 𝑥 в 𝑦, если в канале возможна ошибка замещения 𝑥 на 𝑦. Если в канале для каждой пары символов 𝑥, 𝑦 возможны либо оба замещения 𝑥 → 𝑦, 𝑦 → 𝑥, либо ни одно из них, то граф канала можно считать неориентированным.
  • 3. Граф канала Пример: если алфавит канала 0,1,2 , и возможны только замещения 0 → 1 и 1 → 2, то граф такой: Если возможны замещения 0 → 1, 1 → 0, 1 → 2 и 2 → 1, то граф такой: 0 1 2 0 1 2
  • 4. Граф канала Пусть 𝐺 — граф канала. Если считать каждый символ канала отдельным сообщением, то во избежание ошибок придётся использовать множество символов 𝐶1, являющееся независимым множеством в 𝐺: При этом в лучшем случае пропускная способность канала получается такой же, как у канала без ошибок, алфавит которого имеет мощность 𝛼 𝐺 . 𝟎 1 𝟐
  • 5. Граф канала Пусть 𝐺 = 𝑉, 𝐸 — граф канала. Если по каналу мы посылаем пары символов, то следует выбирать для использования такое множество пар 𝐶2, чтобы ∄ 𝑥′, 𝑦′ , 𝑥′′, 𝑦′′ ∈ 𝐶2: 𝑥′ = 𝑥′′ ∨ 𝑥′ 𝑥′′ ∈ 𝐸 ∧ 𝑦′ = 𝑦′′ ∨ 𝑦′ 𝑦′′ ∈ 𝐸 Если мы рассмотрим такое 𝐶2, имеющее максимально возможную мощность, то данный код позволяет достичь пропускной способности 𝐶2 .
  • 6. Граф канала Замечание. В чём смысл извлечения квадратного корня из 𝐶2 : Это скорость передачи данных в канале в расчёте на один передаваемый символ. Если бы у нас был безошибочный канал, в алфавите которого ровно 𝐶2 символов, то мы могли бы передавать по нему как раз 𝐶2 сообщений длины 2.
  • 7. Граф канала Если 𝐺 — граф канала, и мы посылаем тройки символов, то следует выбирать такое множество троек 𝐶3, чтобы в нём не было двух троек, соответствующие компоненты которых совпадают или образуют ребро в 𝐺. Если мы рассмотрим такое 𝐶3, имеющее максимально возможную мощность, то данный код позволит достичь пропускной способности 3 𝐶3 . И так далее…
  • 8. Шенноновское произведение Шенноновское произведение графов 𝐺 и 𝐻 — это граф 𝐺 × 𝐻 со множеством вершин 𝑉 𝐺 × 𝐻 = 𝑥, 𝑦 ∣ 𝑥 ∈ 𝑉 𝐺 , 𝑦 ∈ 𝑉 𝐻 Рёбра в 𝐺 × 𝐻 между парами 𝑥′, 𝑦′ и 𝑥′′, 𝑦′′ , для которых 𝑥′ = 𝑥′′ ∨ 𝑥′ 𝑥′′ ∈ 𝐸 𝐺 ∧ 𝑦′ = 𝑦′′ ∨ 𝑦′ 𝑦′′ ∈ 𝐸 𝐻 Очевидно, 𝐺1 × 𝐺2 × 𝐺3 ≃ 𝐺1 × 𝐺2 × 𝐺3 и 𝐺1 × 𝐺2 ≃ 𝐺2 × 𝐺1 для любых 𝐺1, 𝐺2, 𝐺3.
  • 10. Шенноновская ёмкость Шенноновская ёмкость графа 𝐺: cap 𝐺 = sup 𝑛∈ℕ 𝑛 𝛼 𝐺 × 𝐺 × ⋯ × 𝐺 Это наибольшая возможная (в пределе) «скорость», с которой можно передавать без ошибок данные по каналу, моделью которого является граф 𝐺. 𝑛 раз
  • 11. Верхняя оценка шенноновской ёмкости графа Пусть 𝐺 — произвольный граф. Будем рассматривать наборы весов 𝒘 на вершинах графа 𝐺, такие, что • ∀𝑥 𝑤 𝑥 ≥ 0 • 𝑥∈𝑉 𝐺 𝑤 𝑥 = 1 Для любого множества 𝐴 ⊆ 𝐺 обозначим 𝑤 𝐴 ≔ 𝑥∈𝐴 𝑤 𝑥
  • 12. Верхняя оценка шенноновской ёмкости графа Для произвольного графа 𝐺 рассмотрим величину 𝜈 𝐺 ≔ min 𝒘 max 𝐾−клика в 𝐺 𝑤 𝐾 (ясно, что max достаточно брать только по максимальным по включению кликам) Теорема Шеннона о верхней оценке ёмкости: Для любого 𝐺 справедливо неравенство cap 𝐺 ≤ 𝜈 𝐺 −1
  • 13. Доказательство верхней оценки шенноновской ёмкости графа Докажем, что 𝑛 𝛼 𝐺 𝑛 ≤ 𝜈 𝐺 −1 для каждого 𝑛. Пусть 𝐴 ⊆ 𝑉 𝐺 — независимое множество размера 𝛼 𝐺 . Рассмотрим набор весов 𝒘0, в котором • 𝑤0 𝑥 ≔ 0, если 𝑥 ∉ 𝐴, • 𝑤0 𝑥 ≔ 𝛼 𝐺 −1 , если 𝑥 ∈ 𝐴. Для таких весов получим 𝜈 𝐺 ≤ max 𝐾−клика в 𝐺 𝑤0 𝐾 = 𝛼 𝐺 −1 откуда 𝛼 𝐺 ≤ 𝜈 𝐺 −1 .
  • 14. Доказательство верхней оценки шенноновской ёмкости графа Итак, 𝜈 𝐺 ≤ 𝛼 𝐺 −1 для любого 𝐺. Лемма. Для любых графов 𝐺, 𝐻 выполнено 𝜈 𝐺 × 𝐻 = 𝜈 𝐺 ⋅ 𝜈 𝐻 Если докажем лемму, то докажем и теорему: 𝜈 𝐺 𝑛 = 𝜈 𝐺 𝑛 ⇒ 𝑛 𝛼 𝐺 𝑛 ≤ 𝑛 𝜈 𝐺 𝑛 −1 = 𝜈 𝐺 −1
  • 15. Доказательство верхней оценки шенноновской ёмкости графа Лемма. Для любых графов 𝐺, 𝐻 выполнено 𝜈 𝐺 × 𝐻 = 𝜈 𝐺 ⋅ 𝜈 𝐻 Доказательство леммы: Пусть 𝒘 𝐺 ∗ и 𝒘 𝐻 ∗ — наборы весов на вершинах графов 𝐺 и 𝐻, на которых достигаются минимумы в 𝜈 𝐺 и 𝜈 𝐻 . Рассмотрим набор весов 𝒘 𝐺×𝐻 на вершинах графа 𝐺 × 𝐻, такой, что 𝑤 𝐺×𝐻 𝑥, 𝑦 ≔ 𝑤 𝐺 ∗ 𝑥 ⋅ 𝑤 𝐻 ∗ 𝑦
  • 16. Доказательство верхней оценки шенноновской ёмкости графа Берём набор весов 𝑤 𝐺×𝐻 𝑥, 𝑦 ≔ 𝑤 𝐺 ∗ 𝑥 ⋅ 𝑤 𝐻 ∗ 𝑦 . Любая максимальная по включению клика 𝐾 в графе 𝐺 × 𝐻 является множеством пар вида 𝑥, 𝑦 ∣ 𝑥 ∈ 𝐾 𝐺, 𝑦 ∈ 𝐾 𝐻 где 𝐾 𝐺 и 𝐾 𝐻 — клики в 𝐺 и 𝐻 соответственно. Для таких клик 𝐾 имеем 𝑤 𝐺×𝐻 𝐾 = 𝑥,𝑦 ∈𝐾 𝑤 𝐺 ∗ 𝑥 ⋅ 𝑤 𝐻 ∗ 𝑦 = 𝑥∈𝐾 𝐺 𝑤 𝐺 ∗ 𝑥 𝑦∈𝐾 𝐻 𝑤 𝐻 ∗ 𝑦 = = 𝑤 𝐺 ∗ 𝐾 𝐺 ⋅ 𝑤 𝐻 ∗ 𝐾 𝐻
  • 17. Доказательство верхней оценки шенноновской ёмкости графа Имеем 𝜈 𝐺 × 𝐻 = min 𝒘 max 𝐾−клика в 𝐺×𝐻 𝑤 𝐾 ≤ ≤ max 𝐾−клика в 𝐺×𝐻 𝑤 𝐺×𝐻 𝐾 = max 𝐾−клика в 𝐺×𝐻 𝑤 𝐺 ∗ 𝐾 𝐺 ⋅ 𝑤 𝐻 ∗ 𝐾 𝐻 ≤ ≤ max 𝐾−клика в 𝐺 𝑤 𝐺 ∗ 𝐾 ⋅ max 𝐾−клика в 𝐻 𝑤 𝐻 ∗ 𝐾 = 𝜈 𝐺 ⋅ 𝜈 𝐻 В итоге, 𝜈 𝐺 × 𝐻 ≤ 𝜈 𝐺 ⋅ 𝜈 𝐻 .
  • 18. Доказательство верхней оценки шенноновской ёмкости графа Обозначим через 𝒘 набор весов на кликах графа (неотрицательны, сумма равна единице). По теореме о свойствах двойственных задач линейного программирования, для любого графа имеет место равенство min 𝒘 max 𝐾 𝑥∈𝐾 𝑤 𝑥 = max 𝒘 min 𝑥 𝐾∋𝑥 𝑤 𝐾
  • 19. Доказательство верхней оценки шенноновской ёмкости графа max 𝒘 min 𝑥 𝐾∋𝑥 𝑤 𝐾 Пусть 𝒘 𝐺 ∗ и 𝒘 𝐻 ∗ — наборы весов, на которых достигается max для графов 𝐺 и 𝐻. Построим набор весов 𝑤 𝐺×𝐻 на кликах графа 𝐺 × 𝐻: • Пусть клика 𝐾 может быть представлена в виде 𝐾 𝐺 × 𝐾 𝐻, где 𝐾 𝐺 и 𝐾 𝐻 — клики в 𝐺 и 𝐻. Тогда полагаем 𝑤 𝐺×𝐻 𝐾 ≔ 𝑤 𝐺 ∗ 𝐾 𝐺 ⋅ 𝑤 𝐻 ∗ 𝐾 𝐻 . • Для остальных клик 𝐾 полагаем 𝑤 𝐺×𝐻 𝐾 ≔ 0.
  • 20. Доказательство верхней оценки шенноновской ёмкости графа Для такого набора весов и для любой фиксированной вершины 𝑥, 𝑦 ∈ 𝑉 𝐺 × 𝐻 имеем 𝐾∋ 𝑥,𝑦 𝑤 𝐺×𝐻 𝐾 ≥ 𝐾∋ 𝑥,𝑦 ∃𝐾 𝐺,𝐾 𝐻: 𝐾=𝐾 𝐺×𝐾 𝐻 𝑤 𝐺×𝐻 𝐾 = 𝐾 𝐺∋𝑥, 𝐾 𝐻∋𝑦 𝑤 𝐺 ∗ 𝐾 𝐺 ⋅ 𝑤 𝐻 ∗ 𝐾 𝐻 = = 𝐾 𝐺∋𝑥 𝑤 𝐺 ∗ 𝐾 𝐺 𝐾 𝐻∋𝑦 𝑤 𝐻 ∗ 𝐾 𝐻 ≥ 𝜈 𝐺 ⋅ 𝜈 𝐻 Отсюда следует неравенство 𝜈 𝐺 × 𝐻 ≥ 𝜈 𝐺 ⋅ 𝜈 𝐻 , а значит верно равенство 𝜈 𝐺 × 𝐻 = 𝜈 𝐺 ⋅ 𝜈 𝐻 .
  • 21. Пример применения теоремы Оценим шенноновскую ёмкость цепи на трёх вершинах. Рассмотрим набор весов на вершинах графа 𝑃3, на котором достигается минимум. Пусть веса на крайних вершинах цепи равны 𝑥 и 𝑧, а у средней вершины вес равен 𝑦. Получаем задачу линейного программирования: 𝑥, 𝑦, 𝑧 ≥ 0 𝑥 + 𝑦 + 𝑧 = 1 𝑥 + 𝑦 ≤ 𝜈 𝑦 + 𝑧 ≤ 𝜈 𝜈 → min Решение этой задачи: 𝑥 = 𝑧 = 1 2 , 𝑦 = 0 и 𝜈 = 1 2. Отсюда cap 𝑃3 ≤ 2. При этом очевидны соотношения cap 𝑃3 ≥ 𝛼 𝑃3 = 2, а значит cap 𝑃3 = 2.