6
1 Sistema de Diagnóstico Nutricional García García Francisco Javier/ Gómez Vázquez Exal Alejandro/ Molina Velasco Jaime Guadalupe INSTITUTO TECNOLÓGICO DE TUXTLA GUTIÉRREZ INTELIGENCIA ARTIFICIAL Index Terms—Inteligencia Artificial, Agentes Inteligentes, Sis- tema Experto, Jess, Jade. Abstract—Documentación del Sistema de Diagnóstico Nutri- cional. I. I NTRODUCCIÓN En este reporte que a continuación se presenta tiene como objetivo indicar las facetas realizadas durante la elaboración del Sistema de Diagnostico Nutricional, haciendo uso de los agentes inteligentes para poder conformar un sistema experto, el cual de acuerdo a un proceso continuo y sistemático registra, procesa, reporta y analiza información del estado nutricional de cierto paciente. II. FUNDAMENTOS II-A. Inteligencia Artificial II-A1. Definición.: La Inteligencia Artificial, puede considerarse como una de las disciplinas más nuevas, siendo curiosamente considerada a la vez como una gran desconocida. Esto es debido a que poca gente tiene claro qué es la Inteligencia Artificial. Pero, ¿qué es realmente la IA? Existen gran variedad de definiciones respecto a lo que es la IA, algunas más válidas que otras, pero podríamos intentar resumirlas comentando que la IA trata de «desarrollar sistemas que piensen y actúen racionalmente». En los últimos años la IA ha ido evolucionando, quizás con mayor celeridad que otras disciplinas, motivada probablemente por su propia inmadurez. Todo esto ha llevado a que la IA actualmente abarque una gran cantidad de áreas, desde algunas muy generales como razonamiento, búsqueda, etc. a otras más específicas como los sistemas expertos, sistemas de diagnóstico, etc. Podríamos indicar, sin lugar a dudas, que la IA puede ser aplicada hoy en día a infinidad de disciplinas científicas y es que la IA es susceptible de aparecer allí donde se requiera el intelecto humano. Actualmente en la IA ha surgido un nuevo paradigma conocido como «paradigma de agentes», el cual está tomando un gran auge entre los investigadores. Dicho nuevo paradigma aborda el desarrollo de entidades que puedan actuar de forma autónoma y razonada. Si retomamos la definición dada anteriormente donde se consideraba a la IA como un medio para el desarrollo de sistemas que piense y actúen racionalmente, podemos pensar que la IA, en su conjunto, trata realmente de construir precisamente dichas entidades autónomas e inteligentes. De acuerdo con esta visión, se puede considerar a la IA como una disciplina orientada a la construcción de agentes inteligentes donde se integran las diferentes áreas que ésta comprende. Desde hace relativamente poco tiempo esta idea está siendo ya adoptada por investigadores en la materia; el propio Stuart Russell ha remodelado su conocido libro Inteligencia Artificial, un enfoque moderno [Russell1996] para dar un enfoque de la IA orientado totalmente al desarrollo de agentes. Es importante resaltar que en el momento en que se disponga de una metodología clara para la construcción de dichos agentes inteligentes, la aplicabilidad de las técnicas de IA a cualquier tipo de problema podrá abordarse de una manera más clara y unificada. De momento, se puede asegurar que, hoy en día, existe una idea generalizada dentro de la IA de que nos encontramos ante el nacimiento de una nueva tecnología, la de agentes inteli- gentes, que permite abordar de una manera más apropiada la construcción de sistemas inteligentes más complejos aplicados a muy diversos campos II-B. Agentes Inteligentes II-B1. Definición.: Al igual que ocurre con la propia definición de la IA, se pueden encontrar propuestas en la literatura un gran número de definiciones del concepto de agente, sin que ninguna de ellas haya sido plenamente aceptada por la comunidad científica, siendo quizás la más simple la de Russell [Russell1996], que considera un agente como una entidad que percibe y actúa sobre un entorno. Basándose en esta definición, se pueden caracterizar distintos agentes de acuerdo a los atributos que posean (y que van a definir su comportamiento) [Botti1999] para resolver un determinado problema. Pero centrémonos en esta definición básica y apliquémosla al ejemplo dado al inicio. Se dice que un agente está situado

Sistema de Diagnostico Nutricional

Embed Size (px)

Citation preview

1

Sistema de Diagnóstico NutricionalGarcía García Francisco Javier/ Gómez Vázquez Exal Alejandro/ Molina Velasco Jaime Guadalupe

