You are on page 1of 16

Captulo 1

INTELIGENCIA ARTIFICIAL

DISTRIBUIDA. EL CONCEPTO
DE AGENTE.

El concepto de agente, que ser ampliamente estudiado en este libro, ha


aparecido recientemente (aos 90) y con l se ha producido la fusin de
varias disciplinas cientficas que abarcan desde la Inteligencia Artificial hasta
la Psicologa, pasando por la Ingeniera del Software, las Bases de Datos,
los Sistemas Distribuidos, la Sociologa, etc..
Desde un punto de vista tecnolgico se puede decir que la teora de
agentes aglutina todos los campos relacionados con la Informtica
(Computer Science). Los orgenes de la tecnologa de agentes (Bradshaw
1996) (Ferber 1999) comienzan con la Inteligencia Artificial Distribuida (IAD),
es decir con la resolucin de problemas (computacin inteligente) de forma
distribuida. El concepto de agente como entidad computacional aislada
evoluciona desde la IAD debido al influjo de la Ingeniera del Software.
Actualmente se habla de la Programacin Orientada al Agente desde el
punto de vista de la Ingeniera del Software como la metodologa capaz de
superar las limitaciones de la Programacin Orientada a Objetos. Adems
del aspecto terico, el desarrollo prctico de los agentes se ha visto
J.M. Corchado/ J.M. Molina

potenciado por el enorme crecimiento de Internet. Dentro de este mbito


aplicado existe una gran influencia de la teora de interfaces de usuario y de
la

interaccin

hombre-mquina.

Cabe

destacar

aquellos

aspectos

relacionados con el acceso inteligente a las fuentes de informacin en Web y


la necesidad de programas (agentes) en los que el usuario sea capaz de
delegar el trabajo y la toma de decisiones (comercio electrnico). En la
Figura 1 se representan esquemticamente las relaciones entre dichas reas
y que conforman las bases sobre las que se ha formulado la teora de
agentes sin considerar las dems reas que tambin han influido en su
desarrollo.

Redes neuronales,
Sistemas basados en
conocimiento,
Sistemas
intencionales,
Teora del
razonamiento

Procesamiento
de imagen y seal,
Objetos,
Control on-line

AGENTES
INTELIGENTES
Ingeniera del
software

Inteligencia
artificial

Tutora inteligente,
ingeniera cognitiva,
Interactividad

Interfaces usuario

Figura 1: reas de Conocimiento Relacionadas con los Agentes Software


Inteligentes

Tal vez la capacidad ms novedosa aportada por la Inteligencia Artificial


Distribuida a la teora de agentes es el concepto de inteligencia. Este
concepto est ntimamente relacionada con la Inteligencia Artificial tanto en
los mtodos de representacin del conocimiento como en la potencia de los
algoritmos de razonamiento. Incluso se puede dotar a lo agentes de
2

J.M. Corchado/ J.M. Molina

capacidades de aprendizaje, ya que se puede proyectar el agente para tener


una larga vida, desarrollando tareas similares, durante ese periodo de
tiempo.
La investigacin desarrollada en el campo de los agentes y los sistemas
multiagente ha influido en diversas disciplinas como la Inteligencia Artificial.
Actualmente muchos de los problemas planteados se estudian desde una
perspectiva de interaccin entre entidades; por ejemplo con respecto a los
Sistemas Distribuidos, el desarrollo de sistemas distribuidos se ha visto
influenciado por el concepto de agente y los protocolos de comunicacin por
las caractersticas semnticas de la comunicacin entre agentes; con
respecto a la robtica, muchas de las expectativas actuales de la robtica se
centran en la capacidad de cooperacin de conjuntos de robots y en la
capacidad de modelar un nico robot complejo mediante diversos
subsistemas (agentes) con capacidades de decisin individuales.

1.1. Breve presentacin histrica


El origen del concepto de agente y sistemas multiagentes est
intimamente relacionado con la evolucin de la Inteligencia Artificial
Distribuida. Otras lneas de investigacin que han influido en el desarrollo de
estos conceptos son los sistemas de Vida Artificial, el desarrollo de sistemas
en Web, la evolucin de la robtica, etc. En esta presentacin histrica se
analiza principalmente la evolucin de la Inteligencia Artificial Distribuida
como origen de las teora modernas de agentes.
1.1.1. La dcada de los 70
Bsicamente la Inteligencia Artificial Distribuida tiene su origen en
Estados Unidos y, en sus primeros aos, se centra en la construccin de
sistemas distribuidos y la problemtica de la coordinacin. La coordinacin
se analiza desde el estudio de la relacin entre la arquitectura del sistema y
el modo de razonamiento. Fundamentalmente existen dos perspectivas
distintas segn el tipo de control: las pizarras y los actores.

