Luento 6: Monitavoitteinen optimointi Monitavoitteisessa optimointitehtävässä on useita optimoitavia kohdefunktioita eli ns kriteereitä: f,,f m Esimerkki ortfolion eli arvopaperijoukon optimoinnissa: f := tuoton odotusarvo; maksimoidaan f := tuoton varianssi; minimoidaan f 3 := osingot; maksimoidaan Esimerkki Vesistön optimaalisessa (vuotuisessa) säännöstelyssä kriteereinä voivat olla: f := vesivoiman vuotuinen tuotto; maksimoidaan f := vuotuiset säännöstelykustannukset; minimoidaan f 3 := veneily- ja muu virkistyskäyttö (päivää/vuosi); maksimoidaan f 4 := kalojen kutualueet (hehtaaria); maksimoidaan Tehtävä : f (x) max f m (x) se x X R n, missä X on käypien vaihtoehtojen joukko Olkoon yksinkertaisuuden vuoksi n =, m = Alla olevat määritelmät on helppo yleistää x kuvaus (f,f ) X x (f (x), f (x)) x Kuva : Olkoon = [f (x), f (x)] T Otetaan -kärkisen kartion, jonka sivut ovat koordinaattiakselien suuntaiset, ja joukon leikkaus Näissä pisteissä f :n ja
f :n arvot ovat joko aidosti parempia, tai toinen aidosti parempi ja toinen vähintään yhtä hyvä, kuin :ssa, ellei, jolloin ko alue sisältää vain pisteen Siis jos = [f (x),f (x)] T, /, voidaan f :n ja f :n arvoja aina parantaa, ja toista aidosti, siirtymällä johonkin katkoviivojen rajoittaman alueen käypään pisteeseen Jos sen sijaan siirrytään pisteestä johonkin toiseen :n pisteeseen, niin aina ainakin toisen komponentin arvo aidosti huononee :n pisteitä kutsutaan tehtävän areto-optimaalisiksi- tai aretotehokkaiksi pisteiksi, tai vain areto-pisteiksi Vastaavat x:t, eli x:t, joille [f (x),f (x)] T, ovat areto-optimaalisia vaihtoehtoja areto-pisteen algebrallinen määritelmä: = [, ] T, jos se, Vastaavasti piste x on areto-optimaalinen vaihtoehto, jos x f i (x ) f i (x), i =,, ja (>) voimassa ainakin toisessa X se Huomaa Jos kohdefunktioita f ja f minimoidaan, areto-pisteet ovat kuten kuvassa f Kuva : f Määritelmä:
Monitavoitteisen optimointitehtävän ratkaisun muodostavat tehtävän areto-pisteet, tai areto-optimaaliset vaihtoehdot x X siten, että [f (x),f (x)] T areto-pisteiden laskeminen Muista: w = [w,w ] T on suoran w + w = vakio gradientti ja ilmaisee funktion f() = w T kasvusuunnan w=(0,) w=(,0) Kuva 3: Konveksin joukon areto-pisteet Reunimmaiset pisteet saadaan painokertoimien (w,w ) arvoilla (,0) ja (0,) ainokertoimia w, w 0, w + w =, vastaava areto-piste saadaan ratkaisemalla tehtävä : Tehtävä : max se w T Edellä :n pinta on (aidosti) konveksi R:n joukko on konveksi, kun se sisältää jokaisen kahden pisteensä välisen janan (asia tulee esille luennolla ) Yleisesti pätee: Jos 0 on tehtävän ratkaisu ja w, w > 0 0 on areto-piste Tehtävä voidaan kirjoittaa ekvivalentisti seuraavaan muotoon, jossa se on helpompi ratkaista: 3
max se w f (x) + w f (x) x X missä w, w 0, w + w = Kuva 4: Ei konveksin joukon areto-pinta Siis tavallinen optimointitehtävä, jonka ratkaisu on painokertoimia w, w vastaava areto-piste Huomioita: Kertoimia w i kutsutaan tehtävän painokertoimiksi Esim OR-asiantuntija ratkaisee tehtävän vuorovaikutteisesti asiakkaan kanssa Tällöin voidaan valita joko (a) tai (b) (a) Asiakas valitsee painokertoimet Esimerkiksi jos kriteeri f on kaksi kertaa tärkeämpi kuin f max f + f, tai max 3 f + 3 f (b) Asiantuntija laskee koko :n, josta asiakas valitsee mieluisimman Tavoiteoptimointi Tavoiteoptimoinnissa (Goal programming) pyritään etsimään ratkaisu, joka täyttää tietyt tavoitteet Mikäli kaikkia tavoitteita ei pystytä täyttämään, pyritään minimoimaan poikkeamaa tavoitteista Joukko tavoitteita tavoitteelle i: s + i 0 Muuttuja kuvaa paljonko tavoitteesta i jäädään s i 0 Muuttuja kuvaa paljonko tavoite i ylitetään 4
s i :t ovat ns poikkeamamuuttujia ainokertoimet kertovat tavoitteiden keskinäisen tärkeyden Tavoitteita voidaan ylittää ja alittaa rajoituksetta Tavoitetehtävä on muotoa: tavoite : c T x b c T x + s + s = b tavoite i: c T i x b i c T i x + s + i s i = b i tavoite j: c T j x = b j c T j x + s + j s j = b j tavoite m: c T m x = b m c T m x + s + m s m = b m missä x S (S = käyvät vaihtoehdot); s + i, s i 0 Minimoidaan poikkeamia tavoitteista tai poikkeamien painotettua summaa, jolloin saadaan tavoiteoptimoinnin tehtävä: min m (w + i s+ i + w i s i ) i= se eo yhtälörajoitukset voimassa, x S; s + i, s i 0 missä w + i, w i 0, ovat painokertoimia Erikoistapaus: tavoite : = c T x = b tavoite : = c T x = b missä ja on kuvassa 5 oleva joukko Tavoitepiste b = [b, b ] T on ns utopiapiste, jota ei voi saavuttaa Tällöin on viisasta esim laskea sellainen piste 0, että 0 on minimietäisyydellä pisteestä b jonkin sopivan normin suhteen; so 0 ratkaisee tehtävän min b 5
w + i s+ i + w i s i voidaan tulkita erääksi tällaiseksi normiksi Esimerkki: euklidinen minimietäisyys : d = min b e := min ( b ) + ( b ) b d b b Kuva 5: 6