| Tähän artikkeliin tai osioon ei ole merkitty lähteitä, joten tiedot kannattaa tarkistaa muista tietolähteistä. Voit auttaa Wikipediaa lisäämällä artikkeliin tarkistettavissa olevia lähteitä ja merkitsemällä ne ohjeen mukaan. |
Matemaattinen optimointi tarkoittaa määritellyn parhaan ratkaisun valintaa kaikkien mahdollisten ratkaisujen joukosta. Yleensä matemaattinen optimointi liittyy matemaattiseen malliin, kuten kohde-, hyöty- tai kustannusfunktioihin, joiden tuntemattomia parametrejä voidaan hakea tai sovittaa dataan . Kun kohdefunktio kuvaa ratkaisusta saatavaa hyötyä, jonka halutaan olevan mahdollisimman suuri, kutsutaan optimointitehtävää maksimoinniksi. Kun taas halutaan ratkaisusta koituvan mahdollisimman vähän kustannuksia tai haittaa, kutsutaan tehtävää minimoinniksi.
Formaalisti optimointi on sellaisen pisteen etsiminen ratkaisujoukosta , jossa funktio saa joko pienimmän tai suurimman arvonsa eli minimin tai maksimin. Tätä pistettä kutsutaan vastaavasti minimipisteeksi tai maksimipisteeksi.
Jokaista maksimointiongelmaa vastaa tietty minimointiongelma, joka ratkaisee maksimointiongelman. Funktion maksimointi on sama tehtävä kuin funktion minimointi: . Näin ollen matemaattisen optimointiteorian riittää tarkastella vain minimointiongelmaa.
Tehtävää, jonka tarkoituksena on etsiä pienin arvo, kutsutaan minimointitehtäväksi. Tehtäväkuvaus merkitään formaalisti
jossa on tehtävän kohdefunktio.
Vastaavasti kohdefunktion maksimointitehtävää merkitään
Optimointitehtävässä
joukkoa kutsutaan käyväksi ratkaisujoukoksi tai vain käyväksi joukoksi. Käypä joukko voidaan määritellä esimerkiksi
Monen muuttujan tehtävässä käypä ratkaisujoukko voidaan määritellä esimerkiksi
Funktiolla voi olla yksi tai useampi paikallinen optimipiste, lokaali optimi. Lokaali minimi määritellään pisteeksi , jolle on olemassa siten, että kaikilla , joilla . Toisin sanoen on olemassa jokin alue eli ympäristö, jossa piste antaa pienemmän funktion arvon kuin muut ympäröivät pisteet.
Optimointitehtävän globaali minimi on pienin likaaleista pisteistä, eli piste , jolle pätee kaikilla , jotka kuuluvat käypään alueeseen . Tätä pienempää funktion arvoa ei voida saavuttaa käyvässä joukossa.
Lineaarinen optimointi tarkoittaa optimointia kun kohdefunktio ja käypää aluetta rajoittavat ehdot ovat lineaarisia. Lineaarista optimointia kutsutaan myös lineaariseksi ohjelmoinniksi. Yleinen lineaarinen tehtävä voidaan esittää muodossa
Tässä ja merkeillä tarkoitetaan, että jokaista alkiota verrataan riveittäin toisiinsa. Voidaan osoittaa, että kaikki lineaariset optimointitehtävät voidaan esittään ali- ja ylijäämämuuttujien (engl. slack variable) avulla ns. standardimuodossa
jossa , ja . Eli aina kun tarkastellan yleistä lineaarista tehtävää, voidaan tarkastella pelkästään standarditehtävää menettämättä tuloksien yleispätevyyttä. Huomaa, että myös vektorit ja muuttuvat tehtävätyypin muunnoksessa.
Lineaarinen optimointitehtävä
voidaan esittää standardimuodossa muunnoksella , jossa ja . Kun lisätään vielä ali- ja ylijäämämuuttujat ja saadaan tehtäväksi
Jos siis valitaan , , ja
on tehtävä saatu standardimuotoon. Huomaa, että optimipisteessä vain toinen muuttujista ja on nollasta poikkeava, joten ylimääräiset muuttujat eivät vaikuta rajoitusehtoihin.
Epälineaarisella optimoinnilla tarkoitetaan sellaisen optimointitehtävän ratkaisemista, joka on muotoa
jossa , f on mielivaltainen kohdefunktio, funktiot epäyhtälörajoitukset, yhtälörajoitukset ja X käypä joukko. Vaikka yhtälörajoitukset voidaan esittää epäyhtälörajoitusten avulla ( ja ), tämä ei käytännössä aina ole mahdollista, sillä jotkin ratkaisumenetelmät olettavat tehtävän rajoitusten olevan optimipisteessä lineaarisesti riippumattomat.
Epälineaarinen ja lineaarinen tehtävä (LP) eroavat toisistaan seuraavasti. Epälineaarisessa tehtävässä käypä alue voi olla mielivaltainen, kun LP-tehtävän käypä joukko on aina monitahokas. Toiseksi LP-tehtävän lineaarinen kohdefunktio on aina myös konveksi, joten tehtävälle löydetään globaali optimi hyödyntämällä konveksin optimoinnin tuloksia. Epälineaarinen tehtävä on lineaarista tehtävää yleisempi, joten kaikki tulokset, jotka on johdettu epälineaariselle tehtävälle, pätevät myös lineaariselle tehtävälle.
Kun jokin optimointitehtävän käyvän alueen piste on optimaalinen, se täyttää välttämättömät optimaalisuusehdot. Lause ei päde toisin päin, eli tehtävälle voi olla mahdollista löytää optimaalisuusehdot täyttävä piste, joka ei välttämättä ole optimipiste.
Rajoittamattoman tehtävän välttämätön optimaalisuusehto optimointitehtävän ratkaisupisteelle on
Yleiselle rajoitetulle tehtävälle voidaan johtaa Karush-Kuhn-Tuckerin välttämättömät optimaalisuusehdot (välttämättömät KKT-ehdot), ja hieman yleisemmät Fritz Johnin välttämättömät optimaalisuusehdot (välttämättömät FJ-ehdot).
Olkoon käypä joukko epätyhjä ja avoin sekä jonkin epälineaarisen tehtävän lokaali optimi. Tällöin on olemassa vektori siten, että
jossa ja ovat m ja l vektoreita joiden i:nnet komponintit ovat ja . Luonnollisesti on oletettava, että gradientit ovat olemassa. FJ-ehdot saadaan toteutumaan mielivaltaiselle käyvälle pisteelle lisäämällä sopivia merkityksettömiä rajoituksia.
Fritz Johnin ehdot redusoituvat tietyin ehdoin KKT-ehdoiksi. KKT-ehdot ovat FJ-ehtoja hyödyllisempiä, sillä ne karsivat pois turhia kandidaattipisteitä. Käytännössä näiden ehtojen on taattava, että FJ-ehtojen on nollasta poikkeava, jolloin jakamalla sillä puolittain saadaan ns. KKT-ehdot.
Olkoon jonkin epälineaarisen tehtävän lokaali optimi, jolla on sopivat rajoitusehdot. Tällöin on olemassa vektori siten, että
jossa ja ovat m ja l vektoreita joiden i:nnet komponentit ovat ja .