Professional Courses in Informatics at The University of Edinburgh
Genetic Algorithms and Genetic Programming
Genetic Algorithms and Genetic Programming methods are a family of
computational models which solve hard combinatorial problems by means of
a mechanism inspired by biological evolution.
Given a hard problem to solve, the system makes a number of initial
guesses at the solution, ranks this population of guesses according to
fitness at solving the problem in hand, then combines and mutates the
fittest solutions to produce the next generation of solutions.
The process continues until a perfect solution is found, or no further
improvement is possible.
These algorithms have been found to be very good at solving hard real-world combinatorial optimisation problems. Just a few examples are timetabling (including the exam timetabling software used at the University of Edinburgh and various school timetabling systems), optimisation of manufacturing schedules, design of channel routing networks in VLSI design, applications in bioinformatics (protein and RNA folding), and many more. The field of Genetic Programming is relatively new, but the technique has already been used to evolve programs that are better than the best programs written by people to solve a number of difficult engineering problems. Genetic Programming can also be applied to the design of circuits and a number of new designs created by evolutionary means have already been patented.
The techniques taught on this course are very robust and have wide applicability.
Course OutlineThe course covers the following topics:
Course ScheduleThis course runs over 5 days, either at AIAI or, exceptionally, at the offices of a host organisation.
Contact InformationKen Baird,
AIAI/Centre for Intelligent Systems and their Applications,
Division of Informatics, The University of Edinburgh,
80 South Bridge, Edinburgh EH1 1HN, UK
Tel: +44 131 650 2732; Fax: +44 131 650 6513; Email: K.J.Baird@ed.ac.uk
AudienceThe course is intended for senior software engineers and other technical specialists who are interested in a methodological approach for designing systems using evolutionary computation, or who are searching for technologies which can solve hard optimisation problems. The course should also be of direct interest to project managers who need to have a strong technical awareness of what kind of problems these techniques can solve.
ObjectivesThis course will enable delegates to apply Genetic Algorithm and Genetic Programming methods to hard search, optimisation and machine learning problems.
PrerequisitesThe course is intended for practising analysts, engineers, managers and teachers who have some previous programming experience. No particular programming language is assumed.
Related CoursesThis course may be combined usefully with a sister course on Artificial Intelligence Programming in Java which provides an introduction to the Java programming language and the techniques of object-oriented programming by examining the design and implementation of the Genetic Algorithm toolkit used by this course.
Page maintained by R.Rae@ed.ac.uk, Last updated: Thu Aug 1 12:05:47 2002