Genetikus algoritmusok Kezdőknek és haladóknak

Slides:



Advertisements
Hasonló előadás
ILLYÉS LÁSZLÓ Sapientia Egyetem, Csíkszereda Kiegyensúlyozott csoportok kialakítása egyetemi projektekhez.
Advertisements

Tamás Kincső, OSZK, Analitikus Feldolgozó Osztály, osztályvezető A részdokumentumok szolgáltatása az ELDORADO-ban ELDORADO konferencia a partnerkönyvtárakkal.

Kamarai prezentáció sablon
„Esélyteremtés és értékalakulás” Konferencia Megyeháza Kaposvár, 2009
Készítette: Boros Erzsi
Weblap szerkesztés HTML oldal felépítése Nyitó tag Záró tag Nyitó tag Záró tag oldalfej tözs.
4. Előadás: A mohó algoritmus
Genetikus algoritmusok
Erőállóképesség mérése Találjanak teszteket az irodalomban
Második nap DVD LUMINEERS PLACEMENT. Második nap DVD LUMINEERS PLACEMENT.
Az előadásokon oldandók meg. (Szimulációs modell is tartozik hozzájuk)
Humánkineziológia szak
3. Két független minta összehasonlítása
Mellár János 5. óra Március 12. v
6) 7) 8) 9) 10) Mennyi az x, y és z értéke? 11) 12) 13) 14) 15)
Műveletek logaritmussal
Ütemezési algoritmusok (FCFS, SJF, RR)
A tételek eljuttatása az iskolákba
Alhálózat számítás Osztályok Kezdő Kezdete Vége Alapértelmezett CIDR bitek alhálózati maszk megfelelője A /8 B
Optimális részhalmaz keresése Keresési tér. 0,0,0,0 1,0,0,0 0,1,0,0 0,0,1,0 0,0,0,10,0,1,1 1,1,0,0 1,0,1,0 0,1,1,0 1,1,1,0 1,0,1,1 0,1,1,1 1,1,1,11,1,0,1.
Elektronikai Áramkörök Tervezése és Megvalósítása
Metal/plastic foam projekt
A diákat jészítette: Matthew Will
Ember László XUBUNTU Linux (ami majdnem UBUNTU) Ötödik nekifutás 192 MB RAM és 3 GB HDD erőforrásokkal.
Műszaki ábrázolás alapjai
Genetikus algoritmusok
KÖSZÖNTJÜK HALLGATÓINKAT!
Védőgázas hegesztések
OPERÁCIÓKUTATÁS Kalmár János, 2012 Tartalom A nulla-egy LP megoldása Hátizsák feladat.
Fuzzy rendszerek mérnöki megközelítésben I
IRE 5 /18/ 1 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – I ntelligens R endszerek E lmélete 5.
Szerkezeti elemek teherbírásvizsgálata összetett terhelés esetén:
1 Kétségek között Göd, November 6-7. dr. Kiss József magánszemély.
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
DRAGON BALL GT dbzgtlink féle változat! Illesztett, ráégetett, sárga felirattal! Japan és Angol Navigáláshoz használd a bal oldali léptető elemeket ! Verzio.
Lineáris egyenletrendszerek (Az evolúciótól a megoldáshalmaz szerkezetéig) dr. Szalkai István Pannon Egyetem, Veszprém /' /
dr. Szalkai István Pannon Egyetem, Veszprém
szakmérnök hallgatók számára
2. A KVANTUMMECHANIKA AXIÓMÁI 1. Erwin Schrödinger: Quantisierung als Eigenwertproblem (1926) 2.
Exponenciális egyenletek
Logikai szita Izsó Tímea 9.B.
Kovács Dániel László Kovács Dániel László BME-VIK, Méréstechnika és Információs Rendszerek Tanszék Önálló laboratórium.
Sapientia-Csíkszereda ILLYES LÁSZLÓ Grundfoci-csapatválasztás. A Pál utcai fiúk és két célfüggvény.
Problémás függvények : lokális optimalizáció nem használható Globális optimalizáció.
Optimalizáció modell kalibrációja Adott az M modell, és p a paraméter vektora. Hogyan állítsuk be p -t hogy a modell kimenete az x bemen ő adatokon a legjobban.
var q = ( from c in dc.Customers where c.City == "London" where c.City == "London" select c).Including( c => c.Orders ); select c).Including(
1 Mössbauer-spektrumok illesztése: vonalalak A kibocsátott  -sugárzás energiaspektruma Lorentz-görbe alakú: I : sugárzás intenzitása  : frekvencia 
ÁRAMLÓ FOLYADÉKOK EGYENSÚLYA
A pneumatika alapjai A pneumatikában alkalmazott építőelemek és működésük vezérlő elemek (szelepek)
IV. Terjeszkedés.
A klinikai transzfúziós tevékenység Ápolás szakmai ellenőrzése
2006. Peer-to-Peer (P2P) hálózatok Távközlési és Médiainformatikai Tanszék.
QualcoDuna interkalibráció Talaj- és levegövizsgálati körmérések évi értékelése (2007.) Dr. Biliczkiné Gaál Piroska VITUKI Kht. Minőségbiztosítási és Ellenőrzési.
1 Gyarapodó Köztársaság Növekvő gazdaság – csökkenő adók február 2.
Objektum orientált programozás
1. Melyik jármű haladhat tovább elsőként az ábrán látható forgalmi helyzetben? a) A "V" jelű villamos. b) Az "M" jelű munkagép. c) Az "R" jelű rendőrségi.
Virtuális Méréstechnika Sub-VI és grafikonok 1 Makan Gergely, Vadai Gergely v
Mérés és adatgyűjtés laboratóriumi gyakorlat - levelező Sub-VI és grafikonok 1 Mingesz Róbert V
Algoritmizálás, adatmodellezés tanítása 8. előadás.
Genetikus algoritmusok
Genetikus algoritmusok
Informatikai Rendszerek Tervezése 5. Előadás: Genetikus algoritmusok Illyés László Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT.-5.
Menetrend optimalizálása genetikus algoritmussal
Genetikus algoritmus “A genetikus algoritmusok segítségével óriási méretű paraméter teret vizsgálhatunk meg, hogy megtaláljuk különböző dolgok optimális.
A termelés költségei.
1  BME Híradástechnikai Tsz komhal20.ppt Kommunikációs hálózatok tervezése 20. előadás Izsó Tamás Híradástechnikai tanszék 2000 Budapesti Műszaki.
Genetikus algoritmusok
Genetikus algoritmusok
Előadás másolata:

Genetikus algoritmusok Kezdőknek és haladóknak Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda 2013 február 19 Genetikus algoritmusok Kezdőknek és haladóknak   Illyés László

Tartalom Bevezető A kanonikus genetikus algoritmus A genetikus algoritmusok biológiai alapjai Történelem A genetikus algoritmusok helye az optimalizálásban A genetikus algoritmusok elméleti alapjai Permutációs adatstruktúrák Speciális reprezentációk Saját reprezentációk Könyvészet

Bevezető Charles Darwin elmélete és G.J. Mendel statisztikai kísérletei egy minőségi ugrást jelentettek a biológiában. J.D. Watson és F. Crick készítették el először a DNS struktúrát, ahogy ma is ismerjük. A komplexitás elmélet és az operációkutatás nagy hatással voltak a kutatásokra, kimutatva, hogy a valós, komplex problémák nem oldhatók meg polinomiális idő alatt Keresték az olyan algoritmusokat, amelyek modelezni és utánozni tudnák a nagy túlélőt: a Természetet.

A kanonikus genetikus algoritmus A problémát a hátizsák problémán keresztül vizsgáljuk, amelyik egy befektetési portfólióról szól. Egy befektetőnek c tőkéje van, amit be szeretne fektetni. Választhat n befektetésből. Az összes lehetséges befektetés értéke nagyobb, mint a tőke, ami rendelkezésére áll. Az i-edik befektetés összege fdi és a várható nyereség bi si-kiválasztási vektor: si=1 ha kiválasztjuk az i-edik variáns, másképp si=0 A matematikai modell:

1 ajánlat 2 ajánlat 3 ajánlat 4 ajánlat 5 ajánlat 6 ajánlat fdi befektetés 2.000 2.200 2.500 3.000 3.200 bi jövedelem 300 400 500 600 700 705 Kodifikálás. Egyszerre több kromoszómával (egyeddel) dolgozunk, amelyek populációt alkotnak. Az első generáció általában pszeudó- aleatorikus Az alábbi kodifikáció azt jelenti, hogy a befektető elfogadta a {O1, O2, O5, O6} ajánlatokat, vagyis befektetett 10.800 egységet és a várható jövedelme 2.105egység. Ha a befektetőnek csak 10.000 egység befektetni valója van, akkor ez a kromoszóma egy nem érvényes egyedet jelképez. O1 O2 O3 O4 O5 O6 1

Inicializálás és szelekció Az algoritmus központi eleme a POPULÁCIÓ. Egy populáció a kromoszómák egy halmaza, amelyek a megoldások terében egy lehetséges megoldást kódolnak. Az algoritmus iterációi során újabb egyedek keletkeznek, amelyek egy újabb populációt alkotnak: a következő generációt. Az inicializálás folyamán egy pszeudo-aleatorikus, kezdeti (P0) populációt állítunk elő. Szelekció: – a populáció egyedeiből (kromoszómákból) az algoritmus kiválaszt egyeseket, a jósági értékükkel arányos valószínűséggel, akik szülővé válnak, s amelyek génjeit örökli a következő generáció.

A célfüggvény és a fitnessz függvény (fitness function): A fitnessz függvény a célfüggvényből alakul ki. Azt mutatja meg, hogy mennyire jó a kromoszóma által kodifikált megoldás. A kanonikus genetikus algoritmus esetében a fitnessz függvény megegyezik a célfüggvénnyel, vagyis fi= Skáláznunk kell az eredményeket, hogy megállapíthassunk egy relatív jóságot is.

A példapopuláció 4 egyedből (kromoszómából) áll. fi fdi 1605 8200 1800 8700 1705 8400 2000 10400 P1 1 P2 1 P3 1 P4 1 Az eredmények skálázása: ff1=1605/(1605+1800+1705)=0.314 ff2=1800/(1605+1800+1705)=0.352 ff3=1705/(1605+1800+1705)=0.333

Bináris sztringek egypontos keresztezése Szülők Keresztezés locus P1 1 P2 1 Gyerekek (offsprings) O1 1 1 O2

Bináris sztringek kétpontos keresztezése Keresztezés locusok Szülők P1 1 P2 1 Gyerekek (offsprings) O1 1 1 O2

Bináris sztringek uniform keresztezése Szülők P1 1 P2 1 Gyerekek (offsprings) O1 1 1 O2 0.5-0.5 valószínűséggel egyik vagy másik szülőtől

Bináris sztringek mutációja Csak egy gén mutálódik P1 1 O1 1 A gének egymástól függetlenül mutálódnak P1 1 O1 1

P1 (első kromoszóma) Feltételeztük, hogy a kiválasztás a következő kromoszóma-párokat adta {P1, P2} és {P2, P3} Alkalmazva az 1 pontos keresztezést, a következő generáció a következő képpen néz ki, feltételezve, hogy még a 2-es gyerek mutációja az 5-ös génben is megtörtént: 1 P2 (második kromoszóma) 1 O1 (első leszármazott) 1 O2 1 P2 1 1 P3 1 O3 1 O4 1

A genetikus algoritmus helye az optimalizálásban optimalizálási eljárások gradiens alapú módszerek sztochasztikus kimerítő keresésen alapuló szimulált lehűtés direkt indirekt tabu algoritmus evolúciós algoritmusok Dinamikus programozás evolúciós stratégiák genetikus algoritmusok párhúzamos soros Álmos A. et.all, Genetikus algoritmusok, Typotex, Budapest, 2002, pp. 21

