Dokorandus plénum Globális opimalizálási algorimusok korláos feladaokra 1 Global opimizaion algorihms for bound consrained problems Algorimi de opimizare globală penru probleme cu resricńii margini simple PÁL László Sapienia EME, Gazdaság- és Humánudományok Kar 530104-Csíkszereda, Szabadság ér 1 elefon: 0266-314 656, Fax: 0266-372 099 pallaszlo@sapienia.siculorum.ro Összefoglaló: a dolgoza a folyonos globális opimalizálás ké fonos émakörével, a szochaszikusvalamin az inervallum arimeikán alapuló módszerével foglalkozik. Mindké módszer eseén a feléel nélküli esee ekineük és különbözı algorimusoka vizsgálunk ezek megoldására. Valamennyi algorimus MALAB környezeben implemenálunk. Absrac: in his sudy, wo imporan field of he coninuous global opimizaion have been considered: he sochasic and he inerval arihmeic based global opimizaion. In boh cases, we have implemened differen algorihms in order o solve he bound consrained global opimizaion problem. All implemenaions were done in MALAB. Cuprins: aces aricol consideră două imporane eme ale opimizării globale: meoda sohasică şi meoda de opimizare bazaă pe arimeica inervalelor. În ambele cazuri am considera probleme de opimizare fără resricńii şi am implemena diferie algorimi penru rezolvarea acesora. oae implemenările sun făcue în MALAB. Kulcsszavak: szochaszikus módszerek, megbízhaó opimalizálás 1. BEVEZEÉS A globális opimalizálás az opimalizálásnak egy olyan ága, amelyben a cél egy nem konvex, öbb szélsıérékkel rendelkezı célfüggvény legjobb megoldásának a megalálása. Egy ilyen felada globális opimumának megkeresése komoly erıfeszíéseke igényel és kiszámíása NP-nehéz probléma. Mivel nagyon sok valós gyakorlai felada globális opimalizálási feladakén fogalmazhaó meg, ezér egy ilyen felada globális opimumának a megkeresése igazi kihívás jelen. A globális opimalizálásnak nagyon sok gyakorlai alkalmazása van, ezér az uóbbi idıben egyre nagyobb az érdeklıdés a kuaók részérıl, haékony módszerek kidolgozására. A cikk a folyonos globális opimalizálás ké fonos émakörével, a szochaszikus- valamin az inervallum arimeikán alapuló módszerével foglalkozik. Az álalános globális opimalizálási felada a kövekezı formában írhaó: min f ( x), (1) x X ahol f X n n : R a célfüggvény és X R az érelmezési aromány. A cikkben a korláos opimalizálási feladaal foglalkozunk, ahol az X érelmezési aromány inervallum alakú, azaz X = { ai xi bi, i= 1,..., n}. Az f célfüggvényrıl feléelezzük, hogy készer folyonosan differenciálhaó, viszon bizonyos eseekben elekinheünk eıl a megköésıl, ugyanis a árgyal módszerek nem sima függvényekre is jól mőködnek. 1 A kuaás részben a ÁMOP-4.2.2/08/1/2008-0008 pályáza ámogaa.
Dokorandus plénum 2. SZOCHASZIKUS GLOBÁLIS OPIMALIZÁLÁS A globális opimalizálási feladaok megoldására nem léezik algorimus, amely véges idıben ponos eredmény ad. A szochaszikus módszerek lényege, hogy vélelenszerően ponoka generálnak a keresési arományban. A kapo ponokban kiérékelik a célfüggvény, majd ez alapján próbálnak kövekezeni a globális minimumra. Ezek a módszerek nem garanálják a globális opimum megalálásá, viszon a minaponok számának növelésével 1 valószínőséggel aszimpoikusan konvergálnak a globális opimumhoz. 2.1. A GLOBAL opimalizálási módszer A GLOBAL [2] egy szochaszikus opimalizálási algorimus, amely alapjául Boender és ársai [1] algorimusa szolgál. Az algorimus ké fázisból áll: az elsı fázis a globális rész alkoja, amely öbbnyire vélelen ponokban örénı függvénykiérékelésbıl áll, a második fázis a legjobb ponokból kiinduló lokális keresés képezi. A kéfázisú módszereke mulisar módszereknek is nevezik, mivel a kiválaszo ponokból lokális keresés indíanak. Ezek a módszerek egy lokális minimumo öbbször is megalálhanak. A lokális keresés nagyon idıigényes mővele, ezér ezeknek a számá csökkeneni kell. A GLOBAL módszerben az elıbbi probléma elkerülésére klaszerezés [11] alkalmazunk, amelynek az a lényege, hogy a lokális fázisban kapo ponoka, különbözı normák felhasználásával klaszerekbe soroljuk úgy, hogy egy klaszeren belül lévı ponok bármelyikébıl az ado lokális keresı ugyanaz a lokális minimumhelye alálná meg. A GLOBAL globális opimalizálási algorimus röviden a kövekezıképpen írhaó le: 1. Lépés: Dobjunk egyenlees eloszlással N pono az X keresési arományban, és adjuk ezeke a C akuális minához. Konsruáljuk meg a ranszformál miná, megarva C ponjainak legalacsonyabb függvényérékő γ százaléká. 2. Lépés: Alkalmazzuk a klaszerezési eljárás -re. Ha összes ponja valamely klaszerhez rendelheı, akkor ugorjunk a 4. Lépésre. 3. Lépés: Alkalmazzuk a helyi keresı eljárás még klaszerezelen ponjaira. Isméeljük a 3. Lépés addig, amíg minden pon klaszerhez rendelé válik. Ha egy új lokális minimumo alálunk, akkor ugorjunk az 1. Lépésre. 4. Lépés: Haározzuk meg a alál legkisebb lokális minimum éréke, és SOP. A GLOBAL algorimus öbb módosíás és javíás aralmaz a Boender és ársai módszeréhez képes. Ezek az alábbiak: A Single Linkage klaszerezési módszer használja A klaszer ávolság kiszámíásában nem használja a Hesse márixo Nem használja a gradiens feléel Nem használ legmeredekebb lejınek megfelelı lépés a kiinduló mina ranszformálásához Nem számol konfidencia inervallumo a globális minimum érékére Az eredei problémá skálázza a jobb numerikus sabiliás érdekében A feni módosíásokon úl, a GLOBAL aralmaz ké új helyi keresı eljárás: egy kvázi-newon eljárás a DFP (Davidon-Flecher-Powell) formulával, illeve egy vélelen séá használó közvelen keresési módszer, az UNIRANDI eljárás. Az algorimus eredeileg Forran és C nyelveken vol kódolva és képes vol megoldani feladaoka 15 dimenzióig. A módszer haékonyságá és megbízhaóságá sandard feladaokon eszelék. Ezen kívül számos gyakorlai feladara is alkalmazák. A GLOBAL módszer az 1980-as években közölék és alkalmazák korláos opimalizálási feladaokra. Az azóa elel idı ala, a számíógépes környeze soka válozo, ezér az vol a célunk, hogy a régi módszer frissíve alkalmazzuk az új számíógépes környezeben, javíva annak megbízhaóságá.
Dokorandus plénum A régi algorimus számos ponon sikerül javíani, amelyek közül a fonosabbak: MALAB környezeben van kódolva, használva ennek ömbösíe mőveleei, így növelve a módszer haékonyságá A DFP helyi keresı helye a korszerőbb BFGS (Broyden-Flecher-Goldfarb-Shanno) módszer használjuk Haékonyabb egyenlees- és normál eloszlású vélelen számgeneráor használunk Az UNIRANDI helyi keresı sikerül úgy javíani, hogy segíségével magasabb dimenziós feladaoka is meg udunk oldani 2.2. Numerikus eredmények Ké különbözı numerikus esze végezünk az új, javío GLOBAL módszerrel. Az elsınek az vol a célja, hogy összehasonlísuk az új módszer haékonyságá és robuszusságá a régi módszerével [2]. A második eseben összehasonlíouk a C-GRASP [5] nevő módszerrel, amely a GLOBAL-hoz hasonlóan szinén kéfázisú módszer. A numerikus eszeke egy 3.0 GHz-es P4 processzorral és 1 Gb memóriával rendelkezı számíógépen végezük. A fuási idı mérésére a sandard idıegysége használuk (a Shekel-5 függvény kiérékelése 1000-szer az x = (4.0,4.0,4.0,4.0) ponban). A GLOBAL három fuási paraméer aralmaz: a generálandó minaponok számá, a legjobb ponok számá és a lokális keresı megállásához szükséges éréke. Az elsı eszben, a régi GLOBAL eseén is használ függvényeke eszelük. Minden feladara 100 függelen fuás hajounk végre és rögzíeük az álagos függvényhívások számá valamin az álagos CPU idı. A szükséges paraméereke úgy állíouk be, hogy az algorimus minden eseben megalála a globális opimumo. A részlees eredmények megalálhaók a [8] cikkben. Összegzéskén elmondhaó, hogy az új GLOBAL haékonysága legalább annyira jó min a régi algorimusé, míg a robuszusságo jelenısen sikerül javíani. A C-GRAPS egy deriválmenes globális opimalizáló módszer, ezér az összehasonlíásokban a GLOBAL eljárás az UNIRANDI helyi keresıvel használuk. A eszfüggvények halmaza a C-GRASP eseén használ 14 függvénybıl áll, amelyek eseén ismer vol a globális opimum éréke. Mindké módszerben egy közös megállási feléel alkalmazunk. Az algorimus akkor áll le, ha a célfüggvény éréke megfelelı ponossággal közelíee a globális opimum éréké. Minden felada eseén 100 függelen fuás hajounk végre. Rögzíeük a sikeres fuások százalékos számá, a szükséges CPU idı valamin a függvényhívások számá. Ekkor is úgy állíouk be az algorimus paraméerei, hogy valamennyi eseben megalálja a globális opimumo. A esz eredmények és az összehasonlíás megalálhaó a [8] cikkben. Az összeveés eredményekén elmondhaó, hogy a függvényhívások ekineében a GLOBAL haékonyabb, min a C-GRASP algorimus. 2.3. Alkalmazás A vizsgálandó felada opimális járadékfüggvény ervezése rugalmas nyugdíjrendszerre [4]. Feléelezzük, hogy az egyéneknek magáninformációjuk van sajá várhaó élearamukról. A kormányza célja: egy olyan nyugdíjmechanizmus (járulékkulcs és a szolgálai idııl függı járadékfüggvény) ervezése, amely maximalizál egy ársadalmi jóléi függvény, és kielégí egy ársadalmi kölségveési korláo. A probléma maemaikai modellje: amelyre max ( b, R ) = S ψ ( v ) f (2) v = [ u w( b )] R w( b ), = S,...,, (3) + = S [(τ + b ) R b ] f = 0, (4) v = v + w( b ), = S,..., 1 (5) + 1.
Dokorandus plénum A feni modellben egy egyén ípusa, amely a várhaó élearamo jeleni, f a ípus gyakorisága, τ a járulékkulcs, b az éves élejáradék, amelye R évesen kap az egyén, v az élepályahasznosságfüggvény, amely a dolgozói és nyugdíjas szakasz összege. A feladaban megköveeljük, hogy a népesség álagos várhaó egyenlege nulla legyen (4-es egyenle) és bevezejük a szomszédos érdekelségi feléeleke (5-ös egyenle), amely szerin a ípusnak nem érdemes + 1ípusúnak mondania magá. A cél egy opimális b (R) nyugdíjjáradék-szolgálaai idı séma ervezése, amely maximalizál egy konkáv ársadalmi jóléi függvény (2-es egyenle). A modell nem egy egyszerő korláos opimalizálási felada, ugyanis aralmaz egyenlıség ípusú feléeleke. Ezér a megoldás során a bőneıfüggvények módszeré alkalmazuk ezek kezelésére. A feladao a GLOBAL segíségével sikeresen megoldouk. A részlees eredmények megalálhaók a [6] cikkben. 3. INERVALLUMOS MÓDSZEREK 3.1. Inervallum arimeika A számíógépeken örénı számábrázolás elerjed, haékony formája a lebegıponos számábrázolás, amely kéfaja hibá is eredményezhe. Elsıdlegesen a valós számok rögzíe hosszúságú kerekíe ábrázolásakor, másodsorban az ebbıl eredı hibák ovábbi számíások során való halmozódáskor. Az inervallum analízis elve mindké hibá kiküszöböli oly módon, hogy a valós szám közelíı ábrázolása helye az éréke egy alsó és felsı korlából álló számpárral jellemzi, amelyek már ponosan ábrázolhaók lebegıponos arimeika segíségével. Az inervallum arimeika ehá valós számok helye inervallumokkal számol, így a számíásaink mindig megbízhaóak lesznek. A négy arimeikai alapmővele inervallumokra való kierjeszése a kövekezıképpen adhaó meg: [ a, b] + [ c, = [ a+ b, c+, (6) [ a, b] [ c, = [ a d, b c], (7) [ a, b] [ c, = [min( ac, ad, bc, bd),max( ac, ad, bc, bd)], (8) [ a, b]/[ c, = [ a, b] [1/ d,1/ c], ha 0 [ c,. (9) A fen megado inervallum arimeikának léezik olyan kierjeszése, amelyben az oszás mőveleénél megengede a 0 [ c, aralmazás is. Ezen kierjeszés eseén, az oszás során nem kapunk kompak inervallumo. A kierjesze inervallum arimeiká nem használhajuk minden felada eseén, viszon kimondoan hasznos az inervallumos Newon módszerekben, egyenlerendszerek megoldására. Az inervallumok számíógépes megvalósíása során azzal a problémával aláljuk szemben magunka, hogy az eredményinervallum haárai nem minden eseben ábrázolhaok számíógépen. Ilyen eseben kifelé fogjuk kerekíeni az inervallum haárponjai, azaz vesszük például a legközelebbi számíógépen ábrázolhaó számo. A leheséges kerekíési módoka az IEEE 754 szabvány definiálja ponosan. Ezek megfelelı alkalmazásával az eredmény egy megbízhaó befoglalásá kapjuk, vagyis a számíógépen kapo eredményinervallum mindig aralmazni fogja a ponos eredmény. Számos programcsomag alálhaó, amelyekben meg van valósíva a kifelé kerekíés, így leheıség adódik inervallum arimeikai számíásokra. A számíásaink során az INLAB [12] csomago használuk, amely MALAB ala fuahaó. Az INLAB csomag aralmazza öbbek közö az inervallumos mőveleeke, számos elemi függvény inervallumos megvalósíásá, auomaikus differenciálás. Az inervallumos módszereke számos erüleen használák sikeresen, így számos mérnöki feladaban, roboikában, pénzügy- és dönéselméleben, számíógéppel ámogao bizonyíásokban. 3.2. Inervallumos módszerek a globális opimalizálásban Az inervallum arimeiká használó globális opimalizálási módszerek megbízhaó módon alálják meg a globális opimumo. Ezek a módszerek öbbnyire a korláozás és széválaszás elvé
Dokorandus plénum használják, azaz a keresési ere feloszják részerekre (széválaszás), a részereken alsó és felsı korláo adva a célfüggvény leheséges érékeire (korláozás), majd eldobják azoka a részereke, amelyeken nem kapnak jobb megoldás, min az eddig ismer legjobb. Ez az eljárás kombinálhajuk az inervallum arimeikai eszközárával, amely ermészees módon szolgálaja a megfelelı alsó és felsı korláoka az egyes részfeladaokra, valamin kifinomul echnikáka azon részek elveésére, amelyek garanálan nem aralmaznak globális opimumo. Az inervallum arimeikán alapuló, korláozás és széválaszás elven mőködı algorimus álalános alakja a kövekezı: 1. Lépés: Legyen X a kezdı inervallum, L a munkalisa, Q pedig az eredménylisa. ~ Számísuk ki az F (X ) befoglalás, legyenek L= {( X, F( X ))}, Q = {} és f = F( c), c X. 2. Lépés: Amíg L nem üres, hajsuk végre a kövekezı lépéseke. i 3. Lépés: Vegyünk le egy ( Y, F( Y )) eleme az L lisáról. Osszuk fel az Y inervallumo az Y, i = 1,..., p részinervallumokra. 4. Lépés: Minden i = 1,..., p -re számísuk ki az F ( Y i ) befoglalásoka, alkalmazzunk gyorsíó i eszeke az Y eliminálására, majd frissísük az ~ f éréké. 5. Lépés: Minden i = 1,..., p -re, amennyiben bizonyos feléelek eljesülnek, legyen i i i i Q = Q+ ( Y, F( Y )) különben legyen L = L+ ( Y, F( Y )). Menjünk a 2. Lépésre. A feni eljárásra ámaszkodva ké másik inervallum alapú algorimus muaunk be, amelyek csak egy, a célfüggvény kiszámíására szolgáló szubruinra ámaszkodnak. Más információ nem használnak a globális opimalizálási problémára vonakozóan. Célunk az vol, hogy könnyen használhaó, megbízhaó globális opimalizáló programo készísünk. Mindké algorimus MALAB környezeben valósíouk meg az INLAB [12] csomago használva, amely aralmazza a szükséges inervallum arimeikai mőveleeke és az auomaikus differenciálás is. Az implemenálás során köveük a hasonló C-XSC alapú program [10] srukúrájá. Az elsı algorimus egy egyszerő váloza, amely nem aralmaz gyorsíó eszeke és segíségével nem sima függvények minimumá is meg udjuk keresni. A második algorimus egy összeeebb váloza, amely a kövekezı gyorsíó eszeke aralmazza: középponi esz, konkaviási esz, monooniási esz és inervallumos Newon lépés. A ermészees befoglaláson kívül a középponi formuláka is alkalmazzuk min befoglaló függvény. A keresési arományok feloszására szeleelés, illeve fejle feloszási irány válaszó szabályoka használunk. A szeleelés az jeleni, hogy az inervallumo feloszjuk három másik inervallumra a ké legmegfelelıbb irány használva. A feloszási irány megválaszása az ún. C ípusú szabály [3] alapján örénik. Az algorimus egy-dimenziós feladaok megoldására is alkalmazhaó. Ebben az eseben a szeleelés helye egy sima keé oszás használunk. A feloszás során kelekeze inervallumoka rendeze lisában ároljuk, valamilyen rendezési * szabály alapján. Az algorimusban a pf heuriszikus paraméer [3] használjuk a lisa rendezésére. * Ponosabban, mindig a lisa legnagyobb pf érékkel rendelkezı inervallumá oszjuk fel. Mindké algorimus numerikusan eszelük, amelynek célja vol megvizsgálni az implemenál algorimusok haékonyságá a szokásos haékonysági muaókkal (függvényhívások száma, gradienshívások száma, Hesse márix kiérékelések száma, maximális munka lisa hossza és szükséges CPU idı), valamin összehasonlíani a kapo eredményeke a C-XSC alapú algorimus muaóival. A eszfeladaok közö o vol az összes sandard globális opimalizálási függvény is. Hasonló felada halmazon végezünk eszelés a [3] cikkben. Az összehasonlíás eredményeképpen elmondhaó, hogy a haékonysági muaók (egy, a CPU idı kivéelével) megegyeznek vagy hasonlók. Ez nagyjából annak udhaó be, hogy a ké algorimus srukúrája közel megegyezik. A CPU idı eseén nagy elérés figyelheı meg, amely a MALAB inerpreer módban való mőködésének udhaók be. Ennek ellenére a MALAB környezeben az INLAB alapú algorimus egyszerően használhaó és hasznos modellezı eszköz lehe opimalizálási feladaok kezdei anulmányozására. A részlees összehasonlíás eredményei megalálhaók a [7, 9] cikkekben.
Dokorandus plénum HIVAKOZÁSOK [1] C.G.E. Boender, A.H.G. Rinnooy Kan, G.. immer, and L. Sougie. A sochasic mehod for global opimizaion. Mahemaical Programming, 1982, 22:125-140. [2]. Csendes. Nonlinear parameer esimaion by global opimizaion - efficiency and reliabiliy. Aca Cyberneica, 1988, 8:361-370. [3]. Csendes. New subinerval selecion crieria for inerval global opimizaion. Journal of Global Opimizaion, 2001, 19:307-327. [4] P. Esı and A. Simonovis. Opimális járadékfüggvény ervezése rugalmas nyugdíjrendszerre. Közgazdasági Szemle, 2003, 50:99-111. [5] M.J. Hirsch, C.N. Meneses, P.M. Pardalos, and M.G.C. Resende. Global opimizaion by coninuous GRASP. Opimizaion Leers, 2007, 1:201-212. [6] L. Pál and. Csendes. Improvemens on he GLOBAL Opimizaion Algorihm wih Numerical ess. In Proceedings of he 8h Inernaional Conference on Applied Informaics (ICAI2007), Eger (Hungary), 2007, pages 101-109. [7] L. Pál and. Csendes. INLAB implemenaion of an inerval global opimizaion algorihm, Opimizaion Mehods and Sofware, 2009, 24:749-759. [8]. Csendes, L. Pál, J.O.H. Sendín, and J.R. Banga. he GLOBAL Opimizaion Mehod Revisied, Opimizaion Leers, 2008, 2:445-454. [9]. Csendes and L. Pál. A basic inerval global opimizaion procedure for Malab/INLAB. In Proceedings of Inernaional Symposium on Nonlinear heory and is Applicaions (NOLA2008), Budapes, 2008, pages 592-595. [10] M.C. Markó, J. Fernández, L.G. Casado, and. Csendes. New inerval mehods for consrained global opimizaion. Mahemaical Programming, 2006, 106:287-318. [11] A. H. G. Rinnooy Kan and G.. immer. Sochasic global opimizaion mehods Par I: Clusering mehods. Mahemaical Programming, 1987, 39:27-56. [12] S.M. Rump. INLAB - Inerval Laboraory. In. Csendes, edior, Developmens in Reliable Compuing, Kluwer, Dordrech, 1999, pages 77-104.