68
A Framework for Robot’s A Framework for Robot’s Development and Programming Development and Programming Based on Genetic Algorithms Based on Genetic Algorithms Palmeira Palmeira P.F.M P.F.M Silvino Silvino J.S. J.S. de Melo de Melo DEE-UFMG DELT-UFMG DELT-UFMG

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

Embed Size (px)

Citation preview

Page 1: 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

A Framework for Robot’s A Framework for Robot’s Development and ProgrammingDevelopment and Programming

Based on Genetic AlgorithmsBased on Genetic Algorithms

Palmeira P.F.M Palmeira P.F.M

Silvino J.S. Silvino J.S.

de Melo J.C.D de Melo J.C.D

DEE-UFMGDELT-UFMGDELT-UFMG

Page 2: 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

TópicosTópicos

IntroduçãoIntrodução PropostaProposta Implementação Implementação Validação Validação ConclusõesConclusões Modelo de DesenvolvimentoModelo de Desenvolvimento Propostas de ContinuaçãoPropostas de Continuação

Page 3: 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

ObjetivoObjetivo

Aplicação de técnicas Inteligência Aplicação de técnicas Inteligência Artificial no desenvolvimento de Artificial no desenvolvimento de Robôs autônomos em ambiente Robôs autônomos em ambiente não controlado.não controlado.

Page 4: 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

Ambiente ControladoAmbiente Controlado

Posições e deslocamentos conhecidos Posições e deslocamentos conhecidos

Trajetórias predeterminadas.Trajetórias predeterminadas.

Cinemática Inversa.Cinemática Inversa.

Page 5: 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

Geração de TrajetóriaGeração de Trajetória

(Ambiente Controlado)

Page 6: 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

Ambiente não ControladoAmbiente não Controlado

Posições e deslocamentos são Posições e deslocamentos são desconhecidos.desconhecidos.

Trajetórias não podem ser Trajetórias não podem ser predeterminadas. predeterminadas.

Dificuldade de se utilizar técnicas Dificuldade de se utilizar técnicas convencionais de programação e controle. convencionais de programação e controle.

Page 7: 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

TrajetóriaTrajetória

Page 8: 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

Problema do ControleProblema do Controle

Técnicas mais sofisticadas de controle.Técnicas mais sofisticadas de controle.

Tem sido propostas técnicas Tem sido propostas técnicas alternativas ao controle convencional alternativas ao controle convencional tais como Lógica Nebulosa e Redes tais como Lógica Nebulosa e Redes Neurais. Neurais.

O uso destas técnicas requer a O uso destas técnicas requer a aquisição de conhecimento humano.aquisição de conhecimento humano.

Page 9: 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

Propostas Atuais Propostas Atuais

Uso de lógica Uso de lógica fuzzyfuzzy com A.G.s. com A.G.s.

Uso de redes neurais com A.G.s. Uso de redes neurais com A.G.s.

Page 10: 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

TópicosTópicos

IntroduçãoIntrodução PropostaProposta Implementação Implementação Validação Validação ConclusõesConclusões Modelo de DesenvolvimentoModelo de Desenvolvimento Propostas de ContinuaçãoPropostas de Continuação

Page 11: 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

Proposta Proposta

Desenvolvimento de um ambiente Desenvolvimento de um ambiente interativo simulação dinâmica de robôs interativo simulação dinâmica de robôs autônomos.autônomos.

Uso de A.G para evoluir população de Uso de A.G para evoluir população de elementos de controle, baseados no elementos de controle, baseados no conhecimento humano.conhecimento humano.

Simulador será utilizado para a aquisição Simulador será utilizado para a aquisição do conhecimento humano e avaliação do conhecimento humano e avaliação

Rede Neural para armazenamento do Rede Neural para armazenamento do conhecimentoconhecimento

Page 12: 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

Algoritmo Genético IAlgoritmo Genético I

Algoritmos genéticos são utilizados Algoritmos genéticos são utilizados para evoluir uma população de para evoluir uma população de elementos de controle.elementos de controle.

Cada geração e formada pelos Cada geração e formada pelos elementos selecionados da geração elementos selecionados da geração anterior acrescida de novos, criados anterior acrescida de novos, criados por operadores genéticos.por operadores genéticos.

Simplicidade RobustezSimplicidade Robustez

Page 13: 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

Algoritmo Genético IIAlgoritmo Genético II

A mutação altera as características A mutação altera as características do elemento. do elemento.

O cruzamento age combinado dois O cruzamento age combinado dois elementos para produzir um elementos para produzir um terceiro.terceiro.

A evolução se da pela seleção dos A evolução se da pela seleção dos melhores indivíduos em cada melhores indivíduos em cada geração( Função de fitness). geração( Função de fitness).

Page 14: 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

Operações GenéticasOperações Genéticas

Page 15: 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

TópicosTópicos

IntroduçãoIntrodução PropostaProposta ImplementaçãoImplementação Validação Validação ConclusõesConclusões Modelo de DesenvolvimentoModelo de Desenvolvimento Propostas de ContinuaçãoPropostas de Continuação

Page 16: 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

Metodologias

Aquisição de conhecimentoAquisição de conhecimento

SimulaçãoSimulação• Simulação em tempo RealSimulação em tempo Real

ProgramaçãoProgramação• Abstração de dadosAbstração de dados

Otimização Otimização • Algoritmos genéticosAlgoritmos genéticos

Page 17: 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

Simulador 2DSimulador 2D

Ambiente gráfico interativo 2D.Ambiente gráfico interativo 2D.

Hierarquia de classes.Hierarquia de classes.

Dinâmica dos objetos.Dinâmica dos objetos.

Programação orientada por Programação orientada por objetos.objetos.

Page 18: 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

SimuladorSimulador

Controlador

Robô 1 Tarefa

Robô 2 Tarefa

Robô N Tarefa

conrole()Inercia()Move()

Page 19: 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

Robôs VirtuaisRobôs Virtuais

ControleControle– InteligênciaInteligência

Inércia Inércia – DinâmicaDinâmica

MoveMove– VisualizaçãoVisualização

Personagem

massa Inércia....

controle()Inércia()move()

Page 20: 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

RobôsRobôs

Personagem

Trainer PlayerTarget

abstrato

Objetos representados por uma hierarquia de classes.

Page 21: 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

DinâmicaDinâmica

( X,Y)

V

Eixo

Rodas

Função Inércia()Função Inércia()

IntegraçãoIntegração

ConstantesConstantes• Momento de Momento de

inércia.inércia.• Constante de atrito.Constante de atrito.• ..........

Page 22: 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

Dinâmica IDinâmica I

Page 23: 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

Modos do SimuladorModos do Simulador

Modo Autônomo:Modo Autônomo:• Controle: com o Player.Controle: com o Player.

Modo SupervisionadoModo Supervisionado• Interativo: com TrainerInterativo: com Trainer

Modo Treino Modo Treino • Algoritmo Genético evolui população de Algoritmo Genético evolui população de

Rede Neurais.Rede Neurais.

Page 24: 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

Ponto de PartidaPonto de Partida

TCad TCad • Ambiente para computação gráficaAmbiente para computação gráfica• Orientado por ObjetosOrientado por Objetos• Processador simbólicoProcessador simbólico

Framework sobre Algoritmos Framework sobre Algoritmos GenéticosGenéticos

Page 25: 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

TCadTCad

Processador de Listas

Processador de Eventos

Objetoscompostos

PLUG- IN

Lisp

GUI

Page 26: 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

TCadManTCadMan

Processador de listas

Processador de Eventos GUI

Page 27: 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

SimuladorSimulador

MasterTimer

controle de tarefasmodo autônomo

Controlador de Objetos gráficos

Page 28: 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

Implementação do Implementação do ControladorControlador

A classe Master A classe Master herdeira da herdeira da classe TCadMan.classe TCadMan.

Uma instância da Uma instância da classe Master é o classe Master é o controlador controlador mestre que mestre que controla e controla e coordena as coordena as tarefas filhas.tarefas filhas.

MasterTimer

controle de tarefasmodo autônomo

TCadManSuporte de Objetos gráficos

Page 29: 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

Objetos gráficosObjetos gráficos

Point

Linha

Arco

Círculo Referencia

List

Poligonal

Elipse

Page 30: 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

Implementação dos RobôsImplementação dos Robôs

Classe abstrata Personagem descendente da Classe abstrata Personagem descendente da classe List.classe List.

Personagem

Trainer PlayerTarget

List

Page 31: 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

Framework para GNAFramework para GNA

GNA

Algoritmo genético

Lista de IndivíduosEvolui

Indivíduo

Operadores genéticoscruzamento

mutação

Classe abstrata IndivíduoClasse GNA

Page 32: 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

Implementação do GNAImplementação do GNA

Evolui uma população de instancias de classes Evolui uma população de instancias de classes descendente de indivíduo.descendente de indivíduo.

MasterGNA

Mastertimer

controle de tarefasmodo autônomo

GNAalgoritmo genético

modo treino

Page 33: 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

Vista do SimuladorVista do Simulador

A classe TCadMan controla ambiente gráfico.A classe TCadMan controla ambiente gráfico.

Page 34: 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

Alteração de um RobôAlteração de um Robô

