IntroducaoAlgoritmosGeneticos - DECOM-UFOP

Propaganda
Frederico Gadelha Guimarães
[email protected]
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Natural problem solvers:

(1) O cérebro humano – neurocomputação;
(2) O processo evolutivo – computação evolutiva;

“Living organisms are
consummate problem
solvers.” (John H. Holland)
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Antiguidade: Anaximandro de Mileto (610-546 AC);
◦ “Os animais nasceram do lodo marinho e os homens vieram dos peixes”

Século XVIII:

Pierre Maupertuis (1745);
◦ “as primeiras formas de vida apareceram por geração espontânea, a partir de combinações aleatórias
de matérias inertes, moléculas ou gérmens. A partir dessas primeiras formas de vida, uma série de
mutações fortuitas engendrou uma multiplicação sempre crescente de espécies.”

Erasmus Darwin (1796), “Zoonomia”, abordava a transformação das espécies;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)










1809: Jean-Baptiste Lamarck (Philosophie Zoologique);
1831: Charles Darwin parte em uma viagem de 5 anos no HMS Beagle;
1844: ensaio não publicado de Charles Darwin – formulação;
1858: Darwin recebe o manuscrito de Alfred Russel Wallace;
1859: Publicação de um artigo conjunto (Darwin e Wallace);
1859: publicação do livro A Origem das Espécies;
1865: Gregor Mendel (hereditariedade discreta, só redescoberto em 1900);
1930's: J.B.S. Haldane, Sewall Wright, and Ronald Fisher – genética populacional,
reconciliação da evolução com a genética mendeliana, moderna síntese evolutiva;
1944: Oswald Avery, identificação do DNA como agente da hereditariedade;
1953: James Watson e Francis Crick – descoberta da estrutura do DNA;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

O que Darwin realmente propôs?

Darwin apresentou uma teoria para explicar a existência de uma variedade
(diversidade) tão grande de seres vivos (organismos) na natureza.
Sua teoria apresenta a “seleção natural” como o principal mecanismo para a
manutenção das variações favoráveis à sobrevivência e reprodução de um
organismo em seu ambiente.
O acúmulo destas variações favoráveis através da seleção natural permite, ao
longo de um grande intervalo de tempo, o aparecimento de novos organismos tão
distintos de seus antecedentes a ponto de poderem ser caracterizados como uma
nova espécie;


Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Os organismos mais aptos a um determinado ambiente ou estilo de vida, tendem
a se reproduzir mais, propagando as características que conferem essas aptidões
ao indivíduo;

Componentes: Reprodução, Hereditariedade, Variação, Pressão Seletiva;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

O arcabouço da moderna teoria evolutiva descreve mecanismos naturais
responsáveis pela geração de complexidade, especificamente um mecanismo de
hereditariedade com variação e um mecanismo de seleção natural dos mais aptos;

O aumento da complexidade e diversidade dos seres vivos ao longo dos últimos
3,5 bilhões de anos é um fato inescapável – a teoria da evolução por seleção
natural é a teoria que explica esse fato, sendo suportada mutuamente por
numerosas evidências independentes;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

O papel que a teoria da evolução ocupa na biologia é indiscutível:

“Nothing in biology makes sense except in the light of evolution.” (Dobzhansky,
1977)

“There is no area of biology in which evolution has not served as an ordering
principle.” (Mayr, 1963)

“The theory of evolution by cumulative natural selection is the only theory we
know of that is in principle capable of explaining the existence of organized
complexity.” (Richard Dawkins)
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

“The most important scientific revolutions all include, as their only common
feature, the dethronement of human arrogance from one pedestal after another of
previous convictions about our centrality in the cosmos.” (Stephen Jay Gould)
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Moderna síntese darwiniana:

“An organism is an integrated collection of problem solving devices - adaptations that were shaped by natural selection over evolutionary time to promote, in some
specific way, the survival of the genes that directed their construction.” (Symons,
2005)
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

O genótipo e o fenótipo: evolução como um processo de otimização
seleção
Espaço de estados
fenotípico
p2
p1
epigenesis
p1’
P
Sobrevivência
genética
Espaço de estados
genotípico
reprodução
g1
g1’
g2
G
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Otimização de uma topografia dinâmica em um espaço de fenótipos (Wright,
1932)
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

A seleção é um processo que resulta na manutenção ou aumento da aptidão
(fitness) de uma população;

Aptidão é definida como a habilidade de sobreviver e de se reproduzir em um
ambiente específico;

Gene é uma unidade de evolução biológica;

Pleiotropia: um único gene pode afetar múltiplos traços fenotípicos;

Poligenia: um traço fenotípico é influenciado por vários genes;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)


Reprodução sexual
Meiose: divisão com redução e possível crossover
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

A reprodução sexual tem o efeito de gerar maior diversidade genotípica e
consequentemente diversidade fenotípica;

