Upload
marina-mulder
View
213
Download
1
Embed Size (px)
Citation preview
OthelloInleiding Computationele Intelligentie
Chris Blom - 3020312
Martijn van den Heuvel - 3020355
Implementatie• Object-geörienteerd, (nog) geen optimalisaties, te
langzaam bij zoekdieptes > 4
• Verzamelingen parameters gerepresenteerd als • Player-klasse
• Uitgebreide mogelijkheden om de prestaties bij verschillende parameters met elkaar te vergelijken
• Vergelijken van prestatie bij één potje: score = • (aantal eigen stenen – aantal stenen tegenstander)• Op deze manier zien we ook hoe 'hard' een set
parameters wint en niet alleen hoe vaak
Implementatie• Prestaties vergelijken we door Players meerdere
potjes tegen elkaar te laten spelen in een toernooi, en de de gemiddelde scores te berekenen
• De gemiddelde score is ook de fitness in het evolutionaire algoritme.
• Evolutie door middel van recombinatie en mutatie van de stabiliteitswaarden.
• Evolutionaire algoritme kunnen we niet goed testen omdat de implementatie te inefficiënt is.
Resultaten
• Systeem:
– AMD Phenom Quadcore 2,3 GHz– 2 GB geheugen– Geen threads
Resultaten
• Wegingsfactor {0.1, 0.5, 1, 5, 10, 15, 20}• 21 competities• Zoekdiepte 1 – 5• Stabiliteitswaarden = 1• Totaal 105 potjes• Exponentiele toename in tijd!
Resultaten
Zoekdiepte Gemiddelde tijd (ms)
1 150
2 548
3 5.953
4 14.179
5 87.627
Resultaten
Wegingsfactor {0.1, 0.5, 1, 5, 10, 15, 20}
• Zoekdiepte 1 – 4• 5 rondes• Totaal 105 potjes• Zeer diverse resultaten
Zoekdiepte 1 2 3 4
Plaats
1 1 1 20 0.5
2 10 0.1 5 1
3 20 0.5 10 0.1
Stabiliteitswaarden: {50} {-1 ,-10} { 5 , 1 , 1} { 2 , 1 , 1 , 0}
Resultaten
• Wegingsfactor {0.1, 0.5, 1, 5, 10, 15, 20}• Stabiliteitswaarden = 1• Zoekdiepte 1 – 4• 5 rondes• Totaal 105 potjes• Zeer diverse resultaten
Zoekdiepte 1 2 3 4
Plaats
1 0.5 1 1 20
2 0.1 0.1 5 15
3 5 10 0.5 0.5
Resultaten
• Alle wegingsfactoren tegen kloon• Enige verschil: stabiliteitswaarden• 5 ronden• Aangepaste stabiliteitswaarden altijd beter
Uitbreiding• Genetisch algoritme
• We evolueren alleen de stabiliteitswaarden
• Fitness bepaald door prestatie in het toernooi.
• Mutatie door elke stabiliteitswaarde met een bepaalde kans random te veranderen
• Recombinatie door willekeurig twee tabellen samen te voegen
• Nog geen uitgebreide experimenten kunnen doen• om geschikte parameters en selectiemethode te vinden
Discussie
• Optimaliseren oa. Minimax
– Sneller– Dieper
• Genetisch algoritme uitwerken