• Nenhum resultado encontrado

Evolução via Selecção Natural (Darwin) - sobrevivem os mais aptos (fittest )

N/A
N/A
Protected

Academic year: 2021

Share "Evolução via Selecção Natural (Darwin) - sobrevivem os mais aptos (fittest )"

Copied!
42
0
0

Texto

(1)

Algoritmos Genéticos

• Evolução via Selecção Natural (Darwin)

- sobrevivem os mais aptos (fittest )

• Operadores Genéticos (Mendel)

- recombinação (crossover )

- mutação (mutation )

• A metáfora Biológica

Generalidades

• Algoritmos Genéticos

procura adaptativa global relativamente a

uma função objectivo

(2)

Algoritmos Genéticos Generalidades

DADOS:

• INSTÂNCIAS (I):conjunto dos indivíduos do domínio

• HIPÓTESES (H): conjunto dos indivíduos que formam uma população

• CONCEITO ALVO (C): indivíduo de qualidade máxima

• EXEMPLOS DE TREINO DO C. A. (E): população inicial

DETERMINAR:

• HIPÓTESES CONSISTENTES COM OS EXEMPLOS DE TREINO:

indivíduos de qualidade superior obtidos a partir da população inicial

(3)

Algoritmos Genéticos

• Funcionamento

(4)

Algoritmos Genéticos Generalidades

Algoritmo GA(fa,pr,pm,cp) % fa, função de adaptabilidade

% pr, probabilidade de recombinação % pm, probabilidade de mutação, pm % cp, critério de paragem

1. Definir aleatoriamente e avaliar a população

inicial, p0

2. Enquanto

não existir um indivíduo em pi que satisfaz cp

Selecciona

indivíduos de pi de acordo com fa

Recombina

os indivíduos de acordo com pr

Muta

os indivíduos de acordo com pm

• Define e avalia nova população p i+1

(5)

Algoritmos Genéticos Generalidades

• Características

- Rep. Experiência: cadeias binárias (geral) - Rep. Conhecimento: cadeias binárias (geral) - Tipo aprendizagem: indutivo

- Condições do ambiente:

. não supervisionado . não incremental

(6)

Algoritmos Genéticos Generalidades

• Conceitos:

- população

- indivíduo

- cromossoma

- gene

- alelo

(7)

Algoritmos Genéticos Generalidades • Conceitos - Recombinação (crossover) A B C D A D C B

• troca de material genético

- Mutação

A

(8)

Algoritmos Genéticos Generalidades

• Exemplo (simples) de optimização - filosofia da caixa-preta (black-box)

f(x) o o 1 1o 1 1 - calcular o máximo de f(x) = 100 - | x - 50 | com x ∈ [0, 127] - representação binária x = 124 10 = 111 1100 2

(9)

Algoritmos Genéticos Generalidades população = 4 indivíduos indivíduo = 1 cromossoma cromossoma = 7 genes gene = 2 alelos alelo = 1 ou 0 • Modelização • Parâmetros adaptabilidade = valor de f(x) mutação = um gene

(10)

Algoritmos Genéticos 111 1100 26 010 0111 89 000 1011 61 100 1001 77 010 0111010 0111 010 0111 000 1011 100 1001 100 1001 010 1001 010 1001 91 100 0111 100 0111 79 010 1011 93 000 0111 57 010 10010 100 0111 010 1011 010 1011 010 1011 93 010 1101 951 100 1011 75 010 0111 89 Reprodução adaptativa Reprodução adaptativa 0 mutações recombinação 1-4, 2-3 1 mutação recombinação 1-4, 2-3 Generalidades • Simulação

(11)

Algoritmos Genéticos Generalidades

• Aplicações - Optimização

• numérica

• problemas combinatórios (escalonamento)

- Programação Automática

• programas para tarefas específicas • autómatos celulares

- Aprendizagem Computacional

• classificação e previsão (meteorologia) • pesos de redes neuronais

• regras de sistemas de classificação/ produção • robótica

- Economia

• inovação

• mercados financeiros

(12)

Algoritmos Genéticos Generalidades

- Sistemas Sociais

• colónias de insectos

• cooperação e comunicação em sistemas multi-agentes

- Biologia

• Sistema Imunológico • Ecologia

• Genética das Populações • Evolução e Aprendizagem

(13)

Algoritmos Genéticos Representação • Binária (Holland) - razões históricas - razões teóricas - comprimento fixo - ordem fixa

(14)

Algoritmos Genéticos Representação

Exemplo: regras Se_Então

Linguagem: atributos/valores + operadores

céu ={limpo, nebulado, chuva }

0 1 1

céu = [nebulado ou chuva]

céu nebulado ou com chuva e vento forte 011 10

SE vento forte Então jogar-ténis

111 10 10

(15)

Algoritmos Genéticos Representação

• Números Reais

(16)

Algoritmos Genéticos Represenção • Árvores (Koza) - comprimento variável + x sin x √ + y 2 Λ

(17)

Algoritmos Genéticos Selecção

• proporcional à adaptabilidade (roleta)

prob(hi)

=

fa(hi)

fa( j)

j

=

1

p

- problema da convergência prematura

• por número de ordem (rank)

- reduz a convergência prematura - importância dos menos aptos

• elistista

(18)

Algoritmos Genéticos Selecção

• por torneio

escolhe dois indivíduos aleatóriamente. determina aleatóriamente qual dos dois passa para geração seguinte

- semelhante à selecção por número de ordem - mais eficiente computacionalmente

- paralelização

• estável (steady-state)

- retém a maior parte dos melhores

- os restantes são substituidos usando os ops. genéticos sobre os melhores

(19)

Algoritmos Genéticos Recombinação • um ponto 11101001000 00001010101 11101010101 00001001000 11101001000 00001010101 11101001000 00001010101 • dois pontos • uniforme 11001011000 00101000101 10001000100 01101011001

(20)

Algoritmos Genéticos Mutação

• mutação aleatória

- mudança de um gene num cromossoma

• mutação por troca

- dois genes do mesmo cromossoma trocam os respectivos valores

(21)

Algoritmos Genéticos Operadores Genéticos

• restrições ao acasalamento (pb. da diversidade)

- apenas os cromossomas de adaptabilidade semelhante acasalam (formação de espécies) - apenas os cromossomas de adaptabilidade diferente acasalam (proibição do incesto) - um novo cromossoma substitui o mais

(22)

Algoritmos Genéticos Resolução de Problemas

• Programação Genética (Koza)

- produzir automáticamente programas

• Representação : árvores

• Modelização:

- população = conjunto de programas - indivíduo = programa

- cromossoma = “conjunto” de genes - gene = termo

- alelos = árvores sintáticamente correctas a partir de objectos terminais e símbolos funcionais + x sin x √ + y 2 Λ

(23)

Algoritmos Genéticos Resolução de Problemas

• Parâmetros

- adaptabilidade:

• relação entre saida do programa e valor esperado para uma dada entrada

• número de casos “correctos”

- selecção: elitista

• 10% dos melhores transita • 90% restantes escolhidos

probabilisticamente função de fa

(24)

Algoritmos Genéticos Resolução de Problemas

- recombinação: um ponto de corte

+ sin x √ + y + sin x Λ + y x 2 + sin x √ + y x 2 Λ Λ + y x 2 + sin x x 2 Λ

(25)

Algoritmos Genéticos Resolução de Problemas • Empilhamento n e s r v u l a i

- dada uma configuração qualquer de blocos construir uma pilha formando a palavra

UNIVERSAL

• terminais

- CS (current stack): nome do bloco no topo da pilha (ou F se não existe)

- TB (top current block): nome do bloco alto a partir do qual a pilha está correcta - NN (next necessary): nome do bloco necessário acima de TB, para formar Universal (ou F caso não existe)

(26)

Algoritmos Genéticos Resolução de Problemas

• Funções

- (MS x) (move to Stack): desloca x da mesa para topo da pilha

- (MT x) (move to table): desloca x do topo da pilha para a mesa

- (EQ x y): T se x=y F caso contrário - (NOT x): T se x=F, F se x=T

(DU x y) (do until): executa x até y=T

• adaptabilidade: número de soluções correctas numa população de 166 casos

• população inicial: 300 programas • após 10 gerações:

(EQ (DU (MT CS) (NOT CS)) (DU (MS NN) (NOT NN)))

(27)

