Bit Dynamics Visualization

I’ve found the bit dynamics visualizer included in speedyGA very useful for understanding the dynamics of SGAs with bitstring genomes. In each generation the visualizer plots/updates the frequency of the bit 1 at each locus (the frequency of the bit 0 is straightforwardly deducible) .

Here’s a visualization of the bit dynamics of an SGA with 1pt crossover when applied to the the Royal Roads fitness function. Going by the building block hypothesis one expects to see the dots marching orderly to the top of the plot in groups of eight or more.

That’s not what happens. Instead, one gets to see hitchhiking in action—look for a swift downward movement of certain dots in tandem with the swift upward movement of other dots at close by loci.

speedygarun_crossovertype12

speedygarun_crossovertype12

This movie requires Adobe Flash for playback.

The maximum and average fitness in each generation of this run are shown belowavg_max_fitness_crossover1

The matlab code used to generate these and other figures in this blog post can be found here.

Let’s visualize the bit dynamics of a population when an SGA with uniform-crossover is applied to the Royal Roads function.

speedygarun_crossovertype21

speedygarun_crossovertype21

This movie requires Adobe Flash for playback.

The maximum and average fitness in each generation of this run are shown below

avg_max_fitness_crossover2

Finally, let’s visualize the bit dynamics of a mutation-only SGA on the Royal Roads function.

speedygarun_crossovertype08

speedygarun_crossovertype08

This movie requires Adobe Flash for playback.

The maximum and average fitness in each generation of this run are shown below

avg_max_fitness_crossover0

As an exercise you might examine the bit dynamics of the SGA on the oneMax fitness function included in the distribution.

Comments welcome.

Enjoy!

Advertisement

Leave a Reply

Fill in your details below or click an icon to log in:

Gravatar
WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.