SlideShare una empresa de Scribd logo
1 de 13
El sistema experto MYCIN
                      Resumen realizado por Jesús Díaz de Lope para la asignatura
                                 Razonamiento y Aprendizaje de la UNED


MYCIN puede considerarse un tipo de Sistema de Producción1 con algunas particularidades, cuya
base de datos es un conjunto de cuádruplas formadas por una tripleta asociativa o hecho, del tipo
(objeto o contexto, atributo o parámetro clínico, valor) y un Factor de Certeza, FC, que
indica, en una escala de -1.0 a 1.0, la fuerza de la creencia en la veracidad del hecho (FC > 0),en
su falsedad (FC < 0), o en su independencia (FC = 0), dada la evidencia formada por el resto de
hechos conocidos.O lo que es lo mismo, con qué fuerza un hecho es confirmado o rechazado en
función de la evidencia disponible hasta el momento.
Un sistema experto como MYCIN consta de dos elementos básicos: una Base de Conocimientos
y un Mecanismo de Inferencia o Programa de Consulta. La Base de Conocimientos está formada
fundamentalmente por reglasdel tipo “Si E, entonces H”, representadas por E -> H, donde la
premisa está en “forma conjuntiva” (es casi una cláusula de Horn) y la conclusión contiene un sólo
predicado.El Mecanismo de Inferencia consiste en unaestrategia de control de encadenamiento
hacia atrás o dirigida por metas aplicada a las reglas. También contiene una Base de
Afirmaciones BA, que es una base de datos dinámica que contiene los hechos obtenidos sobre
el paciente en la sesión de consulta actual, un Programa de Explicaciones y un Programa de
Adquisición de Conocimiento(nuevas reglas).
Las reglas pueden encadenarse para obtener conclusiones, en lo que se conoce como una
estrategia de razonamiento de encadenamiento hacia delante o inferencia dirigida por los datos,
ya que unoshechos conocidos, a1,...,ak, que cumplen la premisa E, dirigen la inferencia de
izquierda a derecha a través de las reglas encadenadas hasta llegar a la conclusión buscada:

          Existe una regla E ->H                                                         (regla)
          conocemos unos hechos a1,...,akque cumplen las condiciones deE                 (dato)
          deducimos o “conocemos” un hecho „h‟ que cumple H                        (Modus Ponens, MP)

En una inferencia por encadenamiento hacia atrás, el sistema comienza por una afirmación acerca
de la meta que persigue y trabaja hacia atrás, a través de reglas encadenadas, “de derecha a
izquierda”, para encontrar los datos que producen la meta, cuya veracidad implica la de la meta:

          Meta: Conocer2un hecho „h‟ que cumpla H                (dato “objetivo”)
          Existe una regla E ->H                                         (regla)
           Pregunta: ¿Existen unos hechosa1,...,ak(almacenados en la BA) que cumplanlas
           condiciones de E?


1
    Un Sistema de Producción consta de tres componentes básicos: un conjunto de reglas, una base de datos,
y un intérprete de las reglas.
2
    “Conocer” significa almacenar „h‟ en la BA. El hecho „h‟ estará enunciado cuando la regla se aplique a un
contexto concreto, pero no se conocerá su FC, por lo que no se podrá almacenar hasta que no se obtenga
su FC. La meta, por tanto, consiste en calcular el FC del hecho „h‟.
La respuesta afirmativa permite almacenarun hecho „h‟(que cumple H) gracias al Modus Ponens,
por deducción lógica, como en el encadenamiento hacia delante. En concreto, en MYCIN, una vez
encontrados a1,...,ak, se “desenrolla” el encadenamiento realizado:

          a1,...ak       con grado de certeza conjunto calculado, TALLY
          E ->H          con grado de certeza definido por los expertos, FC(H,E)

          h              con grado de certeza FC(h) = FC(H,E)*TALLY, si y sólo si, TALLY> 0.2


La consideración del “grado de certeza” hace que esta regla de deducción se llameModus
Ponens Incierto (MPI), el cual, dada una regla E ->H, garantiza que si se cumple la premisa de la
regla, se podrá almacenar (conocer) el hecho „h‟ que cumple el consecuente de la misma, con
cierto grado de certeza, FC(h), asignado al mismo. “Cumplir” la premisa tiene un significado
concreto, más restrictivo que en el MP, ya que no sólo se necesita que cada cláusula que
aparezca en E sea “verdadera”, sino que además involucra requisitos sobre los FCs de los hechos
que se ajustan a las condiciones de la premisa y el requisito de que el grado de certeza conjunto
de la propia premisa sea mayor que 0.2.
La inferencia no se llevará a cabo con una regla si es rechazada porque la evaluación de su
premisa arroje un contador TALLY menor o igual que 0.2. En este caso se empleará otra regla
para encontrarle un FC a „h‟, o se preguntará al usuario para obtener dicho FC(h). Más adelante
se verá cómo se calcula dicho contador. Hablamos del concepto más general deGrado de
Certeza, GC, por contraposición al concepto más específico de Factor de Certeza, porque en
MYCIN sólo existen FCs asociados a las reglas y a los hechos, es decir, almacenados con ellos.
No hay FCs asociados a las premisas de las reglas.Cuando se utiliza una regla en un “contexto”
dado, es cuando MYCIN calcula el GC de su premisa (el GC conjunto de los hechos que la
cumplen) y lo utiliza como hemos visto, pero no lo almacena, pues dicho GC es dinámico y va
cambiando en función de los FCs de los hechos que cumplen dicha premisa.
En general habrá muchas cadenas de razonamiento hacia atrás a partir de una meta, que lleven a
datos sobre los que el sistema tendrá que preguntar.El conjunto de todas ellas constituye una
sesión de consulta en MYCIN. El encadenamiento hacia atrás que se produce en una sesión de
consulta de MYCIN, sigue un proceso simple de dos pasos:
1. Crear el contexto del paciente como el nodo raíz en el Árbol de Contextos de la consulta
actual.
2. Intentar aplicar la regla meta a ese contexto del paciente.3
El contexto incluye toda la información relevante de una entidad, es decir, los valores (y sus FCs)
de todos sus parámetros clínicos, que se hayan encontrado hasta el momento. Esta información
es constantemente actualizada y ampliada durante el proceso de inferencia. Los diferentes


3
    MYCIN tiene una regla meta de máximo nivel que define la tarea completa del sistema de consulta (regla
092):
SI hay un organismo que requiere terapia, y se ha considerado la posibilidad de organismos adicionales que
requieran terapia, ENTONCES compile una lista de terapias posibles y determine la mejor terapia en esta
lista.
contextos que aparecen durante la inferencia se organizan como nodos en un Árbol de Contextos
que va creciendo desde su raíz (el contexto del paciente actual) hasta sus hojas, siguiendo un
patrón similar a este:
                                               PERSONA


                (CULTIVO-1) ....          (CULTIVO-i)               ....     (CULTIVO-N)


          (ORGANISMO-i1)        ....    (ORGANISMO-ij)               ...     (ORGANISMO-iM)


           (FÁRMACO-ij1)          ...    (FÁRMACO-ijk)                 ...    (FÁRMACO-ijP)


Toda la información obtenida hasta el momento en relación a un contexto se adjunta a su nodo en
forma de listas de pares (Valor,FC), denotadas por Val[C,P], existiendo una lista por cada
parámetro clínico aplicable a ese contexto. La BA no es más que el conjunto de todas esas listas,
una por cada pareja posible (Contexto, Parámetro clínico). Así es como se almacena cada
cuádrupla “hecho” h = (Contexto, Parámetro clínico, Valor, FC).
Cuando MYCIN intenta obtener un FC para un hecho „h‟, lo que busca esel FC del valor de cierto
parámetro de una entidad concreta. Para ello, según las propiedades del parámetro, podrá
preguntar al usuario o ejecutar todas las reglas en cuya conclusión se referencie dicho parámetro,
una de las cuales es E ->H4. Una regla como ésta se dice que se ejecuta en el contexto
referenciado en H, el cual se crea la primera vez que se necesita conocer el valor de algún
parámetro de dicho contexto. Para ejecutarla, necesita evaluar su premisa y para ello buscará y
utilizará hechos almacenados a1,...,ak, que las cumplen. En esta búsqueda se invocarán otras
reglas, por encadenamiento hacia atrás, o se preguntará al usuario, cuando algún hecho
necesario 'ai'no se encuentra almacenado en la BA. Al inferir desde las condiciones de E, MYCIN
pasa al contexto de los parámetros que aparezcan en dichas condiciones, y así va creando y
recorriendo el árbol de contextos. Los contextos están categorizados en Tipos de Contexto
(Personas, Cultivos, Organismos, Fármacos, Operaciones y Terapias) y cada contexto del árbol
se considera una instanciación de un tipo de contexto.
La consulta es esencialmente una búsqueda a través de unárbol de reglas o“de metas”(las metas
son las conclusiones de las reglas). La meta superior en la raíz del árbol es la conclusión de la
regla-meta, es decir, las recomendaciones para una terapia a base de fármacos. Para alcanzarla,
hay que alcanzar antes otras submetas (metas parciales), que se organizan como nodos hijos del
actual:

          a) otras reglas cuya conclusión permite evaluar la premisa de la actual
          b) preguntas a hacer al usuario sobre el FC de un hecho (hojas del árbol)


4
    Cada regla E -> H está referenciada en una lista UPDATED-BY asociada al parámetro clínico mencionado
en H. Cuando la “submeta” H está siendo considerada, se invocarán todas las reglas de esa lista, y sólo
ellas.
Las submetas futuras conforme se baja por el árbol incluyen determinar el organismo involucrado
y ver si es significativo. Muchas de estas submetas tienen submetas propias, tales como el
encontrar las propiedades de la cepa y morfología del organismo. Las hojas del árbol son “metas
fácticas” correspondientes a hechos, tales como datos de laboratorio, sobre cuyo FC se pregunta
al usuarioya que no pueden ser calculados.
La regla-meta de MYCIN se aplica al contexto “paciente”. Aplicar la regla requiere evaluar su
premisa, la cual requiere el determinar si hay un organismo que requiera terapia. Para ello, debe
primero determinarse si hay un organismo presente que esté asociado con una enfermedad
significativa. Esta información puede ser obtenida bien directamente del usuario, bien de una
cadena de inferencia basada en síntomas y datos de laboratorio proporcionados por el usuario.
Por tanto, el razonamiento del sistema va desde el establecimiento de un problema “¿existen
organismos que requieran terapia?” a hechos relevantes que den los valores de parámetros
clínicos, a través de reglas que relacionan conclusiones con evidenciasrelativas a los diferentes
contextos.


Este esquema representa una parte del árbol de inferencias, en el que cada regla está representada
mediante su nombre, en el centro (en un óvalo azulado), y por encima y debajo de él están los parámetros
clínicos de su conclusión y su premisa, respectivamente (en rectángulos amarillos).
Un mismo color se utiliza para conectar los símbolos de cada regla. Los rectángulos grises representan
subárboles mayores que una hoja, y los círculos rosados representan hojas, es decir, preguntas al usuario
para conocer el par (Valor,FC) del parámetro clínico que está justo encima.
Para conocer el FC del valor de un parámetro clínico “por encima”                                            REGIMEN

