260 likes | 419 Views
Artificial Intelligence in Information Processing. Genetic Algorithms. by Theresa Kriese for Distributed Data Processing. Content. Introduction Understanding: Travelling Salesman Problem Biological Background GA’s in Information Processing Summary Sources.
E N D
Artificial Intelligence in Information Processing Genetic Algorithms by Theresa Kriese for Distributed Data Processing
Content • Introduction • Understanding: Travelling Salesman Problem • Biological Background • GA’s in Information Processing • Summary • Sources
How to solve problems, that are socomplex, that you can not get an exactsolution in an appropriate time?
Travelling Salesman Problem optimisation problem not one solution, but the best possible no wrong or right solution The Problem: A Salesman needs to go to n cities for work. In each city, he has one customer. Because he doesn’t want to travel so long, he needs to find the shortest possible route. He knows the single distances between two cities.
How could you solve the problem? • for all possible ways, the distance must be found • with increasing n, the problem soon gets too complex • NP-Algorithm: problem can’t be solved in polynomial time / the needed calculating steps can’t be described by a polynomial that’s more, than the amount of elementary particles in the universe! * 10 cities = over 180000 possibilities * 24 cities = 1.3*10^22 poss. * 120 cities = 6*101^96 poss.
This can’t be the right way.. • no combinatorial solving • For practical use: Instead of an optimum (shortest route ever) after a long time It’s better to get a suboptimum (short, but probably not the shortest) in the short-run Example: optimal route for visiting the 15 biggest cities in Germany
Let’s ask the nature! She is solving complex problems for hundreds of centuries!
Biological Background Different processes during the reproduction of a population in a long period of time aspire a perfectly adapted group of individuals in the end. Image: http://softwarecreation.org/images/2008/natural-selection.png
Mutation Images: http://neatorama.cachefly.net/images/2006-07/albino-squirrel-white.jpg, http://employees.csbsju.edu/HJAKUBOWSKI/classes/SrSemMedEthics/Human%20Genome%20Project/mutation2.gif
Selection Image: http://www.scienceteacherprogram.org/biology/NaturalSelectionIllustration.gif
Recombination (Crossover) Image: http://en.wikipedia.org/wiki/Image:Morgan_crossover_1.jpg
When do we need genetic algorithms? • Timetabling problems • Bioinformatics • Code-breaking • Software Engineering • Scheduling applications • Marketing analysis • File allocation for distribution systems • Learning algorithms in neural networks
How does it work? • Different solution candidates • fitness function • Selection • Mutation • Recombination -if break-up criteria is fulfilled Best found solution
Steps in practice • Initialisation - generation of all possible “individuals” (solution candidates) by chance 1st generation - encoding to binary code • Evaluation - using a fitness function, the fitness of each solution candidate is calculated
Process • Selection - random selection of solution candidates - the higher the fitness, the higher the probability to be selected • Mutation - random modification of candidates
Recombination (crossing over) Mutation and crossing over are methods to generate a 2nd generation population. New generation replaces worst ranked parts of the generation before. Due to the repeating processes, the generations are getting closer to an optimum. The whole process continues until a break-up criteria occurs.
Images: http://fbim.fh-regensburg.de/~saj39122/vhb/NN-Script/script/gen/k040401.html
Understanding:Scheduling • Example: hospital • working in shifts • many factors to consider: - law regulations - personal wishes for days off - shift premium - certain amount of doctors and nurses • very complex information cluster in one big database • program works out optimum schedule by using genetic algorithms
Summary • Based on the biological evolution • Genetic operators used: - selection - mutation - recombination • Developed to solve optimisation problems • Can not give an exact solution but is approaching an optimum
Sources • www.wikipedia.org [en,de] • www-e.uni-magdeburg.de/harbich/genetische_algorithmen [de] • www.htw-dresden.de/~iwe/Belege/Boerner/ [de] • http://www.uni-kl.de/AG-AvenhausMadlener/tsp-ger.html [de] • http://www.sciencedirect.com Volume 39, Issue 5, September 2003, Pages 669-687 [en] • www.fbim.fh-regensburg.de [de]