http://www.perlmonks.org?node_id=299184


in reply to Re: A Beginning Guide To Evolutionary Algorithms
in thread A Beginning Guide To Evolutionary Algorithms

The fitness landscape is a 3-dimensional surface only if the genes of the individuals have exactly 2 degrees of freedom. Even in the ONE-MAX problem above, the fitness landscape is a 21-dimensional surface. Your indpendent variable is any tuple in {0,1}^20, and you've got the dependent variable, fitness. Granted, the 20 independent dimensions are not big (just 0 and 1), but it's still more than I know how to visualize effectively.

Using terms like "hills" to help visualize the problem space is helpful, but only because we usually omit the fact that the hills are almost never 3-dimensional. ;)

It's worse if you're evolving structures other than strings and arrays. An n-character string is easily analogous to a tuple in some n-dimensional space. But what if we are evolving neural net structures, or state machines, or parse trees? How do we "plot" the fitnesses of these things? How do you even measure the distance between two state machines so that you can build the "grid" that the fitness will be plotted on?

Strict mathematical analysis on these problems is tough. Even trying to look at the spaces involved is often next to impossible. There can't be any single plug-n-play way of dumping a plot of your fitness landscape. Doing such a plot requires a large understanding of the independent variables, and probably lots of trial and error. You're probably better off analyzing the EA results using statistical analysis, as opposed to inspecting the actual fitness landscape.

blokhead