SlideShare una empresa de Scribd logo
1 de 75
Cómo programar un Agente: JADE, LEAP y JADEX Javier Carbó, Grupo de Inteligencia Artificial Aplicada Univ. Carlos III de Madrid Curso “SSII en el siglo XXI” Univ. Internacional Menendez Pelayo, Julio de 2008
Indice ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Construir un Sistema de Agentes   ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Problema a tratar  Dominios aplic. Ejemplo, pasos. ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Propose book; Reject/Accept Proposal En java JADE, LEAP o JADEX
Ejemplo de escenario
Distinguir entre roles y servicios ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Asignar responsabilidades ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Pedir registro, pedir servicios_viaje, pedir servicios_comercio, pedir servicios_otros Ofrecer registro, ofrecer servicios_otros, ofrecer servicios_viaje  Ofrecer servicios_comercio
Ontología
Protocolo: Secuencias de mensajes   Gates  Prensa Barajas PROPOSE USAToday, Corr. Sera Se mueve junto a prensa REQUEST register ... AGREE  REFUSE  INFORM-REF checkin  INFORM gates, us citizen towards rome  ACCEPT-PROPOSAL  REJECT-PROPOSAL
Introducción a JADE, LEAP, JADEX ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
SNIFFER de JADE
El estándar FIPA ,[object Object],[object Object],[object Object],[object Object],Message Transport System Agent Management System Directory Facilitator Agent Platform Agent 1 Otras Plataformas FIPA Páginas Amarillas Registro y supervisión de agentes Agent n
El ACL del estándar FIPA ,[object Object],[object Object],[object Object],[object Object],[object Object]
Un mensaje FIPA-ACL (inform :sender  antagent :receiver  bob martin :conversation_id  example6 :reply_with  275 :reply_by  wed 3pm :language  lisp :content  (target (project “1hour”) (platform “computer15”) (author  “sean”)) (time “8/07/01  4pm”)    (message “build failed”)   (target “compile”)  ) )  Intención (performative) Inform, Request, Failure, Refuse, ... Direccionamiento sender, receiver Coordinación de mensajes Respuesta esperada, id de diálogo Detailed action or request problem specific language, ontology, request
Un mensaje FIPA-ACL ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Actos comunicativos FIPA-ACL ,[object Object]
Introducción a LEAP ,[object Object],[object Object],[object Object],[object Object],[object Object]
Introducción a JADEX ,[object Object],[object Object],[object Object],[object Object],[object Object]
Arquitectura de JADE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Servicios de plataforma ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Arquitectura JADE Network protocol stack using RMI JRE JRE JRE Jade  Main -container Jade Agent Container Jade Agent Container Jade distributed Agent Platform DF Agent AMS Agent Application Agent Application Agent Application Agent Application Agent Application Agent Application Agent Host 1 Host 2 Host 3 Application Agent Application Agent
DF: Directorio de agentes y servicios ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Un agente JADE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Programar un agente JADE ,[object Object],[object Object],[object Object],[object Object],[object Object]
Dentro de un Agente Agent Communication Language Agente Seve dispatch loop Ontology Profile Preferences Facts Rules Models Behaviour Behaviour Behaviour Agente Olazábal Seve: Golf course Course:  Play    Cancel Messages: Augusta (propose (course augusta … start cancel
Lanzar un agente desde el GUI de JADE ,[object Object],[object Object]
Lanzar un agente desde el GUI de JADE ,[object Object],[object Object]
Un agente hola-mundo ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Lanzando un agente JADE desde DOS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Lanzar un agente desde un programa Java ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Prog. Basada en Comportamientos JADE ,[object Object],[object Object],[object Object],[object Object],[object Object]
Comportamientos JADE ,[object Object],[object Object],[object Object],[object Object],[object Object]
Orden ejecución comportamientos JADE ,[object Object],[object Object],[object Object],[object Object]
Orden ejecución comportamientos JADE ,[object Object],[object Object],[object Object],[object Object]
Tipos de comportamientos ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Tipos de Comportamientos JADE Behaviour action() done() Simple Behaviour CompositeBehaviour <<protected>> preAction() <<protected>> postAction() <<protected>> bodyAction() addBehaviour() removeBehaviour() OneShotBehaviour Abstract  class Abstract class  - simple Abstract class  –  composes children;  Finite State  Machine done =  true done =  false CyclicBehaviour SequentialBehaviour <<protected>> bodyAction() ParallelBehaviour <<protected>> bodyAction() FSMBehaviour <<protected>> bodyAction()
Mensajes JADE ,[object Object],[object Object],[object Object]
Construir un mensaje   ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Atributos de un mensaje ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Enviar un mensaje ,[object Object],[object Object],[object Object],[object Object],[object Object]
Recibir un mensaje ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Construir una respuesta ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ontologías en JADE ,[object Object],[object Object],[object Object],[object Object],[object Object]
Componentes de una ontología ,[object Object],[object Object],[object Object],[object Object],[object Object]
Términos de una ontología ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conceptos de una ontología ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conceptos de una ontología ,[object Object],[object Object],[object Object],[object Object],[object Object]
Predicados y acciones de una ontología ,[object Object],[object Object]
Utilizar una ontología ,[object Object],[object Object],[object Object],[object Object],[object Object]
Utilizar una ontología ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
LEAP ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Plataformas de ejecución de LEAP
Ejecución de LEAP en móviles/PDAs
Ejecución de LEAP en móviles/PDAs
Limitaciones de LEAP ,[object Object],[object Object],[object Object],[object Object],[object Object]
Compilar LEAP ,[object Object],[object Object],[object Object],[object Object]
Compilar la demo de LEAP ,[object Object],[object Object],[object Object],[object Object]
Ejecutar LEAP ,[object Object],[object Object],set classpath=rutawtktk25in rutawtktk25inmulator -Xdescriptor:leapmnet.jad ,[object Object],[object Object]
Jadex ,[object Object],[object Object],[object Object],[object Object]
Arquitectura Jadex
Ejecución desde el interfaz de Jadex ,[object Object],[object Object],[object Object]
Ejecución desde el interfaz de jadex
Ejecución desde un programa en java ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
La definición xml de un agente Jadex
Creencias de un agente jadex ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Planes de un agente jadex ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Los mensajes de un agente jadex ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Estados iniciales de un agente Jadex ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Deseos ( goals ) de un agente jadex ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Deseos ( goals ) de un agente jadex
Paso de pa rámetros  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Una clase java Plan de jadex ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Una clase java Plan de jadex ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Acceder a Jade desde Jadex ,[object Object],[object Object],[object Object]
Directorio (DF) en jadex ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Directorio (DF) en jadex ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

Más contenido relacionado

La actualidad más candente

Movilidad en jade
Movilidad en jadeMovilidad en jade
Movilidad en jade
cccampos
 
Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.
Whaleejaa Wha
 
programacion orientada a objetos en visual basic net
programacion orientada a objetos en visual basic netprogramacion orientada a objetos en visual basic net
programacion orientada a objetos en visual basic net
pp mm
 
Metodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevMetodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prev
jtk1
 
Framework .NET 3.5 07 Programación orientada a objetos
Framework .NET 3.5 07 Programación orientada a objetosFramework .NET 3.5 07 Programación orientada a objetos
Framework .NET 3.5 07 Programación orientada a objetos
Antonio Palomares Sender
 
10. programacion orientada a objetos en visual basic .net
10.  programacion orientada a objetos en visual basic .net10.  programacion orientada a objetos en visual basic .net
10. programacion orientada a objetos en visual basic .net
johnny herrera
 

La actualidad más candente (19)

2) introduccion al lenguaje java
2) introduccion al lenguaje java2) introduccion al lenguaje java
2) introduccion al lenguaje java
 
