WHAT IS EVOLUTIONARY COMPUTATION?
- Evolutionary computation is a class of biologically-inspired computational search strategies based on the principles of Darwinian evolution (heritability+variation+selection).
- Examples of evolutionary algorithms (EAs) include genetic algorithms, evolution strategies, genetic programming, and more.
- EAs are population-based, non-deterministic, derivative-free, iterative, global search strategies.
- EAs can also be used for Artificial Life simulations to study processes in ecology and evolution.
- Applications of EAs span a variety of disciplines, including solving design and optimization problems in engineering, architecture, computer chip design, scheduling, drug design, biotechnology, and bioinformatics, and basic research in evolution and ecology.
- The first half of the semester will be a survey of evolutionary computation, with hands-on programming and non-programming assignments carefully designed to allow meaningful participation and cross-disciplinary learning to occur for students coming from varied backgrounds, and culminating in a mid-term exam. Readings for this half of the semester will be text-based.
- The second half of the semester will focus on multi-disciplinary team-based projects and oral and written presentation of project results in a symposium format. Readings for this half of the semester will be from the current literature. Students will be encouraged to actually submit their results to the Genetic and Evolutionary Computation Conference (GECCO), the premier conference in the field.
- Multi-disciplinary: CS, Math, Engineering, Biology, Botany, MMG, ENVS, Phys, Chem, Geol, etc!
- Level: The course is aimed at the graduate level, but interested and qualified undergraduates may seek special permission to enroll.