Скорость исправления ошибок вводит в заблуждение

10

В теории кодирования «насколько хорош код» означает, сколько ошибок канала можно исправить, или, лучше сказать, максимальный уровень шума, с которым может справиться код.

Чтобы получить лучшие коды, коды разработаны с использованием большого алфавита (а не двоичного). И потом, код хорош, если он может обрабатывать большое количество ошибочных «символов».

Почему это не считается обманом? Я имею в виду, не должны ли мы заботиться только о том, что происходит, когда мы «переводим» каждый символ в двоичную строку? «Коэффициент ошибок по битам» отличается от уровня «ошибок по символам». Например, частота ошибок по битам не может превышать 1/2, в то время как (если я правильно понимаю), при достаточно большом алфавите, ошибка по символам может доходить до . Это потому, что мы искусственно ограничиваем канал, чтобы изменять только «символы», а не биты, или это потому, что код на самом деле лучше?1-ε

Ран Г.
источник
1
Зачем вам ограничивать себя двоичными кодами, если ваша среда передачи / технология может обрабатывать гораздо больше?
Рафаэль
@Raphael Было бы полезно, если бы вы могли обосновать свою точку зрения несколькими практическими примерами реальных технологий, работающих с недвоичными символами, и опубликовать это в качестве ответа.
Мухаммед Алагган
@ М.Алагган: я не эксперт в этом; Я полагаю, что если вы можете кодировать 0/1 на волновой несущей, вы также можете кодировать гораздо больше символов, передавая больше информации за интервал времени. Меня удивило бы, если бы современные технологии не делали этого (подумайте о мультиплексировании кода), но я не могу назвать конкретный пример.
Рафаэль
@ Рафаэль Я думаю, что вы правы, современные цифровые каналы связи работают с большими символами, но не более, скажем, 256 бит на символ (что довольно редко для беспроводных, но может быть обычным для кабелей). Но размер символа ограничен очень маленькими размерами и не может (практически) расти по желанию.
Ран Г.

Ответы:

8

Многие широко используемые коды для двоичных данных являются сцепленными кодами, которые составляются с использованием двух кодов, исправляющих ошибки. Внутренний код находится над двоичным алфавитом, а внешний код находится в алфавите, символы которого соответствует кодовым словам внутреннего кода. Это позволяет использовать превосходную мощь больших размеров алфавита для кодирования двоичных сообщений без «мошенничества».

Стандартное определение минимального расстояния является естественным для использования при рассмотрении каскадных кодов, а также в теории кодов с большими размерами алфавита. Было бы «обманом» только в том случае, если вы использовали эти числа для сравнения двоичного кода с кодом с большим алфавитом, который кодирует двоичный ввод без использования внутреннего кода; теоретики кодирования достаточно умны, чтобы этого не делать (и я полагаю, что поскольку были изобретены каскадные коды, коды с большим алфавитом часто использовались вместе с внутренним кодом, но коды с большим алфавитом также очень хороши для исправления ошибок в пакетных каналах, таких как как CD, так как большое количество последовательных битовых ошибок будет влиять только на несколько «символов»).

Питер Шор
источник
Питер, спасибо за ответ. Для связанного кода не правда ли, что (бит) частота ошибок не может превышать 1/2? так что этот метод позволяет нам приблизиться к 1/2, сохраняя при этом эффективное декодирование, верно?
Ран Г.
@Ran: для двоичного кода частота ошибок по битам не может превышать 1/2. Связанные коды не обязательно должны быть двоичными. Но это придирки; Ваш комментарий по сути правильный.
Питер Шор