Inteligencia Artificial
(30223)
Lección 11. Arquitecturas de
pizarra. Sistemas multiagente
Curso 2012-2013
José Ángel Bañares
6/11/2013. Dpto. Informática e Ingeniería de Sistemas.
Objetivo
– Soluciones que se plasman en arquitecturas software
Índice
–
–
–
–
–
–
–
Conocimientos estrategicos/control
Modelos de control
Tipos de arquitecturas
Técnicas de comunicación
Agentes Inteligentes
– Características de los agentes
– Autonomía
– Inteligencia
– Sistemas multiagentes/Arquitecturas cooperativa
– Habilidades sociales
– Movilidad
Comunicación entre agentes
– Lenguajes de Comunicación (KIF, KQML, Speech-Acts)
– Protocolos
FIPA (Foundation for Intelligent Physical Agents )
Conocimientos estratégicos/control
• La función básica del control en los SBC:
– Manejar los conocimientos del dominio de manera que
facilite y gestione su aplicación.
• NO es suficiente con conocimiento y capacidad de
inferencia.
• Hay que manejar los conocimientos y las inferencias
como lo haría un experto en el dominio.
– Se precisa capacidad de aplicar las mismas estrategias,
resolver las excepciones con los mismos criterios, reflejar las
incertidumbres que afectan al razonamiento.
Componente de control
• Componente de control de un SBC
– Los criterios necesarios para decidir cómo aplicar los
conocimientos del dominio durante la resolución del
problema.
– Qué conocimientos se deben utilizar en cada momento
– Cómo razonar sobre ellos
• Dónde empezar y terminar el proceso de razonamiento
• Resolver conflictos que puedan aparecer
• Evaluar soluciones alternativas
• Determinar cuando están resueltos determinados subproblemas
• Decidir si se interrumpe la resolución de un subproblema y se
comienza la resolución de otro
– Qué datos usar como entrada
Tareas típicas del control
Base de conocimientos
Componente de control
Base de conocimiento 1
(a^b => c)
(a^f => n)
(-b
Seleccionar un
subconjunto de reglas
=> u)
Seleccionar una base
de conocimiento
Desactivar una regla
Base de conocimiento 2
Seleccionar una jerarquía
Motor de inferencias
Seleccionar una meta
Resolver conflictos
Memoria de trabajo
(persona (nombre Juan))
(persona (nombre Pepe))
(vehículo (matricula Z1))
Seleccionar un modo
de inferencia
Detectar y seleccionar
una solución
Seleccionar un foco
de atención
Componente de control
• Componente control = motor inferencia +
módulo control
• El motor de inferencia:
– Es un programa de propósito general
– (demostrador lógico de teoremas, un equiparador de patrones,
procedimientos de búsqueda en redes, etc.)
– No es capaz de resolver los conflictos que surjan, ni de
identificar soluciones o establecer metas.
• El módulo de control:
– Incorpora una estrategia de resolución de problemas
especialmente seleccionada para el tipo de problemas
Localización del componente de control
Bases de
conocimientos
Bases de
conocimientos
del dominio
Bases de
conocimientos
de control
Componente de
resolución de problemas
Motor de
inferencias
Memoria de
trabajo, base
de hechos
Módulo
de control
(estrategias)
Componente de control
• Implícito:
Integrado como parte del programa que implementa la estrategia de
control o estrategia de resolución del problema dentro del módulo de
control
•Explícito:
En algún lugar de las bases de conocimiento. Conocimiento de control o
metaconocimiento.
Tipos de control
• Según la forma de representar el conocimiento de
control:
– Control paramétrico: Característico del control de bajo nivel
– Parámetros que especifican informaciones relevantes para el control como
la prioridad de reglas
– Control declarativo: Representados de forma declarativa en
alguna base de conocimiento de control, o dentro de bases de
conocimiento del dominio.
– Sus decisiones suelen estar referidas a la elección de la estrategia de
resolución del problema. (metarreglas)
– Modelos de control: Modelos que facilitan resolver problemas
en los que no exista una estrategia de solución a priori.
– Ejemplo: Arquitecturas de pizarra
Modelos de control: Pizarra en el aula
Alumno
Alumno
Alumno
Alumno
Profesor
Pizarra
• Características para un buen funcionamiento:
• Pocos alumnos, con capacidades similares
• En una misma habitación, con buen conocimiento entre sí
• En el momento que se incumpla alguna de estas características toma
relevancia la pizarra
Modelos de control: Pizarra en el mercado de valores
Corredor
Corredor
Corredor
Corredor
Control
Pizarra
• Características de funcionamiento:
• Es innecesaria la reunión física de los actores
• Funciona aunque se modifique el comportamiento de los actores, se añadan o se
eliminen actores
• El papel del control es simplemente tramitar las operaciones y anotarlas
Modelos de control: Resolución del problema del puzzle
Persona
Persona
Persona
Pizarra
Persona
• Características de funcionamiento:
• Cada persona tiene piezas de un puzzle
• El rompecabezas puede resolverse en completo silencio
Modelos de control: Arquitectura de pizarra
Pizarra
FC
FC
FC
FC
• Necesidad del control
• Sólo puede actuar una FC cada vez
• La pizarra es una estructura de datos compartida
Control
Arquitecturas Cooperativas
• Arquitectura Cooperativa
– Una clase particular de arquitecturas multiagente
– Ideadas para facilitar la colaboración entre agentes
– Para resolver un problema común
– Para mejorar la eficacia de cada uno en la tarea que tenga encomendada
– Los componentes básicos que forman la arquitectura de un
sistema cooperativo, distribuido o no, son:
– Un coordinador de actividades a realizar
– Un comunicador para intercambiar información entre módulos
– Un sistema de mantenimiento de la verdad distribuido para garantizar que
todos los sistemas son consistentes en los puntos en los que se requiere
cooperación.
Tipos de arquitecturas
• Arquitecturas con coordinación asistida
– Los agentes delegan funciones a programas especiales para
conseguir la comunicación
• Arquitecturas con comunicación directa
– Los agentes manejan su propia coordinación
Con coordinación asistida
• EL modulo principal es el coordinador
– El IC define el comportamiento del coordinador en función de las
características del problema
– Consta de:
– Un planificador que descompone un problema en subproblemas mutuamente
independientes (Planning)
– Un asignador que distribuye las tareas a realizar entre los agentes subordinados
(Scheduling).
– Garantiza que los agentes que forman el sistema cooperativo trabajan
conjunta y eficientemente
– a) Conoce la función que realiza cada uno de sus agentes subordinados y sus
capacidades
– b) Dispone de un plan de control con los planes a realizar, dependencias entre ellos, y
su secuenciamiento
– c) Se asegura de que los subplanes se finalizarán lo antes posible
– d) Una vez que la tarea se ha distribuido es necesario sincronizar los agentes
subordinados, a menos que las tareas sean independientes.
Coordinación asistida con maestro
• El agente maestro (coordinador) está encargado de hacer el
plan y distribuir los subplanes a sus agentes “esclavos”, que
llevan a cabo la tarea y devuelven los resultados al maestro.
– Los agentes esclavos pueden comunicar entre sí
MAESTRO
Esclavo 1: P1
Esclavo 2: P2-1
Plan
de
Control
...
Esclavo n: P2-2
respuesta
P2-1
respuesta
solicitud
Esclavo-2
respuesta
P1
Esclavo-n
P2-1
t1
Esclavo-1
P1
P2-2
t2
t3
t4
En el instante t1
Coordinación asistida con negociador
• Los agentes que ejecutan los planes “negocian” con
el negociador para decidir cuál de ellos realiza el
subplan.
– El negociador decide, por ejemplo, en función del instante en el que
se realiza la solicitud, del nivel de ocupación de los agentes, y de la
organización jerárquica y temporal de los planes en el plan de
control, cuál es el más capacitado.
– Los agentes pueden comunicar entre sí.
rechazo P1
Esclavo-1
NEGOCIADOR
solicita P1
Plan
de
Control
solicitud
solicita P1-1
aceptación
respuesta
Esclavo-2
rechazo
P1
Esclavo-n
P2-1
t1
respuesta
solicita P2-
P2-n
t2
t3
2
t4
En el instante t1
Con comunicación Directa
• Ningún agente está encargado de realizar el plan
– Ventaja: No depende de la existencia, capacidades o influencias de otros
programas
– Inconveniente:
• Elevado coste si el número de agentes es elevado.
• Cada agente debe contener todo el código necesario para la negociación
– Dos modelos de comunicación directa:
• La aproximación de red de contrato
Los agentes que necesitan servicios distribuyen peticiones de
propuestas a otros agentes. Los receptores evalúan y presentan
ofertas a los emisores de peticiones.
• La compartición de especificaciones
Los agentes suministran a otros agentes información sobres sus
capacidades y necesidades. Estos agentes pueden usar esta
información para coordinar sus actividades. Se disminuye
enormemente la cantidad de información que fluye entre agentes.
Comunicación directa cooperativa
• Aunque ningún agente está encargado del plan, sí
existe un objetivo común que es compartido por todos
los agentes.
petición
Agente-2
respuesta
Objetivo
Agente-1
petición
Objetivo
El agente-1 solicita servicios
de los agentes 2 y 3, los
cuales envían sus ofertas
respuesta al agente-1.
El agente 2 solicita sus
servicios al agente-3
Agente-3
respuesta
Objetivo
petición
Comunicación directa anárquica
• No existe un objetivo común compartido
petición
Agente-2
respuesta
Objetivo-2
Agente-1
petición
respuesta
Objetivo-1
Agente-3
respuesta
Objetivo-3
petición
Técnicas de comunicación
• Existen diferentes técnicas para llevar a cabo la
comunicación directa entre agentes
– Implementar en cada agente un módulo que soporte la negociación.
– Cada agente conocerá los servicios ofertados por los otros (bien mediante un modelo
de red de contrato o de compartición de especificaciones).
– La técnica de paso de mensajes permite solicitar servicios conocidos de otros agentes.
– Utilizar una estructuras de conocimientos compartida en la que se
anotan mensajes
– A los agentes les es imposible conocer los servicios ofertados por otros agentes.
– La ejecución global consiste en una ejecución asíncrona de cada módulo
Sistemas Multiagentes: Definiciones de Wooldridge
• Un
agente
es
un software capaz de acciones
independientes en representación de su propietario o
usuario (comprendiendo las necesidades que tienen
que ser satisfechas para satisfacer sus objetivos de
diseño,
en
lugar
de
recibir
instrucciones
constantemente).
• Un sistema multiagente consiste en un conjunto de
agentes que interaccionan entre ellos. En el caso más
general en representación de usuarios con diferentes
motivaciones y objetivos. Par conseguir interaccionar
con éxito deben cooperar, coordinarse y negociar,
como hace la gente.
Diseño de Agentes, Diseño de sociedades
• Se cubren dos aspectos claves:
– ¿Cómo construir agentes independientes, capaces de acción
autónoma, que puedan llevar a cabo tareas que les
encarguemos?
– ¿Cómo construir agentes capaces de interaccionar (cooperar,
coordinar, negociar) con otros agentes para llevar a cabo las
tareas que se les han encargado, especialmente cuando los otros
agentes no comparten los mismos intereses (objetivos)?
– El primer aspecto es diseño de agentes, el segundo diseño de
sociedades (micro/macro)
• Características de los agentes
– Autonomía, Inteligencia, SMA, Habilidad social, movilidad
I Primera característica
• Los agentes son:
Entidades autónomas
• Autonomía
– Pueden trabajar sin la intervención directa del usuario y
tienen cierto control sobre sus acciones y estado interno
• Reactividad
– Pueden percibir su entorno (que puede ser el mundo físico, un
usuario detrás de una interfaz gráfica o vocal, aplicaciones en
la red, u otros agentes) y responder oportunamente a
cambios que se produzcan en el mismo
• Iniciativa
– El comportamiento de los agentes está determinado por los
objetivos (metas) que persiguen y por tanto pueden producir
acciones no sólo como respuesta al entorno
II Segunda Característica
• Los agentes tienen:
Inteligencia
• Razonamiento
– Un agente puede decidir:
– qué objetivo perseguir o a qué evento reaccionar
– cómo actuar para conseguir un objetivo
– o suspender o abandonar un objetivo para dedicarse a otro
• Aprendizaje
– El agente puede adaptarse progresivamente a cambios
en entornos dinámicos mediante técnicas de aprendizaje
III Característica de los agentes
• Los agentes no actúan solos, sino como:
Sistemas Multi-Agentes
• Resolución de problemas mediante la estrategia divide y
vencerás
– Reparto de responsabilidades-Identificar Roles
• Heterogeneidad
– Especialización.
– Marco para la integración de Bases de conocimiento heterogéneas
especializadas en tareas
– Para abordar la interoperabilidad surgen roles (P.e. desde el punto de
vista de la definición de arquitecturas software surgen
agentes/componentes Middle agents, Mediators, Avatars, interface
Agents,...)
• Concurrencia y Distribución
– Flexibilidad, escalabilidad, tolerancia a fallos, gestión de recursos
– Distribución del conocimiento
– Diferentes arquitecturas de control, con coordinador, sin coordinador,
...
IV Cuarta característica
• Los agentes tienen:
Habilidad Social
• Interacción
Diálogo
• Delegación
Asignar la realización de tareas
• Cooperación
Trabajo en común para lograr un objetivo común
• Coordinación
Organizar el proceso de solución del problema de forma que se
eviten interacciones nocivas y que se exploten las beneficiosas
• Negociación
Formular un acuerdo que sea aceptable por todas las partes
implicadas.
Conversaciones entre agentes
• Coordinación
– Modelo de comunicación (ejemplo: Linda: modelo de
comunicación ortogonal a los modelos de computación)
• Lenguaje de comunicación
– Contenido del mensaje
• Conversación
– Intercambio de mensajes
• Protocolo
– Conversación válida
– Se definen protocolos de negociación, subasta, ... que
intercambian mensajes en un lenguaje común.
Comunicación entre agentes
Coordinación
• La comunicación es la base para las interacciones y la
organización social de los agentes
• Interacciones
– Hay interacciones cuando la dinámica de un agente está
perturbada por las influencias de otros [O. Boissier, 2001]
– Las interacciones son el motor de los SMA
•
Distintas formas de interaccionar
–
–
–
–
•
...
Acciones sobre el entorno
Pizarra compartida
Inferencias
Paso de mensajes
Comunicación mediante el entorno
• Ejemplo: robots distribuidos [Steels 89]
Problema
Un conjunto de robots tienen que recoger
piedras preciosas (cuya localización no se
conoce de antemano) y llevarlas a una nave
nodriza
• La comunicación se realiza a través del
entorno:
– Campo gradiente de la señal generada por
la nave nodriza
– Partículas radioemisoras que pueden
recoger, echar y detectar los robots al pasar
Coordinación
Sistema de pizarra
Coordinación
• Pizarra: Memoria compartida que permite a los
agentes compartir todo tipo de información
• Un sistema multiagente puede tener varias pizarras
con distintos agentes registrados en cada una
• No hay comunicación directa entre agentes
Sistema de pizarra
Coordinación
• Los sistemas más avanzados incorporan nuevos conceptos:
– Moderador. Agente especializado con conocimiento de control y de
evaluación que publica en la pizarra los subproblemas a resolver y
decide a qué agentes se asignan de entre aquellos que se han ofrecido
a resolverlos
– Despachador. Agente que avisa a los agentes afectados por algún
cambio producido en la pizarra
Sistema de pizarra
Coordinación
• Pros: Método flexible de comunicación para la resolución
distribuida de problemas
– Son independientes de la estrategia de cooperación que se
vaya a utilizar y no afectan a la arquitectura de los agentes
individuales
• Contras: la estructura central de la pizarra representa un cuello
de botella, ya que todos los agentes distribuidos por una red se
ven obligados a acceder al dispositivo central donde se encuentra
la pizarra
– Space based solutions => Pizarras/Espacios de tuplas distribuidos
Interacción sin comunicación!!!!
Coordinación
• Inferencia de acciones de otros agentes
– Ejemplo: utilización de la teoría de juegos con
matrizes de ganancia
Dilema del prisionero
Dos hombres son acusados de un crimen y encerrados
en celdas separadas. No pueden comunicarse ni llegar a
acuerdos. A los dos hombres se les dice
– Si uno de los dos confiesa el crimen y el otro no, el confesor será
liberado, y el otro condenado a tres años.
– Si los dos confiesan, ambos serán encarcelados durante dos años.
– Si ninguno confiesa, ambos serán encarcelados durante un año.
Interacción sin comunicación
Coordinación
• ¿cuál es la mejor estrategia?
– Teorías de juegos....
Matriz de ganancia
Rechazo coop
Rechazo
2
coop
2
0
5
5
0
Consideramos no
confesar como
cooperar, y confesar
como rechazar la
cooperacion.
3
3
Los números no indican
los años sino lo bueno
que es para los agentes
Coordinación:
Modelo de Comunicación Generativa
• Generative Communication:
Linda, Java Spaces
Client
Client
[mobile_1, lat, long]
Client
Client
Client
Coordinación
Coordinación: Modelo de Comunicación Generativa
• Generative Communication
Client
Client
Write[mobile_3, lat, long]
[mobile_3, lat, long]
[mobile_1, lat, long]
Client
Client
Client
Coordinación
Coordinación: Modelo de Comunicación Generativa
• Generative Communication
Client
Client
[mobile_3, lat, long]
[mobile_1, lat, long]
Client
Read[mobile_3, ?, ?]
Client
Client
Coordinación
Coordinación: Modelo de Comunicación Generativa
• Generative Communication
Client
Client
[mobile_3, lat, long]
[mobile_1, lat, long]
Client
Client
[mobile_3, lat, long]
Client
Coordinación
Coordinación: Modelo de Comunicación Generativa
• Generative Communication
Client
Client
[mobile_3, lat, long]
[mobile_1, lat, long]
Client
Client
[mobile_3, lat, long]
Take[mobile_3, ?, ?]
Client
Coordinación
Coordinación: Modelo de Comunicación Generativa
• Generative Communication
Client
Client
[mobile_1, lat, long]
Client
Client
[mobile_3, lat, long]
Client
[mobile_3, lat, long]
Coordinación
Coordinación: Modelo de Comunicación Generativa
• Generative Communication
Take[mobile_3, ?, ?]
Client
Client
Write [mobile_3, lat, long]
[mobile_3, lat, long]
[mobile_1, lat, long]
Client
Client
[mobile_3, lat, long]
Client
[mobile_3, lat, long]
Coordinación
Coordinación: Modelo de Comunicación Generativa
• Generative Communication
[mobile_3, lat, long]
Client
Client
[mobile_1, lat, long]
Client
Client
[mobile_3, lat, long]
Client
[mobile_3, lat, long]
Coordinación
Comportamiento reactivo
Client
Client
[mobile_3, ?, ?]
[mobile_1, lat, long]
Client
Client
Subscribe[mobile_3, ?, ?]
Client
Coordinación
Comportamiento reactivo
Client
Client
[mobile_3, ?, ?]
[mobile_3, lat, long]
[mobile_1, lat, long]
Client
Publish[mobile_3, lat, long]
Notify
Client
[mobile_3, lat, long]
Client
Coordinación
Comportamiento reactivo
Publish[mobile_3, lat, long]
Client
Client
[mobile_3, ?, ?]
[mobile_3, lat, long]
[mobile_3, lat, long]
[mobile_1, lat, long]
Notify
Client
Client
[mobile_3, lat, long]
Client
[mobile_3, lat, long]
Lenguaje Comunicación
Comunicación entre Agentes
• Lenguajes de comunicación de agentes
Basados en la teoría de actos del habla
– KQML
– FIPA ACL
• Algunos autores consideran que la capacidad de
comunicarse en un lenguaje de agentes es suficiente
para considerar a un software como agente
Lenguaje Comunicación
Comunicación a nivel del conocimiento
• Los agentes se comunican para
– Mostrar a otros agentes su estado mental
– Intentar modificar el estado mental de otros agentes
Lenguaje Comunicación
Actos del habla (Speech acts)
• Language as Action
– J.L. Austin (1962), How to do things with words,
Clarendon Press
La lingüística tradicional intentaba entender el significado de
las frases indicando cómo es posible usar una combinación de
palabras para hacer una declaración con significado
– Los actos del habla hacen referencia a las acciones
intencionales en el curso de una conversación
Lenguaje Comunicación
Actos del habla (Speech acts)
Language as Action
– J.L. Austin (1962), How to do things with words,
Clarendon Press
• Quien habla no declara solamente sentencias ciertas o
falsas
• Quien habla realiza actos de habla (performativa):
peticiones, sugerencias, promesas, amenazas,
etc.
• Cada declaración es un acto de habla
Lenguaje Comunicación
Tipos de actos del habla
• J.R. Searle (1969), Speach Acts, Cambridge University
Press
• Actos asertivos: dan información sobre el mundo
– Estoy de acuerdo
2 y 2 son 4
Estamos en clase
• Actos directivos: para solicitar algo al destinatario
– Siéntate
¿Cuántas pesetas son un euro?
• Actos de promesa: comprometen al locutor a realizar ciertas
acciones en el futuro
– Mañana vuelvo a las 8
Te enviaré las fotos
• Actos expresivos: dan indicaciones del estado mental del locutor
– Soy feliz
Gracias
Siento lo de tu perro
• Actos declarativos: el mero hecho de la declaración es la
realización de un acto
– Estás contratado
Empezamos la clase
Lenguaje Comunicación
Lenguajes de comunicación de agentes (Y. Labrou 2000)
History, State of the Art and Challenges for Agent Communication
Languages (2000)
Lenguaje Comunicación
Lenguajes de comunicación de agentes (Y. Labrou 2000)
Evolucion de Cliente/servidor a Mid
(Sistemas distribuidos)
+Web Services(W3C, Rest)
Lenguaje Comunicación
Lenguajes de comunicación de agentes (Y. Labrou 2000)
KSE: Knowledge Sharing Effort
Técnicas, metodologías, herramientas para compartir el conocimiento y
bases de conocimiento, en fases diseño, implementación y ejecución.
La idea central del KSE era que compartir información requiere comun
se centraron en definir un lenguaje común,
Lenguaje Comunicación
Lenguajes de comunicación de agentes (Y. Labrou 2000)
KSE identifica tres niveles:
•Intención: KQLM
•Conocimiento:KIF
•Ontología:Ontolingua
Lenguaje Comunicación
Lenguajes de comunicación de agentes (Y. Labrou 2000)
Los tipos de mensaje de ACL (Perform
De los actos del habla nos premiten de
creencias, deseos, intenciones.
FIPA estandariza “protocolos” a partir d
Performativas.
Lenguaje Comunicación
KQML
• Mensajes KQML
– Representa un acto de habla o performativa
– Consta de una lista de pares atributo-valor
performativa
(ask-one
:sender pepe
nivel
:content (PRECIO TELEFONICA ?precio)
:receiver servidor-bolsa
nivel de
:reply-with accion-telefonica
:language LPROLOG
:ontology IBEX
de contenido
comunicaciones
)
nivel de mensaje
Lenguaje Comunicación
KQML
• Mensajes KQML
La respuesta al anterior:
(tell
:sender servidor-bolsa
:content (PRECIO TELEFONICA 19)
:receiver pepe
:in-reply-to accion-telefonica
:language LPROLOG
:ontology IBEX
)
Lenguaje Comunicación
Performativas de KQML
Arquitectura Abstracta FIPA
• Foundation for Intelligent Physical Agents
– Consorcio industrial fundado en 1996
– Varias decenas de compañías de telecomunicaciones e informática
http://www.fipa.org
•
Objetivos
– Acelerar el desarrollo de tecnologías de agentes inteligentes mediante
la producción de especificaciones acordadas internacionalmente
• Especificación del comportamiento y capacidades externas de
subsistemas genéricos: recursos de agentes (para migración,
ejecución, etc.), interacción y cognitivos
– las especificaciones estarán basadas en casos prácticos concretos
– Agentes, multi-agentes, y sociedades de agente
– Selección y adaptación de tecnologías existentes
Negociación
FIPA ACL
• Las conversaciones entre agentes suelen seguir unos ciertos
patrones, secuencia típicas de mensajes: protocolos de
conversación
• Un agente informa del protocolo que quiere usar mediante el
parámetro :protocol
• Protocolos básicos definidos por FIPA:
• FIPA-request
• FIPA-query
• FIPA-request-when
• FIPA-contract-net
• FIPA-iteraterated-contract-net
• FIPA-auction-english
• FIPA-auction-ducth
FIPA ACL
Negociación(Conversaciones)
V característica
• Los agentes pueden tener:
Movilidad
• Agentes móviles
– Capacidad de Migrar de un nodo a otro en una red
preservando su estado en los saltos entre nodos
• Múlti-acceso y multi-modal
– Navegador
– Email
– Servicio vocal
Clasificación de Agentes (M. Wooldridge, 1999)
Aplicaciones
Servicios de información en Internet
Recuperación y extracción de información
Comercio electrónico
Mercado de servicios electrónico
Negociación
Equipos móviles y PCs en el hogar
Redes públicas de telecomunicaciones
Provisión de servicios bajo demanda
Descentralización del control y gestión de redes
Grid Computing
Gestión de procesos (workflow)
Simulación de sistemas dinámicos
Juegos (bots )
Robótica
Etc.
Personalización
de servicios
Flexibilidad de
la distribución
Delegación
de tareas
Conclusiones: Definición SMA Juan Pavón
Los sistemas multi-agentes que consideramos constan de:
1. Un middleware para soportar la comunicación entre los
agentes y con sistemas propietarios
– Sobre este middleware es posible utilizar herramientas basadas en
estándares de comunicación entre agentes como FIPA ACL o KQML, o
definir interfaces específicas para cada agente con un lenguaje como
OMG IDL, o WSDL.
2. Agentes, de diversos tipos, que cooperan para proporcionar
servicios inteligentes a los usuarios.
3. Recursos que pueden estar gestionados por agentes o por
algún sistema propietario
– Puede tratarse de un servidor Web, una base de datos, un servidor de
correo, un sistema de gestión de procesos de negocio, dependiendo
del entorno de la aplicación.
Objetos vs Agentes
Objetos
• Ejecuta los métodos
invocados
• Flujo de control del llamante
• Encapsula estado y
comportamiento
• Estado: valor de variables
• Comportamiento: salida a
partir de una entrada
• Mensajes invocan
procedimiento
• Asociaciones entre objetos
Agentes
• Autonomía de decisión
• Flujo de control propio
• Encapsula la activación del
comportamiento
• Estado mental: objetivos,
creencias, ...
• Comportamiento: cómo
decidir lo que hacer
• Interacciones: actos de
habla (intencionalidad)
• Organización: relaciones
sociales entre agentes
OJO, la frontera es difusa...
Sistemas Expertos vs Agentes
Sistemas Expertos
• Sistemas cerrados
Agentes
• Interactúan con el entorno
• Sistemas de decisión
centralizados
• Distribución de la toma de
decisiones:
– Comportamiento
emergente
• Interacción con el usuario
bajo petición del usuario
• Mayor grado de interacción
con el usuario
• Interacción con otros
agentes
OJO, la frontera es difusa...
• La contribución de los sistemas multi-agentes
– Trasladan las fases y los protocolos de interacción entre
agentes/entidades a la Web
Cliente servicio
Proveedor
de servicio
mensajes SOAP
mensajes SOAP
(para buscar servicios)
descripciones de servicio
(WSDL)
registro UDDI
mensajes SOAP
(para publicar descripciones
de servicios)
protocolo
descripción de objetivos
Objetivo
del cliente
Proceso
Proveedor
Proceso
Cliente
Descubrimiento
servicios
Candidatos
Servicios
Servicios
Servicios
Candidatos
Candidatos
Candidatos
Interacción con
Servicios de
registros
Caracterización
abstracta del
servicio
candidato
Caracterización del
servicio requerido
Objetivo
del
Proveedor
Servicio
Publicado
Protocolo de
búsqueda de
servicio
Acoplamiento
Negociación
con candidatos
y acuerdo
Servicio de negociación
Del contrato
Servicios
Seleccionado
y acuerdos
Ejecución
Monitorización
y ejecución del
servicio
Servicio de
iniciación
Servicios
acordado
Servicio de
monitorizac
ión
Terminación y
compensación
La Interoperabilidad en el Futuro
Los Servicios Web hoy ...
• Desde el punto de vista del programador
A BRIEF HISTORYOF ARTIFICIALINTELLIGENCE
http://www.atariarchives.org/deli/artificial_intelligence.php
La Interoperabilidad en el Futuro
Componente
Software
Componente
Software
La Interoperabilidad en el Futuro
Componente
Software
Componente
Software
La Interoperabilidad en el Futuro
Componente
Software
Componente
Software
Incrementar conectividad del conocimiento & Razonamiento
Agentes Web que conocen,
aprenden y razonan como los humanos
Artificial Intelligence
IntelligentAgents
Personal Assistants
3
SemanticWebiste
& UI
La Web Semántica
Conecta Conocimiento
Ontologies
SemanticSearch
Thesaurus&
Taxonomies
Knowledge Bases
Semantic
Desktop
Natural
Language
Blogets
Semantic
Blog
Bots
Enterprise Portals
SearchEngines
Web sites
1
La Web
Conecta Información
Blogs
File Servers
“Push
Publish& Subscribe
”
P2P file sharing
Semantic
Wiki
Semantic
email
Wiki
Email
Semantic
Social Network
Multi-user
Gaming
Conferencing
Community
Portals
Marketplaces
&auctions
Social
2
La Web Social
Conecta Gente
RSS
PIMS
SemanticAgents
Smart Ecosystems
Markets
Semantic
Communities
4
La Web Ubicua Semantic
Enterprise
Conecta Inteligencia
Mash-up
ContentPortals
Databases
Autonomic
Intellectual
Property
Bookmarking
Social network
Instantmessages
Incrementar conectividad Social
Project10X’s Semantic Wave 2008 Report: Mills Davis, Managing Director, Project 10X
www.project10x.com
Referencias
• Cursos sobre agentes
– Agentes Inteligentes de la Universidad Complutense de Madrid
del profesor Juan Pavón Mestras
– http://www.fdi.ucm.es/profesor/jpavon/doctorado/
– Material en Agentcities.es
– http://grusma2.etse.urv.es/AgCitES/index.htm
• Plataforma de desarrollo de agentes acorde FIPA
– JADE: http://jade.tilab.com/
Libros sobre sistemas multi-agentes
An Introduction to Multiagent Systems by
Michael Wooldridge. Published in February
2002 by John Wiley & Sons (Chichester,
England). ISBN 0 47149691X.
340pp approx; includes bibliographical
references and index.
Título: Agentes software y sistemas
multiagente Subtítulo:
Conceptos,arquitecturas y aplicaciones
ISBN: 84-205-4367-5 Autor: Juan
Pavón, José L. Pérez de la Cruz Molina
Págs: 352 P.V.P: 28 Euros aprox
A new authoriy on Multi-Agent Systems
Service-Oriented Computing: Semantics,
Processes, Agents (Hardcover)
by Munindar P. Singh, Michael N. Huhns
INTELIGENCIA
ARTIFICIAL
(30223) Grado en Ingeniería Informática
lección 11. Arquitecturas de pizarra.
Sistemas Multiagente.
Descargar

capitulo 1