P 2 P 1. 4.1 ábra Az f(x) függvény globális minimuma (P 1 ) és egy lokális minimuma (P 2 ).



Hasonló dokumentumok
Optimalizálás alapfeladata Legmeredekebb lejtő Lagrange függvény Log-barrier módszer Büntetőfüggvény módszer 2017/

Konjugált gradiens módszer

Nemlineáris programozás 2.

Matematika III előadás

MATEMATIKA 2. dolgozat megoldása (A csoport)

Losonczi László. Debreceni Egyetem, Közgazdaság- és Gazdaságtudományi Kar

10. Előadás. 1. Feltétel nélküli optimalizálás: Az eljárás alapjai

Kétváltozós függvények differenciálszámítása

2. SZÉLSŽÉRTÉKSZÁMÍTÁS. 2.1 A széls érték fogalma, létezése

2 (j) f(x) dx = 1 arcsin(3x 2) + C. (d) A x + Bx + C 5x (2x 2 + 7) + Hx + I. 2 2x F x + G. x

11. Előadás. 11. előadás Bevezetés a lineáris programozásba

First Prev Next Last Go Back Full Screen Close Quit

Számítógépes döntéstámogatás. Genetikus algoritmusok

Gyakorló feladatok. Agbeko Kwami Nutefe és Nagy Noémi

Gauss-Jordan módszer Legkisebb négyzetek módszere, egyenes LNM, polinom LNM, függvény. Lineáris algebra numerikus módszerei

A lineáris programozás alapfeladata Standard alak Az LP feladat megoldása Az LP megoldása: a szimplex algoritmus 2018/

A lineáris programozás alapfeladata Standard alak Az LP feladat megoldása Az LP megoldása: a szimplex algoritmus 2017/

Szélsőérték-számítás

A L Hospital-szabály, elaszticitás, monotonitás, konvexitás

A legjobb közeĺıtés itt most azt jelentette, hogy a lineáris

Matematika A1a Analízis

Nem-lineáris programozási feladatok

9. TÖBBVÁLTOZÓS FÜGGVÉNYEK DIFFERENCIÁLSZÁMITÁSA. 9.1 Metrika és topológia R k -ban

6. Függvények. Legyen függvény és nem üreshalmaz. A függvényt az f K-ra való kiterjesztésének

Feladatok a Gazdasági matematika II. tárgy gyakorlataihoz

Szélsőérték feladatok megoldása

Opkut deníciók és tételek

A lineáris programozás alapjai

A fontosabb definíciók

függvény grafikonja milyen transzformációkkal származtatható az f0 : R R, f0(

Matematika A2 vizsga mgeoldása június 4.

Gauss-Seidel iteráció

Többváltozós, valós értékű függvények

Többváltozós, valós értékű függvények

Numerikus módszerek II. zárthelyi dolgozat, megoldások, 2014/15. I. félév, A. csoport. x 2. c = 3 5, s = 4

Kétváltozós függvény szélsőértéke

További programozási esetek Hiperbolikus, kvadratikus, integer, bináris, többcélú programozás

Analízis II. Analízis II. Beugrók. Készítette: Szánthó József. kiezafiu kukac gmail.com. 2009/ félév

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Függvények

Numerikus módszerek beugró kérdések

Differenciálegyenletek numerikus megoldása

Nemlineáris optimalizálás Dr. Házy, Attila

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK KÖZÉPSZINT Függvények

KOVÁCS BÉLA, MATEMATIKA I.

Lagrange egyenletek. Úgy a virtuális munka mint a D Alembert-elv gyakorlati alkalmazását

f(x) vagy f(x) a (x x 0 )-t használjuk. lim melyekre Mivel itt ɛ > 0 tetszőlegesen kicsi, így a a = 0, a = a, ami ellentmondás, bizonyítva

12. Mikor nevezünk egy részhalmazt nyíltnak, illetve zártnak a valós számok körében?

Feladatok megoldásokkal az ötödik gyakorlathoz (Taylor polinom, szöveges szélsőérték problémák)

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Függvények

Legkisebb négyzetek módszere, Spline interpoláció

Szakdolgozat. Miskolci Egyetem. Nemlineáris programozás. Készítette: Horváth Gábor Programtervező informatikus hallgató

A szimplex algoritmus

11. gyakorlat megoldásai

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK KÖZÉP SZINT Függvények

ACM Snake. Orvosi képdiagnosztika 11. előadás első fele

MATE-INFO UBB verseny, március 25. MATEMATIKA írásbeli vizsga

Nagy András. Feladatok a logaritmus témaköréhez 11. osztály 2010.

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK KÖZÉP SZINT Függvények

1. Parciális függvény, parciális derivált (ismétlés)

n n (n n ), lim ln(2 + 3e x ) x 3 + 2x 2e x e x + 1, sin x 1 cos x, lim e x2 1 + x 2 lim sin x 1 )

