SciELO - Scientific Electronic Library Online

 
vol.1 issue4Aplicación de Autómatas Celulares a Simulación Básica de Incendios ForestalesEstudio de la Estructura Tridimensional de Proteínas Mediante la Geometría Fractal author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

  • Have no similar articlesSimilars in SciELO

Share


Acta Nova

On-line version ISSN 1683-0789

RevActaNova. vol.1 no.4 Cochabamba June 2002

 

Artículo Científico

 

Agentes Autónomos con Arquitectura CBR-BDI

 

 

Manuel G. Bedia, Juan Manuel Corchado

Departamento de Informática y Automática
Universidad de Salamanca
Plaza de la Merced s/n, 37008, Salamanca, España
e-mail: corchado@gugu.usal.es

 

 


Resumen

Este artículo introduce un formalismo matemático robusto para la definición y desarrollo de agentes deliberativos con un motor de razonamiento basado en casos. El concepto de agente deliberativo es introducido y el modelo de sistema basado en casos es descrito utilizando un formalismo analítico. Se introduce posteriormente el cálculo variacional para facilitar a los agentes herramientas de planificación y replanificación de sus intenciones de forma que puedan reaccionar a los cambios del entorno en tiempo real. El continuo desarrollo en la industria turística y la adaptación de procesos que, mediante las nuevas tecnologías, se está haciendo, nos sugiere la formalización de un agente que asista a potenciales turistas en la organización de sus vacaciones y sea capaz de modificar sus horarios a través de sistemas de comunicación móviles.

Palabras Clave: Razonamiento basado en casos, Cálculo Variacional, Agentes y planificación.


 

 

1. Introducción

La evolución tecnológica en el mundo actual es rápida y constante. Los sistemas que tendrán éxito deben tener capacidad para adaptarse y deben disponer de mecanismos que les permitan decidir qué hacer para alcanzar sus objetivos. Tales sistemas existen y se conocen como agentes autónomos o inteligentes [20]. Nos planteamos desarrollar un agente con arquitectura BDI que utilice un mecanismo de razonamiento basado en casos para generar sus planes. Fundamentaremos este planteamiento con un robusto soporte matemático basado en el cálculo variacional, que nos permitirá integrar las arquitecturas BDI con un sistema CBR y nos permitirá introducir un mecanismo para la planificación y re-planificación del agente en tiempo real. Los agentes deben ser autónomos, reactivos, pro-activos, sociables y con capacidad de aprendizaje. Deben ser capaces de responder a eventos que tengan lugar en su entorno, tomar iniciativa de acuerdo a sus objetivos, interactuar con otros agentes (algunos de ellos pueden ser humanos) y usar experiencias pasadas para alcanzar sus objetivos.

Existen diferentes tipos de agentes que pueden clasificarse de modos distintos. Uno de los más importantes son los agentes deliberativos BDI, cuya arquitectura se asienta sobre tres pilares: creencias, deseos e intenciones, y el agente las utiliza con el fin de estructurar las decisiones que le lleven a alcanzar sus objetivos: sus creencias representan su estado informacional -lo que los agentes conocen acerca de ellos mismos y de su entorno- sus deseos son sus estados motivacionales -lo que intentarán alcanzar- y sus intenciones representan sus estados deliberativos. Estas actitudes intencionales determinan el comportamiento de los agentes. Las arquitecturas BDI tienen la ventaja de ser intuitivas -es relativamente fácil reconocer el proceso de decisión y el modo de ponerlo en práctica-. Por otro lado, su principal desventaja reside en determinar un mecanismo que pueda permitirnos su adecuada implementación.

En el momento actual, el formalismo y la implementación de agentes BDI constituye el trabajo de investigación de numerosos científicos [5, 8, 17].

Algunos de ellos critican los trabajos en formalización a partir de lógicas multi-modales para la formalización y la construcción de dichos agentes, porque no es un marco completamente axiomatizado ni computacionalmente eficiente.

Rao et Georgeff [16] afirman que el problema se encuentra en la gran diferencia que existe entre la potencia de esas lógicas y lo que se requiere para la actuación práctica de tales sistemas. Otro problema es que estos tipos de agentes no tienen capacidad de aprendizaje -un elemento imprescindible si queremos que constantemente incorporen, modifiquen o eliminen creencias, deseos e intenciones-.

En este trabajo se presenta una formalización analítica y de carácter robusto, frente a las alternativas en lógica modal, que además contempla un modo de implementación eficiente. Se muestra cómo la estructura de agente BDI a la que se incorpora un motor de razonamiento basado en casos CBR puede acelerar sustancialmente el proceso de deliberación del BDI y resolver los problemas relacionados con la capacidad de aprendizaje de los agentes: implementar agentes en la forma de sistemas CBR facilita su aprendizaje y adaptación.

Si logramos establecer una correspondencia entre las actitudes mentales de los agentes y la información que un sistema basado en casos manipula, entonces tendremos una forma de desarrollar agentes no sólo con sus creencias, deseos e intenciones, sino también con capacidad de aprendizaje.

Existen resultados de investigación que aportan luz en la relación entre agentes y mecanismos de razonamiento CBR [13, 19, 15]. En nuestra, propuesta, el formalismo matemático que la soporta facilita los procesos para la correcta y eficiente implementación de un agente en la forma de un sistema CBR. El cálculo variacional se introduce para automatizar el ciclo de razonamiento del agente, fundamentalmente durante la etapa de recuperación, para garantizar un mecanismo de planificación y re-planificación eficiente en tiempo real.

Aunque se pueden encontrar diferentes tipos de mecanismos planificadores en la literatura correspondiente [4, 11, 12], ninguno de ellos nos permite re-planificar en tiempo real, y cada vez que los cambios en el entorno rompen con las pretensiones del agente de alcanzar los objetivos a partir del plan que había iniciado, el sistema debe "desandar lo andado" para preparar un nuevo plan.

Algunos de los trabajos planteados usan, tal como indicábamos, técnicas de planificación que no pueden tratar con los cambios producidos en el entorno y plantear modificaciones en tiempo real, por ejemplo, los trabajos de [11, 12] introducen un tipo de esquemas de planificación que necesitan ser reprogramados cuando el ambiente cambia. En [4] se propone una arquitectura que intenta ser más flexible en la re-planificación, al incorporar nueva información al sistema proveniente del medio, pues sólo se cambia el dominio informacional sobre el que se diseña el plan en lugar de reprogramar el plan por completo, y se conservan las líneas de razonamiento general. Esta arquitectura nos permite construir las sucesivas fases de un plan sin especificar demasiada información y, por tanto, sin depender excesivamente del dominio ni de los inesperados cambios en él. Posteriormente, para conocer si el plan trazado es adecuado, se requiere ponerlo en práctica en dominio real. Esta operación requiere una gran cantidad de tiempo computacional y emplea grandes recursos porque necesita hacer dos veces el mismo trabajo, primero diseñando el plan en términos generales, y después comprobando que es adecuado al problema, proyectándolo al caso concreto. Con el modelo que proponemos, se plantea una solución que trate adecuadamente con problemas donde los cambios en el entorno no impliquen ni estrategias de reprogramación, ni las desventajas mostradas en [4], porque existe un criterio de decisión que, ante cambios contextuales, puede tomar decisiones en tiempo real. La clave del sistema está en aprovechar la potencia del cálculo variacional al utilizarse dentro del ciclo de vida CBR, para automatizar su fase de recuperación.

Comenzaremos revisando los conceptos de procesos CBR y de sistemas deliberativos e introduciremos un único esquema de representación para ambos. A partir de esta notación común, es sencillo mostrar cómo integraremos el mecanismo CBR para operar con las actitudes mentales de un agente deliberativo. Se introduce, entonces, el cálculo variacional y se muestra cómo automatizar el razonamiento de agentes con las características mencionadas.

Finalmente, se presenta el esquema de funcionamiento de un diseño de agente BDI-CBR, para el sector del turismo electrónico, usando la metodología que hemos introducido.

 

2. Sistemas de razonamiento basado en casos (CBR)

Los sistemas de razonamiento basado en casos se usan para resolver nuevos problemas mediante la adaptación de soluciones que fueron usadas en la resolución de problemas similares [6]. El proceso de trabajo de un sistema CBR consiste, fundamentalmente, en la adaptación de viejas soluciones para construir planes asociados a nuevas experiencias, usando casos ya validados para plantear nuevas propuestas, para formular nuevas soluciones o para razonar de manera análoga en situaciones similares.

La Figura 1 nos muestra el ciclo de razonamiento de un CBR típico, donde se incluye la secuencia de cuatro etapas que están cíclicamente conectadas: recuperación, reutilización, revisión y memorización [1, 18]. Durante la fase de recuperación, los casos que son más similares al problema que se nos propone se extraen de la base de casos. Los casos recuperados son adaptados para generar una posible solución durante la fase de reutilización o adaptación. La solución es entonces revisada y, si es apropiada, se le da forma y entidad de caso, para que en la fase de memorización se almacene en memoria.

Por tanto, los sistemas CBR actualizan constantemente su base de casos y en consecuencia se adaptan a los cambios del entorno. Cada una de las fases de razonamiento de un sistema CBR puede ser automatizada, lo que implica que podemos tener un modo automático para el proceso completo [6, 7]. Este resultado abre el camino a la hipótesis de utilizar sistemas CBR para implementar agentes BDI que pudieran razonar autónomamente y tener propiedades de adaptación a cambios en el entorno.

Los agentes pueden entonces usar el ciclo de razonamiento de un sistema CBR para generar planes. A partir de una notación que permita considerar casos y actitudes intencionales de manera común, se presentará un modelo para la implementación de BDI usando para ello un motor de razonamiento CBR.

 

3. Implementación de agentes deliberativos usando sistemas CBR

Esta sección presenta la relación que puede ser establecida entre agentes BDI y sistemas CBR y muestra cómo los agentes pueden razonar más eficazmente con la ayuda de un módulo CBR. La formalización presentada toma elementos de otros sistemas [13, 19, 15] y los adapta. Nuestro propósito es definir una relación entre agentes y su modelo de razonamiento, fijando especial atención en dos elementos:

1.   Búsqueda de vertiente práctica teniendo en mente la implementación del modelo

2.   Incorporación del aprendizaje mediante la adaptación a cambios del entorno

Para ilustrar el modelo, un ejemplo relacionado con el turismo es analizado paralelamente a la explicación.

3.1. Concepto de Agentes BDI

Introducimos la notación y la relación entre componentes actitudinales que caracterizan un agente BDI:

Θ es el conjunto que describe el entorno del agente

T(Θ) es el conjunto de atributos {τ1, τ2,..., τn} en el que el mundo es expresado

Definición. Una creencia e sobre Θ es una m-upla de atributes de T(Θ), que denotamos e = (τ1, τ2,..., τm) con m n.

Definición. Llamamos conjunto de creencias sobre Θ y denotamos ζ(Θ), al conjunto ζ(Θ) = {(τ1, τ2,..., τj) donde j = 1,2,...,m ≤ n}.

Ejemplo:

Supongamos que el mundo T(Θ) incluye todos los atributos necesarios para caracterizar una ruta turística en la ciudad de Salamanca (capital cultural europea 2002).

T(Θ) = {τ1 = nombre monumento, τ2 = horario, τ3 = coste, τ4 = tiempo de desplazamiento entre dos ítems de una ruta,... , τn }

En este mundo, una creencia, por ejemplo, monumento, es un vector de atributos de T(Θ) que caracterizan el monumento.

Creencia monumento = (τ1 = nombre, τ2 = horario, τ3 = coste visita, τ4 = indicador de calidad)

Una creencia particular, por ejemplo, catedral nueva, es un vector como el anterior que valora en sus variables.

catedral nueva = (nombre = CN, horario (10:00h, 18:00h), coste visita = 3 €, calidad = 1.5)

Definición. Introducimos el operador "Λ de accesibilidad" entre m creencias (e1, e2, e3, ..., em), y denotamos Λ(e1, e2, e3,..., em) = (e1 Λ e2 Λ ... em), al operador que crea nuevas estructuras uniendo creencias compatibles entre sí.

Definición. Diremos que el operador Λ actuando sobre m creencias es nulo si alguna de ellas no es accesible, y lo denotamos Λ(e1, e2, e13,..., em) = 0.

Ejemplo:

Son las 12:00 pm, y el agente cree M1, M2, D(A, A), creencias que se describen en las Tablas 1(a), 1(b) y 1(c).

