Design Inteligente x Algoritmo Genético
Brincadeira de criança – balançar de pé, mais rápido, mais alto. Nesta versão virtual, no entanto, quem ganha: o boneco com movimentos programados pelo designer muito inteligente, o usuário “munimuni”, ou aqueles resultado de um algoritmo genético após 22 gerações?
O algoritmo genético simula a evolução natural. De início, os movimentos são aleatórios, desengonçados, em uma convulsão descoordenada. O percurso do balanço foi dividido em 32 partes, e para cada uma delas o boneco pode abaixar ou levantar (0 ou 1). Os melhores movimentos de cada geração são transmitidos para a próxima, com pequenas variações, e assim sucessivamente. É fascinante ver cada batalhão dentro de uma geração e a evolução em pleno curso.
O resultado você vê ao final do vídeo. O boneco verde faz os movimentos programados pelo designer inteligente, muito parecidos com aquele que todos nós fazemos. Já o boneco vermelho, com movimentos determinados pelo algoritmo genético, continua com trejeitos um tanto engraçados. Mas os resultados podem surpreender!
Confira muito mais no canal de 99munimuni no Youtube.
Discussão - 9 comentários
Imagine esses algoritmos em outros equipamentos. Embora, ele já deve ser aplicado em vários programas hoje em dia.
Outra ótima postagem, parabéns.
E são, Elton. Os algoritmos Genéticos estão por aí desde a déc de 70 e são usados em inúmeras aplicações, desde circuitos que se auto-reparam até programação de rotas de caminhões de entrega
Quer um exemplo, q acho espetacular? Os dois robôs Spirit e Oportunity, em Marte. Ambos usam AG para funções de auto-reparo (qd um componente de um determinado circuito eletrônico ou mesmo o circuito apresenta uma falha, o AG "evolui" um novo caminho elétrico entre vários componentes eletrônicos de modo a criar um novo circuito que atenda o mais próximo possível as funçoes do circuito defeituoso)
Resultado?
Uma missão q duraria 3 meses e já dura 3 anos
A programação genética é uma das coisas mais "mind-blowing" que já vi hehe...
Não sei se já conhece essa da Mona Lisa (Roger Alsin):
http://rogeralsing.com/2008/12/07/genetic-programming-evolution-of-mona-lisa/
Abs
raph
Acredito que se alguém repetisse os movimentos do boneco genético, iria cair de bunda no chão. Pois do jeito que ele sacode a tábua do balanço, seus pés não ficariam sobre ela de jeito nenhum.
E mais, se movimentando deste jeito, a energia consumida é muito maior e o boneco balançaria por menos tempo antes de se fatigar. Caso ficar balançando fosse essencial para a sobrevivência, este boneco para ria logo de balançar e morreria.
Talvez se deixassem o software progredir mais algumas centenas de gerações, chegaria a um ponto de equilibrio entre energia gasta e angulo de balanço, que talvez seja o nosso balanço.....
Reinaldo, a grande questão é a função de fitness do AG. Ela é quem escolhe a "melhor" (maior pontuação, nesse caso) solução (combinação de genes) ou não. Essa função de fitness serve para inserir seu viés na escolha dos indivíduos. Não vi no vídeo explicação sobre ela, mas creio que ela seja relativa do maior "swing" que o algoritmo fizer. Quanto maior o swing, maior a pontuação da função de fitness e "melhor" é o indivíduo. E o maior "swing" é decorrente das condições do experimento; é a física do jogo que dita isso, não a física do mundo real. Se a física do jogo é limitada e não há nada que indique "fadiga" nos personagens (uma simulação mais acurada nesse aspecto ou uma função de fitness que diga que personagens que se fadigam mais não devem ser escolhidos), esses aspectos não serão relevantes para a escolha do melhor indivíduo.
Então provavelmente não adiantaria mais gerações, já que o próprio AG não privilegia (aliás, tão pouco levam em consideração) essas características que você disse.
Enfim, o AG fez o que ele realmente deveria fazer, que é descobrir os mais adaptados ao meio atual (por isso é importante ressaltar que mais adaptados não são "melhores" 🙂 ), que nesse caso incluem uma simulação física imperfeita e não levam em consideração aspectos de fadiga.
Pois é, Chico. Esqueci de levar em conta a extrema simplificação necessária para nos apresentar apenas um aspecto da Evolução. Afinal, por mais sofisticado que o AG seja, a Natureza é esmagadoramente mais complexa.
Obrigado por apontar-me este detalhe.
Seria interessante ter uma simulação entre altura do balanço VS energia gasta.........
Realmente. O cara poderia fazer alguns experimentos diminuindo a pontuação caso o personagem faça essas loucuras de ficar levantando e abaixando toda hora. hehe
no momento estou lendo o livro a linguagem e Deus de Francis Collins lider do projeto genoma convertido ao portestantismo após algun tmepo de pesqisa achei muito atraente o evolucionismo teista com base no biologos e há suporte pra tal afirmação baseado na abiogenese interessante.
Dê um tempo ilimitado para a reprodução das gerações do boneco vermelho e eu garanto que ele conseguirá fazer um loop no balanço sem cair (façanha que muita criança já almejou)!