Algoritmos Genéticos Resolução de Problemas

• AGs e Redes Neuronais

- topologia da rede

- algoritmo de aprendizagem - pesos das ligações (treino)

(28)

Algoritmos Genéticos Resolução de Problemas

• Treino da Rede (aprendizagem dos pesos)

• Representação: números reais Rede:

Cromossoma: (0.3 -0.4 0.2 0.8 -0.3 -0.1 0.7 -0.3)

de cima para baixo da esquerda para a direita

1 2 3 4 5 6 0.3 -0.4 0.2 0.8 -0.3 -0.1 0.7 -0.3 • Modelização

(29)

Algoritmos Genéticos Resolução de Problemas

• Parâmetros

• adaptabilidade:

valor da soma dos erros quadráticos (na saida) relativo a todos os exemplos de treino (quanto menor melhor!)

• selecção:

• mutação:aleatória = soma valor real ([-1,+1])

1 2 3 4 5 6 0.3 -0.4 0.2 0.8 -0.3 -0.1 0.7 -0.3 1 2 3 4 5 6 0.3 -0.4 0.2 0.8 -0.3 -0.9 0.7 -0.3 (0.3 -0.4 0.2 0.8 -0.3 -0.1 0.7 -0.3) (0.3 -0.4 0.2 0.8 -0.3 -0.1 0.7 -0.3)

(30)

Algoritmos Genéticos Resolução de Problemas

• recombinação: uniforme, só um descendente!

1 2 3 4 5 6 0.3 -0.4 0.2 0.8 -0.3 -0.1 0.7 -0.3 1 2 3 4 5 6 0.7 -0.9 0.2 0.4 -0.3 -0.2 0.7 0.5 1 2 3 4 5 6 0.7 -0.9 0.3 0.4 0.8 -0.2 0.1 0.5 (0.3 -0.4 0.2 0.8 -0.3 -0.1 0.7 -0.3) (0.7 -0.9 0.3 0.4 0.8 -0.2 0.1 0.5) (0.7 -0.9 0.2 0.4 -0.3 -0.2 0.7 0.5)

são selecionados os pais para cada unidade

(31)

Algoritmos Genéticos

• Problema de Satisfação de Restrições (PSR) (X, D, C)

X: conjunto finito de variáveis {x1, ...,xn } D: conjunto indexado por X,

Di: discreto e finito

C: conjunto de restrições que limita o valor

das variáveis

Objectivo: uma instanciação das variáveis

x

i

com valores de

D

i respeitando as restrições de

C

Exemplo: coloração de um mapa

x

i

:

país

D

i : conjunto de cores possíveis

C: países adjacentes cores diferentes

Resolução de Problemas

(32)

Algoritmos Genéticos

• Escalonamento R: Recursos

T: Tarefas C: Restrições

• Objectivo: Atribuir recursos às tarefas respeitando as restrições

Modelização:

População: conjunto soluções potenciais Indivíduo: 1 solução = 1 cromossoma

Gene: associação tarefa/plano

Nº Genes = Nº Tarefas

Exemplo de Cromossomas

{(T1, R1:R2), (T2,R2), (T3,R1+R4),(T4,R3) }

{(T4,R1), (T1,R1+R4),(T2,R3+R4),(T3,R1+R4) } Cada recurso tem um tempo associado à tarefa

Resolução de Problemas

(33)

Algoritmos Genéticos Resolução de

Problemas

• População inicial

- permutação das tarefas

- escolha aleatória de um plano por tarefa - escolha aleatória da unidade do recurso

• Selecção: elitista

- o melhor indivíduo é sempre mantido

• Recombinação - por ordem - por posição • Mutação: troca - de tarefas - plano de recursos

(34)

Algoritmos Genéticos Resolução de Problemas • Escalonamento {(T1, R1(5):R2(4)), (T2,R2(2)), (T3,R1(4)+R4(4)),(T4,R3(2)) } • Função de adaptabilidade

(utilização dos recursos)

tempo −de −serviço(j, i) i =1 n ∑ j =1 m ∑ K * ( finalinício) *100% • Critério de paragem

- número máximo de gerações

(35)

Algoritmos Genéticos Evolução e Coevolução • Dilema do Prisioneiro (Axelrod)