J.M. Corchado/ J.M. Molina

La primera estructura de control se fundamenta en la comunicacin


mediante datos compartidos. Esta estructura, que permite compartir los
datos, es la que se denomina pizarra (blackboard). Como la mayor parte de
las ideas de esta primera poca el concepto de pizarra es una abstraccin
de un sistema real, Hearsay II, desarrollado por Hayes-Roth, Erman y Lesser
(Erman et al., 1980). El objetivo principal del sistema era desarrollar un
mecanismo capaz de reconocer palabras. La propuesta de sistema se bas
en la idea de una pizarra, en la que distintas fuentes de conocimiento
(Knowledge Sources, KS) trabajan conjuntamente para generar una
solucin. De esta manera las KS colaboraban para alcanzar la solucin a
travs de la pizarra: cada vez que una KS era activada, seleccionaba un
objeto de la pizarra, lo modificaba segn su conocimiento y lo depositaba
nuevamente en ella. Evidentemente el acceso a la pizarra se organizaba
mediante una estructura de control que seleccionaba aquella KS ms
prometedora.
Otra idea similar aparece en el trabajo de Kornfeld y Hewitt denominado
Ether (Kornfeld, 1979). Su sistema permita estudiar y discutir ideas
(hpotesis) en el seno de una comunidad cientfica (a cada uno se le
asignaba un sprite, que era un sistema similar a una KS de las pizarras).
Cada sprite defenda una postura o la criticaba. Los sprites estaban
agrupados en dos equipos, unos intentaban demostrar que una hiptesis era
cierta y los otros ponan ejemplos en contra de dicha hiptesis. Adems de
estos dos grupos exista un tercero que se encargaba de la gestin de los
recursos asignados a cada sprite.
Aunque la idea de pizarra ha evolucionado y se han realizado multitud de
aplicaciones, generndose toda una teora sobre el tema, en esta teora de
pizarras existe una cierta confusin entre la arquitectura como tal y el
mecanismo de coordinacin. Esta configuracin se debe a que se han
estudiado

de

manera

un

tanto

independiente

la

cooperacin,

los

mecanismos de organizacin y coordinacin por un lado y la arquitectura del


sistema por otro. En cualquier caso, las pizarras han sido ampliamente
estudiadas y son unos de los fundamentos terico/prcticos de la IAD y de
4

J.M. Corchado/ J.M. Molina

una fuerte influencia posterior (Hayes-Roth 1985). En (Corkill, 1991) y (Nii,


1986) se describen los fundamentos y las aplicaciones prcticas ms
importantes de las pizarras.
La segunda estructura de control est centrada en el trabajo de Lenat y
Hewitt. El primero de ellos desarroll el sistema PUP6 (Lenat, 1975) basado
en la idea de la comunidad de especialistas. Estos especialistas no son KS
y la solucin no se va construyendo en un espacio comn, si no que cada
especialista

recibe

preguntas

trata

de

contestarlas

utilizando

el

conocimiento que l mismo posee o bien preguntando a otro especialista. Es


decir aparece por primera vez el sistema descompuesto en un conjunto de
componentes donde cada uno de ellos es capaz de resolver una tarea por si
mismo. Lenat mostr la eficacia de su modelo en otros sistemas (Lenat y
Brown, 1984) (Lenat y Guha, 1990).
Hewitt es conocido por su trabajo en la IAD desde una estructura de
control basada en el paso de mensajes, message passing (Hewitt 1977). En
su modelo el control se encontraba distribuido entre un conjunto de
entidades, denominadas actores (actors), que se comunicaban mediante el
paso de mensajes. De esta manera la resolucin de un problema se puede
ver como la puesta en comn de distintos puntos de vista. Su aportacin
ms importante en el desarrollo de los sistemas multiagentes es el modelo
de coordinacin entre los actores realizando mediante una comunicacin por
medio de mensajes asncronos (Agha y Hewitt 1988). Un punto importante a
resaltar al hablar de la teora de Hewitt es que un actor no es lo mismo que
un agente ya que los actores son entidades computacionales que se
ejecutaban en paralelo, intercambiando mensajes de forma asncrona pero
sin esperar una respuesta (Agha, 1986). Cada mensaje lleva en el recipiente
del mismo a quien debe enviarse el resultado de la ejecucin de ese
mensaje, es decir un actor recibe un mensaje, lo procesa y lo enva a otro
actor que ya est predefinido en el mensaje, por lo tanto no lo decide el actor
que procesa el mensaje. Este es un trabajo muy importante en cuanto al
modelo de computacin en paralelo y el paso de mensajes, pero los actores
no son agentes que se coordinan mediante la negociacin de tareas. El paso
J.M. Corchado/ J.M. Molina

de mensajes es el fundamento sobre el que se sustenta la actual


negociacin, ya que los agentes utilizan un protocolo de negociacin para
coordinarse utilizando a bajo nivel la idea del paso de mensajes (informacin
que se comparte utilizando mensajes asncronos) para implementar la
comunicacin entre ellos.
1.1.2. La dcada de los 80
En (Farber, 1999) se denomina periodo clsico a la dcada de los 80.
Durante esta dcada se desarrollan tres grandes proyectos que definirn las
bases de muchas de las investigaciones llevadas a cabo, posteriormente,
en el campo de la IAD. Estos tres proyectos son DVMT (Distributed Vehicle
Monitoring Test), MACE (Multi-Agent Computing Environment) y la red de
contratos (contract net).
El proyecto DVMT fue desarrollado por el equipo de Lesser en la
Universidad de Massachusetts (Lesser y Corkill, 1983). Fundamentalmente
el proyecto trata de la percepcin y el reconocimiento de situaciones en un
entorno y con un sistema distribuido. Diferentes agentes captan diferentes
percepciones del entorno y el objetivo es conseguir una visin global
coherente entre todos ellos. El problema de los diferentes sensores y los
diferentes agentes que procesan la informacin permite todo tipo de
organizaciones y de estrategias de coordinacin que dieron lugar a una gran
cantidad de investigaciones en el tema.
El sistema MACE fue desarrollado por Gasser y tuvo un impacto muy
importante en toda la comunidad cientfica (Gasser et al., 1987).
Bsicamente se intenta desarrollar un marco terico/prctico para la
creacin de sistemas multiagentes. Gasser demostr que mediante agentes
que se intercambia mensajes es posible crear una comunidad de agentes
que se coordinan y que es necesario ampliar el lenguaje de comunicacin y
el sistema de razonamiento de cada agente para permitir razonamientos
sobre los otros. Es decir los agentes deben estar capacitados para razonar
sobre sus creencias (beliefs) y sus capacidades (skills), as como sobre las
creencias y capacidades de los dems agentes del sistema. La mayor parte
6

J.M. Corchado/ J.M. Molina

de las plataformas actuales de desarrollo de agentes son deudoras del


trabajo desarrollado en el proyecto MACE. La influencia del proyecto DVMT
fue mayor en Estados Unidos que en Europa, mientras que la del proyecto
MACE fue mayor en Europa.
El ltimo sistema de esta poca es la red de contratos de R. Smith. En los
aos 80 Smith (Smith, 1979, 1980) desarroll un protocolo de negociacin
sencillo que permita distribuir distintas tareas entre un conjunto de agentes.
Este tipo de negociacin se sigue empleando hoy en da siendo la base de
muchas de las aplicaciones actuales. El protocolo utiliza la idea de oferta y
de contrato para distribuir las tareas sin necesidad de recurrir a una zona de
memoria comn (como en las pizarras) ni a la necesidad de especificar
completamente el contenido y el recipiente de cada mensaje (como en los
actores de Hewitt).
Adems de estos tres proyectos centrales durante esta dcada se
desarrollaron muchos otros, que se encuentran recopilados en (Bond y
Gasser, 1988). Cabe destacar el trabajo de Steeb, Cammarata y HayesRoth, centrado en el problema de la cooperacin, centrado en el trfico
areo, desde el punto de vista de la creencia, las intenciones y las
intenciones obligadas (Cammarata et al 1988).
1.1.3. La dcada de los 90
Actualmente podramos decir que existen dos lneas principales de
pensamiento, por un lado, se encuentra la escuela estadounidense centrada
en la IAD y por otro la lnea centrada en el desarrollo de los agentes
racionales.
A la primera pertenecen Lesser y sus discpulos Durfee y Conry, adems
de otros investigadores importantes entre los que se encuentran como
Gasser, Huns y Sycara. Esta escuela est centrada principalmente en el
anlisis de los Sistemas Multiagente desde el punto de vista de la
composicin

de

agentes

con

altas

capacidades

de

racionamiento.

Fundamentalmente el estudio se centra en la organizacin y cooperacin de


