Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk Inleiding Adaptieve...
-
Upload
christian-dijkstra -
Category
Documents
-
view
225 -
download
4
Transcript of Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk Inleiding Adaptieve...
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Inleiding Adaptieve Systemen
Genetische Algoritmen
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Evolutie
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Evolutie (pun)
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Genetische Algoritmen
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Figuur uit:
Evolutionaire algoritmen
Genetische algoritmen
Genetisch program-
meren
Grammatische evolutie
Vandaag
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Genetische Algoritmen: motivatie
• Wat evolutie kan, dat kan ik ook met mijn PC, alleen dan 1E09 keer sneller.
• Even voor god spelen.
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Definitie (voor wat het waard is)
• Een Genetisch Algoritme is een probabilistisch zoekalgoritme …
• … dat door middel van iteratie een verzameling genotypen (bv. bitstrings), elk met een fitness-waarde, omzet in een nieuwe verzameling genotypen, …
• … gebruikmakend van het Darwinistische principe van natuurlijke selectie …
• … en gebruikmakend van operaties die zijn geïnspireerd op natuurlijk voorkomende genetische operaties, zoals kruising en mutatie.
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Mitose en meiose
• Mitose (kopieerdeling) is chromosoom-splitsing bij normale celdeling. (Duur: 12-24 uur.)
• Meiose (reductiedeling) is chromosoom-splitsing bij geslachtelijke celdeling. Produceert zaad- of eicellen. Kruising vindt plaats in ouder. Zie filmpje meiose.
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Chromosomen van de mens
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Evolutieproces
• Er is een populatie van organismen.
• Organismen zijn verschillend (genotype), en presteren ook verschillend (fenotype).
• Een organisme kan zichzelf (geslachtelijk dan wel ongeslachtelijk) voortplanten.
• Het vermogen zich voort te planten hangt samen met het succes, of prestatievermogen (fitness), van een organisme.
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Zelfreproductie in CSCellulaire Automaat: Langton’s Loop
• Langton’s Loop is een zelf-reproducerende automaat.
• Overeenkomst met celdeling en mitose: zelf-reproductie.– Blauw (1) en rood (2) vormen
een kanaal.
– Signalen 3 t/m 7 doen allen iets anders als ze de pijp uitkomen.
• Zie Hiroki Sayama's applet, of Golly
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Voorbeeld
Het vinden vaneen goede restaurant-formule
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Burger Restaurant Probleem
• Prijs / kwaliteit verhouding– 0 = Hoge prijs / kwaliteit
– 1 = Lage prijs / kwaliteit
• Drank– 0 = Wijn
– 1 = Cola
• Service– 0 = Snel maar onpersoonlijk
– 1 = Met aandacht, maar niet al te snel
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Genetisch Algoritme
Generatie 0 Generatie 1
Genotype Fitness Genotype
011 $3 111
001 $1 010
110 $6 110
010 $2 010
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Zoekruimte
• Omvang van het alfabet: K = 2
• Chromosoom-lengte: L = 3
• Omvang van de zoekruimte:
KL = 2L = 23 = 8 restaurant-formules
1 000
2 001
3 010
4 011
5 100
6 101
7 110
8 111
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
De startgeneratie
# Generatie 0 Opbrengst
1 011 € 3,=
1 001 € 1,=
1 110 € 6,=
1 010 € 2,=
Totaal € 12,=
Slechtst € 1,=
Gemiddeld € 3,=
Best € 6,=
Multi-pliciteit
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
0.5
0.08
0.250.17
Fitness-proportionele selectie
Probabilistisch roulettewiel:
• De kans dat een chromosoom gekozen wordt “om iets mee te doen” voor de volgende generatie ~ relatieve fitness
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Mating pool
# Generatie 0 Mating pool
1 011 € 3 .25 011 € 3
1 001 € 1 .08 110 € 6
1 110 € 6 .50 110 € 6
1 010 € 2 .17 010 € 2
Totaal € 12 € 17
Slechtst € 1 € 2
Gemiddeld € 3 € 4.5
Best € 6 € 6
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Principe vanEvolutionaire Algoritmen
• Succesvolle individuen hebben een grotere kans om te paren met soortgenoten.
• Maar: “een grotere kans” is nog geen garantie.
• Slecht presterende individuen krijgen ook een kans om te paren―maar wel een kleinere kans.
• Niets is gegarandeerd. (“Stochastisch proces”)
• Selectie is een mix van exploitatie en exploratie.
Probabilistische selectie gebaseerd op fitness
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Genereer initiële populatie P ter
grootte N
Bereken van elke chromosoom uit
P de fitness
Bepaal de meest fitte chromo-
soom , W, uit P
Tevreden?Creëer lege
populatie Q en plaats W daar in
Selecteer genetische operator
Kies twee
ouders uit P
Kies één ouder uit P
Kies één ouder uit P
Plaats kopie in Q
Plaats mutant
in Q
Plaats kinderen
in Q
|Q| =
|P| ?
P wordt
Q
Stop
ja
nee
Flow (Koza, 1992)ja
nee
recombinatie
repr
oduc
tie
mu-tatie
Specifiek voor Koza
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Reproductie (met kans pr)
# Generatie 0 Mating pool Generatie 1
1 011 € 3 .25
1 001 € 1 .08
1 110 € 6 .50 110 € 6 1 110 € 6
1 010 € 2 .17
Totaal € 12 € 17
Slechts € 1 € 2
Gemiddeld € 3 € 4.5
Best € 6 € 6
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Mutatie (met kans pm)
• Ouder wordt probabilistisch gekozen op basis van fitness.
• Punt van mutatie wordt willekeurig gekozen
• Eén kind.
• De kans op mutatie is in de natuur erg klein.
Analoog wordt de kans op mutatie gezet op een klein getalletje ε > 0.
• Mutatie zorgt voor diversiteit.
Ouder
010
Kind
011
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Na mutatie
# Generatie 0 Mating pool Generatie 1
1 011 € 3 .25 011 € 3
1 001 € 1 .08 110 € 6
1 110 € 6 .50 110 € 6
1 010 € 2 .17 010 € 2 1 011 € 3
Totaal € 12 € 17
Slechtst € 1 € 2
Gemiddeld € 3 € 4.5
Best € 6 € 6
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Crossover (met kans pc)
• Twee ouders worden willekeurig gekozen, op basis van fitness.
(Het is niet nodig om eerst de mating pool expliciet aan te leggen.)
Ouder 1 Ouder 2
011 110
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Kruising
Kies een willekeurig snijpunt.
Voor de andere ouder is het snijpunt daarmee ook vastgelegd.
Dat levert:
• Twee prefixen: Prefix 1 en Prefix 2
• Twee suffixen.
Kruising
• Kind 1 = Prefix 1 + Suffix 2
• Kind 2 = Prefix 2 + Suffix 1
Suffix 1 Suffix 2
- - 1 - - 0
Kind 1 Kind 2
111 010
Prefix 1 Prefix 2
01- 11-
Hoeveel mogelijke snijpunten zijn er in een chromosoom ter lengte 10?
10 1 = 9 reële (inwendige) snijpunten,
+ 2 oneigenlijke (uitwendige) snijpunten
Hoeveel mogelijk verschillende kinderen (offsprings)?
Voor Kind 1: 9Voor Kind 2: 9 = samen 18(Geen 2 x 9 x 9 = 162!)
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Na crossover (kruising)
# Generatie 0 Mating pool Generatie 1
1 011 € 3 .25 011 € 3 1 111 € 7
1 001 € 1 .08 110 € 6 1 010 € 2
1 110 € 6 .50 110 € 6
1 010 € 2 .17 010 € 2
Totaal € 12 € 17
Slechtst € 1 € 2
Gemiddeld € 3 € 4.5
Best € 6 € 6
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Probabilistische elementen
• De nul-generatie wordt random opgezet.
• Probabilistische selectie voor paring gebaseerd op fitness.– “Winnaars” wordt niet noodzakelijk geselecteerd.
– “Verliezers” worden niet noodzakelijk uitgesloten.
• Willekeurige snijpunten in kruising.
• Spaarzame momenten van mutatie. In dat geval willekeurige mutatiepunten.
• Invloed van exogeniteit: vaak hangt de prestatie (fitness) ook nog af van toevallige omstandigheden in de omgeving.
Bijvoorbeeld, in Week 43 zal service-formule 110 waarschijnlijk niet hetzelfde opleveren als in Week 52.
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Generatie 1
Generatie 0 Mating pool Generatie 1
1 011 € 3 .25 011 € 3 1 111 € 7
1 001 € 1 .08 110 € 6 1 010 € 2
1 110 € 6 .50 110 € 6 1 110 € 6
1 010 € 2 .17 010 € 2 1 011 € 3
Totaal € 12 € 17 € 18
Slechtst € 1 € 2 € 2
Gemiddeld € 3 € 4.3 € 4.5
Best € 6 € 6 € 7
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Toepassing 1: antenne ontwerp
Antenne is voor
grond ↔ satelliet commu-
nicatie in auto's en handsets
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Antenne ontwerp: het probleem
• Edward Altshuler en Derek Linden– 1998. A Process for the Design of Antennas Using Genetic
Algorithms. U.S. patent 5,719,794. Uitgegeven op 17 Feb 1998.
– 2001. Innovative antenna design using genetic algorithms. Creative evolutionary systems, pp. 487-510.
• Bepaal de X,Y,Z-coordinaten van zes kogelscharnieren
(X1, Y1, Z1), (X2, Y2, Z2),..., (X6, Y6, Z6)
en een eindpunt (X7, Y7, Z7) van een 7-delige antenne.
• Randvoorwaarden:1. De antenne start in de oorsprong (0, 0, 0).
2. De antenne moet passen in de (0.5λ)3 kubus.
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Antenne genoom
• Elk 3D-punt wordt gerepresenteerd door 5 bits.– Vier bits voor het getal zelf (dus coördinaat klimt op in 24 = 16 stukjes).– Eén bit voor het teken.
• Dimensie: 3 [ (X, Y, Z) ]
Aantal punten: 7 [ scharnierpunt 1, scharnierpunt 2, etc. ]
Aantal bits per punt: 5 [ vier voor getal, één voor + of – ]
• De totale chromosoom-lengte is dus 3 x 7 x 5 = 105 bits.
X1 Y1 Z1 X2 Y2 Z2 …
+0010 -1110 +0001 +0011 -1011 +0011 …
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Resultaten
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Toepassing 2: giek van hijskraan
100 KG
100 KG
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Giek van een hijskraan
• Goldberg, D.E., Samtani, M.P. (1986), “Engineering optimization via genetic algorithm”, Proc. 9th Conf. on Electronic Computation, ASCE, pp. 471-84.
• Probleem: minimaliseer het gewicht van de stangen-constructie.
• De giek heeft tien stangen: zes van 30cm en vier van 2 x 30 = 41cm.
• Variabel: de diameter van elke stang: ( A1, ..., A10 )
• Voorgedefinieerd en niet variabel: de rest (= o.a. de constructie, het materiaal en de belasting).
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Genoom van een constructie
• We discretiseren de zoekruimte:– Continue waarden: alles van 2mm t/m 17mm
– Discrete waarden: { 2mm, 3mm, 4mm, …, 16mm, 17mm }
• Diameters worden gerepresenteerd als bitstrings.– 0000 = kleinste diameter
– 1111 = grootste diameter
• Lengte van het totale chromosoom is 10 x 4 = 40 bits
A1 A2 A3 A4 A5 A6 A7 A8 A9 A10
0010 1110 0001 0011 1011 0011 1111 0011 0011 1010
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Fitness van een constructie
• De fitness van een constructie wordt bepaald door som van twee onderdelen:
1. Het totale gewicht van de constructie (excl. belasting).
2. Een extra penalty (10% van het gewicht) voor als de constructie breekt.
Hoe lager de fitness, hoe beter, in dit geval.
• Of een constructie breekt, wordt bepaald door proberen (kostbaar) of aan de hand van standaard werktuigbouwkundige berekeningen.
• Vraag: hadden we de constructie dan niet meteen kunnen doorrekenen?
Antwoord: breekpunt wel, maar niet de verdeling van de diameters over de staven.
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Toepassing 3: de fouragerende mier
• Rooster van 32 x 32, als torus.
• Zwart is voedsel, grijs is pad (gelijk aan wit).
• Als voedsel uit een vakje opgegeten is, verwijnt het.
• De getallen geven bijzondere of interessante punten weer.
• Een mier wordt verwijderd in de volgende gevallen:
– Voedsel op.
– Doet er te lang over.
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
De mier!
Vier atomaire acties• Doe niets (de nul-actie).• Draai 900 naar links.• Draai 900 naar rechts.• Doe een stap naar voren.Elke actie ~ bitstring ter lengte 2
Toestanden De mier kan zich in een aantal niet noodzakelijk betekenisvolle toestanden bevinden.
Perceptie De mier ziet altijd en alleen het vakje vóór zich. Resultaat: VOER of GEEN-VOER.
Hier staat hij op
Dit ziet hij
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Voorbeeld van een geprogrammeerde mier met 4 toestanden
1. Kijk of er eten op de tegel voor je ligt, zo nee draai naar rechts
2. Kijk of er eten op de tegel voor je ligt, zo nee draai naar links
3. Kijk of er eten op de tegel voor je ligt, zo nee draai naar links
4. Kijk of er eten op de tegel voor je ligt, zo nee draai naar rechts
In alle andere gevallen: loop naar het eten, eet het
op, en ga terug naar Toestand 1
vier toestanden
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Een geprogrammeerde mier
00. Als VOER dan MOVE, eet en goto 00
Anders TURN-RIGHT en goto 01
01. Als VOER dan MOVE, eet en goto 00
Anders TURN-LEFT en goto 10
10. Als VOER dan MOVE, eet en goto 00
Anders TURN-LEFT en goto 11
11. Als VOER dan MOVE, eet en goto 00
Anders TURN-RIGHT en goto 00
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
De mier als eindige automaat
00 0 1
11 10
1? Move
1? Move
0? Rechts
0? Links
0? Rechts1? Move
0? Links1? Move
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Transitietabel voor de EA
Toestand Input Nieuwe Toestand
Actie
1 00 0 01 10 = Rechts
2 00 1 00 11 = Move
3 01 0 10 01 = Links
4 01 1 00 11 = Move
5 10 0 11 01 = Links
6 10 1 00 11 = Move
7 11 0 00 10 = Rechts
8 11 1 00 11 = Move
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Genoom Mier
Toestand 00 00 01 01 10 10 11 11
Input 0 1 0 1 0 1 0 1
Actie en nieuwe
toestand
Rechts Move Links Move Links Move Rechts Move
0110 0011 1001 0011 1101 0011 0010 0011
• Voor elke toestand vier bits: 2 voor de actie, en 2 voor de nieuwe toestand.
• Een chromosoom bestaat uit 8 x 4 = 32 bits + 2 bits als prefix om initiële toestand aan te geven. In totaal 34 bits.
• Enkelvoudige kruising op alle 31 snijpunten
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Eigenlijke experimenten
• Van een eindige automaat met vier toestanden mag je niet verwachten dat deze het probleem gaat oplossen.
• Jefferson, Collins en Cooper gebruikten chromosoom-representaties van eindige automaten tot aan 32 toestanden.
• 32 = 25. Dus bitstrings ter lengte 5 volstaan om 32 toestanden te representeren.
• Voor elke toestand heb je twee mogelijke inputs, dus je tabel wordt 64 rijen hoog.
• Voor elke rij moet je een actie (2 bits) en een nieuwe toestand (5 bits) geven 7 bits.
• Lengte chromosoom = 64 rijen x 7 bits + 5 bits als prefix voor de initiële toestand = 453 bits.
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Hercules:de winnaar van Generatie 0
• Score: 58 pellets
• Er heeft geen evolutie plaats-gevonden: Hercules is gewoon de beste van 65,536 willekeurig in elkaar gezette machines
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Joyner:de winnaar van Generatie 200
• Score: 89 pellets (perfect score)
• Groepjes van states hebben samen een functionaliteit die te duiden is als bijvoorbeeld:– follow straight trail (0
en 9)
– exploratie bij een onderbreking
– stepping stone van 78 t/m 89 food pallets
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Originele artikel
Originele artikel: Jefferson, D., Collins, R., Cooper, C., Dyer, M., Flowers, M., Korf, R., Taylor, C., and Wang, A. (1992). Evolution as a theme in artificial life: The Genesys/Tracker system. In Langton, C. G., Taylor, C., Farmer, J. D., and Rasmussen, S., editors, Artificial Life II: Proceedings of the Workshop on Artificial Life, pp. 549-577. Addison-Wesley
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Inleiding Adaptieve Systemen
Schema’s
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Grootte van de zoekruimte
• Bekijk een probleem P (in planning, optimalisatie of combinatoriek) waar kandidaat-oplossingen bitstrings zijn met lengte 81. (bv. handelsreiziger-probleem)
• P is niet te hanteren met conventionele zoekalgoritmen: voor L = 81 is de zoekruimte 281 ~ 1027 individuen groot.
Dat is (zegt men) het aantal nanoseconden sinds de oerknal 15 miljard jaar geleden.
• P is goed te hanteren door Genetische Algoritmen: bitstrings spelen de rol van chromosomen in een door ons te begrenzen populatie met grootte |P|.
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Terug naar de hamburgers
• Prijs / kwaliteit verhouding– 0 = Hoge prijs / kwaliteit
– 1 = Lage prijs / kwaliteit
• Drank– 0 = Wijn
– 1 = Cola
• Service– 0 = Snel maar onpersoonlijk
– 1 = Met aandacht, maar niet al te snel
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Waarom is 010 goed?
Ik heb geen flauw idee ***Het is de hoge kwaliteit 0**
Het is de cola *1*Het is de uitgebreide (maar trage) service **0
Het is de hoge kwaliteit in combinatie met de cola
01*
Het is de hoge kwaliteit in combinatie met de uitgebreide service
0*0
Het is de cola in combinatie met de uitgebreide service
*10
Het is de uitgekiende combinatie van service, kwaliteit en cola
010
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Schema = hypothese
• Een schema is een hypothese, i.e., een mogelijke verklaring.
• Sommige schema’s zijn specifiek ( bv. 10 * 10 ). Sommige schema’s zijn algemeen ( bv. * 0 * * * ).
• Bij een alfabet van K letters en chromosomen van lengte L zijn er (K+1)L schema’s.
• Elk chromosoom is lid van 2L schema’s.
(Immers voor elk bit in het chromosoom kunnen we dat bit, of een sterretje kiezen.)
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Schema’s waartoe 110 behoort
Schema nummer Schema
Gemiddelde opbrengst
1 110 € 6
2 11* € 6
3 1*0 € 6
4 1** € 6
5 *10 € 4
6 *1* € 3.67
7 **0 € 4
8 *** € 3
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Aantal voorkomens van Schema’s
Generatie 0
Schemanr. H m(H,0) f(H,0)
1 000 0 0
2 001 1 1
3 00* 1 1
4 010 1 2
5 011 1 3
6 01* 2 2.5
7 0*0 1 2
8 0*1 2 2
9 0** 3 2
10 100 0 0
11 101 0 0
12 10* 0 0
13 110 1 6
14 111 0 0
15 11* 1 6
16 1*0 1 6
17 1*1 0 0
18 1** 1 6
19 *00 0 0
20 *01 1 1
21 *0* 1 1
22 *10 2 4
23 *11 1 3
24 *1* 3 3.67
25 **0 2 4
26 **1 2 2
27 *** 4 3
Totaal 32 96
Gemiddeld 3.00
Reëel voor-komend
20 20
Tabel verkorten …
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Aantal voorkomens van schema’s
Generatie 0
Schemanr. H m(H,0) f(H,0)
1 000 0 0
2 001 1 1
3 00* 1 1
… … … …
25 **0 2 4
26 **1 2 2
27 *** 4 3
Totaal 32 96
Gemiddeld 3.00
Reëel voor-komend
20 20
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Gemiddelde fitnessvan schema’s in Generatie 1
Generatie 0Mating pool na reproductie
Generatie 1 na crossover
H m(H,0) f(H,0) m(H,MP) f(H,MP) m(H,1) f(H,1)
1 000 0 0 0 0 0 0
2 001 1 1 0 0 0 0
3 00* 1 1 0 0 0 0
4 010 1 2 1 2 2+ 2
5 011 1 3 1 3 0- 0
6 01* 2 2.5 2 2.5 2 2
7 0*0 1 2 1 2 0- 0
8 0*1 2 2 1 3 2+ 2
9 0** 3 2 2 2.5 2 2
10 100 0 0 0 0 0 0
11 101 0 0 0 0 0 0
12 10* 0 0 0 0 0 0
13 110 1 6 2 6 1- 6
14 111 0 0 0 0 1+ 7
15 11* 1 6 2 6 2 6.5
16 1*0 1 6 2 6 1- 6
17 1*1 0 0 0 0 1+ 7
18 1** 1 6 2 6 2 6.5
19 *00 0 0 0 0 0 0
20 *01 1 1 0 0 0 0
21 *0* 1 0 0 0 0
22 *10 2 4 3 4.67 3 3.3
23 *11 1 3 1 3 1 7
24 *1* 3 3.7 4 4.25 4 4.25
25 **0 2 4 3 4.67 3 3.3
26 **1 2 2 1 3 1 7
27 *** 4 3 4 4.25 4 4.25
Totaal 32 96 32 136 32 136
Gemiddeld 3.00 4.25 4.2
Reël voor-komend
20 20 16 16 16 16
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Gemiddelde fitnessvan schema’s in Generatie 1
Generatie 0Mating pool na reproductie
Generatie 1 na crossover
H m(H,0) f(H,0) m(H,MP) f(H,MP) m(H,1) f(H,1)
1 000 0 0 0 0 0 0
2 001 1 1 0 0 0 0
3 00* 1 1 0 0 0 0
… … … … … … … …
25 **0 2 4 3 4.67 3 3.3
26 **1 2 2 1 3 1 7
27 *** 4 3 4 4.25 4 4.25
Totaal 32 96 32 136 32 136
Gemiddeld 3.00 4.25 4.2
Reël voor-komend
20 20 16 16 16 16
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Het “geheim” achter het succes van Genetische Algoritmen
• John Holland (1975): GA = competitie tussen exponentieel veel hypothesen (schema’s) in een populatie waarvan de grootte N door ons zelf wordt bepaald, maar zeker niet exponentieel in K (aantal genomen) is.
• Er zijn (K+1)L (in ons geval 33 = 27) schema’s, vertegenwoordigd door N representanten.
• Het getal N hebben we zelf in de hand, en kunnen we lineair laten variëren (niet midden in één experiment natuurlijk).
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Proportionele fitness van een schema
• Fitness proportional selectie voor individu:
• Er volgt: fitness proportional selectie voor schema:
)(
)(1)( Defselecteer Xf
xf
Xxp
)(
)()(selecteer Xf
Hf
X
HHp
Gemiddelde fitness voor elementen in de verzameling X
Gemiddelde fitness voor elementen in de verzameling H
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
John Holland’s Schema Stelling
)1)(1()(
)()( 1 mc
t
t
t
tt Xf
Hf
X
HHp
Kans op voorko-men van Schema H in de
volgende generatie
Relatieve frequen-tie van H
in de huidige
generatie
Relatieve fitness
van Schema
H
Kans op
verlies van H
als gevolg cross-over
Kans op
verlies van H
als gevolg
van mutatie
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Kanttekeningen bij schemastelling
• Fitness functie is niet uniek en beïnvloedt daarom bovenstaande ongelijkheid (Grefenstette en Baker, 1989)
• Populatie is geen representatieve sample van schema (Mühlenbein, 1991)
Vgl. populatie 100. Misschien wordt schema ****1****** (met 1024 leden) daar slechts door, zeg, 45 exemplaren vertegenwoordigd.
• Formule ook al waar zonder mutatie en crossover!
• Ondergrens is weinig informatief (Vose, 1993).
Twee onzuivere dobbelstenen:
P( som even ) ≥ 0.47
P( som odd ) ≥ 0.42
Terwijl in werkelijkheid bijvoorbeeld:
P( som even ) = 0.48
P( som odd ) = 0.52
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Kanttekeningen bij GA
• Nut van schemastelling is controversieel– M.D. Vose (1993). A critical examination of the schema
theorem, Technical Report CS-93-212, University of Tennessee.
– Gary J. Koehler (1997). “New directions in genetic algorithm theory” in Annals of Operations Research, Vol. 75, pp. 49-68.
• No free lunch– D.H. Wolpert and W.G. Macready (1995). “No Free Lunch
theorems for optimization” in: IEEE Transactions on Evolutionary Computation, Vol. 1(1), pp. 67-82.
• Nut van crossover is controversieel– K. Chellapilla (1998). “Evolving Computer Programs without
Subtree Crossover” in: IEEE Transactions on Evolutionary Computation, Vol. 1(3), pp. 209-216.
Inleiding Adaptieve Systemen, Opleiding CKI, Utrecht. Auteur: Gerard Vreeswijk
Samenvatting
Een Genetisch Algoritme is een probabilistisch zoekalgoritme …
… dat door middel van iteratie een verzameling genotypen (bv. bitstrings), elk met een fitness-waarde, omzet in een nieuwe verzameling genotypen, …
… gebruikmakend van het Darwinistische principe van natuurlijke selectie …
… en gebruikmakend van operaties die zijn geïnspireerd op natuurlijk voorkomende genetische operaties, zoals kruising en mutatie.