George Rush Modified by Dr. T

Slides:



Advertisements
Similar presentations
KEY CONCEPT Evolution occurs in patterns.
Advertisements

1/12 Vision based rock, paper, scissors game Patrik Malm Standa Mikeš József Németh István Vincze.
KEY CONCEPT A population shares a common gene pool.
Ocober 10, 2012Introduction to Artificial Intelligence Lecture 9: Machine Evolution 1 The Alpha-Beta Procedure Example: max.
KEY CONCEPT A population shares a common gene pool.
CSI Evolutionary Computation Fall Semester, 2009.
Chapter 11 Biology Textbook
Se Over the past decade, there has been an increased interest in providing new environments for teaching children about computer programming. This has.
Coevolutionary Models A/Prof. Xiaodong Li School of Computer Science and IT, RMIT University Melbourne, Australia April.
Probability Distributions. Essential Question: What is a probability distribution and how is it displayed?
Pareto Coevolution Presented by KC Tsui Based on [1]
Motivation As we’ve seen, chaos in nonlinear oscillator systems, such as the driven damped pendulum discussed last time is very complicated! –The nonlinear.
Intelligent Database Systems Lab 國立雲林科技大學 National Yunlin University of Science and Technology 1 Evolving Reactive NPCs for the Real-Time Simulation Game.
4.5 Inverse of a Square Matrix
CIAO Plots George Rush. Motivation Assignment 2c: Bonus 2 ▫“Up to 10% bonus points can be earned by investigating under what circumstances coevolutionary.
October 1, 2013Computer Vision Lecture 9: From Edges to Contours 1 Canny Edge Detector However, usually there will still be noise in the array E[i, j],
PowerPoint Tutorial.  Once the data collected portion of an experiment is completed, the work of determining the relationship between the variables begins.
11.1 Genetic Variation Within Population KEY CONCEPT A population shares a common gene pool.
11.5 Speciation Through Isolation KEY CONCEPT New species can arise when populations are isolated.
Evolutionary Computing Systems Lab (ECSL), University of Nevada, Reno 1 Authors : Siming Liu, Christopher Ballinger, Sushil Louis
March 1, 2016Introduction to Artificial Intelligence Lecture 11: Machine Evolution 1 Let’s look at… Machine Evolution.
Genetic Algorithm in TDR System
INTRODUCTION TO STATISTICS
Straight Line Graph.
8.2 Estimating Population Means
Immune-inspired Network Intrusion Detection System (i-NIDS)
Evolving the goal priorities of autonomous agents
§ 2.3 The First and Second Derivative Tests and Curve Sketching.
An Adept Edge Detection Algorithm for Human Knee Osteoarthritis Images
Microsoft Office Excel 2003 Lesson 4
Why Be Random? What is it about chance outcomes being random that makes random selection seem fair? Two things: Nobody can guess the outcome before it.
Evolution strategies Can programs learn?
Equilibrium, Speciation and Patterns in Evolution
Local Search Algorithms
Basic Rendering Techniques
Introduction to Summary Statistics
Introduction to Summary Statistics
HMD Bio Chapter 11 Section 4 KEY CONCEPT Hardy-Weinberg equilibrium provides a framework for understanding how populations evolve.
Writing Functions( ) (Part 5)
Relationship between Current, Voltage, and Resistance
Fitting Curve Models to Edges
Biologist now know that natural selection is not the only mechanism of evolution
Introduction to Summary Statistics
Introduction to Summary Statistics
“Truths & Misconceptions About Evolution” Get out your spirals and title your notes. Adapted from the UC Berkley website:
From a presentation by Jimmy Huff Modified by Josiah Yoder
KS4 Mathematics Linear Graphs.
Introduction to Summary Statistics
G5BAIM Artificial Intelligence Methods
Example of a line of best fit y
Equilibrium, Speciation and Patterns in Evolution
Chapter 11 Biology Textbook
6.2 Grid Search of Chi-Square Space
Modelling Language Evolution Lecture 3: Evolving Syntax
Introduction to Artificial Intelligence Lecture 11: Machine Evolution
George Rush Modified by Dr. T
Introduction to Summary Statistics
Searching for solutions: Genetic Algorithms
Graphing a Linear Equation
Quadratic Equations Chapter 4.
The Information Content of Receptive Fields
Introduction to Summary Statistics
More on HW 2 (due Jan 26) Again, it must be in Python 2.7.
More on HW 2 (due Jan 26) Again, it must be in Python 2.7.
First Exam 18/10/2010.
Local Search Algorithms
Introduction to Summary Statistics
A8 Linear and real-life graphs
Histogram The histogram of an image is a plot of the gray _levels values versus the number of pixels at that value. A histogram appears as a graph with.
Introduction to Artificial Intelligence Lecture 22: Computer Vision II
Presentation transcript:

George Rush Modified by Dr. T CIAO Plots George Rush Modified by Dr. T

Motivation Coevolution is hard to visualize & analyze in traditional ways, such as eval-fitness plots; CIAO plots are a way to accomplish this. Assignment 2c: Bonus 4 Up to 20 bonus points can be earned by investigating under what circumstances coevolutionary cycling occurs in Ms. Pac-Man and the Ghosts and adding a section to the document to describe all aspects of your investigation, including CIAO plots [2] to visualize your findings. This is also fair game for Exam 3 & Final Exam.

What Are CIAO Plots? Current Individual vs. Ancestral Opponents These are used to visually convey the progress of two populations during coevolution. Note that each CIAO plot should have n by n pixels, where n is the number of generations.

Problems in Coevolution Cycling Both populations circle around to previous solutions over and over again (e.g., rock-paper- scissors). Disengagement One population becomes so powerful that the other is overwhelmed and cannot make progress. Mediocre Stability Neither side evolves. This can happen if both opponents are too weak to provide any incentive to evolve (fitness landscape is basically flat).

Cycling Should show striation (stripes), but may not be horizontal. Could be vertical, diagonal, etc. These plots are actually caused by random survival selection, but illustrate the idea.

Cycling (continued)

Disengagement Long periods of inactivity. One side will have consistently high fitness while the other is low.

Mediocre Stability Neither side changes much, and neither seems to be much stronger.

What Do CIAO Plots of Good Evolution Look Like? Relatively smooth gradients showing evolution on both sides.

More CIAO Plots of Good Evolution

How to Generate CIAO Plots Store the best member of each population during each generation. Population A Population B

How to Generate CIAO Plots Choose which population corresponds to the x- axis and y-axis. Each y-axis ancestor must fight the ghosts of their strongest enemies throughout time, so all ancestral opponents (from before that generation). Record fitness each time.

How to Generate CIAO Plots Normalize the fitness data on a [0, 1] scale. Here is pseudocode to do this: find minimum recorded fitness value (minFitness) if minFitness < 0 add |minFitness| to all fitness values else if minFitness > 0 subtract minFitness from all fitness values find maximum from current fitness values (maxFitness) divide all fitness values by maxFitness [ 1, 3, 5, 9 ] [ 0, 2, 4, 8 ] [ 0, 0.25, 0.5, 1 ]

How to Generate CIAO Plots Create an image pixel by pixel. Darker pixels (lower luminance) are considered to be better for the party on the y-axis. Since CIAO plots are grayscale and the fitness values are normalized on [0, 1], each pixel can be set using luminance. Note that fitness may first need to be subtracted from 1 if higher fitness is considered better. luminance = fitness * maxLuminance OR luminance = (1 – fitness) * maxLuminance

Creating Images For building images pixel by pixel, I recommend using Pillow (https://python-pillow.github.io/). This is a fork of the Python Imaging Library. I have used it here to output PNG images. In C++, you might try creating BMP images manually: http://stackoverflow.com/questions/1863344/c- creating-image Alternately, there are C++ libraries for this as well, but I have not tried them. For instance: http://pngwriter.sourceforge.net/ http://stackoverflow.com/questions/3544359/is-it- possible-to-create-an-image-with-c

References Dave Cliff and Geoffrey F. Miller, Tracking the red Queen: Measurements of Adaptive Progress in CoEvolutionary Simulations. In Advances in Artificial Life, Lecture Notes in Computer Science, Volume 929, Pages 200-218, Springer-Verlag, Berlin Heidelberg, 1995, ISBN 978-3-540-59496-3. http://www. cs.uu.nl/docs/vakken/ias/stuff/cm95.pdf George Rush, Daniel R. Tauritz, and Alexander D. Kent. Coevolutionary Agent-based Network Defense Lightweight Event System (CANDLES). In Proceedings of the 17th Annual Conference Companion on Genetic and Evolutionary Computation (GECCO Comp '15), ACM, pages 859 – 866, Madrid, Spain, July 11-15, 2015.