Függvények Megoldások

Exponenciális, logaritmikus függvények

Feladatok a logaritmus témaköréhez 11. osztály, középszint

Dualitás Dualitási tételek Általános LP feladat Komplementáris lazaság 2017/ Szegedi Tudományegyetem Informatikai Intézet

11. gyakorlat megoldásai

6. Függvények. 1. Az alábbi függvények közül melyik szigorúan monoton növekvő a 0;1 intervallumban?

Matematika II. 1 sin xdx =, 1 cos xdx =, 1 + x 2 dx =

minden x D esetén, akkor x 0 -at a függvény maximumhelyének mondjuk, f(x 0 )-at pedig az (abszolút) maximumértékének.

Numerikus matematika. Irodalom: Stoyan Gisbert, Numerikus matematika mérnököknek és programozóknak, Typotex, Lebegőpontos számok

Lineáris algebra numerikus módszerei

sin x = cos x =? sin x = dx =? dx = cos x =? g) Adja meg a helyettesítéses integrálás szabályát határozott integrálokra vonatkozóan!

Feladatok megoldásokkal a 9. gyakorlathoz (Newton-Leibniz formula, közelítő integrálás, az integrálszámítás alkalmazásai 1.

Megoldások MATEMATIKA II. VIZSGA (VK) NBT. NG. NMH. SZAKOS HALLGATÓK RÉSZÉRE (Kérjük, hogy a megfelelő szakot jelölje be!

Hódmezővásárhelyi Városi Matematikaverseny április 14. A osztályosok feladatainak javítókulcsa

ANALÍZIS III. ELMÉLETI KÉRDÉSEK

0-49 pont: elégtelen, pont: elégséges, pont: közepes, pont: jó, pont: jeles

Numerikus módszerek I. zárthelyi dolgozat (2017/18. I., A. csoport) Megoldások

Descartes-féle, derékszögű koordináta-rendszer

3. Lineáris differenciálegyenletek

E-tananyag Matematika 9. évfolyam Függvények

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉP SZINT Függvények

Függvények határértéke, folytonossága FÜGGVÉNYEK TULAJDONSÁGAI, SZÉLSŐÉRTÉK FELADATOK MEGOLDÁSA

Áttekintés LP és geometria Többcélú LP LP és egy dinamikus modell 2017/ Szegedi Tudományegyetem Informatikai Intézet

b) Ábrázolja ugyanabban a koordinátarendszerben a g függvényt! (2 pont) c) Oldja meg az ( x ) 2

1/ gyakorlat. Lineáris Programozási feladatok megoldása szimplex módszerrel. Pécsi Tudományegyetem PTI

Numerikus integrálás

Gazdasági matematika II. vizsgadolgozat megoldása, június 10

2. Hogyan számíthatjuk ki két komplex szám szorzatát, ha azok a+bi alakban, illetve trigonometrikus alakban vannak megadva?

Optimalizálási eljárások GYAKORLAT, MSc hallgatók számára. Analízis R d -ben

Numerikus matematika vizsga

valós számot tartalmaz, mert az ilyen részhalmazon nem azonosság.

2012. október 2 és 4. Dr. Vincze Szilvia

A KLT (Kanade Lucas Tomasi) Feature Tracker Működése (jellegzetes pontok választása és követése)