C O C O 3,3 0,5 5,0 1,1 (A) (B)

• Qual a melhor estratégia?

• solução humana

- dois torneios ( tipo round-robin) - 16 + 63 estratégias (programas) - vencedor: TIT FOR TAT

oferecer cooperação e corresponder à última jogada do adversário!

CB O

B

(36)

Algoritmos Genéticos Evolução e Coevolução

• Dilema do Prisioneiro: solução Genética • Representação das estratégias

- palavras (strings) sobre alfabeto T={ C,O }

• memória = último jogo

C C C O O C O O C O C O Jogo anterior Memória Estratégia ? ?

(37)

Algoritmos Genéticos Evolução e Coevolução

• memória = 3 últimos jogos

- 4 3 = 64 possibilidades C C C C C C O O O O O O O O O O O O ? ? (1) (64) passado recente memória estratégia

• estratégia = palavra de 64 + 6 = 70 símbolos

- 6 símbolos adicionais para fabricar 3 jogos para primeira jogada

(38)

Algoritmos Genéticos Evolução e Coevolução

• adaptabilidade : valor médio dos resultados

dos jogos com 8 estratégias humanas representa

tivas (sem Tit For Tat!!) • selecção:

• recombinação: • mutação:

• modelização

- população = 20 estratégias (indivíduos) - indivíduo = 1 estratégia (cromossoma) - cromossoma = 70 genes

- gene = jogada - alelo = C ou O

(39)

Algoritmos Genéticos Evolução e Coevolução

• Resultados

- gerações = 50

- analisa 20 * 50 = 1000 indivíduos (contra 270)

- desenvolveu estratégias melhores que a melhor (TIT FOR TAT) humana

- adaptabilidade estática vs. dinâmica

• ambiente fixo (8 estratégias) • ambiente dinâmico

- adaptabilidade: jogar contra os indivíduos da mesma população! --> estratégias tipo TFT

- CoEvolução

(40)

Algoritmos Genéticos Questões

• Resolução de Problemas

- controlo

optimização de processos

encaminhamento tráfego (telecomunicações) escalonamento da produção

- aprendizagem computacional

classificação e previsão (meteorologia) redes neuronais

robótica (planeamento de trajectórias)

- economia

inovação

mercados financeiros

(41)

Algoritmos Genéticos Questões

• Biologia

- interacções ecológicas

coevolução hospedeiro/parasita

- genética

diploidia, duplicação/eliminação de genes, regulação genética

- evolução e aprendizagem

Lamarck, Baldwin, Darwin

- representações dinâmicas

tamanho, hierarquização

- adaptação dinâmica dos parâmetros

(42)

Algoritmos Genéticos Questões

• Ambientes de simulação

- ECHO - GENESIS - LamBaDa

Referências

Documentos relacionados

Dada a plausibilidade prima facie da Prioridade do Conhecimento Definicional, parece que não se poderia reconhecer instâncias de F- dade ou fatos essenciais acerca

Curvas de rarefação (Coleman) estimadas para amostragens de espécies de morcegos em três ambientes separadamente (A) e agrupados (B), no Parque Estadual da Ilha do Cardoso,

Como no processo travelling grate o leito é estático, a queima se dá do topo para o fundo e após esta fase há a pós queima, onde não há aporte de calor proveniente

Este trabalho é resultado de uma pesquisa quantitativa sobre a audiência realizada em 1999 envolvendo professores e alunos do Núcleo de Pesquisa de Comunicação da Universidade

A PRÓ-SAÚDE - Associação Beneficente de Assistência Social e Hospitalar, entidade sem fins lucrativos, denominada como Organização Social vem através deste, demonstrar o resultado

A Coordenação do Programa de Pós-Graduação em Controladoria e Contabilidade (PPGCC) e a Comissão de Pós-Graduação da FEA-RP/USP tornam pública a abertura de inscrições

Foi realizado um ensaio na região de Campo Verde - MT para avaliar a influência da seqüência de fungicidas no controle da ramulose, na variedade DP-4049, em 3 e 4 aplicações,

Débitos tributários e condominiais (propter rem) serão sub-rogados no valor da arrematação (art. 908, § 1º, CPC), os quais ficam a cargo dos interessados a pesquisar e