de la regla, hay que conocer los pares (Valor,FC) de los
parámetros “por debajo” de la regla, lo que lleva a la invocación de
                                                                                                             REGLA092
nuevas reglas (que se colocan debajo), o a preguntar al usuario.
Las sucesivas reglas en el mismo nivel se invocan
                                                                                           TREATFOR                        COVERFOR
cuando la de izquierda ya ha devuelto un FC para el
parámetro de su conclusión, es decir, este árbol se
                                                                       REGLA090                              REGLA149
recorre en anchura. Cada nueva regla o pregunta al
usuario dentro del mismo nivel produce una
actualización del FC del parámetro clínico “por encima”                                     IDENT            INFECTLOC      FEBRILE


de la regla, como veremos más adelante.
                                                                      SIGNIFICANCE




  REGLA038          REGLA042                      REGLA044                    REGLA108                          REGLA122




    SITE     SITE   COLLECT    SIGNUM      SITE   NUMCULS    NUMOPS          CONTAMINANT              SITE      NUMCULS    NUMOPS




   ASK1      ASK1                         ASK1     ASK1       ASK1                                    ASK1        ASK1       ASK1
Modelo de Factores de Certeza

El modelo de factores de certeza empleado fue desarrollado en respuesta al deseo de tratar la
incertidumbre a la vez que se intentaba mantener el conocimiento de forma modular y en reglas.
Muchas de las decisiones que llevaron al diseño inicial de MYCIN fueron el resultado de una
respuesta pragmática a las demandas de los médicos como usuarios. Dicho modelo está basado
en las medidas del incremento proporcional de la creencia o incredulidad en un hecho, basadas
en cierta evidencia. Estas medidas se definen a partir de probabilidades y se supone que cuando
un experto asigna un FC a un hecho o una regla, éste coincidiría con el que se obtendría de las
probabilidades, si éstas fuesen conocidas. Esta suposición es el sesgo inductivo de MYCIN.
Dada una proposición “hipótesis”, H, y una proposición “evidencia”, E,se define el Factor de
Certeza de H, dada E, como:
FC(H,E) = MB(H,E) – MD(H,E), donde las funciones MB y MD se definen como
MB(H,E)es la medida del incremento proporcional de la creencia en H, dada E, en relación a todo
lo que puede llegar a aumentar (hasta valer 1).Si MB(H,E) > 0 decimos que E confirma a H.
MD(H,E)es la medida del incremento proporcional de la creencia en H (o la incredulidad en H),
dada E,en relación a todo lo que puede llegar a aumentar (hasta valer 1).Si MD(H,E) > 0 decimos
que E rechaza a H (o confirma H). Una forma alternativa de decirlo es que es la medida de la
disminución proporcional de la creencia en H, dada E, en relación a todo lo que puede llegar a
disminuir (hasta 0).

Como podemos observar, en principio sólo define MB cuando P(H|E) > P(H) y MD cuando P(H|E)
< P(H), aunque más abajo se definirán exactamente para que cumplan con algo más que con lo
anteriormente enunciado. Analicemos un poco más a fondo los dos enunciados anteriores.

En términos de probabilidades, sabemos que P(H) refleja la creencia en H en determinado
momento, luego 1 – P(H) puede verse como una medida de la incredulidad sobre H (o de la
creencia en la falsedad de H) en ese mismo momento. Dar por cierta la evidencia E puede
cambiar esas creencias, las cuales ahora estarán cuantificadas por P(H|E) y 1 – P(H|E).
Si P(H|E)> P(H), la verdad de E aumenta la creencia en H y disminuye la incredulidad sobre H. La
disminución proporcional de la incredulidaden H es

(P( H) – P( H|E))/P( H) = ((1 – P(H)) – (1 – P(H|E)))/(1-P(H)) = (P(H|E)-P(H))/(1-P(H)), con P(H)
  1 (pues P(H|E)> P(H) => P(H) < 1)
que, como se ve, es el aumento de la creencia en H, dada E, en relación a todo lo que podría
haber aumentado (hasta 1), luego coincide con lo que hemos definido como MB(H,E).
Si P(H|E) < P(H), la verdad de E disminuye la creencia en H y aumenta la creencia en       H. La
disminución proporcional de la creencia en H es

(P(H) – P(H|E))/P(H) = ((1 – P( H)) – (1 – P( H |E)))/(1-P( H)) = (P( H|E)-P( H))/(1-P( H)) con
P( H) 1 (pues P(H|E) < P(H) => P(H) > 0 => P( H) < 1)
que también es el aumento de la creencia en H, dada E, en relación a todo lo que podría haber
aumentado (hasta 1), luego coincide con lo que hemos definido como MD(H,E).
Además, cuando E confirma a H, no confirma a H, y por ello queremos que si MB(H,E) > 0, sea
MD(H,E) = 0 y viceversa, es decir, si MD(H,E) > 0, debe ser MB(H,E) = 0. También queremos que
si E ni confirma ni rechaza a H, sea MB = MD = 0. Todo esto permite definir MB cuando P(H|E) <=
P(H) y MD cuando P(H|E) >= P(H):



              (max[P(H|E),P(H)] – P(H))/(1-P(H))        si P(H) 1
MB(H,E) =
              1                                         si P(H) = 1


              (P(H) – min[P(H|E),P(H)])/P(H)            si P(H) 1
MB(H,E) =
              1                                         si P(H) = 1



Una definición equivalente es:



              (P(H|E)-P(H))/(1-P(H))      si P(H|E) > P(H)
MB(H,E) =     0                           si P(H|E) <= P(H) < 1
              1                           si P(H|E) = P(H) = 1


              (P(H)-P(H|E))/P(H)          si P(H|E) < P(H)
MD(H,E) =     0                           si P(H|E) >= P(H) > 0
              1                           si P(H|E) = P(H) = 0


Que conduce a:


              (P(H|E)-P(H))/(1-P(H))      si P(H|E) > P(H)
              (P(H|E)-P(H))/P(H)          si P(H|E) < P(H)
FC(H,E) =     0                           si P(H|E) = P(H)   {0,1}
              1                           si P(H|E) = P(H) = 1
              -1                          si P(H|E) = P(H) = 0



El FC tiene dos usos y argumentos posibles:

a) Asignación a hechos almacenados en la BA. En este caso la proposición H equivale a la
afirmación de la verdad del propio hecho „h‟ y la proposición E equivale a la afirmación de la
verdad de todos los hechos almacenados en la BA, o evidencia total conocida.En este caso se
cambia la notación a FC(h) y representa el grado de creencia en la verdad de „h‟ dada o conocida
la evidencia acumulada hasta el momento.
b) Asignación a reglas. En este caso H es el consecuente de la regla y E su premisa. Representa
el grado de creencia en la propia regla, esto es, en su validez para obtener hechos „h‟ que
cumplan H a partir de hechos „e‟ que cumplen E.
El factor de certeza es un artificio para la combinación de grados de creencia e incredulidad en un
solo número. Tal número es necesario para facilitarcomparaciones de la fuerza probatoria de
hipótesis rivales.
Algunas propiedades de estas tres medidas, que se deducen inmediatamente de su definición,
son:
      0 <= MB(H,E)<= 1
      0 <= MD(H,E)<= 1

      -1<= FC(H|E) <= 1
      Si P(H|E) = 1 entonces MB(H,E) = 1, MD(H,E) = 0 y FC(H|E) = 1
      Si P( H|E) = 1 entonces MB(H,E) = 0, MD(H,E) = 1 y FC(H|E) = -1

      FC(H|E) = -FC( H|E) o MB(H,E) = MD( H|E)
      Si tenemos n hipótesis Hj mutuamente exclusivas5, de las cuales k son rechazadas por cierta
                                     k
      evidencia E, entonces –k <=     j FC(Hj,E), ya que cada hipótesis rechazada tendrá como
      mínimo un FC = -1
      Si tenemos n hipótesis Hj mutuamente exclusivas, de las cuales kson confirmadas por cierta
                                k
      evidencia E, entonces       j FC(Hj,E) <= 1. Es decir, aunque haya más de una hipótesis
      confirmada (con FC > 0), la suma de sus FCs no puede sobrepasar de 1. De hecho, también
      puede probarse que la suma es 1 si, y sólo si, k = 1.


Reglas: estructura básica y forma de uso
Analizaré ahora las reglas un poco más a fondo, para entender su estructura interna y cómo se
evalúan sus premisas y se obtienen los FCs de los hechos que cumplen sus consecuencias. Una
regla E -> H 6, es de la forma general (en BNF):


<regla> ::=          <premisa><consecuente>
<premisa> ::=   ($AND <condicion> {<condicion>})
<condicion> ::= (<predicado1><contexto><parametro>)
                |(<predicado2><contexto><parametro><valor>)
                |($OR <condicion> {<condicion>})
<consecuente> ::=                 <conclusion>
<conclusion> ::= (CONCLUDE <contexto><parametro><valor><TALLY><FC-regla>)

de la cual, un ejemplo típico7 es:


5
    Las hipótesis mutuamente exclusivas son los hechos que “compiten” dentro de una misma lista Val[C,P], ya
que un parámetro de un contexto dado sólo puede tener un único valor. Como ya dije antes, es casi seguro
que ningún hecho tiene FC = 0, luego todas estas hipótesis tendrán FCs estrictamente positivos o
negativos. Si hay n en Val[C,P] y k son las de FC < 0, entonces las de FC > 0 serán m = n – k.
6
    Que no sea una regla de terapia (THERULE), una metaregla (METARULE), o una regla de antecedentes
(que se disparan por sus premisas, no por sus conclusiones, en conjunción con el mecanismo de
PREVIEW).
PREMISA:          ($AND (SAME CNTXT GRAM GRAMNEG)
                        (SAME CNTXT MORPH ROD)
                        (SAME CNTXT AIR ANEROBIC))
CONCLUSIÓN:              (CONCLUDE CNTXT IDENTITY BACTEROIDES TALLY .6)


