Skip to content

GA Viewer

ThinkerM edited this page Jan 3, 2018 · 2 revisions

This module is your main point of interaction with the core functionality of the program. Its main purpose is to give you visual feedback on the evolutionary process of the generated shapes. The window consists of several significant components:

The pictures container

This window is view-only, it is used for displaying the current population (newest GA generation/any selected generation from the saved pool/imported individuals). You may manipulate some of the properties of the pictures through the Images toolbar (read further). You may also resize the picture container by dragging the area which separates it with the Messagebox.

Messagebox

This area (also view-only) serves as another feedback tool with slightly different properties. Instead of using pictures, it outputs text descriptions of every generation (not only saved/paused generations) with the information about best and average fitness.
The messagebox can be resized in the same way as the picture container.

Toolbox

The toolbox is your primary way of controlling what happens on the screen and to the genetic algorithm itself. There are three separate tabs to the toolbox:

1. Genetic Algorithm Tab

From here you can

  • Start/Stop the GA
  • Adjust the termination conditions for the GA (if you wish to stop after a certain number of generations or after a generation's best individual is N-times better than the initial best individual)
  • Choose the fitness calculator to be used by the GA
  • Import a set of initial individuals into the GA (you need to have some individuals previously created and saved)
  • Change the frequency of stops between generations (how often the GA pauses to show you the newest generation)
  • Change the frequency of generation saving

2. GA Parameters Tab

This tab lets you more precisely control the way the genetic algorithm should behave, you can adjust

  • The number of vertices every member of the population should have
  • The size of populations
  • The mutation probability (i.e. during every generation, every single gene in the gene pool has this chance of mutating)
  • The crossover probability (i.e. when an individual is selected for breeding, it has this chance of pairing up with another individual, otherwise it continues without genetic recombination)
  • The maximum angle mutation (every gene's encoding contains information about the gene/vertex's position on a circle relative to the whole individual's centroid - maximum mutation in degrees indicates how much the vertex can "rotate")
  • The maximum distance mutation (genes also hold information about their distance from the centroid, this is the maximum multiplicative deviation that can occur in the distance)
  • Elitism on/off - with elitism on, the best individual is always guaranteed to continue into next generation
  • The selection Type
  • Save the current settings to be used after you close and reopen the application
  • Reset the settings to hardcoded defaults

3. Images Tab

Here you can change certain properties of the pictures being displayed. You can

  • sort them by their fitness
  • change their size
  • change their background color
  • remove all currently viewed pictures

Clone this wiki locally