Gradiendimeetodite ülevaade matemaatilise optimeerimise ülesannetes. Gradientmeetod konstandiga m

Nagu me juba märkisime, on optimeerimise probleem tegurite selliste väärtuste leidmise probleem X 1 = X 1* , X 2 = X 2* , …, Xk = Xk * , mille vastusefunktsioon ( juures) saavutab äärmusliku väärtuse juures= ext (optimaalne).

teatud erinevaid meetodeid optimeerimisprobleemi lahendus. Üks laialdasemalt kasutatavaid on gradiendi meetod, mida nimetatakse ka Box-Wilsoni meetodiks ja järsu tõusu meetodiks.

Vaatleme gradiendi meetodi olemust, kasutades kahefaktorilise vastuse funktsiooni näidet y=f(x 1 , X 2 ). Joonisel fig. 4.3 teguriruumis on näidatud reageerimisfunktsiooni võrdsete väärtuste kõverad (tasemekõverad). Punkt koordinaatidega X 1 *, X 2 * vastab vastusefunktsiooni äärmisele väärtusele juures ext.

Kui valime lähtepunktiks teguriruumi mis tahes punkti ( X 1 0 , X 2 0), siis lühim tee sellest punktist vastusefunktsiooni tippu on tee piki kõverat, mille puutuja igas punktis ühtib nivookõvera normaalsega, s.o. see on tee vastusefunktsiooni gradiendi suunas.

Pideva üheväärtusliku funktsiooni gradient y=f(x 1 , X 2) on vektor, mis on määratud gradiendi suuna järgi koos koordinaatidega:

Kus mina,j on ühikvektorid koordinaattelgede suunas X 1 ja X 2 . Osatuletised ja iseloomustavad vektori suunda.

Kuna me ei tea sõltuvuse tüüpi y=f(x 1 , X 2), me ei saa leida osatuletisi ega määrata gradiendi tegelikku suunda.

Gradientmeetodi kohaselt valitakse faktorruumi mõnes osas lähtepunkt (algtasemed). X 1 0 , X 20 . Nende algtasemete suhtes koostatakse katse sümmeetriline kahetasandiline plaan. Veelgi enam, variatsioonivahemik on valitud nii väikeseks, et lineaarne mudel on piisav. On teada, et mis tahes kõverat piisavalt väikesel alal saab ligikaudselt hinnata lineaarse mudeli abil.

Peale sümmeetrilise kahetasandilise plaani konstrueerimist lahendatakse interpolatsiooniülesanne, s.o. ehitatakse lineaarne mudel:

ja kontrollige selle adekvaatsust.

Kui lineaarne mudel osutus valitud variatsiooniintervalli jaoks sobivaks, saab määrata gradiendi suuna:

Seega määratakse reageerimisfunktsiooni gradiendi suund regressioonikoefitsientide väärtustega. See tähendab, et liigume gradiendi suunas, kui koordinaatidega punktist ( ) minge koordinaatidega punkti:

Kus m- positiivne arv, mis näitab sammu suurust gradiendi suunas.

Kuna X 1 0 = 0 ja X 2 0 = 0, siis .

Määrates gradiendi suuna () ja valides sammu suuruse m, viime läbi kogemusi algtasemel X 1 0 , X 2 0 .


Seejärel astume sammu gradiendi suunas, st. viige katse läbi koordinaatidega punktis. Kui vastusefunktsiooni väärtus on võrreldes selle väärtusega algtasemel tõusnud, astume veel ühe sammu gradiendi suunas, s.t. viime läbi katse koordinaatidega punktis:

Jätkame liikumist mööda gradienti, kuni reageerimisfunktsioon hakkab vähenema. Joonisel fig. 4.3 liikumine piki gradienti vastab sirgjoonele, mis väljub punktist ( X 1 0 , X 20). Vastusfunktsiooni mittelineaarsuse tõttu kaldub see järk-järgult kõrvale gradiendi tegelikust suunast, mis on näidatud katkendjoonega.

Niipea kui vastusefunktsiooni väärtus on järgmises katses vähenenud, peatatakse liikumine mööda gradienti, võetakse uueks algtasemeks katse vastusefunktsiooni maksimumväärtusega, luuakse uus sümmeetriline kahetasandiline plaan. tehtud ja interpolatsiooniülesanne on taas lahendatud.

Uue lineaarse mudeli ehitamine , teostada regressioonianalüüs. Kui samal ajal näitab tegurite olulisuse test, et vähemalt üks koefitsient

ficient , mis tähendab, et vastusfunktsiooni ekstreemumi piirkond (optimumi piirkond) ei ole veel saavutatud. Määratakse kindlaks gradiendi uus suund ja algab liikumine optimaalse piirkonna poole.

Gradiendi suuna täpsustamine ja liikumine mööda gradienti jätkub seni, kuni järgmise interpolatsiooniülesande lahendamise käigus selgub tegurite olulisuse kontrollimisest, et kõik tegurid on tähtsusetud, s.t. Kõik . See tähendab, et optimaalne piirkond on saavutatud. Selle otsuse kohta optimeerimise probleem peatuge ja võtke optimaalseks kogemust vastusefunktsiooni maksimaalse väärtusega.

Üldiselt saab optimeerimisülesande lahendamiseks gradientmeetodil vajalike toimingute jada esitada vooskeemi kujul (joonis 4.4).

1) tegurite algtasemed ( Xj 0) tuleks valida optimaalsele punktile võimalikult lähedale, kui selle asukoha kohta on a priori teavet;

2) variatsiooniintervallid (Δ Xj) tuleks valida nii, et lineaarne mudel oleks tõenäoliselt piisav. Alumine piir Δ Xj sel juhul on variatsiooniintervalli minimaalne väärtus, mille juures reageerimisfunktsioon jääb oluliseks;

3) sammu väärtus ( T) piki gradienti liikudes valitakse need nii, et suurim korrutistest ei ületaks normaliseeritud kujul tegurite ülemise ja alumise taseme erinevust

.

Seega,. Väiksema väärtusega T erinevus reageerimisfunktsiooni vahel algtasemel ja koordinaatidega punktis võib osutuda ebaoluliseks. Kell suurem tähendus samm, on oht reageerimisfunktsiooni optimaalsest nihkumisest.

Annan natuke oma kogemusi :)

Koordinaatide laskumise meetod

