Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
7.2.7. Стек-алгоритмы последовательного декодированияДругой интересный класс алгоритмов последовательного декодирования составляют так называемые стек-алгоритмы, которые были предложены и исследованы независимо Зигангировым [75] и Джелинеком [76]. Эти алгоритмы не получили широкого признания, поскольку наиболее приемлемым при практической реализации считается алгоритм Фано. Однако стек-алгоритмы представляют интерес, поскольку идейно очень просты и их удобнее всего использовать для получения некоторых аналитических результатов о свойствах последовательных декодеров. Блок-схема типичного стек-алгоритма показана на рис. 7.22. Алгоритм очень прост. Декодер порождает стек, состоящий из просмотренных ранее путей различных длин, упорядоченных в соответствии со значениями метрики (используется та же метрика, что и в алгоритме Фано). На каждом шаге происходит продолжение пути, находящегося наверху стека, что дает Рассмотрим для примера код
Рис. 7.22. Стек-алгоритм последовательного декодирования путь 1 с метрикой —4. На шаге 3 этот путь продолжается, давая пути 10 и 11 с метриками —3 и —13 соответственно. Процесс продолжается дальше, и после шага 5 наверху стека окажется путь 1000. Все дальнейшие продолжения этого пути будут оставаться наверху стека, так что выбранным окажется именно этот путь. Последовательность шагов показана в табл. 7.4. Таблица 7.4. (см. скан) Декодирование стек-алгоритмом для примера на рис. 7.20 Интересно, что при сравнении этой таблицы с табл. 7.2 для алгоритма Фано видим, что стек-алгоритм требует существенно меньше вычислительных операций. Однако такое сравнение не очень корректно, поскольку одна операция стек-алгоритма существенно сложнее одной операции алгоритма Фано. Особенно неприятной является операция переупорядочения стека. Для облегчения практической реализации описанного алгоритма его можно различными способами усовершенствовать. Наиболее нежелательной особенностью алгоритма является необходимость переупорядочивать стек. Алгоритм Джелинека слегка облегчает эту задачу, вводя квантование упорядочения. Пути помещаются в так называемые карманы, каждый из которых содержит стек путей, метрики которых отличаются друг от друга на А. Это существенно упрощает процесс переупорядочения, не увеличивая существенно распределения числа операций (по-прежнему распределения Парито вида Вторым серьезным недостатком стек-алгоритмов является то, что емкость стека (а значит, и памяти), требуемая для продолжения правильного пути на одно ребро, пропорциональна числу операций. Таким образом, требуемая емкость стека также является случайной величиной, имеющей распределение Парето. Эта трудность частично преодолевается алгоритмом Зигангирова, в котором из стека удаляется любой путь, метрика которого оказывается меньше метрики пути, находящегося наверху стека, на некоторую фиксированную величину Стек-алгоритмы имеют ряд преимуществ. Одно из них состоит в возможности эффективно использовать буфер в периоды, когда он пуст. Когда буфер пуст, согласно алгоритму Фано вычислений не происходит до тех пор, пока не будет принято следующее ребро, и только тогда могут быть продолжены вычисления. В противоположность этому при стек-алгоритме периоды, когда буфер пуст, могут использоваться для продолжения некоторых из путей, содержащихся в стеке. Таким образом, стек-алгоритм может обеспечивать отсутствие простоев. Другое явное преимущество состоит в меньшем среднем числе операций, причем это преимущество становится ощутимым, когда Проведенные Джелинеком эксперименты показали, что два алгоритма эквивалентны по вычислительным затратам при Задачи(см. скан) (см. скан)
|
1 |
Оглавление
|