reunión dammad

23
DAMMAD 7.3.2003 Reunión DAMMAD Grupo de Inteligencia Artificial Dpto. de Ciencias Experimentales e Ingeniería Universidad Rey Juan Carlos Diseño y Aplicación de Modelos Multiagente para Ayuda a la Decisión SKADS

Upload: thao

Post on 15-Jan-2016

49 views

Category:

Documents


0 download

DESCRIPTION

Reunión DAMMAD. Diseño y Aplicación de Modelos Multiagente para Ayuda a la Decisión. SKADS. Grupo de Inteligencia Artificial Dpto. de Ciencias Experimentales e Ingeniería Universidad Rey Juan Carlos. Jerarquía de áreas de conocimiento. Jerarquía de tareas. KSM. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Reunión DAMMAD

DAMMAD7.3.2003

Reunión DAMMAD

Grupo de Inteligencia ArtificialDpto. de Ciencias Experimentales e Ingeniería

Universidad Rey Juan Carlos

Diseño y Aplicación de Modelos Multiagente para Ayuda a la Decisión

SKADS

Page 2: Reunión DAMMAD

DAMMAD7.3.2003

Control de Flujo

R1: ... -> ... R2: ... -> ... R3: ... -> ...

... Rn: ... -> ...

Consulta Médica(Enfermedades de origen infeccioso)

Diagnosticar(Presencia de enfermedades)

Recomendar Terapia(Tratamientos)

Abstraer Síntomas(Estado del Paciente)

Identificar Causa(Cuadros Clínicos)

Identificar Causa(Efect. Secundarios)

Proponer(Trat. Enfermedades)

Flujo de Datos

Proponer(Trat. Síntomas)

Revisar(Efect. Secundarios)

KSM

• Jerarquía de áreas de conocimiento

• Jerarquía de tareas

Funcionalidad

- Recomendar - Aceptar

Enfermedades deorigen infeccioso

Presencia deenfermedades

Tratamientos

Estado delPaciente

CuadrosClínicos

Efectos Secundariosde Drogas

Tratamientos deEnfermedades

Tratamientos deSíntomas

Conocimiento

- Efect. Secund. - Trat. Enferm. - Trat. Síntom.

Vocabulario Conceptual

Page 3: Reunión DAMMAD

DAMMAD7.3.2003

Utilidades de representación

• Bases de conocimiento Primitiva de representación

Componente software con:• Técnica general de representación• Mecanismos de inferencia

• Conocimiento de control Formalización y ejecución de métodos de razonamiento:

Lenguaje Link

• Terminología común Formalización de vocabularios conceptuales: Lenguaje

Concel

Page 4: Reunión DAMMAD

DAMMAD7.3.2003

Construcción de la versión ejecutable

Area de Conocimiento

Area de ConocimientoArea de Conocimiento

Area de Conocimiento Area de Conocimiento Area de Conocimiento

Primitiva(Reglas)

Primitiva(Marcos)

Primitiva(Restricciones)

Page 5: Reunión DAMMAD

DAMMAD7.3.2003

Primitivas KSM

• Programadas en C++ (Marcos, Reglas, ...)• Métodos principales

Cargar Base de Conocimiento Ejecutar una Tarea

una misma primitiva puede propocionar varias tareas se pasan entradas + parámetros y devuelve salidas + estado

de control

• Tipos de datos intercambiados en KSM: Booleanos, enteros, reales, símbolos, listas, hechos

discretos, ... ArgBool, ArgInt, ArgReal, ArgSymbol, ArgList,

ArgDiscreteFact, ...

Page 6: Reunión DAMMAD

DAMMAD7.3.2003

Software SKADS

• Sobre plataforma (FIPA) de agentes JADE• JAVA• Las primitivas se encapsulan en agentes JADE

Integración de C++ y JAVA (JNI) Envoltorio de agente

• Las Bases de Conocimiento y Vocabularios Conceptuales se mantienen internos a cada agente, pero “ocultos” a la plataforma JADE.

• En la ontología JADE (para la comunicación entre agentes) sí se definen los tipos de datos de KSM

• Comunicación mediante ACL y protocolos FIPA• Se utiliza Protegé-2000 como editor de ontologías

Permite generar ontología JADE, CLIPS, RDF, etc.

Page 7: Reunión DAMMAD

DAMMAD7.3.2003

Area de Conocimiento Area de Conocimiento Area de Conocimiento

Primitiva(Reglas)

Primitiva(Marcos)

Primitiva(Restricciones)

Comunicación en FIPA ACL

Agentificación de KSM

Agente 1 Agente 2 Agente 3

Page 8: Reunión DAMMAD

DAMMAD7.3.2003

Protocolos de Comunicación

• Cargar BC Protocolo: FIPA-Request Request con acción “Cargar

BC” con fichero de BC y VC Si se carga sin errores => inform-done

Si algún problema => failure/not-understood

Page 9: Reunión DAMMAD

DAMMAD7.3.2003

Protocolos de Comunicación

• Ejecutar Tarea Protocolo: FIPA-Query Query-ref preguntando por

valor del resultado de ejecutar una tarea

Las entradas se admiten en formato de datos y en modo string

Si no hay errores => inform con el resultado + estado control

Si algún problema => failure/not-understood

Page 10: Reunión DAMMAD

DAMMAD7.3.2003

Ejemplo

• Mensaje para carga de BC(REQUEST

:sender ( agent-identifier

:name [email protected]:1099/JADE

:addresses (sequence IOR:00000 ))

:receiver (set ( agent-identifier

:name [email protected]:1099/JADE) )

:content "((action (agent-identifier

:name [email protected]:1099/JADE

:addresses (sequence IOR:00000))

(CargaBC1 :FicheroBC baseConocimiento.in

:FicheroVoc vocabulario.in :FicheroErrores errores.out)))"

:language FIPA-SL

:ontology KSM-Ontology

)

Page 11: Reunión DAMMAD

DAMMAD7.3.2003

Ejemplo

• Mensaje para Ejecutar Tarea(QUERY-REF

:sender ( agent-identifier

:name [email protected]:1099/JADE

:addresses (sequence IOR:0000000 ))

:receiver (set ( agent-identifier

:name [email protected]:1099/JADE) )

:content

"((iota ?x (EjecutaTarea1 match \"[['subcuenca Casasola',

'lluvia ultimas cuatro horas', 50],['embalse Casasola',

'porcentaje de llenado', 60]]\" ?x)))"

:language FIPA-SL

:ontology KSM-Ontology

)

Page 12: Reunión DAMMAD

DAMMAD7.3.2003

Ejemplo

• Resultado de la ejecución de la tarea(INFORM

...

:content "((= (iota ?x (EjecutaTarea1 match \"[['subcuenca Casasola',

'lluvia ultimas cuatro horas', 50],['embalse Casasola',

'porcentaje de llenado', 60]]\" ?x))

