Newtons metod, Newtons algoritm ( även känd som tangentmetoden ) är en iterativ numerisk metod för att hitta roten ( noll ) av en given funktion . Metoden föreslogs först av den engelske fysikern , matematikern och astronomen Isaac Newton ( 1643-1727 ) . Sökandet efter en lösning utförs genom att konstruera successiva approximationer och bygger på principerna för enkel iteration . Metoden har kvadratisk konvergens . En modifiering av metoden är metoden för ackord och tangenter . Dessutom kan Newtons metod användas för att lösa optimeringsproblem där det krävs att bestämma nollpunkten för den första derivatan eller gradienten i fallet med ett flerdimensionellt utrymme.
För att numeriskt lösa ekvationen med den enkla iterationsmetoden måste den reduceras till en ekvivalent ekvation: , där är sammandragningsavbildningen .
För bästa konvergens av metoden vid punkten för nästa approximation måste villkoret vara uppfyllt . Lösningen av denna ekvation söks i formen , då:
Om man antar att approximationspunkten är "tillräckligt nära" roten och att den givna funktionen är kontinuerlig , är den slutliga formeln för :
Med detta i åtanke är funktionen definierad:
Under vissa förhållanden utför denna funktion en sammandragningsmappning i ett område av roten.
BevisLåt en funktion av en reell variabel ges som är två gånger kontinuerligt differentierbar i sin definitionsdomän och vars derivata aldrig försvinner:
Och det är nödvändigt att bevisa att funktionen utför en sammandragningsmappning nära roten av ekvationen .
På grund av funktionens kontinuerliga differentiabilitet och olikheten noll är dess första derivata kontinuerlig .
Derivaten är:
Under de villkor som ställs på är den också kontinuerlig. Låt vara den önskade roten till ekvationen: , därför i dess grannskap :
Sedan enligt Lagranges sats :
På grund av det faktum att i samma deltakvarter är följande sant:
Den sålunda erhållna funktionen i närheten av roten implementerar en sammandragningsmappning . ■
I detta fall reduceras algoritmen för att hitta en numerisk lösning till ekvationen till en iterativ beräkningsprocedur :
Enligt Banachs teorem tenderar sekvensen av approximationer till roten av ekvationen .
Huvudidén med metoden är följande: den initiala approximationen sätts nära den hypotetiska roten, varefter en tangent till grafen för funktionen som studeras plottas vid approximationspunkten, för vilken skärningspunkten med abskissaxeln är hittades. Denna punkt tas som nästa approximation. Och så vidare, tills den erforderliga noggrannheten uppnås.
Låt 1) en verkligt värderad funktion vara kontinuerligt differentierbar på intervallet ;
2) det finns en nödvändig punkt : ;
3) det finns också sådana att
för
och
för ;
4) poängen är sådan att . Sedan kan formeln för iterativ approximation till k
härledas från tangentens geometriska betydelse enligt följande:
var är lutningsvinkeln för tangentlinjen till grafen vid punkten .
Därför (i tangentlinjens ekvation antar vi ) har det önskade uttrycket för formen:
Om , då kan detta värde användas som nästa approximation till .
Om , så finns det en "flykt" (roten ligger nära gränsen ). I det här fallet är det nödvändigt (med hjälp av idén om halveringsmetoden ) att ersätta med tills punkten "återgår" till sökområdet .
Anmärkningar. 1) Närvaron av en kontinuerlig derivata gör det möjligt att bygga en kontinuerligt föränderlig tangent på hela området för sökningen efter en lösning .
2) Fall av gräns (vid en punkt eller vid en punkt ) placering av den önskade lösningen betraktas på liknande sätt.
3) Ur geometrisk synvinkel
betyder likhet att tangentlinjen till grafen
i punkten
- är parallell med axeln
och
inte skär den i slutet.
4) Ju större konstant och ju mindre konstant från punkt 3 av villkoren, desto närmare
skärningspunkten för tangenten till grafen och axeln till punkten , det vill säga desto närmare värdet till det önskade .
Den iterativa processen börjar med en viss initial approximation , och mellan och den önskade punkten bör det inte finnas andra nollor i funktionen , det vill säga "ju närmare den önskade roten , desto bättre." Om det inte finns några antaganden om att hitta , kan trial and error begränsa intervallet av möjliga värden genom att tillämpa mellanvärdessatsen .
För fördefinierade slutar den iterativa
processen om
och
.
I synnerhet för visningsmatrisen och kan beräknas baserat på grafens displayskala , det vill säga om och faller i en vertikal och i en horisontell rad.
Tänk på problemet med att hitta positivt , för vilket . Denna uppgift kan representeras som uppgiften att hitta nollpunkten för funktionen . Vi har ett uttryck för derivatan . Eftersom för alla och för , är det uppenbart att lösningen ligger mellan 0 och 1. Låt oss ta värdet som en initial approximation , då:
Giltiga signifikanta siffror är understrukna . Det kan ses att deras antal ökar från steg till steg (ungefär fördubblas med varje steg): från 1 till 2, från 2 till 5, från 5 till 10, vilket illustrerar den kvadratiska konvergenshastigheten .
Låt oss överväga ett antal exempel som pekar på bristerna i metoden.
Låta
Sedan
Låt oss ta noll som en första gissning. Den första iterationen ger enheten som en approximation. I sin tur kommer tvåan återigen att ge noll. Metoden kommer att loopa och ingen lösning kommer att hittas. Generellt sett kan konstruktionen av en sekvens av approximationer vara mycket förvirrande .
Tänk på en funktion:
Då och överallt utom 0.
I närheten av roten ändrar derivatan tecken när den närmar sig noll från höger eller vänster. Medan för .
Således är den inte begränsad nära roten, och metoden kommer att divergera, även om funktionen är differentierbar överallt, dess derivata är icke-noll vid roten, oändligt differentierbar överallt utom vid roten, och dess derivata är avgränsad runt roten .
Tänk på ett exempel:
Då och utom där det inte är definierat.
I nästa steg har vi :
Konvergenshastigheten för den resulterande sekvensen är ungefär 4/3. Detta är betydligt mindre än 2, vilket är nödvändigt för kvadratisk konvergens, så i detta fall kan vi bara tala om linjär konvergens, även om funktionen är kontinuerligt differentierbar överallt , är derivatan vid roten inte lika med noll, och är oändligt differentierbar överallt utom vid roten.
Låta
Då och därav . Metodens konvergens är alltså inte kvadratisk, utan linjär, även om funktionen är oändligt differentierbar överallt.
Låt ekvationen ges , var och det är nödvändigt att hitta sin lösning.
Nedan följer formuleringen av huvudsatsen, som gör att vi kan ge tydliga förutsättningar för tillämpbarhet. Den bär namnet på den sovjetiske matematikern och ekonomen Leonid Vitalievich Kantorovich ( 1912-1986 ) .
Kantorovichs teorem.
Om det finns konstanter så att:
Dessutom längden på det betraktade segmentet . Då är följande påståenden sanna:
Från det sista påståendet i satsen, i synnerhet, följer metodens kvadratiska konvergens :
Då kommer begränsningarna för den ursprungliga funktionen att se ut så här:
Metoden beskrevs av Isaac Newton i manuskriptet On the Analysis by Equations of Infinite Series ( latin: De analysi per aequationes numero terminorum infinitas ) adresserat till Barrow 1669 , och i The Method of Fluxions and Infinite Series ( latin: De metodis fluxionum et serierum infinitarum" ) eller " Analytisk geometri " ( lat. "Geometria analytica" ) i samlingarna av Newtons verk, som skrevs 1671 . I sina skrifter introducerar Newton begrepp som expansionen av en funktion till en serie , infinitesimals och fluxioner ( derivator i nuvarande mening). Dessa verk publicerades mycket senare: det första publicerades 1711 tack vare William Johnson, det andra publicerades av John Colzon 1736 efter skaparens död. Men beskrivningen av metoden skilde sig väsentligt från hans nuvarande utläggning: Newton tillämpade sin metod uteslutande på polynom . Han beräknade inte successiva approximationer , utan en sekvens av polynom och som ett resultat fick en ungefärlig lösning .
Metoden publicerades först i avhandlingen "Algebra" av John Wallis 1685, på vars begäran den kortfattat beskrevs av Newton själv. År 1690 publicerade Joseph Raphson en förenklad beskrivning i sin "Analysis aequationum universalis" ( latin: "Analysis aequationum universalis" ). Raphson såg Newtons metod som rent algebraisk och begränsade dess tillämpning till polynom, men han beskrev metoden i termer av successiva approximationer istället för den svårare att förstå sekvensen av polynom som används av Newton. Slutligen, 1740, beskrevs Newtons metod av Thomas Simpson som en första ordningens iterativ metod för att lösa icke-linjära ekvationer med hjälp av en derivata, som presenteras här. I samma publikation generaliserade Simpson metoden till fallet med ett system med två ekvationer och noterade att Newtons metod också kan tillämpas på optimeringsproblem genom att hitta nollpunkten för derivatan eller gradienten .
År 1879 var Arthur Cayley , i The Newton-Fourier imaginary problem, den förste som påpekade svårigheterna med att generalisera Newtons metod till fallet med imaginära rötter av polynom av högre grad än de andra och komplexa initiala approximationerna. Detta arbete banade väg för studier av fraktal teori .
Den relaterade sekantmetoden är Newtons "ungefärliga" metod och undviker att beräkna derivatan. Värdet på derivatan i den iterativa formeln ersätts av dess uppskattning för de två föregående iterationspunkterna:
.
Således har huvudformeln formen
Denna metod liknar Newtons, men har en något långsammare konvergenshastighet. Metodens konvergensordning är lika med det gyllene snittet - 1,618 ...
Anmärkningar. 1) För att starta den iterativa processen krävs två olika värden av
och
.
2) I motsats till den "riktiga Newtonmetoden" (tangensmetoden), som endast kräver lagring
(och tillfälligt under beräkningar och ), kräver sekantmetoden att spara
,
,
,
.
3) Den används om beräkningen är svår (till exempel kräver den en stor mängd maskinresurser: tid och/eller minne).
För att minska antalet anrop till värdena för derivatan av en funktion används den så kallade entangentmetoden.
Iterationsformeln för denna metod är:
Kärnan i metoden är att beräkna derivatan endast en gång, vid den initiala approximationspunkten , och sedan använda detta värde vid varje efterföljande iteration:
Med detta val gäller följande jämlikhet vid punkten :
och om segmentet på vilket närvaron av en rot antas och den initiala approximationen väljs är tillräckligt liten, och derivatan är kontinuerlig, kommer värdet inte att skilja sig mycket från och därför kommer grafen att passera nästan horisontellt och skära rak linje , vilket i sin tur kommer att säkerställa snabb konvergens av sekvensen av approximationspunkter till roten.
Denna metod är ett specialfall av den enkla iterationsmetoden . Den har en linjär konvergensordning.
Låt oss generalisera det erhållna resultatet till det flerdimensionella fallet.
Låt det vara nödvändigt att hitta en lösning på systemet:
Genom att välja ett initialt värde , hittas successiva approximationer genom att lösa ekvationssystem :
var .
Låt det vara nödvändigt att hitta minimum av en funktion av flera variabler . Denna uppgift är likvärdig med problemet att hitta nollpunkten för gradienten . Låt oss tillämpa ovanstående Newtons metod:
var är hessian för funktionen .
I en mer bekväm iterativ form ser detta uttryck ut så här:
Det bör noteras att i fallet med en kvadratisk funktion hittar Newtons metod ett extremum i en iteration.
Att hitta den hessiska matrisen är beräkningsmässigt dyrt och ofta omöjligt. I sådana fall kan kvasi-newtonska metoder fungera som ett alternativ , där en approximation av den hessiska matrisen byggs i processen att ackumulera information om funktionens krökning.
Newton-Raphson-metoden är en förbättring av Newtons extremummetod som beskrivs ovan. Den största skillnaden är att vid nästa iteration väljer en av metoderna för endimensionell optimering det optimala steget:
där För att optimera beräkningarna används följande förbättring: istället för att räkna om hessian för objektivfunktionen vid varje iteration begränsar vi oss till den initiala approximationen och uppdaterar den bara en gång i steg, eller uppdaterar den inte alls.
I praktiken finns det ofta uppgifter där det krävs att justera de fria parametrarna för ett objekt eller justera den matematiska modellen till verkliga data. I dessa fall visas minsta kvadratproblem :
Dessa problem kännetecknas av en speciell sorts gradient och hessisk matris :
där är Jacobi-matrisen för vektorfunktionen , är den hessiska matrisen för dess komponent .
Sedan bestäms nästa steg från systemet:
Gauss-Newton-metoden bygger på antagandet att termen dominerar över . Detta krav uppfylls inte om minimiresterna är stora, det vill säga om normen är jämförbar med matrisens maximala egenvärde . Annars kan du skriva:
Således, när normen är nära noll, och matrisen har full kolumnrankning , skiljer sig steget lite från det Newtonska (med hänsyn till ), och metoden kan uppnå en kvadratisk konvergenshastighet, även om andraderivatorna inte tas med i konto. En förbättring av metoden är Levenberg-Marquardt-algoritmen baserad på heuristiska överväganden.
Fram till nu, i beskrivningen av metoden, användes funktioner som utför mappningar inom uppsättningen av verkliga värden . Metoden kan dock också användas för att hitta nollpunkten för en funktion av en komplex variabel . Proceduren förblir dock densamma:
Av särskilt intresse är valet av den initiala uppskattningen . Med tanke på att en funktion kan ha flera nollor kan metoden i olika fall konvergera till olika värden, och det är ganska naturligt att vilja ta reda på vilka områden som säkerställer konvergens till en viss rot. Denna fråga intresserade Arthur Cayley redan 1879 , men det var bara möjligt att lösa den på 70 -talet av 1900-talet med tillkomsten av datorteknik. Det visade sig att i skärningspunkterna mellan dessa regioner (de kallas vanligtvis attraktionsregioner ) bildas så kallade fraktaler - oändliga självliknande geometriska figurer.
På grund av det faktum att Newton tillämpade sin metod uteslutande på polynom , blev fraktalerna som bildades som ett resultat av en sådan ansökan kända som Newtons fraktaler eller Newtons pooler .
_ | Optimeringsmetoder|
---|---|
En-dimensionell |
|
Noll ordning | |
Första beställning | |
andra beställning | |
Stokastisk | |
Linjära programmeringsmetoder _ | |
Icke -linjära programmeringsmetoder |