¿Qué son los Agentes Inteligentes de Software? Erazonamiento simbólico creando así los primeros...

23
Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008 25 ¿Qué son los Agentes Inteligentes de Software? M.C. Luis Ernesto Mancilla Espinosa 1 Introducción En esta era de grandes avances, la tecnología juega un papel trascendental; los científicos se preocupan por el desarrollo de nuevas teorías que les permitan a los ingenieros crear técnicas y herramientas de apoyo para una vida más sencilla y práctica. En el área computacional, los expertos se están dedicando al diseño, creación e implementación de sistemas inteligentes, que permitan una mejor interrelación con el usuario. Los avances propuestos por las ciencias computacionales son muy útiles ya que al relacionarse con otras áreas proveen la simplificación de algunas actividades. Una rama de las ciencias computacionales, que está tomando 1 Ingeniero en Comunicaciones y Electrónica, es Maestro en Ciencias en Ciencias de la Computación y actualmente es Candidato a Doctor en Ingeniería especialidad en Mecatrónica. Es profesor de la Maestría en Ciencia en Ciencias de la Computación. [email protected] mucho auge en la actualidad es la Inteligencia Artificial, y dentro de ella se encuentra el área de Agentes Inteligentes, que está dedicada a la creación de sistemas que permitan la optimización de actividades humanas así como emular el comportamiento humano aportando un grado más de inteligencia a la experticia de sistemas que están simplificando y optimizando actividades en las cuales no habían sido capaces de implementarse. En el artículo abordamos el estudio de los agentes inteligentes, su historia, clasificación y sus aplicaciones. Inteligencia Artificial y Agentes Inteligentes En las últimas décadas la inteligencia Artificial ha tomado un papel relevante en nuestras vidas, está enfocada en crear una forma de programación no convencional, que mediante reglas prácticas y procedimientos heurísticos haga que las máquinas se comporten de una manera inteligente y sean capaces de discernir. Podemos definir a la Inteligencia Artificial, nombrada por John MacCarty, como el campo de las ciencias

Transcript of ¿Qué son los Agentes Inteligentes de Software? Erazonamiento simbólico creando así los primeros...

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

25

¿Qué son los Agentes Inteligentes de Software?

M.C. Luis Ernesto Mancilla Espinosa1

Introducción

En esta era de grandes avances, la

tecnología juega un papel trascendental;

los científicos se preocupan por el

desarrollo de nuevas teorías que les

permitan a los ingenieros crear técnicas

y herramientas de apoyo para una vida

más sencilla y práctica. En el área

computacional, los expertos se están

dedicando al diseño, creación e

implementación de sistemas inteligentes,

que permitan una mejor interrelación con

el usuario. Los avances propuestos por

las ciencias computacionales son muy

útiles ya que al relacionarse con otras

áreas proveen la simplificación de

algunas actividades.

Una rama de las ciencias

computacionales, que está tomando

1 Ingeniero en Comunicaciones y Electrónica, es Maestro en Ciencias en Ciencias de la Computación y actualmente es Candidato a Doctor en Ingeniería especialidad en Mecatrónica. Es profesor de la Maestría en Ciencia en Ciencias de la Computación. [email protected]

mucho auge en la actualidad es la

Inteligencia Artificial, y dentro de ella se

encuentra el área de Agentes

Inteligentes, que está dedicada a la

creación de sistemas que permitan la

optimización de actividades humanas así

como emular el comportamiento humano

aportando un grado más de inteligencia a

la experticia de sistemas que están

simplificando y optimizando actividades

en las cuales no habían sido capaces de

implementarse.

En el artículo abordamos el

estudio de los agentes inteligentes, su

historia, clasificación y sus aplicaciones.

Inteligencia Artificial y Agentes Inteligentes

En las últimas décadas la inteligencia

Artificial ha tomado un papel relevante

en nuestras vidas, está enfocada en crear

una forma de programación no

convencional, que mediante reglas

prácticas y procedimientos heurísticos

haga que las máquinas se comporten de

una manera inteligente y sean capaces de

discernir.

Podemos definir a la Inteligencia

Artificial, nombrada por John MacCarty,

como el campo de las ciencias

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

26

computacionales que trata de mejorar el

desempeño de las computadoras al

dotarlas de características asociadas con

la inteligencia humana, como la

capacidad de entender el lenguaje

natural, o de razonar bajo condiciones de

incertidumbre para tomar las mejores

decisiones.

Desde su surgimiento hasta

nuestros días, la Inteligencia Artificial ha

transitado por grandes etapas, desde la

implementación de juegos en

computadora, demostraciones de

teoremas, pasando por el surgimiento de

nuevas técnicas como Robótica;

Procesamiento de Lenguaje Natural;

Reconocimiento de Patrones; Sistemas

Expertos; Tutores Inteligentes; Redes

Neuronales; Manipulación Inteligente de

Base de Datos; Web Inteligentes;

Minería de Datos; Programación

Automática; Visión Computarizada hasta

llegar a los Agentes Inteligentes (Blanco,

2002).

¿Qué son los agentes? Un Agente,

de manera general, es todo aquello que

puede considerarse que percibe su

ambiente mediante sensores y que

responde o actúa en tal ambiente

mediante efectores (Russell,1996).

De esta manera es posible

encontrar diversos tipos de agentes,

entre ellos los agentes humanos, en los

que los cinco sentidos sirven de sensores

y las extremidades sirven de efectores;

los agentes robóticos, en el que los

sensores son suplantados por cámaras de

video y los efectores son ciertos

mecanismos; y los agentes de software,

que son un programa de computación

que se ejecuta en un ambiente y realiza

acciones dentro de éste para alcanzar las

metas para las cuales fue diseñado y sus

percepciones y acciones están dadas por

instrucciones de programas en algún

lenguaje en particular. (Franklin 1996).

Figura 1. Diagrama de Agente en interacción con el ambiente. [Russell,1996].

Figura 2. Diagrama de tipos de Agentes. [Franklin 1996]

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

27

La cuestión de qué es un agente

(Foner, 1993), está aún siendo debatida

al correr el riesgo de que cualquier

programa sea denominado agente

(Franklin, 1996). Se pueden distinguir

dos nociones extremas de agentes

(Wooldrige, 1995):

• Una noción débil de agente

consiste en definir un agente como a una

entidad que es capaz de intercambiar

mensajes utilizando un lenguaje de

comunicación de agentes. Esta definición

es la más utilizada dentro de la ingeniería

software basada en agentes, cuyo fin es

conseguir la interoperabilidad entre

aplicaciones a nivel semántico utilizando

la emergente tecnología de agentes.

• Una noción más fuerte o

restrictiva de agente es la enunciada por

Shoham, en su propuesta de

programación orientada a agentes (AOP),

donde un agente se define como una

entidad cuyo estado es visto como un

conjunto de componentes mentales, tales

como creencias, capacidades, elecciones y

acuerdos. (Shoham, 1993)

Un tipo de agente de software

muy particular son los Agentes Inteligentes,

de los que hablaremos más tarde. Antes

de abordar a los agentes inteligentes, es

importante considerar el papel de la

inteligencia, la razón de esto es que al

partir de una base conceptual que soporte

los mecanismos del comportamiento

inteligente, tales como son el uso

adecuado del conocimiento y la capacidad

de razonamiento, permitirá proporcionar

inteligencia a los agentes de software.

El Rol de la Inteligencia

La inteligencia es la capacidad de

reconocer estructuras y resolver

problemas en situaciones análogas y

modificarlas para lograr algún objetivo,

haciendo uso del conocimiento, la mente y

la inteligencia han resultado ser

elementos muy difíciles de entender

completamente y por esta razón han

surgido varias explicaciones basadas en

teorías. Cada una de estas teorías

explicativas, ha dado origen a algún

movimiento filosófico en particular, y

dentro de cada uno de ellos se produce

una definición y clasificación del

conocimiento a partir de los principios

que apoyen. (Ramos, 1997)

Es claro que la base sobre la cual

se sustenta la inteligencia es el

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

28

conocimiento. Y definir este concepto no

es sencillo dada su complejidad. Una

definición de conocimiento más completa

(McGraw, 1989), menciona que es un

conjunto de descripciones, relaciones y

procedimientos, tales como: descripciones

simbólicas de conceptos, descripciones

simbólicas de relaciones y

procedimientos para manipular ambos

tipos de descripciones. Es la inteligencia,

la característica que se agrega a los

agentes de software para convertirse en

agentes inteligentes.

Agentes Inteligentes

Se considera a los Agentes Inteligentes

como una pieza de software que ejecuta

una tarea dada utilizando información

recolectada del ambiente, para actuar de

manera apropiada hasta completar la

tarea de manera exitosa. El software debe

ser capaz de auto ajustarse basándose en

los cambios que ocurren en su ambiente

de forma tal que un cambio en las

circunstancias producirá un resultado

esperado. (Gilbert, 1995)

Los Agentes Inteligentes son

racionales, es decir, hacen lo correcto. Lo

correcto es lo que le permite al agente

obtener el mejor desempeño. Para

evaluar el desempeño es necesario decidir

cómo, que es el criterio que sirve para

definir qué tan exitoso ha sido un agente

en la consecución de los objetivos para el

cual fue programado, ésta medida se

establece como una norma por parte del

diseñador y la comparación contra la

misma, permite determinar la satisfacción

de desempeño del agente; y cuándo

medir dicho desempeño que se refiere al

tiempo empleado en la realización de la

tarea que se considere aceptable,

dependiendo del ambiente de acción.

Los Agentes Inteligentes

proporcionan una técnica para resolver

problemas actuando en representación

del usuario, para realizar diversas tareas

tales como, búsqueda y filtraje de

información, automatización de tareas,

etc. Y en la actualidad son objeto de

estudio por disciplinas como la

psicología, sociología y en algunas otras

ramas de las ciencias sociales.

Breve evolución de los Agentes Inteligentes

Los estudios de Agentes Inteligentes

comienzan cuando se adquiere la

capacidad de representar simbólicamente

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

29

aspectos del mundo real, (Physcal Symbol

System Hypotesis), para tener un

comportamiento inteligente, que se

identifica con la utilización del

razonamiento lógico explícito para decir

que es lo que se tiene que hacer. Entre

1984 y 1985, surgen problemas con el

razonamiento simbólico creando así los

primeros agentes reactivos; y es hasta

1990 cuando comienzan a aparecer

algunas arquitecturas híbridas

estratificadas por capas, que simulan los

primero agentes inteligentes. (Antoine,

2003)

General Magic en 1990 fue la

primera compañía en invertir en

tecnología de agentes para construir un

sistema basado en agentes para

dispositivos portátiles. Fue llamada

“Telscrip” y lo utilizó Motorola y AT&T.

(Lawton, 1996). Más tarde Telscrib

evoluciona en “Tabriz AgentWare”, que

desarrolló para trabajo en servidores en

Internet.

Lo que se pretendía con la

tecnología de agentes era lograr un gran

parecido con la actividad humana y una

gran capacidad de raciocinio, se creó el

lenguaje de manipulación y consultas de

conocimiento (KQLM), que funciona para

compartir conocimiento y comunicación

entre los mismos agentes.

En 1995, con Windows 95 y las

interfaces gráficas, nace Microsoft Agent.

Posteriormente al tomar más auge el

lenguaje java, con su plataforma

independiente, dio más seguridad al

desarrollo de agentes móviles.

Genesereth propone los agentes

como un medio de integración del

software. Los agentes encapsulan los

programas y mediante la definición de

unas primitivas, permiten el intercambio

de órdenes y datos entre los programas.

(Genesereth 1992). La principal

diferencia del enfoque de agentes es la

flexibibilidad de la comunicación, que se

basa en la existencia de una ontología

compartida por las aplicaciones definida

en un lenguaje de representación del

conocimiento denominado KIF (Formato

de Intercambio del Conocimiento;

Knowledge Interchange Format) y un

lenguaje y protocolo para definir las

primitivas de comunicación denominado

KQML (Lenguaje de manipulación y

consulta de conocimiento; Knowledge

Query and Manipulation Language)

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

30