Sorozatok, sorok, függvények határértéke és folytonossága Leindler Schipp - Analízis I. könyve + jegyzetek, kidolgozások alapján

Konvex optimalizálás feladatok

OPTIMALIZÁCIÓ november 6. 1 Dr Laky Piroska

1. Számsorok, hatványsorok, Taylor-sor, Fourier-sor

Érettségi feladatok: Függvények 1/9

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

Átírás:

Paláncz Béla - Numerikus Módszerek - 211-4. Optimalizálás 4 Optimalizálás Bevezetés Az optimalizáció, egy függvény szélsőértéke helyének meghatározása, talán a legfontosabb numerikus eljárások közé tartozik. Ha valaki rendelkezik egy hatékony optimalizációs eljárással, akkor több más, első megközelítésben látszólag eltérő numerikus probémát is meg tud oldani. Mivel a szélsőérték feladatok típusai változatosak, így a megoldásukra kidolgozott módszerek is nagyon sokfélék lehetnek. 4-1 A szélsőérték-feladatok típusai A szélsőértéket (minimumot) mindig egy adott tartományban vizsgáljuk. Ha létezik a tartományban egy pont ahol igaz az, hogy ezen pont akármilyen kicsiny környezetében a függvényérték nagyobb, mint ezen pontban, akkor ott a függvénynek lokális minimuma van. Ha a tartományban több ilyen pont létezik és ezekben a függvényérték eltérők, akkor a legkisebb minimumhoz tartozó tartomány pontját globális minimumnak nevezzük, lásd 4.1 ábra. f(x) P 1 P 2 4.1 ábra Az f(x) függvény globális minimuma (P 1 ) és egy lokális minimuma (P 2 ). Ha a függvény minimumát úgy keressük, hogy közben a tartománybeli pontnak valamilyen feltételt ki kell elégítenie, akkor feltételes szélsőértékről beszélünk. A feltételeket vagy megkötéseket megkülönböztetik aszerint, hogy az egyenletekkel vagy (és) egyenlőtlenségekkel adott, lásd 4.2 és 4.3 ábrák.

2 Optimalizáció_4_211.nb f(x) P 2 g(x) P 1 4.2 ábra Az f(x) függvény minimuma megkötés nélkül (P 1 ) és a minimum g(x) = megkötéssel (P 2 ) f(x) P 2 P 1 g(x) 4.3 ábra Az f(x) függvény minimuma megkötés nélkül (P 1 ) és a minimum g(x) < egyenlőtlenséggel adott megkötéssel (P 2 ) Megjegyzések Az általunk vizsgált esetekben a keresési tartomány egy vektortér és a minimalizálandó függvény általánosan egy skalár-vektor függvény, a megkötés pedig egyenlet vagy egyenlőtlenség rendszer alakjában vektor-vektor függvénnyel adott. Gyakran előfordul, hogy a keresési tartomány végesszámú és diszkrétértékű elemekből áll, például gráfokkal reprezentálható problémák esetén, amikor a cél lehet egy optimális összefüggő élsorozat (út) megtalálása a gráfban (diszkrétértékű vagy kombinatorikus optimalizáció). Az optimalizáció kiterjeszthető olyan esetekre, amelynél a keresési tartomány a valós függvények tere, a minimalizálandó függvény egy funcionál és a megkötéseket differenciálegyenletek képviselik (variációszámítás). Előfordul, hogy nem csupán egy minimalizálandó függvényünk (célfüggvényünk) van hanem több és ezek "ellenérdekeltek" egymással szemben, azaz az egyik értékének csökkentése egy másik értékének növelését eredményezi (játékelmélet). Az is lehetséges, hogy a tartományt valószínűségi változók alkotják (sztohasztikus optimalizáció). Az optimalizációval legáltalánosabb értelemben az operációkutatás foglakozik, de a mesterséges intelligenciakutatásokban is fontos szerepet kap. A továbbiakban először a megkötés nélküli optimalizációs módszerek közül tekintünk át néhányat.

Optimalizáció_4_211.nb 3 4-2 Aranymetszés Az f (x) függvény r minimumhelyét gyakran egy [x A, x B D intervallumban keressük. A függvény az intervallumban unimodális, ha a minimumhelyig monoton csökken, attól kezdve pedig monoton nő. Az intervallum módszerek (vágáson alapuló módszerek) ezt a tulajdonságot használják ki. A módszerek alkalmazásánál két belső pontban számítjuk ki a függvény értékét. Legyen a két pont x 1 és x 2 (x A < x 1 < x 2 < x B ). Ha f (x 1 L f Hx 2 ), akkor a minimumhely az [x A, x 2 D intervallumban van, hiszen egyébként ellentmodásba kerülnénk azzal, hogy a függvény a minimumhelyig monoton csökkenő (4.4 ábra). Hasonló meggondolásból f (x 1 L f Hx 2 ) esetén a minimumhely az [x 1, x B D intervallumban van (4.1 ábra). 4.4 ábra A vágási módszerek alapelve Célszerűnek tűnik az x 1 és x 2 pontokat az intervallum középpontjához közel választani, így az egy vágással gyakorlatilag a felére csökkenthető. Egy klasszikus geometriai fogalom azonban jobb stratégiát kínál. Ez az aranymetszés módszere. Ebben az esetben illetve x 1 = l x A + H1 - ll x B ahol l az alábbi egyenlet pozitív megoldása (4.5 ábra) x 2 = H1 - ll x A + l x B λ 1- λ λ 4.5 ábra Az aranymetszés geometriai értelmezése 1 l = l 1 - l Ø l2 + l - 1 = Ø l = 5-1 2 =.6183... A módszer hatékonyságát az a speciális tulajdonsága adja, hogy az új [x 1, x B E =[x A 1, x B E intervallum, x 1 1 osztópontja azonos a korábbi x 2 osztóponttal (4.6 ábra),

4 Optimalizáció_4_211.nb f(x).382.618 1 x x A x 1 x 2 x B x A 1 x 1 1 x 2 1 x B 1 4.6 ábra Az aranymetszés módszere Az intervallum módszerek biztonságuk mellett lassúak, hiszen a felhasznált információ csupán a belső pontokban számolt két függvényérték összehasonlításából származik. 4-3 Newton-módszer Ha a függvény deriváltjának számítása nem okoz gondot akkor a Newton módszert most is alkalmazhatjuk, azzal az eltéréssel, hogy nem az f (x) = egyenletet, hanem az f '(x) = egyenletet oldjuk meg, azaz az iterációs formula, x k+1 = x k - f ' HxL f '' HxL 4-4 Többváltozós Newton-módszer A Newton módszer többváltozós esetben is alkalmazható. Ekkor f(x) egy skalár -vektor függvény, ahol xœr n. Most a Taylor-sor másodrendű tagját is figyelembe vesszük: azaz f Hx k+1 L º f Hx k L + f Hx k L T Hx k+1 - x k L + 1 2 Hx k+1 - x k L T H Hx k L Hx k+1 - x k L Df = f Hx k L T Dx + 1 2 DxT H Hx k L Dx ahol f(x) az f(x) függvény gradiens-vektora és H a Hesse- mátrix, az f(x) függvény második parciális deriváltjainak a mátrixa H HxL i,j = 2 f HxL x i x j = J fhxl N... x 1 x 1 J fhxl x n x 1............... J fhxl N... x 1 x n J fhxl x n x n A minimum szükséges feltétele alapján, azaz Df = f Hx k+1 L - f Hx k L -t deriválva Dx = x k+1 - x k szerint, a derivált zérus, N N azaz = f Hx k L T + H Hx k L Dx x k+1 = x k - HH Hx k LL -1 f Hx k L

Optimalizáció_4_211.nb 5 4-5 Gradiens módszer A Hesse-mátrix számításától eltekinthetünk, ha az ún. gradiens módszert (legmeredekebb irány módszere) alkalmazzuk, azaz egy x k pontból a legmeredekebb csökkenő irányba mozdulunk el, vagyis Tehát d k = - f Hx k L x k+1 = x k + a k d k ahol a k egy alkalmasan megválasztott pozitív lépéshossz úgy, hogy minden lépésben f Hx k+1 L < f Hx k L. 4.7 ábra A gradiens módszer elve Ez a választás helyes hiszen a megválasztott irány akkor megfelelő, ha f Hx k+1 L < f Hx k L azaz f Hx k + a k d k L < f Hx k L A baloldalt Taylor sorba fejtve azaz f Hx k L + a k Hõf Hx k LL T d k < f Hx k L a k Hõf Hx k LL T d k < Mivel a k > és véges, a d k irány akkor lejtő irányú, ha Hõf Hx k LL T d k < Az a k értékét úgy határozzuk meg, hogy az minimalizálja az f Hx k+1 L = f Hx k + a k f Hx k LL kifejezést. Ez minden lépésnél egy egyváltozós optimalizálást jelent. Megjegyzés A Newton módszer esetén és a k ª 1 d k = -HH Hx k LL -1 f Hx k L 4-6 Nelder-Mead-módszer Ha a deriváltak sem számíthatók könnyen, közvetlen kereső módszereket célszerű használni. Most itt a Nelder- Mead -féle szimplex módszert ismertetjük röviden. Az eljárás indításánál n +1 számú x 1,...,x n+1 indulópontot választunk úgy, hogy az n- dimenziós térben egy poliéder (szimplex) csúcsait alkossák (n =2 esetén ez egy háromszög). A következő pontokat és műveleteket értelmezzük, lásd 4.8 ábra.

6 Optimalizáció_4_211.nb 4.8 ábra Egy szimplex alakváltozásai 2D esetén. Az induló szimplex : f (a) < f (b) < f (c) 1) Legyen az induló szimplex (a, b, c) úgy, hogy f(a) < f(b) < f(c). 2) Ha a 3 pont elég közel van egymáshoz, akkor f(a) a minimum. 3) Különben az e pontot képezzük (c tükrözése m pontra és nyújtás) 4) ha f(e) < f(b) akkor e pontot választjuk új a c helyett, azaz az új szimplex (a, b, e), különben képezzük az r pontot (összehúzás) 5) ha f(r) < f(c) akkor az új szimplex (a, b, r) 6) ha f(r) f(b) képezzük az s 1 pontot (zsugorítás) 7) ha f(s 1 ) < f(c) akkor az új szimplex (a, s 1, b), különben az új szimplex (a, m, c 1 ) 8) az aktuális szimplex csúcsainak átnevezése: (a, b, c) és visszalépés 2)-re Az eljárás során, a fenti műveleteket alkalmazva a szimplex alakja a függvényfelület alakjához igazodik, az árkok mentén megnyúlik és szükség esetén elfordul, végül pedig a minimumhely környezetére zsugorodik. A leállás feltétele, hogy az utolsó két iterációban a szimplex súlypontjának változása egy előre definiált e hibakorlát alatt legyen. Az alábbi ábrákon az induló szimplexet és a végső, minimumot lefedő szimplexet látjuk 4.9 ábra Induló szimplex 4.1 ábra Végső szimplex

Optimalizáció_4_211.nb 7 4-7 Lagrange-módszer Keressük az f(x) függvény minimumát egy g(x) = feltétel kielégítése mellett, azaz ha g HxL = min x f HxL g 1 HxL g 2 HxL. g m HxL A Lagrange-módszer esetén az eredeti feladat helyett tekintsük az alábbi függvény megkötés nélküli minimalizálását, = L Hx, ll = f HxL + l T g HxL = f HxL + l i g i HxL ahol λ i -k a Lagrange- féle multiplikátorok (szorzók). A minimum szükséges feltétele a parciális deriváltak eltűnése, azaz és x L Hx, ll = x Hf HxLL + l T x Hg HxLL = x H f HxLL + l i g i x HHxLL = l L Hx, ll = g HxL = ahol L(x, l) egy skalár-vektor függvény, a gradiens-vektorok pedig m i=1 m i=1 x HùL = HùL x 1,..., HùL x n és l HùL = HùL l 1,..., HùL l m A minimum elégséges feltétele, hogy ezen kívül az L (x, l) függvény Hesse-mátrixa pozitív definit legyen, azaz a mátrix sajátértékei pozitívak legyenek a szélsőérték helyén. 4-9 Büntetésfüggvény-módszer A megkötéssel definiált minimalizáció helyett, most tekintsük a következő megkötés nélküli feladatot, F Hx, KL = f HxL + K Hg HxLL T g HxL ahol K egy skalár paraméter. A K paraméter értékének növelésével az új, megkötés nélküli probléma megoldása tart az eredeti egyenlőségi megkötéssel rendelkező probléma megoldásához, hiszen K növekvő értéke miatt a minimalizáló eljárás "kénytelen" csökkenteni g(x) normáját, mivel ennek súlya a célfüggvényben egyre nagyobb és ekkor a Hg HxLL T g(x) skalárszorzat nullától való kis eltérése is nagy értéket jelent a célfüggvényben, amit minimalizálni szeretnénk. Minél nagyobb a K annál nagyobb a "büntetés" a g(x) értékének a nullától történő eltérése miatt. Ezt az egyszerű kvadratikus büntetés-függvényt Courant-féle büntetés függvénynek nevezik. 1. Példa Tekintsünk egy adott V térfogatú kúpot, amelynek magasságát, h és alaplapjának sugarát, r, úgy kell meghatároznunk, hogy a kúp felülete A minimális legyen! A minimalizálandó függvény A megkötés pedig A Hr, hl = p r r 2 + h 2

