Monday, July 21, 2008

Laboratorio7

Red Bayesiana e Inferencia utilizando el Algoritmo de Eliminación de Variables

A continuación se presenta el algoritmo implementado para la resolución.

Algoritmo de Eliminación de Variables
Entrada: una v.a. X de consulta, un conjunto de valores observados e para las variables de evidencia y una red bayesiana. Salida: P(X|e)

FUNCION INFERENCIA_ELIMINACION_VARIABLES(X,e,RED)
1. Sea RED_E el resultado de eliminar de RED las variables irrelevantes para la consulta realizada
2. Sea FACTORES igual a vacío
3. Sea VARIABLES el conjunto de variables de RED_E
4. Sea VAR_ORD el conjunto de VARIABLES ordenado según un orden de eliminación
5. PARA cada VAR en VAR_ORD HACER
      5.1 Sea FACTOR el factor correspondiente a VAR (respecto de e)
      5.2 Añadir FACTOR a FACTORES
      5.3 Si VAR es una variable oculta hacer FACTORES igual
                a. AGRUPA(VAR,FACTORES)
6. Devolver NORMALIZA(MULTIPLICA(FACTORES))

 En el paso nro 5 se detalla una mejor manera de implementarlo aquí. Para el desarrollo de nuestro laboratorio, hemos considerado las siguientes variables aleatorias:
  • D: práctica deportiva habitual
  • A: alimentación equilibrada
  • S: presión sanguínea alta
  • F: fumador
  • I: ha sufrido un infarto de miocardio

Las relaciones causales y el conocimiento probabilístico asociado están reflejadas en la siguiente red bayesiana:




 Podemos usar la red bayesiana para calcular la probabilidad de fumador si se ha sufrido un infarto y no se hace deporte, P(F|i, ¬d), para ello:
  • Seguiremos el siguiente orden de variables, inspirado en la topología de la red (de abajo a arriba): I, F, S,A,D.
  • Aunque igual otro orden sería más eficiente, pero eso no lo sabemos a priori
  • Entonces finalmente luego de los cálculos nos queda
  • P(F|i, ¬d) = <0,48,>

No comments: