Algoritmul Remez (de asemenea algoritmul de înlocuire Remez) este un algoritm iterativ pentru aproximarea uniformă a funcțiilor f ∊ C[ a , b ], bazat pe teorema de alternanță a lui P. L. Cebyshev . Propus de E. Ya. Remez în 1934 [1] .
Algoritmul Remez este utilizat în proiectarea filtrelor FIR [2] .
Baza teoretică a algoritmului Remez este următoarea teoremă [3] .
Pentru ca un polinom de grad cel mult să fie un polinom care se abate cel puțin de la , este necesar și suficient ca cel puțin un sistem de puncte să fie găsit la care diferența :
Un astfel de sistem de puncte se numește alternanță Chebyshev . |
Fie E n valoarea celei mai bune aproximări a funcției f ( x ) prin polinoame de grad n . E n este estimat de jos prin următoarea teoremă [4] :
Dacă pentru o funcție f ∊ C[ a , b ] un polinom P ( x ) de grad n are proprietatea că diferența f ( x ) - P ( x ) pe un sistem de n + 2 puncte ordonate x i ia valori cu semne alternante, atunci |
Luați în considerare un sistem de funcții , o secvență de puncte și căutați un polinom de aproximare
.La a doua etapă, putem căuta nu doar un punct ξ , ci o mulțime Ξ de puncte în care maximele locale | f - P |. Dacă toate erorile în punctele mulțimii Ξ au aceeași valoare absolută și alternează în semn, atunci P este un polinom minimax. În caz contrar, înlocuim punctele din X cu punctele din Ξ și repetăm procedura.
Ca și secvență inițială X , puteți alege puncte distribuite uniform pe [ a , b ]. De asemenea, este recomandabil să luați puncte [6] :
Dacă funcția de aproximare este căutată sub forma unui polinom, atunci în loc să rezolvați sistemul la primul pas al algoritmului, puteți utiliza următoarea metodă [7] :
Apoi se repetă pașii conform schemei principale.
Deoarece prin teorema de la Vallée-Poussin | d | ≤ E n ( f ) ≤ D , atunci condiția de oprire a algoritmului poate fi D — | d | ≤ ε pentru unele ε prealocate .
Algoritmul Remez converge la rata unei progresii geometrice în următorul sens [8] :
Pentru orice funcție f ∊ C[ a , b ] există numere A > 0 și 0 < q < 1 astfel încât abaterile maxime de la funcția f ( x ) de polinoame construite prin acest algoritm vor satisface inegalitățile unde E n ( f ) este valoarea celei mai bune aproximări pe [ a , b ] a funcției f ( x ) folosind polinoamele P n ( x ). |
Pasul 1. |
|
|||||||||
Soluția sistemului dă P = 1,175 x + 1,272, d = 0,272. D = max|e ξ - P ( ξ )| = 0,286 la ξ = 0,16. | ||||||||||
Pasul 2 |
|
|||||||||
Soluția sistemului dă P = 1,175 x + 1,265, d = 0,279. D = max|e ξ - P ( ξ )| = 0,279 la ξ = 0,16. |
Deoarece același punct a fost obținut în cadrul preciziei date, polinomul găsit ar trebui considerat ca cea mai bună aproximare a primului grad al funcției e x .
Teorema de aproximare Weierstrass