Алгоритм обмена Ремеза - это общая итерационная процедура, позволяющая оптимально аппроксимировать любую функцию в смысле L∞ (т. Е. Дать наилучшее приближение для наихудшего случая или, другими словами, минимизировать максимальную ошибку или minmax). Алгоритм Паркс-Макклеллана (PM) - это разновидность алгоритма обмена Ремеза, применяемая специально для КИХ-фильтров. Из цитируемой статьи вики:
Томас [Паркс] поехал из Хьюстона в Принстон, чтобы присутствовать на конференции. На конференции он услышал презентацию Эда Хофстеттера о новом алгоритме построения FIR-фильтра (алгоритм Maximal Ripple). Он привез работу Хофстеттера, Оппенгейма и Зигеля обратно в Хьюстон, размышляя о возможности использования теории приближений Чебышева для создания КИХ-фильтров. Он услышал, что метод, реализованный в алгоритме Хофстеттера, похож на алгоритм обмена Ремеза, и решил пойти по пути использования алгоритма обмена Ремеза.
Не вдаваясь в подробности, основное различие между этими двумя алгоритмами заключается в том, что алгоритм обмена Remez (RE) дает вам условия для разработки оптимального фильтра (в частности, см. № 3 здесь: ошибки должны быть одинаковой взвешенной величины и чередоваться по знаку). RE реализует итеративную процедуру для вычисления полиномиальных коэффициентов (которые могут быть сопоставлены с коэффициентами FIR-фильтра), которые удовлетворяют вышеуказанному критерию, который является «теоремой чередования». «E» в RE является частью процедуры, в которой максимумы ошибки, которые используются в итерационной процедуре, заменяются новыми максимумами, которые ближе к оптимальным значениям. PM использует полиномы Чебышева для преобразования полиномиальных коэффициентов в коэффициенты, управляющие серией косинусных функций, которые непосредственно переводятся в симметричные коэффициенты КИХ.
Возвращаясь к вашему вопросу о remez
функции в Octave и firpm
функции в MATLAB, я считаю, что они одинаковы. MATLAB имел обыкновение иметь remez
, который был свернут в пользу firpm
. Октава, вероятно, все еще придерживается первого. Ввод help remez
в MATLAB R2011b дает следующее:
REMEZ Parks-McClellan оптимальная конструкция FIR-фильтра.
REMEZ is obsolete. REMEZ still works but may be removed in the future.
Use FIRPM instead.
See also FIRPM.