Evolution of Flight: First Batch
I finally finished the script responsible for designing the airplanes. Without going through too much detail, here is roughly the outline of how the process of evolving planes works.
- For the first generation, the program generates new airplanes using random DNA values.
- The user selects 10 out of 100 airplanes using his/her intuition.
- The user tests the 10 airplanes to see how far they fly. I’ll explain the testing process in a future post.
- For the second generation, the user enters the the number of the planes that he has selected as well as the distance each one flew.
- The planes are placed into a breeding pool.
- Two airplanes are randomly selected from the breeding pool and crossbred to produce a new airplane. The further the plane flew, the greater chance it has to be selected.
- This process continues until a hundred new planes have been created.
- The user then selects 10 more airplanes and the entire process repeats.
I created the first generation of airplanes, which you can see below. The ones I selected for testing are marked in red.
I chose planes that I thought would have a decent chance to fly but tried keeping the group varied. If I noticed anything interesting, I also selected it to see if it might produce unexpected results. It was hard to narrow down the selection to just ten planes but hopefully my intuition serves me well.
After testing the first generation I will repeat the cycle and continue evolving the planes until the planes are able to glide around 10 feet. Hopefully there are some fun surprises along the way.
Leave a Reply