> The performance of the wheel was based on the final speed achieved by an accelerating imaginary car, vf. The wheel was driven with a constant torque, τ, and no slipping.
There is nothing in this fitness value that defines the shape of the wheel. As described here, there's no clear reason why the shape of the wheel would affect the speed of a car (no slip, no taking into account up/down movement of the car, etc.) Rather this algorithm seems to optimize for a certain radius and the circular shape is the result of the fact that all points converge to the same optimum.
I also find the fact that it converges at a finite radius using this model suspicious. If you look at this optimization problem analytically, the optimum is obviously a wheel with a zero radius: Force on car is torque over wheel radius. If radius goes to zero, then force goes to infinity and acceleration goes to infinity and car speed goes to infinity.
Also, the wheel spoke lengths are normalized, so the wheel can't grow or shrink overall.
I'm still scratching my head while trying to figure out what's the mechanism that prevents the solution blowing up to infinity by setting the radius to zero and therefore achieving huge accelerations from a constant torque.
I think this may have been because the wheel starts accelerating from a particular point. To optimize distance traveled, it's better to have more acceleration up front. Shorter spokes means more acceleration. For the overall wheel, the spoke length is normalized, but it makes sense that the optimization would set the starting spoke shorter.
I should randomize the starting angle of the wheel and see if that fixes it.
I'm surprised to see that I didn't discuss this in the blog post. You're right, I should have.