Evolução de Criaturas Virtuais

Slides:



Advertisements
Apresentações semelhantes
Contadores e Registradores
Advertisements

Árvores 2010/1 Teoria dos Grafos (INF 5037/INF2781)
Árvores CC/EC/Mestrado Teoria dos Grafos ‏ 1.
Algoritmos em Grafos.
Vitor Fiorotto Astolfi Orientador: Jorge Luiz e Silva
Unidade VII Algoritmos Genéticos
Experiments with Clustering as a Software Remodularization Method Nicolas Anquetil and Timothy C. Lethbridge University of Ottawa, Canada WCRE 1999:
Algoritmos Genéticos Alex F. V. Machado. Algoritmos Genéticos Quanto melhor um indivíduo se adaptar ao seu meio ambiente, maior será sua chance de sobreviver.
Geometria Computacional Galeria de Arte
COMUNICAÇÃO DE INFORMAÇÃO A CURTAS DISTÂNCIAS
Rational Unified Process
Auto-Organização entre Robôs Móveis Cooperativos
UFES CC/EC/Mestrado Teoria dos Grafos Árvores. UFES CC/EC/Mestrado Teoria dos Grafos Árvores Grafo Acíclico: não possui ciclos.
Introdução à Programação usando Processing Programação Gráfica 2D Animações Exercício Animações 14/10/09 Bruno C. de Paula 2º Semestre 2009 > PUCPR >
14/10/09 Uma animação possui: Início; Passo; Fim; 1.
Algoritmos Genéticos Problema das 8 Rainhas Algoritmo Genético
Unidade de Aprendizagem 6
Analisamos o movimento em cada uma das dimensões separadamente
Dispositivos lógicos programáveis (DLP)
1 Funções Trajectória de Projéctil DI/FCT/UNL 1º Semestre 2004/2005.
Ciclos, Vectores e Gráficos Simulação da Queda de Corpos II
2 de Junho de 2005Conclusão1 Pedro Barahona DI/FCT/UNL Junho 2005.
1 Conclusão DI/FCT/UNL 1º Semestre 2004/ Ciclos de Simulação A técnica usada no exemplo da queda livre pode ser utilizada para trajectórias a duas.
1 Controlo e Aprendizagem Aula Teórico-Prática nº 1 Metodologia experimental Planificação das aulas Temas dos trabalhos de grupo Avaliação.
Aula 7 : Sinalização Vertical (continuação)
ES723 - Dispositivos Eletromecânicos
1 Complexidade de Algoritmos Complexidade de pior caso Complexidade de melhor caso de uso bem menos freqüente em algumas situações específicas Complexidade.
Árvores.
Implementação de AG no Balanceamento Interativo de Linhas de Montagem
Estatística Básica Utilizando o Excel
Reconhecimento de Padrões Inteligência de Enxame
Inteligência Artificial
Sistemas de Tempo Real: Abordagens de Escalonamento
3.2. – Movimentos e Forças Unidade 3 – Planeta Terra Forças
Classes e objetos Modelagem
EXERCÍCIOS PARA GUARDA-REDES
Desenvolvimento de uma garra robótica para operações de bin-picking
Liane Tarouco CINTED/UFRGS
A Framework for Robots Development and Programming Based on Genetic Algorithms Palmeira P.F.M Silvino J.S. de Melo J.C.D DEE-UFMG DELT-UFMG.
MECÂNICA - DINÂMICA Cinemática de uma Partícula Cap. 12.
Resultantes de Sistemas de Forças Cap. 4
Cinemática Plana de um Corpo Rígido Cap. 16
Resultantes de Sistemas de Forças Cap. 4
Momentos de Inércia Cap. 10
Métodos Experimentais
Algoritmos Culturais.
Menu D.2 D.3 D.4 D.5 D.6 D.7 D.8 D.9 D.10 D.11 D.12 D.13 D.14 D.15 D.16 D.17 D.18 D.19 D.20 D.21 D.22.
Salas de Matemática.
Arquitetura de computadores
Movimentos sob a acção de uma força resultante constante
Sistemas Operacionais
Movimento de um projétil Componentes da velocidade inicial
Centro de Gravidade e Centróide Cap. 9
É u m e l e m e n t o f u n d a m e n t a l
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Trabalho e Potencial elétrico (Capítulo 3)
Marcílio C. P. de Souto DIMAp/UFRN
Anne Magály de PaulaCanuto DIMAp/UFRN
Redes Neuronais/Neurais/ Conexionistas Introdução
Algoritmos Evolutivos Algoritmos Genéticos Introdução
Cinemática Plana de um Corpo Rígido Cap. 16
Robôs Autómatos - Sistema de Mecos Autómatos Realizado por: Armando Cavaleiro Tiago Roque Universidade de Aveiro Sistemas de Tempo Real.
Introdução aos Protocolos de Roteamento Dinâmico
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
II. METODOLOGIA Ambas as antenas, PIFA modificada e BFMA, foram analisadas numericamente empregando as equações integrais dos potenciais em conjunto com.
Inteligência Artificial
Evolucionismo O pensamento transitou gradualmente para uma visão evolucionista, isto é, admite-se que as espécies se alteram de forma longa e gradual ao.
REDES COMPLEXAS Rafael Dahis Engenharia de Computação e Informação UFRJ Redes de Computadores II – 2009/2 Professores: Luis Henrique Otto.
Taís Sineiro Herig Laboratório de Genômica e Expressão / UNICAMP
Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 10 Algoritmos Genéticos Max Pereira.
Transcrição da apresentação:

Evolução de Criaturas Virtuais Um trabalho de Karl Sims (1994)

Estrutura da apresentação Introdução Criaturas Virtuais Estruturas Genéticas Estruturas Morfológicas Estruturas Controle Processo Evolutivo Simulações e Resultados Trabalho Futuro Conclusões Video 1/24

Objectivos Na área da animação digital, existe um trade-off entre complexidade e controle. Seria interessante poder construir de forma simples entidades complexas mas com comportamentos realistas. Aplicação de técnicas de optimização baseadas em algoritmos genéticos e a teoria de evolutiva de Darwin. (sobrevivência do mais apto) 2/24

Trabalho Realizado Uma linguagem para representação de genomas de criaturas virtuais. Um ambiente virtual 3D configurável, para testar as criaturas. Mecanismos para gerar e testar criaturas virtuais. Um conjunto de simulações para observar o percurso evolutivo destas criaturas em várias tarefas. 3/24

Criaturas Virtuais: genoma Genoma é composto por um grafo orientado. Genoma codifica a morfologia da criatura mas também as estruturas de controle desta. Possibilita a existência de ciclos que podem gerar estruturas com feedback. Genoma contem parâmetros de controle para a construção de criaturas como por exemplo: dimensões de uma componente, pontos de contacto entre estruturas... 4/24

Exemplo de uma representação de um genoma Neurónios Centralizados Neurónios Morfologia 5/24

Criaturas: Morfologia Criatura é composta por uma hierarquia de partes rígidas 3D conectadas. Potencialmente utilizando recursividade Cada ligação entre partes rigidas possui características próprias (também definidas no genoma), nomeadamente um tipo, e grau de liberdade sobre movimentos. Existe informação que controla a geração da morfologia das criaturas como número máximo de iterações em ciclos recursivos, dimensões, número de ligações, etc... 6/24

Exemplos de morfologias 7/24

Criaturas: Estruturas de controle Sensores (sensors) Associados a partes especificas do corpo, recolhem informação “física” relativa a essa porção do corpo. Joint angle sensors Contact sensors (existe uma em cada face de cada porção do corpo) Photosensors Poderiam existir outros como: accelerometers, sound detectors, smell detectors... 8/24

Criaturas: Estruturas de controle (continuação) Neuronios (neurons) Processam informação proveniente de sensores Enviam informação para actuadores Podem computar um conjunto de operações: sum, product, divide, sum-threshold, greater-than, sign-of, min, max, abs, if, interpolate, sin, cos, atan, log, expt, sigmoid, integrate, differentiate, smooth, memory, oscillate-wave, oscilate-saw. Actuadores (effectors) Recebe informação de um sensor ou neurónio Escala informação recebida com um certo peso e efectua uma força sobre uma junção entre porções do corpo. Poderiam existir outras variantes... 9/24

Combinaçao entre morfologia e controle Estrutura de controle é distribuída, associada a cada parte rígida do corpo da criatura. Existe a possibilidade de comunicação entre estruturas de controle posicionadas entre nós com pontos de contacto. Pode existir uma estrutura de controle central, independente de qualquer parte do corpo, que possibilita o aparecimento de controle coordenado de todo o corpo. 10/24

Exemplo de uma criatura virtual 11/24

Mecanismos de selecção População inicial gerada aleatoriamente Esta população inicial é testada para eliminação de indivíduos não viáveis. População é testada e atribuído um nível de fitness de acordo com o objectivo do teste. Uma percentagem de sobreviventes são usados para gerar elementos da próxima geração Através de mecanismos de mutação e reprodução Os sobreviventes integram a geração seguinte. São efectuados um conjunto elevados de iterações. 12/24

Mutações Parâmetros dos nós são sujeitos a potenciais mutações (alterações do seu valor). Adiciona-se um nó (desconexo) ao grafo. Os parâmetros das ligações são potencialmente alterados. Novas ligações são adicionadas aleatoriamente e outras são removidas. Não ao nível dos grafos das estruturas de controle. Elementos desconexos do grafo são eliminados. 13/24

Reprodução Existem três técnicas disponíveis: Assexuada, através de mutações. Sexuada através de Crossovers. Sexuada através de Grafting. 14/24

Implementação das simulações Foi usada uma arquitectura distribuída baseada em passagem de mensagens com 32 processadores. As populações era tipicamente de 300 indivíduos A taxa de sobrevivência era de 1/5 As probabilidades para o tipo de reprodução eram: 40% assexuada 30% sexuada através de crossovers 30% sexuada através de grafting Simulações decorriam tipicamente entre 50 a 100 gerações. 15/24

Simulações Individuais Nadar Simulação sem gravidade, e com efeitos de resistência devido a viscosidade. Fitness é calculada com base na velocidade de deslocamento, premiando deslocamentos não cíclicos e contínuos (não baseados num impulso inicial). Andar Basicamente movimentação em terra. Fitness é novamente baseada na velocidade, ignorando componente vertical. Saltar Fitness baseada na altura máxima ou média da parte mais baixa da criatura. Seguir Seguir uma fonte de luz, recorrendo a photosensors. Velocidade média da criatura a deslocar-se para a fonte de luz. 16/24

Resultados Saltar 17/24 Nadar

Resultados (continuação) Caminhos para seguir luz Andar 18/24

Simulações de competição Competição entre duas espécies (cruzamentos dentro da mesma espécie apenas) Tipicamente modelo de competição era: All vs. best entre espécies. Fitness depende da distancia final ao recurso disputado (cubo com fonte de luz), sendo premiada a maiores distancias do adversário ao recurso. Valores entre 0.0 e 2.0. 19/24

Simulações de competição (cont.) 20/24

Resultados 21/24

Resultados (cont.) 22/24

Trabalho Futuro Avaliar optimizações de comportamentos simples, como por exemplo maior distancia percorrida consumindo menos energia. Adaptar a linguagem genética de forma a gerar apenas criaturas que pudessem ser construídas sobre a forma de robôs. Dar um aspecto mais realista às criaturas acrescentando características como pelo, escamas, garras, etc. Aumento do numero de espécies em competição. Premiar comportamentos cooperativos em competições em grupos. Simulações em grandes mundos virtuais, super populados. 23/24

Conclusões Comportamentos e morfologias interessantes podem emergir de um processo de selecção natural como este partindo de criaturas simples. Emergiram padrões de evolução consistentes que possibilitaram a aquisição de estratégias, assim como, por vezes surgiram processos adaptativos. 24/24