1 / 13

Genetic Program

Genetic Program. John Engelman Sami Shafe Siu-Cheong Lo. Application Package. Tree Structure Package. Processing Implementation. Program Usage. Test Results. Based on Fitness and Evaluation: Population Size Tree Depth Survival Probability Crossover Mutation. Test Results.

carterdavid
Download Presentation

Genetic Program

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. Genetic Program John EngelmanSami Shafe Siu-Cheong Lo

  2. Application Package

  3. Tree Structure Package

  4. Processing Implementation

  5. Program Usage

  6. Test Results Based on Fitness and Evaluation: • Population Size • Tree Depth • Survival Probability • Crossover • Mutation

  7. Test Results

  8. Test Results

  9. Test Results

  10. Test Results

  11. Test Results

  12. Application Output Detailed History Excution Start: Dec 8, 2007 3:10:35 PM Update 0 Update: INITIAL at Index: 0 Update: 0: MULT 1: ADD 3: 7 4: 0 2: MULT 5: X 6: 4 Update 1 Update: SURVIVAL at Index: 0 … Update 8 Update: MUTATION at Index: 4 Update: 4: DIV 9: X 10: 6 Update 9 Update: SURVIVAL at Index: 0 … Update 23 Update: MUTATION at Index: 3 Update: 3: 1 Update 24 Update: SURVIVAL at Index: 0 … Update 53 Update: MUTATION at Index: 6 Update: 6: 2 Update 54 Update: SURVIVAL at Index: 0 … Update 63 Update: CROSSOVER at Index: 3 Update: 3: ADD 7: X 8: X Update 64 Update: CROSSOVER at Index: 7 Update: 7: DIV 15: X 16: 6 Update 65 Update: MUTATION at Index: 2 Update: 2: X Update 66 Update: MUTATION at Index: 16 Update: 16: SUB 33: 6 34: X Update 67 Update: CROSSOVER at Index: 1 Update: 1: DIV 3: X 4: 6 Update 68 Update: MUTATION at Index: 4 Update: 4: X Update 69 Update: CROSSOVER at Index: 4 Update: 4: 2 Total Survivals: 59 Total Crossovers: 4 Total Mutations: 6 Execution Log Target Fitness: 1 Generation Size: 5 Crossover Probability: 20% Mutation Probability: 60% Surivival Probability: 20% Starting Tree Height: 3 Start Time: Dec 8, 2007 3:10:35 PM End Time: Dec 8, 2007 3:10:43 PM Run Time: 0.0mins 7.0secs 813msecs Total Generations: 70 Solution Fitness: 0.023547262141610105 0: MULT 1: DIV 3: X 4: 2 2: X (x / 2) * x

  13. Conclusion & Lessons Learned • Integer may not be large enough to hold all possible indexes. If tree begins to become heavy to one branch, then the index value could roll-over. This is visible by a negative index. • Some threads may become stuck. A means of interrupting stuck threads without damaging a data structure or affecting the processing results should be included in the original design. • This is problematic for us because the execution time is checked within the main processing loop. If the deadlock occurs in this loop it will wait for a thread to complete then there is no means to exit the program within the time limit. • There is benefit to spontaneous generation of new trees into the mix. A number of cases have been observed where the application cycles for hundreds of generations without finding a better solution. In this case a new random tree added to the generation pool could provide the necessary diversity to find a better function. It wasn’t until after testing that we added the code to generate a completely new generation of trees randomly at each cycle and evaluate them before continuing on.

More Related