You are on page 1of 49

Diagramas de influencia en

Elvira II

Granada, 2003

NDICE
1.- Diagramas de Influencia
2.- Mtodos de evaluacin
3.- Clases disponibles
4.- Asimetras
5.- Aproximacin
6.- Simulacin
Granada, 2003

1.- Diagramas de influencia


Los diagramas de influencia permiten representar problemas de decisin, tal y
como los percibe el decisor: incertidumbre, acciones a tomar y
preferencias. Representacin + evaluacin.
Los diagramas de influencia son grafos dirigidos y acclicos, con tres tipos de
nodos:

nodos de azar

determinsticos

nodos de decisin
nodos de valor

Granada, 2003

1. Diagramas de Influencia (II)

Nodos de azar: variables aleatorias o eventos aleatorios


influyentes en el proceso de toma de decisin. Si el nodo
es determinstico, su valor queda fijado al conocer los
valores de sus predecesores
Nodos de decisin: variables bajo control del decisor
Nodos de valor: cuantifican las preferencias de los expertos

Granada, 2003

1. Diagramas de Influencia (III)


Los arcos entre nodos representan las relaciones entre sus variables
asociadas, y pueden ser:
informativos: inciden sobre nodos de decisin. Informacin
disponible en el momento de decidir
CBrb

Ingreso

Edad

Tratamiento
Pes
o
condicionales: inciden sobre nodos de azar y sobre el(los) nodo(s)
de utilidad. Representan dependencia probabilstica (o funcional)
entre nodos (y no necesariamente causalidad)
CBrb

CHmgb

Enf1

Enf2

Dao

Peso

Edad
Granada, 2003

1. Diagramas de Influencia (IV)

Cost
e
1

Cost
e
2

Cost
e
3

Funcin: Coste total


k1*(Coste 1) + k2*(Coste 2) + k3*(Coste 3)

Cost
e
total

V1

V2

Distribuciones:
P(Coste 1|.....)
P(Coste 2|.....)
P(Coste 3|.....)

V3
D1
D2

Utilidad
V1 V2 V3 D1 D2
------------------------------------------100
v11 v21 v31 d11 d21
39
v11 v21 v31 d11 d22
..........................................................
45

v1n v2m v3p d1q d2r


Granada, 2003

1. Diagramas de Influencia (V)

Mtodos de evaluacin
evaluacin directa (Shachter, Shachter y Peot, Zhang y
Poole, Zhang et al, etc). Idea original: Olmsted (1983)
evaluacin indirecta : transforman previamente el DI en
alguna otra estructura : rboles de decisin, grafos de
decisin, redes bayesianas, ... (Howard y Matheson, Cooper,
Qi y Poole, Qi, etc)
mtodos aproximados: mediante simulacin (Shenoy, Bielza,
Ortiz, ...), mediante aproximaciones sucesivas (Horsch &
Poole), ...

Granada, 2003

2.- Mtodos de evaluacin


A) Mtodo de inversin de arcos
Mientras haya antecesores del nodo de valor
- Eliminar nodo de azar

v' v x
x

(herencia sobre el nodo de valor)


A

X
U

U(X)

U(A,B))
Granada, 2003

2. Mtodos de evaluacin (II)

- Eliminar nodo de decisin: v' maxx v

X
A

B
U

U(X, A, B)

C
A

B
U

U(A, B)

Sumidero
Granada, 2003

2. Mtodos de evaluacin (III)

- Invertir arco: (previo a eliminacin de nodo de azar)


D

F
A

B
U

A
E

B
U

P(A|B, C, D, E, F)
P(B|C, D, E, F)

P(A|C, D)
P(B|A, E, F)
P ( A | B, C , D, E , F )
P ( B | C , D, E , F )

P ( A | C , D ) P ( B | A, E , F )
P ( B | C , D, E , F )

P ( A | C , D ) P ( B | A, E , F )
xii
Granada, 2003

2. Mtodos de evaluacin (IV)

Resultados:
tablas de decisin (poltica ptima)
distribuciones a poteriori de todas las variables
antes de eliminarlas (recogen la incertidumbre
actualizada sobre las variables; interesante en
tareas de diagnstico)
Inconveniente:
elevado coste computacional

Granada, 2003

2. Mtodos de evaluacin (V)

B) Mtodo de eliminacin de variables


