• Nenhum resultado encontrado

Tópicos Especiais em Otimização

N/A
N/A
Protected

Academic year: 2021

Share "Tópicos Especiais em Otimização"

Copied!
54
0
0

Texto

(1)

Tópicos Especiais em Otimização

Ivo Chaves da Silva Junior

Juiz de Fora, 12 de Maio de 2016

Algoritmos Genéticos

(2)

Algoritmo Genético

John H. Holland

(Pesquisador da Universidade de Michigan)

Década de 60 - Propôs um processo de otimização, denominado:

(3)

Motivação

3

Na evolução das espécies, só os indivíduos mais aptos ao meio ambiente sobrevivem e a estes são dadas a oportunidade de se

reproduzir e deixar suas características em seus descendentes

TEORIA DA EVOLUÇÃO DAS ESPÉCIES

(4)

Técnicas de Busca

Baseadas em Cálculo Aleatórias-Guiadas Enumerativas Algoritmos Evolucionários Resfriamento Simulado

Algoritmos Genéticos

(5)

Algoritmos Evolucionários

5

DEFINIÇÃO:

Algoritmos que modelam computacionalmente os processos naturais da evolução de modo a construir uma ferramenta para resolução de problemas nas mais diversas áreas do conhecimento.

SIMULAÇÃO DA EVOLUÇÃO DAS ESPÉCIES 4 etapas:

Seleção dos indivíduos

Reprodução entre indivíduos Nova geração de indivíduos Nascimento dos indivíduos

(6)

n  Algoritmos genéticos (GA) são um ramo dos algoritmos evolucionários

n  São algoritmos de busca baseados nos mecanismos de seleção

natural e genética.

n  Os algoritmos genéticos são técnicas heurísticas de otimização global

Heurística significa “encontrar” ou “descobrir”, porém sem garantir a

otimalidade da solução encontrada.

(7)

7

Coisas bizarras da computação evolutiva :

Pais morrerem imediatamente após o nascimento dos filhos Mutações genéticas frequentes

Indivíduos eternos

Entre outras...

Algoritmos evolucionários são

INSPIRADOS

na natureza e não

uma cópia fiel da mesma

Não há distinção de machos e fêmeas

Conceitos Básicos

Algoritmos Genéticos

(8)

"   Indivíduo Uma solução

"   População Conjunto de Soluções

"   Geração Passo do Processo de Solução

"   Cromossomos Sequências de Caracteres

"   Gene Cada um dos Caracteres

"   Genótipo Codificação da Solução

"   Fenótipo Decodificação da Solução

(9)

Maximização Métodos clássicos 9

Conceitos Básicos

Algoritmos Genéticos

Máximo Global Máximo Local Ponto Inicial Ponto Inicial

§  GAs trabalham com várias soluções ao mesmo tempo, logo, não ficam presos a ótimos locais devido a condição inicial . Situação que ocorre com métodos de otimização clássica (baseados em derivadas).

(10)

CARACTERÍSTICAS DOS AGs

n  São técnicas probabilísticas, e não técnicas determinísticas.

n  Iniciando um AG com a mesma população inicial e o mesmo conjunto

de parâmetros podemos encontrar soluções diferentes a cada vez que executamos o programa.

n  GAs são em geral programas extremamente simples que necessitam

somente de:

n  Informações relativas à adequabilidade do ponto como solução do

problema em questão

n  Não necessitam de derivadas ou qualquer outra informação

adicional.

n  Extremamente aplicáveis a problemas do mundo real que em geral

(11)

11

Conceitos Básicos

Algoritmos Genéticos

n  Trabalham com uma grande população de soluções, sendo uma

heurística de busca.

n  Diferenciam-se dos esquemas enumerativos pelo fato de não

procurar em todos os pontos possíveis, mas sim em um

subconjunto destes pontos

n  Diferenciam-se de esquemas aleatórios por:

- Serem uma busca que utiliza informação pertinente ao problema

-Não trabalham com caminhadas aleatórias (random walks) pelo espaço de soluções.

(12)

POR QUE USAR ALGORITMOS GENÉTICOS??

n  Otimização Global

n  Não é afetada por descontinuidades

n  Capaz de lidar com funções discretas e contínuas

n  Boa técnica para atacar problemas com espaços de busca

(13)

13

Algoritmos Genéticos

REPRESENTAÇÃO DE UM INDIVÍDUO - MODELAGEM

n  A representação cromossomial é fundamental para o algoritmo genético.

n  Ela consiste em uma maneira de traduzir a informação do problema em

uma maneira viável de ser tratada pelo computador.

n  Quanto mais adequada ao problema, maior a qualidade dos resultados

(14)
(15)

15

Algoritmos Genéticos

Variável X2

Variável X1

8

35

0 0 1 0 0 0

1 0 0 0 1 1

Codificação

(Genótipo)

Decodificação

(Fenótipo)

Indivíduo

Cromossomo

Gene

02 Cromossomos

12 Genes

