Você está na página 1de 13

GA em Otimizao

Combinatorial
G

Problemas onde a busca da soluo depende da


avaliao de diversas combinaes (ORDEM) dos
elementos considerados

Problem a do Caixeiro Viajante


Problem as de Planejamento
Problem as de Cronogram as
Alocao de Salas
Grafos:: Colorir,
Grafos
Colorir Particionar, Percorrer

Problema de Colorir o Grafo


ndice

I-P

peso

Regras:
Colorir os ns do grafo de
modo a maximizar a soma
total dos pesos.
Pares de ns conectados por
um arco no podem possuir
a mesma cor

1-5

2-8

3-4

4-9

5-6

6-7

7-13

8-10

9-15

Algoritmo Guloso
Considera apenas uma das
possveis solues,
colorindo os ns em ordem
decrescente de peso.
Ns em ordem
decrescente de peso:
G

1-5

2-8

3-4

4-9

5-6

6-7

7-13

8-10

9-15

1-5

2-8

3-4

4-9

5-6

6-7

7-13

8-10

9-15

(9, 7, 8, 4, 2, 6, 5, 1, 3)

Soluo tima p/ 1 cor:


G

(9, 4, 2)

Pi = 32

Algoritmo Guloso
Considera apenas uma das
possveis solues,
colorindo os ns em ordem
decrescente de peso.
Ns em ordem
decrescente de peso:
G

(9, 7, 8, 4, 2, 6, 5, 1, 3)

Soluo tima p/ 1 cor:


(9, 4, 2)

Pi = 32

Algoritmo Guloso
Considera apenas uma das
possveis solues,
colorindo os ns em ordem
decrescente de peso.
Ns em ordem
decrescente de peso:
G

1-5

2-8

3-4

4-9

5-6

6-7

7-13

8-10

9-15

1-5

2-8

3-4

4-9

5-6

6-7

7-13

8-10

9-15

(9, 7, 8, 4, 2, 6, 5, 1, 3)

Soluo tima p/ 1 cor:


G

(9, 4, 2)

Pi = 32

Algoritmo Guloso
Considera apenas uma das
possveis solues,
colorindo os ns em ordem
decrescente de peso.
Ns em ordem
decrescente de peso:
G

(9, 7, 8, 4, 2, 6, 5, 1, 3)

Soluo tima p/ 2 cores:

(9, 4, 2) e ( 7, 6, 5)
Pi = 32 + 26

Aplicando o Algoritmo Guloso


Ns em ordem
decrescente de peso:
G

2-8

1-12

(7, 3, 4, 1, 6, 5, 2)

3-14

6-10

7-15

4-13

5-9

Aplicando o Algoritmo Guloso


Ns em ordem
decrescente de peso:
G

2-8

1-12

(7, 3, 4, 1, 6, 5, 2)

Algoritmo Guloso comea


e para no n 7

3-14

6-10

7-15

4-13

5-9

Aplicando o Algoritmo Guloso


Ns em ordem
decrescente de peso:
G

2-8

1-12

(7, 3, 4, 1, 6, 5, 2)

Solues timas:
1 cor: (1, 5, 3)
2 cores: (2, 4, 6)

3-14

6-10

7-15

4-13

5-9

Caractersticas do Problema
A modificao dos pesos, nmero de cores e arcos,
altera radicalmente a soluo do problema.
Estratgias como o algoritmo guloso no funcionam
bem para todos os problemas de colorir o grafo.
Heursticas (Ex: a valiar nmero de arcos ou pesos
de ns vizinhos antes colorir um n) podem no ser
eficientes para grandes espaos de busca.
Algoritmos Genticos oferecem uma soluo
(sub-tima ou tima) para qualquer problema de
colorir o grafo.

Componentes de um Algoritmo Gentico


1. Problema
2. Representao
3. Decodificao
4. Avaliao
5. Operadores
6. Tcnicas
7. Parmetros

Tentando a Representao
Binria
Cada n do grafo representado por um campo
(gene) no cromossoma:
G

Smbolo do Campo Cor do n

Podemos usar a representao binria. Para apenas


1 cor :
G

0 no colorido

1 colorido

1-5

2-8

3-4

4-9

5-6

6-7

7-13

8-10

9-15

Cromossoma 0 1 0 1 1 0 0 0 1
N

1 2 3 4 5 6 7 8 9

Avaliando Representao
Binria
C um cromossoma ILEGAL
ILEGAL.
Inicializao, crossover e mutao vo gerar solues
ilegais.
Seria necessrio um mdulo reparador de cromossomas
Representao binria permite solues
sub-timas:
1-5
3-4
2-8
C 010100000
G
G

G
G

1 2 3 4 5 6 7 8 9

C ainda poderia ter o n 6, ou 8 ou 9


colorido e ser legal.

4-9

5-6

6-7

7-13

8-10

9-15

Representao Baseada em
Ordem
GA Hbrido Tcnicas de GA + Algoritmo Guloso
Algoritmo Guloso:
G

