Evolution and Coevolution of Artificial Neural Networks playing Go Thesis by Peter Maier, Salzburg, April 2004 Additional paper used Computer Go, by Martin.

Slides:



Advertisements
Similar presentations
Artificial Neural Networks
Advertisements

Multi-Layer Perceptron (MLP)
A Brief Overview of Neural Networks By Rohit Dua, Samuel A. Mulder, Steve E. Watkins, and Donald C. Wunsch.
Slides from: Doug Gray, David Poole
NEURAL NETWORKS Backpropagation Algorithm
1 Machine Learning: Lecture 4 Artificial Neural Networks (Based on Chapter 4 of Mitchell T.., Machine Learning, 1997)
Introduction to Neural Networks Computing
Artificial Neural Networks (1)
NEURAL NETWORKS Perceptron
1 Neural networks. Neural networks are made up of many artificial neurons. Each input into the neuron has its own weight associated with it illustrated.
Artificial Intelligence 13. Multi-Layer ANNs Course V231 Department of Computing Imperial College © Simon Colton.
Kostas Kontogiannis E&CE
Artificial Neural Networks
Machine Learning Neural Networks
Honte, a Go-Playing Program Using Neural Nets Frederik Dahl.
Prénom Nom Document Analysis: Artificial Neural Networks Prof. Rolf Ingold, University of Fribourg Master course, spring semester 2008.
Connectionist models. Connectionist Models Motivated by Brain rather than Mind –A large number of very simple processing elements –A large number of weighted.
Neural Networks Marco Loog.
Neural Networks. R & G Chapter Feed-Forward Neural Networks otherwise known as The Multi-layer Perceptron or The Back-Propagation Neural Network.
1 of 81 Evolution and Coevolution of ANNs playing Go Peter Mayer, 2004.
Back-Propagation Algorithm
Artificial Neural Networks
CHAPTER 11 Back-Propagation Ming-Feng Yeh.
Artificial Neural Network
Neural Networks. Background - Neural Networks can be : Biological - Biological models Artificial - Artificial models - Desire to produce artificial systems.
1 Introduction to Artificial Neural Networks Andrew L. Nelson Visiting Research Faculty University of South Florida.
Evolving a Sigma-Pi Network as a Network Simulator by Justin Basilico.
Artificial Neural Networks (ANN). Output Y is 1 if at least two of the three inputs are equal to 1.
Artificial Neural Networks
Slides are based on Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems.
Soft Computing Lecture 18 Foundations of genetic algorithms (GA). Using of GA.
Chapter 9 Neural Network.
Neural Networks AI – Week 23 Sub-symbolic AI Multi-Layer Neural Networks Lee McCluskey, room 3/10
Waqas Haider Khan Bangyal. Multi-Layer Perceptron (MLP)
11 CSE 4705 Artificial Intelligence Jinbo Bi Department of Computer Science & Engineering
Computer Go : A Go player Rohit Gurjar CS365 Project Proposal, IIT Kanpur Guided By – Prof. Amitabha Mukerjee.
 Diagram of a Neuron  The Simple Perceptron  Multilayer Neural Network  What is Hidden Layer?  Why do we Need a Hidden Layer?  How do Multilayer.
LINEAR CLASSIFICATION. Biological inspirations  Some numbers…  The human brain contains about 10 billion nerve cells ( neurons )  Each neuron is connected.
Artificial Neural Networks. The Brain How do brains work? How do human brains differ from that of other animals? Can we base models of artificial intelligence.
Neural Network Basics Anns are analytical systems that address problems whose solutions have not been explicitly formulated Structure in which multiple.
Back-Propagation Algorithm AN INTRODUCTION TO LEARNING INTERNAL REPRESENTATIONS BY ERROR PROPAGATION Presented by: Kunal Parmar UHID:
CS621 : Artificial Intelligence
Introduction to Neural Networks Introduction to Neural Networks Applied to OCR and Speech Recognition An actual neuron A crude model of a neuron Computational.
Neural Networks Vladimir Pleskonjić 3188/ /20 Vladimir Pleskonjić General Feedforward neural networks Inputs are numeric features Outputs are in.
1 Perceptron as one Type of Linear Discriminants IntroductionIntroduction Design of Primitive UnitsDesign of Primitive Units PerceptronsPerceptrons.
Perceptrons Michael J. Watts
Previous Lecture Perceptron W  t+1  W  t  t  d(t) - sign (w(t)  x)] x Adaline W  t+1  W  t  t  d(t) - f(w(t)  x)] f’ x Gradient.
Artificial Intelligence CIS 342 The College of Saint Rose David Goldschmidt, Ph.D.
Neural Networks Lecture 4 out of 4. Practical Considerations Input Architecture Output.
Computational Intelligence Semester 2 Neural Networks Lecture 2 out of 4.
An Evolutionary Algorithm for Neural Network Learning using Direct Encoding Paul Batchis Department of Computer Science Rutgers University.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Neural networks.
Fall 2004 Backpropagation CS478 - Machine Learning.
Artificial Neural Networks
Artificial neural networks
CSE 473 Introduction to Artificial Intelligence Neural Networks
with Daniel L. Silver, Ph.D. Christian Frey, BBA April 11-12, 2017
CSE P573 Applications of Artificial Intelligence Neural Networks
Machine Learning Today: Reading: Maria Florina Balcan
of the Artificial Neural Networks.
Perceptron as one Type of Linear Discriminants
CSE 573 Introduction to Artificial Intelligence Neural Networks
Neural Network - 2 Mayank Vatsa
Machine Learning: Lecture 4
Machine Learning: UNIT-2 CHAPTER-1
Artificial Neural Networks
CS621: Artificial Intelligence Lecture 22-23: Sigmoid neuron, Backpropagation (Lecture 20 and 21 taken by Anup on Graphical Models) Pushpak Bhattacharyya.
David Kauchak CS158 – Spring 2019
Outline Announcement Neural networks Perceptrons - continued
Presentation transcript:

Evolution and Coevolution of Artificial Neural Networks playing Go Thesis by Peter Maier, Salzburg, April 2004 Additional paper used Computer Go, by Martin Müller Presented by Dima Stopel

Overview  Go: History and Rules  Role of the computer in Go  Brief introduction to ANN  Experimental Setup  Training of Go playing ANN’s  Evolution of Go playing ANN’s

History of Go  Go is an ancient Chinese board game that is believed to be 2,000 to 4,000 years old.  Go is played around the world, and has several names. The Chinese call it Wei-chi. In Korea it’s Baduk. The Japanese word is Igo, or just Go.

Go Basics Stones and Board   Boards   Standard 19x19   Beginners 9x9 13x13   Stones   180 White   181 Black

Go Basics GamePlay and Winning Condition   Play starts on an empty board.   Players put their stones at the intersections of the lines on the board.   Players can pass at any time.   Consecutive passes end the game.   The goal of the game is to control a larger area than the opponent and take more prisoners.

Go Basics Three Rules of Go  Rule 1   Stones of one color that have been completely surrounded by the opponent are removed from the board as prisoners. Liberties

Go Basics Three Rules of Go  Rule 2   No suicide moves are allowed.

Go Basics Three Rules of Go  Rule 3 – The “Ko” rule.   No infinity.

Overview  Go: History and Rules  Role of the computer in Go  Brief introduction to ANN  Experimental Setup  Training of Go playing ANN’s  Evolution of Go playing ANN’s

State of computer in Go The challenge   It is easy to write a Go program that can play a complete game. However, it is hard to write a program that plays well.

State of computer in Go Overview picture 1980 The Ing Foundation’s issues a million dollar prize for a professional level Go program

State of computer in Go The challenge   Computer Go poses many formidable conceptual, technical and software engineering challenges.   Most programs have required 5–15 person- years of effort.   Contained 50–100 modules dealing with different aspects of the game.   The fact that despite all these efforts the current level of programs is still modest

State of computer in Go The challenge   The search space for 19 × 19 Go is very large compared to other popular board games.   The number of distinct board positions is, and about 1.2% of these are legal.   In chess 20 potential moves from a board position are available, but on a standard 19x19 Go board there are about 200–300 potential moves.

Overview  Go: History and Rules  Role of the computer in Go  Brief introduction to ANN  Experimental Setup  Training of Go playing ANN’s  Evolution of Go playing ANN’s

Brief intro to ANN History and motivation  1943 Warren McCulloch, Walter Pitts A Logical Calculus of Ideas Immanent in Nervous Activity  1958 Frank Rosenblatt Perceptron  1969 M. Minsky, S. Papert's Perceptrons  1974 Paul Werbos Back-propagation  1986 D. E. Rumelhart Learning internal representation by error propagation.  1991 K. Hornik Approximation capabilities of multilayer feed forward networks.

Brief intro to ANN General facts  Data Driven Model  One of the most flexible mathematical models for Data Mining.  Very powerful when trying to solve very complex non linear problems

Brief intro to ANN Weights and Biases – Artificial Neuron Non linear power!

Brief intro to ANN Example – XOR problem (0,1) (0,0) (1,0) (1,1)

Brief intro to ANN Example – Spam problem

