Apostila_8_IA_Alunos

Propaganda
Metahuerísticas:
Algoritmos Genéticos
Sistemas de Informação/Ciências da Computação – UNISUL
Aran Bey Tcholakian Morales, Dr. Eng.
(Apostila 8)
Meta-heurísticas
Classificação de métodos heurísticos: os métodos heurísticos podem
ser classificados como: heurísticas específicas (métodos construtivos e
métodos de refinamento) e em meta-heurísticas (busca tabu, algoritmos
genéticos, entre outros métodos).
2
Meta-heurísticas
Características das meta-heurísticas:
– meta-heurísticas são estratégias que “guiam” o processo de busca;
– exploram o espaço de busca para encontrar soluções próximas ao ótimo;
– são algoritmos aproximados e geralmente não determinístico;
– incorporaram mecanismos para evitar ficarem presas em um
ótimo local;
– não são específicas para um determinado problema;
– podem fazer uso de conhecimento específico do problema por
meio de heurísticas;
– meta-heurísticas mais avançadas utilizam a experiência obtida durante a
busca (através de uma memória) para guiar a busca.
3
Algoritmos Genéticos
4
Algoritmos Genéticos: Definição
Os Algoritmos Genéticos são procedimentos adaptativos, para a busca
de soluções em espaços complexos, baseados na evolução biológica, com
padrões de operações, baseados no principio darwinista de seleção
natural e sobrevivência dos indivíduos que melhor se adaptarem ao
ambiente.
Darwin (1809 - 1882):
Como se processa a Evolução ?
Pela Adaptação
Fatores determinantes do processo adaptativo
Variações Hereditárias e Seleção Natural
“Quanto melhor um indivíduo se adaptar ao seu meio ambiente,
maior será sua chance de sobreviver e gerar descendentes”
Algoritmos Genéticos: Definição
As variações hereditárias que ocorrem em uma população podem
ser vantajosas ou não para os indivíduos que as experimentam.
A Seleção Natural age eliminando os portadores de variações que
dificultam ou impedem a sobrevivência e mantendo aqueles cujas
variações permitem melhor explorar o ambiente.
É desta maneira que age a seleção natural, atuando sobre as
variações hereditárias, eliminando os indivíduos portadores de
variações que dificultam ou impedem a sobrevivência, e mantendo
aqueles indivíduos cujas variações permitem melhor explorar o
ambiente.
6
Algoritmos Genéticos: Definição
Aqueles indivíduos mais aptos aos requerimentos ambientais
sobrevivem e se reproduzem deixando descendentes, e os menos
aptos acabam desaparecendo.
Com o passar das gerações, os indivíduos melhores dominam a
espécie.
7
Características dos AG
As principais características dos A.G. são:
• Trabalham com uma população de indivíduos (cromossomos),
cada um representa uma solução do problema.
• Um cromossomo é uma estrutura de dados que representa uma
possível solução do problema.
• O conjunto de todas as configurações que o cromossomo pode
assumir forma o espaço de busca.
• O primeiro passo para resolver um problema com AG, é
representar os parâmetros do problema na forma de um cromossomo.
Características dos AG
• O conjunto de parâmetros representados por um cromossomo
particular é o genótipo. Estes parâmetros (genes) são colocados em
um indivíduo (cromossomos), de forma codificada.
• Depois deve-se definir uma forma de avaliar os cromossomos
(aptidão ou fitness ).
• De uma geração a outra, os indivíduos competem por recursos,
aqueles mas aptos aos requerimentos ambientais, serão os que
poderão, com maior probabilidade, deixar descendentes. Assim uma
nova população é gerada, produzida por seleção dos melhores
indivíduos desde a geração corrente.
Funcionamento dos A.G.
Começo
Inicialização;
Enquanto not ( Fim da Evolução )
t := t + 1; { próxima geração}
Operadores_Genéticos;
P(t) := P’(t); { próxima população }
Fim Enquanto
Fim
Funcionamento dos A.G.
Inicialização
t:= 0; { tempo zero }
P(t) ; { Geração da População Inicial }
Avaliar P(t); { Avaliação da População }
Fim Inicialização
Operadores_Genéticos
Seleção de Indivíduos P’ (Para gerar descendentes )
Recombinar P’ (Recombinação dos genes dos pais )
Avaliar P’(t)
Fim Operadores_Genéticos
Funcionamento dos A.G.
12
Funcionamento dos AG - Seleção
Seleção: inspirado no processo de seleção natural, o AG seleciona
os melhores cromossomos da população ( alta aptidão) para gerar
cromossomos filhos através de operadores genéticos.
Os cromossomos (os pais) são selecionados aleatoriamente,
utilizando um esquema de favorecer os melhores. Os pais são
selecionados com probabilidade proporcional a sua aptidão
( pi = fi /  ( fi ) )
Selecionados os pais, os cromossomas são recombinados, utilizando
operadores genéticos, como o cruzamento (crossover) e a mutação.
Funcionamento dos AG - Seleção
Probabilidade de Seleção
0.18; 0.16; 0.15; 0.13; 0.11; 0.09; 0.07; 0.06; 0.03; 0.02
Números Randômicos
0.81; 0.32; 0.96; 0.01; 0.65; 0.42.
18
Funcionamento dos AG - Cruzamento
Cruzamento: Dado 2 indivíduos, eles são “cortados” aleatoriamente
em uma posição física, produzindo 2 segmentos.
A escolha randômica utilizada para saber onde os cromossomos são
cortados, depende de uma probabilidade.
Se o cruzamento não é aplicado, os filhos, são idênticos aos pais.
Funcionamento dos AG - Cruzamento
Exemplo:
Ind1 0 1 1 1 0 0 1 1 0 1 0
Ind2 1 0 1 0 1 1 0 0 1 0 1
A posição de corte escolhida é 5
Des1 0 1 1 1 0 1 0 0 1 0 1
Des2 1 0 1 0 1 0 1 1 0 1 1
20
Funcionamento dos AG - Mutação
Mutação: É aplicado a cada indivíduo, em cada posição do gene (locus).
A aplicação deste operador depende também de uma probabilidade.
0 1 1
0 0 11 1 0 1 0
0 1 1
0 0 01 1 0 1 0
Operadores Secundários:
Nicho e Espécies
Diplodismo
Outros Operadores.
Diferenciação dos AG
As Principais Características dos A.G. que o fazem diferentes das
outras técnicas de busca, são:
• São independentes do domínio do problema;
• Trabalham com string de caracteres, geralmente em código binário,
para representar um conjunto de parâmetros;
• São relativamente imunes à alta dimensionalidade, mínimos locais e
a ruídos;
• São um método indutivo, e não dedutivo, porque procuram
soluções através da justaposição de hipóteses;
• Usam regras probabilísticas para guiar a busca, e não regras
deterministas.
Diferenciação dos AG
• Só necessitam informação concernente à qualidade da solução
produzida por cada conjunto de parâmetros (informação da função
objetivo). Não como os métodos de otimização, que requerem
informação derivada, ou completo conhecimento dos parâmetros e da
estrutura do problema.
• Consideram uma população de pontos, e não um só.
Aqui, encontra-se implícito o paralelismo dos algoritmos genéticos, já
que esses pontos vão evoluir juntos, compartir e disputar recursos, e
aqueles que melhor de adaptem aos requerimentos ambientais gerarão
descendentes.
Diferenciação dos AG
Exploitation significa exploração no sentido de tirar informações das
soluções encontradas e exploration diz respeito à exploração no
sentido de visitar pontos desconhecidos no espaço de busca na procura
de novas soluções.
Cruzamento e mutação, levam a exploration
Seleção dirige a busca na direção dos melhores pontos do espaço,
exploitation.
24
Conceitos Biológicos
População, grupo de indivíduos os quais podem interagir, para por
exemplo produzir descendentes. Indivíduo, membro de uma
população.
Cada indivíduo contém um cromossomo, o qual representa uma
possível solução do problema a ser resolvido, isto é um ponto do
espaço de busca.
Cromossomo, biologicamente, um cromossomo é uma cadeia de
DNA, encontrada nas células. Os cromossomos contém genes, cada
um codificado como uma subseção de uma cadeia de DNA.
Os genes determinam as características de um indivíduo.
25
Conceitos Biológicos
Gene, a unidade de herança fundamental, contendo um segmento de
DNA que codifica uma ou varias funções relativas e ocupa uma
posição fixa ( locus ) de um cromossomo.
O gene é a unidade de hereditariedade que é transmitida pelo
cromossomo e que controla as características do organismo.
Locus, posição física dos genes. Cada gene é capaz de ocupar só uma
posição particular no cromossomo.
Alelo, representa os valores que o gene pode assumir.
Genoma, é o conjunto completo de genes de um organismo.
26
Conceitos Biológicos
Crossover, é um operador genético, o qual forma um novo indivíduo.
Mutação, é um operador genético, o qual forma um novo indivíduo.
Evolução, é um processo de mudanças dado em uma população de
indivíduos.
Fitness ou aptidão , é um valor atribuído cada indivíduo, o qual
representa como esse indivíduo resolve as tarefas colocadas pelo
ambiente.
Uma função fitness é utilizada para mapear um indivíduo em um
valor.
27
Conceitos Biológicos
Geração, de uma geração a outra, os indivíduos competem por
recursos ambientais, aqueles mas aptos aos requerimentos
ambientais, serão os que poderão, com maior probabilidade, deixar
descendentes.
Genótipo, a composição genética contida no genoma. Na computação
evolutiva, representa a informação contida no cromossoma.
Fenótipo, características físicas de um indivíduo.
Na computação evolutiva, representa o objeto, estrutura ou organismo
construído a partir das informações do genótipo.
28
Download