1 / 19

Department of Electronic Engineering NUIG

Department of Electronic Engineering NUIG. Evolving Shapes using Direct & Indirect Encodings. By: John Brennan Supervisor: John Maher. Aim of Project. To compare and contrast the use of Direct and Indirect Encoding methods to evolve shapes

virgil
Download Presentation

Department of Electronic Engineering NUIG

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. Department of Electronic Engineering NUIG Evolving Shapes using Direct & Indirect Encodings By: John Brennan Supervisor: John Maher

  2. Aim of Project • To compare and contrast the use of Direct and Indirect Encoding methods to evolve shapes • To develop a visually impressive GUI to demonstrate the evolving shapes in real time • To facilitate user input of evolution parameters in the developed GUI

  3. Project Specifications • Review of Implicit Embryogeny proposed by Kumar plus 2 other authors • Write a Java GA to solve 1’s max problem • Demonstrate some Java 2D GUI features • Extend the developed GUI to include GA functionality • Design and verify demonstrator of Implicit Embryogeny • Include Implicit Embryogeny within the developed GUI • Add additional frame to user to define target phenotype • Compare and contrast directly evolved shapes with implicitly derived shapes

  4. Introduction to Genetic Algorithms • A Genetic Algorithm is a programming technique that imitates biological evolution to solve complex problems • A GA performs the following: • It takes a set of potential solutions (a population) • Using a selection mechanism new offspring are created from nominated parents • Genetic Operators are carried out on the offspring • The fitness of the modified offspring is evaluated • New offspring replaces previous population (a generation)

  5. Flowchart of a Genetic Algorithm

  6. GA Structure using Direct Encoding

  7. The Scalability Problem • As the size of the problem increases it reaches a point where the GA will become too inefficient to run (shown by the table below) • It is therefore necessary to implement an alternative encoding method to combat the problem of scalability

  8. Implicit Embryogeny • An Embryogeny is a process of growth where genotypes are mapped onto phenotypes • Implicit Embryogeny is a process which uses interacting rules to solve complex problems • Each genotype consists of a number of rules, and each rule has a precondition and an action • If the preconditions are met, i.e. they exceed a preset threshold, the action is carried out. • The growth is carried out in a phenotype grid

  9. Implicit Embryogeny Flowchart

  10. GA Structure using Indirect Encoding

  11. Program Design • A Java based experimental platform has been developed as part of this project • Used to visually demonstrate how the shape is evolving in Real Time • Genetic Algorithm cycles through the generations in a background process • Used to carry out experiments to demonstrate the differences between direct and indirect encoding methods

  12. GUI Design

  13. GUI Main Panel • The main panel of this GUI displays two grids • the one on the right displays the target phenotype shape • the one on the left displays the current mapping of the genotype to phenotype • The target phenotype can be selected from a number of predefined shapes which are hard coded into the application

  14. GUI Main Panel

  15. GUI Parameters Panel • The user can select if the phenotype grid should be developed using a direct or an indirect encoding method • Only text fields relevant to the current encoding technique are editable • It is dependant of the selection of a radio button which determines which text fields are masked and which can be edited • Changes in these values can have a significant effect on the results of the GA

  16. GUI Parameters Panel

  17. Results from Experiments • The experiments were performed ten times in order to obtain the average performance • GA performs well without the use of an embryogeny for smaller grid sizes but it does not scale well • Results show the improved performance with the implementation of using an embryogeny

  18. Conclusions • Use of indirect encoding methods to evolve shapes proved to show a much higher level of performance • It has also proven that the scalability problem does not affect the evolution of a phenotype which used Implicit Embryogeny to develop the desired shape. • This encoding method does have its disadvantages • It does not retain the same diversity possessed by a phenotype evolved without using an embryogeny

  19. Questions?

More Related