INSTITUTO TECNOLÓGICO DE TUXTLA GUTIÉRREZINTELIGENCIA ARTIFICIAL

Index Terms—Inteligencia Artificial, Agentes Inteligentes, Sis-tema Experto, Jess, Jade.

Abstract—Documentación del Sistema de Diagnóstico Nutri-cional.

I. I NTRODUCCIÓN

En este reporte que a continuación se presenta tiene comoobjetivo indicar las facetas realizadas durante la elaboracióndel Sistema de Diagnostico Nutricional, haciendo uso de losagentes inteligentes para poder conformar un sistema experto,el cual de acuerdo a un proceso continuo y sistemáticoregistra, procesa, reporta y analiza información del estadonutricional de cierto paciente.

II. FUNDAMENTOS

II-A. Inteligencia Artificial

II-A1. Definición.: La Inteligencia Artificial, puedeconsiderarse como una de las disciplinas más nuevas,siendo curiosamente considerada a la vez como una grandesconocida. Esto es debido a que poca gente tiene claro quées la Inteligencia Artificial.

Pero, ¿qué es realmente la IA? Existen gran variedad dedefiniciones respecto a lo que es la IA, algunas más válidasque otras, pero podríamos intentar resumirlas comentandoque la IA trata de «desarrollar sistemas que piensen y actúenracionalmente».

En los últimos años la IA ha ido evolucionando, quizás conmayor celeridad que otras disciplinas, motivada probablementepor su propia inmadurez. Todo esto ha llevado a que la IAactualmente abarque una gran cantidad de áreas, desdealgunas muy generales como razonamiento, búsqueda, etc. aotras más específicas como los sistemas expertos, sistemas dediagnóstico, etc.

Podríamos indicar, sin lugar a dudas, que la IA puede seraplicada hoy en día a infinidad de disciplinas científicas y esque la IA es susceptible de aparecer allí donde se requiera elintelecto humano.

Actualmente en la IA ha surgido un nuevo paradigmaconocido como «paradigma de agentes», el cual está tomandoun gran auge entre los investigadores. Dicho nuevo paradigmaaborda el desarrollo de entidades que puedan actuar de forma

autónoma y razonada.

Si retomamos la definición dada anteriormente dondese consideraba a la IA como un medio para el desarrollode sistemas que piense y actúen racionalmente, podemospensar que la IA, en su conjunto, trata realmente de construirprecisamente dichas entidades autónomas e inteligentes.

De acuerdo con esta visión, se puede considerar a la IAcomo una disciplina orientada a la construcción de agentesinteligentes donde se integran las diferentes áreas que éstacomprende. Desde hace relativamente poco tiempo esta ideaestá siendo ya adoptada por investigadores en la materia;el propio Stuart Russell ha remodelado su conocido libroInteligencia Artificial, un enfoque moderno [Russell1996]para dar un enfoque de la IA orientado totalmente aldesarrollo de agentes.

Es importante resaltar que en el momento en que sedisponga de una metodología clara para la construcción dedichos agentes inteligentes, la aplicabilidad de las técnicasde IA a cualquier tipo de problema podrá abordarse de unamanera más clara y unificada.

De momento, se puede asegurar que, hoy en día, existe unaidea generalizada dentro de la IA de que nos encontramos anteel nacimiento de una nueva tecnología, la de agentes inteli-gentes, que permite abordar de una manera más apropiada laconstrucción de sistemas inteligentes más complejos aplicadosa muy diversos campos

II-B. Agentes Inteligentes

II-B1. Definición.: Al igual que ocurre con la propiadefinición de la IA, se pueden encontrar propuestas enla literatura un gran número de definiciones del conceptode agente, sin que ninguna de ellas haya sido plenamenteaceptada por la comunidad científica, siendo quizás lamás simple la de Russell [Russell1996], que considera unagente como una entidad que percibe y actúa sobre un entorno.

Basándose en esta definición, se pueden caracterizardistintos agentes de acuerdo a los atributos que posean (y quevan a definir su comportamiento) [Botti1999] para resolverun determinado problema.

Pero centrémonos en esta definición básica y apliquémoslaal ejemplo dado al inicio. Se dice que un agente está situado

2

en un entorno y dicho entorno para nuestro agente sería lapropia red (Internet).

Por otra parte en la definición se indica que debe percibiry actuar en dicho entorno. Quizás esta definición es muybásica y puede producir un efecto «contenedor» en el sentidode que es una definición muy amplia y numerosos sistemaspueden ser etiquetados como agentes cuando realmente no loson o por lo menos no deberían haber sido enfocados desdeeste punto de vista.

