SISTEMAS EXPERTOS
Razonamiento bajo
incertidumbre
Sistemas Expertos Basados
en Probabilidad
Mg. Ing. Rolando M. Chávez Guillén
INCERTIDUMBRE
• Todos los seres humanos tienen experiencia, en
manejar la incertidumbre. Es muy común tomar
decisiones en condiciones de incertidumbre, acerca
del trafico, el clima, el trabajo, la escuela , etc., de tal
manera que ella, es parte de nuestra vida diaria.
• Un ejemplo tan cotidiano como el ir tarde al trabajo
y preguntarse si se va a tomar un bus o un taxi.
INCERTIDUMBRE
• La persona decide con incertidumbre, por que no
sabe si el bus se demore o no, o si estará lleno, por
otro lado el taxi le costará mas, pero debe tomar
una decisión que lo lleve a su trabajo.
• Este tipo de decisiones se presenta a menudo tanto
en la vida cotidiana, como en el ámbito científico o
en el empresarial.
INCERTIDUMBRE
• Aunque la incertidumbre este presente en todos esos
campos, el ser humano ha desarrollado técnicas y teorías,
como la probabilidad , para enfrentar este tipo de
decisiones.
• Aun cuando es posible construir muchas aplicaciones de
los sistemas expertos utilizando el razonamiento exacto,
muchas otras requieren un razonamiento inexacto con
hechos o reglas inciertas, es decir un razonamiento con
incertidumbre.
TIPOS DE ERRORES• Muchos tipos de errores, pueden aportar
incertidumbre. Las diferentes teorías de
incertidumbre, tratan de resolver parte o todo esto,
para proporcionar, la inferencia mas confiable.
• Entre los tipos de errores se puede mencionar la
ambigüedad, en el que algo puede interpretarse de
más de una manera. Ejemplo: Apagar la válvula(¿Cuál
válvula?).
TIPOS DE ERRORES
• Otro tipo es la falta de información completa.
• Un tercero es la incorrección, donde la información
es incorrecta. Las posibles causas de la incorrección
son el error humano, la falla accidental en la lectura
de los datos, el mal funcionamiento del equipo, etc.
ENFOQUE PROBABILISTICO
Probabilidad Condicional: Si A y B son 2 eventos en un espacio muestral.
La probabilidad de que ocurra A dado que B ha ocurrido se define :
P(A/B)= P(A ∩B) /P(B) = card(A,B)/card(B)
P(Ā/B)=1-P(A/B)
Ejercicios1.- En lima, Perú la probabilidad que llueva el día primero de julio es de
0.50 y la probabilidad que llueva los 2 primeros días de julio es
0.40.Dado que llovió el día primero. ¿cual es la probabilidad que llueva
el día siguiente.
2.- Un hombre tiene dos carros viejos , a y b; ellos tienen problemas
para arrancar en las mañanas frías. La probabilidad que ambos arrancan
es 0.1; la probabilidad que arranca b y no a es 0.2; la probabilidad que
ninguno de ellos arranca es 0.4. Hallar la probabilidad que: i) el carro a
arranca; ii) arranca a dado que arrancó b ; iii) arranca b, dado que
arrancó a.
Ejercicios3.-En un sistema de alarma, la probabilidad que se produzca un peligro
es 0.10. Si este se produce, la probabilidad que la alarma funcione es de
0.95. La probabilidad que funcione la alarma sin haber habido peligro es
0.03.Determinar la probabilidad que haya un peligro y la alarma no
funcione.
4.-Dos establos A y B tienen 1000 cabezas de vacuno cada uno. Existe
una epidemia que afecta a los cascos y la boca del ganado. La proporción
de ganados afectados es 1/5 y ¼ respectivamente(por establo). Se
escoge un ganado al azar. i) ¿Cuál es la probabilidad que el ganado
escogido viene del rancho A y tiene afección a los cascos y a la boca?.
Ejercicios
ii) Si el 70 % de los ganados afectados tienen edad menor que un año.
¿Cuál es la probabilidad que el ganado escogido venga del rancho B,
tiene afección y es mayor que un año de edad?.
ENFOQUE PROBABILISTICO
Teorema de Bayes :
P(Ai/B)=P(Ai) P(B/Ai) / P(B)
A1 A2 A3
P(B)=Σ P(Ai) P(B/Ai)
B
P(B)= P(Ai) P(B/Ai) + P(Āi) P(B/Āi)
Probabilidad Total
Teorema de Bayes
• “El Teorema de Bayes nos permite comparar la
probabilidad previa ( o a priori) P(Ai), con la
probabilidad posterior ( o aposteriori) P(Ai/B), esto
es, con la probabilidad de Ai después que ha ocurrido
el evento B”.
• Observar que la regla de Bayes da el porcentaje de
P(Ai ∩ B) con respecto a P(B).
1. Un centro médico tiene una base de datos de historias clínicas de N= 1000 pacientes.
APLICACION
Dolor
25
25
220
220
1276
95954
31
50 10 10
113
9
5
Vómitos
G
Perdida peso
2. Hay 700 pacientes (región sombreada) que tienen laenfermedad adenocarcinoma gástrico (G), y 300 no latienen.• Tres síntomas: Dolor (D), pérdida de peso (P) y vómitos
(V) están ligados a la enfermedad.• Cuando un paciente nuevo llega a la consulta, hay una
probabilidad 700/1000 = 70% de que el pacientetenga G.
Dolor
25
25
220
220
12 76
9595431
50 10 10
113
9
5
Vómitos
G
Perdida peso
=> Pueden hacerse las siguientes afirmaciones:• Probabilidad a priori: 440 de 1000 pacientes vomitan
=> p(v) = 0.44• Verosimilitud: El 50% de los pacientes que tienen la
enfermedad, vomitan. p(v|g) = card(v,g) / card(g) card(v,g) = 25+220+95+10=350
= 350/700 = 0.5
Dolor
25
25
220
220
12 76
9595431
50 10 10
113
9
5
Vómitos
G
Perdida peso
A1 A2
A3
Mientras que sólo el 30% de los pacientes que no tienen la enfermedad vomitanp(v| ¬ g)=card(v, ¬ g)/card(¬ g)= 90/300=0.3
Dolor
25
25
220
220
1276
95954
31
50 10 10
113
9
5
Vómitos
G
Perdida peso
• Probabilidad a priori: 220+95+4+31+4= 350 de 1000 pacientes vomitan y pierden peso.
=> p(v,p) = 0.35• Verosimilitud: El 45% de los pacientes que tienen la
enfermedad vomitan y pierden peso.card(v, p,g) = 220+95 = 315p(v, p | g) = card(v, p,g) / card(g)
= 315/700 = 0.45• Mientras que sólo el 12% de los que no tienen la
enfermedad vomitan y pierden pesop(v,p| ¬ g) = card(v,p, ¬ g)/card(¬ g)
= 35/300 = 0.11666667= 0.12
Puesto que la probabilidad inicial de que el pacientetenga adenocarcinoma gástrico, p(g)=0.7, no essuficientemente alta para hacer un diagnóstico (tomaruna decisión ahora, implica una probabilidad 0.3 deequivocarse),
Entonces el doctor decide examinar al paciente paraobtener más información:
Supóngase que los resultados muestran que el pacientetiene los síntomas vómitos (v) y pérdida de peso (p).¿Cuál es ahora la probabilidad de que el paciente tenga laenfermedad?
Tras observar que tiene v la probabilidad a posteriori es
p(g|v)p(g) p(v|g)
p(g) p(v| g)+ p(¬ g) p(v| ¬ g)
=
0.7 x 0.5
(0.7 x 0.5) + (0.3 x 0.3)
= = 0.795
p(g|v)p(g) p(v|g)
p(v)
=
0.7 x 0.5
0.44
= = 0.795
Tras observar que tiene v y p la probabilidad a posteriori es
p(g|v,p)p(g) p(v, p |g)
p(g) p(v, p | g)+ p(¬ g) p(v,p| ¬ g)
=0.7 x 0.45
(0.7 x 0.45) + (0.3 x 0.12)
= 0.9=
p(g) p(v,p|g)
P(v,p)
=0.7 x 0.45
0.35= = 0.9p(g|v,p)
Nótese que cuando se aplica el teorema de Bayessucesivamente, la probabilidad “a posteriori” calculadaen una etapa dada es la misma que la probabilidad “apriori” en la siguiente.
Por ejemplo, la probabilidad “a posteriori” que se hacalculado en el primer paso anterior, puede ser utilizadacomo probabilidad “a priori” en la siguiente:
p(g|v,p)
p(g|v) p(p|g,v)
p(g|v) p(p|g,v)+ p(¬ g|v) p(p| ¬ g,v)
0.795 x 0.9
(0.795 x 0.9) + (0.205 x 0.389)= 0.9
=
=
=
I) Identificar los posibles conjuntos que intervienen en el problema
B
BC
A1A2
A3
A3C
A2CA3
A3C
A1CA2
A2C
A3
A3C
A3
A3C
A1
A2A3
A3C
A2CA3
A3C
A1C A2
A2C
A3A3C
A3A3C
III) Calcular las probabilidades conocidas
/* P(A1/B)*/
real PA1B=0;
PA1B=(personas_por_conjunto[0]+personas_por_conjunto[1]+
personas_por_conjunto[2]+personas_por_conjunto[3])/(personas_por
_conjunto[0]+personas_por_conjunto[1]+
personas_por_conjunto[2]+personas_por_conjunto[3]+personas_por_
conjunto[4]+personas_por_conjunto[5]+
personas_por_conjunto[6]+personas_por_conjunto[7])
Escribir("La probabilidad de P(A1/B) es : “, PA1B)
III) Calcular las probabilidades conocidas
/* P(A1/BC)*/Real PA1BC=0;
PA1BC=(personas_por_conjunto[8]+personas_por_conjunto[9]+
personas_por_conjunto[10]+personas_por_conjunto[11])/(personas_p
or_conjunto[8]+personas_por_conjunto[9]+
personas_por_conjunto[10]+personas_por_conjunto[11]+personas_po
r_conjunto[12]+personas_por_conjunto[13]+
personas_por_conjunto[14]+personas_por_conjunto[15])
Escribir("La probabilidad de P(A1/BC) es : “, PA1BC)
III) Calcular las probabilidades conocidas
/* P(A2/B)*/
real PA2B=0;
PA2B=(personas_por_conjunto[0]+personas_por_conjunto[1]+
personas_por_conjunto[4]+personas_por_conjunto[5])/(personas_por
_conjunto[0]+personas_por_conjunto[1]+
personas_por_conjunto[2]+personas_por_conjunto[3]+personas_por_
conjunto[4]+personas_por_conjunto[5]+
personas_por_conjunto[6]+personas_por_conjunto[7])
Escribir("La probabilidad de P(A2/B) es : “, PA2B)
III) Calcular las probabilidades conocidas
/* P(A2/BC)*/Real PA2BC=0;
PA2BC=(personas_por_conjunto[8]+personas_por_conjunto[9]+
personas_por_conjunto[12]+personas_por_conjunto[13])/(personas_p
or_conjunto[8]+personas_por_conjunto[9]+
personas_por_conjunto[10]+personas_por_conjunto[11]+personas_po
r_conjunto[12]+personas_por_conjunto[13]+
personas_por_conjunto[14]+personas_por_conjunto[15])
Escribir("La probabilidad de P(A2/BC) es : “, PA2BC)
III) Calcular las probabilidades conocidas
/* P(A3/B)*/
real PA3B=0;
PA3B=(personas_por_conjunto[0]+personas_por_conjunto[2]+
personas_por_conjunto[4]+personas_por_conjunto[6])/(personas_por
_conjunto[0]+personas_por_conjunto[1]+
personas_por_conjunto[2]+personas_por_conjunto[3]+personas_por_
conjunto[4]+personas_por_conjunto[5]+
personas_por_conjunto[6]+personas_por_conjunto[7])
Escribir("La probabilidad de P(A3/B) es : “, PA3B)
III) Calcular las probabilidades conocidas
/* P(A3/BC)*/Real PA3BC=0;
PA3BC=(personas_por_conjunto[8]+personas_por_conjunto[10]+
personas_por_conjunto[12]+personas_por_conjunto[14])/(personas_p
or_conjunto[8]+personas_por_conjunto[9]+
personas_por_conjunto[10]+personas_por_conjunto[11]+personas_po
r_conjunto[12]+personas_por_conjunto[13]+
personas_por_conjunto[14]+personas_por_conjunto[15])
Escribir("La probabilidad de P(A3/BC) es : “, PA3BC)
IV) Calcular las probabilidades condicionales
En este caso particular que se analiza, un paciente que va a una
consulta, tiene una probabilidad a priori de 0.7 de tener la
enfermedad , pero el medico considera que esto no es suficiente
ya que tiene una probabilidad de 0.3 de equivocarse, por tanto
decide hacer las preguntas adecuadas que el paciente debe
responder .
a) Si el enfermo tiene vómitos.
b) Si el enfermo experimenta perdida de peso.
c) Si el enfermo tiene dolor.
IV) Calcular las probabilidades condicionales
Para esto se toma P(B)=0.70 que es la primera estimación dada por el médico.
Para el caso que la probabilidad inicial de B es 0.7 , por medio de la regla de
Bayes se tiene que, la probabilidad que el paciente tenga la enfermedad, dado
que no presenta vómitos , se calcula como sigue:
P(BC/A3C)=1- P(B/A3C)= 1-0.625= 0.375
3
3
3
3
P(Ā/B)=1-P(A/B) P(A3C/B)=1-P(A3/B)
IV) Calcular las probabilidades condicionales
Las deducciones obtenidas, dan una nueva probabilidad de que el
paciente tenga la enfermedad, por lo tanto la probabilidad de
tener dicha enfermedad , teniendo el síntoma de perdida de
peso, sufre un cambio, ya que ahora P(B)=0.625 , lo mismo su
sucede con su complemento, estas nuevas probabilidades son
usadas para el siguiente cálculo:
P(BC/A2)=1- P(B/A2) = 0.2105
IV) Calcular las probabilidades condicionales
Este cálculo determina que dado que, un paciente no tiene
vómitos y presenta perdida de peso su nueva probabilidad de
tener la enfermedad es 0.7895.
Un paciente que, no presenta vómitos, pero presenta perdida de
peso , y además tiene el síntoma de dolor, su probabilidad de
tener la enfermedad es de :
P(BC/A1)=1- P(B/A1) = 0.366
11
1
IV) Actualizar la base de conocimiento
Pero el sistema no solo se queda con los datos a priori
suministrados por el medico, si no que a medida que va
conociendo nuevos casos y los resultados finales de estos a
posteriori, actualiza su propia base de conocimiento.
Ejemplo:
“Un paciente que tiene dolor ,perdida de peso y vómitos. Tiene X% de
probabilidades de tener la enfermedad. Se le realizan los análisis
correspondientes y se le diagnostica que tiene la enfermedad”.
Entonces : Pertenece al conjunto: 1 B_A1_A2_A3
personas_por_conjunto[0]++ (se incrementa en 1)