Características y Clasificación de los agentes

Puede encontrarse un sinfín de

definiciones de agente y lo que apoya a

estas son las características que posee

dicho agente y también contribuyen a

que un agente pertenezca o no a una

clasificación. A continuación se citan las

características más importantes de los

Agentes Inteligentes (Russell, 1996)

• Autonomía. Un agente opera

sin la intervención directa de un

humano, además tiene control

sobre sus acciones y su estado

interno.

• Habilidad Social. Capacidad

para interactuar con otros

Agentes Inteligentes o el

usuario humano.

• Reactividad: perciben el

entorno y responden en un

tiempo razonable a los cambios

que ocurren en el.

• Pro actividad: los agentes

pueden reaccionar por iniciativa

propia sin necesidad de que el

usuario tenga que activarlo.

• Orientación hacia el objeto

final. Divide su tarea compleja

en varias actividades pequeñas

para así poder lograr la meta

compleja.

• Racionalidad. El agente

siempre actuará para lograr sus

metas y nunca actúa de forma

que evite la consecución de las

mismas

• Adaptabilidad. El agente debe

ser capaz de ajustarse a los

hábitos, formas de trabajo y

necesidades del usuario.

• Colaboración. El agente debe

ser capaz de determinar

información importante ya que

el usuario puede proporcionar

información ambigua.

Los Agentes Inteligentes son

Racionales. Utilizan el razonamiento

basado en el conocimiento, suelen

considerar una base de conocimiento, que

incorpora una serie de hechos y reglas, de

los cuales se valdrá de un “motor” de

inferencias.

Al hablar de un Agente Racional

Ideal, existe un elemento al que hay que

prestarle atención y es la “Parte de

Conocimiento Integrado”, Si las acciones

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

31

que emprende el agente se basan

exclusivamente en un conocimiento

integrado, con lo que se hace caso omiso

de sus percepciones, se dice que el agente

es autónomo. El Auténtico Agente

Inteligente Autónomo debe ser capaz de

funcionar satisfactoriamente en una

amplia gama de ambientes, considerando

que se le da tiempo suficiente para

adaptarse.

Una vez que se ha revisado las

características de los agentes se permite

clasificarlos, ya que es posible encontrar

bastantes, como se ve en la figura 3; sin

embargo, es necesario reclasificarlos para

su mejor comprensión.

Figura. 3 Tipología de Agentes (KE Magazine, 1996)

A continuación describiremos, de

manera general, una clasificación de los

Agentes Inteligentes en base la relación

existente entre percepciones y acciones,

la aplicación a la que sirven, y

características especiales.

Clasificación dependiendo de la relación entre percepciones y acciones

• Agentes de Reflejo Simple.

Actúa encontrando una regla cuya

condición coincida con la

situación actual (definida por la

percepción) y efectuando la acción

que corresponda a tal regla.

• Agentes Bien Informados de

todo lo que Pasa. Actualiza

constantemente la información

que le permita discernir entre

estados del mundo y su evolución;

además de necesitar conocer como

las acciones del propio agente

están afectando al mundo; así se

mantiene informado acerca de

esas partes no visibles de él.

• Agentes Basados en Metas. Es

sencillo cuando con una sola meta

se alcanza con una acción. Debe

ser flexible con respecto a

dirigirse a diferentes destinos, ya

que al marcar un nuevo destino,

se crea en el agente una nueva

conducta.

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

32

• Agentes Basados en Utilidad.

La utilidad es una función que

correlaciona un estado y un

número real mediante el cual se

caracteriza el correspondiente

grado de satisfacción.

Clasificación de acuerdo al del tipo de aplicación

• Agente de interfaz o usuario.

Funciona como un asistente

personal, sus características

principales son: la autonomía y el

aprendizaje. Enseñan al usuario a

utilizar una aplicación en

particular, poseen una base de

conocimiento donde almacena el

conocimiento adquirido por el

usuario o por otros agentes

• Agentes de Búsqueda. No son

simplemente técnicas de

búsqueda, sino que tienen que

interpretar patrones de búsqueda.

Debe ser capaz de crear

información útil para el usuario a

partir de pedazos de información.

• Agentes de Monitoreo. Estos

avisan a los agentes de interfaz

sobre algún cambio en el

contenido de alguna página Web.

• Agentes de Filtrado. Trabaja en

base al perfil definido por el

usuario. Interactúa el de

monitoreo para tener siempre

actualizada la información de la

Web como de los intereses del

usuario.

Clasificación de acuerdo a características especiales

• Agentes Deliberantes o

Proactivos. Son agentes que

poseen mucho conocimiento del

entorno en el que se encuentran y

son capaces de crear nuevos

planes y adelantarse a lo que va a

ocurrir en su entorno. En esta

clasificación encontramos el

modelo BDI (Belief, Desire,

Intention) y BVG.

• Agentes Reactivos. Son sistemas

estímulo-respuesta que actúan a

partir de la observación directa y

continua del entorno. Se adaptan

perfectamente a los entornos

dinámicos ya que no tienen que

actualizar ninguna representación

interna del entorno como los

agentes BDI.

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

33

• Agentes Estacionarios. Son un

tipo de agente que no poseen la

capacidad de desplazarse y salir

del entrono.

• Agentes Móviles. Son agentes

que tienen la capacidad de

desplazarse a través de una red;

de esta forma cambian el entorno

en el que se ejecutan. Se reduce el

consumo de recursos en la

máquina en la que se encontraba

inicialmente el agente.

Estructura y Construcción de los Agentes Inteligentes

Para realizar una correcta

implementación de los agentes

inteligentes es necesario conocer su

estructura interna. Ésta contiene, como

lo muestra la figura 4, dos partes

fundamentales, la arquitectura y el

programa de agente; obedeciendo a la

ecuación:

Agente = Programa de Agente +

Arquitectura

Figura 4 . Esquema de un agente inteligente[Russell, 1996]

La arquitectura se refiere la parte

Hardware (sensores y efectores) que

están entre el entorno y el Programa de

Agente; proporciona al programa las

percepciones del entorno que se obtienen

a partir de los sensores e indica a los

efectores los comandos asociados a las

acciones que tienen que ejecutar. Para

ejemplificarla podemos mencionar una

computadora, una cámara, un brazo

robótico u otro dispositivo que funcione

como sensor.

El programa de agente es la parte

Software que se encarga de procesar las

percepciones obtenidas a partir de los

sensores para determinar qué acciones

deben ejecutar los efectores. Procesa la

información que proviene de los sensores

Sensores

Efectores

Ambiente A R Q U I T E C T U R A

Programa de Agente

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

34

para determinar la acción más adecuada

en cada momento.

La parte más importante de la

estructura para el desarrollo del sistema

de agente planteado en esta investigación

es sin duda el diseño del programa de

agente, para esto es necesario tomar en

cuenta puntos como el entorno en el que

se desarrollará, las percepciones que se

obtienen del ambiente, las acciones que

realizará el agente y los objetivos que

debe alcanzar el agente. Podemos

mencionar una serie de pasos para la

construcción de un programa de agente:

1. Analizar el tipo de problema que

vamos a tratar para poder definir

claramente el problema.

2. Definir el entorno, las

percepciones, las acciones y las

metas

3. Representar el conocimiento

definiendo una técnica de

representación

4. Diseñar el agente con la base de

conocimiento y el mecanismo de

inferencia respectivo.

5. Realizar las pruebas

correspondientes.

Hablando en términos de

programación, existe también un

programa esqueleto de agente, en el que

de manera general se establece las

funciones que realizará el agente