Page 35: 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

Console do TCadConsole do TCad

Page 36: 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

TópicosTópicos

IntroduçãoIntrodução PropostaProposta ImplementaçãoImplementação ValidaçãoValidação ConclusõesConclusões Modelo de DesenvolvimentoModelo de Desenvolvimento Propostas de ContinuaçãoPropostas de Continuação

Page 37: 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

Framework concluídoFramework concluído

Page 38: 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

Proposta Proposta

Rede Neural para armazenamento do Rede Neural para armazenamento do conhecimentoconhecimento

Simplicidade Simplicidade

RobustezRobustez

Page 39: 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

AplicaçãoAplicação

Rede Neural

Aproximador universal de funções

14 Entradas

2 Saídas

Page 40: 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

Uso de treinamento supervisionado, tendo Uso de treinamento supervisionado, tendo como referencia uma trajetória gravada, por como referencia uma trajetória gravada, por um treinador Humanoum treinador Humano..

Redes Neural 2 camadas 14x2Redes Neural 2 camadas 14x2• 14 entradas:14 entradas:

– x ,y , x ,y , em t , t-1, t-2 ... em t , t-1, t-2 ...

• 2 saídas: 2 saídas: – impulso linear Iimpulso linear ILL e impulso angular I e impulso angular Iaa..

A diferença entre as saídas gravadas e as A diferença entre as saídas gravadas e as calculadas pela rede é utilizada para se obter calculadas pela rede é utilizada para se obter o erro das RNAso erro das RNAs

Redes Neurais

Page 41: 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

Implementação das RNAImplementação das RNA

A classe Abstrata A classe Abstrata Indivíduo descreve o Indivíduo descreve o indivíduo da indivíduo da população.população.

A classe RedeNeural A classe RedeNeural implementa uma implementa uma RNA.RNA.

IndivíduoOperadoresgenéticos

Neural Playercontrole

RedeNeuralOperadoresgenéticos

PlayerInérciaMove

Page 42: 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

TópicosTópicos

IntroduçãoIntrodução PropostaProposta Implementação Implementação ValidaçãoValidação ConclusõesConclusões Propostas de ContinuaçãoPropostas de Continuação

Page 43: 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

Conclusões e PropostasConclusões e Propostas

Resultados Preliminares.Resultados Preliminares.• Comparação das Trajetórias.Comparação das Trajetórias.

Resultados Numéricos.Resultados Numéricos.• Influencia dos parâmetros genéticos.Influencia dos parâmetros genéticos.

Propostas para trabalhos futuros.Propostas para trabalhos futuros.

Page 44: 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

Trajetória ITrajetória I

Page 45: 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

Trajetória II Trajetória II

Page 46: 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

Trajetória ITrajetória I

Page 47: 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

Trajetória II Trajetória II

Page 48: 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

Resultados NuméricosResultados Numéricos

Influencia de mutação aleatória e Influencia de mutação aleatória e cruzamento.cruzamento.

Influencia da taxa de sobrevivência.Influencia da taxa de sobrevivência.

Influencia do tamanho da população.Influencia do tamanho da população.

Influencia do uso de backpropagation.Influencia do uso de backpropagation.

Page 49: 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

Taxa de Sobrevivência ITaxa de Sobrevivência I

Erro no Impulso Angular

0.001

0.01

0.1

1

10

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

número de gerações X 50

err

o a

cu

mu

lad

o

sobrefat=10%

sobrefat=30%

sobrefat=50%

sobrefat=80%

Page 50: 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

Taxa de Sobrevivência IITaxa de Sobrevivência II

Erro no Impulso Linear

0.001

0.01

0.1

1

10

100

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

número de gerações X 50

err

o a

cu

mu

lad

o

sobrefat=10%

sobrefat=30%

sobrefat=50%

sobrefat=80%

Page 51: 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

Tamanho da população ITamanho da população I

Erro no Impulso Angular

0.001

0.01

0.1

1

10

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

número de gerações X 50

err

o a

cu

mu

lad

o

npop=10

npop=20

npop=50

Page 52: 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

Tamanho da população IITamanho da população II

Erro no Impulso Linear

0.001

0.01

0.1

1

10

100

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

número de gerações X 50

err

o a

cu

mu

lad

o

npop =10

npop=20

npop=50

Page 53: 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

Erro Angular sem Erro Angular sem backpropagationbackpropagation

Erro no Impulso Angular

0.0001

0.001

0.01

0.1

1

10

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

número de gerações X 50

err

o a

cu

mu

lad

o cru=0% rand=100%

cru=20% rand=80%

cru=40% rand=60%

cru=50% rand=50%

cru=60% rand=50%