8 Optimalizáció_4_211.nb g Hr, hl = 1 3 p h r2 - V = A minimalizálandó függvény a kvadratikus büntetés - függvénnyel, mint megkötés nélküli feladat, F Hr, hl = p r r 2 + h 2 + K 1 3 p h r2 - V A megkötés nélküli minimalizálás eredményét V = 15 esetén, növekvő K értékek mellett az alábbi táblázat szemlélteti. Az éles jegyeket kiemeltük. 1. Táblázat K r h 1 4.661122 527 454 753 6.591 822 727 173 977 1 4.661367 492 211 849 6.592169 226 591 7 1 4.661392 6 898 92 6.59223 813 96 156 1 4.661394463 338 137 6.59227257 573 435 1 4.6613947 467 22 6.59227626 12 582 1 4.661394746 79 536 6.5922761 21 399 Az exakt megoldás, amely a Lagrange- módszerrel adódik, 2 és r = 21ê6 15 2ê3 p 1ê3 = 4.6613947326646587456 h = 32ê3 = 6.592276558868914 1ê3 p 4-1 Karush-Kuhn-Tucker-feltételek Ha a megkötések az egyenlőség mellett egyenlőtlenségi feltételeket is tartalmaznak, azaz keressük az f(x) függvény minimumát, az alábbi megkötések mellett, A feladat Lagrange függvénye g HxL = g 1 HxL g 2 HxL. g m HxL min x f HxL = és h HxL = h 1 HxL h 2 HxL. h p HxL L Hx, l, ml = f HxL +l T g HxL +µ T h HxL Most a lokális minimum szükséges és elégséges feltételeit az ún. Karush-Kuhn- Tucker feltételek biztosítják. A szükséges feltételek: a) Egyrészt (L (x, l, m)) = vagyis