EXEMPLO DE UM INDIVÍDUO

(16)

Como os AGs têm o mesmo comportamento que a evolução das espécies:

COMPETIÇÃO ENTRE OS INDIVÍDUOS É NATURAL

(17)

17

COMPETIÇÃO!!!???

QUAL É O CRITÉRIO A SER AVALIADO??

(18)

n  A função aptidão é a maneira utilizada pelos AGs para determinar a

qualidade de um indivíduo como solução do problema em questão. n  É uma nota dada ao indivíduo na resolução do problema.

n  O valor da função de aptidão é usada para a escolha dos indivíduos pelo

módulo de seleção de pais, sendo a forma de diferenciar entre as boas e as más soluções para um problema.

n  Dada a generalidade dos AGs, a função de avaliação, em muitos casos, é a

única ligação verdadeira do algoritmo com o problema real.

(19)

19

Algoritmos Genéticos

AVALIAÇÃO DO INDIVÍDUO – FUNÇÃO APTIDÃO

f

apt

=

1

FOB + C

min

f

apt

= FOB

"   Problema de Maximização:

(20)

OBSERVAÇÕES IMPORTANTES SOBRE – FUNÇÃO APTIDÃO

n  NENHUM INDIVÍDUO DEVE TER AVALIAÇÃO NULA;

n  A FUNÇÃO APTIDÃO DEVE EMBUTIR TODAS AS RESTRIÇÕES E

CARACTERÍSTICAS DO PROBLEMA EM ANÁLISE;

n  A FUNÇÃO APTIDÃO DEVE SER CAPAZ DE DIFERENCIAR TODAS AS

(21)

21

Algoritmos Genéticos

SELEÇÃO DOS MELHORES INDIVÍDUOS

n  O método de seleção de pais deve simular o mecanismo de seleção

natural:

n  Pais mais capazes geram mais filhos;

n  Pais menos aptos também podem gerar descendentes.

n  Temos que privilegiar os indivíduos com função de avaliação alta,

sem desprezar completamente aqueles indivíduos com função de avaliação extremamente baixa;

n  Até indivíduos com péssima avaliação podem ter características genéticas

(22)

SELEÇÃO DOS MELHORES INDIVÍDUOS

n  Método simples e muito adotado: MÉTODO DA ROLETA.

"  

Exemplo Roleta

Indivíduo 1 2 3 Função Aptidão 100 130 50 Total 280 Pedaço Roleta 35,70% 46,40% 17,90% 100%

(23)

23

Algoritmos Genéticos

CRUZAMENTO E MUTAÇÃO

n  O operador de cruzamento mais simples é chamado de operador de

CRUZAMENTO DE UM PONTO.

Pontos de Corte: 1 2 3 4

•  Depois de sorteado o ponto de corte, nós separamos os pais em duas partes: uma à esquerda do ponto de corte e outra à direita.

(24)

24

Pai 1

Pai 2 Selecionamos um ponto de corte

Pai 1 Pai 2 cruzamento Filho 1 Filho 2 mutação Filho 1 Filho 2 Gen alterado CRUZAMENTO E MUTAÇÃO

(25)

25

Algoritmos Genéticos

n  Por simplicidade, população não pode crescer. População de tamanho constante;

n  Pais são, obrigatoriamente, substituídos conforme os filhos vão nascendo;

n  A cada cruzamento estaremos criando dois filhos;

n  Estes vão sendo armazenados até que o número de filhos gerado seja igual ao

tamanho da população original;

n  A probabilidade de ocorrência de mutação deve ser baixa. Se for alta, o AG será

muito parecido com uma técnica chamada “RANDOM WALK”.

(26)

TAMANHO DA POPULAÇÃO

GRANDE Aumento do tempo computacional

Pequena Convergência prematura / rápida

(27)

PROBABILIDADE DE SELEÇÃO/ REPRODUÇÃO ALTA BAIXA

Algoritmos Genéticos

Perda de qualidade genética

Pouca diversidade genética

ANÁLISE DOS PARÂMETROS GENÉTICOS

(28)

PROBABILIDADE DE MUTAÇÃO

ALTA

BAIXA

Processo muito aleatório

Estagnação do processo (restrito a ótimos locais)

(29)

FIM DO PROCESSO GENÉTICO

Algoritmos Genéticos

NÚMERO MÁXIMO DE GERAÇÕES TEMPO DE EXECUÇÃO

ANÁLISE DO VALOR MÉDIO DA POPULAÇÃO

ESTAGNAÇÃO DE UMA SOLUÇÃO POR UM DETERMINDO PERÍODO

ANÁLISE DOS PARÂMETROS GENÉTICOS

(30)

Intervalos Típicos dos Parâmetros Genéticos

Tamanho

População

Probabilidade de

Cruzamento

Probabilidade de

Mutação

Tp Pc Pm 30 100 90% 60% 1% 0,1%

Tamanho

População

(31)

31

Algoritmos Genéticos

Fluxograma

