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 2003-1 Jacques Robin CIn-UFPE.

Apresentações semelhantes


Apresentação em tema: "Tópicos de Projeto: Métodos de Computação Inteligente 2003-1 Jacques Robin CIn-UFPE."— Transcrição da apresentação:

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

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

3 CIn-Project Ontologia Geral UML/OCL de Planejamento e Gerenciamento de Projetos Sub-Ontologia UML/OCL de Processos de Software Ontologia Geral Flora de Planejamento e Gerenciamento de Projetos Sub-Ontologia Flora de Processos de Software Sub-Ontologia Flora do Software Desenvolvido Sub-Ontologia UML/OCL do Software Desenvolvido Editor de Modelos UML/OCL Plano manual do projeto em UML/OCL GUI de aquisição de dados do projeto Base de dados do projeto em Flora Plano manual do projeto em Flora Plano manual do projeto anotado com problemas em UML/OCL Plano sugerido do projeto em UML/OCL Verificador de Planos Plano manual do projeto anotados com problemas em Flora Máquina de Inferência Flora Planejador Plano sugerido do projeto em 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) Modelagem de cada BC do simulador: Me = f(O,Rec) Modelagem de cada BC de cada agente: Ma = f(O,Rac) 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) Requisitos: Do SMA: Rs De cada componente do simulador: Rec = f(Re,Ae) De cada componente de cada agente: Rac = f(Ra,Aa) Do simulador de ambiente: Re = f(Rs,As) De cada agente: Ra = f(Rs,As) 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) 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)

6 Engenharia dos requisitos: SMA e simulador  SMA  SMA:  Diagramas de casos de uso com restrições OCL  Ligados a classes da ontologia  Simulador  Simulador do ambiente:  Diagramas de casos de uso com restrições OCL  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 Agent UML  Protocolos de comunicação e cooperação: diagramas de interação Agent UML (www.auml.org)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  Rastreamento do mecanismo de raciocínio da máquina de inferência

13 Maracatu Robo Futebol Clube 1.1  Divisão softbots  Exemplos de jogos:  koblenz.de/ag- ki/ftp/robocup/robolog/ flash/robolog- brainstormers.swf koblenz.de/ag- ki/ftp/robocup/robolog/ flash/robolog- brainstormers.swf  koblenz.de/ag- ki/ftp/robocup/robolog/ flash/Luebeck- RoboLog.swf koblenz.de/ag- ki/ftp/robocup/robolog/ flash/Luebeck- RoboLog.swf  koblenz.de/ag- ki/ftp/robocup/robolog/ flash/ATH- RoboLog.swf koblenz.de/ag- ki/ftp/robocup/robolog/ flash/ATH- RoboLog.swf Soccer Server UDP/IP Client 1 Client 11 Client 1 Time ATime B Soccer Monitor

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)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  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 Maracatu Robo Futebol Clube 1.1

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

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

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

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

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 Inacessível discreto deterministanão-episódico seqüencial mono-agente não diverso Inacessível Inacessível contínuo estocásticonão-episódico assíncrono multi-agentes 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

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

35 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.net GUI Swing Java API Java XML Socket API JEOPS XML Socket Servidor Simulador JEOPS: regras + objetos + procedimentos Java BNJ: redes bayesianas ? ? Cliente Agente JEOPS: regras + objetos + procedimentos Java API JEOPS XML Socket 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.

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

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

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 Dreamnaut Game Forge TM With a Dreamnaut Game Forge TM 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 Generic team sport league components: -Game Simulation -League Simulation -Personality modelling - Physical modelling - Graphics - AI Team sport game forge site Generic team sport ontology Virtual team sport league collaborative design components: - Sport design - League design - Collaborative support Web links about: - Team sports - Personality modelling - Physical modelling - Computer graphics - User interfaces - Game Playability - AI Virtual team sport league design GUI Virtual team sport league design collaboration GUI Player community designed virtual team sport and league sub-ontology 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 Virtual team sport game playing GUI

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  1 st 16pts, 2 nd 10pts, 3 rd 9pts th 2pts, 11 th -20 th : 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 15 o.  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 2003-1 Jacques Robin CIn-UFPE."

Apresentações semelhantes


Anúncios Google