- Determinar orden temporal, en funcin de los
arcos informativos

I 0 D1 I1 ... Dn I n
In: los nodos que no son antecesores de ningn
nodo de decisin
In-1: nodos antecesores de Dn
.......................................................
I0: nodos antecesores de D1
Granada, 2003

2. Mtodos de evaluacin (VI)

Se van seleccionando variables a eliminar respetando


el orden parcial anteriormente determinado. Cuando
se selecciona una variable X, los potenciales se
actualizan de la siguiente forma:

X { | X dom }
X { | X dom }
Si X es una variable de azar:

X X
X

X X ( X )
X

Granada, 2003

2. Mtodos de evaluacin (VII)

Si X es una variable de decisin:

X maxX X

X maxX X ( X )
El conjunto final de potenciales, tras la eliminacin de
X queda:

{ \ X } { X }

X
{ \ X }

Granada, 2003

2. Mtodos de evaluacin (VIII)

Resultados:
tablas de decisin (poltica ptima)
no obtiene las distribuciones a posteriori de las
variables a eliminar
Ventaja:
mucho menor coste computacional

Granada, 2003

2. Mtodos de evaluacin (IX)

C) Mtodos aproximados
Objetivo: evaluar problemas muy complejos, las
tablas de decisin incluyen muchas variables
(explosin combinatoria)
Simulacin:
-

instanciar
variables,
reduccin
complejidad del problema (casos)

de

la

aproximacin anytime. Obtener


inicial y mejorar sucesivamente

solucin

Granada, 2003

3.- Clases disponibles en Elvira


A) Clase IDiagram

Bnet

IDiagram

- Comprobacin de caractersticas y acceso a nodos:


a) hasCycles
b) directedLinks
c) pathBetweenDecisions
d) onlyOneValueNode
Mtodos

e) numberOfDecisions
f) decisionReadyToRemove
g) firstDecision
h) getDecisionList
i) getBarrenNode
j) getValueNode
k) getNode
l) getProblemSize
Granada, 2003

3. Clases disponibles en Elvira (II)

- Manipulacin sobre el DI:

Mtodos

m) addNonForgettingArcs
n) eliminateRedundancy
) removeBarrenNodes
o) addLinks
p) copy
q) qualitativeCopy
r) evaluate (mediante ArcReversal)
s) save
t) print

Granada, 2003

3. Clases disponibles en Elvira (III)


B) Clase ArcReversal

- Constructores:
a) ArcReversal()
b) ArcReversal(IDiagram)

Propagation

- Comprobacin de caractersticas y acceso

ArcReversal

Mtodos

c) getInitialRelations
d) initialConditions
- Evaluacin y manipulacin del DI

IDiagram
RelationList

e) evaluateDiagram
f) removeChanceNode
g) removeDecisionNode
h) reverseArc
i) modifyUtilityRelation
j) modifyUtilityLinks
Granada, 2003

3. Clases disponibles en Elvira (IV)


- Evaluacin y manipulacin del DI
k) modifyRelations
l) modifyLinks
m) getExpectedUtility
n) maximizeUtility
) getPosteriorDistributions
o) storeDecisionTable
p) giveInstantiationOrder
q) getMarginalsNames
r) checkInstantiationOrder
s) variablesInDecisionTables

Granada, 2003

3. Clases disponibles en Elvira (V)


C) Clase QualitativeArcReversl

- Constructores:

Propagation

a) QualitativeArcReversal(IDiagram)
- Acceso a datos miembro

ArcReversal

Mtodos

b) getOrderOfElimination
c) getOrderOfInstantiation
- Evaluacin y manipulacin del DI

QualitativeArcReversal

d) produceOrderOfInstantiation
e) evaluateDiagram
f) removeChanceNode
g) removeDecisionNode
h) reverseArc

Granada, 2003

3. Clases disponibles en Elvira (VI)


D) Clase ARWithPotentialTree

Propagation

- Constructores:
a) ARWithPotentialTree(IDiagram)

ArcReversal

Mtodos

ARWithPotentialTree

- Transformacin de relaciones
b) transformInitialRelations: Este mtodo
convierte los valores de utilidades y
de PotentialTable a PotentialTree (con
la posibilidad de aplicar los mtodos
de rboles que permiten aproximar)

Granada, 2003

3. Clases disponibles en Elvira (VII)