Optimalizáció_4_211.nb 9 m p Hf HxLL + l i Hg i HxLL + m i Hh i HxLL i=1 i=1 azaz a Lagrange függvény gradiens vektorának minden komponense zérus. Továbbá g (x) = és minden i = 1,..., p esetén m i h i = b) Másrészt h (x) és m azaz a m vektor egyik eleme sem negatív. Az elégséges feltétel az x minimum helyén, hogy tetszőleges dx változás esetén igaz, hogy m dx T H H f HxLL + l i H Hg i HxLL + m A H Hh A HxLL dx > i =1 A ahol h A azok az egyenlőtlenségi megkötések, amelyekre h A (x) =. Ezeket ún. aktív egyenlőtlenségi megkötésnek nevezzük. Amennyiben a m = H Hf HxLL + l i H Hg i HxLL + m A H Hh A HxLL i =1 A mátrix pozitív definit, a fenti elégséges feltétel igaz. (Lehet ettől függetlenül is igaz, de akkor a kérdés eldöntéséhez külön vizsgálat szükséges!) Megjegyzés à Ha az egyenlőségi megkötések lineárisak és a célfüggvény konvex, akkor a minimalizálási probléma konvex, azaz a KKT szükséges feltételelek elégségesek is. Ekkor a lokális minimum globális minimum is egyben. Egy függvény konvex, ha a Hesse mátrixa legalább pozitív szemidefinit. Egy mátrix akkor pozitív szemidefinit, ha nincs negatív sajátértéke. Természetesen ez a függvény egy lokális tulajdonsága. à Ha a célfüggvény és a megkötések egyaránt lineárisak akkor lineáris programozási feladatról beszélünk. 2. Példa Minimalizáljuk az függvényt a egyenlőségi és az x, azaz f Hx, y, zl = Hx - yl 2 + 5 z g 1 Hx, y, zl = x + y + z + 5 = g 2 Hx, y, zl = y - 3 z - 1 = h 1 (x,y,z) = -x egyenlőtlenségi feltételek mellett. Oldjuk meg a feladatot a KKT feltételek alapján! A Lagrange függvény L Hx, y, z, l 1, l 2, m 1 L = f Hx, y, zl + l 1 g 1 Hx, y, zl + l 2 g 2 Hx, y, zl - m 1 x

1 Optimalizáció_4_211.nb Az a) pontbeli szükséges feltételeknek megfelelő egyenletek: továbbá valamint L x Hx, y, z, l 1, l 2, m 1 L = l 1 - m 1 + 2 x - 2 y = L y Hx, y, z, l 1, l 2, m 1 L = l 1 + l 2-2 x + 2 y = L z Hx, y, z, l 1, l 2, m 1 L = l 1-3 l 2 + 5 = g 1 Hx, y, zl = x + y + z + 5 = g 2 Hx, y, zl = y - 3 z - 1 = -m 1 x = Ez egy nemlineáris egyenletrendszer az (x, y, z, l 1, l 2, m 1 ) változókra. Az egyenletrendszer megoldásai, x - 88 49 y - 7 2 z - 3 2-211 98-13 98 l 1 4-5 7 l 2 3 1 7 m 1 11 Ellenőrizzük, hogy melyik megoldás elégíti ki a b) pontbeli szükséges KKT feltételeket, azaz és Nyilván csak az első! -x m 1 Azt, hogy ez a szélsőérték valóban minimum, az elégséges KKT feltétel alapján döntjük el. Azonban esetünkben a megkötések lineárisak, tehát csak azt kell megnézni, hogy a célfüggvény a szélsőérték helyén konvex-e?! A célfüggvény Hesse-mátrixa, H (f (x,y,z))= Ennek értéke az x =, y = -3.5 és z = -1.5 helyen, Ennek sajátértékei, H = f 2 f 2 x 2 y x f 2 x y f 2 x z f 2 z x f 2 f 2 y 2 z y f 2 y z 2-2 -2 2 azaz a Hesse - mátrix szemidefinit, tehát a célfüggvény konvex, így a minimumjelölt valóban minimum! c = 4 f 2 z 2

