A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Tópicos de Projeto: Métodos de Computação Inteligente

Apresentações semelhantes


Apresentação em tema: "Tópicos de Projeto: Métodos de Computação Inteligente"— Transcrição da apresentação:

1 Tópicos de Projeto: Métodos de Computação Inteligente 2003-1
Jacques Robin CIn-UFPE

2 Tópicos CIn-Project: sistema de planejamento e gerencia de processo de desenvolvimento de software baseado em ontologias Time de RoboCup Maracatu RFC 1.1 Agente explorador do Mundo do Wumpus Simulador de Mesozoic Zoo in Orbit com interface de visualização e agente teste simples Uma ontologia UML de corridas de carros com implementação parcial Uma ontologia UML de jogos de bola com implementação parcial

3 Ontologia Geral UML/OCL Gerenciamento de Projetos
CIn-Project Ontologia Geral UML/OCL de Planejamento e Gerenciamento de Projetos Ontologia Geral Flora de Planejamento e Gerenciamento de Projetos Sub-Ontologia UML/OCL do Software Desenvolvido Editor de Modelos UML/OCL GUI de aquisição de dados do projeto Base de dados do projeto em Flora Sub-Ontologia UML/OCL de Processos de Software Sub-Ontologia Flora de Processos de Software Sub-Ontologia Flora do Software Desenvolvido Plano manual do projeto em UML/OCL Plano manual do projeto em Flora Verificador de Planos Plano manual do projeto anotado com problemas em UML/OCL Plano manual do projeto anotados com problemas em Flora Plano sugerido do projeto em UML/OCL Planejador Plano sugerido do projeto em Flora Máquina de Inferência Flora

4 CIn-Project Sistema de planejamento e gerencia de projeto de software baseado em ontologias Exemplos de classes das ontologias gerais: Tarefas e sub-tarefas Papeis Recursos: humanos, hardware, software, comunicação, espaço físico Medidas: custo, desempenho, prazo Tecnologias Exemplos de relacionamentos das ontologias gerais: Dependências entre tarefas Alocação de recursos para cada sub-tarefa Desvios: atrasos, overhead de custo, qualidade insuficiente Ponto de partida: Procurar e reutilizar padrões de gerencia de projeto, processos de software e planejamento em IA Codificá-los em UML/OCL e em Flora

5 Processo de desenvolvimento dirigido por ontologia de SMA baseado em conhecimento
Modelagem: Ontologia do domínio: O Caracterização do ambiente: C = f(O) Requisitos: Do SMA: Rs Do simulador de ambiente: Re = f(Rs,As) De cada agente: Ra = f(Rs,As) Arquitetura social do SMA: As = f(C,Rs) Arquitetura interna do simulador: Ae = f(C,Re) Arquitetura interna de cada agente: Aa = f(C,Ra) De cada componente do simulador: Rec = f(Re,Ae) De cada componente de cada agente: Rac = f(Ra,Aa) Modelagem de cada BC do simulador: Me = f(O,Rec) Modelagem de cada BC de cada agente: Ma = f(O,Rac) Testes: Unitários de cada BC do simulador Tec = f(Ie,Re) Integrados do simulador Te = f(Ie,Re) Unitários de cada BC de cada agente Tac = f(Ia,Rac) Integrados de cada agente Ta = f(Ia,Ra) Integrado do SMA Ts = f(Ie,Ia,Rs) Implementação: Codificação ou aprendizagem de cada BC do simulador Ie = f(Me) Codificação ou aprendizagem de cada BC de cada agente Ia = f(Ma)

6 Engenharia dos requisitos: SMA e simulador
Diagramas de casos de uso com restrições OCL Ligados a classes da ontologia Simulador do ambiente: Ligados a classes da ontologia: percepções e ações Funcionalidades desejáveis: Simulação a velocidade normal Interrupção para inspeção e simulação passo a passo Retroceder, mudar parâmetro ou ação de um agente, e recomeçar Geração de logs do estado do ambiente, das percepções e ações dos agentes

7 Engenharia dos requisitos: agentes
Diagramas de casos de uso com restrições OCL Ligados a classes da ontologia: percepções e ações Funcionalidades desejáveis: Raciocínio a velocidade normal Interrupção para inspeção e execução passo a passo Retroceder no raciocino, mudar crença, objetivo, plano ou regras e recomeçar Geração de logs do seu raciocínio e das suas percepções, crenças, objetivos, planos, utilidades e ações

8 Engenharia dos requisitos: GUI do simulador e GUI dos agentes
Diagramas de casos de uso ligados a classes da ontologia Funcionalidades desejáveis: Visualização da simulação a velocidade normal Interrupção para inspeção execução passo a passo GUI do simulador: Visualização dos estado do ambiente, das percepções e ações dos agentes Retroceder, mudar parâmetro ou dado do ambiente, ou ação ou percepção de um agente, e recomeçar GUI do agente: Visualização do raciocínio, das crenças, objetivos, planos, utilidades e regras do agente Retroceder, mudar crença, objetivo, plano, utilidade ou regra do agente, e recomeçar Durante execução, ou a partir dos logs armazenados pelo simulador ou agentes

9 Modelagem da estrutura social do SMA
Papeis: interfaces UML encapsulando serviços Restrições OCL sobre alocação de papeis Unidades sociais: pacotes UML Protocolos de comunicação e cooperação: diagramas de interação Agent UML (www.auml.org)

10 Modelagem: do simulador e dos agentes
Arquiteturas internas do simulador e dos agentes: Escolha dos componentes e bases de conhecimento Escolha da estrutura de controle entre componentes e bases de conhecimento Escolha do mecanismo de raciocínio de cada componente Escolha do método de aquisição do conhecimento para cada base Modelos do simulador e dos agentes: No caso da aquisição manual do conhecimento Diagramas de classes com restrições OCL estendendo a ontologia Diagramas de estado para comportamentos

11 Implementação do simulador e dos agentes
Para cada componente do simulador e de cada agente: Escolha da linguagem L de representação de conhecimento Escolha da máquina de inferência raciocinando com L Caso da aquisição manual do conhecimento: Codificação em L de cada elemento do modelo Caso da aquisição por aprendizagem de máquina: processo em espiral consistindo do seguintes passos: Codificação em L de um conjunto de exemplos de entrada-saída Escolha do algoritmo de aprendizagem Especificação do viés de aprendizagem Escolha da ferramenta de aprendizagem Ajuste dos parâmetros da ferramenta Treinamento com parte dos exemplos codificados Teste estatístico do conhecimento aprendido com outra parte dos exemplos Avaliação qualitativa do conhecimento aprendido

12 Testes Unitários de cada BC do simulador Integrados do simulador
Unitários de cada BC de cada agente Integrados de cada agente Integrado do SMA Análise das interações multiagente e do comportamentos coletivos emergentes Cada uma desses conjuntos de testes sub-divididos em: Testes funcionais de black-box Testes funcionais de glass-box Rastreamento do mecanismo de raciocínio da máquina de inferência Testes de desempenho

13 Maracatu Robo Futebol Clube 1.1
Soccer Server UDP/IP Client 1 Client 11 Time A Time B Soccer Monitor Divisão softbots Exemplos de jogos:

14 Maracatu Robo Futebol Clube 1.1
Desenvolver nova versão de time de futebol de robô simulado do CIn para a competição internacional anual RoboCup (www.robocup.org) Versão 1.0 resultado de uma dissertação de mestrado Ontologia abrangente da RoboCup em UML/OCL Time de agentes autômatos Modelo do time em UML/OCL Implementação: Interpretação das percepção e atualização do modelo do ambiente reuso da biblioteca C do CMUnited, usada pelos Campões Escolha das ações: Alto-nível: regras orientada a objetos Flora Baixo-nível: reuso da biblioteca C do CMUnited, usada pelos Campões

15 Maracatu Robo Futebol Clube 1.1
Extensões para versão 1.1: Agente cognitivo Jogadas defensivas: Posicionamento para marcação defensiva Escolha: marcar seu adversário designado x tentar interceptar a bola x marcar adversário livre com a bola Jogadas ofensivas sem a bola Posicionamento para sair da marcação do adversário Jogadas com a bola: Avaliação do melhor passe Escolha: passe x drible x chute Extensão do modelo: Diagramas de classes, restrições OCL, diagramas de estado Extensão da implementação: Classes Flora, regras Flora Avaliação: Partidas entre times diferentes por apenas um único aspecto

16 Agente explorador do mundo do wumpus
Flora: regras + objetos + relações Cliente Agente XSB Prolog API Java JEOPS: regras + objetos + procedimentos Java Servidor Simulador RMI Cliente Agente JEOPS: regras + objetos + procedimentos Java

17 Agente explorador do mundo do wumpus
JEOPS: regras + objetos + procedimentos Java Servidor Simulador Flora: regras + objetos + relações Cliente Agente XSB Prolog API Flora RMI Cálculo de eventos: Atualizações do modelo do ambiente Manutenção da verdade Problema do frame Problema da ramificação Planejamento: Previsão de ambientes futuros Eclipse: regras + restrições + relações Simulador Agente E-RES YAP Prolog: regras + relações Simulador Agente