Történeti áttekintés -minden rendszer egy olyan populáció kialakítására épül, amely egy adott probléma megoldási lehetőségeit tartalmazza 1965,73 – Rechenberg – evolúciós stratégiák 1966 – Fogel, Owens és Walsh – evolutív programozás 1975 – Holland J. – genetikus algoritmusok – a kanonikus genetikus algoritmus 1992,94 – Koza J.R. – genetikus programozás

A genetikus algoritmusok biológiai háttere Miért használható? Sok számítási feladat megoldásakor szükségünk van egy adaptációs lehetőségre, vagyis arra, hogy az algoritmus robusztus legyen változó környezetben is Robotikában, a robotirányításban, meg kell oldani olyan feladatokat, amelyek változó környezetben zajlanak, a program használható kell legyen más felhasználó számára is. A túlélési versenyben, az erősebb egyedeknek (akik jobban megoldanak egy problémát, több energiaforráshoz jutnak) nagyobb az esélyük, hogy szaporodjanak, a gyerekeik örökölni fogják a kromoszóma-állományuk egy részét.

A genetikus algoritmus és a biológiai megfelelője Genetikus algoritmusok Kromoszóma Sztring Gén jellemző génváltozat (allél) Jellemző értéke Gén helye (locus) Sztring-pozíció Genotípus Struktúra Fenotípus Egy megoldás Álmos A. et.all, Genetikus algoritmusok, Typotex, Budapest, 2002, pp. 40

A szaporodás Az egyszerű, vagy a generációs szaporodás: lecseréli a szülő (régi) populációt. Ennek kiegészítése képpen, használatos az elitizmus princípiuma, amelyben a populáció legjobb elemei továbbélnek a következő generációban is.

A genetikus algoritmus elméletei A sémaelmélet. (Holland) GA egy komplex keresést végezve bejárja a hipertér particióit. (*10)-egy él, (*1*) egy sík a 3 dimenziós térben. Azon sztring, amely tartalmaz * séma vagy sablon

Elméleti alapok A sémák egymással versengenek, hogy megvalósítsák a célfüggvényt (meta-egyedek versengése) Holland szerint az adaptív rendszereknek két fontos tulajdonságuk van: Új területek felfedezése (exploration) A régi adaptációk felhasználása (exploitation) Ezen tulajdonságok használatának egyensúlya jó eredményekhez vezet a megoldások terében. A mutáció ki tudja mozdítani az algoritmust egy lokális optimumból. A felfedezés a mutációs operátor által valósul meg, a kiaknázás pedig a keresztezés operátor által.

Más elméleti megközelítések Building block hyphotesis (Goldberg) Markov láncokkal Mechanikai statisztika

Átrendező operátorok Permutációkra kidolgozott Az utazóügynök problémát megoldó Egy olyan genetikus anyag, amelyben minden gén más-más információt hordoz- nincs 2 egyforma gén A permutációs jelleg megmarad

Átrendező operátorok K T L O S P F H K S O L T P F H INVERZIÓ-művelete A K T L O S P F H A’ K S O L T P F H “Egy valódi gén funkciója gyakran független annak a kromoszómán belüli pozíciójától (habár egy helyhez tartozó gének gyakran együttműködnek)”

Átrendező operátorok PMX-Partially Mixed Crossover A 9 8 4 5 6 7 1 3 2 10 8 7 1 2 3 10 9 5 4 6 B Gyerekek (offsprings) A’ 9 8 4 2 3 10 1 B’ 8 1 5 6 7 9 4

Átrendező operátorok PMX-Partially Mixed Crossover A 9 8 4 5 6 7 1 3 2 10 8 7 1 2 3 10 9 5 4 6 B Gyerekek (offsprings) A’ 9 8 4 2 3 10 1 6 5 7 B’ 8 10 1 5 6 7 9 2 4 3

