160 likes | 482 Views
Integrating CWU Chess in the ARENA Chess GUI. Adaptive Chess Program. Kyle Littlefield - CS Department. Advisor: Razvan Andonie. Program Collaborators. Ashur Odah (graduated 2004) Pushpinder Heer (graduated 2004) Joseph Lemnley (graduated 2006) Jonathan Widger (graduated 2006)
E N D
Integrating CWU Chess in the ARENA Chess GUI Adaptive Chess Program Kyle Littlefield - CS Department Advisor: Razvan Andonie Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
Program Collaborators • AshurOdah (graduated 2004) • PushpinderHeer (graduated 2004) • Joseph Lemnley (graduated 2006) • Jonathan Widger (graduated 2006) • BerkErkul (graduated 2007) • Lukas Magill (graduated 2008) • Kyle Littlefield (currently enrolled) Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
The CWU Chess Program • Genetic Algorithm trains 10 separate weights used in the neural network. • Increases in skill level per set of 10 games. Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
What is a Neural Network? • A neural network is excellent at classifying an input to an output. • It Starts with the basic unit called a Neuron • Outputs the “learned” result from the acquired input. • Takescontinuous input from an external source • Projects output based on the sum of the inputs and threshold of the neuron. Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
Criteria used by Neural Network Carrascal, A, Manrique, D, & Rios, J Neural networks evolutionary learning in chess game. Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
What is a Genetic Algorithm? • Uses a population of chromosomes • Each chromosome represents an individual. • Has a fitness value representinghow well it survives in this world Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
The Goal… • To optimize the population • Find the individuals with the highest fitness. • Avoid getting caught in a local optima Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
The CWU Chess Program • Genetic Algorithm trains 10 separate weights used in the neural network. • Increases in skill level per set of 10 games. • Neural Network controls the behavior of an Alpha-Beta Search algorithm. Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
What is an Alpha-Beta Search? • No need to evaluate the left branch of the examined node. • The value will be 1 or less. • The root will be 8. • A search algorithm • Seeks to reduce the number of nodes evaluated in a search tree. Node being Examined 8 Cut Off Region 8 1 8 9 1 8 5 2 9 0 1 Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
CWU Chess Program Running Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
The Problem • The CWU-Chess program used a Windows Form for a User Interface. • This didn’t allow for communications with other chess interfaces or engines. • The Universal Chess Interface (UCI) Protocol allowed this to happen. Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
The UCI Protocol • Uses the console to communicate between the User Interface and the Chess Engine. • Communication is performed by sending and receiving textual information. Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
Implementation • Remove the Windows Form Interface and all dependencies to it. • Redesign Genetic Algorithm fitness function and network parameters. • Redesign Genetic Algorithm fitness function and network parameters. • Parse UCI Commands and parameters. • Use them to control the engine. Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009
UCI Chess Running On ARENA Symposium On University Research and Creative Expression (SOURCE2009), Central Washington University, Ellensburg, USA, May 21st 2009