GENETSKI ALGORITMI KAO OPTIMIZACIJSKI ALAT - prednosti i nedostaci u odnosu na egzaktne matematičke metode

Σχετικά έγγραφα
Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011.

18. listopada listopada / 13

- pravac n je zadan s točkom T(2,0) i koeficijentom smjera k=2. (30 bodova)

3.1 Granična vrednost funkcije u tački

radni nerecenzirani materijal za predavanja R(f) = {f(x) x D}

1.4 Tangenta i normala

Funkcije dviju varjabli (zadaci za vježbu)

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x

Linearna algebra 2 prvi kolokvij,

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka

1 Promjena baze vektora

Operacije s matricama

(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k.

TRIGONOMETRIJSKE FUNKCIJE I I.1.

Tri osnovna tipa optimizacije struktura. Topološka optimizacija betonskih konstrukcija. Dimenzionalna optimizacija. Optimizacija oblika

SISTEMI NELINEARNIH JEDNAČINA

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1

ELEKTROTEHNIČKI ODJEL

radni nerecenzirani materijal za predavanja

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011.

Linearna algebra 2 prvi kolokvij,

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1.

Matematička analiza 1 dodatni zadaci

Numerička matematika 2. kolokvij (1. srpnja 2009.)

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto

Riješeni zadaci: Limes funkcije. Neprekidnost

Dijagonalizacija operatora

Računarska grafika. Rasterizacija linije

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama.

RIJEŠENI ZADACI I TEORIJA IZ

INTELIGENTNO UPRAVLJANJE

Kaskadna kompenzacija SAU

Modificiran genetski algoritam za konstrukciju BIBD-a. Odjel za matematiku, Sveučilište u Rijeci

Neka je a 3 x 3 + a 2 x 2 + a 1 x + a 0 = 0 algebarska jednadžba trećeg stupnja. Rješavanje ove jednadžbe sastoji se od nekoliko koraka.

MATEMATIKA Pokažite da za konjugiranje (a + bi = a bi) vrijedi. a) z=z b) z 1 z 2 = z 1 z 2 c) z 1 ± z 2 = z 1 ± z 2 d) z z= z 2

Teorijske osnove informatike 1

Sortiranje prebrajanjem (Counting sort) i Radix Sort

2. Ako je funkcija f(x) parna onda se Fourierov red funkcije f(x) reducira na Fourierov kosinusni red. f(x) cos

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012

PROSTORNI STATIČKI ODREĐENI SUSTAVI

( , 2. kolokvij)

Elementi spektralne teorije matrica

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović

Funkcija gustoće neprekidne slučajne varijable ima dva bitna svojstva: 1. Nenegativnost: f(x) 0, x R, 2. Normiranost: f(x)dx = 1.

Cauchyjev teorem. Postoji više dokaza ovog teorema, a najjednostvniji je uz pomoć Greenove formule: dxdy. int C i Cauchy Riemannovih uvjeta.

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti).

Računarska grafika. Rasterizacija linije

16 Lokalni ekstremi. Definicija 16.1 Neka je A R n otvoren, f : A R i c A. Ako postoji okolina U(c) od c na kojoj je f(c) minimum

Riješeni zadaci: Nizovi realnih brojeva

7 Algebarske jednadžbe

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A.

MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15

π π ELEKTROTEHNIČKI ODJEL i) f (x) = x 3 x 2 x + 1, a = 1, b = 1;

III VEŽBA: FURIJEOVI REDOVI

numeričkih deskriptivnih mera.

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je,

IZVODI ZADACI (I deo)

MATEMATIKA 2. Grupa 1 Rexea zadataka. Prvi pismeni kolokvijum, Dragan ori

BIPOLARNI TRANZISTOR Auditorne vježbe

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f

KONVEKSNI SKUPOVI. Definicije: potprostor, afin skup, konveksan skup, konveksan konus. 1/5. Back FullScr

5. Karakteristične funkcije

Prostorni spojeni sistemi

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI)

Ispitivanje toka i skiciranje grafika funkcija

21. ŠKOLSKO/OPĆINSKO/GRADSKO NATJECANJE IZ GEOGRAFIJE GODINE 8. RAZRED TOČNI ODGOVORI

APROKSIMACIJA FUNKCIJA

MATEMATIKA 1 8. domaća zadaća: RADIJVEKTORI. ALGEBARSKE OPERACIJE S RADIJVEKTORIMA. LINEARNA (NE)ZAVISNOST SKUPA RADIJVEKTORA.

Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z.

Sume kvadrata. mn = (ax + by) 2 + (ay bx) 2.

PRIMJER 3. MATLAB filtdemo

VJEŽBE 3 BIPOLARNI TRANZISTORI. Slika 1. Postoje npn i pnp bipolarni tranziostori i njihovi simboli su dati na slici 2 i to npn lijevo i pnp desno.

