James A. Foster

Back Home Up Next

Evolutionary Computation (Spring 1998)

Evolutionary computation solves problems the old fashioned way: by growing solutions. Given a problem, EC simulates evolution with natural selection, where the "organisms" to be evolved are either potential solutions to the problem at hand, or algorithms to produce such solutions. EC includes: Genetic Algorithms, Genetic Programming, Evolutionary Strategies, evolutionary algorithms, and many artificial life simulations. It has been successful for a remarkable number and variety of problems.

In this course, we will work through several case studies which apply EC to function optimization, automatic program derivation, classification, machine learning, circuit design, and other types of problems. We will investigate EC in general, and many specific variations. We will investigate the current theory of EC, including: schemata theory, exact modeling, statistical mechanics, and more. Our objective is to understand the EC technique well enough to be able to apply it successfully.

bullet Students/Projects for this course
bullet Recent course announcements.
bullet Extra notes, cool links, relevant software, and stuff
bullet Course objectives, expectations, office hours and other administrivia
bullet Homework and test information
bullet Programming Project
bullet Course syllabus (as of 18 Feb 1998)

Instructor: Dr. James A. Foster. I respond better to email than to any other communications venue.


bullet Here is the webpage on Echo, Holland's artificial ecosystem
bullet I have a hardcopy of my first draft of solutions for the homework on the board outside my office. This may have errors, but it's all I had left after the system crashed. I'll mail a copy to EVO students.
bullet Here is alink for the Baldwin effect bibliography
bullet Here is a link for Conway's Game of Life
bullet Even CNN has reports about evolutionary computation!
bullet Here is a roster of students in this course, their email IDs, and the projects they are working on. Please use this as a springboard with which to communicate with your fellow students.
bullet Here is an article I just wrote on parallel and distributed evolutionary computation (for the Encyclopedia of Distributed Computing).
bullet Notes on selection algorithms and multiploidy and dominance are now available.
bullet Mark Meysenburg, a PhD student here, has offered his java code for doing evolutionary computing for your use.
bullet The EC FAQ (aka the Hitch-Hiker's Guide to Evolutionary Computation) is a particularly good overview of much of evolutionary computation.
bullet I added the mpeg of evolved virtual critters and movements to the course ftp site. The site describing how these guys were created is Karl Sim's webpage at Thinking Machines Inc.
bullet The lecture on evolving stock portfolios is also available

Last Updated 01/13/2003 15:56 -0800

Last modified: Tue Apr 28 10:20:36 1998