Simulação de Jogos Cooperativos Baseada em Decisões de Múltiplos Humanos e Agentes Aluno: Peter F. Dam Orientador: Prof. Marcos V. Villas Roteiro 1. 2. 3. 4. 5. 6. 7. 8. Introdução Estado da Arte Objetivos Atividades Realizadas Sistema Ferramentas Auxiliares Implementação Considerações Finais Introdução Simulação Inteligência Artificial Elementos dos jogos humanos ◦ ◦ ◦ ◦ Agôn Alea Mimesis Ilinx Introdução Ambiente computacional – Java Adequação como Projeto Final ◦ ◦ ◦ ◦ ◦ Programação Distribuída e Concorrente Programação Orientada a Objetos Inteligência Artificial Álgebra Linear Simulação Física para Jogos Estado da Arte Avaliação de outros softwares mostrou importância de: ◦ Atributos ◦ Decisões Softwares notáveis: ◦ Hattrick ◦ Pro Evolution Soccer ◦ Football Manager Estado da Arte Atributos ◦ Força ◦ Resistência ◦ Salto ◦ Velocidade ◦ Criatividade ◦ Mentalidade ◦ Cabeceio ◦ Desarme ◦ Drible ◦ Finalização ◦ Passe ◦ Técnica ◦ Bola Parada ◦ Marcação ◦ Posicionamento Objetivos Simulação por jogada Mesclar decisões de IA com decisões humanas Específicos: ◦ Desenvolver um sistema que sirva outros sistemas ◦ Executar simulações e produzir resultados para sistemas clientes Atividades Realizadas Estudos preliminares: ◦ Linguagens úteis: Java, JSP, PHP, HTML ◦ Ferramentas úteis: Eclipse, Tomcat Estudos Conceituais e de Tecnologia ◦ Ferramentas: ArgoUML, NetBeans ◦ Conceitos: Sistemas Multi-Agentes, Webservices Atividades Realizadas Criação de um Motor Estabelecimento de Parâmetros Definição dos Modos de Simulação Criação de Papéis Criação de Tabelas de Decisões Sistema Arquitetura Sistema Motor Sistema Decisões Tabelas ◦ Geral ◦ Aleatórias ◦ Papéis Sistema Entrada de Dados ◦ Parâmetros ◦ Interação humana Arquivo XML descrevendo ações Controle feito pelo sistema cliente Validação simples Sistema Saída de Dados ◦ Informações ◦ Estado atual do sistema Sistema Casos de Uso ◦ Inteligência Parcial com Intervalos ◦ Inteligência Total com Intervalos ◦ Inteligência Total sem Intervalos Sistema Pacotes ◦ ◦ ◦ ◦ ◦ ◦ ◦ actions core decision geom io main roles Ferramentas Auxiliares Gerador de Formação Tática Ferramentas Auxiliares Visualizador de Estado da Simulação Ferramentas Auxiliares Visualizador de Estado da Simulação Ferramentas Auxiliares Exemplo de programa “cliente” do sistema Implementação Dificuldades: ◦ Reformulação da API ◦ Regras ◦ Aprimoração das jogadas e inteligência Considerações Finais Aprendizagem ◦ Aprofundamento em Java ◦ Motor de simulações “contínuas” O que faria de diferente ◦ Uso de C++ por familiaridade Considerações Finais Trabalhos futuros ◦ Web Service ◦ Percepção Simulada ◦ Tabelas dinâmicas