Átrendező operátorok OX - Order Crossover A 9 8 4 5 6 7 1 3 2 10 8 7 1 2 3 10 9 5 4 6 B Gyerekek (offsprings) A’ 9 8 4 5 6 7 1 B’ 8 1 2 3 10 9 4

Átrendező operátorok OX - Order Crossover A 9 8 4 5 6 7 1 3 2 10 8 7 1 2 3 10 9 5 4 6 B Gyerekek (offsprings) A’ 5 6 7 2 3 10 1 9 8 4 B’ 2 3 10 5 6 7 9 4 8 1

Átrendező operátorok CX - Cycle Crossover A 9 8 2 1 7 4 5 10 6 3 1 2 3 4 5 6 7 8 9 10 B Gyerekek (offsprings) A’ 9 B’ 1

Átrendező operátorok CX - Cycle Crossover A 9 8 2 1 7 4 5 10 6 3 1 2 3 4 5 6 7 8 9 10 B Gyerekek (offsprings) A’ 9 1 4 6 B’ 1 4 6 9

Átrendező operátorok CX - Cycle Crossover A 9 8 2 1 7 4 5 10 6 3 1 2 3 4 5 6 7 8 9 10 B Gyerekek (offsprings) A’ 9 2 3 1 5 4 7 8 6 10 B’ 1 8 2 4 7 6 5 10 9 3

A szülők permutáció sorszámai közti szomszédos kapcsolatokat öröklik Edge rekombináció A szülők permutáció sorszámai közti szomszédos kapcsolatokat öröklik

Átrendező operátorok G D M H B J F I A K E C C E K A G B H I J F M D A ERC – Edge Recombination Crossover P1 G D M H B J F I A K E C P2 C E K A G B H I J F M D A G, I, -K B G, -H, J C D, -E, G D C, G, -M E -C, -K F I, -J, M csúcslista Amely elemek 2-szer vannak jelen, külön megjelöljük – jellel. Ezeknek prioritásuk lesz az elkövetkezőkben.

Átrendező operátorok G D M H B J F I A K E C C E K A G B H I J F M D G ERC – Edge Recombination Crossover P1 G D M H B J F I A K E C P2 C E K A G B H I J F M D G A, B, C, D H -B, I, M I A, F, H, J J B, -F, I K -A, -E M -D, F, H csúcslista Ez a megközelítés akkor állja a helyét, ha szimmetrikus a költségmátrix és az utazó- ügynök vissza kell térjen a bázishelyre

Reprezentáció és kódolás 1. Klasszikus, rögzített hosszúságú bináris sztring 1 2. Egészértékű kódolás 3 24 51 68 15 42 79 37 12 7 3. Lebegőpontos kódolás 1.1 3.25 4.3 9.71 2.8 7.31 6.01 5.8

Reprezentáció és kódolás 4. Változó hosszúságú kromoszóma 1 1 1 5. Kétdimenziós kromoszóma 1

Reprezentáció és kódolás 5. Listás kromoszóma ábrázolás 5 31 4 63 16 6. Fa-struktúrájú kromoszóma ábrázolás 35 41 1 8 23 56 17

Reprezentáció és kódolás x + x - - + + c b 1 a x x 3.5 -1.2 b 2.5 c a Programok kódolása fa-struktúrában

MTSP –több utazóügynök probléma Egy kromoszómás technika 2 5 14 6 -1 1 11 8 13 -2 4 10 3 -3 12 15 9 7 Két kromoszómás technika 2 5 14 6 1 11 8 13 4 10 3 12 15 9 7 2 1 3 4

MTSP –több utazóügynök probléma Kétrészű kromoszóma technika 2 5 14 6 1 11 8 13 4 10 3 12 15 9 7 A kromoszóma első részére lehet alkalmazni bármilyen rekombinációs műveletet. A második részére a kromoszómának ki kell találni egy másfajta keresztezés vagy mutációs műveletet

Sarok algoritmus kromoszómája

Kontroll kromoszóma

Kontroll kromoszóma keresztezés operátora