Hay que indicar que el término «agente» está de moday mucha gente se ha «subido al carro» indicando que lasaplicaciones que desarrollan son agentes.

No es momento de entrar en discusión, pero si que esnecesario remarcar el origen por el que se planteó estatecnología y es el hecho de que debe ser aplicada a sistemascomplejos, sistemas donde la aplicación de las técnicasexistentes hoy en día han fracasado o son sumamente difícilesde comprender y/o mantener.

En la mayoría de las ocasiones, los agentes no sondesarrollados de forma independiente sino como entidadesque constituyen un sistema. A este sistema se le denominamulti-agente [Huhns1998]. En este caso los agentes deben opueden interactuar entre ellos.

Las interacciones más habituales como son informar oconsultar a otros agentes permiten a los agentes «hablar»entre ellos, tener en cuenta lo que realiza cada uno de ellosy razonar acerca del papel jugado por los diferentes agentesque constituyen el sistema. La comunicación entre agentes serealiza por medio de un lenguaje de comunicación de agentes(ACL –Agent Communication Language).

II-B2. Aplicaciones de los agentes inteligentes.:Los agen-tes inteligentes pueden ser utilizados por las empresas ennumerosos dominios, entre estos:

La e-Reputación.La gestión de riesgos.La inteligencia territorial.El lanzamiento de productos.La vigilancia de la competencia.La vigilancia de líderes de opinión y del lobbying.La vigilancia de las tendencias

II-B3. Como funciona un agente inteligente:Un agenteinteligente es más que un simple sistema de búsqueda deinformación. El agente puede operar sin la intervención delusuario aun si éste está desconectado. Los agentes inteligentesincorporan funciones procedentes de la inteligencia artificial.

Tres características fundamentales de los agentes inteligen-tes:

1. La inteligencia: el agente sabe razonar y aprende a partirde la información que recoge

2. La interactividad: el agente puede interactuar con suentorno y otros agentes con el propósito de realizar unatarea

3. La autonomía: el agente puede tomar decisiones demanera autónoma.

II-C. Plataforma NetBeans

II-C1. Definición: NetBeans es un entorno de desarrollointegrado libre, hecho principalmente para el lenguaje deprogramación Java. Existe además un número importante demódulos para extenderlo. NetBeans IDE1 es un productolibre y gratuito sin restricciones de uso.

La plataforma NetBeans permite que las aplicaciones seandesarrolladas a partir de un conjunto de componentes desoftware llamados módulos. Un módulo es un archivo Javaque contiene clases de java escritas para interactuar con lasAPIs de NetBeans y un archivo especial (manifest file) quelo identifica como módulo.

Las aplicaciones construidas a partir de módulos puedenser extendidas agregándole nuevos módulos. Debido a que losmódulos pueden ser desarrollados independientemente, lasaplicaciones basadas en la plataforma NetBeans pueden serextendidas fácilmente por otros desarrolladores de software.

II-C2. NetBeans IDE:El IDE NetBeans es un entornode desarrollo integrado - una herramienta para programadorespensada para escribir, compilar, depurar y ejecutar programas.Está escrito en Java - pero puede servir para cualquierotro lenguaje de programación. Existe además un númeroimportante de módulos para extender el IDE NetBeans. ElIDE NetBeans es un producto libre y gratuito sin restriccionesde uso.

II-D. Plataforma CLIPS

II-D1. Definicion: CLIPS es una herramienta que proveeun entorno de desarrollo para la producción y ejecución desistemas expertos. Fue creado a partir de 1984, en el LyndonB. Johnson Space Center de la NASA. Los fondos cesaron aprincipios de los años 1990, y hubo un mandato de la NASApara comprar software comercial.

CLIPS es un acrónimo de C Language Integrated ProductionSystem (Sistema de Producción Integrado en Lenguaje C).En la actualidad, entre los paradigmas de programaciónque soporta CLIPS se encuentran la Programación lógica,la Programación imperativa y la Programación Orientada aObjetos.

CLIPS probablemente es el sistema experto más amplia-mente usado debido a que es rápido, eficiente y gratuito.Aunque ahora es de dominio público, aún es actualizado ymantenido por su autor original, Gary Riley.

3

II-D2. Caracteristicas principales:

Las características principales de CLIPS son:Representación del Conocimiento: CLIPS permite mane-jar una amplia variedad de conocimiento, soportando tresparadigmas de programación: el declarativo, el imperati-vo, y el orientado a objetos.Portabilidad: CLIPS fue escrito en C con el fin de hacerlomás portable y rápido, y ha sido instalado en diversos sis-temas operativos (Windows 95/98/NT, MacOS X, Unix)sin ser necesario modificar su código fuenteIntegrabilidad: CLIPS puede ser embebido en códigoimperativo, invocado como una sub-rutina, e integradocon lenguajes como C, Java, FORTRAN y otroDesarrollo Interactivo: La versión estándar de CLIPSprovee un ambiente de desarrollo interactivo y basadoen texto; este incluye herramientas para la depuración,ayuda en línea, y un editor integradoVerificación/Validación: CLIPS contiene funcionalidadesque permiten verificar las reglas incluidas en el sistemaexperto que está siendo desarrollado, incluyendo diseñomodular y particionamiento de la base de conocimientosdel sistema.Documentación: En la página web oficial de CLIPS seencuentra una extensa documentación que incluye unManual de Referencia y una Guía del Usuario.Bajo Costo: CLIPS es un software de dominio público.

III. D ESARROLLO

III-A. Agentes

A continuación se presentan los diversos diagramas parala obtener una mejor visualización de la problemática y lasolución del mismo.

III-A1. Diagrama de casos de uso:Los diagramas decasos de uso documentan el comportamiento de un sistemadesde el punto de vista del usuario. Por lo tanto los casosde uso determinan los requisitos funcionales del sistema, esdecir, representan las funciones que un sistema puede ejecutar.

Figura 1. Diagrama de casos de uso

III-A2. Diagrama de clases:Un diagrama de clases esun tipo de diagrama estático que describe la estructura deun sistema mostrando sus clases, atributos y las relacionesentre ellos. Los diagramas de clases son utilizados durante

el proceso de análisis y diseño de los sistemas, donde secrea el diseño conceptual de la información que se manejaráen el sistema, y los componentes que se encargaran delfuncionamiento y la relación entre uno y otro.

Figura 2. Diagrama de clases

III-A3. Diagrama de estados:Los diagramas de estadomuestran el conjunto de estados por los cuales pasa un objetodurante su vida en una aplicación en respuesta a eventos(por ejemplo, mensajes recibidos, tiempo rebasado o errores),junto con sus respuestas y acciones.

Figura 3. Diagrama de estados

III-A4. Diagrama de actividades: Los diagramas deactividades sirven para representar el comportamientodinámico de un sistema haciendo hincapié en la secuenciade actividades que se llevan a cabo y las condiciones queguardan o disparan esas actividades.

Figura 4. Diagrama de actividades

III-B. Sistema

A continuación se presenta las pantallas del programafuncionando.

4

Figura 5. Programa Iniciando

En esta imagen podemos apreciar la comunicación querealizan los agentes. A través del agente Sniffer

Figura 6. Comunicación de los agentes.

En esta imagen podemos ver que el agente llamado“agente” interactua, para poder indicar el diagnóstico demanera completa cuando una de las preguntas es opcional.

Figura 7. Agente llamado “agente”

Y en esta última imagen podemos apreciar la funcionalidadcompleta indicando, de esta manera el resultado del test.

Figura 8. Resultado

III-C. Diseño

Para poder tener una idea más sólida de los criterios aconsiderar para realizar la evaluación correspondiente deldiagnostico, se tomó en cuenta la siguiente lista de preguntas.Así como la base de hechos

III-C1. Preguntas:¿Qué actitud tiene frente a la comida?¿Cambian sus hábitos alimentarios luego de una discu-sión o situación difícil?A la hora de comer, ¿se siente identificado con algúnanimal en especial?¿De qué manera se comporta cuando come?¿En qué ambiente de su casa suele comer?¿Con qué frecuencia consume frutas y verduras frescas?¿Qué actividad lo ayuda a cultivar la paz interior?¿Qué opinión le merecen los alimentos integrales?¿Tiene problemas de constipación?¿Realiza algún tipo de actividad física?¿Con qué frecuencia consume carnes rojas, blancas yembutidos?¿Qué hace cuando se siente desequilibrado emocional-mente?¿Suele comer dulces, postres y golosinas?¿Presenta algún padecimiento de forma frecuente?¿Qué importancia le da a su imagen?¿Cuántos litros de líquido toma por día?¿Se preocupa por comer de forma variada?¿Qué actividad le atrae realizar con mayor frecuencia?¿Está en su peso ideal?¿Qué aspectos predominan en su personalidad?¿ Con qué frecuencia toma leche?¿Qué alimentos consume entre comidas?¿Con qué frecuencia cena?