Por exemplo, em humanos, dois pais podem produzir até 223 zigotos distintos
somente considerando as combinações possíveis!

A reprodução sexual leva a seleção sexual;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

As origens da Computação evolutiva podem ser traçadas até a década de 1950
◦ D.B. Fogel, “Evolutionary Computation: the Fossil Record”, IEEE Press, 1998;






1950: Alan Turing: “obvious connection between machine learning and evolution”;
1954: Nils Barriceli, primeiros experimentos de evolução artificial, evolução de
estratégias em jogadores artificiais de poker;
1957: Alex Fraser, simulação de processos evolutivos;
1958: Friedberg, uma máquina de aprendizado de funções booleanas;
1960's: trabalhos voltados para biologia computacional, Hans Bremermann
(algoritmo evolutivo para PPL e sistemas lineares – Bremermann’s
disappointment); Ingo Rechenberg, Hans Paul Schwefel e Peter Bienert
(estratégias evolutivas);
1970's: John Holland – algoritmos genéticos;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)
515  345.025.251!!
(Rechenberg e Schwefel)
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)



Maior desenvolvimento a partir da década de 1990, com a popularização dos
algoritmos genéticos e da programação genética:
David Goldberg, “Genetic Algorithms in Search, Optimization, and Machine
Learning”, 1989;
John Koza, “Genetic Programming: on the Programming of Computers by Means of
Natural Selection”, 1992;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

A Computação evolutiva é hoje uma área de pesquisa estabelecida, com dezenas
de livros especializados;

Conferências especializadas:
◦
◦
◦
◦

IEEE CEC – Congress on Evolutionary Computation;
ACM GECCO – Genetic and Evolutionary Computation Conference;
EMO – International Conference on Evolutionary Multi-criterion Optimization;
PPSN – Parallel Problem Solving from Nature;
Periódicos dedicados:
◦
◦
◦
◦
◦
◦
IEEE Transactions on Evolutionary Computation;
MIT Evolutionary Computation;
Genetic Programming and Evolvable Machines (Springer);
Natural Computation;
International Journal of Natural Computing (2010);
International Journal of Applied Evolutionary Computation (2010);
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Famílias de algoritmos evolutivos:

(1) Algoritmos genéticos:
◦
◦
◦
◦

Codificação binária;
Ênfase na representação;
Seleção para reprodução proporcional à aptidão;
Cruzamento possui papel primário enquanto a mutação é secundária;
(2) Estratégias evolutivas:
◦
◦
◦
◦
Codificação real;
Otimização experimental;
Basicamente mutação e recombinação (opcional);
Adaptação de parâmetros;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Famílias de algoritmos evolutivos:

(3) Programação evolutiva:
◦
◦
◦
◦

Codificação em máquinas de estados;
Mutação possui papel primário;
Adaptação da mutação;
Problemas de predição;
(4) Programação genética:
◦ Evolução de programas para determinadas tarefas;
◦ Codificação de estruturas em árvores;
◦ Cruzamento (quando possível) e mutação;

Divisão meramente histórica!
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

O que é um algoritmo evolutivo?
t=1
Selecão para
reprodução
Inicializar população
Reprodução
Selecão para
sobrevivência
Não
FIM
Sim
Critério
de
parada?
t = t+1
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Questões de projeto em um algoritmo evolutivo:

Como representar soluções candidatas do problema na forma de indivíduos
(genótipo <> fenótipo)?
Como definir operadores que produzam novas soluções quando aplicadas sobre
indivíduos da população?
Como escolher quais soluções serão utilizadas por esses operadores?


Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Simulação do mimetismo em uma população de lagartixas
(F. Campelo, 2009)
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Representação: Cromossomos com codificação quaternária, com 8 bits cada:
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

30% dos indivíduos são mortos aleatoriamente (acidentes);
Após a geração 25: 20% dos indivíduos restantes que apresentam maior contraste
com o ambiente são comidos por predadores;

Os 50% sobreviventes se reproduzem;

Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)


Projeto de antenas para satélites e espaçonaves da NASA (projeto ST5)
http://ti.arc.nasa.gov/projects/esg/research/antenna.htm
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Projeto de circuitos eletrônicos analógicos e digitais
http://www.genetic-programming.com

Duas patentes submetidas em 2002

Genetic Programming Inc.
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Arte evolucionária
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Peter Bentley, The Revolution of Evolution in Design: from coffee tables to
Hospitals;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)


Braço estabilizador de satélites – engenharia reversa;
Otimização usando GA, 300 indivíduos, 3 semanas de computação em 11
workstation paralelas;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)





Problemas de otimização não linear;
Problemas de otimização combinatória;
Otimização de programas e estruturas;
Bioinformática;
Mineração de dados;
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)

Visão geral da computação evolutiva
Departamento de Computação (DECOM)
Universidade Federal de Ouro Preto (UFOP)
Download