Es decir, su premisa E es una conjunción de cláusulas que pueden ser una condición
simple(desde ahora, “condición”, a secas) o una disyunción de condiciones, y su consecuente H
esuna conclusión a obtener con cierto grado de certezasobre el valor de un parámetro clínico de
cierto contextorepresentado por la variable CNTXT. Como se ve, en cuanto se usa la regla, se
instancia el contexto de su conclusión y tan sólo se trata de encontrar un FC para la tripleta
instanciada en la conclusión. Para ello hay que conseguir un valor para TALLY evaluando la
premisa.
La regla se aplica en el contexto C(por ejemplo, ORGANISMO-1) referenciado por la variable
CNTXT de su conclusión para obtener un FC para la hipótesis <objeto, parámetro, valor> de dicha
conclusión y poder almacenar la cuádrupla correspondiente8, en laBA,si la regla no es rechazada.
En este caso, si la regla no se rechaza producirá el almacenamiento de la cuádrupla
(ORGANISMO-1, IDENTITY, BACTEROIDES, FC), que puede leerse como “La identidad del
organismo-1 es bacteroide, con un grado de certeza igual a FC”. En definitiva, cuando la regla se
ejecuta, es decir, produce conocimiento, dicho conocimiento será una cuádrupla(C, P, V, FC), y se
almacenará en la BA. Cuando la regla se rechaza no produce conocimiento, es decir, no hay
almacenamiento de hechos ni sus FCs en la BA.
Recordemos que el argumento TALLY de CONCLUDE almacena un valor numérico tal que 0.2 <
TALLY <= 1.0, y equivale al grado de certeza que el sistema asigna a la premisa tras la evaluación
de la misma.
Observemos queel sistema no permite obtener hechos con FC = 0, mas que cuando alguna regla
tenga su FC-regla = 0, que el usuario se lo asigne a cierto hecho, (lo que parece absurdo en
ambos casos), o por cancelación al aplicar la función de combinación que analizaré más adelante.
Esos hechos nunca contribuyen a que SAME o THOUGHTNOT evalúen a “Verdadero” (T).

La aplicación de la regla, tras la instanciación comentada, continúa con la evaluación de la
premisa, para tratar de actualizar la información almacenada en el nodo del contexto. Esta
actualización puede consistir en añadir pares nuevos (V,FC) a alguna de las listas Val[C,P] o en
cambiar el FC de alguno de los pares.
La evaluación de la premisa se hace como sigue. Cada vez que la función $AND encuentra una
condición,obtiene la evaluación de su predicado (por ejemploSAME C‟ P‟ V‟), el cual actúa sobre
la lista correspondiente a sus argumentos, Val[C‟,P‟] (por ejemplo Val[ORGANISMO-1, GRAM]
para el primer predicado), de manera que si dicha lista es vacía, se invoca un procedimiento de
búsqueda FINDOUT para asignarle un valor9, y si tiene uno o más valores “compitiendo”, se


7
    Sólo consiideraré reglas con predicado tipo 2 de la forma SAME y THOUGHTNOT.
8
    Si y sólo si TALLY > 0.2. Esta es la fórmula de asignación de FCs del MPI que ya hemos visto. En breve
veremos por qué esa condición sobre TALLY. En la notación del texto base sería FC(H) = FC(E)FC(H,E).
9
    Aquí es donde se da el paso de encadenamiento hacia atrás.
tomará el FC del valor con mayor FC de la lista, FCmax, como umbral para que el predicado
asigne los valores de verdad a la condición. Por ejemplo, en el caso SAME se tiene
SAME[C‟,P‟,V‟] = {FCmax10, si FCmax, > 0.2; SAME[C‟,P‟,V‟] = NIL (falso), si FCmax, <= 0.2}. Si
un predicado (diferente de SAME o THOUGHTNOT) asigna un valor T (verdadero) a una
condición, $AND le asigna un “peso” 1.0 y si un predicado asigna un valor numérico (mayor que
0.2) a una condición, $AND le asigna un peso igual a dicho valor numérico. Si $AND encuentra
una función $OR, pasa el control a la misma. Las condiciones dentro de la cláusula OR se evalúan
de la forma comentada y si todas son NIL, la cláusula será evaluada como NIL.En el caso
contrario, $AND le asignará a la cláusula el mayor peso de sus condiciones. Conforme $AND
recorre las condiciones y cláusulas, va actualizando el contador TALLYcomparando el actual con
el nuevo peso obtenido y guardando el menor. $AND implementa este recorrido mediante un
procedimiento llamado MONITOR (de reglas).
Si un predicado de una condición o una cláusula de la premisa devuelve NIL,la regla se rechaza,
es decir, no produce “conocimiento”. En ese caso, se ejecutará la siguiente regla de una lista de
reglas asociadas al parámetro P cuyo valor se busca (mediante la propiedad UPDATED-BY del
mismo) todas las cuales, al igual que la rechazada, referencian a P en su conclusión (P es
argumento de su función CONCLUDE). Finalmente se obtendrán un valor y un FC para P, bien a
través de una regla no rechazada, bien por asignación directa del usuario. Y de esta forma, el
hecho h = (C,P,V), con su FC, podrá almacenarse y usarse como dato para una regla E‟ -> H‟, en
cuya premisa aparezca una condiciónque referencie a C y al parámetro P del mismo.
En conclusión, las reglas E -> H son como plantillas que se instancian cuando se aplican a
contextos concretos al ser llamadas por otras reglas (excepto la regla meta). Lo que se
instancianson las variables de contexto que aparecen en la regla. Cuando el contexto de la regla
se instancia, tenemos un hecho „h‟ y la aplicación de la regla significa preguntar por el FC(h) con
el que dicho hecho se almacenará en la BA11. Se dice que dicho hecho es una hipótesis ya que
todos los hechos almacenados dentro de una misma lista Val[C,P] compiten entre sí para ser
considerados el más certero para algún fin (establecer una terapia o evaluar una condición de una
premisa). Al evaluar la premisa E, cada condición CONDj requiere el examen de una lista Lj =
Val[Cj,Pj], de modo que si Lj =   se invoca el procedimiento FINDOUT y si Lj        se utiliza el FC
de la hipótesis más fuerte de la lista para evaluar la condición. Si la condición evalúa a NIL, la
regla se rechaza y no servirá para almacenar „h‟, pues no lo dotará de un FC mediante el MPI. Si
la condición evalúa a T (con un peso mayor que 0.2 y menor o igual que 1.0, pues me centro
únicamente en los predicados SAME y THOUGHTNOT) es porque existe un hecho hj en Lj que
cumple aceptablemente la condición. En tal caso se dice que la condición “se cumple” con cierto

10
     Hay dos predicados, SAME y THOUGTHTNOT, que devuelven un número cuando son verdaderos. Este
número siempre es mayor que 0.2. $AND interpretará cualquier número como T. THOUGTHTNOT equivale
al operador NOT, que devuelve verdadero cuando su argumento es falso, salvo que ahora THOUGTHTNOT
devuelve un valor que se considera verdadero cuando su argumento tiene un FC < 0.2, es decir, un
argumento cuya falsedad queda confirmada por ese FC.
11
     Es decir, buscar en la BA hechos que cumplan las condiciones de la regla, que consiste en buscar en las
listas Val[C,P] los valores referenciados en dichas condiciones para devolver su FC, y si no se encuentran,
entonces invocar reglas en cuya conclusión aparezcan los parámetros P o preguntar al usuario (P se habrá
convertido en una submeta).
grado de certeza. Sólo si todas las condiciones se cumplen se obtendrá un FC con el que
almacenar el hecho y éste se almacenará (se habrá producido conocimiento). En este caso se
dice que la premisa se cumple con un grado de certeza dado por TALLY (que no es un FC) y al
hecho se le asignará un FC(h) = TALLY*FC(H,E). También se dice en este caso que H se cumple
con un grado de certeza dado por FC(h). El conjunto de todos los hechos „e‟ de las listas Lj (los
que estaban ya al invocarse la regla y los obtenidos por inferencia o pregunta al usuario), que
permiten determinar si se cumplen o no las condiciones de la premisa, se interpretan como
evidencia para este regla. También se llama evidencia a la proposición E de plantilla. Se dice que
la evidencia „e‟ confirma „h‟ si „h‟ se almacena con FC(h) > 0, rechaza „h‟ si „h‟ se almacena con
FC(h) < 0 o es independiente de „h‟, si la regla es rechazada y no permite almacenar „h‟.

Diferentes reglas que van apareciendo en el proceso de consulta, E1 -> H,..., En -> H, pueden
producir un mismo hecho „h‟, aunque con diferentes FCs, el cual no se almacenará varias veces
en la BA, sino que se actualizará el FC del par (h,FC) en Val[C,P] cada vez que una regla
produzca „h‟ de nuevo. Por lo tanto,cuando una regla produce un hecho que ya está almacenado
en la BA, habrá que proceder a la actualización de su FC mediante algún procedimiento. Esto se
lleva a cabo mediante la función de combinación de van Melle, que se define como sigue
cuando ya se dispone de un FC, x, con |x|< 1, para un hecho „h‟ y se produce de nuevo „h‟ con
otro FC, y x. Si se tiene x = 1, entonces no se realiza la actualización del FC de „h‟, sino que se
deja como está. Los autores denominaron esto “tendencia a la unidad” y es razonable, pues esta
función cumple las propiedades “predominio de la confirmación total” y “predominio del rechazo
total” (ver más abajo) cuando uno de los argumentos tiene un valor absoluto igual a „1‟ y el otro no,
y una forma de extender estas propiedades deseables al caso en que los dos argumentos tengan
valores absolutos iguales a „1‟ es no hacer actualización cuando el FC del hecho almacenado vale
+1 ó -1. Por eso la función de van Melle no necesita estar definida para (x,y) con xy = -1.


                x + y – xy,                           si x > 0   y>0
     f(x,y) =   x + y + xy,                           si x < 0   y<0
                (x + y)/(1 – min[|x|,|y|]),           si -1 < xy <= 0


Esta función cumple una serie de propiedades deseables:
a) Simetría: f(x,y) = f(y,x)
b) Asociatividad: f(f(x,y),z) = f(x,f(y,z))
c) Monotonía: y > 0      f(x,y) > x; y < 0      f(x,y) < x
d) Evidencia nula: y = 0         f(x,y) = x
e) Cancelación: |x|     1      x = -y    f(x,y) = 0
f) Predominio de la confirmación o el rechazo total: |x| = 1 y x        f(x,y) = x
De las cuales, la f) no era cumplida por la función original, ocasionando resultados contraintuitivos.
Además, esa función dejaba su resultado más cerca del factor con mayor valor absoluto, en lugar
de equilibrar ambos por igual, cuando los factores son de diferente signo. El único cambio que la
actual tiene respecto a la original es el denominador que se añade al caso en que x e y son de
diferente signo.
Problemas del modelo de factores de certeza

