Preliminary ABET-style Syllabus
CATALOG DATA:
EE 599 - Evolutionary Computing: 3 Credits
EE 699 - Advanced Evolutionary Computing: 3 Credits
Evolutionary Computing (EC) is about the use of computer simulation of evolutionary processes to solve engineering problems. This course will give students an understanding of, and experience with, evolutionary computing including both Genetic search Algorithms (GAs) and Genetic Programming (GP). The focus will be on solving complex engineering design problems using these techniques. In addition to specific assignments, each student will be expected to work on at least one "open" problem that they will propose. The solution approach for the "open" problem will be described in a short write-up and presented to the class. C programming will be required to implement the design tools.
Grading will be based on two in-class exams, a number of programming assignments, and the presentation of the students solution to their final assignment. At the end of the course, each student will be required to summarize their final assignment approach and results in a brief paper, and a short (~10 minute) presentation to the class. The report should be in a form suitable for submission to the IEEE student paper contest and students also are expected to present their project at ECE Day unless excused by the instructor. It is expected that the exams and assignments will count for approximately equal portions of the grade.
The primary difference between graduate and undergraduate versions of this course is scope of the assignments; the graduate students will be given broader and more "open" assignments, whereas undergraduates will have more details and implementation hints specified for them. Further, undergraduates may be permitted to do their final project in small teams.
TEXTBOOK
:None required - Course notes
COORDINATOR
:Dr. Henry G. Dietz, Professor
GOALS
:The goal of this course is to enable students to use evolutionary computing methods, including a range of GA and GP techniques, to solve engineering problems. The focus is more on engineering than on theoretical artificial intelligence; thus, emphasis will be placed on concepts involving how engineering domain-specific knowledge can be used to enhance evolutionary techniques.
PREREQUISITE
:For EE599: Undergraduate standing and fluency in C or a similar programming language
For EE699: Graduate standing and fluency in C or a similar programming language
TOPICS
:OUTCOMES
:Upon completion of this course the students should demonstrate the ability to:
COMPUTER
USAGE:
Students will perform open-ended experiments using evolutionary
computing to solve engineering problems.
DESIGN CONTENT:
Students will design the evolutionary computing approaches for
their problems. Implementation of these approaches will largely
reuse code provided to them, with only a small amount of new
coding required. The design content, which is the bulk of the
effort in the projects, is the casting of a problem in a form
appropriate for an evolutionary computing solution and the
determination of the appropriate parameters for the GA/GP
search.
CLASS SCHEDULE:
Lecture 3 hours per week.
PROFESSIONAL CONTRIBUTION:
Engineering Science: 1 Credit (33%)
Engineering Design: 2 Credits (67%)
RELATION OF COURSE TO PROGRAM OBJECTIVES:
These course outcomes fulfill the following program objectives:
PREPARED BY: Henry G. Dietz DATE: August 25, 2004 (last update: August 24, 2005)