Gradienttimenetelmiä

Gradienttimenetelmät ovat numeerisia menetelmiä ongelmien ratkaisemiseksi gradientin avulla , jotka rajoittuvat funktion ääripisteiden löytämiseen.

Lausunto yhtälöjärjestelmän ratkaisun ongelmasta optimointimenetelmien kannalta

Tehtävä yhtälöjärjestelmän ratkaisemiseksi :

(yksi)

c vastaa funktion minimoimisen ongelmaa

(2)

tai jokin muu jäännösarvojen (virheiden) itseisarvojen nouseva funktio , . Muuttujien funktion minimin (tai maksimin) löytämisen ongelma on itsessään erittäin tärkeä käytännön merkitys.

Tämän ongelman ratkaisemiseksi iteratiivisilla menetelmillä aloitetaan mielivaltaisilla arvoilla ja muodostetaan peräkkäiset approksimaatiot:

tai koordinaatistossa:

(3)

jotka konvergoivat johonkin ratkaisuun .

Eri menetelmät eroavat toisistaan ​​"suunnan" valinnassa seuraavalle vaiheelle eli suhteiden valinnassa

.

Askelarvo (etäisyys tiettyyn suuntaan ääripäätä etsittäessä) määräytyy arvon minimoivan parametrin arvon funktiona . Tämä funktio on yleensä approksimoitu sen Taylor-laajennuksella tai interpolaatiopolynomilla kolmesta viiteen valitulle arvolle . Viimeinen menetelmä soveltuu taulukkofunktion maksimi - ja minimiarvojen löytämiseen .

Gradient Methods

Menetelmien pääajatuksena on mennä jyrkimmän laskeuman suuntaan, ja tämän suunnan antaa antigradientti :

missä on valittu:

Jyrkin laskeutumismenetelmä ( gradienttimenetelmä )

Valitse , jossa kaikki derivaatat lasketaan , ja pienennä askelpituutta lähestyessäsi funktion minimiä .

Analyyttisille funktioille ja pienille arvoille Taylor-laajennus mahdollistaa optimaalisen askelkoon valinnan

(5)

jossa kaikki johdannaiset lasketaan arvolla . Parabolisen funktion interpolointi voi olla kätevämpää.

Algoritmi
  1. Alkuproksimaatio ja laskennan tarkkuus asetetaan
  2. Laske missä
  3. Tarkista pysäytystila:
    • Jos , siirry vaiheeseen 2.
    • Muuten lopeta.

Gauss-Seidelin koordinaattilaskumenetelmä

Tämä menetelmä on nimetty analogisesti Gauss-Seidelin menetelmän kanssa lineaarisen yhtälöjärjestelmän ratkaisemiseksi. Parantaa edellistä menetelmää johtuen siitä, että seuraavassa iteraatiossa laskeutuminen suoritetaan asteittain kutakin koordinaattia pitkin, mutta nyt on tarpeen laskea uudet kerran yhdessä vaiheessa.

Algoritmi
  1. Alkuproksimaatio ja laskennan tarkkuus asetetaan
  2. Laske missä
  3. Tarkista pysäytystila:
    • Jos , siirry vaiheeseen 2.
    • Muuten lopeta.

Konjugaattigradienttimenetelmä

Konjugaattigradienttimenetelmä perustuu moniulotteisen optimoinnin suoran menetelmän  - konjugaattisuuntien menetelmän - käsitteisiin .

Menetelmän soveltaminen toisen asteen funktioihin määrittää minimin portaissa.

Algoritmi
  1. Ne saadaan alkuperäisen likiarvon ja virheen perusteella:
  2. Laske aloitussuunta:
    • Jos tai , niin lopeta.
    • Muuten
      • jos , siirry kohtaan 3;
      • muussa tapauksessa siirry kohtaan 2.

Katso myös

Kirjallisuus

  • Akulich I.L. Matemaattinen ohjelmointi esimerkeissä ja tehtävissä: Proc. opiskelijatalouden tuki. asiantuntija. yliopistot. - M . : Korkeampi. koulu, 1986.
  • Gill F., Murray W., Wright M. Käytännön optimointi. Per. englannista. - M .: Mir, 1985.
  • Korshunov Yu.M., Korshunov Yu.M. Kybernetiikan matemaattiset perusteet. - M .: Energoatomizdat, 1972.
  • Maksimov Yu.A., Filipovskaya E.A. Algoritmit epälineaarisen ohjelmoinnin ongelmien ratkaisemiseen. - M .: MEPhI, 1982.
  • Maksimov Yu.A. Algoritmit lineaariseen ja diskreettiin ohjelmointiin. - M .: MEPhI, 1980.
  • Korn G., Korn T. Matematiikan käsikirja tutkijoille ja insinööreille. - M .: Nauka, 1970. - S. 575-576.