Selle meetodi idee seisneb selles, et otsing toimub uue iteratsiooni ajal koordinaatide laskumise suunas. Laskumine toimub järk-järgult mööda iga koordinaati. Koordinaatide arv sõltub otseselt muutujate arvust.
Selle meetodi toimimise demonstreerimiseks tuleb esmalt võtta funktsioon z = f(x1, x2,…, xn) ja valida suvaline punkt M0(x10, x20,…, xn0) n ruumis, mis sõltub n-i punktide arvust. funktsiooni omadused. Järgmine samm on funktsiooni kõigi punktide fikseerimine konstandiks, välja arvatud kõige esimene. Seda tehakse selleks, et taandada mitmemõõtmelise optimeerimise otsimine ühemõõtmelise optimeerimise probleemi teatud segmendi otsingule, see tähendab argumendi x1 otsimisele.
Selle muutuja väärtuse leidmiseks on vaja mööda seda koordinaati laskuda uude punkti M1(x11, x21,…, xn1). Lisaks eristatakse funktsioon ja seejärel saame järgmise avaldise abil leida uue järgmise punkti väärtuse:

Pärast muutuja väärtuse leidmist tuleb korrata iteratsiooni fikseerides kõik argumendid peale x2 ja alustada mööda uut koordinaati laskumist järgmisesse uude punkti M2(x11,x21,x30…,xn0). Nüüd tekib uue punkti väärtus avaldise järgi:

Ja jälle korratakse iteratsiooni fikseerimisega, kuni kõik argumendid xi-st xn-ni on lõppenud. Viimasel iteratsioonil läbime järjestikku kõik võimalikud koordinaadid, milles oleme juba leidnud kohalikud miinimumid, nii et viimase koordinaadi sihtfunktsioon saavutab globaalse miinimumi. Selle meetodi üks eeliseid on see, et igal ajal on võimalik laskumine katkestada ja viimane leitud punkt on miinimumpunkt. See on kasulik, kui meetod läheb lõpmatusse tsüklisse ja viimast leitud koordinaati saab lugeda selle otsingu tulemuseks. Piirkonna globaalse miinimumi otsingu sihtseade ei pruugi aga jõuda seetõttu, et katkestasime miinimumi otsingu (vt joonis 1).


Joonis 1 – koordinaatide laskumise tühistamine

Selle meetodi uurimine näitas, et iga leitud arvutatud punkt ruumis on globaalne miinimumpunkt antud funktsioon, ja funktsioon z = f(x1, x2,…, xn) on kumer ja diferentseeruv.
Sellest võime järeldada, et funktsioon z = f(x1, x2,…, xn) on kumer ja ruumis diferentseeruv ning iga leitud piirpunkt jadas M0(x10, x20,…, xn0) on globaalne miinimum punkt (vt joon. Joonis 2) selle funktsiooni koordinaatide laskumise meetodil.


Joonis 2 - Kohalikud miinimumpunktid koordinaatteljel

Võib järeldada, et see algoritm tuleb hästi toime lihtsaid ülesandeid mitmemõõtmeline optimeerimine, lahendades järjestikku n arvu ühemõõtmelisi optimeerimisülesandeid, näiteks kasutades kuldlõike meetodit.

Koordinaatide laskumise meetodi edenemine toimub plokkskeemil kirjeldatud algoritmi järgi (vt joonis 3). Selle meetodi täitmise iteratsioonid:
Esialgu tuleb sisestada mitu parameetrit: Epsiloni täpsus, mis peab olema rangelt positiivne, lähtepunkt x1, millest alustame oma algoritmi täitmist ja määrame Lambda j;
Järgmise sammuna tuleb võtta esimene lähtepunkt x1, mille järel lahendatakse tavaline ühemõõtmeline ühe muutujaga võrrand ja miinimumi leidmise valem on, kus k = 1, j=1:

Nüüd, pärast ekstreemumipunkti arvutamist, peate kontrollima funktsiooni argumentide arvu ja kui j on väiksem kui n, siis peate korrama eelmist sammu ja defineerima uuesti argumendi j = j + 1. Kõigil muudel juhtudel, minge järgmise sammu juurde.
Nüüd on vaja muutuja x uuesti defineerida vastavalt valemile x (k + 1) = y (n + 1) ja proovida teostada funktsiooni konvergentsi etteantud täpsusega avaldise järgi:

Ekstreemumipunkti leidmine sõltub sellest avaldisest. Kui see avaldis on tõene, siis taandub äärmise punkti arvutamine väärtusele x*= xk + 1. Kuid sageli on sõltuvalt täpsusest vaja teha täiendavaid iteratsioone, nii et argumentide väärtused defineeritakse ümber y(1 ) = x(k + 1) ja indeksite väärtused j =1, k = k + 1.


Joonis 3 – koordinaatide laskumise meetodi plokkskeem

Selle tulemusena on meil suurepärane ja multifunktsionaalne mitme muutujaga optimeerimisalgoritm, mis on võimeline poolitama raske ülesanne, mitmeks järjestikuseks iteratiivseks ühemõõtmeliseks. Jah, seda meetodit on üsna lihtne rakendada ja sellel on lihtne ruumipunktide määratlemine, kuna see meetod tagab lähenemise kohalikule miinimumpunktile. Kuid isegi selliste oluliste eeliste korral võib meetod minna lõpututesse silmustesse, kuna see võib kukkuda omamoodi kuristikku.
On kaevufunktsioone, milles esineb süvendeid. Algoritm, mis on sattunud ühte nendest õõnsustest, ei pääse enam välja ja ta leiab juba seal miinimumpunkti. Samuti suur number sama ühemõõtmelise optimeerimismeetodi järjestikused kasutused võivad nõrkadele arvutitele tugevalt mõjuda. Selle funktsiooni konvergents ei ole mitte ainult väga aeglane, kuna on vaja arvutada kõik muutujad ja sageli pikendab kõrge antud täpsus probleemi lahendamise aega mitu korda, kuid selle algoritmi peamiseks puuduseks on selle piiratud rakendatavus.
Erinevate optimeerimisprobleemide lahendamise algoritmide uurimisel tuleb märkida, et nende algoritmide kvaliteet mängib tohutut rolli. Samuti ärge unustage selliseid olulisi omadusi nagu täitmise aeg ja stabiilsus, võime leida parimaid väärtusi, mis minimeerivad või maksimeerivad eesmärgifunktsiooni, ja praktiliste probleemide lahendamise lihtsus. Koordinaatide laskumise meetodit on lihtne kasutada, kuid mitme muutujaga optimeerimise ülesannete puhul on enamasti vaja teha keerukaid arvutusi, mitte jagada kogu probleem alamülesanneteks.

Nelder-Meadi meetod

