Presentation is loading. Please wait.

Presentation is loading. Please wait.

Automatically Defined Functions Used to evolve modular programs Architecture implemented by Koza Architecture implemented by Bruce Function calls A critical.

Similar presentations


Presentation on theme: "Automatically Defined Functions Used to evolve modular programs Architecture implemented by Koza Architecture implemented by Bruce Function calls A critical."— 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: T r = {L0, W0, H0, L1, W1, H1 } Function set for the results-producing branch: F r = {+, -, *, /, ADFO }

11 Application 1 Terminal set for the function-producing branch: The three dummy variables: T f = { ARG0, ARG1, ARG2} Function set for the results-producing branch: F f = {+, -, *, /} 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 x 6 – 2x 4 +x 2, 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: T r = {X, U } where U is in the interval [-1.0, 1.0]. Function set for the results-producing branch: F r = {+, -, *, /, ADFO }

16 Application 2 Terminal set for the function-producing branch: T f = { ARG0, U } where U is in the interval [-1.0, 1.0]. Function set for the function-producing branch: F f = {+, -, *, /} 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


Download ppt "Automatically Defined Functions Used to evolve modular programs Architecture implemented by Koza Architecture implemented by Bruce Function calls A critical."

Similar presentations


Ads by Google