El modelo de razonamiento inexacto o modelo de factores de certeza usado en MYCIN, presenta
dos tipos de problemas fundamentales:
1.- A pesar de presentarse como una alternativa al método probabilístico, en realidad puede
derivarse de y es equivalente a la teoría de la probabilidad, bajo la suposición de independencia
absoluta y condicional (dada la hipótesis) entre los hechos que influyan en cierta hipótesis12.Esta
suposición es más fuerte que sólo la de independencia condicional del método probabilístico
clásico y por lo tanto el modelo no es coherente si sólo se supone la independencia condicional.
Por eso se dice que el modelo asume implícitamente la pseudoindependencia condicional, es
decir, la independencia condicional más la independencia incondicional de “síntomas” respecto a
“diagnósticos”, aunque luego no lo respete en la asignación de FCs a las reglas.
Debido a esta suposición subyacente, las medidas MB y MD no pueden elegirse arbitraria e
independientemente, sino que deben cumplir ciertas restricciones.Cuando los MBs y MDs
asignados por los expertos a las reglas no cumplen esas restricciones, se obtienen resultados
contrarios a lo esperado (recordemos que los FCs obtenidos se esperan que coincidan con los
que se obtendrían si se contase con las probabilidades en las que se basa su definición), que no
tienen en cuenta la posible independencia o dependencia entre los hechos que influyen en las
hipótesis almacenadas. Esto da lugar a FCs de hipótesis que expresan tendencias contrarias a lo
esperado (positivos en lugar de negativos, o viceversa) o valores muy alejados de lo esperado
(valores absolutos altos en lugar de bajos, o viceversa), lo que hace que se cambie el orden que el
FC otorga a las hipótesis que compiten para fundamentar la elección de las terapias.Este
problema ocurre porque MYCIN no proporciona mecanismos de control de la coherencia interna
entre los FCs de las reglas, especialmente teniendo en cuenta que admite la adición de nuevas
reglas.
2.- La forma de cálculo de los FCs se aleja bastante de la de la teoría de la probabilidad. El
modelo de FCs combina separadamente toda la evidencia a favor que se va recopilando en
MB(H,Ef) y toda la evidencia que se va recopilando en contra en MD(H,Ec), donde Ef es el
conjunto de todos los hechos que confirman H y Ec el conjunto de todos los hechos que rechazan
H. Por el Teorema de Bayes, puede probarse que MB y MD permiten calcular P(H|Ef)/P(H) y
P(H|Ec)/P(H)13, respectivamente, y estos dos cocientes pueden multiplicarse para obtener
P(H|E)/P(H), donde E es el conjunto de toda la evidencia, a favor y en contra, de H, bajo la
suposición de independencia. El cociente anterior da la verdadera estimación del cambio en la
probabilidad de H debido a la evidencia que influye en H, cuando hay


12
     Un hecho „e‟ que influya en otro „h‟ a través de una regla E -> H, equivale al modelo de red causal en que E
representa un síntoma cuya causa es H. Por lo tanto la influencia mostrada en la regla es del tipo “dependencia”.
es decir, la consecuencia „e‟ confirma a su causa „h‟ con cierto grado de certeza. La consideración de todas las
consecuencias de „h‟ permite estimar la probabilidad “a posteriori” de „h‟ en el MPC o el FC(h), debiendo haber
una correspondencia entre ambos dada por la definición de FC(H,E), por FC(e) y por el MPI.
13
     Si e1 y e2 son hechos a favor de h y ef los denota a ambos, se tiene que P(h|ef) = MB(h,e2)(1 – P(h|e1)). Si
e3 y e4 son hechos en contra de h y ec los denota a ambos, se tiene que P(h|ec) = (1 – MD(h,e4))(P(h|e3).
De esta forma se puede estimar P(h|ef) y P(h|ec) para más de dos hechos, de forma recursiva, a partir de MB
y MD.
pseudoindependenciacondicional. Sin embargo el modelo de FCs obtiene una estimación del
cambio de probabilidad de H debido a E mediante una suma de los MBs y MDs, lo que ya
empieza a generar posibles resultados inesperados.
Además, las llamadas “funciones de combinación”ofrecen un cálculo no acorde con lo esperado
por la teoría de la probabilidad, incluso cuando se dan las condiciones de independencia. Su
corrección depende de suposiciones (no explicitadas) aún más fuertes que la independencia.
Veamos algunas consecuencias prácticas de esto y otros problemas debido a sus funciones de
combinación.
i)Inversión del ránking de hipótesis compitiendo (incoherencia de los FCs obtenidos). La propia
definición del FC puede dar lugar a paradojas como la siguiente. Dadas dos hipótesis h1 y h2, y
un hecho „e‟ que influye en ellas, de los que se conocen P(h1), P(h1|e), P(h2) y P(h2|e), los FCs
obtenidos según su definición pueden arrojar resultados que inviertan el orden esperado (que
vienen dados por el cociente P(hj|e)/P(h)).

ii)Falta de coherencia de los FCs de las reglas, lo que puede tener consecuencias inesperadas
cuando intervienen hechos mutuamente exclusivos, es decir, hechos de la misma lista Val[C,P],
con valores (y FCs) diferentes. Por ejemplo, un mismo hecho „e‟ puede confirmar absolutamente
dos hechos mutuamente exclusivos, h1 y h2, a través de dos reglas diferentes, E -> H1 y E -> H2.
Si los FCs de ambas reglas se asignan arbitrariamente, puede ocurrir que su suma sea mayor que
1 y entonces la suma de los FCs de h1 y h2 también será mayor que 1, violando una propiedad
del FC.
iii)Ignorancia de la dependencia entre hechos. En el caso extremo de hechos mutuamente
exclusivos, pueden darse varias paradojas.

Una regla E1       E2 -> H puede permitir confirmar cierta hipótesis „h‟ a partir de dos hechos
mutuamente exclusivos, aunque la regla en sí no tenga sentido (pues dichos hechos son
incompatibles). Es como si fuera posible una regla que dijera “Si la identidad de organismo-1 es
bacilococo y la identidad de organismo-1 es estreptococo, entonces,...”, lo cual no tiene sentido
(siempre se debería rechazar una regla así, por lo que tal regla sobraría). Pero MYCIN permite su
existencia, y si ambos valores existen en Val[organismo-1,identidad] con FCs mayores que 0.2, la
regla no será rechazada y confirmará o rechazará h con cierto FC. Puede decirse que es un
problema de la función de combinación para la conjunción de condiciones, que no discrimina esa
exclusividad mutua.

Por otro lado, dada una regla E1 E2 -> H, si hay dos hechos mutuamente exclusivos e1 y e2,
que confirmen (no absolutamente) la hipótesis „h‟, debería cumplirse que el FC(h) fuese mayor
que cualquiera de los FCs de e1 o e2, sin embargo la función de combinación para la conjunción
de condiciones le asignará el máximo de ellos, no uno mayor (es una variante del tipo de
problema 4, pues esto no pasaría si ambas reglas se ejecutaran como dos sucesivas y
equivalentes, E1 -> H y E2 -> H)

Tampoco se tiene en cuenta la dependencia entre hechos a la hora de evaluar su influencia
acumulada en una hipótesis. Es decir, el efecto acumulado de dos hechos e1 y e2 que cumplan
E1 -> H y E2 -> H, respectivamente, es el mismo, independientemente de la relación de
dependencia que pueda existir entre ambos, cuando lo esperado es que si ambos son
dependientes, su efecto acumulado sea menor que si son independientes.
iv)Reglas equivalentes conducen a conclusiones distintas. Es una consecuencia de las dos formas
diferentes que hay de evaluar una disyunción lógica condicionante. Si está dentro de una única
premisa, como en E1 E2 -> H, se usará la función $OR, y se evaluará el FC(h) con la “regla del
máximo”. Pero se puede expresar mediante dos reglas diferentes, E1 -> H y E2 -> H, con lo que el
FC(h) se evaluará con la función de van Melle, obteniendo resultados diferentes, en general. Por
lo tanto, por cada regla con una disyunción podrían haberse elegido en su lugar varias reglas sin
esa disyunción, equivalentes desde el punto de vista lógico, y viceversa, por cada dos o más
reglas con la misma conclusión, podría haberse elegido una única regla con una disyunción. Esas
decisiones de diseño afectan de forma diferente a los resultados obtenidos.
v)Falta de sensibilidad de las funciones de combinación de conjunciones. Esta función, que se
implementa mediante el funcionamiento de $AND ya explicado, y por lo tanto es la más usada,
evalúa una conjunción de condiciones en una premisa obteniendo el menor de los FCs de dichas
condiciones (cuando todas son ciertas), lo que hace que no se discrimine entre diferentes
premisas que tengan la misma condición “mínima”, aunque se diferencien en el resto de
condiciones, que se evalúan con un mayor peso o grado de certeza.



Bibliografía


B.G. Buchanan y E.H. Shortliffe, Rule-Based Expert Systems. The MYCIN Experiments of the
Stanford Heuristic Programming Project, Addison-Wesley 1984

Más contenido relacionado

La actualidad más candente

Cifrado elgamal
Cifrado elgamalCifrado elgamal
Cifrado elgamalG Hoyos A
 
Minimin,minimax,maximin,maximax
Minimin,minimax,maximin,maximaxMinimin,minimax,maximin,maximax
Minimin,minimax,maximin,maximaxPhoenicia
 
3.1.1 Representación en memoria.pptx
3.1.1 Representación en memoria.pptx3.1.1 Representación en memoria.pptx
3.1.1 Representación en memoria.pptxRam Vazquez
 
Derechos de Autor para Creadores de Software
Derechos de Autor para Creadores de SoftwareDerechos de Autor para Creadores de Software
Derechos de Autor para Creadores de SoftwareIriarte & Asociados
 
Puertos o interfaces externas
Puertos o interfaces externasPuertos o interfaces externas
Puertos o interfaces externasvivianitharomero
 
Tema 4 excepciones por gio
Tema 4   excepciones por gioTema 4   excepciones por gio
Tema 4 excepciones por gioRobert Wolf
 
notas de análisis numerico
notas de análisis numericonotas de análisis numerico
notas de análisis numericoxino7
 
sistemas de cifrado clasicos
sistemas de cifrado clasicossistemas de cifrado clasicos
sistemas de cifrado clasicosHeyOS RA
 
Ejemplo de Normalización
Ejemplo de Normalización Ejemplo de Normalización
Ejemplo de Normalización Martha
 
Redes neuronales artificiales supervisadas y no supervisadas
Redes neuronales artificiales supervisadas y no supervisadasRedes neuronales artificiales supervisadas y no supervisadas
Redes neuronales artificiales supervisadas y no supervisadasUNIVERSIDAD SANTA MARIA
 
Pensemos en cuestiones administrativas
Pensemos en cuestiones administrativasPensemos en cuestiones administrativas
Pensemos en cuestiones administrativasMaferp_a
 
E. parcial finanzas lizzet macedo
E. parcial  finanzas lizzet macedoE. parcial  finanzas lizzet macedo
E. parcial finanzas lizzet macedolizz164
 

La actualidad más candente (20)

Cifrado elgamal
Cifrado elgamalCifrado elgamal
Cifrado elgamal
 
Sistemas expertos y sus aplicaciones
Sistemas expertos y sus aplicacionesSistemas expertos y sus aplicaciones
Sistemas expertos y sus aplicaciones
 
Minimin,minimax,maximin,maximax
Minimin,minimax,maximin,maximaxMinimin,minimax,maximin,maximax
Minimin,minimax,maximin,maximax
 
3.1.1 Representación en memoria.pptx
3.1.1 Representación en memoria.pptx3.1.1 Representación en memoria.pptx
3.1.1 Representación en memoria.pptx
 
Logica difusa
Logica difusaLogica difusa
Logica difusa
 
Derechos de Autor para Creadores de Software
Derechos de Autor para Creadores de SoftwareDerechos de Autor para Creadores de Software
Derechos de Autor para Creadores de Software
 