Više dokaza jedne poznate trigonometrijske nejednakosti u trokutu

Prikaz sustava u prostoru stanja

M086 LA 1 M106 GRP Tema: Uvod. Operacije s vektorima.

41. Jednačine koje se svode na kvadratne

Zavrxni ispit iz Matematiqke analize 1

Verovatnoća i Statistika I deo Teorija verovatnoće (zadaci) Beleške dr Bobana Marinkovića

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA

DUALNOST. Primjer. 4x 1 + x 2 + 3x 3. max x 1 + 4x 2 1 3x 1 x 2 + x 3 3 x 1 0, x 2 0, x 3 0 (P ) 1/9. Back FullScr

Eliminacijski zadatak iz Matematike 1 za kemičare

SEMINAR IZ KOLEGIJA ANALITIČKA KEMIJA I. Studij Primijenjena kemija

TRIGONOMETRIJA TROKUTA

Uvod u teoriju brojeva

POVRŠINA TANGENCIJALNO-TETIVNOG ČETVEROKUTA

VJEROJATNOST I STATISTIKA Popravni kolokvij - 1. rujna 2016.

Determinante. a11 a. a 21 a 22. Definicija 1. (Determinanta prvog reda) Determinanta matrice A = [a] je broj a.

Matematičke metode u marketingumultidimenzionalno skaliranje. Lavoslav ČaklovićPMF-MO

Funkcija (, ) ima ekstrem u tocki, ako je razlika izmedju bilo koje aplikate u okolini tocke, i aplikate, tocke, : Uvede li se zamjena: i dobije se:

POTPUNO RIJEŠENIH ZADATAKA PRIRUČNIK ZA SAMOSTALNO UČENJE

9. GRANIČNA VRIJEDNOST I NEPREKIDNOST FUNKCIJE GRANIČNA VRIJEDNOST ILI LIMES FUNKCIJE

PARNA POSTROJENJA ZA KOMBINIRANU PROIZVODNJU ELEKTRIČNE I TOPLINSKE ENERGIJE (ENERGANE)

5. PARCIJALNE DERIVACIJE

Ĉetverokut - DOMAĆA ZADAĆA. Nakon odgledanih videa trebali biste biti u stanju samostalno riješiti sljedeće zadatke.

( , treći kolokvij) 3. Na dite lokalne ekstreme funkcije z = x 4 + y 4 2x 2 + 2y 2 3. (20 bodova)

1 UPUTSTVO ZA IZRADU GRAFIČKOG RADA IZ MEHANIKE II

5 Ispitivanje funkcija

Transcript:

Fakultet SEMINARKO http://seminarko.weebly.com Seminarski rad iz kolegija XY ak. godina 2008/09. GENETSKI ALGORITMI KAO OPTIMIZACIJSKI ALAT - prednosti i nedostaci u odnosu na egzaktne matematičke metode Predmetni nastavnici: dr.sc. XY dipl. ing. XZ SEMINARKO Zagreb, lipanj 2009.

SADRŽAJ: 1. UVOD 2. GENETISKI ALGORITM 2.1. Genetika (biologija) 2.2. Genetički algoritam 2.3. Terminologija genetičkih algoritama 2.3.1. Funkcija dobrote, cilja,.. 2.3.2. Selekcija 2.4. Genetički operatori 2.4.1. Križanje 2.4.2. Mutacija 2.4.3. Parametri algoritma 2.5. Opis rješavanja problema GA pomoću softvera MATLAB (primjer) 3. MATEMATIČKE METODE OPTIMIRANJA 3.1. Definiranje funkcije cilja 3.2. Lokalni i globalni minimumi funkcije cilja 3.3. Pronalaženje minimuma funkcije jedne varijable 3.3.1. Redukcija unimodalnog intervala 3.3.2. Metoda kvadratne interpolacije 3.4. Postupci direktnog traženja za određivanje minimuma funkcija više varijabli 3.4.1. Traženje po koordinatnim osima 3.4.2. Postupak po Hookeu i Jeevesu 3.4.3. Simpleks postupak po Nelderu i Meadu 3.5. Opis programskog simulatora Simpleks algoritma (primjer) 3.5.1. Sučelje programa simulatora 3.6. Ciljne funkcije 4. ZAKLJUČAK 5. LITERATURA 2

