Metoda lui Newton , algoritmul lui Newton (cunoscut și ca metoda tangentei ) este o metodă numerică iterativă pentru găsirea rădăcinii ( zero ) a unei anumite funcții . Metoda a fost propusă pentru prima dată de fizicianul , matematicianul și astronomul englez Isaac Newton ( 1643-1727 ) . Căutarea unei soluții se realizează prin construirea de aproximări succesive și se bazează pe principiile iterației simple . Metoda are convergență pătratică . O modificare a metodei este metoda acordurilor și tangentelor. De asemenea, metoda lui Newton poate fi folosită pentru a rezolva probleme de optimizare în care este necesară determinarea zeroului primei derivate sau gradientului în cazul unui spațiu multidimensional.
Pentru a rezolva numeric ecuația prin metoda iterației simple , aceasta trebuie redusă la o ecuație echivalentă: , unde este maparea contracției .
Pentru cea mai bună convergență a metodei în punctul următoarei aproximări , condiția trebuie îndeplinită . Se caută soluția acestei ecuații sub forma , atunci:
Presupunând că punctul de aproximare este „destul de aproape” de rădăcină și că funcția dată este continuă , formula finală pentru este:
Având în vedere acest lucru, funcția este definită:
În anumite condiții, această funcție realizează o mapare de contracție într-o vecinătate a rădăcinii.
DovadaSă fie dată o funcție a unei variabile reale care este de două ori continuu diferențiabilă în domeniul său de definiție și a cărei derivată nu dispare niciodată:
Și este necesar să se demonstreze că funcția efectuează o mapare de contracție lângă rădăcina ecuației .
Datorită diferențiabilității continue a funcției și inegalității lui zero, derivata sa întâi este continuă .
Derivata este:
În condițiile impuse , este și continuă. Fie rădăcina dorită a ecuației: , prin urmare, în vecinătatea ei :
Apoi, conform teoremei lui Lagrange :
Datorită faptului că , în același cartier deltă, sunt adevărate următoarele:
Funcția astfel obținută în vecinătatea rădăcinii implementează o mapare de contracție . ■
În acest caz, algoritmul pentru găsirea unei soluții numerice a ecuației este redus la o procedură de calcul iterativă :
Conform teoremei lui Banach , succesiunea de aproximări tinde spre rădăcina ecuației .
Ideea principală a metodei este următoarea: aproximarea inițială este stabilită lângă rădăcina ipotetică, după care este trasată o tangentă la graficul funcției studiate în punctul de aproximare, pentru care intersecția cu axa absciselor este găsite. Acest punct este luat ca următoarea aproximare. Și așa mai departe, până când se ajunge la precizia necesară.
Fie 1) o funcţie cu valoare reală să fie continuu diferenţiabilă pe intervalul ;
2) există un punct cerut : ;
3) există , de asemenea, astfel încât
pentru
și
pentru ;
4) ideea este astfel încât . Apoi , formula pentru aproximarea iterativă la k
poate fi derivată din semnificația geometrică a tangentei după cum urmează:
unde este unghiul de înclinare al dreptei tangente la grafic în punctul .
Prin urmare (în ecuația dreptei tangente presupunem ) expresia dorită pentru are forma:
Dacă , atunci această valoare poate fi folosită ca următoarea aproximare a .
Dacă , atunci există un „zbor” (rădăcina se află lângă graniță ). În acest caz, este necesar (folosind ideea metodei bisecției ) să se înlocuiască cu până când punctul „revine” în zona de căutare .
Remarci. 1) Prezența unei derivate continue face posibilă construirea unei tangente în continuă schimbare pe întreaga zonă a căutării unei soluții .
2) Cazurile de amplasare a graniței (la un punct sau la un punct ) a soluției dorite sunt considerate în mod similar.
3) Din punct de vedere geometric, egalitatea
înseamnă că linia tangentă la grafic
în punctul
- este paralelă cu axa
și
nu se intersectează cu aceasta la sfârșit.
4) Cu cât constanta este mai mare și cu atât constanta din paragraful 3 al condițiilor este mai mică, cu atât
intersecția tangentei la grafic și a axei este mai apropiată de punctul , adică cu atât valoarea este mai apropiată de cea dorită .
Procesul iterativ începe cu o aproximare inițială , iar între și punctul dorit nu ar trebui să existe alte zerouri ale funcției , adică „cu cât mai aproape de rădăcina dorită , cu atât mai bine”. Dacă nu există ipoteze despre găsire , încercarea și eroarea pot restrânge gama de valori posibile prin aplicarea teoremei valorii intermediare .
Pentru predefinit ,
procesul iterativ se termină dacă
și
.
În special, pentru matricea de afișare și poate fi calculată pe baza scalei de afișare a graficului , adică dacă și se încadrează într-o singură verticală și într-un rând orizontal.
Luați în considerare problema găsirii pozitive , pentru care . Această sarcină poate fi reprezentată ca sarcina de a găsi zeroul funcției . Avem o expresie pentru derivata . Deoarece pentru toți și pentru , este evident că soluția se află între 0 și 1. Să luăm valoarea ca o aproximare inițială , atunci:
Cifrele semnificative valide sunt subliniate . Se poate observa că numărul lor crește de la pas la pas (se dublează aproximativ cu fiecare pas): de la 1 la 2, de la 2 la 5, de la 5 la 10, ilustrând rata de convergență pătratică .
Să luăm în considerare o serie de exemple care indică deficiențele metodei.
Lăsa
Apoi
Să luăm zero ca aproximare inițială. Prima iterație va da unitatea ca o aproximare. La rândul său, al doilea va da din nou zero. Metoda va fi în buclă și nu va fi găsită nicio soluție. În general, construcția unei secvențe de aproximări poate fi foarte confuză .
Luați în considerare o funcție:
Atunci și peste tot, cu excepția 0.
În vecinătatea rădăcinii, derivata își schimbă semnul când se apropie de zero din dreapta sau din stânga. În timp ce pentru .
Astfel, nu este mărginită în apropierea rădăcinii, iar metoda va diverge, chiar dacă funcția este diferențiabilă peste tot, derivata sa este diferită de zero la rădăcină, diferențiabilă la infinit peste tot, cu excepția rădăcinii, iar derivata sa este mărginită în jurul rădăcinii. .
Luați în considerare un exemplu:
Atunci și cu excepția cazului în care nu este definit.
La pasul următor, avem :
Rata de convergență a secvenței rezultate este de aproximativ 4/3. Acesta este semnificativ mai mic decât 2, ceea ce este necesar pentru convergența pătratică, așa că în acest caz putem vorbi doar de convergență liniară, deși funcția este diferențiabilă continuu peste tot , derivata la rădăcină nu este egală cu zero și este infinit derivabilă peste tot . decât la rădăcină.
Lăsa
Atunci și de aici . Astfel, convergența metodei nu este pătratică, ci liniară, deși funcția este infinit derivabilă peste tot.
Fie dată ecuația , unde și este necesar să-i găsim soluția.
Mai jos este formularea teoremei principale, care ne permite să oferim condiții clare de aplicabilitate. Poartă numele matematicianului și economistului sovietic Leonid Vitalievici Kantorovich ( 1912-1986 ) .
teorema lui Kantorovich.
Dacă există constante astfel încât:
Mai mult, lungimea segmentului considerat . Atunci următoarele afirmații sunt adevărate:
Din ultima afirmație a teoremei, în special, convergența pătratică a metodei urmează:
Apoi, constrângerile funcției inițiale vor arăta astfel:
Metoda a fost descrisă de Isaac Newton în manuscrisul On the Analysis by Equations of Infinite Series ( latina: De analysi per aequationes numero terminorum infinitas ) adresat lui Barrow în 1669 și în The Method of Fluxions and Infinite Series ( latina: De metodis fluxionum). et serierum infinitarum” ) sau „ Geometrie analitică ” ( lat. „Geometria analytica” ) în colecțiile de lucrări ale lui Newton, care a fost scrisă în 1671 . În scrierile sale, Newton introduce concepte precum extinderea unei funcții într- o serie , infinitezimale și fluxiuni ( derivate în sensul actual). Aceste lucrări au fost publicate mult mai târziu: prima a fost publicată în 1711 datorită lui William Johnson, a doua a fost publicată de John Colzon în 1736 după moartea creatorului. Cu toate acestea, descrierea metodei diferă semnificativ de expunerea sa actuală: Newton și-a aplicat metoda exclusiv la polinoame . El a calculat nu aproximări succesive , ci o succesiune de polinoame și, ca rezultat, a primit o soluție aproximativă .
Metoda a fost publicată pentru prima dată în tratatul „Algebra” de John Wallis în 1685, la cererea căruia a fost descrisă pe scurt de însuși Newton. În 1690, Joseph Raphson a publicat o descriere simplificată în „Analysis aequationum universalis” ( latina: „Analysis aequationum universalis” ). Raphson a văzut metoda lui Newton ca fiind pur algebrică și și-a limitat aplicarea la polinoame, dar a descris metoda în termeni de aproximări succesive în loc de secvența mai dificil de înțeles de polinoame folosită de Newton. În cele din urmă, în 1740, metoda lui Newton a fost descrisă de Thomas Simpson ca o metodă iterativă de ordinul întâi pentru rezolvarea ecuațiilor neliniare folosind o derivată, așa cum este prezentată aici. În aceeași publicație, Simpson a generalizat metoda la cazul unui sistem de două ecuații și a remarcat că metoda lui Newton poate fi aplicată și problemelor de optimizare prin găsirea zeroului derivatei sau gradientului .
În 1879, Arthur Cayley , în The Newton-Fourier imaginary problem, a fost primul care a subliniat dificultățile în generalizarea metodei lui Newton în cazul rădăcinilor imaginare ale polinoamelor de grad mai mare decât a doua și aproximațiile inițiale complexe. Această lucrare a deschis calea pentru studiul teoriei fractale .
Metoda secantei aferentă este metoda „aproximativă” a lui Newton și evită calcularea derivatei. Valoarea derivatei în formula iterativă este înlocuită cu estimarea acesteia pentru cele două puncte de iterație anterioare:
.
Astfel, formula principală are forma
Această metodă este similară cu cea a lui Newton, dar are o rată de convergență puțin mai mică. Ordinea de convergență a metodei este egală cu raportul de aur - 1,618 ...
Remarci. 1) Pentru a începe procesul iterativ, sunt necesare două valori diferite ale lui
și
.
2) Spre deosebire de „metoda Newton reală” (metoda tangentei), care necesită doar stocarea
(și temporar în timpul calculelor și ), metoda secantei necesită salvarea
,
,
,
.
3) Se utilizează dacă calculul este dificil (de exemplu, necesită o cantitate mare de resurse ale mașinii: timp și/sau memorie).
Pentru a reduce numărul de apeluri la valorile derivatei unei funcții, se utilizează așa-numita metodă cu o singură tangentă.
Formula de iterație pentru această metodă este:
Esența metodei este de a calcula derivata o singură dată, în punctul inițial de aproximare , și apoi de a utiliza această valoare la fiecare iterație ulterioară:
Cu această alegere , următoarea egalitate este valabilă la punctul :
iar dacă segmentul pe care se presupune prezența unei rădăcini și se alege aproximarea inițială este suficient de mic, iar derivata este continuă, atunci valoarea nu va diferi foarte mult de și, prin urmare, graficul va trece aproape orizontal, intersectând linie dreaptă , care la rândul său va asigura convergența rapidă a secvenței punctelor de aproximare la rădăcină.
Această metodă este un caz special al metodei iterației simple . Are o ordine liniară de convergență.
Să generalizăm rezultatul obţinut la cazul multidimensional.
Să fie necesar să găsim o soluție la sistem:
Alegând o valoare inițială , se găsesc aproximări succesive prin rezolvarea sistemelor de ecuații :
unde .
Să fie necesar să se afle minimul unei funcții a mai multor variabile . Această sarcină este echivalentă cu problema găsirii zeroului gradientului . Să aplicăm metoda lui Newton de mai sus:
unde este Hessianul funcției .
Într-o formă iterativă mai convenabilă, această expresie arată astfel:
De remarcat că în cazul unei funcții pătratice, metoda lui Newton găsește un extremum într-o iterație.
Găsirea matricei Hessian este costisitoare din punct de vedere computațional și adesea nu este posibilă. În astfel de cazuri, metodele cvasi-newtoniene pot servi ca alternativă , în care o aproximare a matricei Hessian este construită în procesul de acumulare a informațiilor despre curbura funcției.
Metoda Newton-Raphson este o îmbunătățire a metodei extreme a lui Newton descrisă mai sus. Principala diferență este că la următoarea iterație, una dintre metodele de optimizare unidimensională selectează pasul optim:
unde Pentru a optimiza calculele, se folosește următoarea îmbunătățire: în loc să recalculăm Hessianul funcției obiectiv la fiecare iterație , ne limităm la aproximarea inițială și o actualizăm o singură dată în pași sau nu o actualizăm deloc.
În practică, există adesea sarcini în care este necesară ajustarea parametrilor liberi ai unui obiect sau ajustarea modelului matematic la date reale. În aceste cazuri, apar probleme cu cele mai mici pătrate :
Aceste probleme se disting printr-un tip special de gradient și matrice Hessiană :
unde este matricea Jacobi a funcției vectoriale , este matricea hessiană pentru componenta sa .
Apoi următorul pas este determinat din sistem:
Metoda Gauss-Newton se bazează pe presupunerea că termenul domină peste . Această cerință nu este îndeplinită dacă reziduurile minime sunt mari, adică dacă norma este comparabilă cu valoarea proprie maximă a matricei . În caz contrar, puteți scrie:
Astfel, atunci când norma este aproape de zero, iar matricea are rang de coloană complet , pasul diferă puțin de cel newtonian (ținând cont de ), iar metoda poate realiza o rată de convergență pătratică, deși derivatele secunde nu sunt luate în considerare. cont. O îmbunătățire a metodei este algoritmul Levenberg-Marquardt bazat pe considerații euristice .
Până acum, în descrierea metodei, au fost folosite funcții care realizează mapări în setul de valori reale . Cu toate acestea, metoda poate fi aplicată și pentru a găsi zeroul unei funcții a unei variabile complexe . Cu toate acestea, procedura rămâne aceeași:
Un interes deosebit este alegerea aproximării inițiale . Având în vedere faptul că o funcție poate avea mai multe zerouri, în cazuri diferite metoda poate converge către valori diferite și este destul de firesc să dorim să aflăm care zone vor asigura convergența către o anumită rădăcină. Această întrebare l-a interesat pe Arthur Cayley încă din 1879 , dar a fost posibil să o rezolve abia în anii 70 ai secolului XX , odată cu apariția tehnologiei computerelor. S-a dovedit că la intersecțiile acestor regiuni (de obicei sunt numite regiuni de atracție ), se formează așa-numitele fractali - infinite figuri geometrice auto-similare.
Datorită faptului că Newton și-a aplicat metoda exclusiv la polinoame , fractalii formați ca urmare a unei astfel de aplicații au devenit cunoscuți ca fractalii lui Newton sau piscinele lui Newton .
de optimizare | Metode|
---|---|
Unidimensional |
|
Comanda zero | |
Prima comanda | |
a doua comanda | |
Stochastic | |
Metode de programare liniară | |
Metode de programare neliniară |