J.M. Corchado/ J.M. Molina

entidades autnomas que deben resolver problemas conjuntamente. Existen


contactos con investigadores que utilizan agentes ms simples (reactivos o
agentes en sistemas de vida artificial) y en estos casos se analizan los
comportamientos emergentes de estas sociedades. Por ltimo resaltar la
contribucin de Sycara y Gasser en la profundizacin de la aplicacin de las
ciencias sociales a los sistemas multiagente. Una visin general de los
estudios llevados a cabo por estos investigadores se encuentran recopilados
en (Bond y Gasser, 1988) y (Gasser y Huhns, 1989).
La segunda lnea est centrada en el desarrollo de una formalizacin del
concepto de agente autnomo racional. Esta lnea de investigacin
comienza con la formalizacin de Cohen y Levesque de las intenciones y las
creencias utilizando lgica modal. Los investigadores ms importantes de
esta corriente son

Soham (1993), Georgeff y Rao (1992), Jennings y

Wooldridge (Jennings, 1994; Wooldridge y Jennings, 1994), Singh (1994) y


Sadek (1992). Los estndares de interaccin como KQML (Finin et al., 1994)
y ACL provienen de esta lnea de investigacin.
Otros investigadores actuales han cubierto otras lneas de investigacin
como la teora de juegos (Zlotkin y Rosenschein, 1992) (Zlotkin y
Rosenschein 1993), la aplicacin de redes de Petri en Sistemas Multiagente
(Ferber, 1999), agentes reactivos (Brooks, 1991) (Steel, 1994) y distintos
aspectos del aprendizaje en agentes.
Una descripcin de la problemtica actual en el campo de la IAD y las
distintas ramas de la teora de agentes puede consultarse en (Jennings et
al., 1998).

1.2. reas de aplicacin


Las rea de aplicacin de los sistemas multiagentes y basados en
agentes son muy amplias (Gasser, 1992), y en este punto nos vamos a
centrar en cuatro de ellas: la resolucin de problemas (objetivo bsico de la
Inteligencia Artifical), de la capacidad para simular mediante agentes
diversos sistemas, de las capacidades adquiridas por los sistemas de robots
al contar con una teora de agentes que permita un estudio en profundidad
8

J.M. Corchado/ J.M. Molina

de la capacidad cooperativa de sociedades de robots y del espacio abierto al


trasladar ideas de los sistemas multiagentes al diseo de programas.
1.2.1. Resolucin de problemas
La resolucin de problemas dentro del marco de la IAD y los sistemas
multiagentes se debe entender desde tres perspectivas distintas:
1. La solucin distribuida de problemas.
2. La solucin de problemas distribuidos.
3. La utilizacin de tcnicas distribuidas para la resolucin de
problemas.
La primera perspectiva asume que puede resolverse cualquier problema
plantendolo en trminos de un conjunto de especialistas con diferentes
capacidades que se coordinan para alcanzar un objetivo global (una tarea
compleja). De esta manera se han desarrollado aplicaciones de diseo
industrial (Iffenecker y Farber, 1992), de control industrial (Morley, 1993)
(Parunak 1993), de deteccin de errores en redes (Jennings et al., 1995), de
reconocimiento de formas (Demazeau et al., 1994), de procesamiento del
lenguaje natural (Sabah, 1990), de diagnstico mdico (Piquemal-Baluard et
al 1996)

y de control y monitorizacin de redes de telecomunicaciones

(Weihmayer y Brandau, 1990).


La segunda perspectiva se centra en la resolucin de problemas que son
intrnsecamente distribuidos. Es decir aquellas aplicaciones que deben
monitorizar y controlar diversos nodos (redes de ordenadores, redes de
telecomunicaciones, canales de distribucin de energa, problemas de trfico
areo, etc.) y donde no existe un nodo central desde el que se puedan
realizarse todas las tareas requeridas. En este caso claramente la solucin
distribuida de problemas es la nica alternativa posible. Un ejemplo clsico
de esta perspectiva es el ya comentado proyecto DVMT. Los sistemas de
telecomunicaciones son un ejemplo claro de la utilizacin de la IAD en este
tipo de problemas, una revisin de todas las aplicaciones realizadas sobre
J.M. Corchado/ J.M. Molina

