My favorite story is the genetic evolution algorithm that was abusing analog noise on an FPGA to get the right answer with fewer gates than was theoretically possible.
The problem was discovered when they couldn’t get the same results on a different FPGA, or in the same one in different day (subtle variations of voltage from mains and the voltage regulators).
They had to redo the experiment using simulated FPGAs as a fitness filter.
> " William Punch collaborated with physicists, applying digital
evolution to find lower energy configurations of carbon. The physicists had a well-vetted energy model for
between-carbon forces, which supplied the fitness function for evolutionary search. The motivation was to
find a novel low-energy buckyball-like structure. While the algorithm produced very low energy results, the
physicists were irritated because the algorithm had found a superposition of all the carbon atoms onto the
same point in space. “Why did your genetic algorithm violate the laws of physics?” they asked. “Why did
your physics model not catch that edge condition?” was the team’s response. The physicists patched the
model to prevent superposition and evolution was performed on the improved model. The result was
qualitatively similar: great low energy results that violated another physical law, revealing another edge
case in the simulator. At that point, the physicists ceased the collaboration."
The problem was discovered when they couldn’t get the same results on a different FPGA, or in the same one in different day (subtle variations of voltage from mains and the voltage regulators).
They had to redo the experiment using simulated FPGAs as a fitness filter.