1 UVOD Ljudi optimiraju - putuju uglavnom najkraćim putem, avio-kompanije raspoređuju osoblje i avione tako da minimiziraju troškove, u industriju se proizvodni procesi oblikuju i provode tako da se maksimizira produktivnost. Priroda optimira - fizički sustavi teže stanju najmanje energije. Molekule u izoliranim kemijskim sustavima međusobno djeluju jedna s drugom sve dok ukupna potencijalna energija njihovih elektrona ne dostigne minimum. Zrake svijetlosti se šire stazom koja minimizira vrijeme rasprostiranja zrake. Postupci optimiranja bitan su alat u znanstvenom odlučivanju i u analizi fizikalnih sustava. Da bi se uopće moglo govoriti o optimiranju, najprije je potrebno identificirati cilj, odnosno kvantitativnu mjeru ponašanja sustava kojeg se proučava. Cilj može biti zarada, vrijeme, potencijalna energija ili neka druga veličina ili kombinacija veličina koja se može predstaviti numeričkom vrijednošću. Cilj ovisi o određenim karakteristikama sustava koje se nazivaju varijable. Cilj postupaka optimiranja je odrediti kombinaciju vrijednosti varijabli koje će najbolje ispunjavati cilj. Proces definiranja cilja, varijabli i eventualnih ograničenja za dati problem se naziva postupak modeliranja. Oblikovanje dobrog modela je prvi korak, a vrlo često i najvažniji. Ako je model prejednostavan tada neće dobro opisivati sustav koji se želi optimirati, ali s druge strane ako je model presložen postupak optimiranja može postati pretežak za rješavanje. Nakon što se definirao model mogu se koristiti postupci optimiranja kako bi se pronašlo rješenje problema. Postupci optimiranja se u praksi ostvaruju implementacijom algoritama optimiranja na računalima. Ne postoji jedan općeniti algoritam optimiranja koji je prikladan za sve probleme. U praksi postoji veliki broj algoritama, od kojih je svaki prikladan za određenu skupinu optimizacijskih problema. 3

2 GENETISKI ALGORITM 2.1 Genetika (biologija) Evolucija je neprekidan proces prilagođavanja živih bića na svoju okolinu, tj. na uvjete u kojima žive. U prirodi vlada nemilosrdna borba za opstanak u kojoj pobjeđuju najbolji, a loši umiru. Da bi neka vrsta tijekom evolucije opstala, mora se prilagođavati uvjetima i okolini u kojoj živi, jer se i uvjeti i okolina mijenjaju. Priroda selekcijom jedinki regulira veličinu populacije. Dobra svojstva jedinki (otpornost na razne bolesti, sposobnost trčanja, itd.) pomažu preživjeti u neprestanoj borbi za opstanak. Danas se pretpostavlja da su sva svojstva jedinke zapisana u kromosomima. Kromosomi su lančaste tvorevine koje se nalaze u jezgri svake stanice, što znači da svaka stanica biljnog ili životinjskog podrijetla posjeduje sve informacije o svim svojstvima jedinke. Skup informacija koje karakteriziraju jedno svojstvo zapisano je u jedan djelić kromosoma koji se naziva gen. Kromosomi dolaze uvijek u parovima: jedan kromosom je od oca, a drugi od majke. Dakle, za svako svojstvo postoje dva gena ili dvije informacije. Takav par gena gdje jedan i drugi nose informaciju za jedno svojstvo naziva se alel. U genetskom paru geni mogu biti ravnopravni ili neravnopravni, tako da je jedan dominantan, a drugi recesivan. U neravnopravnom paru dominantan gen određuje rezultantno svojstvo, dok se uz ravnopravni par gena dobiva svojstvo koje je negdje između svojstava oca i majke. Sva svojstva jedinke obično nisu zapisana u samo jednom paru kromosoma, već u nekoliko desetaka parova kromosoma. Npr., čovjek ima 46 kromosoma odnosno 23 para kromosoma. 2.2 Genetski algoritam Genetski algoritam se primjenjuje i daje dobre rezultate u području učenja kod neuronskih mreža, pri optimiranju umjetnih (tehnoloških, tehničkih) sustava na temelju optimizacije prirodnih sustava kao što su: traženje najkraćeg puta problemi raspoređivanja procesa problem trgovačkog putnika optimiranje upita nad bazom podataka strategije računalnih igara problem određivanja parametara transportni problemi sustava 4