este tema puede verse en (Weihmayer y Velthuijsen, 1995) (Garijo et al


1996).
1.2.2. Simulacin y mundos artificiales
La simulacin se utiliza en multitud de disciplinas que necesitan modelan
aspectos del mundo, como por ejemplo la fsica, la qumica, la biologa, la
ecologa, las ciencias sociales, etc. La simulacin clsicamente necesita de
un modelo matemtico que defina cmo evolucionan los cambios en el
modelo. Adems en un simulador tradicional un solo proceso es el
encargado de gestionar todos los cambios de cada uno de los componentes
del simulador. La aplicacin multiagente a la simulacin de procesos permite
la representacin directa de individuos definiendo sus comportamientos y el
modo de interrelacin entre los individuos. De esta manera puede estudiarse
la evolucin del sistema en funcin de los distintos tipos de comportamientos
de los agentes y de las estructuras de coordinacin que existan entre ellos.
La facilidad de una simulacin basada en agentes se encuentra en su
flexibilidad, la capacidad para integrar agentes heterogneos, la posibilidad
de integrar parmetros cuantitativos y de razonamiento (o comportamiento),
la posibilidad de

ampliar el sistema y de integrar nuevos agentes con

nuevas capacidades, y, sobre todo, la facilidad para centrar el estudio de la


comunidad a partir de los comportamientos individuales (Beer et al 1998).
Existen dos perspectivas distintas en la creacin de estos simuladores,
por un lado estn aquellos que simulan agentes con capacidades de
razonamiento, como SIMDELTA (Ferber, 1999), SIMPOP (Bura et al., 1993),
y aquellos que se centran en la simulacin de agentes simples y analizan el
comportamiento colectivo. Este ltimo tipo de simuladores estn ms
cercanos a la vida artificial o entornos artificiales (Grand et al 1997), siendo
ejemplos tpicos los entornos de caza con depredadores y presas como los
de (Benda et al., 1986; Bond, 1989; Bouron et al., 1990). Dentro de estos se
encuentran aquellos basados en el concepto de animat (fusin de las
palabras animal y artefacto, trmino inventado por Meyer y Wilson (Meyer y
Guillot, 1989)) y donde la descripcin de estos animat permite analizar
distintas propiedades emergentes en las sociedades. Por ltimo mencionar
10

J.M. Corchado/ J.M. Molina

los simuladores basados en robot simples y donde las capacidades de


coordinacin emergen del comportamiento de los propios robots (Steels
,1989; Brooks, 1992).
Por ltimo cabe destacar las aproximaciones a la simulacin con agentes
en entornos virtuales (destacar el nmero de Febrero de 2001 de
Proccedings del IEEE sobre el tema) y el enfoque de la interaccin hombre
mquina basada en agentes. En este enfoque se representa al usuario en un
entorno virtual (habitualmente en 3D y con alta resolucin de grficos)
mediante un agente (habitualmente un objeto homomrfico) que interacciona
con el sistema en un entorno virtual (de igual manera que lo hara el usuario
si estuviera fsicamente en ese entorno virtual).
1.2.3. Robots colaborativos
Otro campo de aplicacin de las ideas de los sistemas multiagente es la
robtica. En este campo podemos distinguir dos lneas de investigacin,
aquella que considera el problema del control de un nico robot compuesto
de mltiples partes y otra que se centra en el problema de los robots
mviles.
La primera de ellas adopta la postura multiagente asignando un agente a
cada una de las partes que constituyen el robot completo, intentando
resolver tareas complejas mediante la interrelacin de estos agentes. Estos
agentes deben cooperar para conseguir un comportamiento global coherente
con la tarea a realizar (Overgaard et al., 1994).
La utilizacin de tcnicas multiagente en robots mviles permite la
realizacin de tareas que necesitan la cooperacin de movimientos para
realizar una tarea compleja como la limpieza del suelo, la recogida de
basura, la vigilancia de edificios, servir de apoyo a personas discapacitadas
y la exploracin de zonas peligrosas (Mataric, 1994; Steel, 1994; Beckers et
al., 1994). Esta misma lnea se ha seguido en la coordinacin de
movimientos en aeronaves, barcos o automviles (Cammarata et al. 1988)
(Zeghal y Ferber 1993).
J.M. Corchado/ J.M. Molina

11

1.2.4. Ingeniera del software