E) Clase VariableElimination
Funcionalidad compartida para redes Bayesianas y diagramas de
influencia
- Mtodos relacionados con DI

Propagation

VariableElimination

a) getPosteriorDistributionsID
b) combinePotentialsOfNode
c) propagate
Incorporacin de mtodo nextToRemoveId en
la clase PairTable, que determina la prxima
variable a eliminar.
Este mtodo de evaluacin no altera la estructura
del diagrama: trabaja con sus potenciales, sobre
una copia de las relaciones.
Granada, 2003

3. Clases disponibles en Elvira (VIII)


F) Clase VEWithPotentialTree
- Constructores:
a) VEWithPotentialTree(Bnet,Evidence)
a) VEWithPotentialTree(Bnet)

Propagation
Mtodos

VariableElimination

- Transformacin de relaciones
b) transformInitialRelations: Este mtodo
convierte los valores de utilidades y
de PotentialTable a PotentialTree (con
la posibilidad de aplicar los mtodos
de rboles que permiten aproximar)

VEWithPotentialTree
Granada, 2003

4.- Asimetras
Para ciertos valores de algunas variables, los posibles
valores de otra variable estn restringidos.
Esta
informacin cualitativa se puede representar como una
matriz de restricciones (definida sobre las variables
afectadas).
x1
y1
1

X x2

y2 y1
0

y2
1

Y1 Y2 ....... Yn
------------------------------------------X1
1 0 ....... 0
X2
1 1 ....... 0
..........................................................
Xm

....... 1

El tratamiento de las restricciones simplifica la


evaluacin (slo evala configuraciones vlidas)
Granada, 2003

4. Asimetras (II)

Objetivos de la representacin de asimetras:


a) forma general, de forma que se pueda expresar
cualquier tipo de relacin. Expresiones lgicas
b) las restricciones, asimetras, se convierten en
potenciales que se utilizan en la evaluacin del
DI
c) si como soporte de la informacin cualitativa se
usan rboles, es posible realizar podas
d) la aplicacin de restricciones, en determinados
casos, puede hacer posible la aplicacin de
nuevas podas

Granada, 2003

4. Asimetras (III)

Consideraciones sobre las asimetras:


a) parte de la informacin cualitativa estar recogida
en las distribuciones (probabilidad utilidad)
iniciales. Esto ocurre en el caso en que las
variables afectadas por la restriccin formen parte
del dominio de las distribuciones. Por ejemplo:
Condiciones
RTest1

RTest2

Test1

Test2

Compra
Valor
Granada, 2003

4. Asimetras (IV)

Resultados del primer test:


P(RTest1 | Test1, Condiciones)
NoTest
bien

NoTest
mal

Frenos
bien

Frenos
mal

Electric.
bien

Electric.
mal

Sin resul.

0 defectos

0.9

0.4

0.8

0.13

1 defecto

0.1

0.6

0.2

0.53

2 defectos

0.33

Si Test1={No Test} RTest1={Sin resul.}


Si Test1={Frenos} RTest1 != {Sin resul, 2 defectos}
Si Test1={Electric.} Condiciones={bien} RTest1 != {Sin resul, 2 defectos}

Granada, 2003

4. Asimetras (V)

Procedimiento:
1) extraer del experto la informacin cualitativa
2) reducir con ella el nmero de parmetros a
obtener
3) al usar rboles, aplicar poda para reducir el
nmero de valores a almacenar. En el ejemplo
anterior, se podra hacer que las ramas asociadas
a Test1 = no Test (correspondientes a los dos
posibles valores de Condiciones), se podran unir
en 1 (son idnticas)
4) mantener estas dos informaciones supone cierta
redundancia

Granada, 2003

4. Asimetras (VI)

b) Qu ocurre si estas informaciones no son


consistentes? Por ejemplo, en la primera columna
se han especificado valores de probabilidad.
Debera prevalecer la informacin cualitativa?
Convendra comprobar la consistencia de ambos
tipos de informaciones
c) Puede que alguna informacin cualitativa haya
que usarla durante el proceso de evaluacin, por
no estar reflejada en los potenciales originales.
Por ejemplo, si los valores de Test1 y Test2 estn
afectados por alguna restriccin, esta informacin
est contenida en las distribuciones asociadas al
nodo de utilidad, pero no es suficiente
Granada, 2003

4. Asimetras (VII)
Condiciones
RTest1