Brief intro to ANN Activation Functions Logistic Sigmoid Hyperbolic Tangent Sign Function

Brief intro to ANN multilayer perceptron Inputs Hidden Layer Output Layer Neurons Weights

Brief intro to ANN multilayer perceptron  Most ANN architectures are:  Feed Forward  Layered (two layers)  In the past up to three layers were used.  There are a lot of more other types:  Recurrent Networks  Feed Forward but not layered

Brief intro to ANN Learning Procedure  The process of determining the values for W on the basis of the data is called learning or training  We want to make as close as possible to We can achieve this by minimizing the error function by changing W (weights). Error function example Sum Of Squares

Brief intro to ANN Example – Gradient Descent Error function derivative calculation Next weight calculation

Evolution approach Together with ANN   Parts that can be evolved   Connection weights   Network topology   Hidden neurons amount   Activation functions

Overview  Go: History and Rules  Role of the computer in Go  Brief introduction to ANN  Experimental Setup  Training of Go playing ANN’s  Evolution of Go playing ANN’s

Experimental Setup The Referee and Game Ending   Referee   JaGo, a Go playing Java program written by Fuming Wang, slightly improved   Game Ending   Each players passes   When one player placed all of his stones   There are no free intersections left   Fools Draw

Experimental Setup Computer Go players   Random Player   Only knows the rules   Naïve Player   Knows the rules   Knows some basic strategies   JaGo Player   JaGo is the best computer player that have been used   Estimated rank ~16 kyu

Experimental Setup ANN Player   Creativity factor   Strength (wins / games) 2000 games with each player, total 6000 games

Experimental Setup Go Board Representation   Standard input representation   Two inputs for each intersections   Naïve input representation   One input for each intersections   Limited View Input Representation   w sized windows

Experimental Setup Output Representation   Standard output representation   One output for each intersections   Row-Column output representation   One for each row or column

Experimental Setup Techniques used   Simple Training   Simple Evolution   Using Random,Naïve and JaGo players   Simple Coevolution   Competing against each other   Cultural Coevolution   Competing against culture   Hall of Fame Coevolution   Competing against HoF

Experimental Setup ANN Encoding   Feed Forward ANN   Three chromosomes were used   Binary: Connections Encoding   Binary: Hidden Neurons Encoding   Real: Weights and Biases Encoding   Recurrent ANN   Two chromosomes were used (no hidden layer)   Binary: Connections Encoding   Real: Weight and Biases Encoding   Generally Two Point Crossover were used   Strength function were used always as fitness

Overview  Go: History and Rules  Role of the computer in Go  Brief introduction to ANN  Experimental Setup  Training of Go playing ANN’s  Evolution of Go playing ANN’s

Training of Go playing ANN ’ s   Feed forward, fully connected ANN’s were used   Each training experiment is repeated 20 times   Training set consisted of Go games played by JaGo against itself   Sigmoid function was used   Number of connections:   For straight evaluation each network played 2000 games against three players   Learning algorithm used: Resilient back– propagation

Training of Go playing ANN ’ s

Overview  Go: History and Rules  Role of the computer in Go  Brief introduction to ANN  Experimental Setup  Training of Go playing ANN’s  Evolution of Go playing ANN’s

Evolution of Go playing ANN ’ s Initialization   Binary chromosomes: randomly set with probability p.   Real chromosomes: randomly set to small random values between -0.1 and 0.1   Maximum of 20 hidden neurons were used.   20 experiments for each run   End conditions: Fitness (strength) = 1 or 3000 generations reached.

Evolution of Go playing ANN ’ s Results for Random Interesting observation: Output values of ANN’s wasn’t influenced by the inputs. Just tried to catch important places (mainly in the middle of the board).

Evolution of Go playing ANN ’ s Results for Na ï ve Important observation: ANN is able to learn basic Go by means of evolution. > 200 generations => all ANN could win by rate of 50%

Evolution of Go playing ANN ’ s Results for JaGo Important observation: 1000 generation for mean fitness of 0.4. Standard deviation is twice as high as for Naïve.

Evolution of Go playing ANN ’ s Results for JaGo – Recurrent ANN ’ s Important observation: Within 1000 generation a individual evolved with fitness function of 1!

Evolution of Go playing ANN ’ s Cultural Coevolution Culture Population

Evolution of Go playing ANN ’ s Results for Cultural Coevolution “The analysis of these culture ANNs showed that the ANNs— when playing the black stones—take advantage of a weakness of JaGo.”

Evolution of Go playing ANN ’ s Results for HoF Poor related to Cultural

The End Any Questions ?

The End Thank you ;)