CSCI 4560/6560 Evolutionary Computation and Its Applications
CSCI 4560/6560 Evolutionary Computation and Its Applications
Fall 2008: Tuesdays and Thursdays 3:30pm - 4:45pm, Wednesdays 3:35pm -
4:25pm, Boyd GSRC 306
Instructor: Prof. Khaled
Rasheed
Telephone: 542-3444
Office Hours: Tuesday: 1-2:30pm and Wednesday: 4:35-6:00pm or by email
appointment
Office Location: Room 219B, Boyd GSRC
Email: khaled@cs.uga.edu
Teaching Assistant: Chandana Kaza
Office Hours: Tuesday: 2:00-3:00pm and Thursday: 2:00-3:00pm or by email
appointment
Office Location: Room 538, Boyd GSRC
Email: kaza@uga.edu
Objectives:
To provide a broad introduction to the field of Genetic Algorithms and
other fields of Evolutionary Computation and global optimization. To
teach students how to apply these methods to solve problems in complex
domains.
The course is appropriate both for students preparing for research in
Evolutionary Computation, as well as Science and Engineering students
who want to apply Evolutionary Computation techniques to solve
problems in their fields of study.
Recommended Background:
CSCI 2720 Data Structures (or permission of the instructor).
Familiarity with basic computer algorithms and data structures and at
least one high level programming language.
Topics to be Covered:
Genetic Algorithm core topics including representation, operators and
architectures. Other fields of evolutionary computation including
Genetic Programming, Evolution Strategies, Evolutionary Programming
and Classifier Systems. Evolutionary Computation applications in
science and Engineering. Other nature-inspired global optimization techniques.
Expected Work:
Reading; assignments (including programming); midterm; final; and term
project and paper. (Unless otherwise announced by the instructor: all
assignments and all exams must be done entirely on your own.)
Academic Honesty and Integrity:
All academic work must meet the standards contained in
"A Culture of Honesty." Students are responsible for informing
themselves about those standards before performing any academic
work. The penalties for academic dishonesty are severe and ignorance
is not an acceptable defense.
Grading Policy:
Assignments: 30% (Programs, questions, paper presentations)
Midterm Examination: 20%
Final Examination: 25%
Term Project: 25% (includes term paper and presentation)
Students may work on their term projects individually or in groups of
up to THREE students each. The above distribution is only tentative
and may change later. The instructor will announce any changes.
Assignment Submission Policy
Assignments must be turned in by the assigned deadline. Late
assignments will not be accepted. Rare exceptions may be made by the
instructor only under extenuating circumstances and in accordance with
the university policies.
Course Home-page
A variety of materials will be made available on the EC Class
Home-page at
http://www.cs.uga.edu/~khaled/ECcourse/, including handouts,
lecture notes and assignments. Announcements may be posted between
class meetings. You are responsible for being aware of whatever
information is posted there.
Lecture Notes
Copies of some of Dr. Rasheed's lecture notes will be
available at the bottom of the class home page. Not all the lectures
will have electronic notes though and the students should be prepared
to take notes inside the lecture at any time.
Textbook in Bookstore
"Introduction to Evolutionary Computing", Eiben and
Smith. Springer-Verlag, New York, 2003. (Required)
Additional Books
"Genetic Algorithms in Search, Optimization, and Machine
Learning", David Goldberg. Addison-Wesley, 1989.
"An Introduction to Genetic Algorithms", Melanie Mitchell. MIT
Press, 1996.
"Genetic Algorithms + Data Structures = Evolution Programs",
Zbigniew Michalewicz. Springer-Verlag, New York,1996.
"Evolutionary Computation", D. Dumitrescu et al. CRC Press,
2000.
"Evolutionary Computation 1", Thomas Back et al. IOP Publishing,
2000.
[9-18-2008] For the second homework assignment I have some
clarifications:
* For the subset sum problem you need not solve for values of N larger
than 10000. Doing so will not change your grade and may lead to
overflow problems. Also please include in your report the set and the
subset for a small value of N around 10 or so. This will allow the TA
to manually check your answer. Also please include your email address
on the report so that the TA can ask for your code if needed. Finally,
to avoid running infinitely for large values of N, you may generate
the target sum by going through the list elements one by one and
randomly deciding whether or not to include the element in that
sum. You will therefore ensure that there is at least one solution. Of
course in your program you will pretend that you did not know which
elements constituted the target sum. It will be interesting to see if
you end up with the same elements or different ones that have the same
sum.
* When you code the fitness function for the TSP make sure you include
the last edge of the tour (the one taking you back to the starting
city) in your calculation of the tour length. You will get very
misleading results if you forget that.
* The reports should be turned in as printouts rather than
electronically. If the TA needs any electronic materials she will
email you.
* If you have any other questions you can email me. I will try to
answer within 24 hours.
Chapter 6The course syllabus is a general plan for the course; deviations
announced to the class by the instructor may be necessary.
Last modified: September 30, 2008.
Khaled Rasheed
(khaled (at) cs.uga.edu)