Optimalizáció_4_211.nb 11 4-11 Genetikus algoritmus Bár a módszert elsősorban többváltozós esetben alkalmazzuk, az egyszerűség érdekében legyen a feladat egy f (x) egyváltozós függvény globális maximumának meghatározása egy adott xœ[a, b] intervallumban, azaz max f HxL x œ@a, bd Az intervallum valós számokból, de mint láttuk az intervallum elég jól lefedhető véges tizedestört alakú számokkal. Minél több jegyet alkalmazunk (minél finomabb a felbontás) annál jobb a lefedés. Most alkalmazzunk kettes számrendszert. Rögzített hosszúságú bitsorozat esetén, elvileg az összes függvényértéket a=... és b=1...11 közötti értékre kiszámítva kiválaszhatjuk azt a bitsorozatot (x értéket) amelynél a függvénynek maximuma van. Miután a maximum egy jó közelítését szeretnénk megkapni, azaz a felbontás nagy, vagyis a bitsorozat hosszú, így a kiszámítandó függvényértékek száma nagyon nagy. A számítási igény lényegesen csökkenthető ha egy keresési stratégiát alkalmazunk Mutáció A módszer lényege, hogy véletlenszerűen több kiindulási bitsorozatot (egyedet) hozunk létre. Ezek alkotják az induló populációt és egyben az első, kiinduló generációt. A populáció egyedeit aszerint értékeljük, hogy hozzájuk mekkora függvényérték tartozik. Minél nagyobb függvényérték tartozik egy egyedhez, annál nagyob az egyed fittségi indexe. Kiválasztjuk a legfittebb egyedet és belőle mutációval előállítunk egy új populációt, amely a következő generáció lesz. Az egyed mutációja, az egyed (bitsorozat) génjeinek (bit-jeiknek) kis valószínűséggel való megváltoztatását jelenti. Ezt a változtatási valószínűséget rögzítve (általában.1~.3), végighaladunk a biteken és vagy megváltozatjuk őket (-ról 1-re illetve megfordítva) vagy sem. Akkor választottuk meg helyesen a mutáció valószínűségét, ha ennek az új populációnak az átlagos fittsége nagyobb lesz, mint az előző populációjé volt. Ez módszer azonban még mindig meglehetősen lassú. Így a természet létrehozta a szexualitást. Szexualitás Ebben az esetben a populációból két egyedet választunk ki (szülők). A szülők kiválasztása nem determinisztikus, azaz nem a két legfittebb egyed lesz kiválasztva, de minél nagyobb egy egyed fittsége annál nagyobb valószínűséggel lehet szülő (rulett-módszer, amelynél az egyedet reprezentáló rulettkerék szegmense arányos az egyed fittségével)! Ha kiválasztottuk a szülőket, akkor létrehozzuk ezek utódait (gyerekek). Az utódok létrehozása valamilyen rögzített valószínűséggel (általában.5~.8) a szülők génjeinek keresztezésével (crossing) történik, különben klónozással. A két szülő két gyereket hoz létre. A keresztezés esetén rögzített valószínűséggel kiválasztunk egy bitpozíciót a szülők bitsorozatában, majd ettől a pozíciótól kezdve kicseréljük egymással a bitjeiket (génjeiket). A klónozásnál nincs csere, az utódok egyezőek a szülőkkel. Ezt követően, mindkét esetben még egy mutáció következik. A fenti módszerrel hozzuk létre az új generáció populációját. Az iteráció (generációk váltása) során figyeljük a populáció legfittebb egyede fittségi indexének változását. Ha ez a változás már elhanyagolható akkor befejezzük az iterációt. Biztonságként - arra az esetre ha az eljárás nem lenne konvergens - limitáljuk a generációk számát. A fenti algoritmus a legegyszerűbb BGA (Basic Genetic Algorithm), amelynek számos változata alakult ki az elmúlt 2 év folyamán. A mai rendszerek, pl. a Matlab és a Mathematica egyaránt tartalmazzák a módszert. 3. Példa Legyen a függvény, amelynek globális maximumát keressük a x 1 tartományban, f (x) = -mod (9 x, 1) sin (p x)) A feladat a hagyományos optimalizációs módszerekkel nem oldható meg könnyen, lásd 4.11 ábra.

12 Optimalizáció_4_211.nb 1..8.6 fhxl.4.2...2.4.6.8 1. 4.11 ábra Az f(x) = -mod(9x, 1) sin(p x)) függvény Az alábbi ábrákon a genetikus algoritmus eredményét látjuk standard paraméterekkel. x maximális fittségi index.4445.444.4435 2 4 6 8 iterációk száma 4.12 ábra A maximális fittségű egyed fittségi indexe az iterációk (generációk) számának függvényében 1..8.6.4.2...2.4.6.8 1. 4.13 ábra A generált generációk legfittebb egyedeinek elhelyezkedése