(ArgResult :Salidas (sequence (ArgList :Lista (sequence (ArgList

:Lista (sequence (ArgDiscreteFact :Objeto \"embalse Casasola\“

:Atributo gravedad

:ValorDiscreto (ArgSymbol :Simbolo nula)

:Certeza 100)))))

:reply-with [email protected]:1099/JADE1046964074662

:language FIPA-SL

:ontology KSM-Ontology

)

Page 13: Reunión DAMMAD

DAMMAD7.3.2003

Ejemplo

• Entradas[d-fact('NIII en PK_15070','velocidad','baja'),d-fact('NIII en PK_15070','ocupacion','alta'),d-fact('NIII en PK_15070','saturacion','baja'),d-fact('salida a Vertederos','ocupacion','alta'),d-fact('salida a Vertederos','saturacion','alta'),d-fact('NIII tras acceso a M40','velocidad','alta'),d-fact('NIII tras acceso a M40','ocupacion','baja'),d-fact('entrada desde M40','ocupacion','alta'),d-fact('entrada desde M40','saturacion','baja'),d-fact('salida a M30','velocidad','baja'),d-fact('salida a M30','ocupacion','alta'),d-fact('salida a M30','saturacion','media'),d-fact('NIII tras acceso a M30','velocidad','alta'),d-fact('NIII tras acceso a M30','ocupacion','baja'),d-fact('NIII tras acceso a M30','saturacion','baja')]

Page 14: Reunión DAMMAD

DAMMAD7.3.2003

Foto

Page 15: Reunión DAMMAD

DAMMAD7.3.2003

Reunión DAMMAD

Grupo de Inteligencia ArtificialDpto. de Ciencias Experimentales e Ingeniería

Universidad Rey Juan Carlos

Diseño y Aplicación de Modelos Multiagente para Ayuda a la Decisión

SKADS

Page 16: Reunión DAMMAD

DAMMAD7.3.2003

Reunión DAMMAD

Grupo de Inteligencia ArtificialDpto. de Ciencias Experimentales e Ingeniería

Universidad Rey Juan Carlos

Diseño y Aplicación de Modelos Multiagente para Ayuda a la Decisión

Gestión Autobuses

Page 17: Reunión DAMMAD

DAMMAD7.3.2003

Arquitectura basada en servicios

• El sistema está compuesto de agentes que proporcionan servicios: identificación de problemas, diagnosis, planificación,

estimación, datos (llegadas a paradas, averías, ...)

• Se anuncian/buscan en el DF (páginas amarillas)• Protocolos según cada servicio

Subcripción a llegadas de autobuses, ... Request para planificación de acciones, ...

Page 18: Reunión DAMMAD

DAMMAD7.3.2003

Arquitectura de agentes

AIA

TIA1

UIA

LMA1

LMA2

LMAn

DA

Bus Fleet Connection

ControlCentre

ExternalAgents

Bus Fleet Management

AMS DF ...TIA m

...

Page 19: Reunión DAMMAD

DAMMAD7.3.2003

Agentes

• Line Management Agents (LMA) Uno por línea Identificación de problemas, diagnosis, planificación y predicción Se subscribe a llegadas de autobuses, averías, ...

• User Interface Agent/s (UIA) Visualización de la localización de vehículos Visualización de problemas Interacción con usuario

• Data Agent (DA) Informa (mediante subscripción) de llegadas, saturación, averías

• Action Implementation Agent (AIA)• Otros:

FIPA Agents (AMS, DF) Traffic Information Agent (TIA)

Page 20: Reunión DAMMAD

DAMMAD7.3.2003

Ejemplo: descripción Info Datos

(service-description:name info-gathering-1:type information-gathering:protocol (set FIPA-Query FIPA-Subscribe):ontology (set BFM-Ontology):properties (set

(property:name events:value (set

(bus-arrival:lines (set L1 L2 L3))

(breakdown:lines (set L1 L2 L3))

(saturation:lines (set L1 L2 L3))

(demand:lines (set L1 L2 L3)):source historic)))

(property:name notification-mode:value instantaneous)))

Page 21: Reunión DAMMAD

DAMMAD7.3.2003

Descripción LMA

(service-description :name problem-identification-1 :type problem-identification :protocol (set FIPA-Request FIPA-Subscribe) :ontology (set BFM-Ontology) :properties (set (property :name problems :value (set individual-delay generalised-delay breakdown advance individual-saturation generalised-saturation) (property :name notification-mode :value instantaneous) (property :name lines :value (set L1))))

Page 22: Reunión DAMMAD

DAMMAD7.3.2003

Notificación de llegada a parada

(inform :sender (agent-identifier :name [email protected] :addresses (sequence iiop://foo.com/acc)) :receiver (set (agent-identifier :name [email protected] :addresses (sequence iiop://foo.com/acc)) (agent-identifier :name [email protected] :addresses (sequence iiop://foo.com/acc)) (agent-identifier :name [email protected] :addresses (sequence iiop://foo.com/acc)) (agent-identifier :name [email protected] :addresses (sequence iiop://foo.com/acc))) :language FIPA-SL :protocol FIPA_Subscribe :ontology BFM-Ontology :content (Arrival :bus b1 :stop s1 :time (Time :hh 9 :mm 41)))

Page 23: Reunión DAMMAD

DAMMAD7.3.2003

Reunión DAMMAD

Grupo de Inteligencia ArtificialDpto. de Ciencias Experimentales e Ingeniería

Universidad Rey Juan Carlos

Diseño y Aplicación de Modelos Multiagente para Ayuda a la Decisión

Gestión Autobuses