У чому різниця між обміном Remez і дизайном фільтрів Паркс-МакКлеллан?


21

Питання недавно підійшов щодо парків-МакКлеллана і деякі зауваження вказують, що вікіпедії стаття про Parks-МакКлеллана держав,

... алгоритм Паркс-МакКлеллана - це варіація алгоритму Remez або алгоритму обміну Remez.

Чи є різниця у продуктивності? Чи remezеквівалентна функція в октаві функції Матлаба firpm?

Відповіді:


8

Алгоритм обміну Remez - це загальна ітеративна процедура для оптимального наближення будь-якої функції в сенсі (тобто дає найкраще наближення до найгіршого випадку або іншими словами, мінімізує максимальну помилку або мінімакс). Алгоритм Паркс-МакКлеллан (ПМ) - це варіація алгоритму обміну Remez, застосований спеціально для фільтрів FIR. З статті, яку ви цитували у Вікі:L

Томас [Паркс] їхав з Х'юстона в Прінстон, щоб відвідати конференцію. На конференції він почув презентацію Еда Хофштеттера про новий алгоритм проектування фільтрів FIR (алгоритм Maximal Ripple). Він повернув папір Хофштеттера, Оппенгайма та Зігеля назад до Х'юстона, думаючи про можливість використання теорії наближення Чебишева для проектування фільтрів FIR. Він почув, що метод, реалізований в алгоритмі Хофстеттера, схожий на алгоритм обміну Remez, і вирішив пройти шлях використання алгоритму обміну Remez.

Не вдаючись до занадто багато деталей, головна відмінність між двома алгоритмами полягає в тому, що алгоритм обміну Remez (RE) дає вам умови для створення оптимального фільтра (конкретно, див. Тут №3: помилки повинні бути однаково зваженими за величиною та чергуватися за знаком). RE реалізує ітераційну процедуру для обчислення коефіцієнтів поліномів (які можна віднести до коефіцієнтів фільтра FIR), які відповідають зазначеному вище критерію, який є "теоремою чергування". "E" в RE - це частина процедури, де максимуми помилки, які використовуються в ітераційній процедурі, замінюються новими максимумами, які ближче до оптимальних значень. ПМ використовує поліноми Чебишева для перетворення поліноміальних коефіцієнтів у коефіцієнти, що керують рядом косинусних функцій, які безпосередньо переводяться на симетричні коефіцієнти FIR.


Що стосується вашого питання щодо remezфункції в Octave та firpmфункції в MATLAB, я вважаю, що вони однакові. Раніше MATLAB мав remez, який було припинено на користь firpm. Октава, ймовірно, досі прилипає до колишньої. Введення help remezв MATLAB R2011b дає наступне:

Оптимальна конструкція фільтрів FIR для фільтра REMEZ Parks-McClellan.

REMEZ is obsolete.  REMEZ still works but may be removed in the future.
Use FIRPM instead.

See also FIRPM.

Я вважаю, що Mathworks змінив назву remez на firpm, оскільки це був не загальний рішення Remez, а швидше втілення PM методу Remez.
Марк Боргердінг

@MarkBorgerding Я вважаю, що це справді причина зміни імені. Однак, як і раніше, часто зустрічаються люди, які використовують два терміни взаємозамінно.
Лорем Іпсум

2
Я думаю, що справедливе твердження таке: всі реалізації Parks-McClellan є реалізаціями Remez Exchange, але зворотне не відповідає дійсності. Стосовно дизайну фільтрів, я думаю, що їх можна використовувати безперервно. Це було б (дещо) як посилання на FFT як DFT.
Марк Боргердінг

як щодо firgr (у матлабі)?
даурніматор

@daurnimator, що з цим?
Лорем Іпсум
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.