Cria uma lista de ns (ordem decrescente de peso)


Constri a soluo: atribui ao prximo n da lista uma cor
legal

Algoritmo Gentico
Cria uma lista (ns em ordem qualquer)
Constri a soluo: atribui ao prximo n da lista uma cor
legal

Exemplo
Cromossoma = lista
G

C1 (9, 7, 8, 4, 2, 6, 5, 1, 3)
C2 (2, 3, 7, 4, 9, 6, 5, 1, 8)
C3 (4, 5, 1, 2, 9, 6, 8, 7, 3)

1-5

2-8

3-4

4-9

5-6

6-7

7-13

8-10

9-15

C1 C2 C3 resultam na soluo
tima p/ 1 cor:
G

(9, 4, 2)

Pi = 32

Razo: informao codificada


a ordem relativa dos n
n s
G

Operadores Genticos
Testando o Crossover de 1 ponto:
G

P1 (9, 7, 8, 4, 2, 6, 5, 1, 3)
P2 (2, 6, 7, 4, 9, 3, 5, 1, 8)

F1 (9, 7, 8, 4, 2, 3, 5, 1, 8)
F2 (2, 6, 7, 4, 9, 6, 5, 1, 3)

Descendentes so cromossomas ilegais: ns


repetidos e ausncia de determinados ns.
Crossover e mutao devem garantir uma lista vlida
de todos os ns

Modelagem do Algoritmo Gentico


1. Problema

Problema de Colorir o Grafo


2. Representao

Permutao dos ndices dos ns


3. Decodificao

Da esquerda para direita, atribui uma cor vlida ao prximo n


4. Avaliao
Pi
5. Operadores
Crossover Uniforme Baseado em Ordem
G

Mutao por Embaralhamento

Crossover Uniforme Baseado


em Ordem
Dados dos genitores P1 e P2, , criar descendente F1;
Gere um padro de bits do mesmo comprimento que os
genitores;
Preencha F1, copiando o genitor P1 nas posies em que
o padro igual a 1;
Faa uma lista dos elementos de P1 associados com os
bits 0 do padro;
Permute estes elementos de modo que eles apaream na
mesma ordem em que aparecem em P2 ;
Preencha as lacunas de F1 com os elementos ordenados
no passo anterior;

Exemplo
P1
P2

1
8

2
6

3
4

4
2

5
7

6
5

7
3

8
1

Padro

F1

2
-

3
-

5
-

6
-

F2

Elementos de P 1 associados a 0: 1, 4, 7, 8.

Ordenados segundo P 2 : 8, 4, 7, 1

Elementos de P 2 associados a 1: 6, 4, 7, 5.

Ordenados segundo P 1 : 4, 5, 6, 7

F1
F2

8
8

2
4

3
5

4
2

5
6

6
7

7
3

1
1

Mutao por Embaralhamento


G
G

Seleciona aleatoriamente uma sub-lista do cromossoma


Embaralha sub-lista

antes

depois

10

Inverso
G

Seleciona aleatoriamente dois genes (ns) do


cromossoma
Inverte a posio dos genes

antes

depois

Md ulo de Av aliao

Funo de Avaliao:
G

Avaliador do problema de
colorir o grafo Pi

GA6-1

Md ulo de Populao
G

T cnica de Representao:

Lista de ns

T cnica Inicializao da Populao:

Permutao aleatria

T cnica Eliminao da Populao:

Elimina o ltimo

T cnica de Reproduo:

Steady State s/ duplicados

Gap

Roleta

T cnica de Aptido:

Normalizao Linear (100 a 1)

T cnica de Parametrizao:
Population Size:
G

Testar de 5 em 5

T cnica de Seleo de Genitores:

Total de Indivduos:
Md ulo de Reproduo
T cnica de Seleo de Operadores:

4000
Roleta

Operadores:

Crossover Uniforme Baseado em Ordem

T cnica de Parametrizao:

Interpolar Pesos dos Operadores

Mutao por Embaralhamento

Interpolar taxa de incremento (0,2 a 1,2)


100

de (60 40) a (30 70)

11

Problema de Colorir o Grafo


Grafo com 100 ns
100! permutaes diferentes
3 cores possveis
Listagem descreve o grafo atravs de:
G

(ndice_n, peso (lista de ns conectados))


(1
62 (20 58 74 82))
(2
183 (6 12 20 28 29 32 51 53 70 79 84 94))
(3
247 (18 24 33 50 88 92))
....................
...........
(99 254 (29 52 53 67 75 80 84 89))
(100 145 (15 20 22 29 34 44 60 87))

12

Resultados do GA 66-1
GA 6-1 em mdia 7,4% que a busca aleatria aps
4000 tentativas:
G

mdia GA 6-1= 10300


10300; mdia busca aleatria=9600
9600

GA 6-1 em mdia 7,4% que a Algoritmo Guloso:


G

mximo do Alg. Guloso= 9590

GA 6-2 com pop_size=1200 e total_indivduos=10000


encontrou avaliao=10594
10594

13

Você também pode gostar