18 Agente explorador do mundo do wumpus
Arquitetura do Agente Linguagem de Programação Atualização dos Modelos Agente Cognitivo Agente Autômato Agente Cognitivo Otimizador Agente Autômato Otimizador Cálculo de Eventos Cálculo de Situações Não Monotônica Eclipse E-RES Flora JEOPS Prolog

19 Agente explorador do mundo do wumpus
Previsão dos Modelos Futuros Arquitetura do Agente Linguagem de Programação Atualização dos Modelos Agente Deliberativo Agente Deliberativo Otimizador Planejador com Informação Parcial Eclipse E-RES Cálculo de Eventos Cálculo de Situações Não Monotônica Flora JEOPS Prolog

20 Agente explorador do mundo do wumpus
Como gerar uma publicação a partir do projeto? Desenvolver e comparar desempenho de: Várias arquiteturas de agentes (mais fácil com E-RES) Várias técnicas de atualizações do modelo do ambientes (mais fácil com Flora) Vários linguagens de programação Desenvolver agente deliberativo em JEOPS ou Flora

21 Welcome to MeZOORB MEsoZOic ZOO in ORBIT
Jogo educativo para ensinar IA e fazer experimentos empíricos para pesquisa Supera as limitações do Mundo do Wumpus e da RoboCup: Características fixas do ambiente Algumas em comum Inacessível discreto determinista não-episódico seqüencial mono-agente não diverso Ausência de diversidade nos 2: Classes de terrenos: 1 ou 2 Classes de agentes: 1 Classes de objetos: 1 ou 2 Classes de modos de locomoção: 1 Classes de objetivos: 2 Áreas chaves da IA tratam especificamente da diversidade: Ontologias Representação do conhecimento OO Técnicas de classificação Inacessível contínuo estocástico não-episódico assíncrono multi-agentes não diverso

22 Meets Welcome to MeZOORB Requisitos: Roteiro:
Todas as características do ambiente parametrizáveis Permite criar ambientes com qualquer combinação de características No entanto: simples de entender pós ancorado em referências universalmente difundidas Roteiro: Meets Versão 2.0 do Parque dos Dinossauros se mudou de uma ilha do Costa-Rica para uma estação orbital Por razão de segurança  e verossimilhança Biomecânica: mega-fauna pré-histórica inviável na gravidade atual

23 Welcome to Mezoorb Teoria geológica da terra em expansão

24 Welcome to Mezoorb Teoria geológica da terra em expansão

25 Welcome to Mezoorb Teoria geológica da terra em expansão

26 Welcome to Mezoorb Teoria geológica da terra em expansão

27 Welcome to Mezoorb Teoria geológica da terra em expansão

28 Welcome to Mezoorb Teoria geológica da terra em expansão

29 Welcome to Mezoorb Teoria geológica da terra em expansão

30 Welcome to Mezoorb Teoria geológica da terra em expansão

31 Welcome to Mezoorb Teoria geológica da terra em expansão

32 Welcome to Mezoorb Teoria geológica da terra em expansão

33 Welcome to Mezoorb Colônias espaciais orbitais

34 Welcome to MeZOORB: diversidade
Taxonomia de armas: metralhadora lança-chama fuzil-arpão torpedo Taxonomia de pessoas de diversas habilidades e comportamentos: paleontólogo,hacker, piloto,soldado, líder,corajoso, altruísta Taxonomia de animais de diversas habilidades e comportamentos: sensores,atuadores tamanho,velocidade corre,trepa,nada,voa inteligência agressividade Taxonomia de recursos: bebida,comida energia,combustível munições,peças telecomunicações Taxonomia de terrenos: floresta,savana,deserto mangue,rio,lagoa,mar planície,montanha caverna, construção Taxonomia de veículos: moto,jipe, caminhão-lagarta? helicóptero,hidravião hovercraft,lancha, jet-ski,submarino Taxonomia de obstáculos e passagem: cercas,viveiros, paredes,fossos pontes,túneis,pistas portas,escadas

35 Welcome to MeZOORB: arquiteturas de software
Visualização: do ambiente das percepções e ações dos agentes dos modelos, objetivos e regras dos agentes velocidade normal, parada, passo a passo, retroceder, mudar parâmetro, recomeçar. GUI Swing Java API XML Socket .net API JEOPS XML Socket Servidor Simulador JEOPS: regras + objetos + procedimentos Java Cliente Agente JEOPS: regras + objetos + procedimentos Java API JEOPS XML Socket BNJ: redes bayesianas ? Flora: regras + objetos + relações XSB Prolog API Flora XML Servidor Simulador Socket Flora: regras + objetos + relações XSB Prolog API Flora XML Socket Cliente Agente

