2110742 Evolutionary Computation 2024
Prabhas Chongstitvatana
Office: Engineering Building 4, floor 18,
room 13
phone: 02-2186982
Class meeting: Tuesday 13:00-16:00, Eng 4/17-10
Evolutionary Computation is a sub-branch of Artificial
Intelligence. Its inspiration comes from "evolving" the solution to the
problems. It is capable of "self-improvement" which is an important
aspect of the intelligent agent. This class discusses evolutionary
computation in all aspects. Many established topics in this field will
be studied: Genetic algorithms, Genetic programming, Evolution
strategies. Advanced topics such as Estimation of distribution
algorithms and multiple objective optimisation are included. Theory as well
as practical aspects are emphasized. Beside discussing EC, we explore
the many topics of AI such as: limit of AI, ethical AI, learning etc.
How the class is conducted?
Because the nature of this topic is the study of algorithms, it
renders itself suitable for experiment. Weekly assignment requires
students to run the experiment based on the algorithm in the
lecture. It is a graduate class, so students are expected to do a
lot of self-study. Individual studies are designed to let students
study a specific topic in depth. The results are presented in the
group discussion as well as submission of written reports.
Announcement
. . .
Weekly lecture
- Genetic algorithms (Whitley
tutorial on GA) Intro to
GA
- Theoretical basis GA
implementation
- Probabilistic algorithms
- Genetic programming read from http://www.genetic-programming.org/
GP in design
- Evolution strategies slides: one
two three
four five
six
- Estimation of distribution algorithms (Pelikan
slides)
- EDA 2 Baluja, Population-based
incremental learning, CMU CS-94-163, 1994
- Multiple objective optimisation Deb,
NSGA II ieee-trans-ec 2002 slides Multiobjective
, Differential Evolution
- Coincidence
Algorithm
- Discussion of the recent topic in EC
- Differential Evolution wiki
(paper local copy)
- No Free Lunch theorem
wiki (paper local copy
)
- Particle Swarm Optimization (PSO) wiki
- Ant colony optimization
wiki
- Coevolution ( in nature wiki
) cooperative coevolutionary algorithms (
local copy pdf )
- Summary
Supplementary materials
- Georges R. Harik, Fernando G. Lobo, and David E. Goldberg, "The
Compact Genetic Algorithm," IEEE TRANSACTIONS ON EVOLUTIONARY
COMPUTATION, VOL. 3, NO. 4, NOVEMBER 1999. (full text)
-
Wattanapornprom, W., Olanviwitchai, P., Chutima, P. and
Chongstitvatana, P., "Multi-objective Combinatorial Optimisation with
Coincidence Algorithm," IEEE Congress on Evolutionary Computation,
Norway, May 18-21, 2009. (
full text )
- An easier read on COIN description : Chongstitvatana,
P., Wattanapornprom, W., Olanviwitchai, P., Sirovetnukul, R.,
Kampirom N., and Chutima, P., "Coincidence Algorithm for
Combinatorial Optimisation and Its Applications," (invited
paper), Proc. of Electrical Engineering Conference (33th),
Chiangmai, Thailand, 1-3 Dec. 2010. (
full text )
- A tutorial on multiobjective
evolutionary optimization, Zitzler (pdf)
- Storn, R.; Price, K. (1997). "Differential evolution - a simple and
efficient heuristic for global optimization over continuous spaces".
Journal of Global Optimization 11: 341–359. (local
copy)
- Wolpert, D.H., Macready, W.G. (1997), "No Free Lunch Theorems for
Optimization," IEEE Transactions on Evolutionary Computation 1, 67. ( local copy )
- R. Paul Wiegand, An Analysis of Cooperative Coevolutionary
Algorithms, PhD thesis, Department of Computer Science, George Mason
University, 2003. ( local
copy pdf )
- Omidvar, M.N., Xiaodong Li, Zhenyu Yang, Xin Yao, "Cooperative
Co-evolution for large scale optimization through more frequent random
grouping," IEEE Congress onEvolutionary Computation (CEC), 18-23 July
2010, pp.1-8. ( local copy )
- Zhenyu Yang, Ke Tang, Xin Yao, "Large scale evolutionary optimization
using cooperative coevolution," Information Sciences 178 (2008)
2985–2999. (local copy)
- Das, S., "Differential Evolution: A Survey of the State-of-the-Art,"
IEEE Trans on Evolutionary Computation, vol 15, issue 1, Feb. 2011,
pp.4-31. (local copy)
- Manuel Lopez-Ibanez, T. Devi Prasad, Ben Paechter, "Representations
and Evolutionary Operators for the Scheduling of Pump Operations in
Water Distribution Networks," Evolutionary Computation 19(3): 429–467. (local copy)Flowshop
problems: Quan-Ke Pan, Ruben Ruiz, "Local search methods for the
flowshop scheduling problem with flowtime minimization," European
Journal of Operational Research, 222 (2012) 31-43. (
local copy )
- K. Suksen and P. Chongstitvatana, "Exploiting
Building Blocks in Hard Problems with Modified Compact Genetic
Algorithm," (draft) 2018
- Yann Dujardin, Iadine Chadès, "Solving multi-objective optimization
problems in conservation with the reference point method," PLoS ONE
13(1): e0190748. https://doi.org/10.1371/journal.pone.0190748 (local copy)
- ...
Homework
. . .
Project
Think of an interesting multi-objective Combinatorial Optimization
problem. Use COIN to solve it. The first step to solve the problem is
how to map the instant of solutions to be suitable for COIN. Supawadee
has written a prototype TSP-COIN (a kind of golden model for COIN
written in C). It is COIN that solves TSP problem. It is all in one
file. The input "input15.txt" (and input26.txt) is an example.
You can use it to check the correctness your implementation of COIN. You can
compile (tspcoin.c) and run it. The output is like this:
C:\temp\TSP-COIN>tsp
The algorithm found optimal solution, terminate in gen 15!!!
The best result is 291
traverse : 13 1 11 4 6 8 10 14 12 3 7 5 9 15 2
You must deliver the following:
1) a running program that solve your problem
2) present your project (8 minutes max)
3) a short report describing your project and method.
Here is the TSP-COIN (tsp-coin.zip)
...
External references
Applet (animation) for GA
http://www.rennard.org/alife/english/gavgb.html
Genetic Algorithm Viewer 1.0 is a demonstration applet of the
functioning of a Genetic Algorithm (GA). It aims at showing the power of
GA and of the main mechanisms used while permitting a certain form of
visualization of the general functioning.
http://www.stellaralchemy.com/ice/
The applet executes what is called a genetic algorithm (GA). To facilitate
understanding, every step in the GA is animated. This particular GA
evolves solutions to a simple board game. This program also detects and
reports if any irreducibly complex (IC) solutions arise during the
evolution of its population of solutions to the board game.
Assessment
homework 30
individual study 30 (final project)
final exam 40
Text
1. Mitchell, M., An introduction to genetic algorithms, MIT press, 1996.
2. Goldberg, D., The design of innovation, Kluwer pub, 2002.
3. Holland, J. H., Adaptation in natural and artificial systems, MIT press,
1992.
4. Koza, J., "Genetic Programming Vol 1, 2, 3", MIT Press, 1992, 1994, 1999.
5. Goldberg, D., Genetic algorithms, Addison-Wesley, 1989.
6. Banzhaf, W., Nordin, P., Keller, R. and Francone, F., Genetic
Programming: An Introduction, Morgan Kaufmann, 1998.
6. Winter, G., Periaux, J., Galan, M., Cuesta, P. (eds), Genetic algorithms
in engineering and computer science, John Wiley, 1995.
Uptodate handouts on various current researches will be distributed in the
class.
Tools
galib247.zip
myga example
last update 7 January 2025