Evolving Neural Network Agents in the NERO Video Game Author : Kenneth O. Stanley, Bobby D. Bryant, and Risto Miikkulainen Presented by Yi Cheng Lin.

Slides:



Advertisements
Similar presentations
Reinforcement Learning
Advertisements

Genetic Algorithms (Evolutionary Computing) Genetic Algorithms are used to try to “evolve” the solution to a problem Generate prototype solutions called.
1 An Adaptive GA for Multi Objective Flexible Manufacturing Systems A. Younes, H. Ghenniwa, S. Areibi uoguelph.ca.
Using Parallel Genetic Algorithm in a Predictive Job Scheduling
Constructing Complex NPC Behavior via Multi- Objective Neuroevolution Jacob Schrum – Risto Miikkulainen –
On the Genetic Evolution of a Perfect Tic-Tac-Toe Strategy
CAP6938 Neuroevolution and Developmental Encoding Leaky Integrator Neurons and CTRNNs Dr. Kenneth Stanley October 25, 2006.
Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)
On the Impact of Delay on Real-Time Multiplayer Games Authors: Lothar Pantel, Lars C. Wolf Presented by: Bryan Wong.
Genetic Algorithms, Part 2. Evolving (and co-evolving) one-dimensional cellular automata to perform a computation.
Neuro-Evolution of Augmenting Topologies Ben Trewhella.
1 Lecture 8: Genetic Algorithms Contents : Miming nature The steps of the algorithm –Coosing parents –Reproduction –Mutation Deeper in GA –Stochastic Universal.
Introduction to Evolutionary Computation  Genetic algorithms are inspired by the biological processes of reproduction and natural selection. Natural selection.
And Just Games etc.. EVOLUTION OF COMPUTER GAMES PongOdyssey Beginning of the use of microprocessors ATARI VCS system bit.
Evolutionary Algorithms Simon M. Lucas. The basic idea Initialise a random population of individuals repeat { evaluate select vary (e.g. mutate or crossover)
Motivate AI Class with Interactive Computer Game Author : Akcell Chiang Presented by Yi Cheng Lin.
PGA – Parallel Genetic Algorithm Hsuan Lee. Reference  E Cantú-Paz, A Survey on Parallel Genetic Algorithm, Calculateurs Paralleles, Reseaux et Systems.
1. 2 overview Background on video games Background on video games Neural networks Neural networks NE NE NEAT NEAT rtNEAT rtNEAT NERO NERO.
Evolutionary Computation Application Peter Andras peter.andras/lectures.
Marcus Gallagher and Mark Ledwich School of Information Technology and Electrical Engineering University of Queensland, Australia Sumaira Saeed Evolving.
1 Reasons for parallelization Can we make GA faster? One of the most promising choices is to use parallel implementations. The reasons for parallelization.
Evolving Multi-modal Behavior in NPCs Jacob Schrum – Risto Miikkulainen –
Genetic Algorithm.
Evolutionary Robotics NEAT / HyperNEAT Stanley, K.O., Miikkulainen (2001) Evolving Neural Networks through Augmenting Topologies. Competing Conventions:
Slides are based on Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems.
Cristian Urs and Ben Riveira. Introduction The article we chose focuses on improving the performance of Genetic Algorithms by: Use of predictive models.
Soft Computing Lecture 18 Foundations of genetic algorithms (GA). Using of GA.
Evolutionary Computation. Evolutionary Complexification Two major goals in intelligent systems are the discovery and improvement of solutions to complex.
CAP6938 Neuroevolution and Developmental Encoding Working with NEAT Dr. Kenneth Stanley September 27, 2006.
Jorge Munoz, German Gutierrez, Araceli Sanchis Presented by: Itay Bittan.
Study on Genetic Network Programming (GNP) with Learning and Evolution Hirasawa laboratory, Artificial Intelligence section Information architecture field.
Genetic Algorithms Michael J. Watts
Fundamentals of Information Systems, Third Edition2 Principles and Learning Objectives Artificial intelligence systems form a broad and diverse set of.
Optimization Problems - Optimization: In the real world, there are many problems (e.g. Traveling Salesman Problem, Playing Chess ) that have numerous possible.
Evolutionary Computation and Game Development Part 1: Background.
CAP6938 Neuroevolution and Developmental Encoding Developmental Encoding 2 Dr. Kenneth Stanley October 9, 2006.
CAP6938 Neuroevolution and Developmental Encoding Real-time NEAT Dr. Kenneth Stanley October 18, 2006.
Artificial Life/Agents Creatures: Artificial Life Autonomous Software Agents for Home Entertainment Stephen Grand, 1997 Learning Human-like Opponent Behaviour.
Performance Objectives and Content Analysis Chapter 8 (c) 2007 McGraw-Hill Higher Education. All rights reserved.
Mike Taks Bram van de Klundert. About Published 2005 Cited 286 times Kenneth O. Stanley Associate Professor at University of Central Florida Risto Miikkulainen.
科技英文作業 黃方世 陳竹軒. Introduction Talking about video games. Training agents for what. Focus on training Non-player-character (NPC).
Intelligent Database Systems Lab 國立雲林科技大學 National Yunlin University of Science and Technology 1 Evolving Reactive NPCs for the Real-Time Simulation Game.
Pac-Man AI using GA. Why Machine Learning in Video Games? Better player experience Agents can adapt to player Increased variety of agent behaviors Ever-changing.
Artificial Intelligence Research in Video Games By Jacob Schrum
CAP6938 Neuroevolution and Artificial Embryogeny Competitive Coevolution Dr. Kenneth Stanley February 20, 2006.
Evolving Multimodal Networks for Multitask Games
CAP6938 Neuroevolution and Developmental Encoding Evolving Adaptive Neural Networks Dr. Kenneth Stanley October 23, 2006.
CAP6938 Neuroevolution and Developmental Encoding Intro to Neuroevolution Dr. Kenneth Stanley September 18, 2006.
Riza Erdem Jappie Klooster Dirk Meulenbelt EVOLVING MULTI-MODAL BEHAVIOR IN NPC S.
Evolution and Learning “Exploring Adaptive Agency I/II” Miller & Todd, 1990.
CAP6938 Neuroevolution and Artificial Embryogeny Approaches to Neuroevolution Dr. Kenneth Stanley February 1, 2006.
CAP6938 Neuroevolution and Artificial Embryogeny Evolutionary Comptation Dr. Kenneth Stanley January 23, 2006.
CAP6938 Neuroevolution and Artificial Embryogeny Real-time NEAT Dr. Kenneth Stanley February 22, 2006.
An Evolutionary Algorithm for Neural Network Learning using Direct Encoding Paul Batchis Department of Computer Science Rutgers University.
Breeding Swarms: A GA/PSO Hybrid 簡明昌 Author and Source Author: Matthew Settles and Terence Soule Source: GECCO 2005, p How to get: (\\nclab.csie.nctu.edu.tw\Repository\Journals-
Genetic Algorithms And other approaches for similar applications Optimization Techniques.
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
AI in Space Group 3 Raquel Cohen Yesenia De La Cruz John Gratton.
CAP6938 Neuroevolution and Artificial Embryogeny Real-time NEAT Dr. Kenneth Stanley February 22, 2006.
Intelligent Database Systems Lab 國立雲林科技大學 National Yunlin University of Science and Technology 1 Intelligent Exploration for Genetic Algorithms Using Self-Organizing.
Genetic Algorithms.
What is a CAT? What is a CAT?.
Dr. Kenneth Stanley January 30, 2006
HyperNetworks Engın denız usta
Dr. Kenneth Stanley September 25, 2006
Evolving Multimodal Networks for Multitask Games
Dr. Kenneth Stanley September 20, 2006
Dr. Kenneth Stanley February 6, 2006
Lecture 4. Niching and Speciation (1)
Presentation transcript:

Evolving Neural Network Agents in the NERO Video Game Author : Kenneth O. Stanley, Bobby D. Bryant, and Risto Miikkulainen Presented by Yi Cheng Lin

Outline Introduction The behavior of agents Challenges to traditional Reinforcement learning (RL) techniques Real-time NeuroEvolution of augmenting Topologies (rtNEAT) NeuroEvolving Robotic Operatives (NERO) Playing NERO Conclusion

Introduction The world video game market in 2002 was between $15 billion and $20 billion This paper introduces the real-time NeuroEvolution of Augmenting Topologies (rt-NEAT) It’s purpose is let Non-player-character (NPC) interact with palyers in game playing

The behavior of agents The behavior of agents in current games is often repetitive and predictable Machine learning could potentially keep video games interesting by allowing agents to change and adapt a major problem with learning in video games is that if behavior is allowed to change, the game content becomes unpredictable

Challenges to traditional Reinfor - cement learning (RL) techniques Large state/action space Diverse behaviors Consistent individual behaviors Fast adaptation Memory of past states

Real-time NeuroEvolution of augmenting Topologies (rtNEAT) The rtNEAT method is based on NEAT, a technique for evolving neural networks for complex reinforcement learning task using a genetic algorithm NEAT is based on three key idea

NEAT First, tracking genes with historical markings to allow easy crossover between different topologies each unique gene in the population is assigned a unique innovation number, and the number are inherited during crossover protecting innovation via speciation

NEAT Second, the reproduction mechanism for NEAT is explicit fitness sharing, where organisms in the same species must share the fitness of their niche, preventing any one species from taking over the population Third, NAET begins with a uniform population of simple networks with no hidden nodes

Running NEAT in Real Time

rtNEAT After every n ticks of the game clock, rtNEAT performs the following operation: Step 1: Remove the agent with the worst adjusted fitness from the population assuming one has been alive sufficiently long so that it has been properly evaluated It is also important not to remove agents that are too young

rtNEAT Step 2: Re-estimate F for all species (F : average fitness) Step 3:Choose a parent species to create the new offspring,where is the average fitness of species k, is the sum of all the average species fitness

rtNEAT Step 4: Adjust compatibility threshold Ct dynamically and reassign all agents to species – the advantage of this kind of dynamic compatibility thresholding is that it keeps the number of species relatively stable Step 5: Replacing the old agent with the new one

Determining Ticks Between Replacements The appropriate frequency can be determined through a principled approach Parameter: – n : the ticks between replacements – I : the fraction of the population that is too young and therefore cannot be replaced – m : is the minimum time alive – |P| is the population size

Determining Ticks Between Replacements It is best to let the user choose I because in general it is most critical to performance rtNEAT can determine the correct number of ticks between replacements n to maintain a desired eligibility level. In NERO, 50% of the population remains eligible using this technique

NeuroEvolving Robotic Operatives (NERO) Training Mode – The player sets up training exercises by placing objects on the field and specifying goals through several sliders Battle Mode

Avoiding turret fire

Navigating a maze

Conclusion A real-time version of NEAT (rtNEAT) was developed to allow users to interact with evolving agents Using this method, it was possible to build an entirely new kind of video game, NERO, where the characters adapt in real time in response to the player’s actions