36 .net API Eclipse XML Socket E-RES: planejamento + cálculo de eventos
Eclipse: ~objetos +regras + restrições + relações Cliente Agente Eclipse: ~objetos + regras + restrições + relações Servidor Simulador .net API CLP(BN) XML Socket YAP Prolog Servidor Agente CLP(BN): regras + relações + restrições + probabilidades Logtalk: objetos + regras + relações Cliente Agente API ICL XML Servidor Simulador Socket ICL: regras + relações + probabilidades + utilidades YAP Prolog Logtalk: objetos + regras + relações Cliente Simulador

37 E-RES: planejamento + cálculo de eventos
Java Swing GUI E-RES: planejamento + cálculo de eventos Eclipse: ~objetos + regras + restrições + relações Servidor Simulador API Eclipse Java Eclipse: ~objetos +regras + restrições + relações Cliente Agente RMI Servidor Simulador JEOPS: regras + objetos + procedimentos Java Cliente Agente BNJ: redes bayesianas ? Flora: regras + objetos + relações XSB Prolog Servidor Simulador API XSB-Java API Flora-Java Cliente Agente

38 Ontologia de corridas de carros e jogos de bola
Motivação: Dois domínios estudo de caso para Intelligent educative hybrid game forge engineering Incorporate different game domain roles usually covered in different game classes (reflex, managerial, RPG) Any role can be filled by either a human player or a softbot Aggregate web-based edutainment material and chat rooms for the human players to cooperatively and adversarially improve their skills Rely on heavy duty physical modelling and AI Provide broad domain general simulation functionalities Allows human players and communities to use these functionalities to instanciate an infinite number of particular games

39 Intelligent educative hybrid game forge engineering: the commercial
With a Dreamnaut Game ForgeTM you don’t merely buy and play a single, fixed game created by others You and your friends design your own virtual world, define your own playing rules and then play along From tournament to tournament you help create a new tradition After each tournament you don’t merely improve your player skills, you tinker with the world and rules to improve the playability and fun of the very game Until you grow tired of it, and then invent a radically new one All this with a single software and without the need to program a line of code Why playing other people’s game when it’s now so easy to be the ringmaster?

40 Team sport game forge site Virtual team sport league
collaborative design components: Sport design League design Collaborative support Generic team sport ontology Virtual team sport league design GUI Player community designed virtual team sport and league sub-ontology Virtual team sport league design collaboration GUI Web links about: Team sports Personality modelling Physical modelling Computer graphics User interfaces Game Playability AI Specific team sport league component generator: Game Simulation League Simulation Personality modelling Physical modelling Graphics AI Player community designed team sport league components: Game Simulation League Simulation Personality modelling Physical modelling Graphics AI Virtual team sport league management GUI game playing GUI Generic team sport league components: Game Simulation League Simulation Personality modelling Physical modelling Graphics AI

41 Motorsports Game Forge Roles
League president, board member Circuit owner, designer Sponsor marketing manager Team manager Chassis manufacturer, designer Engine manufacturer, designer Tyre manufacturer, designer Fuel manufacturer, designer Driver’s aid software manufacturer, designer (now this involves programming !) Driver Driver’s groupie (now this is a no brainer )

42 Example Motorsports Game Forged Instance: Formula 0
Endurance road course racing series: 3 hours single driver races, 24 hours 3 driver crew races To maximize overtaking, starting grid reverse of championship standing 1st 16pts, 2nd 10pts, 3rd 9pts th 2pts, 11th-20th: 1pt, fatest lap: 2pts, most lap led: 2pts Car design is freest possible within the broad goal of combining: Maximum speed  (what did you expect?) Maximum crash safety Near zero pollution Near zero noise Near zero maintenance no pit stop for 3h races only 8 pit stops and single set of replacement tyres in 24h races Licensability and practicality as street car Two fully equipped seats, luggage compartment, standard parking spot fitting dimensions, bottom high enough to go over speed bumps

43 Example Teamsports Game Forged Instance: RollerFrisbee
Contact team sports fusionning elements from basketball, handball, soccer, american football, australian football, lacrosse, ultimate frisbee, roller hockey and roller derby. Teams of 10 players, 1 goalkeeper and 9 field skaters on switch retractable roller sneakers (to allow skating, running and jumping) Oval, entirely fenced rink, divided into a 95m long and 70m wide flat inner oval and a surrounding, 15m wide outer ring banked at 15o. A team scores points when it sends a bouncing frisbee into one part of the opponent goal, the lower, soccer-like part, the middle basket and the upper football-like part 9 different ways to score: handball goal (3pts) , soccer goal (5pts), close-range basket (2pts) , middle range basket (3pts), long-range basket (5pts), free-throw (1pt), close-range throw and catch (3pts), long-range throw and catch (5pts), long throw (2pts)


Carregar ppt "Tópicos de Projeto: Métodos de Computação Inteligente"

Apresentações semelhantes


Anúncios Google