Sistemas Multi-Agente
(SMA) &
Inteligencia Artificial
Distribuida (IAD)
Fundamentos, Arquitecturas,
Aplicaciones & Metodologías
de Diseño y Desarrollo
Prof. Demetrio A. Ovalle C., Ph.D.
Agosto 8 de 2011
OBJETIVO GENERAL
Al terminar el curso, el estudiante estará en capacidad de aplicar técnicas de Inteligencia Artificial Distribuida (IAD) para la solución de problemas. Igualmente, podrá diseñar,
implementar y validar SMA en un área específica utilizando herramientas de propósito general y plataformas especializadas.
OBJETIVOS ESPECÍFICOS (pág.1)
• Identificar los fundamentos, las técnicas y las áreas de aplicación de la IAD.
• Solucionar problemas utilizando técnicas,
formalismos de representación del conocimiento y mecanismos de razonamiento de IA en
entornos distribuidos.
• Identificar los componentes de la arquitectura interna de un agente y las diferentes
OBJETIVOS ESPECÍFICOS (pág. 2)
• Analizar diferentes tipologías de agentes.
• Utilizar metodologías y herramientas apropiadas para la construcción de SMA.
• Caracterizar la arquitectura y funcionalidades de aplicaciones basadas en agentes.
• Desarrollar un proyecto de construcción de un SMA en un área específica.
SMA & IAD
PLAN DE TEMAS
Fundamentos
Aplicaciones
Metodologías de Diseño y Desarrollo
Referencias Bibliográficas
PLAN DE TEMAS
Fundamentos
Aplicaciones
Metodologías de Diseño y Desarrollo
Referencias Bibliográficas
Fundamentos
Inteligencia Artificial
Inteligencia Artificial Distribuida
Noción de Agente (Arquitectura
Interna)
Arquitecturas de Sistemas
Presente y Futuro de la IA:
Trabajo Interdisciplinario
Representación del Conocimiento y Razonamiento
Descripción Lógica, Lógica de Primer y Segundo Orden.
Razonamiento Computacional: Razonamiento No Monotónico (Hipotético & Por defecto) Ontologías & Web Semántica (SW)
Visión Artificial
Adquisición y Reconocimiento de Imágenes
Reconocimiento de Gestos, de Huellas, de Rostros, de Productos Realidad Aumentada
Fotografía Computacional
Robótica Autónoma e Inteligente Vehículos autónomos, Sistemas de Biometría
PLN (Procesamiento del Lenguaje Natural)
Lingüística Computacional, Reconocimiento y Comprensión de Textos, de Voz, Escritura… Juegos
Presente y Futuro de la IA:
Trabajo Interdisciplinario
Agentes Inteligentes y SMA (Sist. Multi-Agente) (IBM: ABLE-Agent Building &
Learning Environment, Agentes Híbridos Inteligentes, Subastas electrónicas, etc)
Planificación en IA (Composición de Servicios Web, Búsqueda Heurística)
Sistemas Inteligentes en la Web (Búsqueda Inteligente, Ontologías & SW, etc) KDD (Knowledge Discovery in Databases) – Descubrimiento de Conocimiento en
Bodegas de Datos & Minería de Datos (Data Mining)
Intelig. de Negocio, Invest. de Mercados, Redes Sociales , Aprend. Estadístico
Interfaces Inteligentes
Percepción Multimodal, HCI (Human Computer Interaction) Inteligente
Redes Neuronales (Programación Conexionista) y Programación Evolutiva
(Genética, Operadores: Mutación, Selección & Cruce)
Sistemas de Inferencia Difusa (Fuzzy Logic, Fuzzy Inference Systems) Sistemas Expertos (ES) y Sistemas Basados en Conocimientos (KBS) Sistemas de Toma de Decisiones (Sistemas Estadísticos Bayesianos)
Aprendizaje de Máquina: Aprendizaje por Refuerzo, Basado en Casos, Filtrado
Presente y Futuro de la IA:
Trabajo Interdisciplinario
Futuro de la IA:
Comunidad Científica
USA: MIT (Massachussets Institute of Technology) - Boston: Computer Science and
Artificial Intelligence Laboratory / Carnegie Mellon U. / U. of Illinois at Urbana-Champaign / U. of Chicago / Harvard U. / Purdue U. / Columbia U. / Kansas State U. / Drexel U. / U. of Southern California / U. of Maryland: Joint Institute for Knowledge Discovery / U. of Michigan / U. of California - Berkeley / Brown University / U. Massachussets Amherst (Knowledge Disvcovery Laboratory) / Toyota Research Institute (AI & Robotics Group)
UK: U. of Nottingham / Open U. / Sussex U. / U. of Southampton Netherlands: Vrije Universiteit Amsterdam
Canada: Laval University
Israel: Bar-Ilan U. / U. of Ben Gurion in the Negev / Hebrew U. of Jerusalem
Alemania: U. of Karlsruhe: Institute of Applied Informatics nad Formal Description
Methods / Dresden U. of Technology / U. of Hamburg / U. of Stuttgart
Rusia: U. of Moscow (Moscow Institute of Physics and Technology) España: Yahoo! Research in Barcelona.
Inteligencia Artificial Clásica
Investigadores:
USA: Marvin Minsky, John McCarthy, Allen Newell, Herbert Simon, Feigenbaum, Shortliffe,
McDermott, Nils Nilsson, Hayes Roth,
Warren McCulloch y Walter Pitts (Redes Neuronales)
UK: Alan Turing
Inteligencia Artificial
Distribuida
Los problemas complejos son físicamente distribuidos (una red de transporte, un sistema de control industrial, una línea de ensamblaje, etc.)
Diseño de productos industriales (autos de
Fórmula 1, lanzamiento de un cohete, etc.) => procesos en paralelo
Inteligencia Artificial
Distribuida
La WEB vista como un conjunto de
redes de información intercontinental
(datos y procesos distribuidos en sitios y servidores en todo el mundo) => sistemas inteligentes de recuperación de información en la Web Semántica (agentes móviles, de filtrado y búsqueda de información, etc).
La complejidad de las soluciones está
relacionada con una aproximación global
del problema teniendo en cuenta el punto de
I.A.D. ¿Por qué usarla?
Los sistemas informáticos deben ser
capaces de adaptarse a los cambios en la estructura del ambiente.
- El diseño de software debe enfrentar los cambios en el contexto de las operaciones.
- Los Sistemas Multi-Agente, son
arquitecturas adecuadas para tomar en cuenta la capacidad de evolución y adaptación necesarias para el funcionamiento del sistema.
I.A.D. ¿Por qué usarla?
La ingeniería de software está
comprometida actualmente con el diseño de entidades de interacción autónomas.
Los ingenieros de software y del conocimiento => creación de módulos autónomos.
Los Sistemas Multi-Agente incorporan
comportamientos locales con autonomía y toma de decisiones distribuida.
Inteligencia Artificial
Distribuida
I n v e s t i g a d o r e s:
USA: Lesser & Durfee, Hayes-Roth, Gasser, Pattie
Maes (MIT), Keith Decker (Univ. Of Delaware), Katia Sycara (CMU), Tim Finin (Univ. Maryland, KQML), Shoham Y (Agent Orient. Prog.)
UK: M. Wooldridge & N. Jennings
(Queen Mary & Westfield College, London),
H. Nwana (British Telecomm Labs)
Francia: Jacques Ferber (Paris VI) &
Yves Demazeau (INPG)
Massachusetts Institute of Technology (MIT) Media Laboratory, Boston, USA
“El futuro de la Computación será 100%
conducido por delegación más que
manipulando computadores
”
NICHOLAS NEGROPONTE
Massachusetts Institute of Technology (MIT) Media Laboratory, Boston, USA
El grupo de investigación en Software Agents
del MIT Media Laboratory trabaja sobre
sistemas computarizados a los cuales un usuario puede delegarle tareas. Los agentes de software difieren del software convencional en que tienen
larga vida, son semi-autónomos, proactivos y
adaptativos. Este grupo desarrolla técnicas y
construye sistemas multi-agente prototipo que pueden ser validados.
Carnegie Mellon University
Pittsburgh, USA
Robotics Institute, School of
Computer Science
Human-Computer Interaction
Institute
Katia Sycara, Ph.D.
Principal Research Scientist (Professor)
An Introduction to MultiAgent
Systems
by Michael Wooldridge, UK
Es un texto guía en Sistemas Multi-Agente, publicado por John Wiley and Sons en Marzo de 2002. Es el
primer libro diseñado para ser utilizado como texto guía de pregrado o curso inicial de posgrado sobre Sistemas Multi-Agente.
Se requiere tener unos conocimientos básicos en
Ingeniería de Sistemas. El texto presenta los aspectos más importantes en agentes inteligentes y sistemas multi-agente – una de las áreas con mayor
expansión y proyección actualmente de las
GOALS BEHAVIOUR ACTS PERCEIVES MODELS REPRODUCES (CLONNING) CAN COMUNNICATE
HAS OWN RESOURCES OFFERS SERVICES
MAS: Software Agent
(M. Wooldridge & N. Jennings , 2002)
•
Social Organization• Cooperation
• Communication
• Coordination
• Control
Research & Development Group in Artificial Intelligence
MAS: Multi-Agent Systems
(M. Wooldridge & N. Jennings , 2002)Noción de Agente de Software
Según Jacques Ferber (1999)
Un agente es una entidad física o virtual, la cual:
Es capaz de actuar en un ambiente propio. Puede comunicarse directamente con otros
agentes.
Está manejado por un conjunto de objetivos
o funciones que trata de optimizar.
Posee recursos propios.
Es capaz de percibir su ambiente (en forma
Agente de Software
Tiene una representación parcial de su
ambiente (algunas veces ninguna).
Posee habilidades y puede ofrecer servicios. Puede ser capaz de clonarse.
Su comportamiento tiende a satisfacer sus objetivos, teniendo en cuenta los recursos y habilidades propias, y dependiendo de su
percepción, representación y comunicaciones que recibe.
Características deseables de
un Agente de Software
Autonomía: Los agentes pueden operar sin la
intervención de humanos o de otros agentes.
Sociabilidad: Los agentes son capaces de
interactuar con otros agentes (humanos o no) a través de un lenguaje de comunicación de agentes (ACL:Agent Communication Language).
Reactividad: Los agentes son capaces de
percibir estímulos de su entorno y de reaccionar ante dichos estímulos.
Racionalidad: Un agente intenta cumplir sus
Características deseables de
un Agente de Software
Iniciativa (proactividad): Los agentes
tienen un carácter emprendedor y pueden actuar guiados por sus objetivos.
Movilidad: Capacidad de un agente de
trasladarse a través de la red.
Veracidad: Un agente siempre dice la verdad. Benevolencia: Un agente ayuda a otros
agentes, si al hacerlo no genera conflictos con sus propios objetivos.