Module 02411 (2004)

Syllabus page 2004/2005

06-02411
Evolutionary Computation

Level 3/H

Ata Kaban
10 credits in Semester 1

Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus


The Module Description is a strict subset of this Syllabus Page. (The University module description has not yet been checked against the School's.)

Relevant Links

Module Web Page


Outline

Evolutionary computation is the study of computational systems that use ideas and get inspiration from natural evolution. Its techniques can be applied to optimisation, learning and design. Example topics covered in this module include natural and artificial evolution, evolutionary, chromosome representations, search operators, co-evolution, constraint handling techniques, niching and speciation, genetic programming, classifier systems and theoretical foundations.


Aims

The aims of this module are to:

  • introduce the main concepts, techniques and applications in the field of evolutionary computation
  • give students some experience on when evolutionary techniques are useful, how to use them in practice and how to implement them with different programming languages.

Learning Outcomes

On successful completion of this module, the student should be able to: Assessed by:
1understand the relations between the most important evolutionary algorithms presented in the module, new algorithms to be found in the literature now or in the future, and other search and optimisation techniques Examination
2understand the implementation issues of evolutionary algorithms Examination
3determine the appropriate parameter settings to make different evolutionary algorithms work well Examination
4design new evolutionary operators, representations and fitness functions for specific applications Examination

Restrictions, Prerequisites and Corequisites

Restrictions:

None

Prerequisites:

None

Co-requisites:

None


Teaching

Teaching Methods:

2 hrs per week; a combination of lectures and tutorials.

Contact Hours:

24


Assessment

  • Supplementary (where allowed): As the sessional assessment
  • 2 hr examination (100%).

Recommended Books

TitleAuthor(s)Publisher, Date
Handbook on Evolutionary ComputationT. Baeck, D. B. Fogel, and Z. Michalewicz (eds.)IOS Press, 1997
Genetic Algorithms + Data Structures = Evolution Programs (3rd edition)Z MichalewiczSpringer-Verlag, 1996
Genetic Algorithms in Search, Optimisation & Machine LearningD E GoldbergAddison-Wesley, 1989
Genetic Programming: An IntroductionW Banzhaf, P Nordin, R E Keller & Frank D FranconeMorgan Kaufmann, 1999
Evolutionary Computation: Theory and ApplicationsX Yao (ed)World Scientific, 1999
Various articles in journals and conference proceedings

Detailed Syllabus

  1. Introduction to Evolutionary Computation
    • Biological and artificial evolution
    • Evolutionary computation and AI
    • Different historical branches of EC, e.g., GAs, EP, ES, GP, etc.
    • A simple evolutionary algorithm
  2. Search Operators
    • Recombination/Crossover for strings (e.g., binary strings), e.g., one-point, multi-point, and uniform crossover operators
    • Mutation for strings, e.g., bit-flipping
    • Recombination/Crossover and mutation rates
    • Recombination for real-valued representations, e.g., discrete and intermediate recombinations
    • Mutation for real-valued representations, e.g., Gaussian and Cauchy mutations, self-adaptive mutations, etc.
    • Why and how a recombination or mutation operator works
  3. Selection Schemes
    • Fitness proportional selection and fitness scaling
    • Ranking, including linear, power, exponential and other ranking methods
    • Tournament selection
    • Selection pressure and its impact on evolutionary search
  4. Search Operators and Representations
    • Mixing different search operators
    • An anomaly of self-adaptive mutations
    • The importance of representation, e.g., binary vs. Gray coding
    • Adaptive representations
  5. Evolutionary Combinatorial Optimisation
    • Evolutionary algorithms for TSPs
    • Evolutionary algorithms for lecture room assignment
    • Hybrid evolutionary and local search algorithms
  6. Co-evolution
    • Cooperative co-evolution
    • Competitive co-evolution
  7. Niching and Speciation
    • Fitness sharing (explicit and implicit)
    • Crowding and mating restriction
  8. Constraint Handling
    • Common techniques, e.g., penalty methods, repair methods, etc.
    • Analysis
    • Some examples
  9. Genetic Programming
    • Trees as individuals
    • Major steps of genetic programming, e.g., functional and terminal sets, initialisation, crossover, mutation, fitness evaluation, etc.
    • Search operators on trees
    • Automatically defined functions
    • Issues in genetic programming, e.g., bloat, scalability, etc.
    • Examples
  10. Multiobjective Evolutionary Optimisation
    • Pareto optimality
    • Multiobjective evolutionary algorithms
  11. Learning Classifier Systems
    • Basic ideas and motivations
    • Main components and the main cycle
    • Credit assignment and two approaches
  12. Theoretical Analysis of Evolutionary Algorithms
    • Schema theorems
    • Convergence of EAs
    • Computational time complexity of EAs
    • No free lunch theorem
  13. Summary

Last updated: 25 Nov 2003

Source file: /internal/modules/COMSCI/2004/xml/02411.xml

Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus