Download presentation
Presentation is loading. Please wait.
1
Optimizing the State Eval Heuristic of Abalone using Evolutionary Algorithms Benjamin Rhew November 28, 2005
2
The Roadmap Why Should We Optimize? Why Use an Evolutionary Algorithm? Previous Work Abalone Explained Experimental Setup What is a Two-Pool EA? Evolutionary Algorithm Details Future Work
3
Why Should We Optimize? Heuristics are everywhere Spam filters Speech recognition software Have limitations Slow, but good solution Fast, but poor solution So optimize!
4
Why Use an Evolutionary Algorithm? Heuristic development takes time Improbable for a person to design the optimal heuristic Need to test many different heuristics Therefore, an EA is called for
5
Previous Work There is a lot of previous work, mainly involving chess heuristics Chess-specific algorithms Works mainly on chess playing programs Do not play among themselves Population dynamics This approach should be more general
6
Abalone Explained Board Game developed in the 1990s Sumo Wrestling with Marbles... Program Demo
7
Experimental Setup Main Idea – the fitness of an individual depends on how well that individual plays games Randomly chosen Play 2 games, one as each color Takes a long time Therefore, a steady-state two-pool EA with high selective pressure is used
8
What is a Two-Pool EA? An EA where individuals are in two groups Can use many separations Male/Female Predator/Prey Child/Adult In this case, child/adult is used
9
Evolutionary Algorithm Details Parent Selection – stochastic, based on fitness Survival Selection – stochastic/elitist, with worst individual having highest chance of dying Initial Population – small, 20 individuals Recombination – N-point crossover Mutation – Gaussian Random Variable Fitness – number of wins divided by the number of games played Initialization – small random floats near 1
10
Evolutionary Algorithm Details Evolutionary Process – individual will not be killable in the first 10 generations of its life Three possible Gene Representations: Take each part of the previous heuristic and multiply it by a constant Subdivide parts of the previous heuristic and multiply each part by a constant Completely subdivide previous heuristic and multiply each part by a constant
11
Evolutionary Algorithm Details Gene 1: board1, board2, mymarbles, oppmarbles, age Gene 2: board1_1...board1_5, board2_1...board2_5, mymarbles, oppmarbles, age Gene 3: board1_1_1...board1_9_9, board2_1_1...board2_9_9, mymarbles, oppmarbles, age
12
Evolutionary Algorithm Details Gene 1: Gene 2: Gene 3:
13
Future Work Results Compare different fitness function strategies Compare different gene representations Use Genetic Programming to evolve new heuristics from scratch
14
Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.