Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Multi-Agente
Curso de doctorado 2001-02:
Agentes Software
Introduccin
n
Hemos visto
n
n
n
n
n
Pero,
cmo se construye un sistema multiagente?
(2)
Tendencias
n
Orientacin a objetos:
estructura del sistema
asignacin de responsabilidades
Sistemas expertos
definicin del comportamiento
representacin de conocimiento
(3)
Tendencias
n
(4)
Consideraremos agentes
n
n
n
n
n
Movilidad
Seguridad
Fiabilidad
aunque son altamente relevantes, especialmente en la
implantacin
y estn bastante ligados a la plataforma
(5)
n
n
(6)
Modelo de agente
n
n
Modelo de organizacin
n
Modelo de interaccin
n
Modelo de entorno
n
(7)
Modelo de agente
n
Agente
n
<<plays>>
Role
(8)
Meta-modelo de agente
<<Object >>
Agente
<<Object >>
Entidad Autnoma
<<Relationship >>
ATieneGestorEM
<<Relationship >>
WFJuega
<<Property>>
Identidad
<<Role>>
WFResponsableO
<<Relationship >>
GTPersigue
<<Object >>
GestorEstadoMental
<<bind>>
<<Relationship >>
ATieneEM
<<Object >>
Rol
<<Object >>
Objetivo
<<Object >>
EstadoMental
<<Relationship >>
WFResponsable
<<Relationship >>
ATieneProcesadorEM
<<Object >>
Tarea
<<Object >>
EntidadMental
<<Relationship >>
GTAfecta
<<Object >>
ProcesadorEstadoMental
Anlisis y Diseo de MAS
(9)
Objetivo
Rol
Tarea
Satisface
Evidencia
Produce
Interaccin
Satisface
Tarea
Rol
Quieren satisfacer
Agente
Juan Pavn Mestras , UCM 2001-02
Objetivo
( 10 )
n
n
Objetivo
<<activa>>
Tarea
( 11 )
Pendiente
refinamiento
Refinado
comienza ejecucin de tarea
Resolvindose
Evidencia de xito
Satisfecho
Evidencia de fallo
Fallo
( 12 )
<<Object>>
Tarea
2..n
<<Relationship>>
GTDescompone
<<Object>>
Objetivo
<<Relationship>>
GTDepende
1
1..n
2..n
<<Relationship>>
GTDepende
<<Relationship>>
GTDependeY
<<Relationship>>
GTDependeO
( 13 )
+RGTAfectaD
<<Relationship>>
GTAfecta
<<Object>>
Entidad Mental Control
<<Relationshi...
GTModifica
<<Relationship>>
GTDestruye
<<Relationship>>
GTCrea
<<Object>>
Tarea
<<Object>>
Objetivo
<<Relationship>>
GTAfectaObjetivo
<<Propert...
Evidencias
<<Object>>
Patron Estado Mental
<<Relationshi...
WFPersigue
<<Relationshi...
GTPersigue
<<Relationship>>
GTSatisface
<<Role>>
RGTAfectaObjetivoD
<<Relationship>>
GTFalla
<<Role>>
RWFPersigueO
<<Object>>
Entidad Autonoma
<<Objec...
Agente
<<Objec...
Agente
<<Objec...
Rol
<<Object>>
Objetivo
<<Object>>
Organizacion
( 14 )
<<Object>>
Aplicacion
<<Object>>
Recurso
<<Object>>
Entidad Mental
<<Role>>
RWFUsaD
<<Relationshi...
WFConsume
<<Relationshi...
WFUsa
<<Object>>
Tarea
<<Relationship>>
EAfectaAgente
<<Role>>
REAfectaEntidadAgenteD
<<Object>>
Rol
<<Objec...
Agente
<<Relationshi...
WFProduce
<<Role>>
RWFProduceD
<<Object>>
Entidad Mental
<<Object>>
Interaccion
<<Object>>
Recurso
( 15 )
Modelo de interaccin
n
Se
de
Se
de
( 16 )
Notacion
(from Meta-modelo de interaccion)
+ Notacion AUML
+ Notacion GRASIA
+ Notacion UML
Naturaleza
(from Meta-modelo de interaccion)
+ Competicion
+ Cooperacion
+ Coordinacion
+ Negociacion
+ Planificacion
+ Planificacion centralizada
+ Planificacion distribuida
Ejecucion
(from Meta-modelo de interaccion)
+ Bifurca
+ Precede
+ UIColabora
+ UIInicia
<<Object>>
Interaccion
Contexto
(from Meta-modelo de interaccion)
+ Estado Mental Ejecucion
+ IColabora
+ IInicia
+ IPersigue
+ Patron Estado Mental
+ Patron Estado Mental AOP
+ Patron Estado Mental GRASIA
+ Patron Estado Mental No Simbolico
determina las
condiciones en que se
desarrolla la interaccion
( 17 )
Meta-modelo de interaccin
<<Property>>
Naturaleza
<<Graph>>
Especificacion
1..n
<<Object>>
Interaccion
<<Relationship>>
IPersigue
<<Object>>
Objetivo
<<Relationship>>
IColabora
<<Relationship>>
IInicia
<<Role>>
RIColaboraD
<<Role>>
RIIniciaD
<<Object>>
Agente
<<Object>>
Rol
<<Relationship>>
WFPersigue
<<Relationship>>
GTPersigue
( 18 )
Modelo de interaccin
<<Interaction>>
StartingCustomerService
<<Role>>
CustomerAccessR
Customer
StartingCustormerServiceI
motivator
InitCustomerServicesG
(from Goal Model)
collaborator
<<Role>>
UserProfileManager
(from Roles)
( 19 )
Modelo de organizacin
n
Relaciones sociales
Relaciones de poder (p.ej. subordinacin) y cliente/servidor entre
agentes
Relaciones entre grupos
Relaciones entre organizaciones
Funcionalidad
Propsito
Tareas que debe realizar
( 20 )
10
Meta-modelo de organizacin
Definicin estructural
se define sobre
alcanza propsitos gracias a
Definicin funcional
Definicin social
( 21 )
Meta-modelo de organizacin:
Descripcin estructural
<<Object >>
Entidad Autnoma
<<Relationship >>
ODescomponeGrupo
<<Object >>
Organizacin
<<Relationship >>
OContieneOrganizacin
<<Relationship >>
OContieneFlujoTrabajo
<<Object >>
Grupo
<<Object >>
Flujo de trabajo
<<Relationship >>
OContieneGrupo
<<Relationship >>
ODescomponeFlujo
<<Role>>
ROContieneGrupoD
<<Object >>
Aplicacin
Juan Pavn Mestras , UCM 2001-02
<<Object >>
Recurso
<<Object >>
Agente
Anlisis y Diseo de MAS
<<Object >>
Rol
( 22 )
11
Meta-modelo de organizacin:
Descripcin funcional
<<Object >>
Flujo de trabajo
<<Graph >>
DescripcionFlujoTrabajo
<<Relationship >>
WFEjecuta
<<Relationship >>
WFConecta
<<Relationship >>
WFUsa
<<Relationship >>
WFDescompone
1..n
<<Relationship >>
WFResponsable
<<Object >>
Tarea
<<Relationship >>
WFConsume
<<Relationship >>
WFProduce
( 23 )
Meta-modelo de organizacin:
Descripcin funcional
Asignacin de tareas
<<Object >>
Tarea
<<Relationship >>
WFResponsable
<<Role>>
WFResponsableO
<<bind>>
<<Object >>
Rol
<<Relationship >>
WFJuega
<<bind>>
<<Object >>
Agente
( 24 )
12
Meta-modelo de organizacin:
Descripcin social
<<Object >>
Organizacin
<<Relationship >>
AGORelacion
<<Object >>
Agente
<<Relationship >>
AGOSubordinacion
<<Object >>
Rol
<<Object >>
Grupo
<<Relationship >>
AGOIncondicional
<<Relationship >>
AGOCondicional
<<Property>>
ObjetivosSatisfacibles
<<Property>>
CondicionSubordinacion
<<Object >>
Objetivo
Acciones toleradas
Duracin de la subordinacin
Estado mental invariante
<<Relationship >>
AGOClienteServidor
<<Object >>
PatronEstadoMental
Anlisis y Diseo de MAS
( 25 )
Modelo de entorno
n
Recursos
Elementos consumibles o no consumibles:
Descriptores de ficheros, hilos de ejecucin, memoria,
dispositivos de E/S, sockets, ancho de banda, etc.
Aplicaciones
Agentes
( 26 )
13
<<Object>>
Grupo
<<Object>>
Recurso
<<Role>>
RERecursoPerteneceD
Recurso
Consumible
<<Relationship>>
ERecursoPertenece
<<Property>>
Estado
<<Property>>
Umbral inferior
<<Object>>
ancho banda
<<Object>>
Recurso
<<Object>>
Dispositivo salida
<<Property>>
Umbral superior
<<Object>>
Recurso no consumible
<<Object>>
sockets
<<Object>>
Descriptores de ficheros
<<Object>>
Unidad almacenamiento
<<Object>>
Memoria
<<Object>>
Dispositivo entrada
<<Object>>
Hilos ejecucion
( 27 )
Meta-modelo de entorno:
Aplicaciones y percepcin
<<Property>>
parametro
0..n
<<Object>>
Aplicacion
1..n
<<Property>>
Operacion
<<Property>>
resultado
<<Object>>
SignaturaOperacion
<<Property>>
nombre_operacion
<<Property>>
Precondicion
<<Property>>
Operacion
<<Object>>
Agente
<<Property>>
Postcondicion
<<Relationship>>
EPercibe
<<Relationship>>
EPercibeNotificacion
<<Object>>
Aplicacion
<<Relationship>>
EPercibeMuestreo
<<Object>>
Aplicacion
<<Object>>
AplicacionEntorno
<<Object>>
AplicacionInterna
( 28 )
14
PHASES/ Iterations
PROCESS
COMPONENTS
Inception
preliminary Iter.
Elaboration
#1
#2
Construction
#n+1 #n+2 .
Transition
#m+1 #m+2
Requirement
capture
Analysis
Design
Implementation
time
Testing
Juan Pavn Mestras , UCM 2001-02
( 29 )
Requisitos funcionales
Qu servicios proporciona el sistema
Requisitos no funcionales
Parmetros de calidad de servicio
( 30 )
15
Identificar tareas
a priori
Asociar tareas
a objetivos
Identificar los roles que el agente
desempear y asociarlos al agente
( 31 )
Fin Anlisis
( 32 )
16
Anlisis
Identificar
la naturaleza de
la interaccion
Identificar los objetivos
que se persiguen
Fin Anlisis
Juan Pavn Mestras , UCM 2001-02
( 33 )
Diseo
Asociar tareas a
objetivos
Descomponer tareas
si fuera necesario
Descomponer objetivos
objetivos si fuera necesario
Establecer dependencias
entre objetivos
Refinar entidades
mentales consumidas
Determinar recursos
a consumir
Corregir el
modelo
Precondiciones y postcondiciones tentativas
Fin Anlisis
Fin Diseo
( 34 )
17
Diseo
Relaciones de
subordinacin
Generar miembros
del grupo
Identificar Flujos
de trabajo
Relaciones
cliente-servidor
Recursos
restituidos
Identificar tareas no
locales
Asociar
responsables
Generar representaciones computacionales
Actualizar modelo con requisitos
representaciones computacionales
Generar definicin social
Establecer relaciones
a nivel de grupo
Establecer relaciones a
nivel de agente o rol
Fin Diseo
Corregir el
modelo
( 35 )
Diseo
Identificar aplicaciones
Identificar aplicaciones
del entorno
Identificar aplicaciones
internas
Identificar agentes
del entorno
Asociar operaciones sobre las
aplicaciones
Asociar recursos,
aplicaciones y tareas
Asociar recursos a
agentes y grupos
Corregir el
modelo
Fin Diseo
Fin Diseo
( 36 )
18
( 37 )
4 niveles:
n
Control y gestin
Sincronizacin y coordinacin de las actividades de los
otros componentes
Percepcin y comunicacin
Gestin de las sesiones de comunicacin del agente con
Otros agentes
Usuarios
Sistemas propietarios (legacy systems)
Dominio
Recursos y elementos de informacin propios del dominio
de la aplicacin
Recursos
Recursos genricos de la plataforma de agentes
( 38 )
19
Bibliografa
n
[Odell et al. 00] Extending UML for Agents, James Odell, H. Van Dyke Parunak, Bernhard Bauer,
submitted paper, 2000. http://www.jamesodell.com/ExtendingUML.pdf
[UML] OMG Unified Modeling Language Specification Version 1.3, June 1999, Object Management
Group, Inc. http://www.rational.com/uml/resources/documentation/index.jtmpl
[Wooldrige et al. ] The Gaia Methodology for Agent-Oriented Analysis and Design, Wooldridge, M.,
Jennings, N. R., Kinny, D., Kluwer Academic Press
[Iglesias et al. 97] Analysis and Design of Multiagent Systems using MAS-CommonKADS, Carlos
Iglesias, Mercedes Garrijo, Jose Gonzalez and Juan R. Velasco, Intelligent Agents IV: Agent
Theories, Architectures and Languages, 1997, M. P. Singh, Anand Rao and M. J. Wooldridge, eds.
Lecture Notes in Computer Science 1365
[RUP] The Rational Unified Process: An introduction, Philippe Kruchten, pub. Addison Wesley.
( 39 )
20