Logistics Checkpoint 1 -- Framework Defining your problem Due Friday, Dec 22nd. Group accounts… Need one for you project? Let me know. Need a partner? Check the Web page! More matchmaking in 2nd half Logistics Plan for today Grad Report Definining your problem. Will need topics first week after we return EAs as a mechanism for search from break (Jan 11th). Checkpoint 2 Questions before we start Evolutionary Computation Evolutionary Algorithms process An EA uses some mechanisms inspired by biological evolution: reproduction, mutation, recombination, Initialize population natural selection and survival of the fittest. Select individuals for Candidate solutions to the optimization problem play crossover (based on fitness function the role of individuals in a population, and the cost Crossover function determines the environment within which Mutation the solutions "live". Evolution of the population then takes place after the Insert new offspring into population repeated application of the above operators. Are stopping criteria satisfied? Finish 1
Evolutionary Algorithms The Problem To use evolutionary algorithms your must: Define your problem Define your genotype parameters output Identify your phenotype solution Problem Define the genotype -> phenotype translation Define crossover and mutation operators Define fitness Determine selection criteria Set population parameters The Problem Fitness Parameters fitness values that define a particular instance of the Individual problem Phenotype Genotype Solution This is the realization of the individual (phenotype) The solution has a number of traits/variables output parameters Output problem Fitness This is the result of applying the solution to the problem. The output will get judged for fitness. Population Phenotype Phenotype defines the set of attributes/traits/variables that define the a individuals problem. Ultimately, one is looking for the best values for each variable/trait. A particular instance of a phenotype (individual) will represent a single solution to the problem. 2
Phenotype Optimization Problems The set of all instances comprise all Given: solutions (or the search space) a function f : A → R from some set A to the real numbers Any generation represents a subset of Sought: the search space. an element x 0 in A such that f(x 0 ) ≤ f(x) for all x in A ("minimization") or such that f(x 0 ) ≥ f(x) for all x in A ("maximization"). Search and Optimization EAs as optimization Methods [Goldberg] Let phenotype = a set of variables Calculus-based P = <V 1 , …, V n > Uses the gradient Fitness: Enumerative f: P → R Looks at every point in the space We are looking for: Random an element x 0 in P such that f(x 0 ) ≥ f(x) for Random walks through the search space all x in P ("maximization"). Search and Optimization Search and Optimization Methods [Goldberg] Methods [Goldberg] Calculus / Gradient based Enumerative Indirect - solve system of equations Dynamic Programming created by setting gradient to 0 CS4 Project Direct (hillclimbing) - follow the function based on neighbor that results in the For a large search space, just not highest gradient. efficient! Potential to get stuck at local min/max. 3
Search and Optimization Kangaroo analogy (from Methods [Goldberg] comp.ai.neural-nets) Random Kangaroo looking for Mt. Everest: Random jumps through the search space Hillclimbing: Simulated Annealing “The kangaroo can hope at best to find the top of a mountain close to where he starts. Simulates the physical process of annealing There’s no guarantee that the mountain will be material is heated and then cooled (as steel or Everest or even a very high mountain”. glass) usually for softening and making the material less brittle. EAs/GAs/ Kangaroo analogy (from Kangaroo analogy (from comp.ai.neural-nets) comp.ai.neural-nets) Kangaroo looking for Mt. Everest: Kangaroo looking for Mt. Everest: Simulated annealing: GAs: “The kangaroo is drunk and hops around “Lots of kangaroos are parachuted into the randomly for a long time. However, he Himalayas at random places. The kangaroos gradually sobers up and tends to hop up a hill” do not know that they are supposed to be looking for Everest. However, every few years, you shoot the kangaroos at low altitudes and hope the ones that are left will be fruitful and multiply. Questions so far? Problems suitable for GAs Large search space. Large dimensional space Fitness that has multiple local minima/maxima. 4
What makes EAs unique. Problem areas using EAs Work with codings (genotype) of variable set, Optimization not the variables themselves. Numerical Search from a population of points, not single Combinatorics points. Circuit layout Uses payoff information (fitness fuinction), Photo album layout not derivatives or other aux info Job shop scheduling Uses probabilistic transition rules, not deterministic ones. Problem areas using EAs Problem areas using EAs Economics Automatic programming Bidding stategies Generation of programs to solve a given task Genetic programming Prediction Machine learning Emergence of economic markets Classification Immune Systems Prediction (weather / protein structure) Somatic mutation Learning Drug design Weights for neural nets genetics Problem areas using EAs Problems areas using EAs Ecology Social Systems Biological arms race Evolution of social behavior (Sims) Host-parasite coevolution Cooperation and Collaboration Resource management (World Peace!) Creative Arts Genetics Music Evolution simulation Graphics Animation. 5
Possible problems proposed Possible problems proposed by students in this class by people in this class Finance Traditional NP-Complete problems: Hamiltonian Cycle mutual fund prediction Knapsack Control systems Resource Allocation: World Peace (really!) airplane landing Artificial Intelligence Games GAs and Neural Nets Natural Language processing Checkers/Chess (using neural nets) Genetics Image Processing DNA sequencing/profiling? Feature detection Protein structure prediction Possible problems proposed by people in this class The Problem Animation Character Animation Game AI parameters output solution Problem Fire algorithms Audio Processing Wave terrain synthesis Defining your problem Defining your problem. Solution: Instance What are the traits/variables that What is your problem are collectively define an individual solution. what are the parameters What are valid values for each of these On what will you be applying your solution traits. How many traits/how many possible values? This is your phenotype!!! This defines your solution space. 6
Defining your problem Traveling Salesman Problem Output: Instance: On what value or output will your solution N cities with distances between pairs of be judged. cities What is the manifestation of a given individual solution. Said another way: Complete graph with n vertices such that all edges are labeled with a cost value Traveling Salesman Problem Traveling Salesman Problem Output: Solution: Distance traveled to complete the tour. Tour of the cities such that each city is visited once. Said another way: A permutation of the cities. Is this a large search space? Questions? n cities = n! permutation Break In the 2nd half Look at more applications solved using EAs and describe the problem 7
Function optimization Function optimization Solution: Optimization of a function of n variables. N variables This is checkpoint #1. Output: The value of the function when evaluated. Instance: Function to be optimized. Is this a difficult problem? Range of variables If n is large enough. Transportation Problem Transportation Problem [Michalewicz -- chapter 9] Instance: Resource allocation problem n sources (attached with supply) Given m destinations (attached with demand) n sources -- each with a particular supply of goods cost to ship from each source to each m destinations -- each with a given demand of goods destination. Cost function -- which indicates the cost of shipping from source i to destination j Problem: Find the amount to ship from each source to each destination to fullfil need and minimize shipping cost. Transportation Problem Transportation problem Instance: Solution: For each source, the amount of goods to send to each destination. http://www.me.utexas.edu/~jensen/models/network/net8.html 8
Recommend
More recommend