GA je heuristička metoda optimiranja koja imitira prirodni evolucijski proces. Evolucija je robustan proces pretraživanja prostora rješenja. U GA ključ selekcije je funkcija cilja, koja na odgovarajući način predstavlja problem koji se rješava. Slično kao što su okolina i uvjeti u prirodi ključ selekcije nad nekom vrstom živih bića, tako je i funkcija cilja ključ selekcije nad populacijom rješenja u genetskom algoritmu. Naime, u prirodi jedinka koja je najbolje prilagođena uvjetima i okolini u kojoj živi ima najveću vjerojatnost preživljavanja i parenja, a time i prenošenja svojega genetskog materijala na svoje potomke. Za genetički algoritam jedno rješenje je jedna jedinka. Selekcijom se odabiru dobre jedinke koje se prenose u slijedeću populaciju, a manipulacijom genetskog materijala stvaraju se nove jedinke. Takav ciklus selekcije, reprodukcije i manipulacije genetskim materijalom jedinki ponavlja se sve dok nije zadovoljen uvjet zaustavljanja evolucijskog procesa. Snaga GA leži u činjenici da su sposobni odrediti položaj globalnog optimuma u prostoru s više lokalnih ekstrema, u tzv. višemodalnom prostoru. 2.3 Terminologija genetičkih algoritama 2.3.1 Funkcija cilja, dobrote, fitness Funkcija dobrote ili funkcija ocjene kvalitete jedinke se u literaturi još naziva fitness funkcija, funkcija sposobnosti, funkcija cilja ili eval funkcija i u najjednostavnijoj interpretaciji ekvivalent je funkciji koju treba optimizirati. Funkcija cilja je ključ za proces selekcije. 2.3.2 Selekcija Svrha selekcije je čuvanje i prenošenje dobrih svojstava na slijedeću generaciju jedinki. Selekcijom se odabiru dobre jedinke koje će sudjelovati u slijedećem koraku, u reprodukciji. Na taj način se dobri geni ili dobri genetski materijal sačuva i prenose na slijedeću populaciju, a loši odumiru. Postupak selekcije bi se mogao ostvariti sortiranjem i odabirom najboljih jedinki, međutim, takav postupak dovodi do prerane konvergencije genetskog algoritma, tj. proces optimiranja se praktično završava u svega nekoliko prvih iteracija. Problem je u tome što se ovim postupkom izgubi dobar genetski materijal koji mogu sadržavati loše jedinke. Zato je potrebno osigurati i lošim jedinkama da imaju neku (manju) vjerojatnost preživljavanja. S druge strane, bolje jedinke trebaju 5

imati veću vjerojatnost opstanka, tj. trebaju imati veću vjerojatnost sudjelovanja u procesu reprodukcije. Najbolji kromosomi imaju više kopija, prosječni ostaju, najlošiji umiru. Selekcijski procesje je baziran na okretanju kotaču ruleta pop_size puta. Svaki puta se odabire novi kromosom za novu populaciju. 2.4 Genetički operatori Osim selekcije, reprodukcija je druga važna karakteristika genetskog algoritma. U reprodukciji sudjeluju dobre jedinke koje su preživjele proces selekcije. Reprodukcija je razmnožavanje s pomoću genetskog operatora križanja. Tijekom procesa reprodukcije dolazi i do slučajnih promjena nekih gena ili mutacije. 2.4.1 Križanje U procesu križanja (crossover) sudjeluju dvije jedinke koje se nazivaju roditelji. Dakle, križanje je binarni operator. Križanjem nastaje jedna ili dvije nove jedinke koje se nazivaju djeca. Najvažnija karakteristika križanja jest da djeca nasljeduju svojstva svojih roditelja. Ako su roditelji dobri (prošli su proces selekcije), tada ce najvjerojatnije i dijete biti dobro, ako ne i bolje od svojih roditelja. Križanje s jednom točkom prekida Pretpostavlja se da je upravo operator križanja to što razlikuje genetski algoritam od ostalih metoda optimiranja. To se ne može reci za operator mutacije kojega možemo sresti i kod simuliranog kaljenja i kod evolucijske strategije. 2.4.2 Mutacija Drugi operator koji je karakterističan za genetski algoritam je mutacija ili slučajna promjena jednog ili više gena. Mutacija je operator jer djeluje nad jednom jedinkom. 6

Ako vjerojatnost mutacije teži k jedinici, tada se algoritam pretvara u algoritam slučajne pretrage prostora rješenja. S druge strane, ako vjerojatnost mutacije teži k nuli, postupak ce najvjerojatnije već u početku procesa optimiranja stati u nekom lokalnom optimumu. Jednostavna mutacija svaki bit kromosoma mijenja s jednakom vjerojatnošću p m. Jednostavna mutacija Mutacijom se pretražuje prostor rješenja i upravo je mutacija mehanizam za izbjegavanje lokalnih minimuma. Ako cijela populacija završi u nekom od lokalnih minimuma, jedino slučajnim pretraživanjem prostora rješenja pronalazi se bolje rješenje. Uloga mutacije je i u obnavljanju izgubljenog genetskog materijala. Dogodi li se, npr. da sve jedinke populacije imaju isti gen na određenom mjestu u kromosomu, samo križanjem se taj gen nikad ne bi mogao promijeniti. Ako je riječ o binarnom prikazu kromosoma, time je izgubljeno čak pola prostora pretraživanja. 2.4.3 Parametri algoritma Genetički algoritam ima slijedeće parametre: veličina populacije broj generacija (iteracija) vjerojatnost križanja i mutacije. Vjerojatnost mutacije ovisi o broju jedinki za eliminaciju, jer upravo je toliko jedinki potrebno generirati križanjem. Za različite vrijednosti parametara algoritma, algoritam daje različite rezultate: brže ili sporije dolazi do boljeg ili lošijeg rješenja. 2.5 Opis rješavanja problema GA pomoću softvera MATLAB (primjer) Primjer dolazi iz područja inteligentnog planiranja tehnoloških procesa. Traži se potrebno vrijeme izrade diskova strojnom obradom odvajanjem čestica. Varijable u funkciji cilja nose geometrijske, proizvodne i tolerancijske značajke. Kratak postupak u dva koraka: 7

