1 / 18

Automatically Defined Functions

Automatically Defined Functions. Used to evolve modular programs Architecture implemented by Koza Architecture implemented by Bruce Function calls A critical analysis of ADFs Applications. Architecture Implemented by Koza.

Download Presentation

Automatically Defined Functions

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Automatically Defined Functions • Used to evolve modular programs • Architecture implemented by Koza • Architecture implemented by Bruce • Function calls • A critical analysis of ADFs • Applications

  2. Architecture Implemented by Koza • Each individual of the population is represented by a tree containing one or more function-defining (function) branches and a results-producing branch (main program).

  3. Example

  4. Extensions to GP System • GP parameters • Number of ADFs • Number of arguments for each ADF • Initial population generation • Structure- preserving crossover • Typing • Branch typing • Point typing

  5. Architecture Implemented by Bruce • Each individual is represented as an array of trees, one representing the main program and the rest one or more ADFS. • The user has to specify the number of trees in each genotype. • The user must also specify how the evaluation of each tree will contribute to calculating the overall fitness of the individual. • Architecture simpler and more general than Koza’s.

  6. Example

  7. Extensions to the GP System • Size of the genotype • Functions calls • Initial population generation • Crossover

  8. Function Calls • There are no references between the function-defining branches. • References among function-defining branches are not restricted. • A function may hierarchically call those functions that have been defined before it, e.g. ADFO can call ADF1 but not vice versa.

  9. Critical Analysis • The use of ADFs is not beneficial for simple problems. ADFs are beneficial for complex problems. ADFs produce parsimonious solutions for difficult problems. • One of the disadvantages of using ADFs is that the user has to define the entire architecture prior to a simulation. • The benefits of using ADFs increases with the difficulty of the problem. • The use of automatically defined functions decreases the computational effort needed to find a solution as well as increases the parsimony of solutions provided that the problem is of sufficient difficulty. • A GP system incorporating the use of ADFs has the lens effect, i.e. a GP system with ADFs tend to find individuals that have extreme scores.

  10. Application 1 • Objective: Induce an equation that calculates the volume of a 2-dimensional box. • Architecture:One result-producing branch; one function-producing branch defining the ADF ADF0 with has three arguments. • Typing: Branch • Terminal set for the results-producing branch: Tr = {L0, W0, H0, L1, W1, H1 } • Function set for the results-producing branch: Fr = {+, -, *, /, ADFO }

  11. Application 1 • Terminal set for the function-producing branch: The three dummy variables: Tf = { ARG0, ARG1, ARG2} • Function set for the results-producing branch: Ff = {+, -, *, /} • Number of generations: 51 • Population size: 4000 • Raw Fitness: Error Formula

  12. Application 1 • Hits criterion: The number of fitness cases for which the value calculated by the induced program is within 0.01 of the target value. • Method of selection:Fitness proportionate selection. • Initial population generator: The ramped half-and-half method with an initial tree depth of six and a depth limit of seventeen on the size of trees created by the genetic operators. • Fitness cases: The six dimensions of the box

  13. Application 1 • Genetic Operations: • Reproduction –10% • Mutation – 0% • Crossover – 90% • In this particular example the use of ADFs has not decreased the computation effort needed to find a solution or the average structural complexity.

  14. Solution

  15. Application 2 • Function to generate: Induce a program that produces the value of x6 – 2x4+x2 , given x. • Architecture of overall program: One result-producing branch; one function-producing branch defining the ADF ADF0 that has one argument. • Typing: Branch typing • Terminal set for the results-producing branch: Tr = {X, U } where U is in the interval[-1.0, 1.0]. • Function set for the results-producing branch: Fr = {+, -, *, /, ADFO }

  16. Application 2 • Terminal set for the function-producing branch: Tf = { ARG0,U } where U is in the interval [-1.0, 1.0]. • Function set for the function-producing branch: Ff = {+, -, *, /} • Number of generations: 51 • Population size: 4000 • Raw Fitness: Error formula • Hits criterion: The number of fitness cases for which the value calculated by the induced program is within 0.01 of the target value.

  17. Application 2 • Method of selection:Fitness proportionate selection. • Initial population generator: The ramped half-and-half method with an initial tree depth of six and a depth limit of seventeen on the size of trees created by the genetic operators. • Fitness cases: Fifty values are chosen randomly from the interval [-1.00, 1.00] • Genetic operators: • Crossover – 90% • Reproduction – 10%

  18. Solution

More Related