cru=80% rand=20%

Page 54: 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

Influencia de Influencia de backpropagation backpropagation

Erro no Impulso Angular

0.0001

0.001

0.01

0.1

1

10

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

número de gerações X 50

erro

acu

mu

lad

o

cru=40 rand=60 back=0

cru=40 rand=56 back=4

cru=40 rand=52 back=8

cru=40 rand=48 back=12

cru=40 rand=44 back=16

Page 55: 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

Erro linear sem Erro linear sem backpropagationbackpropagation

Erro no Inpulso Linear

0.001

0.01

0.1

1

10

100

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

número de gerações X 50

err

o a

cu

mu

lad

o cru=0% rand=100%

cru=20% rand=80%

cru=40% rand=60%

cru=50% rand=50%

cru=60% rand=40%

cru=80% rand=20%

Page 56: 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

Influencia de Influencia de backpropagation IIbackpropagation II

Erro no Impulso Linear

0.001

0.01

0.1

1

10

100

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

número de gerações X 50

err

o a

cu

mu

lad

o

cru=40 rand=60 back=0

cru=40 rand=56 back=4

cru=40 rand=52 back=8

cru=40 rand=48 back=12

cru=40 rand=44 back=16

Page 57: 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

ConclusõesConclusões

Objetivo proposto foi alcançadoObjetivo proposto foi alcançado

Simulador se mostrou-se funcional nos Simulador se mostrou-se funcional nos seus três modos de funcionamento.seus três modos de funcionamento.

RNAs treinadas com A.G.s foram RNAs treinadas com A.G.s foram capazes de fazer o robô seguir as capazes de fazer o robô seguir as trajetórias idealizadas.trajetórias idealizadas.

Page 58: 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

ConclusõesConclusões

Taxa de sobrevivência e tamanho da Taxa de sobrevivência e tamanho da população influem na velocidade do população influem na velocidade do treinamento.treinamento.

Backpropagation pode perturbar Backpropagation pode perturbar mecanismo de seleção do algoritmo mecanismo de seleção do algoritmo genético.genético.

Uso de backpropagation aumenta o Uso de backpropagation aumenta o tempo de execução por geração do tempo de execução por geração do algoritmo genético. algoritmo genético.

Page 59: 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

TópicosTópicos

IntroduçãoIntrodução PropostaProposta Implementação Implementação Validação Validação ConclusõesConclusões Modelo de DesenvolvimentoModelo de Desenvolvimento Propostas de ContinuaçãoPropostas de Continuação

Page 60: 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

Modelo de Modelo de desenvolvimentodesenvolvimento

EspecificaçãoEspecificação

Implementação Implementação

Inserção Inserção

Page 61: 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

Especificação Especificação

Criação do Criação do novo novo modelo de modelo de RobôRobô

Player

controle()Inércia()move()

NovoTipo

Page 62: 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

ImplementaçãoImplementação

IndivíduoOperadoresgenéticos

NovoTipoPlayercontrole

NovoControleOperadoresgenéticos

PlayerInérciaMove

DerivaçãoDerivação• Redefinição Redefinição

das funçõesdas funções• controlecontrole• inérciainércia• movemove

novotipo.dllnovotipo.dll

Page 63: 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

InserçãoInserção

OriginalOriginal• TCad + robos.dllTCad + robos.dll

Inserção do novo tipo no ambienteInserção do novo tipo no ambiente• TCad + robos.dll+novotipo.dllTCad + robos.dll+novotipo.dll

Page 64: 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

InserçãoInserção

Processador de Listas

Processador de Eventos

Objetoscompostos

novotipo.dll

Lisp

GUI

Page 65: 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

TópicosTópicos

IntroduçãoIntrodução PropostaProposta Implementação Implementação Validação Validação ConclusõesConclusões Modelo de DesenvolvimentoModelo de Desenvolvimento Propostas de ContinuaçãoPropostas de Continuação

Page 66: 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

Propostas para Trabalhos Propostas para Trabalhos Futuros IFuturos I

Robôs com comportamento Robôs com comportamento cooperativo.cooperativo.

Outros modelos de dinâmicaOutros modelos de dinâmica

Implementação de outros elementos Implementação de outros elementos de Inteligência Artificialde Inteligência Artificial

Page 67: 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

Usar funções Lisp como funções, Usar funções Lisp como funções, “Controle()” e “Inércia()”“Controle()” e “Inércia()”

Usar funções Lisp como operadores Usar funções Lisp como operadores genéticos.genéticos.

Programação GenéticaProgramação Genética

Propostas para Trabalhos Propostas para Trabalhos FuturosFuturos II II

Page 68: 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

Programação GenéticaProgramação Genética