mestrando gabriel g. detoni orientador prof. dante barone controle para futebol de robôs utilizando...
TRANSCRIPT
Mestrando Gabriel G. DetoniOrientador Prof. Dante Barone
Controle para Futebol de Robôs Utilizando Processamento ParaleloSeminário de Andamento
2
Agenda
• Visão Geral• Motivação• Trabalho Desenvolvido• Trabalhos Relacionados• Situação e Resultados• Cronograma
3
Agenda
• Visão Geral• Motivação• Trabalho Desenvolvido• Trabalhos Relacionados• Situação e Resultados• Cronograma
4
Contexto
• Robocup– Small Size League (SSL)
• Processamento paralelo– Tipos de paralelismo de tarefas: temporal e
espacial– Modelos de programação: troca de mensagens e
variáveis compartilhadas
5
Agenda
• Visão Geral• Motivação• Trabalho Desenvolvido• Trabalhos Relacionados• Situação e Resultados• Cronograma
6
Motivação
• Importância do processamento paralelo na atualidade.
• Evoluções no futebol de robôs.• Complexidade da modelagem de sistemas
orientados ao processamento paralelo.
7
Agenda
• Visão Geral• Motivação• Trabalho Desenvolvido• Situação e Resultados• Cronograma
8
Trabalho Desenvolvido
• Utilizar processamento paralelo como uma forma para habilitar melhorias de desempenho
• Estabelecer um modelo de programação eficiente e com suporte a diferentes escalas
• Desenvolver um sistema de controle eficaz– Validar a hipótese e trazê-la ao mundo de futebol
de robôs
9
Programação voltada ao paralelismo
• Problemas de software paralelos– Comunicação entre threads (sincronização)• Troca de mensagens• Variáveis compartilhadas
– Gargalos de pipeline• Evitado balanceando-se o processamento de cada
tarefa– Escalabilidade
10
Modelagem do Sistema de Controle
• Como obter paralelismo evitando ao máximo os problemas da execução assíncrona?– Dividindo o sistema em tarefas independentes– Quando há dependência, balanceando-se as
tarefas para evitar gargalos– Utilizando um mecanismo de comunicação
eficiente– Utilizando um modelo de programação escalável
11
Modelagem do Sistema de Controle
• Divisão de tarefas inspirada em campeões da Robocup 1
1 KRIENGWATTANAKUL, A. Plasma-z 2008 Team Description Paper. Robocup, 2008.
12
Modelagem do Sistema de Controle
• Favorável ao Paralelismo Temporal (pipeline)– Divisão em níveis balanceados, dependentes uns
dos outros
13
Modelagem do Sistema de Controle
• Favorável ao Paralelismo Temporal (pipeline)– Divisão em níveis balanceados, dependentes uns
dos outros
14
Modelagem do Sistema de Controle
• Paralelismo Espacial– Divisão de cada nível em tarefas paralelizáveis com
pouca interdependência• Jogadas executadas por grupos de jogadores distintos• Movimentos executados por jogadores individualmente• Monitoramento do estado do jogo
15
Modelo EC
• Extensão do modelo de programação baseado em troca de mensagens ou coordenação
• Inspirado em modelos biológicos– Processamento paralelo distribuído2
– Redes neurais• Entidades Conexionistas (EC)• Mensagens são também chamadas estímulos.
2 MCCLELLAND, J. L.; RUMELHART, D. E.; HINTON, G. E. The Parallel Distributed Processing Perspective
16
Modelo EC
• Diagrama de duas entidade e suas conexões
W corresponde à influencia que uma conexão possui no estado de ativação da entidade.
17
Modelo EC: características da comunicação
• Blocking Receive– Executa apenas se houver dados para processar.
• Non-blocking Send– Envia dados produzidos e continua o processamento das
entradas.• Garantia de ordem• Quanto a fairness
– Todas as mensagens enviadas podem ser recebidas porém para garantir balanceamento da execução das tarefas, o buffer de entrada é limitado, de forma que mensagens antigas podem ser descartadas para dar lugar às novas.
18
Modelo EC: rotina de comunicação
• Modelo de dados utiliza tipos complexos.
• Mensagens são enviadas para todos os receptores vinculados ao transmissor.
• Cada receptor opta por aceitar ou rejeitar uma mensagem com base em seu tipo (W).
Mensagem
Object<Stimulus>: Dados
String: Tipo
19
Sistema de controle EC
• Algoritmos de execução:
20
Sistema de controle EC
• Topologia de uma Jogada:
21
Plano de Testes
• Speedup e Eficiência do modelo EC– Execução em computadores com múltiplas CPUs
variando a afinidade do processo.– Teste em uma maquina com SMT (Hyper-
threading)• Testes funcionais do sistema de controle
baseado em EC– Validar autonomia do sistema e a eficácia da
execução das jogadas desenvolvidas
22
Agenda
• Visão Geral• Motivação• Trabalho Desenvolvido• Trabalhos Relacionados• Situação e Resultados• Cronograma
23
Trabalhos Relacionados
• KITANO, H.; HENDLER, J. (Eds.). Massivelly Parallel Artificial Intelligence. [S.l.]: AAAI Press, 1994.– Conecta o desempenho das maquinas paralelas
disponíveis atualmente e as oportunidades disto para a Inteligência Artificial concluindo que o desempenho só é obtido se o sistema for pensado desde seu projeto para ser executado de forma paralela.
24
Trabalhos Relacionados
• GUNDOJU, V.; MINOURA, T. Distributed Observable/Observer: A Distributed Real-Time Object-Communication Mechanism. The First IEEE International Symposium on Object-Oriented Real-Time Distributed Computing. 1998. p. 358.– Propõe um framework com características em
comum com as propostas no modelo EC.
25
Trabalhos Relacionados
• MCCLELLAND, J. L.; RUMELHART, D. E.; HINTON, G. E. The Parallel Distributed Processing Perspective. 1983.– Apresenta um modelo lógico generalizado de um
sistema inteligente com várias semelhanças com a estrutura que foi desenvolvida para o sistema de controle de futebol de robôs em questão.
26
Trabalhos Relacionados
• KIELMANN, THILO. Objective Linda: A Coordination Model for Object-Oriented Parallel Programming. 1997– Propõe a implementação do modelo LINDA
orientado a objetos sendo. Um framework que utiliza um mecanismo implícito de troca de mensagens.
27
Agenda
• Visão Geral• Motivação• Trabalho Desenvolvido• Trabalhos Relacionados• Situação e Resultados• Cronograma
28
Situação e Resultados
• Testes em uma aplicação simplificada
29
Resultados
• Tempo de execução
30
Resultados
• Speedup e eficiência
31
Trabalhos Futuros
• Utilização do modelo EC com topologia dinâmica e adaptativa.– Aprendizado– Técnicas de redes neurais artificiais
• Aplicação do sistema de controle ao time de robôs da UFRGS.
32
Agenda
• Visão Geral• Motivação• Trabalho Desenvolvido• Situação e Resultados• Cronograma
33
Cronograma 2009 2010Ação 3 4 5 6 7 8 9 10 11 12 1 2 3 4 5 6
Revisão bibliográfica sobre o estado da arte em futebol de robôs.
Revisão bibliográfica sobre o padrões técnicos recomendados para processamento paralelo de informações. Desenvolvimento de um simulador de futebol de robôs.
Planejamento de uma arquitetura e sua subseqüente aplicação no desenvolvimento de um time de futebol de robôs.
Coleta de resultados
Reuniões Periódicas com o Prof. Orientador
Seminário de Andamento
Redação e revisão da dissertação
Entregar a dissertação
Defender a dissertação
34
2009 2010Ação 3 4 5 6 7 8 9 10 11 12 1 2 3 4 5 6
Revisão bibliográfica sobre o estado da arte em futebol de robôs.
Revisão bibliográfica sobre o padrões técnicos recomendados para processamento paralelo de informações. Desenvolvimento de um simulador de futebol de robôs.
Planejamento de uma arquitetura e sua subseqüente aplicação no desenvolvimento de um time de futebol de robôs.
Coleta de resultados
Reuniões Periódicas com o Prof. Orientador
Seminário de Andamento
Redação e revisão da dissertação
Entregar a dissertação
Defender a dissertação
Cronograma
35
Perguntas e Respostas