I’ve been tasked to teach a course on algorithms inspired by biology this semester. Hoping to use Observable. Here are generations of ants finding a picnic basket:
Nice! What changes to make an next-generation ant more likely to find the basket? Is it like a random walk that’s “weighted” according to some DNA, so the ants with a negative mean in x and y are most fit?
In the beginning, each ant as a DNA strand that is a random walk. Ants that have a DNA strand that brings them closer to the basket are judged to be more “fit”, which gives them an advantage in reproduction. The child ants get DNA that is similar to their parents, so eventually, the ants “get better” in finding the basket.