RTest2

Test1

Test2

Compra
Valor

Al eliminar Condiciones, he de combinar los potencialess en que


aparece esta variable (mtodo de eliminacin de variables, aunqye
ocurrira lo mismo con inversin de arcos):
P(RTest1 | Condiciones, Test1)
P(RTest2 | Condiciones, RTest1, Test2)
P(Condiciones)
para obtener (RTest1, RTest2, Condiciones, Test1, Test2)
Granada, 2003

4. Asimetras (VIII)
Sobre este potencial s que habra que aplicar la restriccin. En este
caso no hay redundancia alguna.

d)

En este caso, es necesaria una fase de


normalizacin. Se considera el siguiente ejemplo.
A

a1

a2

b1

0.3

0.9

b2

0.7

0.1

b1

b2

c1

0.4

0.55

c2

0.6

0.45

Informacin cualitativa: A={a1} C={c2}

Granada, 2003

4. Asimetras (IX)
Al eliminar la variable B, se han de combinar los potenciales en que
esta variable participa: P(B | A) y P(C | B). Sobre este potencial
resulta aplicable la restriccin

b1
a1
C
c1

c2
0.18

0.12

0.3

a2
C

c1
0.36

b2
a1

c2 c1
0.54

a2
C
c2
0.31

0.39

c1

c2
0.055

0.045

0.7

Granada, 2003

4. Asimetras (X)

b1
a1
C
c1
0

c2
?

a2
C

c1
0.36

0.18 / (0.18 + 0.31)=0.367 ?


0.3 ?

b2
A

a1
C

c2 c1
0.54

a2
C
c1

c2
0

c2
0.055

0.045

0.31 / (0.18 + 0.31)=0.633 ?


0.7 ?

La normalizacin slo es necesaria en caso de verse afectada un potencial de


probabilidad. Para las utilidades, asignar un nuevo 0 significa marcar
ese escenario como no recomendable (a la cola de las preferencias)

Granada, 2003

4. Asimetras (XI)

Clases para tratar las asimetras


A) ValuesSet
ValuesSet

Node
Vector

Permite definir un conjunto de valores para un nodo (deben


estar incluidos en su dominio, aunque tambin pudiera ser
vaco). El tipo de operacin a realizar se reduce a ver si un
valor para la variable est incluido en este conjunto.
Es decir, dado un valor xi para la variable X, esta clase
permite determinar si

xi {x1 ,..., xk }
Se puede establecer un flag de negacin, de forma que la
comprobacin a realizar sera:

( xi {x1 ,..., xk })
Granada, 2003

4. Asimetras (XII)
Datos miembro:
a) Node node
b) Vector values
c) boolean negated
Mtodos:
a) Constructor (Node, Vector, boolean)
b) checkValue (String)

Este es el elemento bsico que permite componer expresiones lgicas,


mediante las clases LogicalNode y LogicalExpression

Granada, 2003

4. Asimetras (XIII)

B) LogicalNode
LogicalNode

ValuesSet
Vector

Datos miembro:
a) int kind (si el nodo es operador u operando)
b) int operator (clase de operador: AND, OR, NOT, etc)
c) boolean negated
d) LogicalNode leftOperand
e) LogicalNode rightOperand
f) ValuesSet valuesSet
g) Vector variables
LogicalNode
h) Vector index
(operator)
i) boolean result
j) int observedValue

LogicalNode
(operand)

LogicalNode
(operand)

Granada, 2003

4. Asimetras (XIV)
Mtodos:
a)
b)
c)
d)

Constructor (int operator)


Constructor (ValuesSet values)
indexVariables
evaluateConfiguration

La idea es que esta clase permita crear objetos que representen relaciones
lgicas entre variables, para expresar las relaciones que se pueden establecer
entre las variables del modelo. Por encima de esta clase est LogicalExpression,
que vincula dos relaciones lgicas en el esquema clsico
antecedente consecuente
El antecedente y el consecuente son objetos de la clase LogicalNode

Granada, 2003

4. Asimetras (XV)

C) LogicalExpression
Datos miembro:

Potential

LogicalExpression

a) LogicalNode consecuent
b) LogicalNode antecedent
c) int operator
d) Vector index
e) PotentialTable result

LogicalExpression
(operator)
LogicalNode
Vector
PotentialTable

LogicalNode
(antecedent)