inteligente de manera interna ([Russell,

1996). El programa esqueleto es:

1. function AGENTE-

ESQUELETO(percepción)

returns acción

2. static: memoria, memoria del

agente respecto a su entorno

3. memoria <= ACTUALIZAR-

MEM(percepción, memoria);

4. acción <= ELEGIR-MEJOR-

ACC(memoria);

5. memoria <= ACTUALIZAR-

MEM(acción, memoria)

6. returns acción

En este caso, cada vez que se pida,

se actualiza la memoria para que refleje la

nueva percepción, se escoge la mejor

acción y también se consigna en la

memoria la acción realizada. La memoria

persiste de una actualización a otra. Es

posible agregar una función llamada,

margen de error, en la que el agente

pueda evaluar si la acción es correcta o

qué grado de satisfacción se está

brindando al usuario, y dependiendo de

esto se agregue o no a la memoria. Podría

agregarse antes de la última actualización

de la memoria. Esta función no es tan

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

35

necesaria pero proporcionaría una mayor

ventaja al programa de agente.

Para el desarrollo y construcción

de Agentes (Jiménez, 2002), es

recomendable utilizar métodos similares

a los utilizados comúnmente en

desarrollo de Ingeniería de Software y

Sistemas de Información. (Jiménez,

2002). De esto se desprende que los

procesos a ejecutar son los típicos

Análisis, Diseño, Implantación y Prueba.

A continuación, se presenta un Método

para el desarrollo y construcción de

agentes inteligentes. Esto no es más que

un conjunto de pasos estructurados, a los

cuales no se asocian herramientas

específicas para la ejecución de sus pasos

pues se considera que la elección de una u

otra herramienta para uno u otro paso

del método dependerá de las condiciones

específicas del problema que se pretenda

resolver, así como de los recursos con los

que se cuente.

1. Definición del Problema del

Agente. Se establece una

conceptualización amplia y clara del

problema que se pretende resolver con el

uso de agentes inteligentes, se identifica

el problema; se realiza un análisis del

mismo y finalmente se hace una

construcción del modelo conceptual de la

situación.

2. Adquisición y Representación

del conocimiento. Se genera una

representación de este modelo conceptual

en términos de conocimiento, la cual sea

transportable al medio computacional. Se

realiza primero la adquisición del

conocimiento definiendo las

percepciones, las acciones, los objetivos,

las metas y el ambiente. Como segunda

actividad se realiza la representación del

conocimiento, haciendo un análisis del

conocimiento adquirido, una selección del

esquema de representación y finalmente

la representación del conocimiento.

3. Diseño del Agente. Esta etapa

del proceso es muy importante pues es la

que corresponde con el diseño de la

solución en el método clásico de diseño y

construcción de sistemas de información,

y en el que se pretende generar un

modelo del agente, que sea

computacionalmente aplicable. Para

lograr esto, el proceso se divide en el

Diseño de la Base de Conocimiento, el

Diseño del Motor de Inferencia o Motor

de ejecución, el Diseño de la Interfaz y el

Diseño del Lenguaje de Comunicación.

4. Implantación del Agente. Se

enfoca en la construcción computacional

del agente inteligente diseñado, que no es

más que la implantación del diseño

obtenido en el proceso previo. Se realiza

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

36

un análisis y selección de herramientas de

Implantación, la implantación del

Agente, la implantación de la Base de

Conocimiento, la implantación del Motor

de Inferencia o de ejecución, la

implantación de la Interfaz y la

implantación de la Comunicación.

5. Prueba del Agente. Se realiza

una validación del agente construido, en

el cual se verifica y ajusta el

funcionamiento de dicho agente, en

función de los requerimientos y la

situación analizada en el primer proceso

planteado. Inicia con el Diseño de

pruebas, se hace la aplicación de las

mismas y finalmente se depuración el

Agente.

Aplicaciones y ejemplos de Agentes Inteligentes

Como ya hemos visto los Agentes

Inteligentes son metodologías que están

tratando de simplificar las actividades

cotidianas de las personas en donde sea

que se desenvuelven por lo que

encontramos diversas aplicaciones, que

van desde la investigación hasta

aplicaciones empresariales, pasando por

áreas comerciales, de salud, académicas,

financieras etcétera.

Aplicaciones Generales

Dentro del entorno

computacional, se pueden identificar ocho

áreas de aplicación de los Agentes

Inteligentes (Jiménez 2000).

Administración de Redes y

Sistemas

Los usuarios de los ambientes

cliente/servidor requieren de

herramientas de gestión extremadamente

simplificadas, para poder encarar la

creciente complejidad. En el área de

administración de redes y sistemas los

agentes han existido por varios años,

pero más como funciones fijas que como

agentes inteligentes. Sin embargo,

pueden ser utilizados para mejorar los

softwares de gestión y administración de

sistemas, ayudando en el filtrado de

información y en la ejecución de acciones

automáticas bajo un alto nivel de

abstracción; incluso pueden utilizarse en

la detección de patrones en el

comportamiento del sistema, y en la

consecuente reacción basada en estos, así

como en la administración dinámica de

grandes configuraciones.

Acceso remoto y administración.

Con la evolución de la computación hacia

los ambientes de redes los usuarios

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

37

exigen cada día una mayor movilidad, es

decir, una mayor y mejor capacidad de

conexión remota. Agentes Inteligentes

ubicados en la red pueden despojar los

requerimientos de los usuarios de las

perturbaciones de esta, además de lo cual

pueden procesar datos en su origen y

llevar sólo la estrictamente requerida al

usuario. Debido a la gran difusión que

han tenido los dispositivos móviles; como

ejemplo de estos agentes móviles

tenemos: Aglets Workbench de IBM,

ARA(Agents Remot Action ), MOA(Mobile

Objects Agents), Java Agent Template, entre

otros. (Perez 2000 )

Correo y mensajería

El software de manejo de mensajes ha

existido por algún tiempo, y es un área

donde actualmente se utilizan los

Agentes Inteligentes ya que pueden

facilitar todas estas funciones

proporcionando reglas para la

manipulación de mensajes que pueden

especificarse a través del tiempo, y que

permiten que el agente actúe como

intermediario del usuario. Además, es

posible que el agente deduzca estas

reglas estableciendo patrones en base a la

observación del comportamiento del

usuario. Como ejemplo podemos

mencionar a los agentes de filtrado, que

utilizan técnicas de filtrado y aprendizaje

máquina para filtrar mensaje escritos.

(Baldassin, 1996).

Recuperación y manejo de

información

En esta área los agentes están ayudando

a los usuarios no sólo a buscar y filtrar la

información, sino también a

categorizarla, priorizarla, diseminarla

selectivamente, añadirle anotaciones y

compartirla bajo criterios colaborativos.

Colaboración

En esta área los componentes comunes

son: trabajo en grupo y recursos

compartidos. Los usuarios no sólo

requieren de una infraestructura que les

permita el compartir los recursos de

forma robusta y escalable, sino que

también requieren de otras funciones que

les permitan crear y gerenciar equipos

colaborativos, así como los productos por

ellos generados. Es aquí donde se halla

un territorio amplio para el uso de

agentes inteligentes. En muchos de los

casos la teoría de agentes no sólo se ha

utilizado en aplicaciones, sino que además

ha habido avances en cuanto a la misma

creación de teoría como es el caso de una

investigación donde se pretende

construir una estructura de

experimentación de agentes autónomos,

permitiendo una instalación en diferentes

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

38

ambientes, además de proporcionar un

conjunto de herramientas para describir

y controlar diversos tipos de agentes.

(Moniz 1994)

Workflow y gestión

administrativa

La gestión administrativa incluye áreas

como la administración de workflow y la

integración computacional y telefónica,

donde los usuarios necesitan hacer sus

procesos más eficientes y reducir el costo

de los agentes humanos que intervienen.

Es evidente que en esta área el uso de

Agentes Inteligentes puede permitir

deducir patrones en los procesos, así

como automatizarlos.

Comercio electrónico

Los Agentes Inteligentes pueden ayudar

en el comercio electrónico de diversas

formas. Los agentes pueden “ir de

compras” tomando las especificaciones

del usuario y regresando con

recomendaciones de compras que

cumplan estas especificaciones, también

pueden actuar como agentes de ventas y

promotores de productos y servicios

para los usuarios, y también pueden

ayudar a los clientes a resolver sus

problemas. Un ejemplo es el proyecto

SMarket, donde se construye un sistema

multiagente para las compras en línea,

donde el comprador será representado

por el agente comprador y el negocio

estará representado por el agente

vendedor, cada uno de los agentes esta

representado por una base de

conocimiento, interacciones, reglas

heurísticas, creencias y las relaciones con

ciertos estados. (Almeida, 1996). En el

aspecto financiero se desarrollan métodos

usados para diseñar sistemas de

predicción concentrándose en el

desarrollo de los sistemas basados en

agentes artificiales que puedan controlar

ciertos puntos financieros que puedan

afectar a una organización. (Sthephens,

1999)

Interfaces de usuario adaptativas

A pesar de la masificación de su uso, las

computadoras siguen siendo para la

mayoría de las personas herramientas

difíciles de manejar. Al incrementarse las

capacidades y aplicaciones

computacionales, las interfaces de

usuarios deben absorber este aumento de

complejidad, y, puesto que la población

de usuarios se incrementa y diversifica,

también deben ser capaces de adaptarse a

las individualidades aprendiendo y

reflejando sus hábitos y preferencias. Los

Agentes Inteligentes pueden utilizarse

para afrontar todos estos problemas

permitiendo a los sistemas monitorear las

acciones de los usuarios, desarrollar

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

39

modelos de las habilidades del usuario, y

ayudando automáticamente cuando

surgen problemas. Como el caso de los

agentes que enseñan al usuario a utilizar

una aplicación en particular, poseen una

base de conocimiento donde almacena el

conocimiento adquirido por el usuario o

por otros agentes, la información la envía

en mensajes de texto utilizando el KQML

(Knowledge and Query Manipulation

Language)[Pereira 2000].

Los juegos de computadora

también se relacionan con los agentes

como el caso de la implementación de

agente como una especie de

componentes, o amigos, controlados por

la computadora como humanos, esos

personajes podrían tener sistemas

completos o parciales de sensado visual,

auditivo, táctil, olfativo, y gusto. La

información sensada por esos sistemas

podría procesarse en un módulo de IA, el

cerebro, para actuar, aprender, y

reaccionar dependiendo de la

personalidad, sentimientos y necesidades

de cada personaje. Esto es conocido como

un synthetic character que vive en un

mundo virtual o agentes autónomos se

encarga de investigar el uso de los

sentidos combinados con técnicas de IA

con el objetivo de crear personajes con

comportamientos realistas. Esas técnicas

tienen la intención de forjar una

personalidad, usando memoria

cognoscitiva, sistemas basados en reglas,

y demás para producir agentes que

aparentan estar vivos e interactúan en su

propio mundo, quizás también

interactuando con humanos de la vida

real. (Sebastian, 2002)

Las ciencias naturales también

son un área en la que los agente

inteligentes se hacen presentes, ya que se

están construyendo sistemas

multiagentes que contribuyan al mejor

manejo de recursos naturales, como en el

proyecto en el que se desea construir un

sistema que permite identificar insectos

en un ambiente, colocando el orden de los

insectos en una base de conocimiento.

(Zanusso, 2001)

Los agentes también se

encuentran en otros sistemas como en

sistemas de control de tráfico aéreo

dónde los agentes son utilizados para

representar los aviones y los

controladores aéreos; sistemas de

monitorización en redes de suministro,

como las de las Utilities, las Telcos, o

redes de transporte en servicios de

logística para la gestión de flotas;

Sistemas que gestionan los stocks y los

procesos de fabricación de distintas

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

40

fábricas; Sistemas que permiten realizar

tareas de administración de sistemas

como un inventario de HW y SW de una

red corporativo; Gestión de perfiles para

la televisión. Según los perfiles de la

unidad familiar seleccionar los

programas. Existe otro sistema con

Agentes Inteligentes HeCaSe: An Agent-

Based System to Provide Personalised

Medical Services, que apoya en la

atención medica de una clínica. Otros

agentes que actualmente están en uso en

el Internet son los de la Coca-Cola que

recibe las preguntas del usuario,

proporcionando respuestas. O el de la

caja Madrid que da información acerca de

los financiamientos de la misma

institución.

Bajo un enfoque más amplio, los

Agentes Inteligentes son de utilidad en

aplicaciones computacionales utilizadas

en las más diversas áreas, y a

continuación mencionaremos algunos

ejemplos de Agentes Inteligentes

utilizados en varias de estas áreas.

Aplicaciones industriales.

Dentro del campo industrial

existen varios sistemas de control de

procesos y manufactura que utilizan

agentes para llevar a cabo sus funciones.

Como ejemplos podemos citar:

• ARCHON (Architecture for

Cooperative Heterogeneous Online

Systems). Esta es una plataforma

de software para la construcción

de sistemas multiagentes, junto

con una metodología asociada

para la construcción de

aplicaciones utilizando la

plataforma. (Jennings 1995). Los

agentes dentro de ARCHON son

sistemas medianamente pesados,

que constan de cuatro elementos

principales: un módulo de

comunicación de alto nivel

(HLCM), un módulo de

planeación y coordinación (PCM),

un módulo de manejo de

información (AIM), y un sistema

inteligente (IS). Generalmente se

le utiliza en el área de sistemas de

control.

• YAMS (Yet Another Manufacturing

System). Este sistema se utiliza en

el área de la manufacturación,

pues su objetivo principal es

administrar eficientemente los

procesos de producción de

diversas fábricas. Para ello,

YAMS utiliza un esquema

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

41

multiagente donde cada fábrica y

sus componentes son

representados por agentes que

interactúan entre sí.

• OASIS (Optimal Aircraft

Sequencing using Intelligent

Scheduling).[ Ljunberg 1992]

Este es un sistema de control de

tráfico aéreo donde los agentes

son utilizados para representar

tanto a los aviones como a los

sistemas de control de tráfico

aéreo que están operando.

Aplicaciones comerciales

Bajo el ámbito de lo llamamos

aplicaciones comerciales destacan las

áreas de comercio electrónico y la muy

amplia de manejo de información, la cual

a su vez puede separarse en filtraje de

información y búsqueda o recuperación

de información. Como ejemplos de

aplicaciones de agentes en estas áreas

tenemos:

• Maxims. (Maes1994). Este es un

agente que trabaja como un filtro

electrónico de correo, que aprende

a darle prioridad, borrar, reenviar,

buscar y archivar mensajes,

observando cómo interactúa el

usuario con el sistema de correo.

• NewT. (Maes 1994).Es un agente

de filtraje de noticias de Internet,

que aprende en función de lo que

lee y no lee el usuario, a la vez

que permite definir reglas

específicas de selección de los

artículos.

• The Zuno Digital Library.

(Ferguson 1997). Es un sistema

multiagente que permite que el

usuario tenga una vista coherente

de las muy variadas fuentes de

datos presentes en el Web.

• Open Sesame!. Este es un agente

de software que aprende cómo los

usuarios manipulan sus

aplicaciones Macintosh, pudiendo

automatizar diversas labores

repetitivas así como labores

periódicas de mantenimiento que

el usuario puede olvidar.

• Hoover. Proporciona una interfaz

de usuario para múltiples medios

de información, además de

organizar automáticamente

información seleccionada de

acuerdo con el contexto de las

necesidades del usuario.

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

42

• El Agente Info. Agente que ayuda

a los usuarios en la recuperación

de data en ambientes distribuidos

y heterogéneos. Su arquitectura

está basada en un modelo

multiagente e incorpora técnicas

de otros campos de investigación.

• Kasbah. (Chavez, 1996). Kasbah

es un ejemplo de un mercado

electrónico constituido por

agentes vendedores y

compradores para cada bien a ser

vendido o comprado

respectivamente. Las

transacciones comerciales se dan

a través de interacciones de los

agentes.

Aplicaciones médicas

• The Guardian System. Este

sistema multiagente esta diseñado

para ayudar a monitorear

pacientes que se encuentran en la

Unidad de Cuidados Intensivos.

El sistema distribuye el

monitoreo a través de varios

agentes que se dividen en tres

clases: de percepción/acción,

razonadores, y de control. Estos

agentes se organizan

jerárquicamente y todos cooperan

a través del conocimiento

compartido en una estructura de

datos común.

Agentes Inteligentes aplicados en las Disciplinas Sociales

Realizando una búsqueda acerca de las

aplicaciones de los agentes inteligentes,

se encontró que estos no están

involucrados mucho con las ciencias

sociales pero si van de la mano con

sistemas expertos que tratan de dar

solución a situaciones que se nos

presentan cotidianamente, como el caso

de los agentes que se encuentran

presentes en una aplicación enfocada al

turismo mediante el empleo de la

tecnología de agentes. En concreto, la

aplicación permite a un usuario planificar

su posible estancia en una ciudad para

poder visitar distintos lugares de interés.

La aplicación puede ser ejecutada, desde

el punto de vista del usuario, tanto desde

un computador personal como desde un

dispositivo móvil, ofreciendo de esta

forma una mayor flexibilidad. (Moreno,

2003)

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

43

La psicología es otra disciplina en

donde la teoría de agentes ha ayudado,

como es el caso del programa

AGPERFIL, codificado en java

utilizando técnicas de agentes

inteligentes, el objetivo de este sistema es

automatizar el proceso de evaluación del

perfil psicológico de un paciente.

(Pinheiro, 1998)

En la educación, los agentes

también comienzan a tener un gran auge,

gracias al uso de estos como una especie

de tutores inteligentes y ayudantes. Un

caso ejemplo de este tipo de aplicación es

el diseño de un software que genera

automáticamente un archivo de ayuda al

ingresar a un portal destinado a

estudiantes a distancia que se están

entrenando en algún tema en específico.

Este sistema utiliza dos agentes uno que

funciona como indexador de la

información y otro que hará el papel de

mentor.

Sin embargo, en áreas especificas

de las ciencias sociales como es el

Derecho no se encontraron aplicaciones

de agentes, aunque si desarrollos de

sistemas de información que se utilizan

con buenos resultados como es el caso de

Bufete Jurídico 2004, que permite la

optimización en tareas claves del proceso

de atención de una demanda, ya que

cubre actividades desde la redacción de la

denuncia hasta el control de los

expedientes y la situación de las

demandas. Otro es la Legislación Federal

y Estatal, contiene un área de búsqueda y

es posible hacerlo mediante términos en

ingles o español. Contiene una sección de

editor con plantillas de formularios

utilizados en el área de derecho. Otro

software analizada es Juicio Divorcio,

esta diseñado por el Centro de

Investigación de Contenidos y

aplicaciones de software jurídico, de Raúl

Juárez Carro Editorial, este paquete

también es un compendio de leyes,

específicamente de las que están al

servicio del Derecho Civil.

Otro sistema es “A Pragmatic

Legal Expert System”, de Dartmouth

Ashgate. (Dartmouth, 1996). En este se

describe el desarrollo de un sistema

experto legal (Shyster) que expone un

caso pragmático de leyes. Shyster es un

sistema experto basado en casos, contiene

12 módulos y ha sido implementado en

Unix. Entre los doce módulos

encontramos: Shyster, Status, que

contiene el sistema basado en reglas,

Cases que contiene el sistema basado en

casos, Tokenizer, se especifica el

lenguaje, y los modulos Parser, Dumper,

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

44

Cheker, Scales, Adjuster, consultant,

Odometer y Reporter. (Bratman, 1988)

El hecho de que no existen

muchos sistemas inteligentes aplicándose

en disciplinas sociales, presenta una área

de oportunidad en el desarrollo de

sistemas de software basados en agentes

inteligentes (financieros, laborales, etc.).

Conclusiones

De lo expuesto, podemos enfatizar la

importancia de desarrollar soluciones de

tecnologías de información con

componentes de agentes inteligentes en

diferentes áreas de una organización.

Particularmente en el área social, se

presentan grandes posibilidades para

aplicar estos componentes de inteligencia

artificial y permitirle al ser humano tener

sistemas de software que le apoyen a la

toma de decisiones.

Referencias Bibliográficas:

• Tesis de Maestría “Desarrollo de un Agente Inteligente para el Apoyo Legal en Conflictos Laborales”, Anahi Montserrat Torres Tinoco, Instituto Tecnológico de León (SEP), 2006.

[Almeida

1996]

Almeida, J.P.A.P., José M.

Crediné S. Menezes, SMarket: Um Sistema Multiagentes para Compras on-line. 1996, Departamento de Informática - CT - Universidade Federal do Espírito Santo.

[Antoine 2003]

Antoine, S., Agentes Inteligentes. Observatorio Tecnológico Madrid. 2003.

[Baldassin 1996]

Baldassin, A., Uma Abordagem Baseada em Agentes para Filtragem de Correspondências Eletrônicas., Universidade Estadual Paulista. IGCE - Instituto de Geociências e Ciências Exatas. 1996

[Blanco 2002]

Blanco Encinosa L. J. Notas para un curso de Inteligencia Artificial y Sistemas Expertos. PREGUER. La Habana , 2002.

[Bratman 1988]

Bratman, M.E., Plans and Resource-Bounded Practical Reasoning. Computational Inteligence. Quinta Edicion ed. 1988. 349-355.

[Chávez 996]�����

Chavez, A. & P. Maes. Kasbah: An agent marketplace for buying and selling goods. Proceedings of the First International Conference on the Practical Application of Intelligent Agents and Multi-Agent Systems. London, UK. 1996

[Darmouth 1996]

Dartmouth, A., A pragmatic Legal Expert System.pp384. 1996

[Ferguson 1997]

Ferguson, Innes A. & Michael J. Wooldridge. Paying Their Way: Commercial Digital Libraries

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

45

for the 21st Century. D-Lib Magazine. 1997. http://www.dlib.org/dlib/june97/zuno/06ferguson.html .

[Foner 1993]

Foner L. N.. What’s an agent, anyway? A sociological case study. Technical report, 1993. http:/ /foner.www.media.mit.edu/people/foner/agents.html.

[Franklin 1996 ]

Franklin S. and Graesser A. . Is it an agent, or just a program?: A taxonomy for autonomous agents. In Proceedings of the Third International Workshop on Agent Theories, Architectures, and Languages, Budapest, Hungary, Aug. 1996. ECAI’96, Springer-Verlag: Heidelberg, Germany. http://www.msci.memphis.edu/ franklin/AgentProg.html.

[Genesereth 1992]

Genesereth M. R. An agent-based approach to software interoperability. In Proceedings of the DARPA Software Technology Conference, 1992. [Genesereth 1994]. Genesereth and S. P. Ketchpel. Software agents. Technical report, Stanford University, 1994.

[Gilbert 1995]

Gilbert, A., The Role of Intelligent agents in the Information Infrastructure. United States: IBM. 1995,

[Gómez 2002]

Gómez Skarmeta Antonio F. Botía Blaya Juan A. Tecnologías y Plataformas de Agentes. 2002

[Haddadi 1996]

Haddadi, A.S., Kurt. Belief-Desire-Intention Agent Architectures. in Foundations of

Distributed Artificial Intelligence. Wiley Inter- Science. 1996.

[Jennings 1995]�

Jennings, N.R., J.M. Corera, I. Laresgoiti. Developing Industrial Multiagents Systems. Proceedings of the First International Conference of Multi-Agent Systems (ICMAS-95). pp 423-430. 1995.

[Jiménez 2000]

Jiménez Silvestre y Ramos Esmeralda. Agentes Inteligentes. Lecturas en Ciencias de la Computación. Universidad Central de Venezuela. 2002.

[KEMA 1996]

Knowledge Engineering Magazine, R., Knowledge Engineering Review, in Knowledge Engineering Review. 1996. p. 205-244.

[Lawton 1996]

Lawton, G., Agents to roam on the Internet, in Sunworld Online Magazine. 1996.

[Lemus 2005]

Lemus O. Cuauhtémoc. Confiabilidad del Software.Desarrollando Productos Confiables. Revista Software Gurú. No 5. Año 1. Septiembre - Octubre 2005.

[Ljunberg 1992]�����

Ljunberg, Magnus & Andrew Lucas. The OASIS Air Traffic Management System. Technical Note 28. August, 1992 http://www.aaii.com.au/pub/aaii-technotes/technote28.ps.

[Maes 1994]

Maes, Patricia. Agents that reduce work and information overload. Communications of the ACM, 37(7). Pages 31-40. 1994

[McGraw Karen Mc.Graw and Karan

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

46

1989] Harbinson-Briggs. Knowledge Acquisition. Principles and Guidelines. Prentice Hall.1989.

[Moniz 1994]

Moniz, L.F., Uma Bancada para Simulação de Ambientes e agentes Heterogéneos. Lisboa Portugal. 1997

[Moreno 2003]

Moreno, A., Agentes Inteligentes en el Tercer Milenio CAEPIA 2003. 2003, CAEPIA 2003: San Sebastian España.

[Pereira 2000]

Pereira da Silva, H., Inteligência Competitiva Na Internet; Proposta De Um Processo. 2000, Universidade Federal de Santa Catarina Programa de Pós-Graduação em Engenharia de Produção: Florianópolis.

[Perez 2000]

Perez Díaz, J.A., Agentes Móviles, Programación, Seguridad y Diseño., Universidad de Oviedo. Oviedo. 2000

[Pinheiro 1998]

Pinheiro, G.M., Sistema Agente De Avaliação De Perfil Psicológico Área De Desenvolvimento De Sistema Científicos E Comerciais. 1998, Universidade Do Vale Do Itajaí: Univali. Itajaí.

[Ramos 1997]

Ramos Esmeralda. Conocimiento: Adquisición y Técnicas para Grupos. ND 97-03. Escuela de Computación. Facultad de Ciencias. Universidad Central de Venezuela. 1997

[Rao 1996] Rao A. S. Decision procedures for propositional linear-time Belief-Desire-

Intention logics. In M. Wooldridge, J. P. Müller, and M. Tambe, editors, Intelligent Agents II (LNAI 1037), pp 33–48. Springer-Verlag: Heidelberg, Germany, 1996.

[Rao 1995] Rao A. S and M. Georgeff. BDI Agents: from theory to practice. In Proceedings of the First International Conference on Multi-Agent Systems (ICMAS-95), pages 312–319, San Francisco, CA, June 1995.

[Rao 1996] Rao A. S.. Decision procedures for propositional linear-time Belief- Desire-Intention logics. In M. Wooldridge, J. P. Müller, and M. Tambe, editors, Intelligent Agents II (LNAI 1037), pages 33–48. Springer-Verlag: Heidelberg, Germany, 1996.

[Russell 1996]

Russell Stuart and Norvig Peter. Inteligencia Artificial Un Enfoque Moderno. Prentice Hall. México. 1996

[Sebastian 2002]

Sebastian, E., An Investigation Into the Use of Syntheti for NPC's/Agents in Computer Games. 2002, Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales.: Buenos Aires.

[Shadbolt 1999]

Shadbolt, N.a.M., N, From Knowledge Engineering to Knowledge Management. British Journal of Management, 1999. 10: p. 309-322.

[Shoham 1993]

Shoham Y. Agent-oriented programming. Artificial Intelligence, 60(1):51–92, Mar. 1993.

Gaceta Ide@s CONCYTEG Año 3. Núm. 31, 21 de enero de 2008

47

[Sthephens 1999]

Sthephens, D.S. Agentes artificiales en los mercados financieros. in Simposio latinoamericano y del caribe: las tecnologías de información en la sociedad. 1999. Aguascalientes, México.

[Thanagarajah 2002]

Thanagarajah,J. Padghanm, L. Harland, J. “Representation and Reasoning for Goals in BDI agents. Proceedings of the Australasian conference in Computing Science, January , Melbourne 2002

[ Wooldrige 1995]

M. Wooldridge and N. R. Jennings. Intelligent agents: Theory and practice. The Knowledge Engineering Review, 10(2):115–152, 1995

[Wooldrige 1999]

Wooldrige, M. Intelligents Agents. In G. Weiss. Editor Multiagents systems, The MIT Press. April 1999.

[Zanusso 2001]

Zanusso, B.M., Um Sistema Especialista para Identificar Insetos pode ser um Agente num Sistema Multiagentes para Administra¸c˜ao de Recursos Naturais. 2001, Departamento de Computaciao e Estatýstica Centro de Ciencias Exatas e Tecnología Universidade Federal de Mato Grosso do Sul.