Ciência da Computação
Modelos Evolucionários e
Tratamento de Incertezas
Aula 03
Teoria dos Esquemas
Esquemas
• Um esquema consiste em um template descrevendo um subconjunto dentre o conjunto de todos os indivíduos possíveis. • O esquema descreve similaridades entre
os indivíduos que pertencem ao
subconjunto, ou seja, descreve quais
Esquemas
• O alfabeto de esquemas consiste no conjunto de símbolos utilizados na representação mais o símbolo *, que significa “não-importa”
(wildcard).
• Os indivíduos diferem exatamente nas posições onde encontram-se os wildcards.
• Quando utiliza-se a representação binária, um esquema que tenha comprimento n com m
posições contendo o símbolo * terá m graus de liberdade e representará até 2m indivíduos
Esquemas
• Formalmente, um esquema é definido como sendo uma string s={s1,s2...sn} de
comprimento n, cujas posições pertencem ao conjunto Γ (alfabeto usado) + {*}.
• Cada posição da string dada por sk ≠ “*” é chamada de especificação, enquanto que um wildcard representa o fato de que
aquela posição pode assumir qualquer valor dentro do conjunto Γ.
Esquemas
O alfabeto de esquema descrito pelos símbolos {0,1 e *}, onde * significa que aquela posição pode ser qualquer elemento do alfabeto, não pertencendo ao esquema.
Esquemas
Esquema Indivíduos que representa
a* aa, ab, ..., az
a*b aab, abb, ..., azb
**xy aaxy, abxy, ..., azxy, baxy, bbxy, ..., bzxy, ..., zaxy, zbxy,..., zzxy
Considerando o alfabeto ocidental Γ={a,b,...,z} mais o símbolo * como o alfabeto de esquema.
Esquemas
• Se o alfabeto de esquema contém n símbolos, e o esquema contém m
posições com *, então o esquema representa (n-1)m indivíduos.
• O número de esquemas presentes em um determinado indivíduo é dependente do
comprimento da string e do número de opções presentes no alfabeto de
Esquemas
• Pode-se inferir que se a string tem
tamanho t e o alfabeto de esquemas
contém n símbolos, então o número de esquemas existente na população é
exatamente nt.
• Se o alfabeto de esquemas é {0,1,*} e a
string tem comprimento 2, temos 32=9 esquemas possíveis.
Esquemas
• Por que os esquemas são importantes? • Um Algoritmo Genético na verdade é um
manipulador de esquemas.
• Os esquemas contém as características positivas e negativas que podem levar a uma boa ou má avaliação e o AG nada mais faz do que tentar propagar estes bons esquemas por toda a população durante sua execução.
Esquemas
• Um esquema tem duas características importantes: sua ordem e seu tamanho. • A ordem de um esquema denotado por
O(H), corresponde ao número de posições neste esquema diferentes de *.
• O tamanho do esquema, representado por δ(H), se refere ao número de pontos de
corte entre a primeira e a última posições diferentes de * dentro do esquema.
Esquemas
Esquema Ordem Tamanho
*****1*** 1 0
1******0 2 7
**1**1*0 3 5
101010 6 5
Pode-se verificar que, quanto maior o tamanho de um esquema, maior o número de pontos de corte dentro dele, logo, é maior a probabilidade de que a aplicação do operador de crossover venha a quebrar este
esquema em pedaços, possivelmente rompendo suas boas características.
Teorema dos Esquemas
• Formalmente, pode-se dizer que, sendo n o número de indivíduos pertencentes a um certo esquema s, com média de avaliação igual a r e sendo x a média das avaliações de toda a a população,
• Então o número esperado de ocorrências de s na próxima geração é
Teorema dos Esquemas
• Seja o problema de achar o máximo de x2 entre 0 e 31. Usando-se uma representação binária (5 bits), em um dado instante pode-se ter a seguinte população Indivíduo Avaliação 01101 169 11000 576 01000 64 10011 361 Média 292.5Teorema dos Esquemas
• Seja o esquema 1****. Há dois indivíduos que o implementam e sua média de
avaliação é 468.5.
• Logo, espera-se que ele esteja presente em 468.5*2/292.5 3.2 indivíduos. Já o esquema 0**0* está presente em dois
indivíduos com média de avaliação 116.5. Logo, ele deve estar presente em
Teorema dos Esquemas
• Suponha que os seguintes esquemas estão reproduzindo e todos os pontos de corte para estesindivíduos são iguais e entre a 4a e 5a posição do indivíduo. Esquema Depois do corte 1**1|**** Íntegro 1***|**** Íntegro 1***|***0 Destruído 1**1|**1* Destruído
Teorema dos Esquemas
• Pode-se notar que quanto maior for o tamanho do esquema (δ(H)), maior a sua probabilidade de ser destruído. Um esquema de ordem 1 e tamanho zero nunca pode ser destruído, não importa onde o operador de crossover faça o corte.
• Logo, reformulando o teorema dos esquemas tem-se que quanto maior a avaliação do
esquema e menor o seu tamanho, mais cópias ele terá na próxima geração.