Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Agent Es Movi Les
Agent Es Movi Les
Agentes Inteligentes
Agentes Mviles
Juan Pavn Mestras
Dep. de Sistemas Informticos y Programacin
http://grasia.fdi.ucm.es
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 2
Estructura
Conceptos y
Ejemplos de
aplicacin
Tecnologa:
Java
Requisitos de
Sistema de
Agentes Mviles
Evaluacin de
sistemas
Arquitectura de
Sistema de
Agentes Mviles
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 3
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 4
Conceptos
Agente Mvil
Entidad
autnoma
proactiva
y reactiva
Capacidad de
migrar por nodos
de una red de
computadores
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 5
Conceptos
Agentes mviles y Agentes inteligentes
Los agentes inteligentes son capaces de ofrecer un
comportamiento inteligente: razonamiento, planificacin,
aprendizaje, etc.
Los agentes mviles (AM) tienen la capacidad de moverse
por distintos nodos de una red (una o ms veces)
Para la comunidad de IA la movilidad no es un atributo de los
agentes
Para la comunidad de AM la movilidad es el atributo principal
Hoy hablaremos de agentes mviles:
perspectiva de sistema distribuido
tratamos los aspectos tactiles: movilidad, persistencia
y (en parte) de sociabilidad: comunicacin y colaboracin
NO vemos los aspectos cognitivos (adaptacin, aprendizaje y
planificacin)
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 6
Conceptos
Agente mvil
Agente que realiza sus tareas no slo en la computadora de
su propietario, sino tambin en otras en la red
buscando informacin en beneficio de su propietario
o negociando y cerrando tratos en su nombre
o utilizando servicios remotos
Un agente mvil tiene capacidad para decidir a qu
servidores moverse
Hay instrucciones explcitas para que el agente pueda parar su
ejecucin, migrar a otro nodo (preservando su estado), y
continuar su ejecucin
Puede moverse a uno o ms servidores
Es una extensin del modelo cliente-servidor
Los clientes envan parte de ellos al servidor (o a varios
servidores) para ejecutarse
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 7
Taxonoma del cdigo mvil
Sistema de
Agentes A
Cdigo
+
Datos
Sistema de
Agentes B
Sistema de
Agentes C
Cdigo
+
Datos
Agentes mviles autnomos
(migracin)
Sistema
local
Cdigo
Sistema
remoto
Evaluacin remota
Sistema
local
Cdigo
Sistema
remoto
Cdigo bajo demanda
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 8
Taxonoma del cdigo mvil
Dependiente de la aplicacin
applet
aplicacin cargada por la red para ejecutar localmente
servlet
agente que es cargado en un lugar remoto donde ser
activado como un servidor
extlet
agente que es cargado en un lugar remoto para extender las
capacidades del receptor
deglet
agente en el que se delega la autoridad para realizar una
tarea determinada (acabada la tarea, desaparece)
netlet
agente en el que se delega la autoridad para realizar una
tarea permanente (esto es, nunca termina)
piglet
agente malicioso que supone riesgo de seguridad
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 9
AM vs. RPC
Paradigmas de programacin distribuida
Arquitecturas cliente-servidor clsicas:
Sockets
RPC, Java RMI
Middleware: DCE, CORBA, DCOM
Programacin remota
Ejecucin remota de trabajos (IBM Remote Job Entry, aos
70)
Telecarga de funciones a bases de datos (funciones a los
datos)
Comparticin de recursos, balance de carga, etc.
Java applets
Agentes m Agentes m viles viles
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 10
AM vs. RPC
Llamada a procedimiento remoto (RPC)
La red pasa cada peticin por separado,
... y devuelve una respuesta por separado
Hay acuerdo en los procedimientos, sus parmetros y tipo de
resultados
Puede ocasionar mucho trfico de red
Entorno del
cliente
Cliente
Entorno del
servidor
Servidor
peticin
respuesta
...
peticin
respuesta
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 11
AM vs. RPC
Programacin remota
La red pasa todo el procedimiento como un Agente
El cliente define el procedimiento (no tiene que acordarse por
adelantado)
La respuesta regresa como un Agente (o como mensaje)
Entorno del
cliente
Cliente
Entorno del
servidor
Servidor
peticin
respuesta
Cliente
cdigo
+
estado
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 12
Agentes mviles: ventajas
Eficiencia
La red lleva menos mensajes
Mejor cuanto ms trabajo se haga en el servidor
Mejor cuanto mayor latencia/inestabilidad de red
Adaptacin al cliente
El cliente puede extender la funcionalidad del servidor
Fcil instalacin
No se requiere instalacin de servidor
No se acuerdan los procedimientos
Instalacin dinmica del procedimiento del cliente en el servidor
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 13
Agentes mviles: ventajas
Ejecucin asncrona de tareas
El agente controla la ejecucin de la tarea
El cliente puede terminar o continuar haciendo otras cosas
Cliente
Servidor
Peticin
Resultado
Peticin
Resultado
Agente
Servidor
Peticin
Resultado
Peticin
Resultado
Cliente
Lanza
Termina
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 14
Agentes mviles: ventajas
Reduccin del trfico en la red
y de la capacidad de cmputo del cliente
Interesante para entornos de bajo ancho de banda y clientes
sencillos
Realiza las interacciones localmente en el sistema objetivo
(servidores potentes)
Recuperacin y filtrado de la informacin en su origen
Slo se devuelven los resultados definitivos
(mediante migracin del agente o usando mensajes/RPC)
Sistema A Sistema B
Cliente
Servidor
Red
Sistema de
Agentes A
Sistema de
Agentes B
Servidor
Red
migra
Cliente Cliente
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 15
Agentes mviles: ventajas
Robusto: reduccin de la dependencia de la
disponibilidad de la red y del cliente/servidor
los Agentes Mviles migrados al sistema servidor no se ven
afectados por los fallos del cliente o de la red
Sistema de
Agentes A
Sistema de
Agentes B
Servidor
Red
Sistema A Sistema B
Cliente
Servidor
Red
Cliente Cliente
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 16
Agentes mviles: ventajas
Automatizacin del proceso de tareas distribuidas
Los Agentes Mviles realizan tareas especficas en lugares
diferentes
Agenda:
Haz esto en B;
Haz eso en C;
Vuelve.
Sistema de
Agentes A
Sistema de
Agentes B
Servidor
Sistema de
Agentes C
Servidor
Haz esto
Haz eso
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 17
Agentes mviles: ventajas
Proceso de tareas local/descentralizado
mayor eficiencia, fiabilidad, seguridad, etc.
Sistema de
Agentes A
Sistema de
Agentes B
Sistema B
Sistema A
Controlador
Sistema C
Cliente
Servidor
Sistema de
Agentes C
Controlador
Controlador
Controlador
Cliente
Servidor
Cliente
Servidor
Cliente
Servidor
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 18
Agentes mviles: ventajas
Sistemas de usuario final flexibles
Dependiendo del sistema del usuario final (PDA, NC, PC,
WS), se pueden cargar los componentes de servicio
apropiados para su uso
Sistemas del cliente
NC PC en red STB WS
Sistema Proveedor del Servicio
Sistema de Agentes
Cliente
Comp.
A
Comp.
B
C
Comp.
A
Comp.
B
Comp.
Sistema de Agentes
Proveedor del Servicio
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 19
Agentes mviles: cuestiones
Seguridad
Autenticacin del usuario
Quin enva el agente mvil?
Autenticacin del servidor o entorno de ejecucin de agentes
No caer el agente en una trampa?
Derechos de ejecucin de agentes de un usuario en un
servidor
Pueden ejecutarse los agentes? Qu funciones pueden realizar?
Capacidad del agente para pagar por los servicios utilizados
Teleclicks (General Magic)
Deteccin de virus
Se puede confiar en el agente?
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 20
Agentes mviles: cuestiones
Control de ejecucin de las tareas
la localizacin y el estado de un agente pueden ser
desconocidos
Gestin de fallos
Quin detecta los fallos?
Eficiencia (el cdigo interpretado suele ser lento)
Heterogeneidad de sistemas de AM
Sobrecarga de la transferencia del cdigo
tiene que compararse con las interacciones
Acceso a servicios existentes (Internet, CORBA, etc.)
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 21
Aplicaciones
Servicios de informacin en Internet
Recuperacin y extraccin de informacin de mltiples lugares
Bsqueda y filtrado de la informacin
Control de cambios
Difusin de informacin
Comercio electrnico
Mercado de servicios electrnico
Negociacin
Equipos mviles y PCs en el hogar
Conexiones intermitentes y bajo ancho de banda
Redes pblicas de telecomunicaciones
Provisin de servicios bajo demanda
Descentralizacin del control y gestin de redes
Procesamiento paralelo
Gestin de procesos (workflow)
Juegos (agentes que representan jugadores)
Personalizacin
de servicios
Flexibilidad de
la distribucin
Delegacin
de tareas
Juan Pavn Mestras
Facultad de Informtica UCM, 2005-06
Agentes Mviles 22
Aplicaciones: Internet
Ejemplo: Documentos activos
Todos los usuarios tienen un sistema de agentes
A un agente de correo electrnico inteligente se le puede dar un
mensaje(puede ser un documento) y un itinerario
El agente sigue el itinerario, y puede ser modificado en su camino
El autor del mensaje puede recibir comentarios de los otros tres
Algunos usuarios pueden ver comentarios de los anteriores en el itinerario
agente de
correo
(revisin
documento)
Sistema de AM
Juan
Sistema de AM
Director
crea
Sistema de AM
Jefe