algoritmos genéticos aula 2 - exemplos. caixeiro viajante exemplos de programa...
TRANSCRIPT
![Page 1: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/1.jpg)
Algoritmos Genéticos
aula 2 - exemplos
![Page 2: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/2.jpg)
Caixeiro viajante
Exemplos de programa
http://www.aic.nrl.navy.mil/~ramsey/tsp_html/tsp.html
http://www-cse.uta.edu/~cook/ai1/lectures/applets/gatsp/TSP.html
![Page 3: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/3.jpg)
Caixeiro viajante
• representação intuitiva: o próprio caminho
• problema: crossover
D E B A H G F I C
![Page 4: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/4.jpg)
Exemplo: recombinação de 2 pontos
A B C D E F G H I
D E B A H G F I C
A B C A H G F H I
D E B D E F G I C
1 2
![Page 5: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/5.jpg)
PMX crossover (partially mapped)
A B C D E F G H I
D E B A H G F I C
x x x A H G F x x
x x x D E F G x x
x B C A H G F x I
x x B D E F G I C
D B C A H G F E I
A H B D E F G I C
1 2
3 4
![Page 6: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/6.jpg)
OX crossover (ordered)
A B C D E F G H I
D E B A H G F I C
x x x A H G F x x
x x x D E F G x x
C D E A H G F I B
B A H D E F G I C
1 2
3
3- partindo do segundo ponto de quebra, as cidades do outro pai são copiadas na mesma ordem, omitindo as cidades já presentes no filho
![Page 7: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/7.jpg)
exemplos de mutação
• inversão: de duas cidades adjacentes
• inserção: seleciona uma cidade e a coloca aleatoriamente em algum ponto
• deslocamento: seleciona um sub-percurso e o coloca aleatoriamente em algum ponto
• troca recíproca: troca de posição entre duas cidades
![Page 8: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/8.jpg)
2opt method
AB e CD fazem parte do percurso
se AB + CD > AC + BD então faço a troca para AC e BD
A
B
C
D
A
B
C
D
![Page 9: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/9.jpg)
Trabalho de Jorge Meinhardt
• “O presente trabalho pretende mostrar a possibilidade de uso de uma ferramenta de inteligência artificial utilizando a abordagem de algoritmo genético para auxílio ao projeto altimétrico de rodovias.”
![Page 10: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/10.jpg)
exemplo: robocup
• p/ melhorar o drible, para melhorar a condução da bola, etc...
![Page 11: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/11.jpg)
An Evolutionary Behavior Tool for Reactive Multi-agent Systems
Andre Zanki Cordenonsi
Centro Universitário FranciscanoÁrea de Ciências ExatasRua dos Andradas 1614
Centro - Santa Maria – RSCEP 97010 - 032
Luis Otávio Alvares
Universidade Federal do Rio Grande do Sul Instituto de Informática
Av. Bento Gonçalves, 9500 Bairro Agronomia - Porto Alegre - RS -Brasil
CEP 91501-970 Caixa Postal: 15064
![Page 12: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/12.jpg)
Topics
1. Introduction
2. Artificial Life
3. The Simula++
4. Genetic Operators
5. Food Foraging Problem
6. Final Considerations and Further Works
![Page 13: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/13.jpg)
1. Introduction
Multi-agent Systems: “intelligent” autonomous agents
Reactive Multi-agent Systems: the perception/action approach
Evolutionary Reactive Multi-agent Systems: agents can modify
their behavior by a genetic evolutionary process
![Page 14: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/14.jpg)
1. Introduction (…)
Why to use an Evolutionary Reactive Multi-agent Systems ?
- adaptation to dynamically environments
- adaptation to unknown environments
Objective of this paper: shows the specification and implementation of an Evolutionary Reactive Multi-agent Systems where the behavior of the agents can be modified during the simulation
![Page 15: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/15.jpg)
1. Introduction (…)
Previous work: the Simula Tool! [Frozza]
A graphical tool to teach the multi-agent technology developed in the Instituto de Informática – UFRGS by Rejane Frozza and Luis Otávio Alvares
A tool to simulate reactive multi-agent systems, using a graphical interface to build the agents behavior and to shows the simulation.
![Page 16: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/16.jpg)
2. Artificial Life
What is life ?
The subject of :
- Philosophy
- Biology
- Chemistry
- History
- …
![Page 17: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/17.jpg)
2. Artificial Life (…)
- … and Computer Science !
The Artificial Life IS :
“ the understanding of life through the abstraction of its fundamental dynamic principles, and to create such dynamics in another physical medias, such as the computers ”
Chistopher Langton
![Page 18: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/18.jpg)
2. Artificial Life (…)
The Emergent Behavior
Complex/Organized behavior formed by the simple/local interactions among the agents
Ex: ant colonies, assembly of cells
![Page 19: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/19.jpg)
3. The Simula ++
- Reactive Multi-agent Systems
- Didactic tool
- Graphical User Interface
![Page 20: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/20.jpg)
3. The Simula ++ (…)
Class of agents and the Behavior
Rule A
Rule B
Rule C
Class XRule A
Rule B
Rule C
Agent 00
Rule A
Rule B
Rule C
Agent 01
Rule A
Rule B
Rule C
Agent 02
Initial State
![Page 21: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/21.jpg)
3. The Simula ++ (…)
Each Agent has
- Set of Independent Elements
- Chromosome ( set of rules )
![Page 22: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/22.jpg)
3. The Simula ++ (…)
Independent Elements ( equal for all agents of the same class )
- Initial Energy
- Energy Amount
- Maximum Life Time
- Life Time
- Sexual Maturity Time
- New Generation Time
![Page 23: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/23.jpg)
3. The Simula ++ (…)
Chromosome: the rule characteristics
- declarative
- precondition
- action
- priority
priority = 7
if (not perceive agent A) then
random_move();
RULE A
![Page 24: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/24.jpg)
3. The Simula ++ (…)The new Generation Algorithm
LT == SMT
New Offspring !
Execute Action
reach NGT
Fertile Agents
yes
yesno
no
LT > SMT
Insert Agent
yes no
![Page 25: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/25.jpg)
4. Genetic Operators
One-Point External Crossover Two-Point External Crossover
Rule A
Rule B
Rule C
Agent 00
Rule E
Rule F
Rule G
Agent 01
Rule A
Rule F
Rule G
Offspring
Rule A
Rule B
Rule C
Agent 00
Rule E
Rule F
Rule G
Agent 01
Rule A
Rule F
Rule C
Offspring
![Page 26: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/26.jpg)
4. Genetic Operators (…)
Internal Crossover
IF perceive Agent A AND not perceive Agent B
THEN random move
Agent 00
IF is Load
THEN search base
IF not perceive Agent A OR not perceive Agent B
THEN search mine
Agent 01
IF is not Load
THEN search mine
IF perceive Agent A OR not perceive Agent B
THEN random move
Offspring
IF is not Load
THEN search base
![Page 27: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/27.jpg)
4. Genetic Operators (…)
Mutation
- between 1% and 2%
- change pieces of a rule (respecting the semantic value)
AND/OR
Agent A, Agent B, Agent C, …
perceive_agent, search_agent, escape_from_agent,…
![Page 28: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/28.jpg)
5. Food Foraging Problem
- Collect all minerals from an unknown environment
- The environment is a grid ( 100 x 100 )
- Base is fixed
- All agents known where is the base
- There are three mines, with 100 units of mineral
![Page 29: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/29.jpg)
5. Food Foraging Problem (…)
It was defined six simulation groups:
- Petit Poucet I [Drougol]
- Petit Poucet II [Drougol]
- Petit Poucet III [Drougol]
- Dockers [Drougol]
- Evolutionary Group
- Standard Group
![Page 30: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/30.jpg)
5. Food Foraging Problem (…)
Standard Group (evolved by the evolutionary algorithm)IF NOT perceive (Mine) AND NOT perceive (Robot)
THEN random move
IF NOT perceive (Mine) AND perceive (Robot)
THEN follows (Robot)
IF NOT perceive (Mine) AND reach (Robot)
THEN flee (Robot)
IF perceive (Mine)
THEN load AND return to base AND leave (Mark Track)
IF perceive (Mark Track)
THEN follows(Mark Track) AND remove(Mark Track)
![Page 31: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/31.jpg)
0
2000
4000
6000
8000
10000
120001 6 11
16
21
26
31
36
41
46
51
56
61
66
71
76
81
86
91
96
E GroupS Group
Simulation steps
Number of Robots
PP1 PP2 PP3 Doc. E S
Time to collect all minerals 3351 5315 3519 1746 2303 2217
Minimum time to collect all minerals 1113 1607 1075 695 770 540
Number of Robots for the minimum time 64 98 87 84 95 95
5. Food Foraging Problem (…)
![Page 32: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/32.jpg)
6. Conclusions and Further Works
- Visual Analysis of the agent behavior
- Discovery of new rules to know/unknown problems
- Rapid prototype of RMAS
- Paradigm change (use or not use the evolutionary algorithm)
![Page 33: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/33.jpg)
6. Conclusions and Further Works (…)
- Two fitness measure (global/local)
- Automatic statistics and graphics
- Implementation of different genetic operators
![Page 34: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/34.jpg)
Bibliography
DROGOUL, A. De la Simulation Multi-Agents à la Résolution
Collective de Problèmes. Paris, France: Université Paris VI, 1993.
Thèse de Doctorat.
FROZZA, R. SIMULA – Ambiente para Desenvolvimento de Sistemas
Multiagentes Reativos. Porto Alegre: CPGCC da UFRGS, 1997.
Dissertação de mestrado.
![Page 35: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/35.jpg)
De Jong e Otimização de Funções
• De Jong, em sua dissertação “An Analisys of The Behavior of a class of Genetic Adaptive Systems”,fez uma investigação cuidadosa de diversas variações do “algoritmo genético simples” aplicados à otimização de funções.
![Page 36: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/36.jpg)
![Page 37: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/37.jpg)
![Page 38: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/38.jpg)
![Page 39: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/39.jpg)
![Page 40: Algoritmos Genéticos aula 2 - exemplos. Caixeiro viajante Exemplos de programa ramsey/tsp_html/tsp.html cook/ai1/lectures/applets/gatsp/TSP.html](https://reader033.vdocuments.net/reader033/viewer/2022061611/552fc10b497959413d8c29cd/html5/thumbnails/40.jpg)