Puertos o interfaces externas
Puertos o interfaces externasPuertos o interfaces externas
Puertos o interfaces externas
 
Tema 4 excepciones por gio
Tema 4   excepciones por gioTema 4   excepciones por gio
Tema 4 excepciones por gio
 
notas de análisis numerico
notas de análisis numericonotas de análisis numerico
notas de análisis numerico
 
ESTADÍSTICA Y MUESTREO
ESTADÍSTICA Y MUESTREOESTADÍSTICA Y MUESTREO
ESTADÍSTICA Y MUESTREO
 
INTEGRIDAD DE DATOS
INTEGRIDAD DE DATOSINTEGRIDAD DE DATOS
INTEGRIDAD DE DATOS
 
sistemas de cifrado clasicos
sistemas de cifrado clasicossistemas de cifrado clasicos
sistemas de cifrado clasicos
 
Ejemplo de Normalización
Ejemplo de Normalización Ejemplo de Normalización
Ejemplo de Normalización
 
Abstracción de datos
Abstracción de datosAbstracción de datos
Abstracción de datos
 
Redes neuronales artificiales supervisadas y no supervisadas
Redes neuronales artificiales supervisadas y no supervisadasRedes neuronales artificiales supervisadas y no supervisadas
Redes neuronales artificiales supervisadas y no supervisadas
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
 
Lógica difusa (fuzzy logic)
Lógica difusa (fuzzy logic)Lógica difusa (fuzzy logic)
Lógica difusa (fuzzy logic)
 
Unidad 3: Herencia Ejercicio 2
Unidad 3: Herencia Ejercicio 2Unidad 3: Herencia Ejercicio 2
Unidad 3: Herencia Ejercicio 2
 
Pensemos en cuestiones administrativas
Pensemos en cuestiones administrativasPensemos en cuestiones administrativas
Pensemos en cuestiones administrativas
 
E. parcial finanzas lizzet macedo
E. parcial  finanzas lizzet macedoE. parcial  finanzas lizzet macedo
E. parcial finanzas lizzet macedo
 

Destacado (18)

Sistema Especialista Mycin
Sistema Especialista   MycinSistema Especialista   Mycin
Sistema Especialista Mycin
 
Dendral
DendralDendral
Dendral
 
sistemas expertos
sistemas expertossistemas expertos
sistemas expertos
 
Propósito de la IA
Propósito de la IAPropósito de la IA
Propósito de la IA
 
Inteligencia artifical
Inteligencia artificalInteligencia artifical
Inteligencia artifical
 
EVOLUCION DE LAS TECNOLOGIAS CELULARES
EVOLUCION DE LAS TECNOLOGIAS CELULARESEVOLUCION DE LAS TECNOLOGIAS CELULARES
EVOLUCION DE LAS TECNOLOGIAS CELULARES
 
Sistemas Expertos
Sistemas ExpertosSistemas Expertos
Sistemas Expertos
 
Sistemas Especialistas
Sistemas EspecialistasSistemas Especialistas
Sistemas Especialistas
 
Sistemas expertos
Sistemas expertosSistemas expertos
Sistemas expertos
 
Sistemas Especialistas
Sistemas EspecialistasSistemas Especialistas
Sistemas Especialistas
 
Evolución de la tecnología móvil
Evolución de la tecnología móvil Evolución de la tecnología móvil
Evolución de la tecnología móvil
 
Presentacion sistemas expertos
Presentacion sistemas expertosPresentacion sistemas expertos
Presentacion sistemas expertos
 
Origen y evolucion de las redes
Origen y evolucion de las redesOrigen y evolucion de las redes
Origen y evolucion de las redes
 
Expert system mycin
Expert system   mycinExpert system   mycin
Expert system mycin
 
Sistema Experto Sobre Medicina
Sistema Experto Sobre MedicinaSistema Experto Sobre Medicina
Sistema Experto Sobre Medicina
 
Sistemas Expertos
Sistemas ExpertosSistemas Expertos
Sistemas Expertos
 
Capitulo 07 - Comunicaciones Moviles
Capitulo 07 - Comunicaciones MovilesCapitulo 07 - Comunicaciones Moviles
Capitulo 07 - Comunicaciones Moviles
 
Sistemas expertos
Sistemas expertosSistemas expertos
Sistemas expertos
 

Último

Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 

Último (20)

Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 

