Newtonin menetelmä, Newtonin algoritmi ( tunnetaan myös tangenttimenetelmänä ) on iteratiivinen numeerinen menetelmä tietyn funktion juuren ( nolla ) löytämiseksi . Menetelmän ehdotti ensimmäisenä englantilainen fyysikko , matemaatikko ja tähtitieteilijä Isaac Newton ( 1643-1727 ) . Ratkaisun etsintä tehdään peräkkäisten approksimaatioiden muodostamalla ja se perustuu yksinkertaisen iteroinnin periaatteisiin . Menetelmällä on neliöllinen konvergenssi . Menetelmän muunnos on sointujen ja tangenttien menetelmä . Newtonin menetelmällä voidaan myös ratkaista optimointiongelmia , joissa moniulotteisen avaruuden tapauksessa on määritettävä ensimmäisen derivaatan tai gradientin nolla.
Yhtälön ratkaisemiseksi numeerisesti yksinkertaisella iteraatiomenetelmällä se on pelkistettävä vastaavaan yhtälöön: , missä on supistumiskuvaus .
Jotta menetelmän konvergenssi olisi paras seuraavan approksimoinnin pisteessä , ehdon on täytyttävä . Tämän yhtälön ratkaisua etsitään muodossa , jolloin:
Olettaen, että approksimaatiopiste on "riittävän lähellä" juuria ja annettu funktio on jatkuva , lopullinen kaava on:
Tätä silmällä pitäen funktio määritellään:
Tietyissä olosuhteissa tämä toiminto suorittaa supistuksen kartoituksen juuren läheisyydessä.
TodisteOlkoon annettu reaalimuuttujan funktio , joka on kahdesti jatkuvasti differentioituva määritelmäalueellaan ja jonka derivaatta ei koskaan katoa:
Ja on tarpeen todistaa, että funktio suorittaa supistumiskartoituksen lähellä yhtälön juurta .
Johtuen funktion jatkuvasta differentiatiivisuudesta ja nollan epäyhtälöstä, sen ensimmäinen derivaatta on jatkuva .
Johdannainen on:
Se on myös jatkuvaa :lle asetettujen ehtojen mukaisesti . Olkoon yhtälön haluttu juuri: , siis sen läheisyydessä :
Sitten Lagrangen lauseen mukaan :
Johtuen siitä, että samassa delta-alueella, seuraava pitää paikkansa:
Näin saatu funktio juuren naapurissa toteuttaa supistumismappauksen . ■
Tässä tapauksessa yhtälön numeerisen ratkaisun löytämisalgoritmi pelkistetään iteratiiviseksi laskentamenettelyksi :
Banachin lauseen mukaan approksimaatioiden sarja pyrkii yhtälön juureen .
Menetelmän pääidea on seuraava: alkuperäinen approksimaatio asetetaan hypoteettisen juuren lähelle, minkä jälkeen piirretään tarkasteltavan funktion kaavion tangentti approksimaatiopisteeseen, jonka leikkaus abskissa-akselin kanssa on löytyi. Tämä piste on otettu seuraavaksi approksimaatioksi. Ja niin edelleen, kunnes vaadittu tarkkuus on saavutettu.
Olkoon 1) reaaliarvoinen funktio jatkuvasti differentioituva välillä ;
2) on pakollinen kohta : ;
3) on myös sellaisia, että
for
ja
for ;
4) kohta on sellainen, että . Sitten kaava iteratiiviselle approksimaatiolle k
:lle voidaan johtaa tangentin geometrisestä merkityksestä seuraavasti:
missä on kaavion tangenttiviivan kaltevuus pisteessä .
Siksi (oletetaan tangenttiviivan yhtälössä ) halutulla lausekkeella on muoto:
Jos , tätä arvoa voidaan käyttää seuraavana likiarvona .
Jos , niin siellä on "lento" (juuri on lähellä rajaa ). Tässä tapauksessa on välttämätöntä (käyttäen puolitusmenetelmän ideaa ) korvata pisteellä, kunnes piste "palaa" hakualueelle .
Huomautukset. 1) Jatkuvan derivaatan läsnäolo mahdollistaa jatkuvasti muuttuvan tangentin rakentamisen koko ratkaisun etsintäalueelle . 2) Tapauksia, joissa halutun ratkaisun
raja (pisteessä tai pisteessä ) on, tarkastellaan samalla tavalla.
3) Geometrialta katsottuna yhtäläisyys
tarkoittaa, että kaavion tangentti
pisteessä
- on yhdensuuntainen akselin
kanssa
eikä
leikkaa sen kanssa lopussa.
4) Mitä suurempi vakio ja pienempi vakio ehtojen kappaleesta 3, sitä lähempänä
kaavion tangentin ja pisteen akselin leikkauspiste on, eli sitä lähempänä arvo on haluttua .
Iteratiivinen prosessi alkaa jollain aloituslikiarvolla ja halutun pisteen välissä ei saa olla muita funktion nollia, eli "mitä lähempänä haluttua juuria , sen parempi." Jos etsinnässä ei ole oletuksia , yritys ja erehdys voi kaventaa mahdollisten arvojen aluetta soveltamalla väliarvolausetta .
Ennalta määritetyille ,
iteratiivinen prosessi päättyy , jos
ja
.
Erityisesti näyttömatriisille ja voidaan laskea kaavion näyttöasteikon perusteella, eli jos ja putoavat yhteen pystysuoraan ja yhteen vaakariviin.
Harkitse positiivisen löytämisen ongelmaa , jolle . Tämä tehtävä voidaan esittää tehtävänä löytää funktion nollakohta . Meillä on lauseke johdannaiselle . Koska kaikille ja for , on selvää , että ratkaisu on välillä 0 ja 1. Otetaan arvo alkuperäiseksi approksimaatioksi , niin:
Kelvolliset merkitsevät numerot on alleviivattu . Voidaan nähdä, että niiden lukumäärä kasvaa askeleelta askeleelta (noin kaksinkertaistuu jokaisessa vaiheessa): 1 - 2, 2 - 5, 5 - 10, mikä kuvaa neliöllistä lähentymisnopeutta .
Tarkastellaanpa useita esimerkkejä, jotka osoittavat menetelmän puutteita.
Päästää
Sitten
Otetaan nolla alkuperäiseksi approksimaatioksi. Ensimmäinen iteraatio antaa yksikön likimääräisenä. Toinen puolestaan antaa jälleen nollan. Menetelmä kiertää, eikä ratkaisua löydy. Yleisesti ottaen approksimaatiosarjan rakentaminen voi olla hyvin hämmentävää .
Harkitse toimintoa:
Silloin ja kaikkialla paitsi 0.
Juuren läheisyydessä derivaatta vaihtaa merkkiä lähestyessään nollaa oikealta tai vasemmalta. Vaikka . _
Siten se ei ole rajattu lähellä juurta, ja menetelmä hajoaa, vaikka funktio on kaikkialla differentioituva, sen derivaatta on ei-nolla juuressa, äärettömästi differentioituva kaikkialla paitsi juuresta ja sen derivaatta on rajattu juuren ympärille. .
Harkitse esimerkkiä:
Sitten ja paitsi silloin, kun sitä ei ole määritelty.
Seuraavassa vaiheessa meillä on :
Tuloksena olevan sekvenssin konvergenssinopeus on noin 4/3. Tämä on huomattavasti pienempi kuin 2, mikä on välttämätöntä neliöllisen konvergenssin kannalta, joten tässä tapauksessa voidaan puhua vain lineaarisesta konvergenssista, vaikka funktio on jatkuvasti differentioituva kaikkialla , derivaatta juuressa ei ole nolla ja on äärettömästi differentioituva kaikkialla paitsi juurella.
Päästää
Silloin ja sieltä . Siten menetelmän konvergenssi ei ole neliöllinen, vaan lineaarinen, vaikka funktio on äärettömästi differentioituva kaikkialla.
Olkoon yhtälö , missä ja sen ratkaisu on löydettävä.
Alla on päälauseen muotoilu, jonka avulla voimme antaa selkeät sovellettavuuden ehdot. Se kantaa Neuvostoliiton matemaatikon ja taloustieteilijän Leonid Vitalievich Kantorovich ( 1912-1986 ) nimeä .
Kantorovichin lause.
Jos on vakioita , kuten:
Lisäksi tarkasteltavan segmentin pituus . Sitten seuraavat väitteet pitävät paikkansa:
Erityisesti lauseen viimeisestä lauseesta menetelmän neliöllinen konvergenssi seuraa:
Sitten alkuperäisen funktion rajoitukset näyttävät tältä:
Isaac Newton kuvasi menetelmän Barrowille vuonna 1669 osoittamassaan käsikirjoituksessa On the Analysis by Equations of Infinite Series ( latinaksi De analysi per aequationes numero terminorum infinitas ) ja teoksessa The Method of Fluxions and Infinite Series ( latinaksi: De metodis fluxionum ) et serierum infinitarum" ) tai " Analyyttinen geometria " ( lat. "Geometria analytica" ) Newtonin teosten kokoelmissa, joka kirjoitettiin vuonna 1671 . Kirjoituksissaan Newton esittelee käsitteitä, kuten funktion laajentaminen sarjaksi , infinitesimaalit ja fluxions ( johdannaiset nykyisessä merkityksessä). Nämä teokset julkaistiin paljon myöhemmin: ensimmäinen julkaistiin vuonna 1711 William Johnsonin ansiosta, toisen julkaisi John Colzon vuonna 1736 luojan kuoleman jälkeen. Menetelmän kuvaus poikkesi kuitenkin merkittävästi hänen nykyisestä esityksestään: Newton sovelsi menetelmäään yksinomaan polynomeihin . Hän ei laskenut peräkkäisiä approksimaatioita , vaan polynomien sarjaa ja sai tuloksena likimääräisen ratkaisun .
Menetelmä julkaistiin ensimmäisen kerran John Wallisin tutkielmassa "Algebra" vuonna 1685, jonka pyynnöstä Newton itse kuvaili sitä lyhyesti. Vuonna 1690 Joseph Raphson julkaisi yksinkertaistetun kuvauksen kirjassaan "Analysis aequationum universalis" ( latinaksi: "Analysis aequationum universalis" ). Raphson piti Newtonin menetelmää puhtaasti algebrallisena ja rajoitti sen soveltamisen polynomeihin, mutta hän kuvaili menetelmää peräkkäisillä approksimaatioilla eikä Newtonin käyttämän vaikeammin ymmärrettävän polynomisarjan avulla. Lopuksi, vuonna 1740 Thomas Simpson kuvasi Newtonin menetelmän ensimmäisen kertaluvun iteratiiviseksi menetelmäksi epälineaaristen yhtälöiden ratkaisemiseksi derivaatta käyttäen, kuten tässä esitetään. Samassa julkaisussa Simpson yleisti menetelmän kahden yhtälöjärjestelmän tapaukseen ja totesi, että Newtonin menetelmää voidaan soveltaa myös optimointiongelmiin etsimällä derivaatan tai gradientin nolla .
Vuonna 1879 Arthur Cayley Newton - Fourierin imaginaarisessa ongelmassa huomautti ensimmäisenä vaikeudet yleistää Newtonin menetelmää tapaukseen , jossa polynomien imaginaariset juuret ovat korkeampia kuin toinen ja monimutkaiset alkuperäiset approksimaatiot. Tämä työ tasoitti tietä fraktaaliteorian tutkimukselle .
Asiaan liittyvä sekanttimenetelmä on Newtonin "likimääräinen" menetelmä ja välttää derivaatan laskemisen . Johdannan arvo iteratiivisessa kaavassa korvataan sen estimaatilla kahdelle edelliselle iteraatiopisteelle:
.
Siten pääkaavalla on muoto
Tämä menetelmä on samanlainen kuin Newtonin menetelmä, mutta sen konvergenssinopeus on hieman hitaampi. Menetelmän konvergenssijärjestys on yhtä suuri kuin kultainen suhde - 1,618 ...
Huomautukset. 1) Iteratiivisen prosessin aloittamiseksi tarvitaan kaksi eri arvoa
ja
.
2) Toisin kuin "todellisessa Newton-menetelmässä" (tangenttimenetelmä), joka vaatii vain tallentamisen
(ja tilapäisesti laskelmien aikana ja ), sekanttimenetelmä vaatii tallentamisen
,
,
,
.
3) Sitä käytetään, jos laskenta on vaikeaa (esimerkiksi se vaatii paljon koneresursseja: aikaa ja/tai muistia).
Kutsujen määrän vähentämiseksi funktion derivaatan arvoihin käytetään niin sanottua yhden tangentin menetelmää.
Tämän menetelmän iteraatiokaava on:
Menetelmän ydin on laskea derivaatta vain kerran, alkuperäisessä approksimaatiopisteessä ja käyttää sitten tätä arvoa jokaisessa seuraavassa iteraatiossa:
Tällä valinnalla seuraava yhtäläisyys pätee pisteessä :
ja jos segmentti, jossa oletetaan juuren olemassaoloa ja valitaan alkuperäinen approksimaatio , on riittävän pieni ja derivaatta on jatkuva, niin arvo ei poikkea paljoakaan ja siksi kuvaaja kulkee melkein vaakasuoraan leikkaaen suora viiva , joka puolestaan varmistaa approksimaatiopisteiden sarjan nopean lähentymisen juureen.
Tämä menetelmä on yksinkertaisen iterointimenetelmän erikoistapaus . Sillä on lineaarinen konvergenssijärjestys.
Yleistetään saatu tulos moniulotteiseksi tapaukseksi.
On tarpeen löytää ratkaisu järjestelmään:
Kun valitaan jokin alkuarvo , peräkkäiset approksimaatiot löydetään ratkaisemalla yhtälöjärjestelmiä :
missä .
Olkoon tarpeen löytää usean muuttujan funktion minimi . Tämä tehtävä vastaa gradientin nollakohdan löytämisen ongelmaa . Sovelletaan yllä olevaa Newtonin menetelmää:
missä on funktion Hessiankielinen .
Kätevämmässä iteratiivisessa muodossa tämä lauseke näyttää tältä:
On huomattava, että neliöfunktion tapauksessa Newtonin menetelmä löytää ääripään yhdessä iteraatiossa.
Hessenin matriisin löytäminen on laskennallisesti kallista eikä useinkaan mahdollista. Tällaisissa tapauksissa vaihtoehtona voivat toimia kvasi-newtonilaiset menetelmät , joissa Hessenin matriisin approksimaatio rakennetaan funktion kaarevuuden tiedon keräämiseen.
Newton-Raphsonin menetelmä on parannus edellä kuvattuun Newtonin ääripäämenetelmään. Suurin ero on, että seuraavassa iteraatiossa yksi yksiulotteisen optimoinnin menetelmistä valitsee optimaalisen vaiheen:
jossa Laskelmien optimoimiseksi käytetään seuraavaa parannusta: sen sijaan, että laskemme uudelleen tavoitefunktion Hessenin jokaisessa iteraatiossa , rajoitamme alkuperäiseen approksimaatioon ja päivitämme sen vain kerran vaiheittain tai emme päivitä sitä ollenkaan.
Käytännössä on usein tehtäviä, joissa joudutaan säätämään kohteen vapaita parametreja tai sovittamaan matemaattinen malli todelliseen dataan. Näissä tapauksissa esiintyy pienimmän neliösumman ongelmia :
Näille ongelmille on ominaista erityinen gradientti ja Hessenin matriisi :
missä on vektorifunktion Jacobi-matriisi , on sen komponentin Hessen-matriisi .
Sitten seuraava vaihe määritetään järjestelmästä:
Gauss-Newtonin menetelmä perustuu oletukseen, että termi hallitsee . Tämä vaatimus ei täyty, jos minimijäännökset ovat suuria, eli jos normi on verrattavissa matriisin maksimiominaisarvoon . Muuten voit kirjoittaa:
Siten, kun normi on lähellä nollaa ja matriisilla on täysi sarakejärjestys , askel poikkeaa vain vähän newtonilaisesta (ottaen huomioon ), ja menetelmällä voidaan saavuttaa neliöllinen konvergenssinopeus, vaikka toisia derivaattoja ei oteta huomioon. tili. Menetelmän parannus on heuristisiin näkökohtiin perustuva Levenberg-Marquardt-algoritmi .
Tähän asti menetelmän kuvauksessa on käytetty funktioita, jotka suorittavat kartoituksia todellisten arvojen joukossa . Menetelmää voidaan kuitenkin soveltaa myös kompleksisen muuttujan funktion nollakohdan löytämiseen . Menettelytapa pysyy kuitenkin samana:
Erityisen kiinnostavaa on alkuperäisen approksimation valinta . Ottaen huomioon, että funktiossa voi olla useita nollia, menetelmä voi eri tapauksissa konvergoida eri arvoihin, ja on aivan luonnollista haluta selvittää, mitkä alueet varmistavat konvergenssin tiettyyn juuriin. Tämä kysymys kiinnosti Arthur Cayleyä jo vuonna 1879 , mutta se oli mahdollista ratkaista vasta 1900-luvun 70 - luvulla tietokonetekniikan myötä. Kävi ilmi, että näiden alueiden risteyskohdissa (niitä kutsutaan yleensä vetovoimaalueiksi ) muodostuu niin sanottuja fraktaaleja - äärettömiä itsekaltaisia geometrisia kuvioita.
Koska Newton sovelsi menetelmäään yksinomaan polynomeihin , tällaisen sovelluksen tuloksena muodostuneet fraktaalit tunnettiin Newtonin fraktaaleina tai Newtonin pooleina .
Optimointimenetelmät _ | |
---|---|
Yksiulotteinen |
|
Nolla järjestys | |
Ensimmäinen tilaus | |
toinen tilaus | |
Stokastinen | |
Lineaariset ohjelmointimenetelmät _ | |
Epälineaariset ohjelmointimenetelmät |