1. Spremanje funkcije cilja u obliku M-file 2. Otvaranje grafičkog sučelja - Genetic Algoritam Tool Potrebno je pozvati funkciju cilja, upisati br. varijabli i vektorski definirati ograničenja (ukoliko postoje). Nakon toga se podese operatori (br. populacije, križanje i mutacija) i algoritam je spreman za rad. funkcija ograničenja populacija funkcija cilja br. varijabli križanje ograničenja varijabli mutacija generacije pokretanje rješenja 8

Rješenje se dobije u brojčanom obliku sa popratnim grafovima. 3 MATEMATIČKE METODE OPTIMIRANJA 3.1 Definiranje funkcije cilja Funkcija cilja je jednoznačna funkcija koja mora opisivati sva svojstva koja želimo postići optimiranjem modela. Na prvi pogled se može činiti neprikladnim što se definira jedna funkcija cilja jer se često željena svojstva modela ne mogu opisati jednom funkcijom. U takvim slučajevima se definiraju parcijalne funkcije cilja fk(x) kojima se definiraju pojedinačna željena svojstva i nakon toga se definira jedna ciljna funkcija koja obuhvaća sve parcijalne funkcije cilja. Postoji više metoda konstrukcije ciljne funkcije na temelju parcijalnih, od kojih su najčešće: 1. suma kvadrata parcijalnih funkcija F x m k1 2 f k x Sve parcijalne funkcije cilja uzimaju se s jednakom važnosti. 2. težinska suma kvadrata parcijalnih funkcija F x m t k k1 f 2 k x Izborom težinskih faktora može se odrediti relativna važnost pojedine parcijalne funkcije cilja. 9

3. kriterij maksimalne apsolutne vrijednosti f x max f x k k Ovaj kriterij obično vodi do parcijalnih funkcija koje osciliraju oko srednjih vrijednosti s jednakim pozitivnim i negativnim iznosima. U postupcima optimiranja učestalije se koriste prve dvije metode konstrukcijske funkcije sveukupne funkcije cilja, jer se primjenom treće metode generira funkcija cilja s diskontinuiranim prvim derivacijama koje se u nekim postupcima optimiranja teško obrađuju. 3.2 Lokalni i globalni minimumi funkcije cilja Funkcije cilja u dopuštenom području mogu imati više od jednog minimuma, s tim da je samo jedan minimum globalni, a ostali su lokalni. Postojanje višestrukih minimuma u dopuštenom području unosi dodatne teškoće u algoritme pronalaženja minimuma. Naime, ne postoje postupci koji pouzdano vode do globalnog minimuma, već se za određivanje globalnog minimuma najčešće koriste postupci za pronalaženje lokalnog minimuma koji se višestruko ponavljaju s različitim početnim uvjetima. Zbog toga se u ovom radu razmatraju samo postupci koji vode do lokalnog minimuma, odnosno postupci za određivanje minimuma unimodalnih funkcija. Unimodalna funkcija je funkcija koja ima samo jedan minimum u dopuštenom području. 3.3 Pronalaženje minimuma funkcije jedne varijable Postupak traženja minimuma funkcije jedne varijable, odnosno traženje minimuma po jednom pravcu važan je postupak koji se primjenjuje i u traženju minimuma funkcija s više varijabli. Vrlo značajan kriterij za ocjenu efikasnosti pojedinog algoritma traženja minimuma funkcije je da se minimum pronađe s što je moguće manjim brojem izračunavanja funkcije kako bi se što brže došlo do minimuma. 10

3.3.1 Redukcija unimodalnog intervala Općenito se traženje minimuma svodi na smanjenje intervala u kojem se on nalazi. Jedini uvjeti koji moraju biti ispunjeni jesu da je funkcija unimodalna i kontinuirana u intervalu u kojem se promatra. Ako su navedeni uvjeti ispunjeni, moraju se poznavati vrijednosti funkcije u najmanje dvije točke unutar početnog intervala da bi se minimum mogao locirati u nekom subintervalu. Primjer na slici potvrda je upravo iznesene tvrdnje. Ako se izračuna vrijednost funkcije u točki c tada minimum može ležati lijevo ili desno od te točke. Da bi se odredilo na kojoj strani leži minimum potrebno je izračunati vrijednost funkcije u još jednoj točki, npr. u točki d. Ako je a<c<d<b, onda za f(c) > f(d) minimum leži u intervalu (c, b). Ako je f(c) < f(d) tada minimum leži u intervalu (a, d). Iterativnom primjenom navedenog postupka minimum se može locirati s određenom željenom točnosti. Očito je da će efikasnost navedenog postupka ovisiti o izboru točaka unutar promatranog intervala. f(x) f(x) a c d b x a c d b x slika: Redukcija unimodalnog intervala U praktičnoj primjeni najpoznatija su tri tipa opisanog postupka koji se upravo razlikuju prema načinu odabira internih točaka promatranog intervala, to su: metoda zlatnog reza Fibonaccijeva metoda metoda kvadratne interpolacije. 3.3.2 Metoda kvadratne interpolacije Radi pojednostavljena opisat će se samo metoda kvadratne interpolacije jer ostale dvije sporo konvergenciju prema minimumu. Ova metoda vodi do ograničavanja intervala minimuma s manjim brojem izračunavanja funkcije. Metoda kvadratne interpolacije se zasniva na pretpostavci da ako se funkcija u okolišu minimuma ponaša približno kvadratno onda se redukcija intervala u kojem leži minimum može provesti 11

kvadratnom interpolacijom. Postupak kvadratne interpolacije se primjenjuje na unaprijed zadanom intervalu (a, b) u kojem je funkcija unimodalna i unutar kojeg je odabrana jedna točka c. Kroz točke a, b i c se definira parabola. Tjeme tako definirane parabole se označi točkom d. Točka d se računa prema izrazu 1 d 2 2 2 2 2 2 2 c b f a a c f b b a f c c bf a a cf b b af c Redukcija intrervala se provodi odbacivanjem jednog od rubnih podintervala ovisno o odnosima točaka c i d te odnosima vrijednosti funkcije u tim točkama. Ako se indeksom i označe vrijednosti točaka a, b, c, d u i -tom koraku postupka, tada se vrijednosti točaka u sljedećem koraku računaju prema sljedećim pravilima: ako je d i < c i i ako je o f(d i ) < f(c i ) onda a i +1= a i, b i +1= c i, c i +1= d i o f(d i ) > f(c i ) onda a i +1= d i, b i +1= bi, c i +1= c i ako je di > ci i ako je o f(d i ) < f(ci) onda a i +1= c i, b i +1= b i, c i +1= d i o f(di) > f(ci) onda a i +1= a i, b i +1= d i, c i +1= c i Ovaj algoritam završava kada se minimum ograniči s unaprijed zadanim, po volji malim intervalom. 3.4 Postupci direktnog traženja (bez upotrebe derivacije) za određivanje minimuma funkcija više varijabli Skupina postupaka za pronalaženje minimuma kod kojih nije potrebno izračunavati parcijalne derivacije funkcije cilja po parametrima pretrage nazivaju se postupci s direktnim traženjem. Strategija traženja minimuma mora biti takva da se sa što manjim brojem izračunavanja ciljne funkcije odredi položaj točke u n-dimenzionalnom prostoru parametara za koju ciljna funkcija poprima najmanji iznos. 12

U nastavku poglavlja opisane su tri metode direktnog traženja: traženje po koordinatnim osima postupak traženja po Hookeu i Jeevesu simpleks postupak po Nelderu i Meadu. 3.4.1 Traženje po koordinatnim osima U ovom postupku minimum se traži uzastopno po koordinatnim osima jednim od postupaka za traženje minimuma funkcije jedne varijable. Geometrijski prikaz postupka za funkciju cilja sa dvije varijable (dvodimenzionalni prostor) nalazi se na slici. Jedna iteracije u tom postupku sastoji se od traženja u svim koordinatnim smjerovima. Kriterij za zaustavljanje postupka može biti takav da se zahtijeva da apsolutna vrijednost promjene parametara u dvije uzastopne iteracije bude manja od odabranog malog iznosa ε, odnosno da vrijedi: x j x j -1 ε gdje indeks j označava broj iteracije, a ε je vektor unaprijed zadanih malih iznosa odstupanja parametara. Ovaj postupak je najjednostavniji, ali i najneefikasniji od preostala dva opisana, jer se u pojedinoj iteraciji ne uzima u obzir nikakvo saznanje o funkciji cilja iz prethodnih iteracija. Osnovni nedostatak ovog postupka je sporo kretanje prema minimumu ako je uska dolina u smjeru koji se ne poklapa s jednim od koordinatnih smjerova. 3.4.2 Postupak po Hookeu i Jeevesu Postupak po Hookeu i Jeevesu bolji je od prethodno opisanog traženja po koordinatnim osima, posebno za slučaj traženja uzduž uske doline. Osnovna je ideja postupka da se pronađe smjer uzduž takve doline. Svaka iteracija se sastoji od dva dijela: istraživanje i kretanje u odabranom smjeru. Vrijednost funkcije F(x) računa se za početnu točku i zatim se vrijednost varijabli x i povećava, odnosno smanjuje za korak Δx i tako da se dođe u točku koja ima manji iznos funkcije. Ako prilikom 13

pomaka u pozitivnom i negativnom smjeru vrijednost funkcije poraste, zadržava se početna vrijednost varijable x i. Pošto je istraživanje završeno u svim smjerovima, dolazi se do nove bazne točke x 1. Početna točka x 0 se također naziva bazna točka. 3.4.3 Simpleks postupak po Nelderu i Meadu Simpleks postupak sastoji se od odabiranja n+1 točke u n-dimenzionalnom prostoru. Taj skup od n+1 točke naziva se simpleks. Funkcija cilja izračunava se u svakoj točki i zatim se odbacuje točka s najvećom vrijednošću funkcije i po određenom se postupku odabire jedna nova točka. Na taj način konstruira se novi simpleks i postupak se nastavlja. Na osnovi određenih pravila simpleks se tokom postupka mijenja postupcima refleksije, ekspanzije i kontrakcije na takav način da se konačno dođe do točke u kojoj funkcija cilja ima minimum. Kako je spomenuto, u svakom koraku se postupka odabire se skup točaka x j j = 1,..., n+1 i izračunavaju se pripadne vrijednosti funkcije F(x j ). Zatim se odredi točka x h u kojoj je vrijednost funkcije najveća i točka xl u kojoj je vrijednost funkcije najmanja, tj. F(x h ) > F(x j ), za svaki j h F(x l ) < F(x j ), za svaki j l Nakon toga se određuje centroid x c svih točaka osim x h. 1 1 n c x j j1 jh x n U dvodimenzionalnom prostoru centroid je polovište razmaka dviju točaka, kao što je prikazano na slici: 14

Nakon što se odredio centroid može se pristupiti procesu traženja nove točke simpleksa koja će zamijeniti točku x h. Za to se koriste tri operacije prokazane na slici: x2 x2 x2 xr c xe xr xh a xc b xh xc b xh xk d a xc x1 x1 x1 REFLEKSIJA EKSPANZIJA KONTRAKCIJA Postupkom refleksije se točka x h reflektira u odnosu na točku x c i dobiva se reflektirana točka x r. Refleksija je definirana kao: x r x c x 1 ; h b a gdje je α koeficijent refleksije čiji je iznos jednak omjeru udaljenosti b i a prikazanih na slici. Ekspanzija simpleksa se definira kao udaljavanje točke x r od centroida x c ako se može očekivati smanjenje funkcije u tom smjeru. Ako se definira koeficijent ekspanzije γ kao tada se ekspanzija definira izrazom x e c b x c x 1 U nekim slučajevima je potrebno izvršiti kontrakciju simpleksa, na način da se točka x h približi centroidu. Kontrakcija (točka x k ) se računa prema izrazu: r x k x c x 1 ; h d a Primjenom opisanih metoda transformacije, simpleks se može reflektirati, rasti, smanjivati i na taj način konačno doseći minimum. Ako refleksija, ekspanzija i kontrakcija ne dovedu do uspjeha, odnosno nove točke u kojoj je vrijednost funkcije cilja manja od F (x h ), tada se simpleks treba smanjiti, i to tako da se sve točke pomaknu prema točki x l s najmanjom vrijednošću funkcije. 15