Sistema Experto MYCIN

  • 1. El sistema experto MYCIN Resumen realizado por Jesús Díaz de Lope para la asignatura Razonamiento y Aprendizaje de la UNED MYCIN puede considerarse un tipo de Sistema de Producción1 con algunas particularidades, cuya base de datos es un conjunto de cuádruplas formadas por una tripleta asociativa o hecho, del tipo (objeto o contexto, atributo o parámetro clínico, valor) y un Factor de Certeza, FC, que indica, en una escala de -1.0 a 1.0, la fuerza de la creencia en la veracidad del hecho (FC > 0),en su falsedad (FC < 0), o en su independencia (FC = 0), dada la evidencia formada por el resto de hechos conocidos.O lo que es lo mismo, con qué fuerza un hecho es confirmado o rechazado en función de la evidencia disponible hasta el momento. Un sistema experto como MYCIN consta de dos elementos básicos: una Base de Conocimientos y un Mecanismo de Inferencia o Programa de Consulta. La Base de Conocimientos está formada fundamentalmente por reglasdel tipo “Si E, entonces H”, representadas por E -> H, donde la premisa está en “forma conjuntiva” (es casi una cláusula de Horn) y la conclusión contiene un sólo predicado.El Mecanismo de Inferencia consiste en unaestrategia de control de encadenamiento hacia atrás o dirigida por metas aplicada a las reglas. También contiene una Base de Afirmaciones BA, que es una base de datos dinámica que contiene los hechos obtenidos sobre el paciente en la sesión de consulta actual, un Programa de Explicaciones y un Programa de Adquisición de Conocimiento(nuevas reglas). Las reglas pueden encadenarse para obtener conclusiones, en lo que se conoce como una estrategia de razonamiento de encadenamiento hacia delante o inferencia dirigida por los datos, ya que unoshechos conocidos, a1,...,ak, que cumplen la premisa E, dirigen la inferencia de izquierda a derecha a través de las reglas encadenadas hasta llegar a la conclusión buscada: Existe una regla E ->H (regla) conocemos unos hechos a1,...,akque cumplen las condiciones deE (dato) deducimos o “conocemos” un hecho „h‟ que cumple H (Modus Ponens, MP) En una inferencia por encadenamiento hacia atrás, el sistema comienza por una afirmación acerca de la meta que persigue y trabaja hacia atrás, a través de reglas encadenadas, “de derecha a izquierda”, para encontrar los datos que producen la meta, cuya veracidad implica la de la meta: Meta: Conocer2un hecho „h‟ que cumpla H (dato “objetivo”) Existe una regla E ->H (regla) Pregunta: ¿Existen unos hechosa1,...,ak(almacenados en la BA) que cumplanlas condiciones de E? 1 Un Sistema de Producción consta de tres componentes básicos: un conjunto de reglas, una base de datos, y un intérprete de las reglas. 2 “Conocer” significa almacenar „h‟ en la BA. El hecho „h‟ estará enunciado cuando la regla se aplique a un contexto concreto, pero no se conocerá su FC, por lo que no se podrá almacenar hasta que no se obtenga su FC. La meta, por tanto, consiste en calcular el FC del hecho „h‟.
  • 2. La respuesta afirmativa permite almacenarun hecho „h‟(que cumple H) gracias al Modus Ponens, por deducción lógica, como en el encadenamiento hacia delante. En concreto, en MYCIN, una vez encontrados a1,...,ak, se “desenrolla” el encadenamiento realizado: a1,...ak con grado de certeza conjunto calculado, TALLY E ->H con grado de certeza definido por los expertos, FC(H,E) h con grado de certeza FC(h) = FC(H,E)*TALLY, si y sólo si, TALLY> 0.2 La consideración del “grado de certeza” hace que esta regla de deducción se llameModus Ponens Incierto (MPI), el cual, dada una regla E ->H, garantiza que si se cumple la premisa de la regla, se podrá almacenar (conocer) el hecho „h‟ que cumple el consecuente de la misma, con cierto grado de certeza, FC(h), asignado al mismo. “Cumplir” la premisa tiene un significado concreto, más restrictivo que en el MP, ya que no sólo se necesita que cada cláusula que aparezca en E sea “verdadera”, sino que además involucra requisitos sobre los FCs de los hechos que se ajustan a las condiciones de la premisa y el requisito de que el grado de certeza conjunto de la propia premisa sea mayor que 0.2. La inferencia no se llevará a cabo con una regla si es rechazada porque la evaluación de su premisa arroje un contador TALLY menor o igual que 0.2. En este caso se empleará otra regla para encontrarle un FC a „h‟, o se preguntará al usuario para obtener dicho FC(h). Más adelante se verá cómo se calcula dicho contador. Hablamos del concepto más general deGrado de Certeza, GC, por contraposición al concepto más específico de Factor de Certeza, porque en MYCIN sólo existen FCs asociados a las reglas y a los hechos, es decir, almacenados con ellos. No hay FCs asociados a las premisas de las reglas.Cuando se utiliza una regla en un “contexto” dado, es cuando MYCIN calcula el GC de su premisa (el GC conjunto de los hechos que la cumplen) y lo utiliza como hemos visto, pero no lo almacena, pues dicho GC es dinámico y va cambiando en función de los FCs de los hechos que cumplen dicha premisa. En general habrá muchas cadenas de razonamiento hacia atrás a partir de una meta, que lleven a datos sobre los que el sistema tendrá que preguntar.El conjunto de todas ellas constituye una sesión de consulta en MYCIN. El encadenamiento hacia atrás que se produce en una sesión de consulta de MYCIN, sigue un proceso simple de dos pasos: 1. Crear el contexto del paciente como el nodo raíz en el Árbol de Contextos de la consulta actual. 2. Intentar aplicar la regla meta a ese contexto del paciente.3 El contexto incluye toda la información relevante de una entidad, es decir, los valores (y sus FCs) de todos sus parámetros clínicos, que se hayan encontrado hasta el momento. Esta información es constantemente actualizada y ampliada durante el proceso de inferencia. Los diferentes 3 MYCIN tiene una regla meta de máximo nivel que define la tarea completa del sistema de consulta (regla 092): SI hay un organismo que requiere terapia, y se ha considerado la posibilidad de organismos adicionales que requieran terapia, ENTONCES compile una lista de terapias posibles y determine la mejor terapia en esta lista.
  • 3. contextos que aparecen durante la inferencia se organizan como nodos en un Árbol de Contextos que va creciendo desde su raíz (el contexto del paciente actual) hasta sus hojas, siguiendo un patrón similar a este: PERSONA (CULTIVO-1) .... (CULTIVO-i) .... (CULTIVO-N) (ORGANISMO-i1) .... (ORGANISMO-ij) ... (ORGANISMO-iM) (FÁRMACO-ij1) ... (FÁRMACO-ijk) ... (FÁRMACO-ijP) Toda la información obtenida hasta el momento en relación a un contexto se adjunta a su nodo en forma de listas de pares (Valor,FC), denotadas por Val[C,P], existiendo una lista por cada parámetro clínico aplicable a ese contexto. La BA no es más que el conjunto de todas esas listas, una por cada pareja posible (Contexto, Parámetro clínico). Así es como se almacena cada cuádrupla “hecho” h = (Contexto, Parámetro clínico, Valor, FC). Cuando MYCIN intenta obtener un FC para un hecho „h‟, lo que busca esel FC del valor de cierto parámetro de una entidad concreta. Para ello, según las propiedades del parámetro, podrá preguntar al usuario o ejecutar todas las reglas en cuya conclusión se referencie dicho parámetro, una de las cuales es E ->H4. Una regla como ésta se dice que se ejecuta en el contexto referenciado en H, el cual se crea la primera vez que se necesita conocer el valor de algún parámetro de dicho contexto. Para ejecutarla, necesita evaluar su premisa y para ello buscará y utilizará hechos almacenados a1,...,ak, que las cumplen. En esta búsqueda se invocarán otras reglas, por encadenamiento hacia atrás, o se preguntará al usuario, cuando algún hecho necesario 'ai'no se encuentra almacenado en la BA. Al inferir desde las condiciones de E, MYCIN pasa al contexto de los parámetros que aparezcan en dichas condiciones, y así va creando y recorriendo el árbol de contextos. Los contextos están categorizados en Tipos de Contexto (Personas, Cultivos, Organismos, Fármacos, Operaciones y Terapias) y cada contexto del árbol se considera una instanciación de un tipo de contexto. La consulta es esencialmente una búsqueda a través de unárbol de reglas o“de metas”(las metas son las conclusiones de las reglas). La meta superior en la raíz del árbol es la conclusión de la regla-meta, es decir, las recomendaciones para una terapia a base de fármacos. Para alcanzarla, hay que alcanzar antes otras submetas (metas parciales), que se organizan como nodos hijos del actual: a) otras reglas cuya conclusión permite evaluar la premisa de la actual b) preguntas a hacer al usuario sobre el FC de un hecho (hojas del árbol) 4 Cada regla E -> H está referenciada en una lista UPDATED-BY asociada al parámetro clínico mencionado en H. Cuando la “submeta” H está siendo considerada, se invocarán todas las reglas de esa lista, y sólo ellas.
  • 4. Las submetas futuras conforme se baja por el árbol incluyen determinar el organismo involucrado y ver si es significativo. Muchas de estas submetas tienen submetas propias, tales como el encontrar las propiedades de la cepa y morfología del organismo. Las hojas del árbol son “metas fácticas” correspondientes a hechos, tales como datos de laboratorio, sobre cuyo FC se pregunta al usuarioya que no pueden ser calculados. La regla-meta de MYCIN se aplica al contexto “paciente”. Aplicar la regla requiere evaluar su premisa, la cual requiere el determinar si hay un organismo que requiera terapia. Para ello, debe primero determinarse si hay un organismo presente que esté asociado con una enfermedad significativa. Esta información puede ser obtenida bien directamente del usuario, bien de una cadena de inferencia basada en síntomas y datos de laboratorio proporcionados por el usuario. Por tanto, el razonamiento del sistema va desde el establecimiento de un problema “¿existen organismos que requieran terapia?” a hechos relevantes que den los valores de parámetros clínicos, a través de reglas que relacionan conclusiones con evidenciasrelativas a los diferentes contextos. Este esquema representa una parte del árbol de inferencias, en el que cada regla está representada mediante su nombre, en el centro (en un óvalo azulado), y por encima y debajo de él están los parámetros clínicos de su conclusión y su premisa, respectivamente (en rectángulos amarillos). Un mismo color se utiliza para conectar los símbolos de cada regla. Los rectángulos grises representan subárboles mayores que una hoja, y los círculos rosados representan hojas, es decir, preguntas al usuario para conocer el par (Valor,FC) del parámetro clínico que está justo encima. Para conocer el FC del valor de un parámetro clínico “por encima” REGIMEN de la regla, hay que conocer los pares (Valor,FC) de los parámetros “por debajo” de la regla, lo que lleva a la invocación de REGLA092 nuevas reglas (que se colocan debajo), o a preguntar al usuario. Las sucesivas reglas en el mismo nivel se invocan TREATFOR COVERFOR cuando la de izquierda ya ha devuelto un FC para el parámetro de su conclusión, es decir, este árbol se REGLA090 REGLA149 recorre en anchura. Cada nueva regla o pregunta al usuario dentro del mismo nivel produce una actualización del FC del parámetro clínico “por encima” IDENT INFECTLOC FEBRILE de la regla, como veremos más adelante. SIGNIFICANCE REGLA038 REGLA042 REGLA044 REGLA108 REGLA122 SITE SITE COLLECT SIGNUM SITE NUMCULS NUMOPS CONTAMINANT SITE NUMCULS NUMOPS ASK1 ASK1 ASK1 ASK1 ASK1 ASK1 ASK1 ASK1
  • 5. Modelo de Factores de Certeza El modelo de factores de certeza empleado fue desarrollado en respuesta al deseo de tratar la incertidumbre a la vez que se intentaba mantener el conocimiento de forma modular y en reglas. Muchas de las decisiones que llevaron al diseño inicial de MYCIN fueron el resultado de una respuesta pragmática a las demandas de los médicos como usuarios. Dicho modelo está basado en las medidas del incremento proporcional de la creencia o incredulidad en un hecho, basadas en cierta evidencia. Estas medidas se definen a partir de probabilidades y se supone que cuando un experto asigna un FC a un hecho o una regla, éste coincidiría con el que se obtendría de las probabilidades, si éstas fuesen conocidas. Esta suposición es el sesgo inductivo de MYCIN. Dada una proposición “hipótesis”, H, y una proposición “evidencia”, E,se define el Factor de Certeza de H, dada E, como: FC(H,E) = MB(H,E) – MD(H,E), donde las funciones MB y MD se definen como MB(H,E)es la medida del incremento proporcional de la creencia en H, dada E, en relación a todo lo que puede llegar a aumentar (hasta valer 1).Si MB(H,E) > 0 decimos que E confirma a H. MD(H,E)es la medida del incremento proporcional de la creencia en H (o la incredulidad en H), dada E,en relación a todo lo que puede llegar a aumentar (hasta valer 1).Si MD(H,E) > 0 decimos que E rechaza a H (o confirma H). Una forma alternativa de decirlo es que es la medida de la disminución proporcional de la creencia en H, dada E, en relación a todo lo que puede llegar a disminuir (hasta 0). Como podemos observar, en principio sólo define MB cuando P(H|E) > P(H) y MD cuando P(H|E) < P(H), aunque más abajo se definirán exactamente para que cumplan con algo más que con lo anteriormente enunciado. Analicemos un poco más a fondo los dos enunciados anteriores. En términos de probabilidades, sabemos que P(H) refleja la creencia en H en determinado momento, luego 1 – P(H) puede verse como una medida de la incredulidad sobre H (o de la creencia en la falsedad de H) en ese mismo momento. Dar por cierta la evidencia E puede cambiar esas creencias, las cuales ahora estarán cuantificadas por P(H|E) y 1 – P(H|E). Si P(H|E)> P(H), la verdad de E aumenta la creencia en H y disminuye la incredulidad sobre H. La disminución proporcional de la incredulidaden H es (P( H) – P( H|E))/P( H) = ((1 – P(H)) – (1 – P(H|E)))/(1-P(H)) = (P(H|E)-P(H))/(1-P(H)), con P(H) 1 (pues P(H|E)> P(H) => P(H) < 1) que, como se ve, es el aumento de la creencia en H, dada E, en relación a todo lo que podría haber aumentado (hasta 1), luego coincide con lo que hemos definido como MB(H,E). Si P(H|E) < P(H), la verdad de E disminuye la creencia en H y aumenta la creencia en H. La disminución proporcional de la creencia en H es (P(H) – P(H|E))/P(H) = ((1 – P( H)) – (1 – P( H |E)))/(1-P( H)) = (P( H|E)-P( H))/(1-P( H)) con P( H) 1 (pues P(H|E) < P(H) => P(H) > 0 => P( H) < 1) que también es el aumento de la creencia en H, dada E, en relación a todo lo que podría haber aumentado (hasta 1), luego coincide con lo que hemos definido como MD(H,E). Además, cuando E confirma a H, no confirma a H, y por ello queremos que si MB(H,E) > 0, sea MD(H,E) = 0 y viceversa, es decir, si MD(H,E) > 0, debe ser MB(H,E) = 0. También queremos que
  • 6. si E ni confirma ni rechaza a H, sea MB = MD = 0. Todo esto permite definir MB cuando P(H|E) <= P(H) y MD cuando P(H|E) >= P(H): (max[P(H|E),P(H)] – P(H))/(1-P(H)) si P(H) 1 MB(H,E) = 1 si P(H) = 1 (P(H) – min[P(H|E),P(H)])/P(H) si P(H) 1 MB(H,E) = 1 si P(H) = 1 Una definición equivalente es: (P(H|E)-P(H))/(1-P(H)) si P(H|E) > P(H) MB(H,E) = 0 si P(H|E) <= P(H) < 1 1 si P(H|E) = P(H) = 1 (P(H)-P(H|E))/P(H) si P(H|E) < P(H) MD(H,E) = 0 si P(H|E) >= P(H) > 0 1 si P(H|E) = P(H) = 0 Que conduce a: (P(H|E)-P(H))/(1-P(H)) si P(H|E) > P(H) (P(H|E)-P(H))/P(H) si P(H|E) < P(H) FC(H,E) = 0 si P(H|E) = P(H) {0,1} 1 si P(H|E) = P(H) = 1 -1 si P(H|E) = P(H) = 0 El FC tiene dos usos y argumentos posibles: a) Asignación a hechos almacenados en la BA. En este caso la proposición H equivale a la afirmación de la verdad del propio hecho „h‟ y la proposición E equivale a la afirmación de la verdad de todos los hechos almacenados en la BA, o evidencia total conocida.En este caso se cambia la notación a FC(h) y representa el grado de creencia en la verdad de „h‟ dada o conocida la evidencia acumulada hasta el momento. b) Asignación a reglas. En este caso H es el consecuente de la regla y E su premisa. Representa el grado de creencia en la propia regla, esto es, en su validez para obtener hechos „h‟ que cumplan H a partir de hechos „e‟ que cumplen E.
  • 7. El factor de certeza es un artificio para la combinación de grados de creencia e incredulidad en un solo número. Tal número es necesario para facilitarcomparaciones de la fuerza probatoria de hipótesis rivales. Algunas propiedades de estas tres medidas, que se deducen inmediatamente de su definición, son: 0 <= MB(H,E)<= 1 0 <= MD(H,E)<= 1 -1<= FC(H|E) <= 1 Si P(H|E) = 1 entonces MB(H,E) = 1, MD(H,E) = 0 y FC(H|E) = 1 Si P( H|E) = 1 entonces MB(H,E) = 0, MD(H,E) = 1 y FC(H|E) = -1 FC(H|E) = -FC( H|E) o MB(H,E) = MD( H|E) Si tenemos n hipótesis Hj mutuamente exclusivas5, de las cuales k son rechazadas por cierta k evidencia E, entonces –k <= j FC(Hj,E), ya que cada hipótesis rechazada tendrá como mínimo un FC = -1 Si tenemos n hipótesis Hj mutuamente exclusivas, de las cuales kson confirmadas por cierta k evidencia E, entonces j FC(Hj,E) <= 1. Es decir, aunque haya más de una hipótesis confirmada (con FC > 0), la suma de sus FCs no puede sobrepasar de 1. De hecho, también puede probarse que la suma es 1 si, y sólo si, k = 1. Reglas: estructura básica y forma de uso Analizaré ahora las reglas un poco más a fondo, para entender su estructura interna y cómo se evalúan sus premisas y se obtienen los FCs de los hechos que cumplen sus consecuencias. Una regla E -> H 6, es de la forma general (en BNF): <regla> ::= <premisa><consecuente> <premisa> ::= ($AND <condicion> {<condicion>}) <condicion> ::= (<predicado1><contexto><parametro>) |(<predicado2><contexto><parametro><valor>) |($OR <condicion> {<condicion>}) <consecuente> ::= <conclusion> <conclusion> ::= (CONCLUDE <contexto><parametro><valor><TALLY><FC-regla>) de la cual, un ejemplo típico7 es: 5 Las hipótesis mutuamente exclusivas son los hechos que “compiten” dentro de una misma lista Val[C,P], ya que un parámetro de un contexto dado sólo puede tener un único valor. Como ya dije antes, es casi seguro que ningún hecho tiene FC = 0, luego todas estas hipótesis tendrán FCs estrictamente positivos o negativos. Si hay n en Val[C,P] y k son las de FC < 0, entonces las de FC > 0 serán m = n – k. 6 Que no sea una regla de terapia (THERULE), una metaregla (METARULE), o una regla de antecedentes (que se disparan por sus premisas, no por sus conclusiones, en conjunción con el mecanismo de PREVIEW).
  • 8. PREMISA: ($AND (SAME CNTXT GRAM GRAMNEG) (SAME CNTXT MORPH ROD) (SAME CNTXT AIR ANEROBIC)) CONCLUSIÓN: (CONCLUDE CNTXT IDENTITY BACTEROIDES TALLY .6) Es decir, su premisa E es una conjunción de cláusulas que pueden ser una condición simple(desde ahora, “condición”, a secas) o una disyunción de condiciones, y su consecuente H esuna conclusión a obtener con cierto grado de certezasobre el valor de un parámetro clínico de cierto contextorepresentado por la variable CNTXT. Como se ve, en cuanto se usa la regla, se instancia el contexto de su conclusión y tan sólo se trata de encontrar un FC para la tripleta instanciada en la conclusión. Para ello hay que conseguir un valor para TALLY evaluando la premisa. La regla se aplica en el contexto C(por ejemplo, ORGANISMO-1) referenciado por la variable CNTXT de su conclusión para obtener un FC para la hipótesis <objeto, parámetro, valor> de dicha conclusión y poder almacenar la cuádrupla correspondiente8, en laBA,si la regla no es rechazada. En este caso, si la regla no se rechaza producirá el almacenamiento de la cuádrupla (ORGANISMO-1, IDENTITY, BACTEROIDES, FC), que puede leerse como “La identidad del organismo-1 es bacteroide, con un grado de certeza igual a FC”. En definitiva, cuando la regla se ejecuta, es decir, produce conocimiento, dicho conocimiento será una cuádrupla(C, P, V, FC), y se almacenará en la BA. Cuando la regla se rechaza no produce conocimiento, es decir, no hay almacenamiento de hechos ni sus FCs en la BA. Recordemos que el argumento TALLY de CONCLUDE almacena un valor numérico tal que 0.2 < TALLY <= 1.0, y equivale al grado de certeza que el sistema asigna a la premisa tras la evaluación de la misma. Observemos queel sistema no permite obtener hechos con FC = 0, mas que cuando alguna regla tenga su FC-regla = 0, que el usuario se lo asigne a cierto hecho, (lo que parece absurdo en ambos casos), o por cancelación al aplicar la función de combinación que analizaré más adelante. Esos hechos nunca contribuyen a que SAME o THOUGHTNOT evalúen a “Verdadero” (T). La aplicación de la regla, tras la instanciación comentada, continúa con la evaluación de la premisa, para tratar de actualizar la información almacenada en el nodo del contexto. Esta actualización puede consistir en añadir pares nuevos (V,FC) a alguna de las listas Val[C,P] o en cambiar el FC de alguno de los pares. La evaluación de la premisa se hace como sigue. Cada vez que la función $AND encuentra una condición,obtiene la evaluación de su predicado (por ejemploSAME C‟ P‟ V‟), el cual actúa sobre la lista correspondiente a sus argumentos, Val[C‟,P‟] (por ejemplo Val[ORGANISMO-1, GRAM] para el primer predicado), de manera que si dicha lista es vacía, se invoca un procedimiento de búsqueda FINDOUT para asignarle un valor9, y si tiene uno o más valores “compitiendo”, se 7 Sólo consiideraré reglas con predicado tipo 2 de la forma SAME y THOUGHTNOT. 8 Si y sólo si TALLY > 0.2. Esta es la fórmula de asignación de FCs del MPI que ya hemos visto. En breve veremos por qué esa condición sobre TALLY. En la notación del texto base sería FC(H) = FC(E)FC(H,E). 9 Aquí es donde se da el paso de encadenamiento hacia atrás.
  • 9. tomará el FC del valor con mayor FC de la lista, FCmax, como umbral para que el predicado asigne los valores de verdad a la condición. Por ejemplo, en el caso SAME se tiene SAME[C‟,P‟,V‟] = {FCmax10, si FCmax, > 0.2; SAME[C‟,P‟,V‟] = NIL (falso), si FCmax, <= 0.2}. Si un predicado (diferente de SAME o THOUGHTNOT) asigna un valor T (verdadero) a una condición, $AND le asigna un “peso” 1.0 y si un predicado asigna un valor numérico (mayor que 0.2) a una condición, $AND le asigna un peso igual a dicho valor numérico. Si $AND encuentra una función $OR, pasa el control a la misma. Las condiciones dentro de la cláusula OR se evalúan de la forma comentada y si todas son NIL, la cláusula será evaluada como NIL.En el caso contrario, $AND le asignará a la cláusula el mayor peso de sus condiciones. Conforme $AND recorre las condiciones y cláusulas, va actualizando el contador TALLYcomparando el actual con el nuevo peso obtenido y guardando el menor. $AND implementa este recorrido mediante un procedimiento llamado MONITOR (de reglas). Si un predicado de una condición o una cláusula de la premisa devuelve NIL,la regla se rechaza, es decir, no produce “conocimiento”. En ese caso, se ejecutará la siguiente regla de una lista de reglas asociadas al parámetro P cuyo valor se busca (mediante la propiedad UPDATED-BY del mismo) todas las cuales, al igual que la rechazada, referencian a P en su conclusión (P es argumento de su función CONCLUDE). Finalmente se obtendrán un valor y un FC para P, bien a través de una regla no rechazada, bien por asignación directa del usuario. Y de esta forma, el hecho h = (C,P,V), con su FC, podrá almacenarse y usarse como dato para una regla E‟ -> H‟, en cuya premisa aparezca una condiciónque referencie a C y al parámetro P del mismo. En conclusión, las reglas E -> H son como plantillas que se instancian cuando se aplican a contextos concretos al ser llamadas por otras reglas (excepto la regla meta). Lo que se instancianson las variables de contexto que aparecen en la regla. Cuando el contexto de la regla se instancia, tenemos un hecho „h‟ y la aplicación de la regla significa preguntar por el FC(h) con el que dicho hecho se almacenará en la BA11. Se dice que dicho hecho es una hipótesis ya que todos los hechos almacenados dentro de una misma lista Val[C,P] compiten entre sí para ser considerados el más certero para algún fin (establecer una terapia o evaluar una condición de una premisa). Al evaluar la premisa E, cada condición CONDj requiere el examen de una lista Lj = Val[Cj,Pj], de modo que si Lj = se invoca el procedimiento FINDOUT y si Lj se utiliza el FC de la hipótesis más fuerte de la lista para evaluar la condición. Si la condición evalúa a NIL, la regla se rechaza y no servirá para almacenar „h‟, pues no lo dotará de un FC mediante el MPI. Si la condición evalúa a T (con un peso mayor que 0.2 y menor o igual que 1.0, pues me centro únicamente en los predicados SAME y THOUGHTNOT) es porque existe un hecho hj en Lj que cumple aceptablemente la condición. En tal caso se dice que la condición “se cumple” con cierto 10 Hay dos predicados, SAME y THOUGTHTNOT, que devuelven un número cuando son verdaderos. Este número siempre es mayor que 0.2. $AND interpretará cualquier número como T. THOUGTHTNOT equivale al operador NOT, que devuelve verdadero cuando su argumento es falso, salvo que ahora THOUGTHTNOT devuelve un valor que se considera verdadero cuando su argumento tiene un FC < 0.2, es decir, un argumento cuya falsedad queda confirmada por ese FC. 11 Es decir, buscar en la BA hechos que cumplan las condiciones de la regla, que consiste en buscar en las listas Val[C,P] los valores referenciados en dichas condiciones para devolver su FC, y si no se encuentran, entonces invocar reglas en cuya conclusión aparezcan los parámetros P o preguntar al usuario (P se habrá convertido en una submeta).
  • 10. grado de certeza. Sólo si todas las condiciones se cumplen se obtendrá un FC con el que almacenar el hecho y éste se almacenará (se habrá producido conocimiento). En este caso se dice que la premisa se cumple con un grado de certeza dado por TALLY (que no es un FC) y al hecho se le asignará un FC(h) = TALLY*FC(H,E). También se dice en este caso que H se cumple con un grado de certeza dado por FC(h). El conjunto de todos los hechos „e‟ de las listas Lj (los que estaban ya al invocarse la regla y los obtenidos por inferencia o pregunta al usuario), que permiten determinar si se cumplen o no las condiciones de la premisa, se interpretan como evidencia para este regla. También se llama evidencia a la proposición E de plantilla. Se dice que la evidencia „e‟ confirma „h‟ si „h‟ se almacena con FC(h) > 0, rechaza „h‟ si „h‟ se almacena con FC(h) < 0 o es independiente de „h‟, si la regla es rechazada y no permite almacenar „h‟. Diferentes reglas que van apareciendo en el proceso de consulta, E1 -> H,..., En -> H, pueden producir un mismo hecho „h‟, aunque con diferentes FCs, el cual no se almacenará varias veces en la BA, sino que se actualizará el FC del par (h,FC) en Val[C,P] cada vez que una regla produzca „h‟ de nuevo. Por lo tanto,cuando una regla produce un hecho que ya está almacenado en la BA, habrá que proceder a la actualización de su FC mediante algún procedimiento. Esto se lleva a cabo mediante la función de combinación de van Melle, que se define como sigue cuando ya se dispone de un FC, x, con |x|< 1, para un hecho „h‟ y se produce de nuevo „h‟ con otro FC, y x. Si se tiene x = 1, entonces no se realiza la actualización del FC de „h‟, sino que se deja como está. Los autores denominaron esto “tendencia a la unidad” y es razonable, pues esta función cumple las propiedades “predominio de la confirmación total” y “predominio del rechazo total” (ver más abajo) cuando uno de los argumentos tiene un valor absoluto igual a „1‟ y el otro no, y una forma de extender estas propiedades deseables al caso en que los dos argumentos tengan valores absolutos iguales a „1‟ es no hacer actualización cuando el FC del hecho almacenado vale +1 ó -1. Por eso la función de van Melle no necesita estar definida para (x,y) con xy = -1. x + y – xy, si x > 0 y>0 f(x,y) = x + y + xy, si x < 0 y<0 (x + y)/(1 – min[|x|,|y|]), si -1 < xy <= 0 Esta función cumple una serie de propiedades deseables: a) Simetría: f(x,y) = f(y,x) b) Asociatividad: f(f(x,y),z) = f(x,f(y,z)) c) Monotonía: y > 0 f(x,y) > x; y < 0 f(x,y) < x d) Evidencia nula: y = 0 f(x,y) = x e) Cancelación: |x| 1 x = -y f(x,y) = 0 f) Predominio de la confirmación o el rechazo total: |x| = 1 y x f(x,y) = x De las cuales, la f) no era cumplida por la función original, ocasionando resultados contraintuitivos. Además, esa función dejaba su resultado más cerca del factor con mayor valor absoluto, en lugar de equilibrar ambos por igual, cuando los factores son de diferente signo. El único cambio que la actual tiene respecto a la original es el denominador que se añade al caso en que x e y son de diferente signo.
  • 11. Problemas del modelo de factores de certeza El modelo de razonamiento inexacto o modelo de factores de certeza usado en MYCIN, presenta dos tipos de problemas fundamentales: 1.- A pesar de presentarse como una alternativa al método probabilístico, en realidad puede derivarse de y es equivalente a la teoría de la probabilidad, bajo la suposición de independencia absoluta y condicional (dada la hipótesis) entre los hechos que influyan en cierta hipótesis12.Esta suposición es más fuerte que sólo la de independencia condicional del método probabilístico clásico y por lo tanto el modelo no es coherente si sólo se supone la independencia condicional. Por eso se dice que el modelo asume implícitamente la pseudoindependencia condicional, es decir, la independencia condicional más la independencia incondicional de “síntomas” respecto a “diagnósticos”, aunque luego no lo respete en la asignación de FCs a las reglas. Debido a esta suposición subyacente, las medidas MB y MD no pueden elegirse arbitraria e independientemente, sino que deben cumplir ciertas restricciones.Cuando los MBs y MDs asignados por los expertos a las reglas no cumplen esas restricciones, se obtienen resultados contrarios a lo esperado (recordemos que los FCs obtenidos se esperan que coincidan con los que se obtendrían si se contase con las probabilidades en las que se basa su definición), que no tienen en cuenta la posible independencia o dependencia entre los hechos que influyen en las hipótesis almacenadas. Esto da lugar a FCs de hipótesis que expresan tendencias contrarias a lo esperado (positivos en lugar de negativos, o viceversa) o valores muy alejados de lo esperado (valores absolutos altos en lugar de bajos, o viceversa), lo que hace que se cambie el orden que el FC otorga a las hipótesis que compiten para fundamentar la elección de las terapias.Este problema ocurre porque MYCIN no proporciona mecanismos de control de la coherencia interna entre los FCs de las reglas, especialmente teniendo en cuenta que admite la adición de nuevas reglas. 2.- La forma de cálculo de los FCs se aleja bastante de la de la teoría de la probabilidad. El modelo de FCs combina separadamente toda la evidencia a favor que se va recopilando en MB(H,Ef) y toda la evidencia que se va recopilando en contra en MD(H,Ec), donde Ef es el conjunto de todos los hechos que confirman H y Ec el conjunto de todos los hechos que rechazan H. Por el Teorema de Bayes, puede probarse que MB y MD permiten calcular P(H|Ef)/P(H) y P(H|Ec)/P(H)13, respectivamente, y estos dos cocientes pueden multiplicarse para obtener P(H|E)/P(H), donde E es el conjunto de toda la evidencia, a favor y en contra, de H, bajo la suposición de independencia. El cociente anterior da la verdadera estimación del cambio en la probabilidad de H debido a la evidencia que influye en H, cuando hay 12 Un hecho „e‟ que influya en otro „h‟ a través de una regla E -> H, equivale al modelo de red causal en que E representa un síntoma cuya causa es H. Por lo tanto la influencia mostrada en la regla es del tipo “dependencia”. es decir, la consecuencia „e‟ confirma a su causa „h‟ con cierto grado de certeza. La consideración de todas las consecuencias de „h‟ permite estimar la probabilidad “a posteriori” de „h‟ en el MPC o el FC(h), debiendo haber una correspondencia entre ambos dada por la definición de FC(H,E), por FC(e) y por el MPI. 13 Si e1 y e2 son hechos a favor de h y ef los denota a ambos, se tiene que P(h|ef) = MB(h,e2)(1 – P(h|e1)). Si e3 y e4 son hechos en contra de h y ec los denota a ambos, se tiene que P(h|ec) = (1 – MD(h,e4))(P(h|e3). De esta forma se puede estimar P(h|ef) y P(h|ec) para más de dos hechos, de forma recursiva, a partir de MB y MD.
  • 12. pseudoindependenciacondicional. Sin embargo el modelo de FCs obtiene una estimación del cambio de probabilidad de H debido a E mediante una suma de los MBs y MDs, lo que ya empieza a generar posibles resultados inesperados. Además, las llamadas “funciones de combinación”ofrecen un cálculo no acorde con lo esperado por la teoría de la probabilidad, incluso cuando se dan las condiciones de independencia. Su corrección depende de suposiciones (no explicitadas) aún más fuertes que la independencia. Veamos algunas consecuencias prácticas de esto y otros problemas debido a sus funciones de combinación. i)Inversión del ránking de hipótesis compitiendo (incoherencia de los FCs obtenidos). La propia definición del FC puede dar lugar a paradojas como la siguiente. Dadas dos hipótesis h1 y h2, y un hecho „e‟ que influye en ellas, de los que se conocen P(h1), P(h1|e), P(h2) y P(h2|e), los FCs obtenidos según su definición pueden arrojar resultados que inviertan el orden esperado (que vienen dados por el cociente P(hj|e)/P(h)). ii)Falta de coherencia de los FCs de las reglas, lo que puede tener consecuencias inesperadas cuando intervienen hechos mutuamente exclusivos, es decir, hechos de la misma lista Val[C,P], con valores (y FCs) diferentes. Por ejemplo, un mismo hecho „e‟ puede confirmar absolutamente dos hechos mutuamente exclusivos, h1 y h2, a través de dos reglas diferentes, E -> H1 y E -> H2. Si los FCs de ambas reglas se asignan arbitrariamente, puede ocurrir que su suma sea mayor que 1 y entonces la suma de los FCs de h1 y h2 también será mayor que 1, violando una propiedad del FC. iii)Ignorancia de la dependencia entre hechos. En el caso extremo de hechos mutuamente exclusivos, pueden darse varias paradojas. Una regla E1 E2 -> H puede permitir confirmar cierta hipótesis „h‟ a partir de dos hechos mutuamente exclusivos, aunque la regla en sí no tenga sentido (pues dichos hechos son incompatibles). Es como si fuera posible una regla que dijera “Si la identidad de organismo-1 es bacilococo y la identidad de organismo-1 es estreptococo, entonces,...”, lo cual no tiene sentido (siempre se debería rechazar una regla así, por lo que tal regla sobraría). Pero MYCIN permite su existencia, y si ambos valores existen en Val[organismo-1,identidad] con FCs mayores que 0.2, la regla no será rechazada y confirmará o rechazará h con cierto FC. Puede decirse que es un problema de la función de combinación para la conjunción de condiciones, que no discrimina esa exclusividad mutua. Por otro lado, dada una regla E1 E2 -> H, si hay dos hechos mutuamente exclusivos e1 y e2, que confirmen (no absolutamente) la hipótesis „h‟, debería cumplirse que el FC(h) fuese mayor que cualquiera de los FCs de e1 o e2, sin embargo la función de combinación para la conjunción de condiciones le asignará el máximo de ellos, no uno mayor (es una variante del tipo de problema 4, pues esto no pasaría si ambas reglas se ejecutaran como dos sucesivas y equivalentes, E1 -> H y E2 -> H) Tampoco se tiene en cuenta la dependencia entre hechos a la hora de evaluar su influencia acumulada en una hipótesis. Es decir, el efecto acumulado de dos hechos e1 y e2 que cumplan E1 -> H y E2 -> H, respectivamente, es el mismo, independientemente de la relación de dependencia que pueda existir entre ambos, cuando lo esperado es que si ambos son dependientes, su efecto acumulado sea menor que si son independientes.
  • 13. iv)Reglas equivalentes conducen a conclusiones distintas. Es una consecuencia de las dos formas diferentes que hay de evaluar una disyunción lógica condicionante. Si está dentro de una única premisa, como en E1 E2 -> H, se usará la función $OR, y se evaluará el FC(h) con la “regla del máximo”. Pero se puede expresar mediante dos reglas diferentes, E1 -> H y E2 -> H, con lo que el FC(h) se evaluará con la función de van Melle, obteniendo resultados diferentes, en general. Por lo tanto, por cada regla con una disyunción podrían haberse elegido en su lugar varias reglas sin esa disyunción, equivalentes desde el punto de vista lógico, y viceversa, por cada dos o más reglas con la misma conclusión, podría haberse elegido una única regla con una disyunción. Esas decisiones de diseño afectan de forma diferente a los resultados obtenidos. v)Falta de sensibilidad de las funciones de combinación de conjunciones. Esta función, que se implementa mediante el funcionamiento de $AND ya explicado, y por lo tanto es la más usada, evalúa una conjunción de condiciones en una premisa obteniendo el menor de los FCs de dichas condiciones (cuando todas son ciertas), lo que hace que no se discrimine entre diferentes premisas que tengan la misma condición “mínima”, aunque se diferencien en el resto de condiciones, que se evalúan con un mayor peso o grado de certeza. Bibliografía B.G. Buchanan y E.H. Shortliffe, Rule-Based Expert Systems. The MYCIN Experiments of the Stanford Heuristic Programming Project, Addison-Wesley 1984