La aplicacin de los sistemas multiagente o basados en agentes en el
mbito de Internet ha potenciado enormemente la aparicin de sistemas que
utilizan entidades computacionales casi independientes. Estas entidades
tiene que tener una capacidad de procesamiento casi autnoma de manera
que puedan enfrentarse a multitud de problemas heterogneos que pueden
ocurrir en cualquier nodo de la red. La enorme cantidad de aplicaciones
sobre Internet entre las que destacan los agentes buscadores de informacin
ha propiciado la aparicin de una nueva manera de disear el software. Este
nuevo modo est imbuido por las tcnicas multiagentes y se intenta definir
una metodologa general de desarrollo que evolucione de la Programacin
Orientada a Objetos a la Programacin Orientada al Agente. De igual
manera que el objeto encapsula un conjunto de mtodos que son invocados
el agente encapsula toda una forma de ejecutar diversas tareas aadiendo
una cierta capacidad de razonamiento y de autonoma.
Dos de los aspectos ms importantes de esta nueva forma de disear
son, por un lado, la capacidad de los agentes para moverse desde un nodo
de la red a otro y, por otro, la posibilidad de centrar el diseo del sistema
software en los objetivos y no en sus mdulos (Booch, 1991).
Entre las propuestas de metodologas de desarrollo orientadas a agentes
existen varias tendencias, entre las que cabe destacar las que toman como
partida metodologas de ingeniera de conocimiento, utilizadas en el campo
del desarrollo de sistemas basados en el conocimiento, o las que parten de
metodologas orientadas a objetos.

1.3. Resumen y conclusiones