Nelder i Mead su definirali slijedeći kriterij zaustavljanja: 1 1 n n j1 2 F x F j x c gdje je ε unaprijed zadani mali broj. Numeričkim eksperimentiranjem pokazano je da postupak po Nelderu i Meadu vrlo efikasan, te da su preporučljive vrijednosti koeficijenata 1; 0. 5; 2 3.5 Opis programskog simulatora Simpleks algoritma (primjer) Prilikom izgradnje Simpleks algoritma glavna zamisao je bila prikazati način na koji se simpleks kreće kroz prostor i putuje prema minimumu funkcije. Iz tog razloga je traženje minimuma funkcije ograničeno na funkcije jedne varijable i funkcije dvije varijable. Iako je ostvareni algoritam traženja minimuma općenit, odnosno moguće je tražiti minimum funkcije više varijabli, moguće je odabrati samo funkcije cilja jedne ili dvije varijable kako bi se grafički mogao prikazati simpleks. 3.5.1 Sučelje programa simulatora Grafičko sučelje programa se sastoji od kontrolnih okvira i okvira za prikaz. Kontrolni okviri služe za postavljanje parametara simulacije dok se tijek simulacije grafički prikazuje u okviru za prikaz. Kontrolni okviri programa su sljedeći: Goal Function Settings: odabire se jedna od ponuđenih funkcija koje se optimiraju. Nakon što se odabere funkcija prikazuju se unaprijed zadani optimalni parametri simpleks postupka (α, β, γ i ε). Parametri se mogu mijenjati prije i za vrijeme postupka traženja minimuma. Promjena parametara ε utječe na točnost i brzinu broj koraka simulacije. Smanjenjem vrijednosti parametra ε smanjuje se točnost rezultata i broj koraka simulacije. Simulation Control: okvir sadrži kontrole za početak, završetak, zaustavljanje i nastavak izvođenja simulacije postupka traženja minimuma. Simulation Speed: kliznik za podešavanje brzine simulacije 16

Simpleks slika: Grafičko sučelje programa 3.6 Ciljne funkcije Popis funkcija cilja unaprijed je zadan i sastoji se od nekoliko funkcija jedne i dvije varijable. Prilikom prikaza procesa simuliranja ciljna funkcija dvije varijable se ne prikazuje već se samo prikazuje kretanje simpleksa (u ovom slučaju je to trokut). Naime, u slučaju prikaza ciljne funkcije tijek simpleks postupka se vrlo slabo mogao pratiti. U slučaju traženje minimuma funkcije jedne varijable iscrtava se funkcija i simpleks (u ovom slučaju je to pravac paralelan sa x koordinatnom osi). U ovom slučaju se doista može provjeriti ispravnost rada simpleks postupka, ali se slabije uočavaju operacije nad simpleksom koje su bit ovog postupka. Osim toga, prilikom traženja minimuma funkcije koje nisu unimodalne na promatranom intervalu pokazuje se ograničenost postupka, odnosno vidi se da ovisno o početnim točkama simpleksa algoritam pronalazi najbliži lokalni minimum. 17

4 ZAKLJUČAK Kako bi se razumjeli postupci traženja minimuma najprije su navedeni osnovni pojmovi i kratak opis pojedinih metoda vezani uz optimiranje funkcija. Nakon toga slijedi po jedan primjer za svaku metodu. Na kraju potrebo je usporediti genetske algoritme sa matematičkim metodama. Zajedničko im je što se ne mogu izvoditi bez računala. Obzirom na moje malo iskustvo u ovom području veliku prednost dajem genetskim algoritmima jer: sposobni odrediti položaj globalnog optimuma u prostoru sa više lokalnih ekstrema mogu raditi sa jednostavnim i složenim problemima primjenjivi na velik broj problema neovisno o vrsti informacije ukoliko ne nađe globalni optimum, daje vrlo dobro približno rješenje koje može zadovoljiti (moguć uvid u skup rješenja) jednostavnim ponavljanjem može se povećati pouzdanost rezultata Glavni nedostaci bili bi: ako se radi o složenijem problemu, teško definiranje funkcije dobrote teško je postaviti dobre parametre (velik utjecaj parametra na efikasnost) ne može se postići 100% pouzdanost rješenja zbog velikih računskih operacija GA često spor, stoga se traži velika procesorska snaga Matematičke metode daju dobre rezultate za jednostavne funkcije, a slože ne znam dali je uopće moguće opisati. U praksi postoji veliki broj algoritama, od kojih je svaki prikladan za specifični optimizacijski problem. Osnovni nedostatak im je sporo kretanje prema minimumu, a traženje minimuma se svodi na smanjenje intervala u kojem se on nalazi. Kod većine metoda vrlo je bitan izbor točaka unutar promatranog intervala ako se odaberu pogrešne točke algoritam se zaustavlja na lokalnom minimumu. 18

5 LITERATURA Matija Hoić, Inge Vinković: UPUTSTVA ZA KORIŠTENJE ALATA GENETSKOG ALGORITMA U PROGRAMU MATLAB 7.2 Dražen Antolić: Procjena vremena izrade proizvoda regresijskim modelima, Magistarski rad, FSB, 2007. [http://www.fsb.hr/newsupload/24_04_2007_7145_procjena_vremena_izrade.pdf] Marin Golub: http://www.zemris.fer.hr/~golub/ga/ga.html MATLAB R2007b, ver. 7.5.342, Help Wikipedia: http://en.wikipedia.org/wiki/optimization_(mathematics) Ivan Gavran: Postupci direktnog traženja za određivanje minimuma funkcija više varijabli, projekt, FER, [http://web.zpr.fer.hr/zpm13c2/] 19