Movilidad en jade
Movilidad en jadeMovilidad en jade
Movilidad en jade
 
Programacion orientada a objetos 1
Programacion orientada a objetos 1Programacion orientada a objetos 1
Programacion orientada a objetos 1
 
Intro
IntroIntro
Intro
 
Programacion orientada a objetos 2
Programacion orientada a objetos 2Programacion orientada a objetos 2
Programacion orientada a objetos 2
 
[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java
 
Unidad 2 clases y objetos
Unidad 2 clases y objetosUnidad 2 clases y objetos
Unidad 2 clases y objetos
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Fundamentos de Java II
Fundamentos de Java IIFundamentos de Java II
Fundamentos de Java II
 
Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.
 
Curso Java Inicial 4 Poo En Java
Curso Java Inicial   4 Poo En JavaCurso Java Inicial   4 Poo En Java
Curso Java Inicial 4 Poo En Java
 
Fundamentos de Java
Fundamentos de JavaFundamentos de Java
Fundamentos de Java
 
programacion orientada a objetos en visual basic net
programacion orientada a objetos en visual basic netprogramacion orientada a objetos en visual basic net
programacion orientada a objetos en visual basic net
 
5poo
5poo5poo
5poo
 
Metodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevMetodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prev
 
Operadores poo
Operadores pooOperadores poo
Operadores poo
 
Framework .NET 3.5 07 Programación orientada a objetos
Framework .NET 3.5 07 Programación orientada a objetosFramework .NET 3.5 07 Programación orientada a objetos
Framework .NET 3.5 07 Programación orientada a objetos
 
Programacion java basica
Programacion java basicaProgramacion java basica
Programacion java basica
 
10. programacion orientada a objetos en visual basic .net
10.  programacion orientada a objetos en visual basic .net10.  programacion orientada a objetos en visual basic .net
10. programacion orientada a objetos en visual basic .net
 

Destacado (9)

Simulación basada en agentes y multi agentes
Simulación basada en agentes y multi agentesSimulación basada en agentes y multi agentes
Simulación basada en agentes y multi agentes
 
Agentes moviles
Agentes movilesAgentes moviles
Agentes moviles
 
UML y agentes móviles - Carlos Cabrera
UML y agentes móviles - Carlos CabreraUML y agentes móviles - Carlos Cabrera
UML y agentes móviles - Carlos Cabrera
 
Ros y sistemas multi agentes
Ros y sistemas multi agentesRos y sistemas multi agentes
Ros y sistemas multi agentes
 
Sistemas multiagente para simulación
Sistemas multiagente para simulaciónSistemas multiagente para simulación
Sistemas multiagente para simulación
 
Sistemas Multiagente
Sistemas MultiagenteSistemas Multiagente
Sistemas Multiagente
 
Agentes MóViles
Agentes MóVilesAgentes MóViles
Agentes MóViles
 
Sistemas MultiAgente
Sistemas MultiAgenteSistemas MultiAgente
Sistemas MultiAgente
 
Unidad No. 5 - Agentes Inteligentes
Unidad No. 5 - Agentes InteligentesUnidad No. 5 - Agentes Inteligentes
Unidad No. 5 - Agentes Inteligentes
 

Similar a UIMP: Taller de Sistemas MultiAgente

Programacion no numerica ii
Programacion no numerica iiProgramacion no numerica ii
Programacion no numerica ii
rolmanpaul
 
Presentacion aplicaciones en java
Presentacion aplicaciones en javaPresentacion aplicaciones en java
Presentacion aplicaciones en java
rsalazar16988
 
Un poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernesUn poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernes
Dani Latorre
 

Similar a UIMP: Taller de Sistemas MultiAgente (20)

La herramienta de desarrollo de agentes JADE
La herramienta de desarrollo de agentes JADELa herramienta de desarrollo de agentes JADE
La herramienta de desarrollo de agentes JADE
 
Jade Introducción
Jade IntroducciónJade Introducción
Jade Introducción
 
La web como Plataforma con Dojo Toolkit
La web como Plataforma con Dojo ToolkitLa web como Plataforma con Dojo Toolkit
La web como Plataforma con Dojo Toolkit
 
Programacion no numerica ii
Programacion no numerica iiProgramacion no numerica ii
Programacion no numerica ii
 
Curso introductorio a Raptor.js con Node.js
Curso introductorio a Raptor.js con Node.jsCurso introductorio a Raptor.js con Node.js
Curso introductorio a Raptor.js con Node.js
 
Servicios web Extendido_error perl
Servicios web Extendido_error perlServicios web Extendido_error perl
Servicios web Extendido_error perl
 
Presentacion aplicaciones en java
Presentacion aplicaciones en javaPresentacion aplicaciones en java
Presentacion aplicaciones en java
 
Java basico
Java basicoJava basico
Java basico
 
presentacion de Aplicaciones de Java
presentacion de Aplicaciones de Javapresentacion de Aplicaciones de Java
presentacion de Aplicaciones de Java
 
Intro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en OlotIntro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en Olot
 
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.pptintroduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
 
Charla
CharlaCharla
Charla
 
Integración de aplicaciones Java
Integración de aplicaciones JavaIntegración de aplicaciones Java
Integración de aplicaciones Java
 
Ejemplosencillocon rmi
Ejemplosencillocon rmiEjemplosencillocon rmi
Ejemplosencillocon rmi
 
Aprendiendo AWS Lambda con API Gateway y DynamoDB
Aprendiendo AWS Lambda con API Gateway y DynamoDBAprendiendo AWS Lambda con API Gateway y DynamoDB
Aprendiendo AWS Lambda con API Gateway y DynamoDB
 
Un poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernesUn poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernes
 
Tutorial de eclipsee
Tutorial de eclipseeTutorial de eclipsee
Tutorial de eclipsee
 
Java
JavaJava
Java
 
Spring OSGI , dm server - Leonardo Torres Altez
Spring OSGI , dm server - Leonardo Torres AltezSpring OSGI , dm server - Leonardo Torres Altez
Spring OSGI , dm server - Leonardo Torres Altez
 
01 Ext Js Introduccion
01 Ext Js   Introduccion01 Ext Js   Introduccion
01 Ext Js Introduccion
 

Más de Gerardo DeMiguel

Más de Gerardo DeMiguel (10)

UIMP: Sistemas Multiagente para la gestion de camaras
UIMP: Sistemas Multiagente para la gestion de camarasUIMP: Sistemas Multiagente para la gestion de camaras
UIMP: Sistemas Multiagente para la gestion de camaras
 
UIMP: Sistemas de video en Aml
UIMP: Sistemas de video en AmlUIMP: Sistemas de video en Aml
UIMP: Sistemas de video en Aml
 
UIMP: Sistema Multiagente CBR para Turismo de Salamanca
UIMP: Sistema Multiagente CBR para Turismo de SalamancaUIMP: Sistema Multiagente CBR para Turismo de Salamanca
UIMP: Sistema Multiagente CBR para Turismo de Salamanca
 
UIMP: Aplicaciones de AmI en Telefonica I+D
UIMP: Aplicaciones de AmI en Telefonica I+DUIMP: Aplicaciones de AmI en Telefonica I+D
UIMP: Aplicaciones de AmI en Telefonica I+D
 
UIMP: Redes de sensores, fundamentos y aplicaciones.
UIMP: Redes de sensores, fundamentos y aplicaciones.UIMP: Redes de sensores, fundamentos y aplicaciones.
UIMP: Redes de sensores, fundamentos y aplicaciones.
 
UIMP: Interfaces de Usuario
UIMP: Interfaces de UsuarioUIMP: Interfaces de Usuario
UIMP: Interfaces de Usuario
 
UIMP: Tecnologias RFID
UIMP: Tecnologias RFIDUIMP: Tecnologias RFID
UIMP: Tecnologias RFID
 
UIMP: Sistemas Basados en Contexto
UIMP: Sistemas Basados en ContextoUIMP: Sistemas Basados en Contexto
UIMP: Sistemas Basados en Contexto
 
UIMP: localización y context-awareness
UIMP: localización y context-awarenessUIMP: localización y context-awareness
UIMP: localización y context-awareness
 
Clasificacion y regresion mediante aprendizaje supervisado
Clasificacion y regresion mediante aprendizaje supervisadoClasificacion y regresion mediante aprendizaje supervisado
Clasificacion y regresion mediante aprendizaje supervisado
 

Último

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Último (12)

How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 

UIMP: Taller de Sistemas MultiAgente

  • 1. Cómo programar un Agente: JADE, LEAP y JADEX Javier Carbó, Grupo de Inteligencia Artificial Aplicada Univ. Carlos III de Madrid Curso “SSII en el siglo XXI” Univ. Internacional Menendez Pelayo, Julio de 2008
  • 2.
  • 3.
  • 5.
  • 6.
  • 8. Protocolo: Secuencias de mensajes Gates Prensa Barajas PROPOSE USAToday, Corr. Sera Se mueve junto a prensa REQUEST register ... AGREE REFUSE INFORM-REF checkin INFORM gates, us citizen towards rome ACCEPT-PROPOSAL REJECT-PROPOSAL
  • 9.
  • 11.
  • 12.
  • 13. Un mensaje FIPA-ACL (inform :sender antagent :receiver bob martin :conversation_id example6 :reply_with 275 :reply_by wed 3pm :language lisp :content (target (project “1hour”) (platform “computer15”) (author “sean”)) (time “8/07/01 4pm”) (message “build failed”) (target “compile”) ) ) Intención (performative) Inform, Request, Failure, Refuse, ... Direccionamiento sender, receiver Coordinación de mensajes Respuesta esperada, id de diálogo Detailed action or request problem specific language, ontology, request
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20. Arquitectura JADE Network protocol stack using RMI JRE JRE JRE Jade Main -container Jade Agent Container Jade Agent Container Jade distributed Agent Platform DF Agent AMS Agent Application Agent Application Agent Application Agent Application Agent Application Agent Application Agent Host 1 Host 2 Host 3 Application Agent Application Agent
  • 21.
  • 22.
  • 23.
  • 24. Dentro de un Agente Agent Communication Language Agente Seve dispatch loop Ontology Profile Preferences Facts Rules Models Behaviour Behaviour Behaviour Agente Olazábal Seve: Golf course Course: Play Cancel Messages: Augusta (propose (course augusta … start cancel
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35. Tipos de Comportamientos JADE Behaviour action() done() Simple Behaviour CompositeBehaviour <<protected>> preAction() <<protected>> postAction() <<protected>> bodyAction() addBehaviour() removeBehaviour() OneShotBehaviour Abstract class Abstract class - simple Abstract class – composes children; Finite State Machine done = true done = false CyclicBehaviour SequentialBehaviour <<protected>> bodyAction() ParallelBehaviour <<protected>> bodyAction() FSMBehaviour <<protected>> bodyAction()
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 52. Ejecución de LEAP en móviles/PDAs
  • 53. Ejecución de LEAP en móviles/PDAs
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 60.
  • 61. Ejecución desde el interfaz de jadex
  • 62.
  • 63. La definición xml de un agente Jadex
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69. Deseos ( goals ) de un agente jadex
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.