La aparicin del concepto de agente en los aos 90 ha permitido que muy
diversas disciplinas hayan convergido en un espacio comn. Los sistemas
compuestos de mltiples agentes se desarrollaron inicialmente en el mbito
de la IA distribuida (O'hare et al., 1996). En su origen la IAD se plantea la
resolucin de problemas distribuidos, donde un problema particular puede
resolverse por un nmero de elementos que cooperan y comparten
12

J.M. Corchado/ J.M. Molina

conocimiento sobre el problema y su solucin. Las tareas que cada


subsistema realiza estn prefijadas de antemano, cada agente tiene una
conducta fija, y el sistema se centra en el comportamiento global.

La

extensin de estas soluciones a entidades autnomas con capacidad de


decisin comunicados por el mecanismo de paso de mensajes llev a la
definicin del concepto de agente y sistemas multiagente que se analizarn
en el siguiente captulo.
Adems del aspecto terico se han presentado una serie de reas de
trabajo (robtica, simulacin, resolucin de problemas, etc.) donde la
aplicacin de las tcnicas basadas en agentes pueden aportar un gran
avance. Cabe resaltar las propuestas de metodologas de desarrollo
orientadas a agentes, que permiten analizar, disear y documentar utilizando
un marco comn de referencia.

1.4. Referencias
Agha G. (1986) Actors: A Model of Concurrent Computation for Distributed Systems. MIT
Press.
Agha G. y Hewitt C (1988). Concurrent programming using actors. Object-Oriented
Concurrent Programming. MIT Press.
Beckers R., Holland O.E., Dneubourg J.L. (1994) From Local Actions to Global Tasks:
Stigmergy and Collective Robotics. Proc. Of the Fourth International Workshop on
the Synthesis and Simulation of Living Systems, Artifical Life IV, R. Brooks and P.
Maes (ed.). MIT Press.
Beer R. D., Chiel H. J. y Sterling L. S. (1998) A Biological Perspective on Agent Design,
DESIGNING AUTONOMOUS AGENTS: Theory and Practice From Biology to
Engineering and Back, pp 169-187, Maes, Pattie, (Ed), Cambridge, MA, The MIT
Press, 1990.
Benda M., Jaganathan V., Dodhiawala R. (1986) On Optimal Cooperation of Knowledge
Sources. Sixth Workshop on Distributed Artificial Intelligence, Boeing AI Center,
Seattle, WA.
Bond A.H. (1989) Commitment, Some DAI Insights from Symbolic Interactionnist
Sociology. Ninth Workshop on Distributed Artificial Intelligence, Seattle.
Bond A.H., Gasser L. (1988) Readings in Distributed Artificial Intelligence. Morgan
Kaufman.
Booch G. (1991) Object Oriented Design with Applications. Benjamin Cummings.
Bouron T., Ferber J., Samuel F. (1990) MAGES: A Multi-Agent Testbed for
Heterogeneous Agents. Decentralised Artificial Intelligence (vol II). Y. Demazeau,

J.M. Corchado/ J.M. Molina

13

J.P. Muller. North Holland.


Bradshaw, J., (1996) Software Agents, AAAI Press/The MIT Press.
Brooks R. A. (1991) Intelligence without Representation. Artificial Intelligence, 47, 139159.
Brooks R. A. (1992) Artificial life and real robots. In Toward a practice of autonomous
systems, Proceedings of the First European Conference on Artificial Life. MIT
Press.
Bura S., Gurin-Pace F., Mathian H., Pumain D., Sanders L. (1993) Multiagents
Systems and the Dynamics of a Sttlemnet System. Simulating Societies
Symposium, Siena, C. Castelfranchi Ed.
Cammarata S., McArthur D., Steeb R., (1988) "Strategies of Cooperation in Distributed
Problem Solving", en Readings in Distributed Artificial Intelligence, Ed. Alan H.
Bond and Les Gasser, Morgan Kaufmann.
Corkill D.D., (1991) "Blackboard Systems, Strategies of Cooperation in Distributed
Problem Solving", AI Expert, vol 6 n 9 pp 40-47.
Demazeau Y., Boissier O., Koning J.L., (1994) Using Interaction Protocols to Control
Vision Systems, IEEE Conference on Systems, Man and Cybernetics, San
Antonio.
Erman L., Hayes-Roth F., Lesser V., Reddy D. (1980) The Hearsay-II Speech
Understanding System: Integrating Knowledge to Resolve Uncertainty, ACM
Computing Surveys, 12.
Ferber, J., (1999) Multi-Agent Systems. An Introduction to Distributed Artificial
Intelligence, Addison-Wesley.
Finin T., Fritzson R., McKay D., McEntire R., (1994) KQML as an Agent Communication
Language, Third International Conference on Information and Knowledge
Management. ACM Press.
Garijo M., Cancer A. y Sanchez J. J. (1996) A Multiagent System for Cooperative
Network-Fault Management, PAAM 96, First International Conference and
Exhibition on the Practical Application of Internet Agents and Multi-Agent
Technology, London 22-24 April 1996, pp 279-295, Practical Application Company
Ltd.
Gasser L., (1992) An Overview of DAI, en Distributed Artificial Intelligence: Theory and
Praxis, editado por N.M. Avouris y L. Gasser, Kluwer.
Gasser L., Braganza C., Herman N., MACE: a Flexible Testbed for Distributed AI
Research, Distributed Artificial Intelligence, Editado por M.N. Huns, pp 119-152,
Pitman (1987).
Gasser L., Huhns M.N., (1989) Distributed Artificial Intelligence, Vol II, Pitman/Morgan
Kauffman.
Grand S. y Cliff d. (1997) Creatures: Entertainment Software Agents with Artificial Life,
Autonomous Agents and Multi-Agent Systems, 1, 39-57 (1997), Kluwer Academic
Publsihers, Boston, The Netherlands.
Hayes-Roth B. (1985) A blackboard architecture for control. Artificial Intelligence,
26(3):251-321.
14

J.M. Corchado/ J.M. Molina

Hewitt C. (1977) Viewing Control Structures as Patterns of Message Passing, Artificial


Intelligence, vol 8 n 3, p 323-374.
Iffenecker C., Farber J., (1992) Using Multiagent System for Concurrent and Cooperative
th
Operation Tasks, 9 Distributed Artificial Intelligence Workshop, Orcas Isalnd, M.
Benda (Ed.).
Jennings N., (1994) Cooperation in Industrial Multiagent Systems, Vol 43, World
Scientific Press.
Jennings N., Corera J.M., Laresgoiti I., (1995) Developing Industrial Multiagent
Systems, First International Conference on Multiagent Systems, San Francisco, V.
Lesser (Ed.), MIT Press.
Jennings R., Sycara K., Wooldridge M., (1998) A Roadmap of Agent Reasearch and
Development, Autonomous Agents and Multiagent Systems, vol 1, n 1 pp 275306.
th

Kornfeld W., (1979) ETHER: a Parallel Problem-solving System, Proc. Of the 6 IJCAI.
Lenat D., (1975) BEINGs: Knowledge as Interacting Experts, Proc. Of the 1975 IJCAI
Conference, p 126-133.
Lenat D., Brown J.S., (1984) Why AM and Eurisko appear to Work, Artificial
Intelligence, vol 23, pp 269-294.
Lenat D., Guha R.V. (1990) Building Large Knowledge-Based Systems. Addison Wesley.
Lesser V.R., Corkill D.D., (1983) The Distributed Vehicle Monitoring Testbed: A Tool for
Investigating Distributed Problem-solving Networks, AI Magazine, vol 4 n 3, pp
15-33.
Mataric M.J., (1994) Learning to Behave Socially, From Animals to Animat 3, Proc. Of
the third International Conference on Simulation of Adaptive Behavior, Brighton,
Cliff, Husband, Meyer y Wilson Ed., pp 453-462, MIT Press.
Meyer J.A., Guillot A., (1989) Simulation of Adaptive Behavior in Animats: Review and
Prospect, From Animal to Animats, Paris Meyer, Wilson (Ed.). MIT Press.
Morley R.E., Morley C.S., (1993) An Analysis of a Plant-Specific Dynamic Scheduler,
Proc. Of the NSF Workshop on Dynamic Scheduling. Cocoa Beach.
Nii H.P., (1986) Blackboard Systems. Blackboard Application Systems, Blackboard
Systems from a Knowledge Engineering Perspective, AI Magazine, pp 82-106,
Agosto.
O'hare G. M. y Jennings N. R. (1996) Foundations of Distributed Artificial Intelligence.
Willey-Interscience, 1996.
Overgaard L., Petersen H.G., Perram J. W., (1994) Motion Planning for an Articulated
Robot: a Multi-Agent Approach, Proc. Of MAAMAW94, Demazeau, Muller,
Perram (Ed.).
Parunak H. V. D., (1993) Industrial Applications of Multi-Agent Systems. Research report,
Industrial Technology Institute.
Piquemal-Baluard C., Carpuat B. y Glize P. (1996) Principals and Development of a
Medical Multi-Agent Software, PAAM 96, First International Conference and
Exhibition on the Practical Application of Internet Agents and Multi-Agent
Technology, London 22-24 April 1996, pp 475-487, Practical Application Company
J.M. Corchado/ J.M. Molina

15

Ltd. pp 437-455, Practical Application Company Ltd.pp 523-543, Practical


Application Company Ltd.
Rao A., Georgeff M., (1992) Social Plans: Preliminary Report, Proc. Of MAAMAW91,
Werner, Castelfranchi (Ed.), pp 127-146, Elsevier North Holland.
Sabah G., (1990) CARAMEL: A Computational Model of Natural Language
Understanding using Parallel Implementation, Proc. Of the Ninth European
Conference on Artificial Intelligence (ECAI90). Stockholm.
Sadek D., (1992) A Study in the Logic of Intention, Proc. Of Conference on Principles of
Knowledge Representation and Reasoning. Cambridge, MA, pp 462-473.
Shoham Y., (1993) Agent Oriented Programming, Artificial Intelligence, vol 60, n1, pp
51-92.
Singh M.P., (1994) Multiagent Systems: A Theoretical Framework for Intentions, Know
How and Communications, Lecture Notes in Artificial Intelligence 799, Springer
Verlag.
Smith R.G., (1979) A Framework for Distributed Problem-solving, Proc. Of IJCAI 79.
Smith R.G., (1980) The Contract Net Protocol: High-Level Communication and Control in
a Distributed Problem Solver, IEEE Trans. On Computers, vol 29, n12, pp 11041113.
Steel L., (1989) Cooperation between Distributed Agents through Self-Organization,
Decentralized AI, Demazeau, Muller (ed.) Elsevier.
Steel L., (1994) A Case Study in the Behavior-Oriented Design of Autonomous Agents,
Proc. Of the 94 Conference on Simulation of Adaptive Behavior, MIT Pres.
Weihmayer R., Brandau R., (1990) A Distributed AI Architecture for Customer Network
Control, Globecom90, San Diego.
Weihmayer R., Velthuijsen H., (1995) Distributed AI and Co-operative Systems for
Telecommunications,
en Worldwide Intelligent Systems: Approaches to
Telecommunications and Network Management, editado por J. Liebowitz y D.S.
Perau. IOS Press, Amsterdam, captulo 11, pp 227-260.
Wooldridge M., Jennings N., (1994) Towards a Theory of Cooperative Problem-solving,
Proc. Of MAAMAW94, Demazeau, Muller, Perram (Ed.).
Zeghal K., Ferber J., (1993) CRAASH: A Coordinated Collision Avoidance System,
European Simulation Multiconference, Lyon.
Zlotkin G. y Rosenschein J. S. (1993) One, two, many coalitions in multi-agent systems.
Proceedings of the Fifth European Workshop on Modelling Autonomous Agentes in
a Multi-Agent world (Ghedira and K. Sprumont, eds.),U. of Neuchatel, Switzerland.
Zlotkin G., Rosenschein J.S., (1992) A Domain Theory for Task Oriented Negotiation,
Proc. Of the International Joint Conference on Artificial Intelligence, Chambery.

16

J.M. Corchado/ J.M. Molina