From Wikipedia, the free encyclopedia
Közelítő megoldásnak nevezünk egyes matematikai problémákra olyan formában adott válaszokat, hogy azok az elvárt, ideális megoldástól egy elvárt mértéknél kevésbé térjenek el. Rendszerint rekurzív vagy iteratív módszereket veszünk igénybe ebből a célból, de ez egyáltalán nem kötelező. Azonban utóbbi esetben is mindenképpen kell egy kiindulási érték, amit szintén közelítő megoldásnak vagy 0. közelítésnek nevezünk.
A probléma típusától függően a közelítő módszer realizációja ténylegesen más és más lehet, de általánosan igaz, hogy numerikus matematikai jellegű. Ez algebrai egyenletek esetén kevésbé problémás, azonban differenciálegyenletek esetén, példának okáért, már gondot okozhat, hogy nem egy függvényt, hanem annak csak egyes pontjait, vagy azok közelítését kapjuk meg. Ebből a megoldásfüggvény előállítása általában valamilyen heurisztikus módszer segítségével történhet – ha az egyáltalán zárt alakban előállítható.
Szintén ide tartozik a függvények közelítése egyszerűbb vagy kényelmesebben kezelhető (esetleg ismert) függvények segítségével. Ennek során nem csak a közelítő függvényeket érdemes megadni, de egy lehetséges hibakorlátot is, azaz a valós függvény mennyiben tér el a közelítő függvénytől vagy függvénysorozattól. Ennek leggyakoribb formája a Fourier-sorok alkalmazása.
A közelítő megoldásoknak a számítástechnikai alkalmazásokban van igen jelentős hasznuk, ugyanis az ilyen jellegű eredményeket a kézzel történő számításoknál nagyságrendekkel gyorsabban kaphatjuk meg, és azokból a tényleges megoldás jellemzően kikövetkeztethető, ha egyáltalán szükségünk van ilyenre.
A közelítő megoldások kereséséhez elsőként rögzítenünk kell, hogy mit tekintünk elfogadható közelítésnek. Az elfogadhatósági határt többféleképpen is rögzíthetjük:
A sorozatokkal való közelítések esetén lényeges kérdés az is, hogy az eljárás konvergens-e, és ha igen, milyen „gyors” a konvergencia. Ez utóbbi alatt azt kell érteni, hogy az egymást követő sorozattagok eltérése egymástól vagy a várt értéktől milyen mértékben csökken.
Rekurziónak nevezzük a közelítő eljárások során valamely algoritmus ismétlését. Jellemzően ennek során valamely már korábban megállapított közelítő értékből, vagy közelítő értékek halmazából állítunk elő újabb értéket vagy értékhalmazt. A közelítő eljárások során sokszor a rekurziónak is egy speciális esetét, az iterációt alkalmazzuk.
Tipikus rekurziós eljárások az integrálközelítések és az intervallumfelezéses egyenletmegoldások.
Iteráció során egy függvény segítségével állítunk elő egy sorozatot, mégpedig úgy, hogy megadjuk a sorozat induló tagját, majd a sorozat minden tagját az előzőből ezzel a függvénnyel állítjuk elő:
Iterációt igen könnyű megvalósítani, azonban igen gyorsan számításigényessé válik. Nem mellékes az a tény sem, hogy igen érzékeny a kezdeti feltételekre, különösen, ha több megoldás is létezik a problémára. Ebben az esetben általában nem megjósolható, hogy egy adott kiindulási érték melyikhez fog elvezetni.
A legjellemzőbb képviselője a Newton-féle iteráció.
Mielőtt egy probléma numerikus megoldásába belekezdenénk, feltétlenül érdemes tudni, hogy egyáltalán számíthatunk-e megoldásra. Ez tulajdonképpen problémakörönként változó, egyértelműen elég nehéz válaszolni rá.
Egyes esetekben már a probléma eredete megköveteli a megoldás létezését. Ezek tipikusan kísérleti adatokra támaszkodó problémák, esetleg valós folyamatok modelljei, bár utóbbi esetben a modellben a rosszul megválasztott paraméterek esetlegesen irreális eredményt adhatnak.
Egyenletek megoldása esetén az egyenlet jellege szerint tovább ágazik a megoldhatósági vizsgálat.
A komplex számok teste feletti polinomoknak az algebra alaptétele miatt biztosan létezik legalább egy gyöke (valójában annyi, ahányad fokú a polinom), úgyhogy a megoldhatósági vizsgálat jelen esetben a szűkebb halmazokra (valós számok, racionális számok) korlátozódik.
Valós számokon dolgozva, mint leggyakoribb eset, a páratlan fokszámú polinomoknak biztosan van gyöke. Ez egyszerűen annak a következménye, hogy minden komplex gyök esetén a gyök konjugáltja is gyök. A páros fokszámú polinomoknak ellenben nem biztosított a gyök létezése. Másodfokú egyenlet esetén a döntés egyszerű, a diszkrimináns felettébb sokat segít. A magasabb fokú polinomoknál egy lehetőség, hogy felbontjuk alacsonyabb fokszámú polinomok szorzatára, majd ezek megoldhatóságát ellenőrizzük. Célszerű ezeket a polinomokat az egyszerűség érdekében főpolinommá alakítani, illetve változócserével hiányos polinommá.
Külön tisztázandó, hogy egy megadott intervallumon van-e megoldás. Egyes módszerek eleve ezzel a feltételezéssel indítanak, itt nem szükséges a megoldhatósági vizsgálat. Egyébként a rendezett polinom segítségével eldönthető az intervallumon belüli megoldás, mivel ez egyet jelent az intervallumon belüli előjelváltásokkal, azaz
Sőt, ennél még több is mondható: ha találunk olyan szigorúan monoton növekvő sorozatot az intervallumban úgy, hogy az egymást követő tagokra a függvény előjelet vált, akkor a megoldások száma legalább .
Megint figyelembe kell venni a páros fokszámú polinomokat – elég az egyenletre gondolni, amely tartósan nemnegatív, de van gyöke. Ezeket újfent a szorzattá bontás módszerével vizsgálhatjuk, de most kifejezetten páratlan fokszámú polinomokat keresünk.
Ebben az esetben a megoldhatóság vizsgálata lényegesen nehezebb lehet, mint a polinomok esetében. A komplex számok esetében ez nem okoz problémát, minden nemkonstans polinom esetén az egyenletnek van komplex gyöke. A valós eset azonban már keményebb dió. Általában igaz az, hogy ha egy intervallumon történik előjelváltás, akkor ott van gyök, azonban ez nem szükséges feltétel itt sem.
Általában az ilyen egyenleteket valamilyen módon polinomokkal közelítjük már eleve, ebben az esetben a megoldhatóságot visszavezettük az előző esetre. Egészen értelmes eljárás kifejezetten páratlan fokszámú polinommal közelíteni az ott elhangzottak okán.
Egyenletrendszerek megoldhatósága lényegesen izgalmasabb probléma, mint az egyenleteké, különösen nemlineáris esetben.
A lineáris egyenletrendszerek numerikus megoldása, megoldhatósága gyakorlatilag lezárt terület, a megoldás közelítés nélkül is megkapható.
Több lehetőség is van a megoldhatóság vizsgálatára.
Az egyenletek megoldása során tulajdonképpen zérushelyeket keresünk. Közelítő megoldásokra akkor van szükségünk jellemzően, ha az adott egyenlet nem alakítható át legfeljebb negyedfokú polinommá. A gyakorlatban azonban már a harmadfokú egyenleteknek is eléggé sok számolást igényel az algebrai megoldása,[1] ezért legfeljebb másodfokú egyenletek esetén alkalmazunk megoldóképletet.
Minden egyenlet a mérlegelv segítségével az
alakra hozható, eme egyenlet gyökeit igyekszünk megkeresni. Minden esetben feltételezzük, hogy a függvény legalább egy intervallum felett folytonos, vagy folytonossá tehető, ellenkező esetben ugyanis elképzelhető, hogy egyáltalán nincs megoldás, vagy, ami sokkal kellemetlenebb esemény, a közelítő sorozat csak véges sok tagra értelmezhető. A gyökök létezésére vonatkozólag az előző szakasz meggondolásai irányadóak.
Az egyenletek közelítő értékeinek megtalálása geometriailag is interpretálható, ilyen módon ráadásul egyszerűbb esetekben szemléletesebb is. Minden esetben az függvény ívét igyekszünk valamilyen módon egyenessel közelíteni, majd az egyenes tengelymetszetét tekintjük közelítő megoldásnak. Ez megfeleltethető egy lineáris egyenlet megoldásának, ami tipikusan egyszerű feladat.
Ugyan elméletileg bármilyen egyenlet megoldására alkalmasak az ismertetett módszerek, a gyakorlatban azonban csak polinomiális esetekben alkalmazzuk őket a könnyű számíthatóság során. Ez különösen számítógépes megvalósítások esetén lényeges, ugyanis ekkor a nem polinomiális függvényeket is polinomokkal (általában a függvény #Taylor-polinomjával helyettesítjük.
Az intervallumfelezés alapja az a tétel, mely szerint ha egy intervallumon folytonos függvény az intervallum végpontjaiban különböző előjelű, akkor van olyan érték az intervallumban, ahol a függvény helyettesítési értéke 0. Röviden:
Itt az intervallumon folytonos függvények halmaza.
Az eljárás során a függvény intervallum-végpontokban felvett értékeire egyenest fektetünk, majd ennek az egyenesnek a tengelymetszetét keressük. Az így kapott érték biztosan jobb közelítés, mint az eredeti intervallum végpontjai. Ebben a pontban kettéválasztjuk az intervallumot, majd a két rész-intervallum közül az választjuk ki, amelyikre az előbbi feltétel érvényes, és erre megismételjük az eljárást. Mint látható, ez egy tipikus rekurziós eljárás. A konvergenciáját a Cantor-féle közösrész-tétel biztosítja. Az elnevezést az indokolja, hogy az intervallumot az egyenes metszéspontja két részre osztja, ezek közül azt a részt tartjuk meg, amiben az egyenlet gyöke található.
Vegye fel a függvény az intervallum végpontjaiban az és értékeket. Ekkor a függvényt egy egyenessel tudjuk helyettesíteni, melynek két pontja:
amikre fel tudjuk írni az egyenest:
Ennek az egyenesnek keressük az x tengellyel való metszéspontját, azaz az esetben az egyenlet megoldását. Ez
Attól függően, hogy milyen előjelű, az intervallum megfelelő végpontját x-szel helyettesíthetjük, és az eljárást rekurzívan megismételhetjük. Felmerülhet, mint probléma, hogy e húr minden esetben az intervallumon belül metszi-e az x-tengelyt. Ezt két egyenlőtlenség megoldásával láthatjuk be korrektül, de szemléletesen is kikövetkeztethető. A szakaszt ugyanis ha az x-tengelyre vetítjük úgy, hogy a szakasz végpontjai az intervallum végpontjaira essenek, akkor a köztes pontok képei a kép köztes pontjaira esnek.
Keressük a egyenlet megoldásait! Egyszerű számítással kideríthető, hogy egy gyök a intervallumban található. Innen a közelítés lépései:
Láthatólag elég gyorsan, hat lépésben elég közel jutottunk a helyes gyökhöz.
Az eljárás elve hasonló az intervallumfelosztáséhoz. azonban itt az osztópontot a függvénytől függetlenül határozzuk meg. Tulajdonképpen arról van szó, hogy ha az és számok közül az egyik felül, a másik alulbecsli az egyenlet gyökét, akkor
jobb közelítés. Ezt megismételhetjük, ha értékétől függően -et vagy -t helyettesítjük vele. Könnyű megvalósítása és kicsi számolásigénye miatt kedvelt eljárás, azonban lassan konvergál, különösen, ha a zérushely valamelyik végpont közelében van.
Mivel a módszer megint egymást tartalmazó intervallum-láncot hoz létre, a konvergenciát itt is a Cantor-féle közösrész-tétel biztosítja.
Keressük meg az egyenlet megoldásait! Egyszerűen kideríthető, hogy az egyik gyök a intervallumban van. Ez alapján az egyenlet megoldására jobb közelítés az . A közelítés lépései:
Mint látható, valóban elég lassú a közelítés, kilenc lépésben is csak két tizedesjegy pontossággal sikerült megközelíteni a zérushelyet.
Az intervallumfelosztásos módszerhez hasonló eljárás, azonban annál némileg hatékonyabb, mivel a függvényt töröttvonallal közelítjük. Ennek megfelelően nem kell, hogy a kiindulási intervallumon vegye fel a zérushelyét a függvény, az azonban igen, hogy folytonos legyen. Lényegében a #Newton-iteráció véges megfelelője.
Az eljárás lényege, hogy a függvény két pontjára húrt illesztünk, majd ennek a húrnak a tengelymetszetét használjuk, mint közelítő értéket. Ha pedig erre vesszük a függvény helyettesítési értékét, akkor a közelítő töröttvonal következő szakaszát is megkapjuk. Az eljárás nagy előnye a gyors konvergencia és a könnyű megvalósíthatóság, utóbbi miatt szívesebben is alkalmazzák, mint a Newton-iterációt.
Ha adott az és az pont a függvényhez, akkor rájuk fektetett egyenes egyenletéből a metszéspont meghatározható, a következő összefüggésre vezet:
Ebből a rekurzív összefüggést is megadhatjuk:
A használata kényelmesebb, mint az intervallum-osztásos módszereké, mert nem szükséges előzetes becslést adni a zérushelyre. Egyedül az okozhat kényelmetlenséget, ha a húr meredeksége a nulla környékére esik, mivel ekkor nem vagy nagyon messzi értékeknél lesz a metszéspont, és lelassul, esetleg megáll a közelítés. Ennek elkerülésére ebben az esetben a két metszéspont egyikét a számtani közepükkel helyettesítjük.
Közelítsük a egyenlet valós gyökét négy tizedesjegy pontossággal!
Mint láthatjuk, elég gyorsan, mindössze hét lépésben elértük a kitűzött pontosságot. Sőt, ha pontosabban számolunk, itt 5, a következő lépésben 8 tizedesjegy pontossággal kapjuk meg a közelítést.
A Newton-iteráció során a függvényt egy pontjában az érintője segítségével közelítjük. Ehhez a függvény deriváltjának ismeretére van szükség.
Ha adott az függvény, akkor egy kiválasztott abszcisszájú pontban az érintő egyenlete
Ennek az egyenesnek kell meghatározni a tengelymetszetét, amikor is , így kapjuk:
Ebből az iteráció már egyszerűen, rekurzív ismétlésként adódik:
A Newton-iteráció a leggyorsabban konvergáló általános közelítő módszer, hátránya, hogy nem minden esetben mondható meg, hogy több zérushely esetén melyiket kaphatjuk meg. Mi több, ha megjelöljük azokat a pontokat, amikből kiindulva egy adott gyökhöz konvergálunk, akkor jellemzően fraktálokat kapunk eredményül, bár ez már pusztán a módszer iteratív mivoltából is sejthető. Ez különösen igaz a komplex síkon vizsgálódva.
A realizáció során a legnagyobb problémát az egyes pontokban a differenciálhányados meghatározása jelenti, éppen emiatt inkább a húrmódszert szokás használni helyette. A másik jellegzetes probléma, hogy sok esetben a függvény helyettesítési értékét is csak közelítőleg ismerjük, ilyenek például az exponenciális függvények, emiatt a Newton-iterációt leginkább polinomok zérushelyeinek keresésére használják.
Határozzuk meg a 13 köbgyökét! Ez annyit tesz, hogy az
egyenletet igyekszünk megoldani. Ennek egy valós gyöke van, ezért valós függvények esetén nem kell foglalkoznunk azzal, hogy melyik gyököt kapjuk meg, komplex számokon azonban ez gondot jelenthet.
Az egyenlet bal oldalának deriváltfüggvénye:
ez minden pontban folytonos és véges. A sorozat iterációs formája:
amiből tetszőleges esetén megkapjuk az egyetlen valós gyököt. A lépések csökkentése miatt azonban érdemes egy olyan értéktől elindulni, aminek a második hatványa megközelítőleg 13. A példánkban ez legyen a 2, mivel .
0 | ||
1 | ||
2 | ||
3 | ||
4 | ||
5 |
Szemmel láthatóan rettentő gyorsan, az értékes tizedesjegyek számának exponenciális növekedésével konvergál az iteráció, gyakorlatilag öt lépésben 20 tizedesjegy pontosságot érhettünk el.
Az egyenletrendszerek megoldása során, akárcsak a egyenletek esetén, a lineáris esetben explicit módon meghatározható a megoldás létezése és maga a megoldás is, ezért itt a közelítő megoldásokkal nem foglalkozunk. A nemlineáris egyenletek egyes esetekben ugyan linearizálhatóak, azonban sokszor még ebben az esetben is értelmes megoldás lehet inkább közelítő módszereket alkalmazni, különösen, mert ezek megint csak algoritmizálhatóak, így az embernél hatékonyabban számoló eszközökre bízhatjuk magunkat.
Magára a megoldhatóságra vonatkozólag három különböző szemlélet is létezik:
Az utóbbi esetben a számítás elvégzéséhez szükséges a véges dimenziós mivolta a függvénytérnek.
A nemlineáris egyenletrendszerek megoldása során szinte kizárólagosan alkalmazott módszer, ugyanis rendkívül gyors konvergencia jellemzi, és mindössze első deriváltakat tartalmaz. Általában már ezek kinyerése sem egyszerű feladat, nemhogy a magasabb rendűeké. Az alkalmazáshoz az egydimenziós eset deriváltját általánosítjuk. Írjuk az egyenletrendszert
alakba, ekkor az egydimenzióshoz hasonló alakot kapunk. Ennek deriváltja a Jacobi-mátrix:
Mivel általában a vektortereken nem értelmezett az osztás, ezért a newtoni eljárást kissé más alakban kell felírnunk:
Az első egyenletrendszer lineáris, így meghatározása egyszerű (aránylag).[4] Bizonyítható, hogy a módszer másodrendben konvergál.
Ugyan általában kevéssé érdekes feladat, azonban egyes esetekben szükségünk lehet némely függvények meghatározott helyen felvett helyettesítési értékére, vagy magának a függvénynek a közelítésére. Ez legtöbbször csak köztes lépés valamely számítás során, ilyen például az egyenletek megoldása. A számítógépes alkalmazások során is a nem polinomiális függvényeket valamilyen közelítő polinommal helyettesítjük, ezeket általában a kiválasztott programnyelv matematikai függvénykönyvtárai tartalmazzák.
A függvények adott pontbeli helyettesítési értékének kiszámítása történhet a közelítő polinomok segítségével is, de erre általában a Newton-iterációt alkalmazzák. Ehhez a függvény inverzével kifejezzük a független változót, és az így kapott egyenletet igyekszünk megoldani. Sok esetben azonban az inverz függvényt is az itt ismertetett közelítő függvények segítségével számítjuk ki.
Ha a teljes függvényt kívánjuk közelíteni, azt általában függvénysorokkal tesszük. A gyakorlatban ez leginkább a függvények számítógépes közelítését jelenti. Ebben az esetben egy olyan különleges problémával találkozunk, hogy a számítógép által megvalósítható műveletek (összeadás, szorzás, stb..) segítségével az eredeti függvényt minél pontosabban közelíthessük. Ez vagy magas fokú függvényekkel, vagy a vizsgált tartomány szűkítésével érhető el. A modern alkalmazások általában a kettőt öszvér módon használják: a teljes tartományt kis részhalmazokra bontják, és ezeken közelítenek magas fokú polinomokkal.
Első lépésként meg kell határoznunk azt a tartományt, ami felett a függvényt közelíteni fogjuk, valamint a közelítő polinom fokát. Ezután magát a polinomot úgy választjuk, hogy a minimalizáljuk a lehető legrosszabb eset hibáját. A cél tehát értékének minimalizálása, ahol a közelítés, pedig a közelítendő függvény. Szép függvények esetén létezik egy N-edfokú polinom, melynek hibagörbéje + és - közt oszcillál összesen N+2-szer, -ra korlátozva a lehető legnagyobb hibát. Egy N-ed fokú polinom képes N+1 görbén lévő pontot interpolálni. Egy ilyen polinom mindig optimális. Lehetséges olyan mesterséges függvények előállítása, melyekre nem létezik ilyen polinom, viszont ezek a gyakorlatban ritkán fordulnak elő.
Nézzük például jobb oldalt a és közelítését N=4 esetén. A piros grafikon pontosan + és - között oszcillál. Vegyük észre, hogy a szélsőértékek száma N+2, azaz 6. Két szélsőértéket az intervallum végpontjain találunk, a grafikon két szélén.
Ennek általános bizonyítása végett tegyük fel, hogy P egy N-ed fokú polinom az előzőleg tárgyalt tulajdonságokkal, azaz létrehoz egy N+2 szélsőértékkel rendelkező hibafüggvényt, melyeknek azonos a magnitúdója és váltakozó előjelűek. A piros grafikon mutatja, hogyan nézhetne ki egy ilyen függvény N=4 esetén.
Tegyük fel, hogy (melynek hibafüggvényét kékkel jelöljük) egy másik N-ed fokú polinom, mely -nek jobb közelítése, mint . Bővebben: közelebb van -hez mint minden esetén, ahol egy szélsőérték lép fel. Azaz
Ahol P-f-nek maximuma van xi-ben, ott
Ahol P-f-nek minimuma van xi-ben, ott
Amint tehát a grafikonon látszik, -nek alternálnia kell előjelben N+2 értéke esetén. Viszont egyszerűsödik -szá, ami egy N-ed fokú polinom. Ez a függvény legalább N+1-szer vált előjelet, tehát a Bolzano–Darboux-tételnek megfelelően N+1 zérushelye van, amely lehetetlen N-ed fokú polinom esetén.
A Taylor-polinom egy függvény Taylor-sorának részsorozata. Mint ilyen, a függvény egy közelítő polinomja, segítségével a függvényértékek igen jól becsülhetőek, általában számítógépes rendszerekben nyernek alkalmazást. Sok esetben, ha egy egyenlet nem kezelhető, a Taylor-polinomok segítségével igen jó becsléseket adhatunk rájuk, amik révén a polinomokra alkalmazott módszereket is felhasználhatjuk az egyenlet megoldásában.
Ha ismert valamely értékre a függvény helyettesítési értéke, akkor ennek környezetében a Taylor-polinom közelíti a függvényt. A közelítés annál jobb, minél több taggal közelítünk, és annál rosszabb, minél távolabb vagyunk az ismert ponttól. A polinom:
Mint látható, a polinom ismeretéhez elengedhetetlen a függvény -beli differenciálhányadosainak ismerete, ami esetleg megnehezítheti a polinom kiszámítását. Ennek okán rendszerint olyan értéket igyekszünk választani, hogy lehetőleg minél több differenciálhányados értéke legyen ismert, ugyanakkor a polinom se legyen túlzottan bonyolult.
A polinomfüggvények Taylor-polinomjai önmaguk, ezeket külön nem soroljuk fel.
Függvény | Megjegyzések | |||
---|---|---|---|---|
Csak az első periódusban jó. | ||||
Akárcsak a szinusz, csak az első periódusban közelít. | ||||
A Bernstein-polinomok a Csebisev-tétel következményeként állíthatóak elő. A polinomok sorozata egyenletesen konvergál a függvényhez. Használatuk egyetlen hátulütője, hogy racionális pontokban ismernünk kell a függvény helyettesítési értékét. Igazából a jelentőségük inkább elméleti, a folytonos függvényekre vonatkozó egyes tételek bizonyítása során jelentkezik hasznosságuk.
Az függvény n-edik Bernstein-polinomjának konkrét alakja:
Az optimális polinomot nagyon jól közelíthetjük, ha kifejtjük az adott függvényt Csebisev polinomok szerint és ezt követően levágjuk a kifejtést a kívánt foknál. Ez az eljárás hasonlít a sor Fourier-sorok általi függvényközelítéshez, Csebisev polinomokat használva trigonometrikus függvények helyett.
Ha kiszámoljuk egy függvény Csebisev kifejtés által keletkező tagoknak együtthatóit:
és utána levágjuk a sorozatot a -edik tag után, egy N-ed fokú f(x)-et közelítő polinomhoz jutunk.
Ez a polinom azért közel optimális, mert gyorsan konvergáló sorú függvények esetén, ha elvágjuk a sort valamelyik tagjánál, az elvágás által keletkező hiba nagyon közel van a levágást követő taghoz. Azaz a levágást követő tag dominálja az összes hátralévő tagot. Ugyanez igaz, ha a kifejtés a Csebisev polinomoknak megfelelően történik. Ha egy Csebisev kifejtést -nél vágjuk le, a hiba többszöröseként fog előállni. A Csebisev polinomoknak megvan az a tulajdonságuk, hogy +1 és -1 között oszcillálnak a [-1, 1] intervallumon. -nek N+2 szélsőértéke van, azaz közel van az optimális N-ed fokú polinomhoz.
A fenti grafikonokon a kék közelítés néha jobb, mint a piros függvény, néha pedig rosszabb, melyek szerint nem teljesen az optimális polinom. Vegyük észre, hogy a különbség enyhébb az exp függvény esetén, mely egy sokkal gyorsabban konvergáló hatványsor, mint a log függvény.
A Remez algoritmus segítségével előállíthatunk egy P(x) optimális polinomot egy adott f(x) függvény közelítésére egy adott intervallumon. Egy iteratív algoritmus, mely egy N+2 szélsőértékű függvény polinomjához konvergál. A fenti tétel alapján ez a polinom optimális.
Remez algoritmusa kihasználja azt a tényt, hogy előállítható egy N-ed fokú polinom, mely adott N+2 pont esetén alternáló szélsőértékekhez vezet.
Adott N+2 , ... pont esetén (ahol és feltehetően a közelítendő intervallum végpontjai) a következő egyenlőségeket kell megoldani:
A jobb oldali értékek előjele váltakozik, azaz
Mivel ... adottak voltak, minden hatványuk ismert és ... szintén ismert. Ez azt jelenti, hogy a fenti egyenletek csupán n+2 lineáris egyenlet n+2 változóval: , ... , and .
Az adott ... pontok segítségével megoldható ez az egyenletrendszer és előállítható a P polinom és .
Az alábbi grafikon szemlélteti ezt az eljárást, előállítva egy 4-ed fokú polinomot az [-1, 1] intervallumon való közelítésére. Az adott pontok a -1; -0,7; -0,1; +0,4; +0,9; és 1. Azok értéke zölddel van ábrázolva. értéke 4,43 x 10−4
Vegyük észre, hogy a hiba-görbe valóban nem veszi föl értéket az adott 6 pontban, beszámítva a végpontokat, melyek nem szélsőértékek. Ha a 4 belső pont szélsőérték lett volna (azaz a -nek minimuma vagy maximuma lett volna e helyeken), a polinom optimális lenne.
Remez algoritmusának második lépése az adott pontokat a lehető legközelebb vinni oda, ahol a hibafüggvénynek a valóságos lokális minimuma vagy maximuma van. Például ha a grafikont tekintjük, látjuk, hogy a -0,1 pontnak valahol a -0,28 környezetében kellett volna lennie. Az algoritmusban ezt a Newton-módszer egyszeri alkalmazása segítségével érjük el. Mivel a első és második deriváltjai ismertek, kiszámolható, hogy közelítően milyen messze kell egy adott pontot mozgatni, hogy a derivált nulla legyen.
Miután elmozgattuk a pontokat, megismételjük a lineáris egyenletrendszerre vonatkozó részt, új polinomot kapva és a Newton-módszer segítségével újonnan mozgatjuk a pontokat. Ezt a módszert ismételjük addig, mígnem az eredmény az elvárt pontossághoz konvergál. Az algoritmus nagyon gyorsan konvergál; szép függvények esetén kvadratikusan – ha az adott pontok -nél közelebb vannak a helyes értéktől, közel távol lesznek az algoritmus következő körében.
Remez algoritmusát tipikusan a Csebisev polinom szélsőértékeit adott pontokként használva kezdjük el, hisz a végső hibafüggvény hasonlítani fog ahhoz a polinomhoz.
Az egyik leggyakoribb közelítési probléma különböző határozott integrálok értékének kiszámolása. Ez különböző okok miatt lehet problémás, leggyakrabban a primitív függvény nehéz meghatározása vagy pedig annak véges alakjának hiánya miatt. Ennek megoldására többféle módszert is kidolgoztak, ezek különböző mértékben konvergálnak.
Minden esetben arról van szó, hogy a függvény görbéjét valamilyen töröttvonallal vagy egyszerűen számítható ívekkel közelítjük, és az így kapott összeggel közelítjük a függvény határozott integrálját. Természetesen ehhez az intervallumot fel kell osztani, ez szoros összefüggésben van a közelítés hibájával.
Minden esetben valamely intervallum felett kíséreljük meg megállapítani a függvény integrálját, ennek érdekében az intervallumban felveszünk darab értéket úgy, hogy azok láncot alkossanak, azaz , valamint az első és utolsó osztásköz az intervallum két végpontja legyen, azaz és .
A legtöbb függvény esetében ráadásul a helyettesítési értékeket sem tudjuk számítani, csak valamilyen módszerrel becsülni, ez további bizonytalanságot ad az integrál közelítéséhez.
Ez a becslési eljárás igazából a Riemann-integrál definíciójának alkalmazása. A függvény görbéjét egy lépcsőzetes függvénnyel közelítjük, ennek a területe könnyen számolható. Attól függően, hogy a beosztás melyik oldalán vesszük fel a "lépcsőt", beszélünk alsó és felső közelítésről. Általában a kettőt együtt alkalmazzák, hogy a valós értéket minél pontosabban lehessen megbecsülni, azonban még így is igen finom beosztás kell a jó becsléshez, különösen, ha a függvény erősen változó (például ilyen az exponenciális függvény).[5]
A közelítés konvergenciáját a Riemann-integrálra vonatkozó tételek biztosítják, ezek egyben tartalmazzák azon tulajdonságokat is, amelyeknek teljesülniük kell a függvényekre. Általában azonban elmondhatjuk, hogy a gyakorlatban előforduló függvényekre, habár igen erős feltételekről van szó, ezek teljes egészében teljesülnek.
Az intervallum felosztásánál az osztásközre magasságú téglalapot emelünk. Ennek területe . Ha az összes osztásközre összegzünk, akkor a függvény integrálját alulról becsüljük:
Az intervallum felosztásánál az osztásközre magasságú téglalapot emelünk. Ekkor a téglalap területe , amiket összegezve kapjuk a felső integrálközelítő összeget:
Hasonló a téglalap-közelítéshez, azonban a függvény ívét nem lépcsős függvénnyel, hanem töröttvonallal közelítjük. Ekkor a beosztások feletti közelítő négyszög egy trapéz lesz, melynek magassága , az alapjai pedig a felvett függvényértékek. A trapéz területe innen már számítható:
amit már összegezhetünk, így a határozott integrál közelítésére a következő összeget nyerjük:
A formula lényegesen jobban közelíti a területet, mint a téglalap-eljárás, és lényegesen nem számításigényesebb, ezért szívesebben használják.
A Simpson-formula esetén nem töröttvonallal, hanem parabolákkal közelítjük a függvény ívét. Ezek, mint egyszerű görbék, jobban közelítik ugyanis a függvények ívét. A másodfokú függvény meghatározásához azonban három pont kell, ebből kettő triviálisan adott: az osztásköz alsó és felső végpontja. A harmadik pontnak a legcélszerűbb választás az osztásköz felezőpontja. Így a Simpson-formula a következő alakot ölti:
A függvény integrálját tehát a következő összeggel közelíthetjük:
Még jobb közelítés az ún. háromnyolcados formula,[6] amihez azonban már négy pontot kell felvenni, ebből kettő a két végpont, a másik kettő pedig a két harmadolópont:
Közelítsük a integrált!
Beosztás | Alsó téglalap | Felső téglalap | Trapéz | Simpson |
---|---|---|---|---|
5 | 32,5760332146733 | 49,3760332146733 | 40,9760332146733 | 40,395878605680075 |
10 | 36,34091725792838 | 44,74091725792839 | 40,540917257928385 | 40,39548733687002 |
100 | 39,97691674347999 | 40,81691674347999 | 40,39691674348 | 40,3954611475135 |
1000 | 40,35347570098068 | 40,437475700980634 | 40,39547570098072 | 40,395461144891236 |
5000 | 40,38706172713465 | 40,40386172713443 | 40,39546172713457 | 40,39546114489098 |
A pontos érték , ezt szemmel láthatólag a Simpson-módszer a legerősebben, a téglalap módszer a legkevésbé közelíti meg.
A differenciálegyenletek megoldása során nem mindig van lehetőség a megoldás direkt megtalálására, ebben az esetben az itt ismertetett módszerek egy hatványsorozatok formájában közelítik a tényleges megoldást. Ezeknek a fő előnye, hogy nem csak akkor adnak közelítő megoldást, ha nincs ismert módszer a pontos megoldás meghatározására, hanem akkor is, ha a megoldás nem írható fel véges formában (zárt alakban).
Mindegyik módszer esetében egy konkrét függvényt, a differenciálegyenlet egy partikuláris megoldását kapjuk meg, mivel az alkalmazásuknak előfeltétele valamilyen peremfeltétel megadása. A megoldhatósággal ritkán szükséges foglalkozni, a gyakorlati problémák során előálló differenciálegyenletek az erre vonatkozó feltételeket ritkán nem teljesítik.
Mindegyik itt ismertetett módszer feltételezi, hogy a differenciálegyenlet felírható
formában. Ezekben az esetekben a megoldást a peremfeltétel és az függvény segítségével közelítjük.
Mivel a differenciálegyenletek az ismeretlen függvény deriváltjait tartalmazzák, az első kézenfekvő ötlet, hogy a Taylor-sorokat használjuk közelítésre. Annál is inkább, mert a peremérték-probléma esetén legalább egy pont adott. Ebből pedig az első deriváltat is meg tudjuk határozni ugyanitt a differenciálegyenletből:
Ha a differenciálegyenletet deriváljuk, akkor a második deriváltat is megkapjuk:
amiben szerepel az ismeretlen függvény első deriváltja, aminek értékét már ismerjük. Ezekből a Taylor-polinom együtthatóit kapjuk meg sorban egymás után, ha a meglévő értékeket behelyettesítjük, azok ugyanis pont a deriváltak adott pontban felvett értékei.
A módszer előnye nyilvánvaló, mindössze egyetlen ismert függvényt kell tudnunk deriválni, és ennek a helyettesítési értékeit meghatározni, így kapunk egy közelítő hatványsort. A Taylor-sorokról pedig bizonyított, hogy előállítják a megfelelő függvényt, tehát az így kapott polinom egy jó közelítő függvény. Egyetlen hátulütője a módszernek, hogy ha a jobb oldalon olyan függvény áll, aminek a helyettesítési értéke (esetleg a deriváltjaié) csak közelítőleg számolható ki, akkor esetleg a kapott sor esetleg nem konvergál elégséges mértékben. Az ilyen és ehhez hasonló problémák vizsgálata is közrejátszott a dinamikus rendszerek és a káoszelmélet létrejöttében.
Ha a differenciálegyenletet integráljuk, akkor a jobb oldalnak egy primitív függvényét kapjuk. Erre vonatkozólag ismert a következő összefüggés:
Ezt figyelembe véve egy közelítő megoldást kapunk úgy, hogy a peremfeltételt mint integrációs konstanst vesszük figyelembe, és így integrálunk:
Ezt természetesen figyelembe vehetjük újra, mint a kezdetinél jobb közelítést, így iterációs módon közelíthetjük meg a differenciálegyenlet megoldását. Ha az függvény polinomiális, akkor a megoldást hatványsor formájában kapjuk meg. A Picard-iterációs közelítés alakja tehát:
A Picard-iteráció esetén a fő problémát az integrál kiszámítása jelenti, érthető módon ezt igyekszünk elkerülni, illetve erre is közelítő módszereket alkalmazni. Ezt elkerülendő Carl Runge dolgozott ki közelítést, majd ezt Martin Kutta javította meg. Használatához rögzítenünk kell egy lépésközt, ami egyben a közelítés hibahatárát is jelenti.[7] A kezdetiérték-problémát felírva a módszer a következő formát ölti:
Egyes esetekben egészen érdekes és meglepő módon is közelíthetjük a várt értékeket.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.