Seleção: escolhemos os indivíduos que participarão

do processo reprodutório

Avaliação :

Aplicamos a função de avaliação a cada um dos indivíduos desta geração

Operadores genéticos: Aplicamos os operadores de recombinação e mutação

aos indivíduos escolhidos para “pais”

Satisfizemos o critério de parada ? Não Fim Sim Módulo de população :

definimos a nova população a partir da geração existente e dos filhos

gerados

Filhos gerados sobrevivem e são copiados sobre seus pais

Toda a antiga geração de pais

Filho 1 : Filho 2 :

(32)
(33)

Algoritmos Genéticos

(34)

Exemplo Ilustrativo – Mecanismo Genético

(35)

Algoritmos Genéticos

Geração 1 Máximo Global Indivíduo 35

(36)

Geração 10

Indivíduo de baixa aptidão

(37)

Algoritmos Genéticos

Geração 50

98% dos indivíduos no ponto de máximo global. Geração de excelente qualidade

(38)

Gráfico de Convergência – Média da População

Nº de Gerações FOB

Melhor solução

(39)

Ivo Chaves da Silva Junior

Algoritmos Genéticos

Outros Operadores Genéticos

REPRODUÇÃO/CROSSOVER

(40)

Genitor -1 Genitor -2 Descendente -1 Descendente - 2 (sorteio)

(41)

Ivo Chaves da Silva Junior

Algoritmos Genéticos

Outros Operadores Genéticos

O Cruzamento é realizado gene a gene.

(42)

0

1

(43)

Ivo Chaves da Silva Junior

Algoritmos Genéticos

Outros Operadores Genéticos

POPULAÇÃO

(44)

0 10 20 30 40 50 60 0 2000 4000 6000 8000 10000 12000 Generation Ma x imu m/ A v e ra g e F it n e s s 0 10 20 30 40 50 60 0 2000 4000 6000 8000 10000 12000 Generation Ma x imu m/ A v e ra g e F it n e s s

Sem Elitismo

Com Elitismo

n  O melhor indivíduo da geração anterior deve estar presente na próxima geração;

(45)

Ivo Chaves da Silva Junior

Algoritmos Genéticos

Outros Operadores Genéticos

SELEÇÃO

(46)

•  Selecionamos uma série de “K” indivíduos da população;

•  Fazemos com que eles entrem em competição direta pelo direito de ser pai, usando como arma a sua avaliação;

(47)

Ivo Chaves da Silva Junior

Algoritmos Genéticos

Observações

MUTAÇÃO

n  Importante para a diversidade genética;

n  Heurística exploratória;

n  Estratégias de taxas de mutação que variem ao longo do processo;

n  Estratégias de mutação dirigidas (situação de estagnação);

(48)

REPRODUÇÃO/CROSSOVER

n  Importante para evitar a busca aleatória da solução (randow walk);

n  Codificação binária à crossover uniforme é o indicado (maior combinação);

(49)

Ivo Chaves da Silva Junior

Algoritmos Genéticos

Observações

PARÂMETROS GENÉTICOS

n  Estimar os valores dos parâmetros genéticos (desafio);

n  Estratégia Determinística (parâmetros genéticos fixos)

n  Estratégia Adapativa (parâmetros genéticos ajustáveis)

(50)
(51)

Ivo Chaves da Silva Junior

Algoritmos Genéticos

Aplicação

(52)
(53)

Ivo Chaves da Silva Junior

Algoritmos Genéticos

Aplicação

(54)

Referências

Documentos relacionados

n.º 20.236, para responder como Encarregado (FG-S3), junto à Secretaria Municipal de Comunicação e Relações Sociais.. Registre-se, publique-se e

Nos termos do disposto nos números 1, 3 e 4 do artigo 30.º e artigos 33.º e seguintes da Lei Geral do Trabalho em Funções Públicas (LTFP), aprovada em anexo à Lei n.º 35/2014, de

VIDIT ASAR IN AMENNTI SVB FIGVRÂ CCXXXI LIBER CARCERORVM τών QLIPHOTH CVM SVIS GENIIS.. ADDVNTVR SIGILLA ET

O método propõe que um modelo de base eletrônica de jurisprudência deve ter as seguintes característi- cas fundamentais: (i) banco de dados composto pela totalidade dos

Pois o aluno surdo ao entrar numa escola regular, se depara com muitas dificuldades que não favorece a aquisição da sua Língua, a maioria das vezes chega sem

O objetivo da pesquisa, realizada em julho, foi avaliar se as oito montadoras participantes do Programa Brasileiro de Etiquetagem Veicular (PBEV) em 2012 —

Portanto, a partir dos resultados apresentados nesta pesquisa conclui-se que a metodologia para sintonização de meta- heurísticas por meio do método HORA é uma

Na literatura de meta-heurísticas é possível encontrar diversos métodos de sintonização, dentre os quais se destacam CALIBRA [Adeson-Díaz e Laguna, 2006], que utiliza DOE