Competitive Coevolution (Predator-Prey Coevolution)

Slides:



Advertisements
Similar presentations
Local Search Jim Little UBC CS 322 – CSP October 3, 2014 Textbook §4.8
Advertisements

Using Parallel Genetic Algorithm in a Predictive Job Scheduling
1 Transportation problem The transportation problem seeks the determination of a minimum cost transportation plan for a single commodity from a number.
On the Genetic Evolution of a Perfect Tic-Tac-Toe Strategy
Best-First Search: Agendas
Genetic Algorithms, Part 2. Evolving (and co-evolving) one-dimensional cellular automata to perform a computation.
CPSC 322, Lecture 14Slide 1 Local Search Computer Science cpsc322, Lecture 14 (Textbook Chpt 4.8) February, 3, 2010.
1 Lecture 8: Genetic Algorithms Contents : Miming nature The steps of the algorithm –Coosing parents –Reproduction –Mutation Deeper in GA –Stochastic Universal.
COMP305. Part II. Genetic Algorithms. Genetic Algorithms.
COMP305. Part II. Genetic Algorithms. Genetic Algorithms.
P OPULATION -B ASED I NCREMENTAL L EARNING : A Method for Integrating Genetic Search Based Function Optimization and Competitive Learning 吳昕澧 Date:2011/07/19.
Selecting Informative Genes with Parallel Genetic Algorithms Deodatta Bhoite Prashant Jain.
Genetic Algorithm Genetic Algorithms (GA) apply an evolutionary approach to inductive learning. GA has been successfully applied to problems that are difficult.
Normalised Least Mean-Square Adaptive Filtering
Genetic Algorithms Overview Genetic Algorithms: a gentle introduction –What are GAs –How do they work/ Why? –Critical issues Use in Data Mining –GAs.
Genetic Algorithms: A Tutorial
Genetic Algorithm.
Chapter 3 Linear Programming Methods 高等作業研究 高等作業研究 ( 一 ) Chapter 3 Linear Programming Methods (II)
© Negnevitsky, Pearson Education, CSC 4510 – Machine Learning Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University.
by B. Zadrozny and C. Elkan
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.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
CS 484 – Artificial Intelligence1 Announcements Lab 3 due Tuesday, November 6 Homework 6 due Tuesday, November 6 Lab 4 due Thursday, November 8 Current.
More on coevolution and learning Jing Xiao April, 2008.
Coevolutionary Models A/Prof. Xiaodong Li School of Computer Science and IT, RMIT University Melbourne, Australia April.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Genetic Algorithms Michael J. Watts
Constraint Satisfaction Problems (CSPs) CPSC 322 – CSP 1 Poole & Mackworth textbook: Sections § Lecturer: Alan Mackworth September 28, 2012.
Boltzmann Machine (BM) (§6.4) Hopfield model + hidden nodes + simulated annealing BM Architecture –a set of visible nodes: nodes can be accessed from outside.
Yaomin Jin Design of Experiments Morris Method.
1/27 Discrete and Genetic Algorithms in Bioinformatics 許聞廉 中央研究院資訊所.
1 “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations of things, solutions.
Neural and Evolutionary Computing - Lecture 9 1 Evolutionary Neural Networks Design  Motivation  Evolutionary training  Evolutionary design of the architecture.
GENETIC ALGORITHM A biologically inspired model of intelligence and the principles of biological evolution are applied to find solutions to difficult problems.
1 Combinatorial Problem. 2 Graph Partition Undirected graph G=(V,E) V=V1  V2, V1  V2=  minimize the number of edges connect V1 and V2.
Optimization with Neural Networks Presented by: Mahmood Khademi Babak Bashiri Instructor: Dr. Bagheri Sharif University of Technology April 2007.
© Negnevitsky, Pearson Education, Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
2005MEE Software Engineering Lecture 11 – Optimisation Techniques.
Algorithms and their Applications CS2004 ( ) 13.1 Further Evolutionary Computation.
Evolutionary Algorithms for Finding Optimal Gene Sets in Micro array Prediction. J. M. Deutsch Presented by: Shruti Sharma.
Evolution Programs (insert catchy subtitle here).
 Based on observed functioning of human brain.  (Artificial Neural Networks (ANN)  Our view of neural networks is very simplistic.  We view a neural.
Introduction to Genetic Algorithms. Genetic Algorithms We’ve covered enough material that we can write programs that use genetic algorithms! –More advanced.
Tetris Agent Optimization Using Harmony Search Algorithm
Genetic Algorithms Genetic algorithms provide an approach to learning that is based loosely on simulated evolution. Hypotheses are often described by bit.
1 Danny Hillis and Co-evolution Between Hosts and Parasites I 590 4/11/2005 Pu-Wen(Bruce) Chang.
GeneMANIA: a real-time multiple association network integration algorithm for predicting gene function Sara Mostafavi, Debajyoti Ray, David Warde-Farley,
GENETIC ALGORITHM Basic Algorithm begin set time t = 0;
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
CHAPTER 14 Competitive Networks Ming-Feng Yeh.
N- Queens Solution with Genetic Algorithm By Mohammad A. Ismael.
1 Autonomic Computer Systems Evolutionary Computation Pascal Paysan.
Support Vector Machines Reading: Ben-Hur and Weston, “A User’s Guide to Support Vector Machines” (linked from class web page)
Genetic Algorithm Dr. Md. Al-amin Bhuiyan Professor, Dept. of CSE Jahangirnagar University.
1 Combinatorial Problem. 2 Graph Partition Undirected graph G=(V,E) V=V1  V2, V1  V2=  minimize the number of edges connect V1 and V2.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Genetic Algorithms. Solution Search in Problem Space.
Constraints Satisfaction Edmondo Trentin, DIISM. Constraint Satisfaction Problems: Local Search In many optimization problems, the path to the goal is.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Chapter 14 Genetic Algorithms.
Computer Science cpsc322, Lecture 14
Hidden Markov Models Part 2: Algorithms
GENETIC ALGORITHM A biologically inspired model of intelligence and the principles of biological evolution are applied to find solutions to difficult.
Boltzmann Machine (BM) (§6.4)
Artificial Intelligence CIS 342
Unfolding with system identification
Evolutionary Ensembles with Negative Correlation Learning
Beyond Classical Search
Presentation transcript:

Competitive Coevolution (Predator-Prey Coevolution)

Competitive coevolution Simultaneous evolution of two or more species with coupled fitness. Coevolving species either compete or cooperate. Competitive coevolution: Fitness of individual based on direct competition with individuals of other species, which in turn evolve separately in their own populations (“prey-predator”). Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution Hillis 90 Coevolving a population of sorting networks (candidate solutions) with a population of sorting problems (test-cases). The fitness of a sorting network depends upon how good it solves sorting problems. A sorting problem is scored according to how well it finds flaws in sorting networks. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution Hillis 90 - Conclusions Helps prevent large portions of the population from becoming stuck in local optima. Testing becomes more efficient. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Paredis’ life time fitness evaluation (LTFE) First introduced by Paredis at 1994. Replaces the “all-at-once” fitness calculation of a GA with a more partial but continuous fitness evaluation that occurs during the entire lifetime of an individual. Allow both populations to coevolve. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution LTFE (cont’d) The fitness of a solution is defined as the number of test-cases satisfied by the solution during its last 20 encounters. The fitness of a test-case is the number of times the test was violated by the 20 solutions it encountered most recently. Hence, the test and solutions have an inverse fitness interaction (as in predator-prey systems). Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution LTFE pseudocode Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution LTFE Features A few well-chosen test-cases provide sufficient information for solution’s evaluation. The algorithm dynamically focuses on more difficult, not yet solved test-cases. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution LTFE Examples Coevolutionary neural net learning for classification. Coevolutionary Constraint Satisfaction. Symbiotic Coevolution. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Coevolutionary Neural Net Learning for Classification Find appropriate connection weights such that a neural net (NN) represents the correct mapping from [-1,1] x [-1,1] to a set of given classes {A,B,C,D} given 200 preclassified, randomly selected examples. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Coevolutionary Neural Net Learning for Classification Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

The Classification Process The input coordinates (x,y) are clamped on the assosiated input nodes of the neural net. Feed-forward propagation is executed. The result of the classification is the class corresponding to the output node with the highest activity level. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. The neural net is said to classify the example correctly when the output node associated with the correct class is the most active one. Competitive coevolution

Competitive coevolution Standard GA Versus CGA The standard GA tests each newborn NN on all 200 training examples at once. The fitness is defined as the number of training examples correctly classified by the NN. In addition to the solution population the CGA has a test-cases population. This population contains the 200 preclassififed training examples. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Standard GA Versus CGA (cont’d) The basic cycle of CGA is 3.75 times faster than that of the standard GA. The standard GA was allowed to generate a total of 50,000 offspring. The CGA was allowed to generate a total of 100,000 offspring. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution Results Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution Discussion The computational demand of the CGA is considerably smaller than that of the traditional GA. The CGA clearly beats the standard GA in terms of solution quality. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution Discussion (cont’d) Reasons for the considerable performance increase: Once an NN is considered potentially good it is put under closer scrutiny. Coevolution forces the CGA to focus on not yet solved examples. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. The latter can be easily observed in the classification task: only the examples that are situated near the boundaries between different classes have a high fitness value. Competitive coevolution

Competitive coevolution Discussion (cont’d) Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Constraint Satisfaction Problems (CSP) Instance: a set of n variables {xi}, each has an associated domain, Di, of possible values. A set C of constraints that describe relations between the values of the xi (e.g., x1  x3). A valid solution consists of an assignment of values to the xi such that all constraints in C are satisfied. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution The N-Queens Problem Placing n queens on a n x n chess board so that no two queens attack each other. Representation: n variables xi, each such variable represents one column on the chess board (e.g., x2=3 indicates that a queen is positioned in the third row of the second column). Constraints: Row-constraint: xi  xj  i  j Diagonal-constraint: |xi – xj|  |i – j|  i  j Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution CGA Solution population consists of n-dimensional vectors containing integers between 1 and n. The 2n constraints constitute the test-population. An inverse fitness interaction.. Fit solutions and constrains are more likely to be involved in an encounter (e.g., diagonal constraints). Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution GA, CGA-, and CGA GA uses only a population of solutions. CGA- is identical to CGA, except the constraints do not have any fitness (LTFE without coevolution). CGA. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. All three algorithms were tested with 50-queens problem, a solution population of size 250, and were allowed to generate a total of 200,000 offspring. Competitive coevolution

Competitive coevolution Results (10 runs) GA never found a global solution satisfying all constraints (average of 95.7/100 constraints satisfied). CGA- found such a solution only once (average: 97.2). CGA was successful seven times (average: 99.4). Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution Conclusion It is the combination of LTFE and coevolution that boosts the power of a CGA. Either one of these mechanisms alone yields clearly inferior results. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Symbiotic Coevolution Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Symbiotic Coevolution with CGA Investigation of the symbiotic evolution of solutions and their genetic representation (i.e., the ordering of the genes). It is hard to choose a good genetic representation: One might not know the epistatic interactions in advance. One linear ordering might not be sufficient to express all epistatic interactions. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Symbiotic Coevolution with CGA (cont’d) Using symbiotic (cooperative) coevoultion to obtain tight interactions between solutions and representations. Success one one side improves the chances of survival of the other. A representation adapted to the solutions currently in the population speeds up the search for even better solutions that in their turn might progress optimally when yet another representation is used. SYMBIOT. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution The Test Problems Given a matrix A (of size n x n), and an n-dimensional vector b solve the equation Ax = b. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

The Test Problems (espistasis ) The diagonal elements of A are randomly chosen from the set {1,2,…,9}. When all off-diagonal elements of A are zero then the problem is not epistatic. By setting off-diagonal entries to non-zero, the degree of espistasis is increased. Due to transitivity, the degree of epistisis can be gradually increased by setting elements immediately above the diagonal to non-zero. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

The Test Problems (cont’d) bi are chosen such that all components xi are equal to 1. n =10. That is, A is a 10 x 10 matrix, b,x are of size 10. The performance of a standard GA critically depends on the representation used. The choice of representation is irrelevant only in the two extreme cases. The main problem: a standard GA uses only one, a priori defined representation. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution SYMBIOT A permutation (ordering) population coevolves alongside a population of candidate solutions. Each member of the solutions population is represented as a real-numbers 10-dimensional vector that uses the same a priori chosen representation (<x1,…,xn>). A permutation is a 10-dimensional vector that describes a reordering of solution genes. The permutation constructs the representation operated on by recombination. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution Basic Cycle of SYMBIOT * Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. * Fitness values of the solutions are negative Competitive coevolution

Competitive coevolution Example sol1 = < x1, x2, x3, x4> sol2 = < y1, y2, y3, y4> perm = <4,1,3,2>. perm(sol1) = < x4, x1, x3, x2> perm(sol2) = < y4, y1, y3, y2>. p-sol-child = mutate-crossover(sol1,sol2) = < x4, x1 , y3, y2>. sol-child = inv-perm(p-sol-child) = < x1, y2, y3, x4>. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution SYMBIOT (cont’d) A good permutation puts the relevant functionally correlated genes near each other. LTFE takes care of noise in evaluating a permutation. Only permutations undergoes LTFE. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution FIXED and RAND FIXED uses the best possible fixed representation. SYMBIOT not only has to solve the set of equations; it has to solve the representation problem as well. RAND generates for each couple of parents a random permutation: Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution Experimental Setup Solution population’s size = 1000. Permutation population’s size = 100. All results averaged over 10 runs. Two series of experiments are reported: SYMBIOT versus FIXED and RAND for problems with different degrees of epistisis. The grouping of functionally related genes in SYMBIOT. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution The Test Problems Trivial – no epistisis. Simple – set of linkage {(xi-1,xi)}even(i), this is done by assigning Ai-1,i random values between 1 and 9 for even i’s. (non-overlapping linkage). MEDIUM – {(x1,x2), (x2,x3), (x3,x4), (x4,x5), (x5,x6), (x7,x8), (x9,x10)}. COMPLEX – {(x1,x2), (x2,x3), (x3,x4), (x4,x5), (x5,x6), (x6,x7), (x7,x8), (x8,x9), (x9,x10)}. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution Results Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

SYMBIOT’s Grouping of Related Genes Defining length of a given permutation and a given pair of genes, is how far apart the permutation puts these genes. Average defining length of a set of pairs of genes is the average defining length for each pair of genes in the set and for each member of the permutation population. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Grouping of Genes when solving “SIMPLE” Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution Discussion SYMBIOT clearly exhibits a clear selective pressure toward grouping related variables and leaving unrelated genes apart. Q: Why does the average defining length of the linked variables gradually increase after its initial drop? A: At the later stages of a run, all solutions get more and more similar. As a result, the selective pressure to group particular genes decreases. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution The “5-5” Problem One linkage away from total epistisis (x5,x6). The variables x1, x2, x3, x4, x5 are completely interlinked. The same is true for the other 5 variables. In the results “related” now gives the average defining length of the shortest schema containing x1, x2, x3, x4, x5 and of the shortest schema containing x6, x7, x8, x9, x10. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Grouping of Genes when solving “5-5” Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution

Competitive coevolution Discussion Similar observations as the “SIMPLE” experiment. The curve is less smooth than the “SIMPLE” experiment due to the high level of epistisis. The effects of using different recombination operators. Coevolution is simultaneous evolution of two or more species interacting through the fitness function. Coevolving species either compete or cooperate. Competitive coevolution