razonamiento con incertidumbre
DESCRIPTION
Razonamiento Simbólico bajo Incertidumbre de Inteligencia ArtificialTRANSCRIPT
1
UNIVERSIDAD MAYOR DE SAN SIMÓN
FACULTAD DE CIENCIAS Y TECNOLOGÍA
CARRERA DE INGENIERÍA DE SISTEMAS
NOMBRES: BARRIENTOS JALDIN DIEGO
COCA VARGAS MANUEL RODRIGO
FLORES SORIA MIRIAN
DOCENTE: LIC. CARMEN ROSA GARCIA PEREZ
MATERIA: SISTEMAS EXPERTOS
Mayo, 29 de 2013
2
Contenido 1. INTRODUCCIÓN AL RAZONAMIENTO NO MONÓTONO ................................................................ 3
2. LÓGICAS PARA RAZONAMIENTOS NO MONÓTONOS ................................................................... 4
2.1. Razonamiento por defecto ...................................................................................................... 4
Lógica no monótona (NML) ........................................................................................................ 5
Lógica por defecto (DL) ............................................................................................................... 5
Abducción ................................................................................................................................... 5
Herencia ...................................................................................................................................... 6
2.2. Razonamiento minimalista ..................................................................................................... 6
Aspectos lógicos que aparecen cuando se elimina la limitación a cláusulas se Horn: La
suposición de un mundo cerrado ............................................................................................... 6
Circunscripción ............................................................................................................................ 7
3. CUESTIONES SOBRE LA IMPLEMENTACIÓN DEL RAZONAMIENTO NO MONÓTONO .................. 8
4. APLICACIÓN DEL RESOLUTOR DE PROBLEMAS.............................................................................. 9
Razonar hacia atrás ........................................................................................................................ 9
Razonar hacia adelante ................................................................................................................ 10
5. IMPLEMENTACIÓN: BÚSQUEDA PRIMERO EN PROFUNDIDAD .................................................. 11
5.1. Vuelta atrás dirigida por dependencias ................................................................................ 11
5.2. Sistemas de mantenimiento de la verdad basados en justificaciones ................................ 12
5.3 Sistemas de mantenimiento de la verdad basados en la lógica ........................................... 13
6. IMPLEMENTACIÓN: BÚSQUEDA PRIMERO EN ANCHURA........................................................... 13
3
1. INTRODUCCIÓN AL RAZONAMIENTO NO MONÓTONO
El razonamiento no monótono, en el cual los axiomas y/o las reglas de inferencia se extienden
para que sea posible razonar con información incompleta. Sin embargo estos sistemas conservan
la propiedad de que en un determinado, una sentencia puede pensarse que es cierta, puede
pensarse que es falsa, o puede pensarse que no es ninguna de las dos.
Los sistemas convencionales de razonamiento, como la lógica de predicados de primer orden,
están diseñados para trabajar con información que cumplen tres importantes propiedades:
- La información es completa con respecto al dominio de interés. En otras palabras, todos
los hechos para resolver el problema o están presentes en el sistema o pueden derivarse
de ellos mediante reglas convencionales de la lógica de primer orden.
- La información es inconsistente.
- La única forma en que puede cambiar la información es que se añadan nuevos hechos
conforme estén disponibles. Si estos nuevos hechos son consistentes con todos los demás
hechos que ya se han afirmado, entonces ninguno de los hechos pertenecientes al
conjunto que eran ciertos puedan refutarse. Esta propiedad se denomina monotonía.
Por otro lado los sistemas de razonamiento no monótono, por otro lado, se diseñan para que
puedan resolverse problemas en los que quizá no aparezca de estas propiedades. Para poder
lograrlo, se deben tratar varios aspectos clave, entre los que se encuentran los siguientes:
1. ¿De qué forma puede extenderse la base de conocimiento para permitir inferencias
realizadas tanto sobre la base de una falta de conocimiento como sobre una presencia del
mismo?
En este nuevo sistema, a una inferencia que depende de la falta de algún conocimiento se
le denomina inferencia no monótona. Los sistemas de razonamiento no monótonos
derivan su nombre del hecho de que como las inferencias depende de la falta de
conocimiento, las bases de conocimiento no crecen monótonamente conforme se hacen
nuevas aserciones. La adición de una aserción nueva puede invalidar una inferencia que
dependía de la ausencia de esa aserción.
2. ¿De qué forma puede actualizarse correctamente la base de conocimiento cuando se
añade un nuevo hecho o cuando se elimina otra anterior?
En concreto, como la adición de un hecho en un sistema no monótono puede causar que
algunas demostraciones previamente descubiertas pasen a ser inválidas, ¿Cómo puede
encontrase estas demostraciones y todas las conclusiones que dependen de ellas? La
solución más usual a este problema consiste en tomar nota de las demostraciones, que
con frecuencia se denominan justificaciones. Esto permite encontrar todas las
justificaciones que dependen de la ausencia de un nuevo hecho y, por lo tanto, estas
demostraciones pueden marcarse como invalidas. Este mecanismo de almacenamiento
también hace posible soportar un razonamiento convencional monótono en aquellos
casos en que los axiomas pueden ocasionalmente eliminarse para reflejar cambios en el
mundo que se desea modelar.
4
3. ¿Cómo puede usarse el conocimiento para ayudar a resolver los conflictos que surgen
cuando se pueden usar varias inferencias no monótonas inconsistentes?
En los sistemas no monótonos con frecuencia existen partes de la base de conocimiento
que son localmente consistentes pero mutuamente o globalmente inconsistentes.
Para hacer esto, se necesitan métodos adicionales que resuelvan estos conflictos de forma que
sean los más apropiados para el problema específico que se quiere resolver.
2. LÓGICAS PARA RAZONAMIENTOS NO MONÓTONOS
Las lógicas para el razonamiento no monótono sería deseable encontrar un formalismo que
realizaran lo siguiente:
- Definición de un conjunto de posibles mundos que podrían existir dados los hechos que
tenemos. De forma más precisa, definiremos una interpretación de un conjunto de fbf
para ser un dominio D, junto con una función que asigne: a cada predicado, una relación a
cada función de aridad n, un operador que relacione 𝐷𝑛 con D; y para constante un
elemento de D. Un modelo de un conjunto de fbf.
- Proporcione una forma de decir que preferimos creer en algunos modelos en lugar de en
otros.
- Proporcione la base para una implementación práctica de este tipo de razonamiento.
- Se corresponda con nuestra intuición sobre la forma de trabajar de este tipo de
razonamiento. En otras palabras, no es deseable que los caprichos sintácticos tengan un
impacto significativo en las conclusiones que el sistema puede producir.
2.1. Razonamiento por defecto
Se quiere usar el razonamiento no monótono para llevar a cabo lo que comúnmente se denomina
razonamiento por defecto. Se pretende llegar a unas conclusiones basadas en lo que es más
probable que sea cierto.
Para esto se explica las siguientes lógicas:
La lógica no monótona.
Lógica por defecto.
Y las dos clases más comunes de razonamiento no monótono que puede definirse en estas lógicas:
Abducción.
Herencia.
5
Lógica no monótona (NML)
Es un sistema que proporciona una base para razonar por omisión, en donde el lenguaje de la
lógica de predicados de primer orden se aumenta con un operador modal M, que se lee como “es
consistente” por ejemplo:
∀𝑥, 𝑦 ∶ 𝑃𝑎𝑟𝑖𝑒𝑛𝑡𝑒𝑠 𝑥, 𝑦 ˄ 𝑀 𝐸𝑠𝑡𝑎𝑑𝑒𝑎𝑐𝑢𝑒𝑟𝑑𝑜 𝑥 ,𝑦 → 𝐷𝑒𝑓𝑒𝑛𝑑𝑒𝑟𝑎 𝑥, 𝑦
Se lee “Para todo x e y, si x e y son parientes y si el hecho de que x se haya puesto de acuerdo con
y es consistente con el resto de las suposiciones, entonces se concluye que x defenderá a y”
Lógica por defecto (DL)
Es una lógica alternativa para llevar a cabo un razonamiento basado en omisiones en la que se
introduce un nuevo tipo de reglas de inferencia. Este enfoque permite reglas de inferencia de la
siguiente forma:
𝐴: 𝐵
𝐶
Se lee “Si A es probable y es consistente asumir B, entonces se concluye que C”.
El propósito es muy similar al de las expresiones no monótonas de la NML, sin embargo existen
diferencias importantes entre las dos teorías.
La primera es que en la DL las nuevas reglas de inferencia se usan como base para
calcular un conjunto de extensiones plausibles de la base de conocimiento. La lógica
entonces admite como teorema cualquier expresión valida en alguna extensión, si es
necesario decidirse entre las extensiones para poder resolver el problema, debe
proporcionarse algún otro mecanismo.
La segunda es que en la DL, las expresiones no monótonas son reglas de inferencia en
lugar de expresiones del lenguaje, es decir, no pueden manipularse mediante otras
reglas de inferencia, esto conduce a algunos resultados no esperados. Por ejemplo:
𝐴: 𝐵
𝐵 ⌝𝐴: 𝐵
𝐵
Sin ninguna aserción sobre A, no se puede llegar a ninguna conclusión sobre B, ya
que no se aplica ninguna regla de inferencia.
Abducción
El proceso de razonamiento por abducción puede describirse con más precisión de la siguiente
forma, “Dadas dos fbf (A → B) y (B), para cualquier expresión A y B, si es consiste asumir A,
hacerlo”.
El razonamiento por abducción es particularmente útil en muchos dominios si se asigna alguna
medida a las expresiones resultantes. Estas medidas de certeza cuantifican el peligro de que el
6
razonamiento por abducción sea incorrecto, lo cual sucederá cuando existan otros antecedentes
aparte a A que podrían producir B.
El razonamiento Abdicativo no es un tipo de lógica del estilo de la DL y la NML, pero se puede describir sobre cualquiera de ellas, pero es una tipo de razonamiento no monótono muy útil. Herencia
El razonamiento no monótono se utiliza con mucha frecuencia en la herencia de los valores de los
atributos desde la descripción prototipo de una clase hacia las entidades individuales que
pertenecen a la clase.
El funcionamiento de este algoritmo se describe como sigue: “Un objeto hereda valores de los
atributos de todas las clases de las que sea miembro a no ser que al hacerlo se llegue a una
contradicción, en cuyo caso un valor de una clase más restringida tiene preferencia sobre un valor
de una clase más amplia”.
2.2. Razonamiento minimalista
Hasta esta este momento hablamos de métodos que proporcionan formas de describir cosas que
son ciertas. Ahora hablaremos de métodos que se referirán a un tipo específico y útil de cosas que
son ciertas. Estos métodos están basados en un modelo mínimo.
El modelo mínimo es la diferenciación, no existe otro modelo en los que las cosas sean menos
ciertas. El uso de modelos mínimos como base para el razonamiento no monótono, sobre el
mundo es la siguiente: Existen sentencias menos ciertas que falsas. Si una sentencia es cierta e
importante entonces esta sentencia debe añadirse a la base del conocimiento. Y para que estas
sentencias se mantengan en la base del conocimiento deben ser ciertas.
Cláusulas de Horn son instrucciones ejecutables de PROLOG, tiene el siguiente aspecto:
Hija (*A, *B) <- mujer (*A), padre (*B, *A). Que podría leerse: A es hija de B si A es mujer y B es el
padre de A.
Aspectos lógicos que aparecen cuando se elimina la limitación a cláusulas se Horn: La suposición
de un mundo cerrado
Conocido en inglés como CWA. Reiter en 1978 sugiere una sencilla forma de razonamiento
minimalista. Dice que la CWA es muy poderosa como base para razonar con bases de datos, los
cuales describen las propiedades de los objetos. La CWA indica que los únicos objetos que
satisfacen un predicado son aquellos que deben hacerlo. Por ejemplo: Una base de datos de una
empresa sobre el personal puede listar todos los empleados de la empresa. Si alguien pregunta si
María trabaja para la empresa, se puede responder no, a no ser que aparezca explícitamente en la
lista de los empleados.
7
Aunque la CWA es sencilla y poderosa, puede dar errores en la generación de respuestas
apropiadas por dos razones: La primera es que la suposición no es cierta en el mundo real. Por
ejemplo la Historia del asesinato. Abbott, Babbit y Cabot los sospechosos de un caso de asesinato.
Abbott tiene la coartada, en el registro del hotel de Albany. Babbit también tiene una coartada, de
la visita de su cuñado en Brooklyn y Cabot también defiende su coartada asegurando que se
encontraba viendo la televisión en Catskills. En el momento del crimen los tres hacían alguna
actividad. Sabemos que Abbott no cometió el crimen, Babbit tampoco lo hizo, Cabot tampoco lo
hizo y que ninguno de los tres cometió el crimen, no estamos seguros.
Existen hechos en investigación que todavía no se han descubierto, por tanto aun no están en la
base del conocimiento. La CWA producirá resultados siempre y cuando la suposición sea cierta
para que todos los hechos positivos relevantes estén en la base del conocimiento.
La segunda es que la CWA surge del hecho de que es un proceso de razonamiento sintáctico. Sus
resultados dependen de la forma en que se proporcionan las afirmaciones. Ejemplo, suponer que
se define un predicado soltero y se crea la siguiente base de conocimiento:
Soltero (Juan), Soltero (María) ---> Soltero (Joel)
Si preguntan por Joel, la CWA producirá la respuesta como Soltero (Joel).
Circunscripción
Como la CWA tiene la idea de que algo que no es necesariamente cierto es asumido como falso.
Por tanto, posee dos limitaciones esenciales:
Opera sobre predicados individuales sin considerar iteraciones entre los predicados
definidos en la base del conocimiento.
Asume que todos los predicados tienen listadas todas las sentencias. Esto es cierta en
bases de datos pero no en bases de conocimiento. Por ejemplo, el predicado tiene-una-
camiseta verde se considera como abierta porque no especifica todos los detalles.
Para manipular estos problemas se han propuesto distintas teorías sobre circunscripción.
Mc Carttry en 1980-1986 y Lifschitz en 1985 proponen añadir nuevos axiomas a la base de
conocimiento existente. El afecto de estos axiomas consiste en forzar la interpretación mínima
sobre una parte del conocimiento, cada axioma específico describe una forma de delimitar el
conjunto de valores para que un axioma particular sea cierto. Ejemplo, sencilla aserción:∀𝑥:
Adulto(x) y~𝐴𝐵 (x, aspecto 1) ----> sabe leer (x)
Circunscribiendo AB nos preguntamos lo que debe ser el predicado AB. El predicado AB no
sabemos ni tenemos idea de que puede ser; todo lo que se sabe es su nombre AB. Para saber que
es, es necesario saber para qué valores es cierto y solo uno de tantos valores ciertos es AB.
8
La circunscripción produce el mismo resultado que la CWA. En Ambos, los únicos modelos
admitidos son aquellos en los que no existen individuos que sean anómalos en aspecto 1, es decir,
AB debe ser el predicado falso. Ejemplo: A (Joe) y B (Joe)
Cuando solo se circunscribe A, la aserción describe aquellos modelos en los que A no es cierto para
nadie y B es cierto al menos para Joe. Si se circunscribe solo B, entonces se aceptaran los modelos
en los que B no sea cierto para nadie y A sea cierto al menos para Joe. Si se circunscribe tanto A
como B, entonces solo se admitirán aquellos modelos en los que A solo sea cierto para Joe y B
para nadie o aquellos en los que B solo sea cierto para Joe y A para nadie.
De esta forma a diferencia de CWA la circunscripción nos permite describir la relación lógica entre
A y B.
3. CUESTIONES SOBRE LA IMPLEMENTACIÓN DEL RAZONAMIENTO NO MONÓTONO
En los programas de resolución de problemas, la base para la implementación del razonamiento
no monótono no es suficiente. Todos presentan alguna debilidad como sistemas lógicos. Y suelen
fallar al tratar con cuatro problemas importantes que surgen en los sistemas reales.
1) Consiste en la forma de derivar exactamente aquellas conclusiones no monótonas que son
relevante para resolver el problema mientras no se agote el tiempo, no sean necesarias y no
merezcan que se gaste tiempo.
2) Es como actualizar gradualmente el conocimiento conforme progrese la resolución del
problema. La definición de un sistema lógico nos dice como decidir sobre el estado de una
proposición respecto a un estado de certeza dado para el resto de la base de conocimiento. Como
el procedimiento que realiza esta tarea es global, un cambio en la base del conocimiento puede
tener consecuencias de largo alcance.
3) Consiste que en los sistemas de razonamiento no monótonos, con frecuencia ocurre que las
reglas de inferencia disponibles permiten más de una interpretación de los hechos conocidos.
Según la terminología de Reiter, un sistema no monótono dado puede tener distintas extensiones
a la vez, aunque muchas de ellas se van eliminando eventualmente conforme se dispone de nuevo
conocimiento.
4) Consiste en que, estas teorías son computacionalmente ineficaces. Ninguna de ellas es
decidible. Algunas de ellas son semidecidibles pero solo en su forma proposicional, y todas son
ineficientes.
Ahora se hablara de soluciones computacionales a todos estos problemas. En todos estos sistemas
el proceso de razonamiento se separa en dos partes: Un resolutor de problema que utiliza
cualquier mecanismo que llegue a conclusiones conformes sean necesarias y un sistema de
mantenimiento de la verdad cuyo trabajo consiste en ir memorizando lo necesario para
proporcionar una solución al Segundo Problema.
9
Los distintos aspectos lógicos, al igual que los heurísticos (técnicas de localización de inferencia no
monótonas) son aspectos pertenecientes al diseño del resolutor de problemas. Donde las técnicas
heurísticas se dividen en dos clases que se determinan por el enfoque que se da al problema del
control de búsqueda: Primero en Profundidad y Primero en anchura.
4. APLICACIÓN DEL RESOLUTOR DE PROBLEMAS
La resolución de un problema que utiliza conocimiento incierto no es una excepción. Existen dos
enfoques básicos para este tipo de resolución de problemas: razonamiento hacia adelante o
razonamiento hacia atrás.
Razonar hacia atrás
Los sistemas de razonamiento no monótono que soporta este tipo de razonamiento pueden
proporcionar alguna o todas las siguientes características:
Permita clausulas por defecto en las reglas hacia atrás. Los conflictos entre ellas se
resuelve con la misma estrategia de control utilizada en otros tipos de razonamiento.
Que soporte algún tipo de debate en el que se intenta producir argumentos tanto en favor
de P como en su contra. Para poder determinar qué posibilidad es más fuerte, se necesita
algún tipo de conocimiento adicional aplicado a los argumentos.
Funciona de manera representada, siempre que estén presentes los hechos que se necesitan
cuando se invocan las reglas.
En el caso de razonamiento hacia atrás, se intenta demostrar una expresión P. Suponer que
tenemos la base del conocimiento formado por las reglas hacia atrás.
Ejemplo: Reglas hacia atrás que usan A-NO-SER-QUE.
Sospechoso (x) <----se_beneficia (x)
A-NO-SER-QUE Coartada (x)
Cuartada (x) <---- en-algun_otro_sitio(x)
En-algun_otro_sitio(x) <---- registrado_en_hotel(x,y) y lejos (y)
A_NO-SER-QUE registro_falsificado(y)
Coartada (x) <---- defiende (x,y)
A_NO-SER-QUE mediante (x)
En_algun_otro_sitio(x) <---- fotografía(x,y) y lejos(y)
Contradicción <---- TRUE
A-NO-SER-QUE ∃𝑥 : sospechoso (x)
Se_beneficia(Abboth)
Se_beneficia(Babbitt)
Se_beneficia(Cabot)
El resultor del problema que utiliza esta base de conocimiento emplea una estructura de control
del estilo PROLOG en el que estas reglas se consideran de arriba a abajo y de izquierda a derecha.
10
Si se pregunta ¿Sospechoso (x)? el programa responde a Abbott que es sospechoso. Si se añaden
los hechos:
registrado_en_hotel(Abbott,Albany)
Lejos (Albany)
Entonces el programa concluye que Abbott no es un sospechoso y concluye como sopechoso
aBabbit. En el caso de la historia del asesinato, por ejemplo se considera tres sospechosos.
Entonces se intenta hacer algún tipo de elección entre argumentos. En este caso podríamos
disponer de una regla que diga que es mejor mentir para defenderse de los demás. Y otra regla
que indique que preferimos creer en el registro de un hotel que de la gente. Al usar estas dos
reglas, el resultor del problema concluye que el sospechoso más creible es Cabot.
En las reglas hacia atrás se concluye que Abbott es nuestro sospechoso y más tarde nos indica que
estuvo registrado en un hotel Albany, las reglas hacia atrás no son capaces de detectar que algo ha
cambiado.
Razonar hacia adelante
Esa partir de lo que se conoce. Los sistemas de razonamiento no monótono que soportan este tipo
de razonamiento permiten que las reglas estándar de encadenamiento hacia delante se extiendan
con cláusulas A-NO-SER-QUE, proporcionan la base del razonamiento por defecto. Se trata de las
demás decisiones de control que realiza el sistema (cualquiera que esta sea, por ejemplo mediante
petición de reglas o el uso de metareglas). Por tanto con las reglas hacia adelante el
comportamiento del sistema se ve influenciado por los datos.
Ejemplo: Reglas hacia delante que usan A-NO-SER-QUE.
Si_se _beneficia(x)
A-NO-SER-QUE Coartada (x)
entonces sospechoso (x)
si: En_algun_otro_sitio(x)
entonces Cuartada (x)
si: Registrado_en_hotel(x,y), y lejos (y)
A_NO-SER-QUE registro_falsificado(x)
entonces en-algun_sitio (x)
Se defiende (x,y)
A_NO-SER-QUE mediante (y)
Entonces Cuartada(x)
Si: fotografía(x,y) y lejos(y)
entonces en-algun_sitio (x)
SI CIERTO
A-NO-SER-QUE ∃𝑥 : sospechoso (x)
11
entonces contradicción ()
Se_beneficia(Abboth)
Se_beneficia(Babbitt)
Se_beneficia(Cabot)
5. IMPLEMENTACIÓN: BÚSQUEDA PRIMERO EN PROFUNDIDAD
5.1. Vuelta atrás dirigida por dependencias
En contraste al Método de vuelta atrás cronológica, en el que se invalidan hechos que no
dependen de que haya existido una contradicción que descarte el hecho principal del que fueron
derivados, el Método de vuelta atrás dirigida por dependencias trata de evitar esto (y por
consiguiente elimina el esfuerzo realizado en vano) porque lo conveniente sería, en realidad,
eliminar las sentencias basándose en la responsabilidad sobre la consistencia, en lugar de hacerlo
sobre la base del orden en que se generaron las mismas.
Para usar vuelta atrás dirigida por dependencias, es necesario seguir las siguientes acciones:
Asociar a cada nodo una o más justificaciones. Cada justificación se corresponde con un
proceso de derivación que conduce al nodo.
Proporcionar un mecanismo que cuando se produzca una contradicción entre el nodo y su
justificación genere el conjunto de suposiciones “malas”.
Proporcionar un mecanismo que considere el conjunto “malas” y elija una suposición para
retirar.
Proporcionar un mecanismo que propague el resultado de la retirada de una suposición.
12
Vuelta atrás sin dependencias.
5.2. Sistemas de mantenimiento de la verdad basados en justificaciones
Un Sistema de Mantenimiento de la Verdad basado en Justificaciones (JTMS) es una forma de
proporcionar la habilidad de trabajar con una vuelta atrás dirigida por dependencias para poder
soportar el razonamiento no monótono.
Una justificación.
En la figura la suposición Abbot sospechoso tiene asociada una justificación JTMS. Cada
justificación está formada por dos partes: una lista-IN y una lista-OUT. Las aserciones de la lista-IN
13
se conectan a la justificación mediante enlaces “+”, mientras que las de la lista-OUT lo hacen
mediante enlaces “-”. En la justificación que se está mostrando, hay exactamente una aserción en
cada lista. Abbot se beneficia está en la lista-IN y Abbot tiene coartada se encuentra en la lista-
OUT. La justificación indica que Abbot debería ser un sospechoso si se piensa que es un
beneficiario y no se cree que tenga una coartada.
Las aserciones de una red de dependencias JTMS se creen cuando tienen una justificación válida.
Una justificación es válida si se cree en cada aserción de la lista-IN y no se creen en ninguna de las
de la lista-OUT.
En una red JTMS los nodos se etiquetan con un estatus de creencia. Si tuviera que creerse en la
aserción entonces se etiqueta como IN, si no existe una buena razón para creer en la aserción,
entonces se etiqueta como OUT. Entonces, una justificación es válida si cada nodo de su lista-IN
tiene la etiqueta IN y cada nodo de la lista-OUT tiene etiqueta OUT.
Nodos etiquetados.
5.3 Sistemas de mantenimiento de la verdad basados en la lógica
Un Sistema de Mantenimiento de la Verdad basado en la Lógica (LTMS) es muy similar a un JTMS,
pero se diferencia en un aspecto muy importante: un LTMS es capaz de detectar contradicciones
de forma automática ya que existen relaciones entre los nodos de la red. Es decir, en un LTMS no
se podría etiquetar simultáneamente a P y ¬P como IN, pero esto sí es posible en un JTMS.
6. IMPLEMENTACIÓN: BÚSQUEDA PRIMERO EN ANCHURA
Otra alternativa de implementar el razonamiento no monótono son los Sistemas de
Mantenimiento de la Verdad basados en Suposiciones (ATMS). En JTMS y LTMS se sigue una sola
línea de razonamiento en cada momento, y cuando es necesario cambiar las suposiciones del
sistema, surge una vuelta atrás dirigida por dependencias. En un ATMS se mantienen en paralelo
varios caminos alternativos. La vuelta hacia atrás se evita con el mantenimiento de varios
contextos, cada uno de los cuales contiene un conjunto de suposiciones consistentes. En esencia,
mientras que un ATMS funciona en anchura, los sistemas JTMS y LTMS funcionan en profundidad.
14
Los ATMS funcionan en conjunto con Resolutores de Problemas, ambos cumplen funciones por
separado:
Resolutor de Problemas:
Crear los nodos de las aserciones.
Asociar a cada nodo justificaciones.
Informar al ATMS de los contextos inconsistentes.
ATMS:
Propagar las inconsistencias de forma que se excluyan los contextos que contengan
subcontextos que se sabe que son inconsistentes.
Etiquetar cada nodo del resolutor de problemas con el contexto que tiene una justificación
válida.
Los contextos se eliminan como consecuencia de que el resolutor de problemas encuentra
inconsistencias y el ATMS las propaga.