LogicalNode
(consecuent)

Granada, 2003

4. Asimetras (XVI)

Mtodos:
a)
b)
c)
d)

Constructor (LogicalExpression, LogicalExpression)


Constructor (LogicalNode, LogicalNode, int)
evaluate
buildIndex

El resultado es un PotentialTable que contiene todas las configuraciones vlidas


segn esta restriccin. Del PotentialTable se puede pasar fcilmente a un
PotentialTree, de forma que se pueda incorporar a la evaluacin de DI mediante
rboles. Para mejorar el tratamiento de las restricciones se debera hacer una
poda del PotentialTree, de forma que se redujera al mximo su tamao y la
expresin de la restriccin fuera lo ms compacta posible.

Granada, 2003

4. Asimetras (XVII)

Expresin de restricciones en Elvira


Relation var1 var2 var3 var4{
kind=constraint;
values=logical-expression (var1 in {var11,var12} &
!(var2 in {var21} | var3 not in {var33}) ->
var4 in {var41});
}

Granada, 2003

4. Asimetras (XVIII)
D) Clase ARWPTAndConstraints

Propagation

- Constructores:
a) ARWPTAndConstraints(IDiagram)

ArcReversal

Mtodos

ARWPTAndConstraints

- Transformacin de relaciones
b) transformInitialRelations: Este mtodo
convierte los valores de utilidades y
de PotentialTable a PotentialTree (se
aplican las restricciones. Poda)
b) transformAfterOperation: Ve si es
necesario aplicar restricciones sobre
un potencial sobre el que se operado
(Poda)
Granada, 2003

4. Asimetras (XIX)
D) Clase VEWPTAndConstraints

Propagation

- Constructores:
a) VEWPTAndConstraints(IDiagram)

VariableElimination

VEWPTAndConstraints

- Transformacin de relaciones
b) transformInitialRelations: Este mtodo
convierte los valores de utilidades y
de PotentialTable a PotentialTree (se
aplican las restricciones. Poda)
b) transformAfterOperation: Ve si es
necesario aplicar restricciones sobre
un potencial sobre el que se operado
(Poda)
Granada, 2003

5.- Aproximacin
En problemas complejos, pese a aprovechar todo el
conocimiento
del
problema,
los
potenciales
obtenidos pueden
ser
enormes.
En
esta
situacin se puede aprovechar el uso de rboles
reduciendo el nmero de hojas mediante
aproximacin.
La idea consiste en organizar el rbol, de forma que
las variables ms significativas aparezcan cerca
de la raz del rbol; la realizacin de una poda debe
suponer la menor prdida posible de informacin

Granada, 2003

5. Aproximacin (II)

rboles de probabilidad:
medida de significacin: distancia de Kullback-Leibler
rboles de utilidad:
medida de significacin?: mtrica L2 (raz
cuadrada de las diferencias al cuadrado entre las
utilidades de las configuraciones en los rboles
podado y expandido)
x1 X x2
y1
100

y2 y1
35

x1 X x2
675

y2

53

y1 Y y2
545

66

97
Granada, 2003

5. Aproximacin (III)

x1 X x2
y1
100

y2 y1
35

x1 X x2
675

y2

53

97

67'5 100 67'5 35 53 9 53 97 77'35


2

y1 Y y 2
545

66

54'5 100 54'5 9 66 35 66 97 77'86


2

Granada, 2003

5. Aproximacin (IV)

Otra posible medida estara relacionada con la


proximidad de los nodos hoja. Se permite la poda en
el caso en que la distancia sea menor que un cierto
valor umbral.

x1 X x2
y1
100

y2 y1
97

x1 X x2
985

y2
63

y1
9

y2
63

Granada, 2003

5. Aproximacin (V)

Desligar los dos aspectos?


a) Reordenacin de variables, de forma que las ms
significativas aparezcan ms arriba (intento de reducir
la distancia de utilidad entre los nodos hoja). Esta
informacin podra usarse con fines de explicacin
b) Podas sobre nodos hoja. Slo se poda si hay
proximidad entre los valores (intento de modificar en
la menor medida la funcin de utilidad original)

Granada, 2003

6.- Simulacin
En desarrollo. Idea: abordar problemas muy complejos.
Se obtendr una poltica (no ptima), especialmente
relacionada con las situaciones ms usuales.

Granada, 2003

You might also like