Session Spotlight
Tight Genes: Intro to Genetic Algorithms
Wednesday, January 18, 2023 - 10:30 AM CST, for 1 hour.
Regular, 60 minute presentation
Room: Campsite 5
Yes, that's right, geneTic, not geneRic. Genetic algorithms are a way to "evolve" solutions to a problem, similar to real-world biological evolution. This often reveals great solutions that humans probably would never have thought of, such as the twisty NASA ST5 spacecraft antenna, developed by a genetic algorithm in 2006! This talk will explain the concept and its terms, and then walk you through some examples. First I will show creating some simple genetic algorithms, such as helping a farmer decide what to take to the village market, and "evolving" good Dungeons & Dragons characters to fit different classes. Next, I will show extracting from these a simple generic "evolver". Last, I will show creating another algorithms for the evolver to run (mead recipes to yield a desired level of sweetness and alcohol), by supplying only the parts that vary, with the evolver handling all the common parts. You will come away equipped with a powerful technique to find *good* solutions quickly, for problems that are often intractable if you require a *perfect* solution.
Prerequisites
basics of programming
Take Aways
- Genetic algorithms are a way to "evolve" solutions to a problem, similar to real-world biological evolution.
- The code can be very simple, depending on the problem domain.
- Genetic algorithms are heuristics, not guaranteed to find the best solution, but generally faster to find a good solution.
- Genetic algorithms can be done in any language, with no framework or library needed.
- Genetic algorithms may come up with bizarre but excellent solutions that humans would never have thought of.