III-C2. Base de hechos:HECHOS1. CLIPS> (defglobal ?*value* = "")2. CLIPS> (defrule rule1 (rango s)(CV s)(toma_agua

s)(fuma s)(azucar n)(balanceado n)(ejercicio n) => (bind?*value* "(assert (answer1 s))"))

3. CLIPS> (defrule rule2 (rango s)(CV s)(or(ejercicios)(ejercicio n))(fuma s) (zucar s)(balanceadon)(toma_agua n) => (bind ?*value* "(assert (answer2s))"))

4. CLIPS> (defrule rule3 (rango s)(CV s)(fuma s)(zucars)(balanceado s)(agua n)(ejercicio n) => (bind ?*value*"(assert (answer3 s))"))

5

5. CLIPS> (defrule rule4 (rango s)(CF s)(cenas)(vegetariano s)(alcohol n)(desayuno s) => (bind?*value* "(assert (answer4 s))"))

6. CLIPS> (defrule rule5 (rango s)(CF s)(cenan)(vegetariano s)(or(alcohol s)(alcohol n))(desayuno n)=> (bind ?*value* "(assert (answer5 s))"))

7. CLIPS> (defrule rule6 (rango s)(CF s)(cenan)(vegetariano s)(alcohol n)(desayuno s) => (bind?*value* "(assert (answer6 s))"))

8. CLIPS> (defrule rule7 (rango s)(TR s)(tres_comidass)(dulces n)(leguminosas s)(animal n)(sal n)(enlatadosn)(comidas n) => (bind ?*value* "(assert (answer7 s))"))

9. CLIPS> (defrule rule8 (rango s)(TR s)(tres_comidass)(dulces s)(leguminosas n)(animal s)(sal n)(enlatadosn)(comidas n) => (bind ?*value* "(assert (answer8 s))"))

10. CLIPS> (defrule rule9 (rango s)(TR s)(tres_comidasn)(dulces s)(leguminosas n)(animal s)(sal s)(enlatadoss)(comidas s) => (bind ?*value* "(assert (answer9 s))"))

11. CLIPS> (defrule rule10 (rango s)(CG s)(come_afueras)(come_casa n)(jugos n)(or(cereales s)(cerealesn))(leche n)(acei_veg n)(nutri n)(dieta n) => (bind?*value* "(assert (answer10 s))"))

12. CLIPS> (defrule rule11 (rango s)(CG s)(come_afueran)(come_casa s)(jugos s)(cereales n)(leche s)(acei_vegn)(nutriologo n)(dieta n) => (bind ?*value* "(assert(answer11 s))"))

13. CLIPS> (defrule rule12 (rango s)(CG s)(come_afueran)(come_casa s)(jugos s)(cereales s)(leche n)(acei_vegn)(nutriologo n)(dieta n) => (bind ?*value* "(assert(answer12 s))"))

14. CLIPS> (defrule rule13 (rango s)(CG s)(come_afueras)(come_Casa n)(jugos n)(cereales n)(leche n)(acei_vegs)(nutriologo n)(dieta s) => (bind ?*value* "(assert (ans-wer13 s))"))

15. CLIPS> (defrule rule14 (rango n)(fisicos s)(bateria n)=> (bind ?*value* "(assert (answer14 s))"))

16. CLIPS> (defrule rule15 (rango n)(psicologicos s)(fisicosn) => (bind ?*value* "(assert (answer15 s))"))

REGLAS