Märkimist väärib selle algoritmi populaarsus mitmemõõtmeliste optimeerimismeetodite uurijate seas. Nelder-Meadi meetod on üks väheseid meetodeid, mis põhineb äärmuspunkti ümber deformeeritava simpleksi järjestikusel teisendamisel ja ei kasuta globaalse miinimumi suunas liikumise algoritmi.
See simpleks on korrapärane ja seda kujutatakse polühedrina, mille simpleksi tipud on N-mõõtmelises ruumis võrdsel kaugusel. Erinevates ruumides vastendub simpleks R2 võrdkülgse kolmnurgaga ja R3 korrapärase tetraeedriga.
Nagu eespool mainitud, on algoritm Spendley, Hoeksti ja Himsworthi lihtmeetodi edasiarendus, kuid erinevalt viimasest võimaldab kasutada valesid lihtsusi. Kõige sagedamini on simpleks N + 1 tipuga kumer hulktahukas, kus N on mudeli parameetrite arv n-mõõtmelises ruumis.
Selle meetodi kasutamise alustamiseks peate määrama kõigi saadaolevate koordinaatide komplektide baastipu, kasutades avaldist:

Selle meetodi kõige tähelepanuväärsem on see, et simpleksil on võimalus teatud funktsioone iseseisvalt täita:
Peegeldus läbi raskuskeskme, peegeldus kokkusurumise või venitamisega;
venitamine;
Kokkusurumine.
Nende omaduste hulgas eelistatakse peegeldust, kuna see parameeter on kõige valikulisem - funktsionaalne. Igast valitud tipust on võimalik teha peegeldus simpleksi raskuskeskme suhtes avaldise abil:.

Kus xc on raskuskese (vt joonis 1).


Joonis 1 – Peegeldus läbi raskuskeskme

Järgmise sammuna tuleb arvutada sihtfunktsiooni argumendid peegelduva simpleksi kõigis tippudes. Pärast seda saame täielik teave selle kohta, kuidas simpleks ruumis käitub, ja seega ka teavet funktsiooni käitumise kohta.
Lihtsusi kasutavate meetodite abil eesmärgifunktsiooni miinimum- või maksimumpunkti otsimiseks tuleb järgida järgmine jada:
Igal etapil ehitatakse simpleks, mille igas punktis on vaja arvutada kõik selle tipud ja seejärel sorteerida tulemused kasvavas järjekorras;
Järgmine samm on peegeldus. Tuleb proovida saada uue simpleksi väärtused ja järelemõtlemise teel saame vabaneda soovimatutest väärtustest, mis püüavad nihutada simpleksit mitte globaalse miinimumi poole;
Uue simpleksi väärtuste saamiseks võtame saadud sorteeritud tulemustest kaks halvima väärtusega tippu. On selliseid juhtumeid, mis võtavad kohe peale sobivad väärtused ebaõnnestub, siis peate naasma esimese sammu juurde ja tihendama simpleksi punktini, kus on kõige rohkem väikseim väärtus;
Ekstreemumipunkti otsimise lõpp on raskuskese, eeldusel, et funktsioonide erinevuse väärtusel on simpleksi punktides väikseimad väärtused.

Nelder-Meadi algoritm kasutab ka neid simpleksfunktsioone vastavalt järgmistele valemitele:

Peegeldusfunktsioon läbi simpleksi raskuskeskme arvutatakse järgmise avaldise abil:

See peegeldus toimub rangelt äärmuspunkti suunas ja ainult läbi raskuskeskme (vt joonis 2).


Joonis 2 – Simpleksi peegeldus toimub läbi raskuskeskme

Simpleksi sees olev tihendusfunktsioon arvutatakse järgmise avaldise abil:

Kompressiooni läbiviimiseks on vaja määrata väikseima väärtusega punkt (vt joonis 3).


Joonis 3 – simpleks on tihendatud väikseima argumendini.

Simplekskontraktsiooni peegeldusfunktsioon arvutatakse järgmise avaldise abil:

Kokkusurumisega peegelduse läbiviimiseks (vt joonis 4) on vaja meeles pidada kahe eraldi funktsiooni tööd - see on peegeldus läbi raskuskeskme ja simpleksi kokkusurumine väikseima väärtuseni.


Joonis 4 – Peegeldus kokkusurumisega

Lihtne venituspeegeldusfunktsioon (vt joonis 5) toimub kahe funktsiooni abil – peegeldus läbi raskuskeskme ja venitus läbi suurima väärtuse.


Joonis 5 – Peegeldus venitamisega.

Nelder-Meadi meetodi toimimise demonstreerimiseks on vaja viidata algoritmi plokkskeemile (vt joonis 6).
Esiteks, nagu eelmistes näidetes, peate määrama moonutuse parameetri ε, mis peab olema nullist rangelt suurem, ning määrama ka vajalikud parameetrid α, β ja a arvutamiseks. Seda läheb vaja nii funktsiooni f(x0) arvutamiseks kui ka simpleksi enda konstrueerimiseks.

Joonis 6 – Nelder – Meadi meetodi esimene osa.

Pärast simpleksi konstrueerimist on vaja arvutada kõik sihtfunktsiooni väärtused. Nagu ülalpool kirjeldatud ekstreemumi otsimise kohta simpleksi abil, on vaja arvutada simpleksfunktsioon f(x) kõigis selle punktides. Järgmisena sorteerime baaspunkti asukoha:

Nüüd, kui baaspunkt on arvutatud ja kõik muud loendis sorteeritud, kontrollime eelnevalt määratud täpsuse kättesaadavuse tingimust:

Niipea kui see tingimus saab tõeks, loetakse simpleksi punkti x(0) soovitud ekstreemumipunktiks. Vastasel juhul läheme järgmise sammu juurde, kus peame valemi abil määrama raskuskeskme uue väärtuse:

Kui see tingimus on täidetud, on punkt x(0) miinimumpunkt, vastasel juhul peate minema järgmise sammu juurde, kus peate otsima funktsiooni väikseima argumenti:

Funktsioonist on vaja saada argumendi väikseim väärtus, et liikuda edasi algoritmi järgmise sammu juurde. Mõnikord on probleem, et mitmel argumendil on korraga sama väärtus, mis on arvutatud funktsioonist. Selle probleemi lahenduseks võib olla argumendi väärtuse ümberdefineerimine kuni kümne tuhandikuni.
Pärast minimaalse argumendi ümberarvutamist on vaja uued saadud väärtused uuesti salvestada n argumendi positsioonile.


Joonis 7 – Nelder – Meadi meetodi teine ​​osa.

Eelmisest funktsioonist arvutatud väärtus tuleb asendada tingimusega fmin< f(xN). При истинном выполнении данного условия, точка x(N) будет являться минимальной из группы тех, которые хранятся в отсортированном списке и нужно вернуться к шагу, где мы рассчитывали центр тяжести, в противном случае, производим сжатие симплекса в 2 раза и возвращаемся к самому началу с новым набором точек.
Selle algoritmi uuringud näitavad, et ebaregulaarsete lihtsustega meetodeid (vt joonis 8) on veel üsna vähe uuritud, kuid see ei takista neil oma ülesannetega ideaalselt hakkama saada.
Sügavamad testid näitavad, et katseliselt on võimalik valida ülesandele kõige sobivamad venitus-, kokkusurumise- ja peegeldusfunktsioonide parameetrid, kuid kasutada saab nende funktsioonide üldtunnustatud parameetreid α = 1/2, β = 2, γ = 2 või α = 1/4, β = 5/2, γ = 2. Seetõttu peate enne selle probleemi lahendamise meetodist loobumist mõistma, et iga uue tingimusteta ekstreemumi otsingul peate hoolikalt jälgima simpleksi käitumine selle töö ajal ja märkige meetodi mittestandardsed lahendused.


Joonis 8 – miinimumi leidmise protsess.

Statistika on näidanud, et üks levinumaid probleeme selle algoritmi töös on deformeeritava simpleksi degeneratsioon. See juhtub siis, kui iga kord, kui mitu simpleksi tippu langevad ühte ruumi, mille mõõde ei rahulda ülesannet.
Seega viskab tööaegne mõõde ja etteantud dimensioon mitu simpleksi tippu üheks sirgeks, käivitades meetodi lõpmatusse ahelasse. Selles modifikatsioonis olev algoritm ei ole veel varustatud võimalusega sellest olukorrast välja tulla ja üht tippu kõrvale nihutada, seega tuleb luua uus simpleks uute parameetritega, et seda tulevikus ei juhtuks.
Selle meetodi teine ​​omadus on see, et see ei tööta õigesti kuue või enama simpleksi tipuga. Kuid seda meetodit muutes saate sellest probleemist lahti ja isegi mitte kaotada täitmiskiirust, kuid eraldatud mälu väärtus suureneb märgatavalt. See meetod võib pidada tsükliliseks, kuna see põhineb täielikult tsüklitel, mistõttu seda märgatakse vale töö juures suurel hulgal tipud.
Nelder-Meadi algoritmi võib õigustatult pidada üheks neist parimaid tavasid ekstreemumipunkti leidmine simpleksi abil ja on selle kasutamiseks suurepärane mitmesugused inseneri- ja majanduslikud ülesanded. Isegi vaatamata tsüklilisusele kasutab see sama koordinaatide laskumismeetodiga võrreldes väga vähe mälu ning ekstreemumi enda leidmiseks on vaja arvutada ainult raskuskeskme ja funktsiooni väärtused. Väike, kuid piisav arv keerulisi parameetreid muudab selle meetodi laialdaseks kasutuseks keerulistes matemaatilistes ja tegelikes tootmisprobleemides.
Simpleksalgoritmid on serv, mille horisonte me niipea ei ava, kuid juba praegu lihtsustavad nad oma visuaalse komponendiga oluliselt meie elu.

P.S. Tekst on täielikult minu oma. Loodan, et keegi see informatsioon tuleb kasuks.

Gauss-Seideli meetod

Meetod seisneb selles, et iga teguri jaoks leitakse vaheldumisi sihtfunktsiooni osalised ekstreemumid. Samal ajal stabiliseeritakse igas etapis (k-1) tegurid ja ainult üks i-s tegur muutub

Arvutusprotseduur: faktorruumi lokaalses piirkonnas valitakse eelkatsete põhjal punkt, mis vastab parim tulemus protsessi ja sealt hakkavad nad liikuma optimaalse poole. Iga teguri liikumise sammu määrab uurija. Esiteks fikseeritakse kõik tegurid samale tasemele ja üht tegurit muudetakse kuni reaktsioonifunktsiooni (Y) suurenemiseni (vähenemiseni), seejärel muudetakse teist tegurit, samal ajal kui teised stabiliseeruvad jne kuni soovitud tulemuse saavutamiseni. (Y) . Peaasi on valida iga teguri jaoks õige samm.

See meetod on kõige lihtsam, illustreeriv, kuid liikumine optimaalseni on pikk ja meetod viib harva optimaalse punktini. Praegu kasutatakse seda mõnikord masinakatsetes.

Need meetodid tagavad liikumise optimaalselt mööda sirgjoont, mis on risti võrdse reaktsiooni joontega, st vastusefunktsiooni gradiendi suunas.

Gradientmeetoditel on mitu varianti, mis erinevad variatsiooniastmete ja tööetappide valimise reeglite poolest äärmusse liikumise igas etapis.

Kõigi meetodite olemus on järgmine: algselt valitakse eelkatsete põhjal baaspunkt. Seejärel korraldatakse igas etapis järgmise baaspunkti ümber proovikatsed, mille tulemused hindavad gradiendi uut suunda, mille järel tehakse selles suunas üks töösamm.

Gradiendi meetod (tavaline) viiakse läbi vastavalt järgmisele skeemile:

a) vali baaspunkt;

b) vali iga teguri jaoks liikumissammud;

c) määrata katsepunktide koordinaadid;

d) viia läbi katseid katsepunktides. Selle tulemusena saadakse igas punktis optimeerimisparameetri (Y) väärtused.

e) katsete tulemuste põhjal arvutatakse iga i-nda teguri kohta gradientvektori komponentide hinnangud punktis M:


kus H i on liikumise samm piki X i .

X i – eelmise tööpunkti koordinaadid.

g) selle tööpunkti koordinaadid võetakse uue baaspunktina, mille ümber tehakse katsepunktides katseid. Gradient arvutatakse ja nii edasi, kuni saavutatakse soovitud optimeerimisparameeter (Y). Liikumissuuna korrigeerimine tehakse pärast iga sammu.

Meetodi eelised: lihtsus, suurem liikumiskiirus optimaalseks.

Puudused: suur tundlikkus sekkuda. Kui kõver on keerulise kujuga, ei pruugi meetod optimaalset saavutada. Kui reaktsioonikõver on tasane, on meetod ebaefektiivne. Meetod ei anna teavet tegurite koostoime kohta.

a) Järsu tõusu meetod (Box-Wilson).

b) Otsuste tegemine pärast järsku tõusu.

c) Simpleksoptimeerimise meetod.

d) Meetodite eelised ja puudused.

5.7.3 Järsu tõusu meetod (Box-Wilson)

See meetod on süntees gradientmeetodite, Gauss-Seideli meetodi ning PFE ja DFE meetodite parimatest omadustest kui vahendist protsessi matemaatilise mudeli saamiseks. Optimeerimisülesande lahendamine selle meetodiga viiakse läbi nii, et samm-liikumine toimub optimeerimisparameetri kiireima suurenemise (vähenemise) suunas. Liikumissuunda korrigeeritakse (erinevalt gradientmeetoditest) mitte pärast iga sammu, vaid sihtfunktsiooni konkreetse ekstreemumi saavutamisel. Lisaks luuakse osalise ekstreemumi punktides uus faktoriaalne eksperiment, uus matemaatiline mudel ja jälle korratakse järsku tõusu kuni globaalse optimumi saavutamiseni. Liikumine mööda gradienti algab nullpunktist (plaani keskpunktist).

Järsu tõusu meetod hõlmab liikumist mööda gradienti optimaalse poole.

Kus i,j,k on ühikvektorid vastavate koordinaattelgede suunas.

Arvutusprotseduur.

Algandmed on protsessi matemaatiline mudel, mis saadakse mis tahes meetodil (PFE, DFE jne).

Arvutused tehakse järgmises järjekorras:

a) parem on tõlkida regressioonivõrrand loomulikule kujule, kasutades muutujate kodeerimisvalemeid:

Kus x i -kodeeritud muutuja x i väärtus;

X i - muutuja x i loomulik väärtus;

X i C - teguri kesktasand in mitterahaliselt;

l i - teguri x i variatsiooni intervall loomulikul kujul.

b) arvutage iga teguri liikumise sammud optimaalseks.

Selleks arvutage loomulikul kujul regressioonivõrrandi kordajate korrutised vastavate variatsioonivahemike kaupa

B i *.l I ,

Seejärel valitakse saadud korrutistest maksimaalne moodul ja baasteguriks (B a l a) võetakse sellele korrutisele vastav tegur. Põhiteguri jaoks peaksite määrama liikumise sammu, mis on soovitatav määrata põhiteguri variatsiooni intervallist väiksemaks või sellega võrdseks


Liikumise sammu märk l a ’ peab ühtima baastegurile (B a) vastava regressioonivõrrandi koefitsiendi märgiga. Teiste tegurite astmete väärtus arvutatakse proportsionaalselt baasväärtusega järgmise valemi järgi:

Liikumisastmete märgid peavad ühtima ka regressioonivõrrandi vastavate kordajate märkidega.

c) reageerimisfunktsioon arvutatakse plaani keskel, st tegurite väärtustega, mis on võrdsed tegurite kesktasemega, kuna liikumine optimumi poole algab plaani keskpunktist.

Järgmisena arvutatakse optimeerimisparameeter, suurendades tegurite väärtusi vastava liikumise sammu väärtuse võrra, kui soovite saada Y max . Vastasel juhul, kui on vaja saada Y min, vähendatakse tegurite väärtusi liikumise sammu väärtuse võrra.

Protseduuri korratakse, suurendades järjest sammude arvu, kuni saavutatakse optimeerimisparameetri (Y) soovitud väärtus. Iga tegur pärast g sammud on olulised:

Kui Y® max X i \u003d X i c + gl i ` '

kui Y® min . X i \u003d X i c -gl i`.(5.36)

gradiendi meetodid

gradiendi meetodid tingimusteta optimeerimine kasutavad ainult sihtfunktsiooni esimesi tuletisi ja on igas etapis lineaarse lähendamise meetodid, st. sihtfunktsioon igal etapil asendatakse selle graafiku puutuja hüpertasandiga praeguses punktis.

Peal k-s etapp gradientmeetodite puhul kirjeldatakse üleminekut punktist Xk punkti Xk+1 seosega:

kus k on sammu suurus, k on vektor suunas Xk+1-Xk.

Kõige järsemad laskumismeetodid

Esimest korda kaalus ja rakendas sellist meetodit O. Cauchy 18. sajandil. Selle idee on lihtne: sihtfunktsiooni f(X) gradient mis tahes punktis on vektor funktsiooni väärtuse suurima kasvu suunas. Seetõttu on antigradient suunatud funktsiooni suurimale langusele ja see on kõige järsema laskumise suund. Antigradient (ja gradient) on ortogonaalne tasapinnaga f(X) punktis X. Kui punktis (1.2) tutvustame suunda

siis on see järseima laskumise suund punktis Xk.

Saame üleminekuvalemi Xk-st Xk+1-le:

Anti-gradient annab ainult laskumise suuna, mitte sammu suurust. IN üldine juhtumüks samm ei anna miinimumpunkti, seega tuleb laskumisprotseduuri rakendada mitu korda. Minimaalses punktis on kõik gradiendi komponendid võrdsed nulliga.

Kõik gradiendi meetodid kasutada väljatoodud ideed ja erineda üksteisest tehniliste detailide poolest: tuletiste arvutamine analüütilise valemi või lõplike erinevuste lähendusega; sammu suurus võib olla konstantne, muutuda vastavalt teatud reeglitele või olla valitud pärast ühemõõtmeliste optimeerimismeetodite rakendamist antigradiendi suunas jne. ja nii edasi.

Me ei peatu üksikasjalikult, sest. järseima laskumise meetodit ei soovitata üldiselt tõsise optimeerimisprotseduurina.

Selle meetodi üks puudusi on see, et see läheneb mis tahes statsionaarsele punktile, sealhulgas sadulapunktile, mis ei saa olla lahendus.

Kuid kõige olulisem on üldiselt kõige järsema laskumise väga aeglane lähenemine. Asi on selles, et laskumine on kohalikus mõistes "kõige kiirem". Kui otsinguhüperruum on tugevalt pikenenud ("kuristiku"), siis antigradient on suunatud peaaegu ortogonaalselt "kuristiku" põhja, s.t. parim suund miinimumini jõudmiseks. Selles mõttes on ingliskeelse termini "järsem laskumine" otsetõlge, s.o. laskumine mööda kõige järsemat nõlva on asjade seisuga paremini kooskõlas kui venekeelses erialakirjanduses omaks võetud mõiste "kiireim". Üks väljapääs selles olukorras on kasutada teiste osatuletistega antud teavet. Teine väljapääs on muutujate skaala muutmine.

lineaarse lähenduse tuletise gradient

Fletcher-Reevesi konjugaadi gradiendi meetod

Konjugeeritud gradiendi meetod konstrueerib otsingusuundade jada, mis on praeguse järseima laskumissuuna ja eelnevate otsingusuundade lineaarsed kombinatsioonid, st.

ja koefitsiendid valitakse nii, et otsingusuunad oleksid konjugeeritud. Seda tõestas

ja see on väga väärtuslik tulemus, mis võimaldab koostada kiire ja tõhusa optimeerimisalgoritmi.

Fletcher-Reevesi algoritm

1. Arvutatakse X0.

2. K-ndal sammul leitakse ühemõõtmelise suunaotsingu abil f(X) miinimum, mis määrab punkti Xk+1.

  • 3. Arvutage f(Xk+1) ja.
  • 4. Suund määratakse suhte järgi:
  • 5. Pärast (n+1)-ndat iteratsiooni (st kui k=n) tehakse taaskäivitamine: eeldatakse X0=Xn+1 ja viiakse läbi üleminek sammule 1.
  • 6. Algoritm peatub, kui

kus on suvaline konstant.

Fletcher-Reevesi algoritmi eeliseks on see, et see ei nõua maatriksi inversiooni ja säästab arvuti mälu, kuna see ei vaja Newtoni meetodites kasutatavaid maatrikseid, kuid on samal ajal peaaegu sama tõhus kui kvaasi-Newtoni algoritmid. Sest otsingusuunad on vastastikku konjugeeritud, siis ruutfunktsiooni minimeeritakse mitte rohkem kui n sammuga. Üldjuhul kasutatakse taaskäivitamist, mis võimaldab tulemuse saada.

Fletcher-Reeves'i algoritm on tundlik ühemõõtmelise otsingu täpsuse suhtes, mistõttu tuleb selle kasutamisel kõik tekkida võivad ümardamisvead parandada. Samuti võib algoritm ebaõnnestuda olukordades, kus Hessi keel muutub halvasti konditsioneeritud. Algoritmil pole alati ja kõikjal konvergentsi garantiid, kuigi praktika näitab, et algoritm annab peaaegu alati tulemuse.

Newtoni meetodid

Seotakse kõige järsemale laskumisele vastav otsingusuund lineaarne lähendus sihtfunktsioon. Teisi tuletisi kasutavad meetodid tekkisid sihtfunktsiooni ruutlähendusest, st funktsiooni laiendamisel Taylori seerias jäetakse kolmanda ja kõrgema järgu terminid kõrvale.

kus on Hesse maatriks.

Parema külje miinimum (kui see on olemas) saavutatakse ruutvormi miinimumiga samas kohas. Kirjutame valemi otsingu suuna määramiseks:

Miinimum saavutatakse kl

Optimeerimisalgoritmi, milles otsingusuund määratakse selle seose põhjal, nimetatakse Newtoni meetodiks ja suunda nimetatakse Newtoni suunaks.

Suvalise miinimumi leidmise probleemides ruutfunktsioon teise tuletise positiivse maatriksiga annab Newtoni meetod lahenduse ühes iteratsioonis, sõltumata lähtepunkti valikust.

Newtoni meetodite klassifikatsioon

Tegelikult seisneb Newtoni meetod Newtoni suuna ühes rakenduses ruutfunktsiooni optimeerimiseks. Kui funktsioon ei ole ruutkeskne, on järgmine teoreem tõene.

Teoreem 1.4. Kui üldise mittelineaarse funktsiooni f Hessi maatriks minimaalses punktis X* on positiivne, lähtepunkt on valitud X*-le piisavalt lähedal ja sammude pikkused on õigesti valitud, siis Newtoni meetod koondub X*-le. ruutkiirus.

Newtoni meetodit peetakse võrdlusmeetodiks ja sellega võrreldakse kõiki väljatöötatud optimeerimisprotseduure. Newtoni meetod töötab aga ainult positiivse-kindla ja hästi konditsioneeritud Hesse maatriksiga (selle determinant peab olema oluliselt suurem kui null, täpsemalt suurima ja väikseima suhe omaväärtused peaks olema ühtsusele lähedal). Selle puuduse kõrvaldamiseks kasutatakse modifitseeritud Newtoni meetodeid, kasutades nii palju kui võimalik Newtoni suundi ja kaldudes neist kõrvale ainult vajaduse korral.

Newtoni meetodi modifikatsioonide üldpõhimõte on järgmine: igal iteratsioonil konstrueeritakse esmalt mingi positiivselt määratud maatriks, mis on "seotud" ja seejärel arvutatakse valemiga

Kuna see on positiivne kindel, siis - on tingimata laskumise suund. Ehitusprotseduur on korraldatud nii, et see langeb kokku Hesse maatriksiga, kui see on positiivne kindel. Need protseduurid on üles ehitatud mõne maatriksilaienduse põhjal.

Teine meetodite rühm, mis on peaaegu sama kiire kui Newtoni meetod, põhineb Hessi maatriksi lähendamisel lõplike erinevuste abil, kuna pole optimeerimiseks vajalik täpsed väärtused derivaadid. Need meetodid on kasulikud, kui tuletisinstrumentide analüütiline arvutamine on keeruline või lihtsalt võimatu. Selliseid meetodeid nimetatakse diskreetseteks Newtoni meetoditeks.

Newtoni tüüpi meetodite efektiivsuse võti seisneb info arvestamises minimeeritava funktsiooni kõveruse kohta, mis sisaldub Hessi maatriksis ja võimaldab koostada sihtfunktsiooni lokaalselt täpseid ruutmudeleid. Kuid on võimalik koguda ja koguda teavet funktsiooni kõveruse kohta, jälgides gradiendi muutust laskumise iteratsioonide ajal.

Vastavaid meetodeid, mis põhinevad mittelineaarse funktsiooni kõveruse lähendamise võimalusel ilma selle Hessi maatriksi selgesõnalise moodustamiseta, nimetatakse kvaasi-Newtoni meetoditeks.

Pange tähele, et Newtoni tüüpi optimeerimisprotseduuri (kaasa arvatud kvaasi-Newtoni) konstrueerimisel on vaja arvestada sadulapunkti tekkimise võimalusega. Sel juhul suunatakse parima otsingusuuna vektor alati sadulapunkti, mitte ei liigu sellest "alla" suunas.

Newtoni-Raphsoni meetod

See meetod seisneb Newtoni suuna korduvas kasutamises funktsioonide optimeerimisel, mis ei ole ruutkesksed.

Põhiline iteratiivne valem mitme muutujaga optimeerimiseks

kasutatakse selles meetodis, kui valitakse relatsioonist optimeerimise suund

Tegelik sammu pikkus on peidetud normaliseerimata Newtoni suunas.

Kuna see meetod ei nõua praeguses punktis sihtfunktsiooni väärtust, nimetatakse seda mõnikord kaudseks või analüütiliseks optimeerimismeetodiks. Tema võime määrata ruutfunktsiooni miinimum ühes arvutuses tundub esmapilgul äärmiselt atraktiivne. See "ühtne arvutus" on aga kulukas. Kõigepealt on vaja arvutada n esimest järku osatuletist ja n(n+1)/2 - teist. Lisaks tuleb Hesse maatriks ümber pöörata. See nõuab juba umbes n3 arvutusoperatsiooni. Sama kuluga võivad konjugeeritud suunameetodid või konjugeeritud gradiendi meetodid võtta umbes n sammu, s.t. saavutada peaaegu sama tulemus. Seega ei anna Newtoni-Raphsoni meetodi iteratsioon ruutfunktsiooni puhul eeliseid.

Kui funktsioon ei ole ruutkeskne, siis

  • - juba algsuund ei näita üldiselt tegelikku miinimumpunkti, mis tähendab, et iteratsioone tuleb korrata korduvalt;
  • - ühikupikkusega samm võib viia punktini halvim väärtus objektiivne funktsioon ja otsing võib anda vale suuna, kui näiteks Hessi keel ei ole positiivne kindel;
  • - hesslane võib muutuda halvasti tingituks, muutes võimatuks selle ümberpööramise, s.t. järgmise iteratsiooni suuna määramine.

Strateegia ise ei tee vahet, millisele statsionaarsele punktile (miinimum, maksimum, sadulapunkt) otsing läheneb, ning sihifunktsiooni väärtuste arvutamist, mille järgi oleks võimalik jälgida, kas funktsioon kasvab, ei tehta. Niisiis, kõik sõltub sellest, milline tõmbevööndi statsionaarne punkt on otsingu alguspunkt. Newton-Raphsoni strateegiat kasutatakse harva iseseisvalt ilma üht või teist tüüpi muudatusteta.

Pearsoni meetodid

Pearson pakkus välja mitu meetodit pöörd-Hessi aproksimeerimiseks ilma teisi tuletisi selgesõnaliselt arvutamata, s.t. jälgides muutusi antigradiendi suunas. Sel juhul saadakse konjugeeritud suunad. Need algoritmid erinevad ainult üksikasjade poolest. Siin on need, kes said kõige rohkem laialdane kasutamine rakendusvaldkondades.

Pearsoni algoritm nr 2.

Selles algoritmis aproksimeeritakse Hessi pöördväärtus maatriksiga Hk, mis arvutatakse igal etapil valemiga

Algmaatriksiks H0 valitakse suvaline positiivselt määratud sümmeetriline maatriks.

See Pearsoni algoritm viib sageli olukordadeni, kus maatriks Hk muutub halvasti tingituks, nimelt hakkab see võnkuma, võnkuma positiivse kindla ja mittepositiivse kindla vahel, samas kui maatriksi determinant on nullilähedane. Sellise olukorra vältimiseks on vaja maatriksit iga n sammu järel uuesti seadistada, võrdsustades selle väärtusega H0.

Pearsoni algoritm nr 3.

Selles algoritmis määratakse valemi järgi maatriks Hk+1

Hk+1 = Hk+

Algoritmi genereeritud laskumistee on sarnane Davidon-Fletcher-Powelli algoritmi käitumisega, kuid sammud on veidi lühemad. Pearson pakkus välja ka selle algoritmi variandi maatriksi tsüklilise ümberkorraldamisega.

Projektiivne Newton-Raphsoni algoritm

Pearson pakkus välja idee algoritmist, milles maatriks arvutatakse seose põhjal

H0=R0, kus maatriks R0 on sama, mis eelmiste algoritmide algmaatriksid.

Kui k on sõltumatute muutujate arvu n kordne, asendatakse maatriks Hk maatriksiga Rk+1, mis arvutatakse summana

Väärtus Hk(f(Xk+1) - f(Xk)) on gradiendi juurdekasvuvektori (f(Xk+1)-f(Xk) projektsioon, mis on ortogonaalne kõigi eelmiste sammude gradiendi juurdekasvuvektoritega. Iga n sammu järel on Rk Hessi pöördväärtuse H-1(Xk) ligikaudne väärtus, nii et sisuliselt tehakse (ligikaudne) Newtoni otsing.

Davidon-Fletcher-Powelli meetod

Sellel meetodil on teised nimed – muutujameetriline meetod, kvaasi-Newtoni meetod, sest ta kasutab mõlemat lähenemist.

Davidon-Fletcher-Powell (DFP) meetod põhineb Newtoni suundade kasutamisel, kuid ei nõua Hessi pöördväärtuse arvutamist igal sammul.

Otsimise suund sammus k on suund

kus Hi on positiivselt määratud sümmeetriline maatriks, mida uuendatakse igal sammul ja mis limiidis muutub võrdseks pöörd-Hessi maatriksiga. Identiteedimaatriks valitakse tavaliselt algmaatriksiks H. Iteratiivset DFT protseduuri saab esitada järgmiselt:

  • 1. Sammul k on punkt Xk ja positiivne-määratletud maatriks Hk.
  • 2. Valige uueks otsingusuunaks

3. Ühemõõtmeline otsing (tavaliselt kuupinterpolatsiooni abil) piki suunda määrab funktsiooni k minimeerides.

4. Toetub.

5. Toetub.

6. Määratakse ja. Kui Vk või on piisavalt väikesed, protseduur lõpeb.

  • 7. Määra Uk = f(Xk+1) - f(Xk).
  • 8. Maatriksi Hk uuendamine toimub valemi järgi

9. Suurendage k ühe võrra ja naaske 2. sammu juurde.

Meetod on praktikas efektiivne, kui gradiendi arvutamise viga on väike ja maatriks Hk ei muutu halvasti konditsioneerituks.

Maatriks Ak tagab Hk konvergentsi G-1-le, maatriks Bk tagab Hk+1 positiivse määratluse kõigil etappidel ja välistab H0 piirväärtuses.

Ruutfunktsiooni korral

need. DFP algoritm kasutab konjugeeritud juhiseid.

Seega kasutab DFT meetod nii Newtoni lähenemise ideid kui ka konjugeeritud suundade omadusi ning ruutfunktsiooni minimeerimisel koondub see mitte rohkem kui n iteratsiooniga. Kui optimeeritaval funktsioonil on ruutfunktsioonile lähedane vorm, siis on DFP-meetod tõhus tänu G-1 heale lähendusele (Newtoni meetod). Kui sihtfunktsioonil on üldine vorm, siis on DFP-meetod konjugeeritud suundade kasutamise tõttu tõhus.

Lõõgastusmeetod

Meetodi algoritm seisneb selle teljesuuna leidmises, mida mööda sihtfunktsioon kõige tugevamalt väheneb (miinimumi otsimisel). Mõelge piiranguteta optimeerimise probleemile

Teljesuuna määramiseks otsingu alguspunktis määratakse piirkonnast kõigi sõltumatute muutujate suhtes tuletised , . Teljesuund vastab absoluutväärtuses suurimale tuletisele.

Olgu telgsuund, st. .

Kui tuletise märk on negatiivne, siis funktsioon väheneb telje suunas, kui see on positiivne, siis vastupidises suunas:

Arvutage punktis. Väheneva funktsiooni suunas astutakse üks samm, see määratakse ja kriteeriumi paranemisel jätkatakse samme seni, kuni leitakse valitud suunas minimaalne väärtus. Siinkohal määratakse jällegi kõikide muutujate tuletised, välja arvatud need, mille üle laskumine toimub. Jälle leitakse kiireima languse telgsuund, mida mööda astutakse edasisi samme jne.

Seda protseduuri korratakse, kuni saavutatakse optimaalne punkt, millest alates üheski aksiaalses suunas edasist langust ei toimu. Praktikas on otsingu lõpetamise kriteeriumiks tingimus

mis at muutub täpseks tingimuseks, et tuletised on äärmuspunktis võrdsed nulliga. Loomulikult saab tingimust (3.7) kasutada ainult siis, kui optimum jääb sõltumatute muutujate lubatud vahemikku. Kui seevastu optimum langeb piirkonna piirile, siis tüübi (3.7) kriteerium ei sobi ja selle asemel tuleks rakendada kõikide tuletiste positiivsust lubatavate teljesuundade suhtes.

Valitud teljesuunalise suuna laskumisalgoritmi saab kirjutada järgmiselt

(3.8)

kus on muutuja väärtus laskumise igal etapil;

K + 1 sammu väärtus, mis võib olenevalt sammu numbrist erineda:

on z märgifunktsioon;

Punkti vektor, kus tuletised viimati arvutati;



Märk “+” algoritmis (3.8) võetakse max I otsimisel ja märk “-” min I otsimisel. Mida väiksem on samm h, seda rohkem kogust arvutused teel optimaalse poole. Kuid kui h väärtus on liiga suur, optimumi lähedal, võib otsinguprotsessis tekkida silmus. Optimumi lähedal on vajalik, et tingimus h

Lihtsaim algoritm sammu h muutmiseks on järgmine. Laskumise alguses seatakse samm võrdseks näiteks 10% ulatuses vahemikust d; selle sammuga muutub, laskutakse valitud suunas, kuni järgmise kahe arvutuse tingimus on täidetud

Kui tingimust rikutakse mis tahes sammul, pööratakse laskumise suund teljel ümber ja laskumine jätkub viimasest punktist poole võrra vähendatud sammuga.

Selle algoritmi formaalne tähistus on järgmine:

(3.9)

Sellise strateegia kasutamise tulemusena väheneb Sha laskumine selles suunas optimumi piirkonnas ja suuna otsimise saab peatada, kui E muutub väiksemaks.

Seejärel leitakse uus teljesuunaline suund, edasise laskumise esialgne samm, mis on tavaliselt väiksem kui eelmisel telgsuunal läbitud suund. Selle meetodi optimaalse liikumise olemus on näidatud joonisel 3.4.

Joonis 3.5 – Relaksatsioonimeetodil optimaalseni liikumise trajektoor

Selle meetodi abil saab otsingualgoritmi täiustada, rakendades ühe parameetri optimeerimise meetodeid. Sel juhul võib probleemi lahendamiseks välja pakkuda skeemi:

1. samm - telgsuund,

; , Kui ;

2. samm - uus teljesuunaline suund;

gradiendi meetod

See meetod kasutab gradiendi funktsiooni. Gradiendi funktsioon punktis kutsutakse vektorit, mille projektsioonid koordinaatide telgedele on funktsiooni osatuletised koordinaatide suhtes (joon. 6.5)

Joonis 3.6 – Funktsiooni gradient

.

Gradiendi suund on funktsiooni kiireima kasvu suund (vastuspinna kõige järsem “kalle”). Sellele vastupidine suund (antigradiendi suund) on kiireima languse suund (väärtuste kiireima "langemise" suund).

Gradiendi projektsioon muutujate tasapinnale on risti nivoojoone puutujaga, s.o. gradient on ortogonaalne sihtfunktsiooni konstantse taseme joontega (joonis 3.6).

Joonis 3.7 – meetodi optimaalseks liikumise trajektoor

gradient

Erinevalt lõdvestusmeetodist astutakse gradientmeetodi puhul samme funktsiooni kiireima languse (tõusu) suunas.

Optimaalse otsimine toimub kahes etapis. Esimeses etapis leitakse kõigi muutujate suhtes osatuletisi väärtused, mis määravad vaadeldavas punktis gradiendi suuna. Teises etapis astutakse maksimumi otsimisel samm gradiendi suunas või miinimumi otsimisel vastupidises suunas.

Kui analüütiline avaldis on teadmata, määratakse gradiendi suund objektil prooviliigutuste otsimise teel. Olgu alguspunkt. Kasv on antud, samas kui . Määratlege juurdekasv ja tuletis

Muude muutujate tuletisväärtpaberid määratakse sarnaselt. Pärast gradiendi komponentide leidmist katseliigutused peatuvad ja algavad töösammud valitud suunas. Veelgi enam, sammu suurus on suurem, mida suurem on vektori absoluutväärtus.

Sammu sooritamisel muudetakse kõigi sõltumatute muutujate väärtusi samaaegselt. Igaüks neist saab juurdekasvu, mis on proportsionaalne gradiendi vastava komponendiga

, (3.10)

või vektorkujul

, (3.11)

kus on positiivne konstant;

“+” – max I otsimisel;

“-” – min I otsimisel.

Vormis rakendatakse gradiendi normaliseerimise (mooduli järgi jagamise) gradiendiotsingu algoritmi

; (3.12)

(3.13)

Määrab sammu suuruse gradiendi suunas.

Algoritmi (3.10) eeliseks on see, et optimumile lähenedes sammu pikkus automaatselt väheneb. Ja algoritmiga (3.12) saab muudatusstrateegia üles ehitada sõltumata koefitsiendi absoluutväärtusest.

Gradientmeetodil jagatakse igaüks üheks tööetapiks, mille järel arvutatakse uuesti tuletised, määratakse gradiendi uus suund ja otsinguprotsess jätkub (joonis 3.5).

Kui sammu suurus on valitud liiga väikeseks, siis on optimaalseks liikumine liiga pikk, kuna on vaja arvutada liiga paljudes punktides. Kui samm on valitud liiga suureks, võib silmus tekkida optimaalses piirkonnas.

Otsinguprotsess jätkub seni, kuni , , muutub nullilähedaseks või kuni saavutatakse muutuja seadistusala piir.

Automaatse astmelise täpsustamisega algoritmis täpsustatakse väärtust nii, et gradiendi suuna muutus naaberpunktides ja

Optimaalse otsingu lõpetamise kriteeriumid:

; (3.16)

; (3.17)

Kus on vektori norm.

Otsing lõpeb, kui üks tingimus (3.14) - (3.17) on täidetud.

Gradiendiotsingu (nagu ka eespool käsitletud meetodite) miinuseks on see, et selle kasutamisel on võimalik leida ainult funktsiooni lokaalne ekstreemum. Teiste kohalike ekstreemide leidmiseks on vaja otsida teistest lähtepunktidest.

Seotud väljaanded

  • Milline on bronhiidi pilt Milline on bronhiidi pilt

    on difuusne progresseeruv põletikuline protsess bronhides, mis viib bronhide seina morfoloogilise restruktureerimiseni ja ...

  • HIV-nakkuse lühikirjeldus HIV-nakkuse lühikirjeldus

    Inimese immuunpuudulikkuse sündroom - AIDS, Inimese immuunpuudulikkuse viirusinfektsioon - HIV-nakkus; omandatud immuunpuudulikkus...