Cleveland State University

Department of Electrical and Computer Engineering


EEC 693/793, ESC 794

Special Topics: Population-Based Optimization (4 credit hours)

Fall 2008


Description:       This course discusses the theory, history, mathematics, and applications of population-based optimization algorithms, most of which are based on biological processes. Some of the algorithms that are covered include genetic algorithms, evolutionary computing, ant colony optimization, biogeography-based optimization, differentical evolution, and artificial immune systems. Students will write computer-based simulations of optimization algorithms using Matlab. After taking this course the student will be able to apply population-based algorithms using Matlab (or some other high level programming language) to realistic engineering problems. This course will make the student aware of the current state-of-the-art in the field, and will prepare the student to conduct independent research in the field.


Text:                  J. Kennedy, R. Eberhart, and Y. Shi, Swarm Intelligence, Morgan Kaufmann Publishers, 2001

References:       M. Batty, Cities and Complexity, MIT Press, 2005
D. Coley, An Introduction to Genetic Algorithms for Scientists and Engineers, World Scientific, 1999
L. Davis, Handbook of Genetic Algorithms, Van Nostrand Reinhold, 1991
L. de Castro, Fundamentals of Natural Computing, CRC Press, 2005
A. Engelbrecht, Computational Intelligence, John Wiley & Sons, 2007
D. Fogel, Evolutionary Computation: The Fossil Record, IEEE Press, 1998
N. Forbes, Imitation of Life, MIT Press, 2005
M. Gen and R. Cheng, Genetic Algorithms and Engineering Design, John Wiley & Sons, 1997
M. Gen and R. Cheng, Genetic Algorithms and Engineering Optimization, John Wiley & Sons, 2000
D. Goldberg, Genetic Algorithms in Search, Optimization, and Machine Learning, Addison-Wesley, 1989
T. Gonzalez, Handbook of Approximation Algorithms and Metaheuristics, CRC Press, 2007
R. Haupt and S. Haupt, Practical Genetic Algorithms, John Wiley & Sons, 1998
J. Holland, Adaptation in Natural and Artificial Systems, MIT Press, 1992
M. Jamshidi, Robust Control Systems with Genetic Algorithms, CRC Press, 2003
J. Koza, Genetic Programming, MIT Press, 1992
Z. Michalewicz, Genetic Algorithms + Data Structures = Evolution Programs, Springer, 1996
M. Mitchell, An Introduction to Genetic Algorithms, MIT Press, 1996
C. Reeves and J. Rowe, Genetic Algorithms - Principles and Perspectives, Kluwer Academic Publishers, 2003
J. Spall, Introduction to Stochastic Search and Optimization, John Wiley & Sons, 2003
A. Zalzala and P. Fleming, Genetic Algorithms in Engineering Systems, The Institution of Electrical Engineers, 1997
J. Zurada, R. Marks, C. Robinson, Computational Intelligence Imitating Life, IEEE Press, 1994
IEEE Transactions on Evolutionary Computation
Machine Learning
Complex Systems
Complexity International
Evolutionary Computation
Genetic Programming and Evolvable Machines

Web sites: - John Koza’s web site - The Association for the Advancement of Artificial Intelligence - International Society of Artificial Life - Kevin Passino’s Matlab-based GA software - The Hitch-Hiker’s Guide to Evolutionary Computation
- Networking and Emerging Optimization, University of Málaga, Málaga, Spain - Simultaneous Perturbation Stochastic Approximation


Prereqs:             Graduate Standing
Proficiency in Matlab programming
Permission of instructor


Time:                 4:00-5:50, T Th

Instructor:         Dr. Dan Simon



Web Site:


Stilwell Hall 343


Stilwell Hall 310

Office Hours:

3:00-4:00, T Th

                           Feel free to email, call, or stop by my office any time and I’ll be happy to help you if I’m available.



EEC 693

EEC 793






















                           EEC 793 students are required to write a technical paper (in addition to their project) developing some theoretical aspect of a population-based algorithm. Part of this assignment includes presenting their results to the class in a lecture-style presentation at a suitable time during the semester. EEC 693 students are not required to complete this assignment, although they can choose to do so for extra credit.


Homework:        In addition to written exercises, Matlab assignments will be given to demonstrate the theory in the text. You can work with others on homework, but identical homework assignments will be given a grade of zero. Late homework will not be accepted. Homework should be neat, the pages should be stapled with one staple in the upper left corner, and the problems should be in order. Homework assignments and due dates are given at


Tests:                 Quizzes and Exams are open-book and open-notes, but no electronic devices are allowed. No makeup quizzes or exams are allowed without the prior permission of the instructor.



Week #

Lecture Topic


Life and Intelligence


Group Intelligence


Genetic Algorithms


Genetic Algorithm Extensions


Genetic Algorithm Analyses


Evolutionary Computation


Cultural Algorithms


Particle Swarm Optimization


Ant Colony Optimization


Biogeography-Based Optimization


Differential Evolution


Simulated Annealing


Probability Based Incremental Learning


Evolutionary Strategies


Artificial Immune Systems


Project:              Each student will be responsible for a research project based on genetic algorithms, evolutionary programming, or a related topic. The project can involve one of a number of different problems, such as:
- The application of a population-based optimization algorithm to some realistic problem
- A theoretical enhancement of some aspect of a population-based optimization algorithm
- The study and analysis of a journal or conference paper
- A review and analysis of early work in population-based optimization
- Analysis of the effects of various parameters or options on optimization performance
- Novel approaches to optimization (e.g., simulations of the evolution of economic, governmental, or stellar systems)
- Some other topic related to population-based optimization
In all cases the project should involve the writing of software and the presentation of simulation results. The project will be graded on the basis of a written report and an oral report  given on the last day of class. Appendix D of Michalewicz’s book (see the reference list above) has a lot of good project ideas and guidance.

More information about the project, including deadlines and requirements, is at


Important Dates:




Thurs. Oct. 9


Thurs. Oct. 9

Letter of Intent due

Thurs. Oct. 16

Project proposals due

Thurs. Dec. 4

Project presentations

Tues. Dec. 9

Written projects due

Tues. Dec. 9

Final Exam


Homework due dates and exam dates will be determined by the instructor during the semester and announced in class. It is the students’ responsibility to make sure they are aware of these dates. Late project reports will not be accepted.


Grading Scale:




A minus


B plus




B minus







Professor Simon’s Home Page

Department of Electrical and Computer Engineering

Cleveland State University

Last Revised: August 11, 2008