1. CLIPS> (defglobal ?*value* = "")2. CLIPS> (defrule rule1 (answer1 s) => (bind ?*value* "

Necesitas modificar tus habitos"))3. CLIPS> (defrule rule2 (answer2 s) => (bind ?*value* "

Imprime dieta para hombre/mujer"))4. CLIPS> (defrule rule3 (answer3 s) => (bind ?*value* "

Deberias cambiar tus habitos de vicios cotidianos"))5. CLIPS> (defrule rule4 (answer4 s) => (bind ?*value* "

Tu eres saludable"))6. CLIPS> (defrule rule5 (answer5 s) => (bind ?*value* "

Modifica habitos alimenticios"))7. CLIPS> (defrule rule6 (answer6 s) => (bind ?*value* "

Solo modifica algunas detalles en tus comidas"))8. CLIPS> (defrule rule7 (answer7 s) => (bind ?*value* "

Tu eres saludable"))9. CLIPS> (defrule rule8 (answer8 s) => (bind ?*value* "

Solo modifica algunos detalles de alimentacion"))10. CLIPS> (defrule rule9 (answer9 s) => (bind ?*value* "

Imprime dieta para hombre/mujer"))11. CLIPS> (defrule rule10 (answer10 s) => (bind ?*value*

" Imprime dieta para hombre/mujer"))12. CLIPS> (defrule rule11 (answer11 s) => (bind ?*value*

" Imprime dieta para hombre/mujer"))13. CLIPS> (defrule rule12 (answer12 s) => (bind ?*value*

" Imprime dieta para hombre/mujer"))14. CLIPS> (defrule rule13 (answer13 s) => (bind ?*value*

" Deberias llevar tu dieta al pie de la letra"))15. CLIPS> (defrule rule14 (answer14 s) => (bind ?*value*

" Esta en el diagnostico incorrecto"))16. CLIPS> (defrule rule15 (answer15 s) => (bind ?*value*

" Esta en el diagnostico incorrecto."))17. CLIPS> (defrule rule16 (error s) => (bind ?*value* "Tu

estas en excelentes condiciones de salud"))

IV. CONCLUSIÓN

Esta práctica fue fundamental para poder comprender lafuncionalidad y la usabilidad de los agentes inteligentes parael desarrollo de sistemas que colaboren en su ejecución sinduda alguna la Inteligencia Artificial ha dado un paso máshacia delante.

Existen ya prototipos que están siendo probados tanto en elámbito académico como industrial y ya empiezan a aparecerlos primeros productos comerciales. Cabe indicar que, comosiempre ocurre cuando aparece una nueva tecnología, nodebemos pensar que todo son agentes y lo que había antesno es válido.

Las opciones a la hora de emplear agentes, tal y comohemos descrito, son múltiples, pero no conviene creer quecualquier problema es tratable de forma sencilla con unaaproximación de sistema basado en agentes. Es posible que enocasiones el empleo de técnicas clásicas resulte más adecuado.

V. REFERENCIAS

[1] Grupo de Investigación HIDRA Departamento deIngeniería de Sistemas y Computación Universidad delos Andes, AGENTES Y SISTEMAS MULTIAGENTE:INTEGRACIÓN DE CONCEPTOS BÁSICOS.

[2] Julián Moreno Cadavid & Julián Esteban Santamaría.Informe de Avance del Proyecto de Investigación DIME- Diseño e implementación de un Sistema Multi-Agenteque simule el comportamiento del mercado energético enColombia. Modulo: “Componentes del Mercado de EnergíaEléctrica en Colombia”, 2003.

[3] C.A. Iglesias, "Definición de una Metodología para elDesarrollo de Sistemas Multiagentes. Tesis Doctoral", Febrero1998, Departamento de Ingeniería de Sistemas Telemáticosde la Universidad Politécnica de Madrid.

6

[4] Revista "Inteligencia Artificial" Revista Iberoamericanade Inteligencia Artificial. ISSN 1137-3601

[5] Russell, S: Inteligencia Artificial: un enfoque moderno.Prentice - Hall. México, (1996).

[6] Franklin, S., Graesser, A.: Is it an Agent, or just aProgram?: A Taxonomy for Autonomous Agents. Proceedingsof the Third International Workshop on Agent Theories, Ar-chitectures, and Languages.

Springer-Verlag (1996).

[7] F. Bellifemine, G. Caire, A. Poggi, G. Rimassa(2003). JADE A White Paper. Consultado en Junio 2013 enhttp://jade.tilab.com/papers/2003/WhitePaperJADEEXP.pdf

[8] Cuesta Morales Pedro, Departamento deInformática (Universidad de Vigo) (). Ingenieríade Software Orientada a Agentes. Consultado enhttp://www.esiiab.uclm.es/conferencias/traspas/pcuesta.pdf

[9] Antonio F. Gómez Skarmeta y Juan A.Botía Blaya (2002). Tecnologías y Plataformas deAgentes. Consultado en marzo 02 de 2009 enhttp://ants.dif.um.es/~juanbot/page_files/uimp2002.pdf

[10] Tulio José Marchetti, Alejandro Javier García(CACIC 2003). Evaluación de Plataformas para elDesarrollo de Sistemas Multiagente. Consultado enhttp://cs.uns.edu.ar/~ajg/papers/2003(Cacic)MarchettiGarcia.pdf