| Another thing that irks me is the choice of problem domains in EC research papers. I suspect the choice of domain is predominantly driven by how sexy it is - robot football, rocket control, machine vision, etc. Meanwhile there is no shortage of functions of the form y=f(x) (i.e. lines in a 2D euclidean space) which are both very efficient to compute and also complex enough to be as taxing to EC as you choose to make them, such functions are ideally suited to pure EC research because you get to experiment with large populations over many generations with very modest computational resources.
Complex simulations/worlds give you the same degrees of task difficulty but require significantly more resources to simulate. Again there's a sexiness factor here - people are draw to computer clusters, they're cool and interesting to work with, unfortunately IMO they are also an unnecessary distraction from the problem at hand.
A side note on on metrics. Mean squared error (MSE) is a perfectly good metric to evaluate performance on y=f(x), maybe there are better metrics, but as a baseline for now it's fine. However, MSE is a really poor metric to use as a fitness function in a traditional EC setup, the fitness landscapes for any interesting function will nearly always be highly misleading, i.e. full of local optima that are nowhere near more global optima.
Some initial thoughts - how about a metric that counts/compares the number of peaks and troughs (or more broadly inflexion points?) and distance between said peaks/troughs, etc. This would allow EC to find a function with the right overall shape (at some level) even if the peaks and troughs are at the wrong position of the x-axis or have the wrong amplitude. That's just a simple example but I think it demonstrates the point. When comparing two function plots ask yourself - would a human consider these to be similar? Why? What characteristics are they comparing? |