Con estas creencias y dado que son las 12:00h, es imposible visitar M1, M2, por el camino (MD(A,AM2) que, según nuestra notación, denotaremos Λ(M1,D(A,A),M2) = 0. Si M2 es substituida por M3 (ver Tabla 1(d)) entonces (M1 Λ D(A,A) Λ M3) es posible, y Λ(M1, D(A,A), M2) ≠ 0, lo cual significa que el agente ha identificado que podemos visitar los monumentos M1 y M3, tomando en consideración que el tiempo de viaje entre ambos monumentos viene dado por D(A,A).

Definición. Una intención i sobre Θ es una s-upla de creencias compatibles entre sí que denotamos i = (e1, e2,...,es) con s , Λ(ei,ej) ≠ 0.

Definición. Llamaremos conjunto de intenciones sobre Θ y denotaremos I(Θ) al conjunto I(Θ) = {(e1, e2,...,ek) donde k e }.

Supongamos ahora que, a partir del análisis de un problema, determinamos un conjunto de parámetros que constituyen una base de atributos sobre la que estructurarlo. Se construye el conjunto , que toma los elementos de I(Θ) caracterizándolos a partir de atributos de esta base. El conjunto necesario y suficiente de variables se obtiene empíricamente, ya que depende del problema propuesto y depende también en qué términos quiera resolverse.

Definición. Llamaremos "variables canónicas" de un conjunto I(Θ) a cualquier conjunto de parámetros linealmente independientes = (A1,A2,...,Av) que caractericen los elementos i I(Θ) -aunque llamamos variables canónicas, no son únicas, son propias de I(Θ), para cada problema P dado-.

Ejemplo:

Si un turista interacciona con el agente para solicitar una ruta que cumpla como requisitos, visitar un número de monumentos (P) y no gastar más que un coste máximo asociado (C), entonces podremos expresar = (A1,A2) = (P,C).

En este sistema de coordenadas la intención siguiente:

i1 = M1 Λ D(A, A) Λ M2 Λ D(A,A) Λ R1 Λ D(A,B) Λ M3 Λ D(B,B) Λ R2

con los valores de las creencias en la Tabla 2(a), tiene los valores de los parámetros P y C indicados en la Tabla 2(b).

Definición. Llamamos deseo d sobre Θ a una función entre

donde Ω() es el conjunto de funciones sobre .

La expresión anterior nos dice que las actitudes intencionales que llamamos deseos pueden ser alcanzadas a través de un plan -que en nuestro esquema corresponde con la construcción de una intención adecuada- utilizando para ello, toda la información que nos proporcionen las creencias, pero evaluadas en términos de los parámetros en los que se especifican los objetivos deseados.

Definición. Llamamos conjunto de deseos sobre 0 y denotamos D(Θ) al conjunto

Ejemplo:

La función deseo del turista "quiero una ruta en la que como mínimo vea tres monumentos v como máximo gaste 50€" se puede expresar:

 

Hasta aquí hemos presentado el marco desde el que vamos a representar las actitudes básicas de un sistema BDI. Veamos, a continuación, cómo trabajamos con experiencias almacenadas en forma de casos y cómo razonar a partir de ellos.

3.2. Formalismo analítico para sistemas de razonamiento basado en casos

Consideremos un problema P, del cual deseamos obtener su solución que denotamos S(P) El funcionamiento de un sistema basado en casos consiste en asignarle la solución S(P) al problema, mediante la adaptación de una solución memorizada S(P') asociada a un problema similar P'.

Denotamos P como P = (Si,j},Sf) donde Si = estado inicial, Sf = estado final, y {Θj} con j = (1,..., m) es el conjunto de operadores a partir de los que se construye la solución. La solución S(P) se define como S(P) = {Sk, Θh} donde k = (1,... , n+1), h = (1,...,n),S1 = Si, Sn+1 = Sf, esto es, S(P) = {S11,S22,...,Θn,Sn+1}.

Los estados Sk y los operadores Θj se definen como

donde son las variables en las que los estados del problema se representan.

Definición. Llamaremos coordenadas tipo {Or}r=1,...,p a aquellas que representan los objetivos de la solución.

Definición. Llamaremos coordenadas tipo {Rs}s=1,....,q a aquellas que representan los recursos que se van perdiendo en el proceso de solución.

A partir de las definiciones y la notación expuesta, introducimos el parámetro "eficacia, " de la solución correspondiente a un problema P = (S,S') que se define como un vector (S,S') = (x,y), con

esta definición implica 0 ≤ x ≤ 1, 0 ≤ y ≤ 1, y asocia para cada solución que se encuentre a un problema, un indicador con la información sobre objetivos alcanzados y recursos empleados que, al ser dividido entre el valor total, nos da idea del grado de satisfacción.

Con el fin de tener una expresión explícita que evalúe los componentes del vector eficacia entre los estados inicial y final, S y S', de una solución S(P), es necesario normalizar cada uno de los objetivos y recursos, para poder operar con valores, en principio heterogéneos, {Or}r=1,...,p, {Rs}s=1,...,q.

Si {Or(S)} = (O1,O2,...,Op) y en el estado final {Or(S')} = (O'1,O'2,... ,O'P)

Como {Rs(S)} = (R1,R2,...,Rq) y además {RS(S')} = (R'1,R'2,...,R'q), tenemos,

Introducimos un nuevo parámetro, la eficiencia, que mide cuántos recursos se necesitan para alcanzar un objetivo.

Definición. Dado un problema P a resolver y una solución S(P), diremos que ζ[S(P)] es la eficiencia de la solución S(P) y se calcula como ζ[S(P)] = x/y. La definición implica que ζ(S,S') (0,∞).

Definición. Un caso C es una 3-upla {P, S(P),[S(P)]} donde P representa la descripción del problema, S(P) la solución de P y [S(P)] la eficacia de la solución.

Definición. Una base de casos CB = {Ck/k = 1,..., q y q } es un conjunto finito de casos memorizados y accesibles por un sistema.

3.3. Integración de sistemas CBR en arquitecturas BDI

La relación entre sistemas CBR y agentes BDI puede ser establecida, asociando creencias, deseos e intenciones a casos. La ventaja de este enfoque es que un problema puede ser fácilmente conceptualizado en términos de agentes y, posteriormente, implementado en forma de un sistema CBR. Primeramente, introduzcamos una función que asocia un índice idx(Ck) a cualquier caso almacenado Ck. Si utilizamos la notación que presentamos para cada caso C, con coordenadas {Or}, {Rs}, se tiene

donde Oj,Rk T(CB),ai,bj,ck,dl , p,q  y donde el I(CB) es el conjunto de índices de una base de casos CB(CaseBase) y, como hemos mostrado, se representan sus elementos por vectores compuestos por los atributos de T(CB), y (a1,a2,... ,am), que comprende tanto valores individuales como dominios o intervalos de valores.

Definición. El proceso de abstracción que supone el mecanismo de indexación en el manejo de casos nos permite la introducción de una relación de orden R, en la base de casos CB, que nos permite comparar casos. Los índices están organizados en la forma de una jerarquía de subsumción.

Definición. Diremos que dos casos C, C' CB, cumplen la relación

que expresado en componentes,

Definición. Diremos que S(P') es una posible solución CBR de un problema P si C' = (P', S(P'), [S(P')]) cumple la relación idx(C') idx(P), donde idx(P) se calcula a través de las restricciones que a la solución buscada S(P) se impone.

Ejemplo:

Dados dos casos, C1, C2, y sus índices, para los cuales, por sencillez, se supone que los estados iniciales son el origen de coordenadas y, por tanto, tienen valores nulos,

Con estos valores, una relación de subsumción no puede ser establecida. Si introducimos otro caso C3, con

Y si el problema a resolver puede ser representado por P = (Si,Sf), donde la solución buscada cumpla,

la relación idx(C3) P idx(C1), idx(C2) puede ser establecida. Con las definiciones vistas, idx(C3) no es "posible solución cbr de P", mientras que idx(C1), idx(C2) son "posibles soluciones cbr" para el problema.

Definición. Dada una base de casos CB, y dado un problema P, llamamos "conjunto de posibles soluciones cbr", al conjunto

Con todo lo visto, tenemos el contexto preparado para introducir el concepto de CBR.

Definición. Llamaremos "estado ρ de un proceso intencional", que denotamos {e1 Λ e2 Λ ... Λ es-1 Λ es}, a la descripción de cualquier situación intermedia que el proceso cruce hacia la solución, {e1Λ e2 Λ ... Λ er, donde r s} expresada en términos de = (A1, A2 ...Av) y verificando que el operador accesibilidad aplicado a {e1 Λ e2 Λ... Λ er, donde r s} no es nulo, esto es { Λ(ei,ej),i,j = 1,... ,r;i < j}.

Definición. Construimos "un espacio de representación" del conjunto I(Θ), y denominamos "espacio de estados", denotado como , a un espacio euclídeo que tiene como base de coordenadas el conjunto de variables N = (A1, A2,..., Av) -en el que se define una métrica que cumpla la propiedad euclídea- que preserva la noción intuitiva de distancia.

Estas definiciones preparan el marco donde exponer nuestra interpretación geométrica del razonamiento basado en casos, y permitirá enfocar el problema utilizando tratamiento variacional. Introduciremos un par de definiciones más, que nos permiten vincular la representación intencional de agentes con la de estados de un CBR y tendremos, de este modo, un lenguaje de representación para estructuras integradas CBR-BDI.

Definición. Dado un sistema de coordenadas canónico para un problema P, en I(Θ), denotado (A1, A2,..., Av), podemos reordenarlo si diferenciamos entre las variables

Definición. Con la reorganización en N, y dada una i £ I(Θ), podemos expresar funcionalmente la doble relación de dependencia que tenemos para las intenciones:

• en términos de los atributos para creencias

• en términos de las variables canónicas asociadas a , y reordenadas

lo cual determina una relación del tipo Aj = Aj(τ1, τ2,..., τn).

En este punto, podemos plantear la relación fundamental entre agentes BDI y sistemas CBR.

Recordemos que hemos planteado la solución S(P) para un problema P = (Si, {Θj}, Sf), como una secuencia de estados Sk = ({Or}r=1,...P, ({Rs}s=1,...,q) interrelacionados por operadores {Skh}, donde el estado inicial y final son los que determina el enunciado del problema.

Si el problema se le plantea a un agente deliberativo BDI, que habita el mundo Θ, donde definimos un sistema canónico = (A1, A2,..., Av) para el conjunto de las intenciones I(Θ) que es reordenado en = (F1,F2,....,Fm,G1,G2,...,Gn), podemos establecer la siguiente analogía entre los parámetros

Mediante esta relación, queda definido un criterio de identificación entre "estados intencionales", ρ¡ e I(Θ), y "estados CBR", Sk T(BC).

Establecida esta relación, encontramos también un modo de hacer corresponder otros elementos actitudinales como los deseos d D(Θ) y el operador eficacia [S(P)] que asociamos a soluciones del CBR.

El detallado formalismo matemático que hemos ido desgranando tiene ahora explicación: el desarrollo de un lenguaje común para integrar aspectos de agentes y de estructuras CBR, en un mismo problema.

Ejemplo:

Si consideramos dos posibles rutas i1, i2, junto con sus valores presentados en las tablas 2(a) y 3

Si nuestro sistema de coordenadas se representa por = (A1, A2, A3, A4) = (P,T,C,Q) donde P(places) = lugares visitados, T(time) = tiempo empleado, C(costs) = gastos (valor de tickets), Q(quality) = calidad (valoración de la visita).

Si expresamos estas dos intenciones, en lugar de en términos de las creencias que los constituyen, en función de sus valores para los parámetros P, T, C, Q

y los valores de P, T, C, Q son representados por una estructura entonces cada intención puede ser considerada como un caso, con índices asociados.

Si un turista presenta un problema P al agente, fijando los siguientes valores:

Tenemos en idx(C1), idx(C2) dos "soluciones CBR", ya que, según la definición, se cumple que P Idx(C1), idx(C2)

La función "deseo" que se puede expresar como

que se traducirá en restricciones al atributo (S(P)) = (x,y), y haciendo cálculos, se impone que la solución se exprese en los siguientes términos: X = 0.412, es decir, la S(P) debe alcanzar al menos un 41.2 % de sus objetivos; y= 0.790, esto es, no debemos pasar del 79 % de gasto de recursos. La Tabla 4 representa los parámetros de eficiencia de los casos idx(C1), idx(C2). 

La relación de identificación entre "estados intencionales" y "estados CBR" presentada, nos permite plantear que agentes deliberativos, con arquitecturas BDI, puedan valerse de un ciclo de razonamiento tipo CBR, para generar soluciones S(P) a problemas P.

Cuando el agente necesite resolver un problema, utilizará sus creencias, deseos e intenciones para construir su solución. Deseos previos, junto con creencias e intenciones, son almacenadas en forma de casos, y se convierten en material susceptible de recuperación para nuevos problemas. Los casos que puedan ser útiles al problema actual son seleccionados, y adaptados, generando el plan de acción del agente que será la nueva solución. Esta expresión es revisada y, si cumple con las propiedades requeridas, es almacenada, lo que constituye un mecanismo de aprendizaje asociado a cada proceso.

 

4. Modelización de agentes CBR-BDI

En las secciones que siguen se mostrará, cómo definir criterios operativos para las fases de recuperación y de adaptación en un CBR, y cómo este mecanismo permite la automatización del razonamiento. El modelo se asienta, en el cálculo variacional [2, 9], y su mayor ventaja será capacitar a los agentes de un sistema de planificación y replanificación en tiempo de ejecución.

Veamos como puede establecerse una relación operativa entre sistemas CBR y arquitecturas BDI, asociando estructuras actitudinales formadas por creencias, deseos e intenciones, con estructuras de casos.

4.1. Recuperación

Durante esta fase, un conjunto de casos, C1, C2,... Cm, almacenados en la base de casos CB y que sean similares al problema planteado, son recuperados. Necesitamos una métrica que determine qué significa ser similar.

Definición. Dado un problema P, decimos que P' es un problema "similar" y denotamos P' P, si el caso C' = (P', S(P'),[S(P')]) CB es una posible solución CBR y además cumple que idx(C') {idx(Ck)k = 1,...,n}.

Hasta aquí tenemos un conjunto de posibles soluciones CBR, P idx(C1),..., idx(Cm)

Usaremos el parámetro eficiencia ζ[S(P)], que indica la cantidad de recursos que deben ser empleados por unidad de objetivo alcanzado.

Definición. Los casos que tengan un valor de eficiencia máxima son seleccionados y se denotan por ζ[S(P)] máx, lo cual filtra sólo un subconjunto de todas las soluciones seleccionadas: P idx(C1), idx(C2), idx(C3),... , idx(Cr), con rm.

Por tanto, queda reducido el problema a identificar cuál es el mejor caso de este subconjunto.

Antes de exponer cómo determinar el caso solución, se introducen efectos de no-linealidad en la dependencia de los casos con sus atributos, como mostramos en el siguiente ejemplo.

Ejemplo:

La visita a un museo M2, con Q = 1, puede costar C = 2 €, mientras que la visita a M1 con Q = 2, puede ser visitada gratuitamente, C = 0 € (por ejemplo, si existe un programa público de promoción cultural).

Para incorporar la no-linealidad a nuestro problema, codificaremos todos los procesos no lineales en una función V = V(A1,A2,... ,AV). El potencial definido en el espacio generado por (A1,A2,... ,AV). introduce relaciones de ligadura entre estas variables, lo que, gráficamente, puede verse como una "curvatura" sobre el estado de fases, en un espacio homogéneo, isótropo y lineal, con V = 0. (ver Figura 2).

Ejemplo:

En términos del agente turístico, considerando solamente = (A1,A2) = (P,C) y un problema en el que se exija para su solución un P(mínimo) y un C(máximo). La Figura 3 representa tres potenciales soluciones ø1, ø2, ø3, asumiendo la no-linealidad del espacio de soluciones.

En general, para un V = V(A1,A2,... ,AV) tendremos una familia de hipersuperficies que marcan las zonas del espacio "favorables al movimiento", quedando fijada una hipersuperficie concreta al especificar dos puntos (Si,Sf).

Supondremos que las hipersuperficies cumplen las condiciones de diferenciabilidad que se le exigen a una variedad k-dimensional.

Definición. Un subconjunto M de n es una variedad k-dimensional si y sólo si para cada punto x M se verifica la siguiente "condición de coordenadas": Existe un conjunto abierto U que contiene x, existe un conjunto abierto W k y existe una función diferenciable f : W n tal que

A esta función f, con estas propiedades, se le denomina sistema de coordenadas alrededor de x. Con esto, lo que queremos es que la función potencial V = V(A1, A2,..., Av) garantice unas condiciones mínimas de diferenciabilidad a la familia de hipersuperficies que forman sus órbitas, para poder aplicar cálculo variacional.

Resumiendo, con la introducción de un potencial V = V(A1, A2,..., Av) en el espacio de trabajo, queremos separar los efectos asociados a la "curvatura". Intuitivamente, queremos que la curvatura que introduzca sea suficientemente suave como para que podamos construir un sistema de coordenadas alrededor de cada punto que, entre otras cosas, nos permitirá tomar medidas sobre él.

Si tenemos un espacio no lineal sobre el que trazar trayectorias, y éstas son medibles, podemos plantearnos cómo resolver el problema de determinar qué trayectoria cumple condiciones de mínimo para un cierto atributo. Esa trayectoria puede representar una solución a un problema y la condición de mínimo sobre un parámetro, un criterio de utilidad típico impuesto sobre la solución. La herramienta que permite hacer esto existe y se conoce como cálculo variacional (ver Apéndice A).

4.1.1. Aplicación del cálculo variacional al modelado de agentes CBR-BDI

Propusimos en la sección anterior una notación que permitía la definición de agentes "CBR-BDI". Tales agentes presentan tanto habilidades típicas de estructuras deliberativas, planificación de acciones orientadas a un objetivo, como características propias de sistemas CBR (como el aprendizaje y la interacción con el entorno). Los sistemas CBR pueden ser implementados y automatizados de diferentes formas [6, 7] dependiendo del tipo de problemas que resuelven. En esta sección se muestra cómo el cálculo variacional es una potente herramienta en sistemas que admiten una representación en variedades -lineales y no-lineales-, y puede aplicarse en la automatización de la etapa de recuperación de un sistema CBR, integrado en una arquitectura BDI.

En general, el cálculo variacional proporciona una solución óptima pero en un conjunto de valores discretos como el de nuestro trabajo, se utilizará para obtener la solución discretizada más cercana a la óptima [14], ya que posiblemente, ésta no se alcance.

Consideremos una base de casos e índices de casos, sobre la que definimos una relación de subsumción (CB, R) = {[Ck/k = 1,...,q; donde q ], R}.

Denotamos el conjunto de atributos de la base de casos T(CB) = (α1, α2,...,αm), αj T. Utilizando la relación entre agentes BDI y sistemas CBR establecida en la sección anterior, denotaremos T(CB) = (A1,A2,...Av), donde {Aj} es un sistema de coordenadas canónico, para un problema, del conjunto I(Θ). En nuestro ejemplo, T(CB) = (P,C).

Los fenómenos no-lineales definen una función V sobre este espacio I(Θ), que toma una forma V = V(A1,A2,...Av) y que almacena información proporcionada por los mismos casos Ck CB. En el espacio de fases, la información de la función V = V(A1,A2,...Av) se traslada a la forma espacial de una hipersuperficie Π0 [A1,A2,...Av] = 0, donde la noción de distancia euclídea es definida.

Si consideramos dos estados (Si, Sf) inicial y final, sobre el conjunto I(Θ), y las intenciones i I(Θ), que unen estos estados y que tienen asociado un caso recuperado Ck CB, podemos definir una función distancia como

donde S¡ = (Ai1, Ai2,..., Aiv), Sf = (Af1,Af2,..., Afv).

En el caso m = 3, y denotando A1 = X, A2 = Y, A3 = Z, la teoría variacional nos dice que existe un sistema de coordenadas (λ, μ), sobre el cual se permite la expresión de una funcional integral F = F(λ, μ) que asocie a cada curva entre (Si, Sf) su longitud, y que valore sobre Π0[x, y, z] = 0. Además nos facilita la forma de conocer cuál de estas curvas es la óptima en el sistema de coordenadas (λ, μ).

La resolución de la ecuación de Euler,

nos proporciona μ = μ0(λ) que toma la forma χ0 = χ0[x,y,z] sobre el sistema de coordenadas original (X, Y, Z). Se conoce a esta función como "curva geodésica".

En el caso más general, la función V = V(A1, A2,..., Am) genera curvas que no son diferenciables porque V sólo tomas valores correspondientes a estados discretos.

Definición. Definiremos una función σ, como σ = x0 — Ψ, donde x0 es la solución obtenida por la ecuación de Euler (geodésica) [14] y Ψ {φ(Si, Sf)} es un camino entre (Si, Sf), asociado a uno de los casos C CB (ver Figura 4).

Definición. Llamaremos "curva más cercana a la óptima", y la denotamos Ψ0 a la función de {φ(Si, Sf)} dada por la minimización de la integral

que escribimos como , donde SK son estados sobre los que estructuramos la solución. Por tanto, el cálculo variacional determina cuál es, de las "soluciones cbr" para un problema dado, aquella con la que nos quedamos. Intuitivamente, seleccionamos aquella que nos presenta la forma de llegar al estado final de manera que los estados que cruza difieran, de la menor manera posible, en sus valores de eficiencia.

Este cálculo se plantea para sistemas en condiciones estáticas, pero los agentes son sistemas dinámicos, que deben responder a cambios del medio en tiempo real, planear sus soluciones, y modificarlas si los cambios en el entorno lo requieren. En una estructura como la que presentamos, los cambios en el entorno se convierten en nuevos criterios para identificar y calcular una solución CBR.

El formalismo desarrollado se extiende fácilmente y permite definir un agente "CBR-BDI" dinámico, con capacidad de replanificación en tiempo real, si el medio y sus variaciones fuerzan a cambiar el plan en ejecución.

4.2. Reutilización

La fase anterior nos proporciona un caso de la CB, que denotamos C' = (P', S(P'), [S(P')]), primero aplicando una métrica de similaridad sobre los casos de la base, y seguidamente aplicando cálculo variacional sobre el conjunto de soluciones preseleccionadas. Durante esta fase el sistema ejecuta un mecanismo de "adaptación transformacional" [1] que puede ser representado por una función de adaptación, la cual, a partir del conocimiento de la solución S(P'), es capaz de obtener una solución S(P) para P.

donde Σ(P) se conoce como conjunto de problemas, y C' = (P', S(P'), ([S(P')]).

Necesitamos explicitar qué es lo que hace la función Adaptación, con el fin de que nos sirva como criterio operativo. Algunos autores sugieren un mecanismo de adaptación en el que la función recuperada sea la más sencilla de adaptar. Es decir, establece el criterio de recuperación subordinado al de adaptación.

Nuestro enfoque es el inverso: es la fase de recuperación la que prevalece, siendo el mecanismo de adaptación puramente transformacional y reducido a una copia de la solución recuperada hasta que el contexto no permite que sea utilizada. En este momento, se regresa a la etapa anterior y se comienza un nuevo proceso de recuperación. El nuevo problema estará planteado en términos del mismo estado final, pero con un nuevo estado inicial, aquel en el que la solución previa se ha detenido.

Veámoslo en detalle, si P = (S¡,Sf) y la fase de recuperación nos dice que existe un caso C = {P',S(P'), [S(P)]}) (CB) candidato a ser solución, la función de adaptación construye una solución para P que es la misma secuencia de operadores que en S(P') mientras existan creencias que soporten esta solución. En el momento en que esto no pueda seguir adelante, se genera un nuevo ciclo de recuperación y, con la solución recuperada, se inicia un nuevo proceso de adaptación; así sucesivamente hasta que alcancemos el estado final.

Por tanto, la función adaptación A total, puede entenderse como una serie de operadores A = αm • αm - 1 • ... • α2 • a1, cada uno de los cuales es parte de un caso recuperado.

Ejemplo:

Tenemos un problema P = (Si,Sf), y existe un P' = (S'i,S'f) con S(P') = (S1 = S'i, θ'1, S'2, θ'2,... , θ'n, S'n+1 = S'f) tal que puede ser utilizado como solución a adaptar. La función A[S(P')] = {Si = S1,θ'1,S"2,θ'2, S"3,θ'3,...,θ'j,S"j+1} comienza en el estado inicial de P y utiliza los operadores θj de S(P') hasta que el contexto le permite.

Tenemos una solución explícita para un problema intermedio, que no llega a ser P, y que denotaremos P1 = (Si, S"j+1). Alcanza un estado S"j+1 que será el punto de arranque para un problema denotado P" = [S"j+1,Sf] sobre el que comenzaremos de nuevo.

Denotamos

α1[S(P')] = {Si = S1,θ'1,S"2,θ'2, S"3,θ'3,...,θ'j,S"j+1} = S(P1)

supongamos que para el nuevo problema planteado, P" = [S"j+1 , Sj], encontramos un nuevo caso que permita alcanzar un estado S tal que S"j+1S ≤ Sf. Llamando P2 = [S"j+1, S], tendriamos un operador α2[S(P")] = S(P2) y asi sucesivamente hasta alcanzar el estado SF, podemos decir que,

A[S(P')] =
(
αm αm - 1 • ... • α2 • α1 ) [ S(P') ] = (αm αm - 1 • ... • α2)[S(P")]
= ... = (αm [S(Pm)] = S(P).

4.3. Revisión

En esta fase, la solución generada en la etapa de adaptación es evaluada y revisada. Tenemos, para un problema P, una solución S(P) con [S(P)}. En esta fase se comprueba que el proceso ha sido ejecutado adecuadamente y que se garantiza que

si la relación se cumple, el proceso de revisión está completado.

4.4. Memorización

Si la fase de revisión se resuelve positivamente, las características del problema y de la solución obtenida, son memorizadas como un nuevo caso, que formará parte del material almacenado para ser usado en el futuro, y se denota

5. Planificación y replanificacion dinámica

Hasta este punto, hemos definido un criterio que nos permite seleccionar una solución entre las soluciones de problemas almacenados, para posteriormente ser adaptada a un nuevo problema. El criterio presentado, basado en cálculo variacional, adquiere ahora su verdadera dimensión, pues es sencillo extenderlo para posibilitar un modo de planificación estratégico, es decir, un mecanismo que decide ahora, pero con vistas a posibles cambios en el futuro.

Asumiendo que los cambios significativos pueden ser determinados después de ejecutar una acción primitiva, entonces es posible controlar el dinamismo de nuevos eventos en el dominio y, de este modo, plantear una apropiada reconsideración del problema [8]. En la última parte de esta sección, se citará un formalismo más compacto para casos dinámicos, basado en funciones de Green, que puede ser usado para incorporar modificaciones al plan en ejecución, mediante conocimiento actualizado acerca de la evolución de los parámetros sobre los que se describe el problema. Si es aceptado que existen cambios en el entorno es necesario definir mecanismos de razonamiento capaces de tratar con tales cambios y ayudar a planificar de nuevo las intenciones. Formalmente, el proceso de razonamiento puede mantenerse en términos similares, ya que la descripción que genera el problema permanece constante, como explicamos a continuación.

Si en t0 la función V(X,Y,Z) toma la forma V0(X, Y, Z), para t1, V se denota como V1 (X, Y, Z), y denotamos la familia de hipersuperficies generadas en el espacio de fases como Π1(X, Y, Z) = 0; sobre ésta es posible obtener la curva óptima, previamente fijados dos puntos (Si,Sf) donde:

Resolviendo la ecuación de Euler, se obtiene la expresión 1 = 1 (X, Y, Z) la cual se utiliza para calcular la forma de Ψ1, a través de la función

Y así sucesivamente puede seguir haciéndose para cualquier tj (ver Figura 6).

Definición. De las ecuaciones anteriores, y basándose en herramientas de cálculo variacional, estamos en condiciones de ofrecer una expresión de la intención final que represente el plan de un agente CBR-BDI, que tiene la siguiente forma:

La teoría de funciones de Green pueden ser usadas para la automatización de este proceso de planificación dinámica. Si la evolución del sistema puede determinarse a priori, entonces tenemos las condiciones adecuadas para aplicar un operador de Green sobre un potencial dependiente del tiempo, proporcionando una forma, funcional para la solución global [14].

Con las funciones obtenidas previamente: V0(X, Y, Z), V1(X, Y, Z), V2(X, Y, Z),..., Vr(X, Y, Z) para t0, t1, t2,..., tr podemos definir la función siguiente.

Definición. Llamaremos potencial generador dependiente del tiempo, y denotaremos V = V[X, Y, Z, t], a una función que asocia a cada instante de tiempo tj un Vj[X, Y, Z].

Por ejemplo, para t0, la función V[X,Y,Z,t0] toma la forma V0[X,Y,Z], lo que proporciona la solución X0 = X0[X, Y, Z] = [X, Y, Z, t0], después de resolver la ecuación de Euler correspondiente.

Definición. Definimos el propagador de una función V[X, Y, Z, t] y denotamos G(X, X', t, t0) donde X = [x, y, z], X' = [x', y', z'] a la ecuación,

La propagación de una función desde el instante de tiempo t0 al instante t es controlada por la función G(X, X, t, t0), que hemos llamado propagador.

Los propagadores son conocidos también como funciones de Green, y almacenan toda la información concerniente a la dinámica de un problema. De este modo, concluimos esta sección mencionando la posibilidad de plantear un formalismo más compacto a partir de la teoría de funciones de Green, y que pueda ser usado para automatizar y definir el mejor plan para un agente que desea realizar sus deseos.

 

6. Caso de estudio: Agentes CBR-BDI para el turismo electrónico

El desarrollo teórico que hemos expuesto se ha aplicado en la definición, diseño e implementación de un sistema basado en agentes, que presenta comportamiento flexible, abierto, y con acceso móvil, para la promoción y gestión del turismo cultural y de interior. El sistema será estandarizado e interlingua. El diseño se dirige tanto a comercio B2B como B2C, a soporte para usuarios privados, empresas y organismo públicos, conectados directa o indirectamente con el turismo, buscando alcanzar mejoras de calidad en lo servicios.

La plataforma desarrollada ha sido específicamente diseñada para la promoción del turismo cultural, actividades de recreo y nuevas perspectivas sobre fuentes de interés patrimonial. Es combinada con información de tipo horizontal y vertical, sobre acomodación en hoteles, restaurantes, datos sobre el sector comercial y transporte, con el fin de poder atender a las necesidades de potenciales turistas, responder a sus consultas y dar soluciones a sus demandas de información y reserva en el momento en que son expresadas.

El proyecto pretende desarrollar soluciones innovadoras, prácticas y multidisciplinares, con las que ayudar a usuarios desde cualquier localización a organizar los diferentes servicios -ofrecidos frecuentemente de manera caótica y desde diferentes fuentes- dentro de un único, dinámico e interconectado sistema de conocimiento. Con esta finalidad, integramos nuestro sistema en una plataforma TIC que facilite el ciclo de gestión de conocimiento en varias organizaciones.

Una de las etapas iniciales en este ambicioso proyecto es el desarrollo de una arquitectura de agentes que sea útil para modelar agentes autónomos.

En esta línea, nuestro primer experimento ha sido diseñar un agente individual, usando la formalización presentada en las secciones previas, con la misión de asistir a turistas en la identificación de un horario óptimo para visitar Salamanca. Los usuarios del sistema interactúan con los agentes vía Internet o dispositivos móviles.

El mecanismo que se sigue es el siguiente: los turistas seleccionan un número de ítems, que corresponden a monumentos o lugares representativos para visitar, pudiendo fijar alguno en particular de manera explícita, seleccionan restaurantes... y un coste máximo de la visita, que esté dispuesto a asumir. Con estos datos el agente propone un horario óptimo, pero lo rectificará si es necesario, con sólo recibir nueva información facilitada por el usuario.

Las creencias, deseos e intenciones del agente son almacenadas en forma de casos -en nuestro problema los casos reflejan experiencias pasadas de anteriores turistas-. El objetivo del agente será alcanzar un plan acorde con los requerimientos de eficacia y eficiencia facilitados por el usuario.

Los turistas deciden qué valores para los atributos son aceptables y cuando, por tanto, una solución es adecuada. A través de los parámetros habilitados, deciden cuántos recursos están dispuestos a gastar, y cuantos objetivos consideran aceptable lograr. Esto implica una medida del gasto por objetivo que están dispuestos a soportar. El agente recupera los casos que pueden usarse para generar un plan, y el cálculo variacional sirve como controlador, tanto de la fase de recuperación, como del núcleo de la replanificacion dinámica.

 

7. Conclusiones

La arquitectura CBR-BDI resuelve uno de los problemas clásicos de arquitecturas deliberativas BDI como es la falta de capacidad de aprendizaje. El ciclo de razonamiento de un sistema CBR ayuda a los agentes a resolver problemas, facilita su adaptación a los cambios en el entorno e identifica nuevas posibles soluciones.

Nuevos casos son continuamente introducidos y los más atrasados se van eliminando. El componente CBR de una arquitectura, por tanto, proporciona un camino para la manipulación y actualización del conocimiento y de las experiencias previas.

La propuesta presentada en este trabajo reduce el gap que existe entre la formalización y la implementación de agentes BDI. Lo que nosotros proponemos es definir creencias, deseos e intenciones -sin necesidad de un modelo simbólico ni completamente lógico- y utilizar esta representación en el ciclo de vida de un motor de razonamiento CBR que facilite la implementación directa del agente.

Ha sido introducido un formalismo riguroso que permite la integración de los dos modelos, el de agencia y el de razonamiento basado en casos y que encuentra en el soporte matemático basado en el cálculo variacional un mecanismo de automatización del ciclo CBR, ya presentado.

Los agentes necesitan responder en tiempo real a las peticiones de los usuarios y adaptar las soluciones en tiempo real. Obtenemos del cálculo variacional el plan más adecuado para alcanzar un objetivo en entornos con incertidumbre, y se corresponde con aquel que mantiene la eficiencia entre sus estados lo más constante posible.

Hemos mostrado también cómo la arquitectura propuesta puede ser usada en el desarrollo de un agente para el turismo electrónico. El diseño presentado es la primera fase de un proyecto más ambicioso que se materializará en una comunidad de agentes capaces de resolver problemas de una manera autónoma e inteligente. Aunque la arquitectura y la formalización descrita ha sido aplicada al turismo electrónico, creemos que podría ser usada en cualquier otro dominio en el que agentes con capacidades de aprendizaje y de adaptación sean requeridos.

Nuestra propuesta ha tratado de integrar los avances tecnológicos actuales en el mundo de la informática distribuida, la inteligencia artificial, la tecnología Wireless e Internet. La multidisciplinaridad, en cuanto a los componentes de esta propuesta, es su elemento más innovador y distintivo y a nuestro modo de ver el mayor exponente de su éxito. El prototipo construido ha demostrado ser una herramienta muy útil para la organización de visitas turísticas en Salamanca, ciudad caracterizada por acoger visitantes que practican turismo cultural y que en un alto porcentaje acuden a la ciudad con dispositivos móviles desde los que pueden planificar sus visitas.

A. Introducción al cálculo variacional

Supongamos un espacio m-dimensional X = (X1, X2,..., Xm) y una función sobre X, que llamamos V(X), y que se denota genéricamente

sobre el espacio de fases -llamamos así al conjunto de todos los estados de proceso- la función V(X1,X2,... ,Xm) se traduce en una familia de hipersuperficies m-1 dimensionales que denotaremos como G(X1,X2,... ,Xm) = 0.

Consideremos dos puntos (ei, ef) que valoran sobre una hipersuperficie G(X1,X2,... ,Xm) = 0, esto es, ei = (Xi1, Xi2,..., Xim) cumple G(ei) = 0, ef = (Xf1, Xf2,..., Xfm) cumple G(ef) = 0.

Definición. Definimos el conjunto φ(e¡, ef) que está formado por todas las posibles curvas que unen (e¡, ef) y que denotamos {φ1(e¡,ef),φ2(e¡,ef),...,φm(e¡,ef)} y que cumplen la condición de estar "sobre la hipersuperficie". Esto es, φj(X1,X2,.. .,Xm) {φ(e¡,ef)} se satisface que G[φj(X1,X2,.. .,Xm)] = 0.

Veremos a continuación como, dado este conjunto φ(e¡,ef), el cálculo variacional, nos permite determinar la curva óptima respecto a su longitud, -técnicamente "geodésica''-y puede ser calculada automáticamente [2, 9, 14].

Para exponer la teoría, nos restringiremos a m = 3 (Figura 3), y denotaremos X = (X1,X2,X3) = (X,Y,Z).

Definición. Una funcional A[y = y(x)] definida sobre un espacio F, es una función continua de F en los números reales,

donde Ω() es el conjunto de funciones infinitamente diferenciables en .

Dada una funcional cualquiera A, se puede demostrar que las soluciones extremales (máxima o mínima) para A, son funciones y = y0(x) tales que su variación es nula, δA[y(x)] = 0.

Definición. Llamaremos funcionales integrables si admiten una expresión con la forma

Para estos casos, la condición de extremalidad δA[y(x)] = 0 se transforma en un criterio más práctico; se dice que una función y = y0(x) es óptima para la funcional integrable A[y(x)] si la función F[x,y(x),y'(x)] satisface la ecuación de Euler [2]:

Definición. Definimos sobre una superficie G(X,Y,Z) = 0 generada a partir de la función potencial V = V(X, Y, Z), la noción de distancia euclídea que asocia a cada par de puntos (ei, ef) un número real D(ei, ef) que se obtiene como,

donde ei = (Xi,Yi,Zi),ef = (Xf,Yf,Zf). De esta forma, la longitud de una curva cualquiera viene dada por la siguiente expresión,

La relación que G(X,Y,Z) = 0 establece entre sus variables, implica constricciones entre y(x),z(x). Esto permite la definición de dos nuevas coordenadas (ρ, Θ) sobre las que la ecuación anterior adopta una forma más sencilla para ser resuelta,

Ya que esta expresión presenta una dependencia funcional sobre la que podemos aplicar la ecuación de Euler -es una funcional integrable-. Hemos expuesto el caso particular en 3 dimensiones, pero la generalización de la ecuación de Euler existe y es válida para cualquier número de parámetros. Para un caso general, la solución se obtiene tras resolver un sistema de n ecuaciones diferenciales. Con este ejemplo pretendemos introducir una de las claves de nuestro planteamiento.

Establecemos una analogía estrictamente formal entre las trayectorias para el movimiento en espacios "deformados" por potenciales y las rutas intencionales que se generan como planes, sobre un espacio de casos ya experimentados, para cubrir los deseos de un agente BDI. De esta forma, tenemos un aparato matemático robusto que puede aplicarse en la definición de un criterio de recuperación para un ciclo CBR. El algoritmo de recuperación se basa en las herramientas presentadas de cálculo variacional.

 

Referencias

[1] A. Aamodt y E. Plaza. Case-based reasoning: foundational issues, methodological variations, and system approaches. AICOM, 7(1), Marzo, 1997.

[2] V.I. Arnold. Ordinary Differential Equations. Springer-Verlag, 1971.        [ Links ]

[3] M.E. Bratman. Intentions, Plans and Practical Reason. Harvard University Press, Cambridge, M.A., 1987.        [ Links ]

[4] D. Camacho, D. Borrajo, y J.M. Molina. Intelligence travell planning: a multiagent planing system to solve web problems in the e-tourism domain. International Journal on Autonomous agents and Multiagent systems, 4(4):385-390, Diciembre, 2001.

[5] P.R. Cohen y H.J. Levesque. Intention is choice with commitment. Artificial Intelligence, 42(3), 1990.

[6] J.M. Corchado y B. Lees. A hybrid case-based model for forecasting. Applied Artificial Intelligence, 15(2):105-127, 2001.

[7] C. Fyfe y J.M. Corchado. Automating the construction of cbr systems using kernel methods. International Journal of Intelligent Systems, 16(4), 2001. ISSN 0884-8173.

[8] M. González y J.M. Corchado. A planning strategy based on variational calculus for deliberative agents. Computing and Information Systems Journal, 10(1), 2002. ISSN: 1352-9404.

[9] M.H. De Groot. Optical Statiscal Decisions. McGraw-Hill, New York, 1970.        [ Links ]

[10] D. Kinny y M. Georgeff. Commitment and effectiveness of situated agents. En In Proceedings of the 12th International Joint Conference on Artificial Intelligence (IJCAI91), pp 82-88, Sydney, Australia, 1991.

[11] C.A. Knobolock, S. Minton, J.L. Ambite, M. Muslea, J. Oh, y M. Frank. Mixed-initiative, multisource information asistants. En 10th International world wide web conference (WWW10). ACM Press, May 1-5, 2001.

[12] R. Laza y J.M. Corchado. Construction of bdi agents from cbr systems. En First German Workshop on Experience Management, Vol. 1, pp 47-60, Berlin, Marzo, 2002. ISBN 3-88579-340-7.

[13] F.J. Martín, E. Plaza, y J.L. Arcos. Knowledge and experience reuse through Communications among competent (peer) agents. International Journal of Software Engineering and Knowledge Engineering, 9(3):319-341, 1999.

[14] P.M. Morse y H. Feshbach. Methods of Theoretical Physics. McGraw-Hill, New York, 1953.

[15] C. Olivia, C.F. Chang, C.F. Enguix, y A.K. Ghose. Case-based bdi agents: An effective approach for intelligent search on the world wide web. En AAAI Spring Symposium on Intelligent Agents, Stanford University, Marzo 22-24, 1999.

[16] A.S. Rao y M.P. Georgeff. Bdi agents: From theory to practice. En First International Conference on Multi-Agent Systems (ICMAS-95), San Francisco, USA, June, 1995.

[17] Y. Shoham. Agent-oriented programming. Artificial Intelligence, 60(1):51-92, 1993.        [ Links ]

[18] I. Watson y F. Marir. Case-based reasoning: A review. The knowledge Engineering Review, 9(3), 1994. Cambridge University Press.

[19] J. Wendler y M. Lenz. Cbr for dynamic situation assessment in an agent-oriented setting. En Proc. AAAI-98 Workshop on CBR Integrations, Madison (USA), 1998.

[20] M. Wooldridge y N.R. Jennings. Agent theories, architectures, and languages: A survey. En Procs. ECAI-94 Workshop on Agent Theories, Architectures, and Languages, 1994.

 

Creative Commons License All the contents of this journal, except where otherwise noted, is licensed under a Creative Commons Attribution License