3. Fundamentos Teóricos y Precedentes
3.1. ATMS
El ATMS (Assumption-based Truth Maintenance System) [de Kleer, 1986] es un tipo de Sistema de Mantenimiento de Verdad (SMV, en inglés Truth Maintenance System) que no está basado en la manipulación de justificaciones, como otros SMV anteriores, sino en la manipulación de conjuntos de hipótesis (assumptions). Este enfoque lo convierte en un SMV más adecuado cuando lo que se persigue es explorar varias soluciones potenciales simultáneamente, es decir, cuando se desea explorar el espacio de estados del problema en anchura [Reinfrank, 1989]. Otros tipos de SMV, sin embargo, resultan ser más adecuados para explorar el espacio de estados del problema en profundidad. Estos otros tipos de SMV se basan en un mecanismo para resolver inconsistencias denominado retroceso dirigido por dependencias (dependency directed backtracking), que consiste en reconsiderar la decisión más reciente que contribuyó a la inconsistencia, en vez de reconsiderar la decisión más reciente independientemente de que contribuyera a la inconsistencia o no (retroceso cronológico).
Antes de explicar el funcionamiento de un ATMS, se va a exponer el concepto de SMV. Un SMV trabaja en colaboración con un Resolutor de Problemas (RP). Un RP es un sistema que incluye todo el conocimiento del dominio, así como una serie de procedimientos de inferencia. Cada inferencia realizada por el RP (justificación), es comunicada al SMV. El trabajo del SMV consiste entonces en determinar, a partir de las justificaciones enviadas por el RP, qué hechos deben ser considerados ciertos o falsos (creencias) por el RP. El SMV lleva a cabo esta tarea extrayendo conclusiones, vía inferencia proposicional, a partir de las justificaciones, que son tratadas como axiomas proposicionales. La resolución de un problema en una arquitectura RP- SMV, por tanto, es entendida como un proceso de acumulación de justificaciones y actualización del conjunto de creencias, hasta que alguna meta es satisfecha. En este sentido, el Ingeniero del Conocimiento debe asegurar que la resolución del problema converge a una solución que satisface todas las metas planteadas inicialmente.
Gracias a la presencia del SMV junto al RP, se mejora la eficiencia del proceso de resolución del problema, más concretamente, se evita:
- Retroceso fútil: cuando se descubre una contradicción, se recon+sidera la hipótesis más reciente que contribuye a la contradicción, en vez de la hipótesis más reciente independientemente de que contribuyera a la inconsistencia o no.
- Redescubrimiento de contradicciones: cada vez que se detecta una contradicción, se registra el conjunto de hipótesis mutuamente excluyentes (conjunto nogood). De esta manera, se pueden descartar más tarde superconjuntos de conjuntos hipótesis conflictivas, y por lo tanto se pueden evitar operaciones innecesarias.
- Redescubrimiento de inferencias: el resultado de cualquier operación costosa será registrado. De este modo, si el conjunto de hipótesis que condujo a la realización de una operación costosa es descartado, y más tarde se precisa de nuevo el resultado de esta misma operación, entonces no será necesario repetir la operación.
Para lograr la funcionalidad de un SMV, un ATMS mantiene una base de datos formada por nodos interconectados por relaciones de dependencia lógica.
Por cada hecho que aparezca en una justificación, el ATMS construye un nodo de la forma:
γhecho = <hecho, etiqueta, justificaciones>
Una justificación describe cómo se puede derivar un nodo a partir de otros nodos. Una justificación consta de tres partes: el nodo que se justifica; una lista de nodos; y una descripción de la justificación proporcionada por el RP. Una etiqueta es un conjunto de entornos, y un
entorno es un conjunto de hipótesis. Si un entorno forma parte de la etiqueta asociada a un hecho en un nodo, entonces las hipótesis incluidas en el entorno posibilitarán la deducción de este hecho vía alguna de las justificaciones asociadas a este hecho. Un contexto es un conjunto formado por las hipótesis de un entorno consistente combinadas con todos los nodos derivables desde dichas hipótesis. Un entorno característico de un contexto es un conjunto de hipótesis desde el que cada nodo del contexto puede ser derivado.
Básicamente, el RP utiliza el ATMS para controlar si un determinado contexto se hace inconsistente, o si un cierto objetivo necesario para el RP puede deducirse de algún entorno consistente.
Mientras que las justificaciones son proporcionadas por el RP, las etiquetas son construidas por el ATMS de forma incremental. El ATMS garantizará que cada etiqueta es consistente, correcta, completa y minimal con respecto a las justificaciones:
- Una etiqueta es consistente si todos sus entornos son consistentes.
- Una etiqueta asociada a un nodo n es correcta si n es derivable desde cada entorno incluido en la etiqueta.
- Una etiqueta asociada a un nodo n es completa si cualquier entorno consistente E que permita deducir n vía las justificaciones, es un superconjunto de algún entorno E’ incluido en la etiqueta de n.
- Una etiqueta es minimal si ningún entorno de la etiqueta es un superconjunto de otro entorno de la etiqueta.
Como consecuencia de estas propiedades, resulta sencillo averiguar:
- si un nodo se puede derivar desde un entorno E. Basta con comprobar si E es un superconjunto de algún entorno incluido en la etiqueta del nodo;
- si un nodo forma parte de un contexto. Basta con comprobar si al menos un entorno incluido en el nodo es un subconjunto del entorno característico del contexto; y - si un nodo n implica otro nodo n’. Basta con comprobar si todo entorno incluido en
n es un subconjunto de algún entorno incluido en n’.
Dentro de la estructura de nodos se distinguen cuatro tipos de nodos, atendiendo a su contenido: - Premisas: son nodos de la forma <n, {{}}, {()}>, es decir, sin antecedentes ni
justificaciones. Estos nodos, lógicamente, se encuentran en cualquier contexto.
- Hipótesis: son nodos que tienen como etiqueta un único entorno que incluye a la propia hipótesis. Puede haber hipótesis que se justifiquen sólo por sí mismas:
<A, {{A}}, {(A)}>
y puede haber hipótesis que tengan justificaciones aparte de sí mismas: <A, {{A}, {B, C}}, {(A), (d)}>
- Nodos asumidos: son aquellos que se justifican sólo por hipótesis: <a, {{A, B, C}, {B, C, D}}, {(γ1, γ2, γ3)}>
donde A, B, C y D son hipótesis.
- Nodos derivados: son aquellos que no pertenecen a ninguno de los grupos anteriores.
Cada entorno consistente caracteriza un contexto. Si hay n hipótesis, hay potencialmente 2n contextos. Los distintos entornos que se pueden formar con n hipótesis se pueden organizar en un retículo, de tal forma que en cada nivel k de este retículo se encontrarán todos los entornos que se pueden formar con k hipótesis. Por lo tanto, en cada nivel tendremos el siguiente número de entornos:
Asimismo, se establece en el retículo una línea de conexión entre cada par de entornos entre los que exista una relación de inclusión. Como ejemplo, el retículo para las hipótesis A, B, C, D y E se muestra en la figura 3.1.
Si un entorno permite la deducción de la contradicción, este entorno es denominado no-good y es eliminado del retículo. En consecuencia, cualquier entorno que sea un superconjunto de un entorno no-good, también será considerado no-good. En el ejemplo de la figura 3.1, se ha supuesto que el entorno {A, B, E} es no-good; por lo tanto se han eliminado tanto este entorno como todos sus superconjuntos.
Dados los entornos asociados a las premisas de una inferencia, cada entorno asociado a la conclusión será aquel que también sea entorno de todas las premisas. Por ejemplo, sea la inferencia γx+y=1 , γx=1⇒γy=0 , y supongamos que los nodos asociados a las premisas son:
γx+y=1: <x+y=1, {{A, B}, {B, C, D}}, {...}>.
γx=1: <x=1, {{A, C},{D, E}}, {...}>.
En los que no se detallan las justificaciones, porque no se consideran relevantes para lo que se va a ilustrar.
En la figura 3.1, los contextos que hacen cierto al hecho γx+y=1 aparecen dentro de un círculo, y los contextos que hacen cierto al hecho γx=1 aparecen dentro de un rectángulo. Así pues, los contextos de γy=0 serán aquellos que aparezcan dentro de un círculo y un rectángulo. De entre todos estos contextos, sólo se incluirán como entornos, en el nodo asociado al hecho γy=0, aquellos contextos que no sean redundantes ni contradictorios. Por lo tanto, el nodo asociado al hecho γy=0 será:
γy=0: <y=0, {{A, B, C},{B, C, D, E}}, {(γx+y=1 , γx=1)}>.
Una vez definida la estructura de nodos, así como su utilidad en el proceso de inferencia, vamos a especificar como se construye incrementalmente la estructura. Las tres operaciones básicas en el ATMS son:
- Crear un nodo para un hecho aportado por el RP. - Crear una hipótesis.
- Añadir una justificación a un nodo existente.
Cualquier actualización de la estructura de nodos consistirá en una sucesión de estas tres operaciones básicas, que generará un nuevo estado de la estructura que será consistente, correcto, minimal y completo. Mientras que las dos primeras operaciones son sencillas, la adición de justificaciones requiere un proceso más complejo:
⎟⎟
⎠
⎞
⎜⎜
⎝
⎛
k
n
Figura 3.1 : Ejemplo de retículo de ATMS
Supongamos que una nueva justificación es proporcionada para el nodo n: 1. Se construye una nueva etiqueta para el nodo:
Sea jikla etiqueta del nodo i-ésimode la k-ésima justificación para el nodo n; entonces una etiqueta completa para el nodo n se obtiene así:
2. Se suprimen de la etiqueta completa generada de la forma anterior los entornos inconsistentes (no-goods) o subsumidos en otros anteriores.
3. Si la etiqueta obtenida es igual a la etiqueta inicial, se acaba. Si no:
- Si el nodo es γ⊥, cada entorno de la etiqueta es añadido a una base de datos de no-
goods, y se retiran todos los entornos inconsistentes (iguales o superconjuntos de ellos) de los nodos ya existentes.
- Si el nodo no es γ⊥, se actualizan recursivamente las etiquetas de los nodos
consecuentes, es decir, de todos los nodos que poseen justificaciones que mencionan al nodo n.
Puede plantearse la retirada de alguna justificación si el RP lo decide oportuno. En estos casos, retirar una justificación de un nodo implicará las siguientes operaciones:
- Se invalidan las etiquetas de todos los consecuentes (recursivamente) y se recalculan a partir de etiquetas válidas, debido a que algunos de los entornos suprimidos, por estar subsumidos, hay que recuperarlos.
- Si alguno de los consecuentes recursivos es ⊥, es posible que haya que sacar algún entorno E de la base de no-goods, por lo que también habrá que recuperar todos los entornos más
Υ
Υ
k ik j i x que tales i i x x x/ } { = ∈específicos que E. Esta operación puede afectar potencialmente a todas las etiquetas de todos los nodos.
A causa del elevado coste de la segunda operación, no es nada recomendable retraer una justificación en un sistema ATMS.
Las ventajas de un ATMS frente a otros tipos de SMV son las siguientes:
- En una misma estructura de nodos pueden convivir distintas soluciones, por lo tanto se facilita el proceso de comparar soluciones.
- Al eliminar las contradicciones durante el proceso de resolución del problema, no se descartan posibles soluciones.
- El cambio de estado dentro del espacio de estados del problema es muy eficiente, ya que el ATMS estudia todas las alternativas al mismo tiempo.
- Resulta fácil comparar los conjuntos de hipótesis que soportan los distintos hechos. - Las hipótesis asociadas a una contradicción son fácilmente identificables.
- No es preciso detectar circularidades en la estructura de nodos, como ocurre, por ejemplo, en los sistemas de tipo Doyle [Doyle, 1979].
- No se pierden operaciones ya realizadas como consecuencia de la retracción de justificaciones tras una contradicción. Los resultados de las operaciones asociadas a un entorno se guardan junto con un entorno, y se recuperan cuando el RP lo considere necesario.
El método que se va a presentar en este trabajo se engloba en la familia de métodos basados en la propagación de etiquetas (véase el apartado “2.3.2.4. Métodos basados en la Generación de Etiquetas”). Los métodos de esta familia se inspiran en el ATMS, en la medida en que construyen una teoría de tipo ATMS a partir, fundamentalmente, de la BR. Apoyándose en esta teoría, estos métodos, dada una RI, son capaces de elaborar una descripción de una BH inicial que dé lugar a una violación de la RI al ejecutar el SBC. Esta descripción de la BH toma la forma de una etiqueta ATMS.