Professors:
Class Time/Place: Fridays, 9:00-11:50 AM, ASH 221.
Prerequisite: fluency in either Lisp or C
Class Web Page: http://hampshire.edu/lspector/courses/cs284f99.html
Evolutionary computation techniques harness the mechanisms of natural evolution--including genetic recombination, mutation, and natural selection--to automatically produce solutions to a wide range of problems. In this course students will explore several evolutionary computation techniques and apply them to problems of their choosing. The technique of "genetic programming," in which populations of executable programs evolve through natural selection, will be emphasized.
The prerequisite for this course is fluency in either Lisp or C. A background in Artificial Intelligence (for example, CS 263 Artificial Intelligence) would also be helpful.
Class will meet once a week for two hours and 50 minutes. Enrollment is limited to 25.
This course has been designed to maximize student participation and interaction. There is no final project, and no portfolio of work will be required. In exchange for this, however, students are required to participate in several substantial and structured ways. On time attendance to every class is required (yes--at 9am!). Several segments of the class will be devoted to presentations by groups of students--the details of this component will depend on the number of students in the class, but each student will probably participate in two of these presentation groups. Students will also be required to actively participate in the collaborative "code telephone" exercise described below.
Additional readings will be distributed in class.
Students will be evaluated on the basis of:
Consistently active participation is required to receive credit for a Division I two-course option. For five-college students the grading standards are {A=excellent, B=good, C=weak, D=marginal, F=fail}, with the three evaluation criteria having equal weight. (Five-college students may want to consult with the professors periodically for a grade-based performance assessment.)
Each student is responsible to produce a piece of code in generic Common Lisp or ANSI C for any purpose by the first code telephone session. We will discuss and critique the code in class. Each piece of code will then be routed to a different student, who will have the responsibility of modifying the code to any effect by the next code telephone session. Modifications may be produced by augmentation, mutation, or crossover with other class code or code from other sources. All modifications, their authors, and code sources must be clearly indicated in the code.
Several class segments will be devoted to presentations by groups of students. The groups and the assignment of topics will be determined in the first two class meetings. Presenting students will be responsible for presenting the material covered in the reading, and for orchestrating the discussion and/or other activities for the entire class segment.
Note: This may change. Because of the highly interactive nature of this course, it is likely that interest will develop in topics not listed here, or that topics listed late in the schedule will be adequately covered in earlier discussions. The schedule will be adjusted accordingly.
Date | Topic | Read Before Class |
Fri 9/10 | course introduction, basic concepts of evolutionary computation and genetic algorithms (Lee and Jaime) | Mitchell 1, Banzhaf 4 |
Fri 9/17 | genetic programming (students) code telephone |
Mitchell 2.1, Banzhaf 5 |
Fri 9/24 | HiGP, MidGP, and lgp (Lee) code telephone |
handouts |
Fri 10/1 | applications (students) code telephone |
Mitchell 2.2, Banzhaf 12 |
Fri 10/8 | evolving neural networks (students) code telephone |
Mitchell 2.3, Banzhaf 12.4.1 |
Fri 10/15 | evolving neural networks for natural language processing (Jaime) code telephone |
handouts |
Fri 10/22 | learning and evolution (students) code telephone |
Mitchell 3.1, Banzhaf 1 |
Fri 10/29 | sex and the ecosystem (students) code telephone |
Mitchell 3.2ñ3.4, Banzhaf 2 |
Fri 11/5 | evolving agents in virtual worlds (Jaime) code telephone |
handouts |
Fri 11/12 | schemas and royal roads (students) code telephone |
Mitchell 4.1ñ4.2, Banzhaf 6.1-6.3 |
Fri 11/19 | implementation and variations (students) code telephone |
Mitchell 5, Banzhaf 9-11 |
Fri 11/26 | (Thanksgiving, no class) | (none) |
Fri 12/3 | genetic programming and quantum computation (Lee) code telephone |
handouts |
Last updated September 6, 1999, by Lee Spector, lspector@hampshire.edu