DESCRIPTION

A demo that combines the Algorithm::Evolutionary::Op::Easy module with Tk to create a visual demo of the evolutionary algorithm. It generates randomly a number of rectangles, and shows how the population evolves to find the solution. The best point is shown in darkening yellow color, the rest of the population in green.

Use "Start" to start the algorithm after setting the variables, and then Finish to stop the EA, Exit to close the window.

Default values are as follows

number of rectangles: 300

arena-side: 10 This is independent from the number of pixels, set by default to 600x600.

bits-per-coordinate: 32 (this is the chromosome length divided by two; there are two "genes")

population size: 64

number of generations: 200

selection rate: 20% (will be replaced each generation); this means it's a steady state algorithm, which only changes a part of the population each generation.

This program also demonstrates the use of caches in the fitness evaluation, so be careful if you use too many bits or too many generations, check out memory usage.

Console output shows the number of generations, the winning chromosome, and fitness. After finishing, it outputs time, cache ratio and some other things.