RAZONAMIENTO BASADO EN MODELOS ... - infor.uva.esjvalvarez/docencia/cursodoctorado.pdf ·...

Post on 29-Oct-2018

219 views 0 download

Transcript of RAZONAMIENTO BASADO EN MODELOS ... - infor.uva.esjvalvarez/docencia/cursodoctorado.pdf ·...

1

RAZONAMIENTO BASADO EN MODELOS:RAZONAMIENTO CUALITATIVO

RAZONAMIENTOCUALITATIVO BASADO ENRESTRICCIONES

2

CONTENIDOSIntroducción al modelado basado en restriccionesLa variable cualitativa y su representación QV(f,t) bajo este paradigma

• Concepto de estado

Concepto de comportamiento cualitativo de un sistema• Formas de representación de comportamientos

Ecuaciones diferenciales cualitativas.• Definición• Restricciones cualitativas• Operadores de signo• Valores correspondientes• Condiciones asociadas a las restricciones cualitativas

Algoritmos de resolución de conjuntos de restricciones• Algoritmo de propagación. Definición. Ejemplo• Algoritmo de satisfacción de restricciones (CSP). Definición• Algoritmo Cfilter. Definición. Ejemplo

Algoritmo QSIM• Definición• Algoritmo del estado completo (SCA)• Filtros globales• Inconvenientes

3

PLANTEAMIENTO GENERAL

Modelo(Abstración)

Problema(Sistema delMundo real)

Conocimiento experto

InferenciaInformación

Ontología(Representación +

conjunto de operadores)

Simulación

4

MODELADO BASADO ENRESTRICCIONES: QSIM (KUIPER ´86)

Sistema realSistema real Conducta realConducta real

ODE ODE ∧∧ State (t State (t00)) ffii: : ℜℜ ℜℜ**

QDE QDE ∧∧ QState(t QState(t00)) BehBeh11…..Beh…..Behnn

solución numérica/analíticasolución numérica/analítica

simulación cualitativasimulación cualitativa

5

LA VARIABLE CUALITATIVA

Características de la variable cualitativa:

La variable cualitativa representa una función razonable, es decir,una función continuamente diferenciable.

f:R→R*

• Donde R* es la línea de los reales extendida.• F es una función dependiente del tiempo (parámetro global)

No debe presentar oscilaciones infinitas alrededor de un punto.

6

REPRESENTACIÓN FORMAL DEL VALOR DEUNA VARIABLE CUALITATIVA

El valor de una variable cualitativa f(t) para un instante de tiempo dado,QV(f,t), con respecto del espacio de medida l1<l2<....<lk se representamediante <qmag,qdir>, donde:

qmag=• lj si f(t)=lj (un landmark) y t es un punto distinguible de tiempo.• (lj, lj+1) si f(t)∈(lj,lj+1) (un intervalo abierto.)

qdir=• inc si f´(t)>0• std si f´(t)=0• dec si f´(t)<0

QSIM (qmag) Signos QSIM (qdir) Símbolos(0,∞) [+] inc ↑

0 [0] std θ(-∞,0) [-] dec ↓(-∞, ∞) [?] ign *

7

LANDMARKS Y PUNTOS LÍMITES

Un landmark bajo esta representación puede ser:• Un valor crítico de una variable

– f´(t)=0 cuando f(t)=lj donde lj es un landmark.

• Un punto límite que define el cambio de una región decomportamiento a otra (transición).

• Un valor inicial de una variable cualitativa.

• Para la variable tiempo los valores landmark sedenominan puntos distinguibles de tiempo

– (ti tal que f(ti)=lj donde lj es un landmark de f ).

8

REPRESENTACIÓN DE UN COMPORTAMIENTOPARA UNA SÓLA VARIABLE

El comportamiento cualitativo de una variable f es la secuencia devalores cualitativos de f definido de la siguiente forma:

QV(f,to), QV(f,(to,t1)), QV(f,t1),...., QV(f,(tn-1,tn)), QV(f,tn)

Ejemplo:Df: -∞......0......A.......B....... ∞ (dominio de valores de f)

f(t): <B,dec>→<(A,B),dec> →<A,std> →<(A,B)inc> →<B,inc>

9

REPRESENTACIÓN CUALITATIVA DE UNCOMPORTAMIENTO CONTINUO

f

t

A

B

t0 t1 t2

f(t)=<B,↓>, <(A,B), ↓ >, <A,θ>,<(A,B), ↑>,<B, ↑>

QV(f,t0)=<B,↓>QV(f,(t0,t1))=< (A,B), ↓ >QV(f,t1)=< A,θ>QV(f,(t1,t2))=<(A,B), ↑>QV(f,t2)=< B, ↑>

10

CONCEPTO DE ESTADO

Dado un sistema definido por un conjunto F={f1,.......,fm} de funcionesrazonables tal que fj:ℜ→ℜ*, el estado cualitativo de dicho sistemaviene definido por una tupla de la siguiente forma:

QS(F,ti)=<QV(f1,ti), QV(f2,ti),...,QV(fm,ti)>

QS(F,(ti,ti+1))=<QV(f1,(ti,ti+1)), QV(f2,(ti,ti+1)),...., QV(fm,(ti,ti+1))>

11

CONCEPTO DE COMPORTAMIENTO

El concepto de comportamiento bajo esta nueva perspectiva vienedefinido como una secuencia alternada de estados que tienen lugarsobre puntos distinguibles de tiempo o intervalos abiertos de tiempo:

QS(F,to), QS(F,(to,t1)), QS(F,t1),...., QS(F,(tn-1,tn)), QS(F,tn)

12

FORMAS DE REPRESENTACIÓN DE LOSCOMPORTAMIENTOS DEL SISTEMA

Este paradigma de modelado permite dos formas posibles derepresentación para los comportamientos del sistema:

Árbol de comportamientos (modo de simulación dinámico normal).

Grafo de comportamientos

13

ÁRBOL DE COMPORTAMIENTO

Dadas las EDQ y un estado inicial la simulación cualitativa se resuelveobteniendo de forma repetitiva todos los posibles estados sucesores auno dado.

Los comportamientos aparecen representados por los distintoscaminos que se pueden describir desde la raíz a las hojas del árbol.

t0 t0,t1 t1 t1,t2 t2

14

GRAFO DE COMPORTAMIENTO(Total Envisionment)

El grafo de comportamientos o predicción global (Total Envisionment):consiste en, dadas las EDQ, obtener todos los posibles estados ytransiciones entre ellos.Los distintos caminos que configuran el grafo representan los distintoscomportamientos del sistema.

X=<(0,∞),↑>V=<(0,∞),↓>A=<(-∞,0),↓>

X=<(0,∞),θ>V=<0,↓>A=<(-∞,0), θ >

X=<(0,∞), ↓ >V=<(-∞,0),↓>A=<(-∞,0), ↑ >

X=<0,↑>V=<(0, ∞ ), θ >A=<0,↓>

X=<(-∞,0),↑>V=<(0,∞), ↑ >A=<(0,∞),↓>

X=<(-∞,0), θ >V=<0, ↑ >A=<(0,∞ ), θ >

X=<(-∞,0 ),↓>V=<(-∞,0),↑>A=<(0,∞ ), ↑ >

X=<0, ↓ >V=<(0, ∞ ), θ >A=<0, ↑ >

X=<0, θ >V=<0, θ >A=<0, θ >

Predicción globalPara el problema del muelle

15

GRAFO DE COMPORTAMIENTO(Attainable Envisionment)

La “predicción vía un estado inicial” (attainable envisionment): es elsubconjunto de estados de la predicción global que son alcanzables apartir de un estado inicial dado.

A esta representación se puede acceder cambiando sólo unos pocosaspectos respecto del modo normal de simulación dinámica:

• No se crean nuevos landmarks• Se emplea el criterio débil para la detección de comportamientos cíclicos.• Las transiciones entre estados no se dan ya entre estados sucesores sino entre

cualquiera de los estados que componen el árbol.

El tamaño de la “predicción vía un estado inicial” depende de lainformación que demos sobre el estado inicial:

• Llega a ser igual al del visionado global cuando no se da información alguna sobre elestado inicial.

16

ECUACIONES DIFERENCIALESCUALITATIVAS (EDQ)

Una ecuación diferencial cualitativa (EDQ) es una tupla decuatro componentes <V,Q,C,T> definidas de la siguienteforma:

V es un conjunto de variables cada una de las cuales es unafunción razonable del tiempo.Q es un conjunto de espacios de medida, uno por cadavariable en V.C es un conjunto de restricciones aplicadas a las variables enV.T es un conjunto de transiciones las cuales son reglas quedefinen los límites de validez de las QDE.

17

RESTRICCIONES CUALITATIVAS

Las relaciones entre las variables cualitativas se expresanmediante restricciones cualitativas.

Entre las más usuales cabe destacar las siguientes:

Relaciones matemáticas:• (add x y z) → x(t)+y(t)=z(t)• (mult x y z) → x(t)*y(t)=z(t)• (minus x y z) → x(t)-y(t)=z(t)• (d/dt x y ) → dx(t)/dt=y(t)• (constant x ) → dx(t)/dt=0

Relaciones funcionales• (M+ x y) → y(t)=f(x(t)), f∈M+

• (M- x y) → y(t)=-f(x(t)), f∈M+

18

OPERADORES QUE EVALÚAN EL SIGNODE UNA VARIABLE CUALITATIVA

Operadores de signo:[x]0= signo(x) =[+] si x>0

=[0] si x=0 =[-] si x<0

[x]x0=signo(x-xo) donde xo represente en valor de referencia.[x´]=[dx/dt]=sign(dx/dt)[x]∞ = [+] si x=∞

= [0] si x es una valor finito = [-] si x=-∞

etc...

19

VALORES CORRESPONDIENTES

Tupla de valores landmark que toman, en un instante de tiempo dado,todas las variables implicadas en una restricción.

Debido a que los espacios de medida de las distintas variables cualitativasno están relacionados entre sí, los valores correspondientes introducennueva información que permite vincular dichos espacios entre sí.

Ejemplo:((M+ amount level) (0 0) (full top) (inf inf))

20

DESCOMPOSICIÓN DE LAS EDO EN SUSCORRESPONDIENTES EXPRESIONES CUALITATIVAS

EDO:

(d2u/dt2)=-ku donde u=f(t) (M.A.S.)

EDQ: (abstracción estructural de las EDO)v1=du/dt → (d/dt u v1)v2=dv1/dt → (d/dt v1v2)v2=-ku → ((M- u v2) (minf inf) (0 0) (inf minf))

21

CONDICIONES ASOCIADAS A LASRESTRICCIONES CUALITATIVAS

Cada restricción cualitativa en QSIM lleva asociado unconjunto de condiciones {P1,.....,P2}

Para poder rechazar una asignación de valores asociadosa las variables cualitativas que aparecen en la restricciónsólo es necesario que se cumpla:

¬P1 ∨ ¬P2 ∨..... ∨ ¬Pn → ¬Ai

22

CONDICIONES ASOCIADAS A LASFUNCIONES MONOTÓNICAS

Funciones monotónicas

((M+ x y) ....... (xi yi) ......)• [dx/dt]=[dy/dt]• [x]xi=[y]yi

((M- x y) ....... (xi yi) ......)• [dx/dt]=-[dy/dt]• [x]xi=-[y]yi

23

CONDICIONES ASOCIADAS A LASUMA CUALITATIVA

Suma cualitativa

((add x y z) ....... (xi yi zi) ......)• [dx/dt]+[dy/dt]=[dz/dt]• [x]xi+[y]yi=[z]zi

• [x]∞ +[y]∞ =[z]∞ donde [x]∞=

– [+] si x= ∞– [0] si x= Valor finito– [-] si x= -∞

add [+] [0] [-][+] [+] [+] [+]/[0]/[-][0] [+] [0] [-][-] [+]/[0]/[-] [-] [-]

24

CONDICIONES ASOCIADAS A LAMULTIPLICACIÓN CUALITATIVA

Multiplicación cualitativa

((mult x y z) ....... (xi yi zi) ......)

• [x]0[y]0=[z]0

• [y] 0[dx/dt]+[dy/dt][x]0 =[dz/dt],– si [x]0=[y]0=[+] entonces [dx/dt]+[dy/dt] =[dz/dt],

• [abs(x)]abs(xi)+[abs(y)]abs(yi)=[abs(z)]abs(zi)

mult [+] [0] [-][+] [+] [0] [-][0] [0] [0] [0][-] [-] [0] [+]

25

CONDICIONES ASOCIADAS A LANEGACIÓN CUALITATIVA

Negación cualitativa

((minus x y) ....... (xi yi) ......)• [dx/dt]=-[dy/dt]• [x]xi=-[y]yi

26

CONDICIONES ASOCIADAS A LADERIVADA CUALITATIVA

Derivada cualitativa

(d/dt x y)• [dx/dt]=[y]0

27

ALGORITMOS DE RESOLUCIÓN DECONJUNTOS DE RESTRICCIONES

Algoritmo de Propagación

Algoritmo de Satisfacción de Restricciones (CSP)

28

EL ALGORITMO DE PROPAGACIÓN

Propagar las descripciones cualitativas desde unavariable a otra a través de las restricciones que lasconectan.

Cada restricción puede ser considerada como unprocesador local que tiene acceso a los valores de lasvariables que aparecen en dicha restricción.

Una representación gráfica ayuda a seguir el procesode propagación.

29

CONDICIÓN DE APLICABILIDAD DELALGORITMO DE PROPAGACIÓN

Para poder aplicar el algoritmo de propagación es necesario que todasmenos una de las variables involucradas en una restricción tengan unvalor definido.

En general la propagación local es posible cuando las restricciones delsistema pueden ser escritas como sigue:

x1=c;x2=f1(x1);x3=f2(x1, x2);Etc…

• Donde f1, f2 representan expresiones explicitas que pueden ser evaluadas.En caso contrario es mejor aplicar CSP.

30

INCONVENIENTES DEL ALGORITMODE PROPAGACIÓN

El problema de dicho algoritmo es que la propagación sepuede ver bloqueada por la configuración de lasrestricciones que definen el sistema.

Ejemplo: divisor de tensión (valores iniciales: v1=[+], v3=[0]).

– [R1]=[+]– [R2]=[+]– I1=I2

– I1*R1=v1-v2

– I2*R2=v2-v3

31

EJEMPLO DE PROPAGACIÓN

Problema de los dos tanques

pressureA pressureB

flowAB

amountA

amountB

32

EDQ PARA EL PROBLEMA DE LOSDOS TANQUES

(define-QDE U-tube(quantity-spaces

(amt A (0 Amax inf))(PressureA (0 inf))(amtB (0 Bmax inf))(PressureB (0 inf))(pAB (minf 0 inf))(flowAB (minf 0 inf))(-flowAB (minf 0 inf))(total (0 inf)))

(constraints((M+ amtA pressureA) (0 0) (inf inf))((M+ amtB pressureB) (0 0) (inf inf))((add pAB pressureB pressureA))((M+ pAB flowAB)) (minf minf) (0 0) (inf inf))((minus flowAB -flowAB))((d/dt amtB flowAB))((d/dt amtA -flowAB))((add amtA amtB total))((constant total)))

(transitions((amtA (Amax inc)) -> tank-A-overflow)((amtB (Bmax inc)) -> tank-B-bursts)))

33

DETERMINACIÓN DEL ESTADOINICIAL

Condiciones iniciales:

t=t0 amtA = <Amax ?> (tanque A lleno)amtB = <0 ?> (tanque B vacío)

34

REPRESENTACIÓN GRÁFICA DELALGORITMO DE PROPAGACIÓN

12

3

3

4

5

66

7 7

8

9

amtA↓

amtB↑

Amax

(0,∞) ↓

(0,∞) ↓

(0,∞) ↓

(0) ↑

(0)

(0,∞) θ

35

PROPAGACIÓN PASO A PASO PARA LADETERMINACIÓN DEL ESTADO INICIAL

COMPLETO

1. (M+ amtB pressureB) (0 0) ⇒ pressureB = <0, ?>2. (M+ amtA pressureA) entre (0 0) y (inf inf) ⇒ pressureA = <(0 ∞), ?>3. (add pAB pressureB pressureA) ⇒ pAB = <(0 ∞), ?>4. (add amtA amtB total) ⇒ total = <(0 ∞), ?>5. (M+ pAB flowAB) ⇒ flowAB = <(0 ∞), ?>6. (d/dt amtA -flowAB) (d/dt amtB flowAB)

• ⇒ amtA =<Amax, dec>• ⇒ amtB =<0, inc>

7. (M+ amtA pressureA) (M+ amtB pressureB) • ⇒ pressureA = <(0 ∞), dec>• ⇒ pressureB = <0 , inc>

8. (add pAB pressureB pressureA)• ⇒ pAB = <(0 ∞) , dec >

9. (M+ pAB flowAB)• ⇒ flowAB = <(0 ∞), dec >

36

ESTADO INICIAL (t=t0)

⇒ amtA =<Amax, dec>⇒ amtB =<0, inc>⇒ pressureA = <(0 ∞), dec>⇒ pressureB = <0, inc>⇒ pAB = <(0 ∞), dec >⇒ flowAB = <(0 ∞), dec >

37

ALGORITMO DE SATISFACCIÓN DERESTRICCIONES (CSP), DEFINICIÓN

Dado un problema definido por la tupla <V,D,P>,donde:

V ={v1, …., vn} es un conjunto de varibles.D={D1, ….., Dn} tal que cada Di representa el posible dominiode valores correspondiente a cada variable vi.P={P1, ….., Pm}, es un conjunto de restricciones donde cada Pjhace referencia a las relaciones entre un subconjunto devariables en V.

La solución mediante CSP de <V,D,P> representaun conjunto de asignaciones para las V.

38

ALGORITMO DE SATISFACCIÓN DERESTRICCIONES (CSP)

Dado un problema definido por la tupla <V,D,P>

1. Generación de cada uno de las posibles asignaciones <x1,...,xn> para lasvariables en V.

2. Comprobación de cada una de estas asignaciones frente a cada una de lasrestricciones, descartando aquellas que sean inconsistentes respecto deestas últimas.

3. Devolver el conjunto de asignaciones que no hayan sido descartadas.

39

INCONVENIENTES DEL CSP

Es intratable excepto para los casos más sencillos.

Cálculo del número de asignaciones:

Producto cartesiano de los dominios de valores de cada variable: Si disponemos de “n” variables y el dominio de cada variable tiene untamaño “d” el número de asignaciones sería del orden de dn.

40

SOLUCIÓN PARA EL CSP

Emplear la información del estado inicial para poder restringir losdominios de las variables implicadas mediante las reglas de estadossucesores de esta forma el número de estados que se generan esmucho menor (subespacio del producto cartesiano).

41

ALGORITMO DUAL DE WALTZ(WALTZ ´72)

Este algoritmo analiza, mediante un grafo, la consistencia tanto dearco como de nodo.

En dicho grafo los nodos contienen las restricciones y los arcos queunen dichos nodos representan las variables implicadas.

La consistencia de nodo considera p-tuplas de valores para lasvariables asociadas a la restricción, rechazando aquellas que seaninconsistentes con respecto a estas últimas.

La consistencia de arco garantiza que las tuplas asignadas a dosnodos adyacentes presentan los mismos valores para variablescompartidas.

42

ALGORITMO CFILTER

Dado una EDQ y su dominio de conocimiento elCSP es resuelto de la siguiente forma:

1. Restricción del dominio. Para cada variable vi se determina sudominio de valores a través de un conjunto de reglas que definenlos posibles estados sucesores a uno dado (state-successor rules).

2. Consistencia de Nodos.3. Consistencia de Arco.4. Búsqueda Exhaustiva. Genera todas las posibles asignaciones a

partir de las tuplas que no han sido rechazadas (algoritmo debacktracking).

43

REGLAS PARA DEFINIR LOSESTADOS SUCESORES

Puesto que nuestras variables son funcionescontinuamente diferenciables sólo existenunas pocas relaciones para poder establecer losposibles valores cualitativos sucesores a partir deuno dado.

44

TIPOS DE ESTADOS SUCESORES

t0 t1 t2

Lj+1

Lj

Lj-1

De punto a intervaloP-sucesores

t0 t1 t2

Lj+1

Lj

Lj-1

De intervalo a puntoI-sucesores

45

REGLAS DE DEFINICIÓN DE LOSESTADOS SUCESORES

QV(v,ti) QV(v,ti,,ti+1)

<lj, std> <lj, std>

<lj, std> <(lj, lj+1), inc>

<lj, std> <(lj-1, lj), dec>

<lj, inc> <(lj, lj+1), inc>

<lj, dec> <(lj-1, lj), dec>

<(lj, lj+1), inc> <(lj, lj+1), inc>

<(lj, lj+1), dec> <(lj, lj+1), dec>

<(lj, lj+1), std> <(lj, lj+1),std>

<(lj, lj+1), std> <(lj, lj+1), inc>

<(lj, lj+1), std> <(lj, lj+1), dec>

P - Sucesores:de punto a intervalo

QV(v,ti,,ti+1) QV(v,ti+1)

<lj, std> <lj, std>

<(lj, lj+1), inc> <lj+1, std>

<(lj, lj+1), inc> <lj+1, inc>

<(lj, lj+1), inc> <(lj, lj+1), inc>

<(lj, lj+1), inc> <(lj, lj+1), std>

<(lj, lj+1), dec> <lj, std>

<(lj, lj+1), dec> <lj, dec>

<(lj, lj+1), dec> <(lj, lj+1), dec>

<(lj, lj+1), dec> <(lj, lj+1), std>

<(lj, lj+1), std> <(lj, lj+1), std>

I - Sucesores: de intervalo a punto

46

INTERPRETACIÓN DE LOSP-SUCESORES

QV(v,ti) QV(v,ti,,ti+1)

<lj, std> <lj, std>

<lj, std> <(lj, lj+1), inc>

<lj, std> <(lj-1, lj), dec>

<lj, inc> <(lj, lj+1), inc>

<lj, dec> <(lj-1, lj), dec>

<(lj, lj+1), inc> <(lj, lj+1), inc>

<(lj, lj+1), dec> <(lj, lj+1), dec>

<(lj, lj+1), std> <(lj, lj+1),std>

<(lj, lj+1), std> <(lj, lj+1), inc>

<(lj, lj+1), std> <(lj, lj+1), dec>

P - Sucesores:de punto a intervalo

Interpretación

No hay cambio

Cambio con incremento

Cambio con decremento

Evolución de un punto límite

Evolución de un punto límite

No hay cambio

No hay cambio

No Hay cambio (nuevo landmark)

Cambio con incremento(nuevo landmark)

Cambio con decremento (nuevo landmark)

47

INTERPRETACIÓN DE LOSI-SUCESORES

QV(v,ti,,ti+1) QV(v,ti+1)

<lj, std> <lj, std>

<(lj, lj+1), inc> <lj+1, std>

<(lj, lj+1), inc> <lj+1, inc>

<(lj, lj+1), inc> <(lj, lj+1), inc>

<(lj, lj+1), inc> <(lj, lj+1), std>

<(lj, lj+1), dec> <lj, std>

<(lj, lj+1), dec> <lj, dec>

<(lj, lj+1), dec> <(lj, lj+1), dec>

<(lj, lj+1), dec> <(lj, lj+1), std>

<(lj, lj+1), std> <(lj, lj+1), std>

I - Sucesores: de intervalo a punto

Interpretación

No hay cambio

Evolución hacia un landmark

Evolición hacia un punto límite

No hay cambio

Evolución hacia un nuevo landmark

Evolución hacia un landmark

Evolución hacia un punto límite

No hay cambio

Evolución hacia un nuevo landmark

No hay cambio

48

EJEMPLO: ALGORITMO CFILTERPARA EL CASO DE UN TANQUE

inflow

outflow

netflowamount

49

RESTRICCIONES PARA ELPROBLEMA DE UN TANQUE

(define-QDE Minimal-Bathtub(quantity-spaces

(amount (0 full inf))(outflow (0 inf))(inflow (0 if* inf))(netflow (minf 0 inf)))

(constraints((M+ amount outflow) (0 0) (inf inf))((add netflow outflow inflow))((d/dt amount netflow))((constant inflowl)))

(transitions((amount (full inc)) -> tank-overflow)

50

PASO 0: DEFINICIÓN DE LASCONDICIONES INICIALES

t0

t0,t1

amount ⟨0, ↑⟩ ⟨(0,full), ↑⟩,

outflow ⟨0, ↑⟩ ⟨(0, ∞), ↑⟩

inflow {⟨if*, θ⟩}

{⟨if*, θ⟩}

netflow ⟨(0, ∞), ↓⟩ ⟨(0, ∞), ↓⟩

51

PASO 1: RESTRICCIÓN DELDOMINIO

Para el instante t1, y según las reglas de definición del estado sucesor,las variables implicadas sólo podrán tomar los siguientes valores:

t1

amount {⟨full, ↑⟩, ⟨full, θ⟩, ⟨(0,full), ↑⟩, ⟨(0, full), θ⟩}

outflow {⟨∞, ↑⟩, ⟨∞, θ⟩, ⟨(0, ∞), ↑⟩, ⟨(0, ∞), θ⟩}

inflow {⟨if*, θ⟩}

netflow {⟨0, ↓⟩, ⟨0, θ⟩, ⟨(0, ∞), ↓⟩, ⟨(0, ∞), θ⟩}

52

PASO 2: CONSISTENCIA DE NODO

Para cada restricción formamos todas las tuplas de posibles valores desus variables y las enfrentamos con la definición de cada restricción.

(constraints((M+ amount outflow) (0 0) (inf inf))((add netflow outflow inflow))((d/dt amount netflow))((constant inflow)))

53

PASO 2: CONSISTENCIA DE NODO((M+ amount outflow) (0 0) (inf inf))

1. Viola el hecho de que [d(amount)/dt]=[d(outflow)/dt]2. Violan el valor correspondiente (inf inf)

amount outflow

⟨full, ↑⟩ ⟨full, θ⟩ ⟨(0,full), ↑⟩ ⟨(0, full), θ⟩

⟨∞, ↑⟩ X2 X1,2 X2 X1,2

⟨∞, θ⟩ X1,2 X2 X1,2 X2

⟨(0, ∞), ↑⟩ X1 X1

⟨(0, ∞), θ⟩ X1 X1

54

PASO 2: CONSISTENCIA DE NODO((add netflow outflow inflow))

dando por hecho de que inflow=<if* θ>

3. Viola el hecho de que [d(netflow)/dt]+[d(outflow)/dt]=[d(inflow)/dt]4. A partir de [x]∞+[y]∞=[z]∞ se obtiene [+]+[0]≠[0] .

netflow outflow

⟨0, ↓⟩ ⟨0, θ⟩ ⟨(0,∞), ↓⟩ ⟨(0, ∞), θ⟩

⟨∞, ↑⟩ X4 X3,4 X4 X3,4

⟨∞, θ⟩ X3,4 X4 X3,4 X4

⟨(0, ∞), ↑⟩ X3 X3

⟨(0, ∞), θ⟩ X3 X3

55

PASO 2:CONSISTENCIA DE NODO((d/dt amount netflow))

5. Viola el hecho de que [d(amount)/dt]=[netflow]0

amountnetflow

⟨full, ↑⟩ ⟨full, θ⟩ ⟨(0,full), ↑⟩ ⟨(0, full), θ⟩

⟨0, ↓⟩ X5 X5

⟨0, θ⟩ X5 X5

⟨(0, ∞), ↓⟩ X5 X5

⟨(0, ∞), θ⟩ X5 X5

56

PASO 3 CONSISTENCIA DE ARCO ((M+ amount outflow) (0 0) (inf inf))

Amount Outflow

⟨full, ↑⟩ ⟨(0, ∞ ), ↑⟩

⟨full, θ⟩ ⟨(0, ∞ ), θ⟩

⟨(0,full), ↑⟩ ⟨(0, ∞ ), ↑⟩

⟨(0,full), θ⟩ ⟨(0, ∞ ), θ⟩

57

PASO 3 CONSISTENCIA DE ARCO ((add netflow outflow inflow))

Netflow Outflow

⟨0, ↓⟩ ⟨(0, ∞ ), ↑⟩

⟨0, θ⟩ ⟨(0, ∞ ), θ⟩

⟨(0, ∞), ↓⟩ ⟨(0, ∞ ), ↑⟩

⟨(0, ∞), θ⟩ ⟨(0, ∞ ), θ⟩

58

PASO 3: CONSISTENCIA DE ARCO((d/dt amount netflow))

Amount Netflow

⟨full, ↑⟩ ⟨(0,∞), ↓⟩

⟨full, ↑⟩ ⟨(0,∞) θ⟩

⟨full, θ⟩ ⟨0, ↓⟩

⟨full, θ⟩ ⟨0, θ⟩

⟨(0, full), ↑⟩ ⟨(0,∞), ↓⟩

⟨(0, full), ↑⟩ ⟨(0,∞), θ⟩

⟨(0, full), θ⟩ ⟨0,↓⟩

⟨(0, full), θ⟩ ⟨0,θ⟩

59

PASO 3: CONSISTENCIA DE ARCO

Todas las tuplas supervivientes satisfacen el test de consistencia dearco.

60

PASO 4: BÚSQUEDA EXHAUSTIVA

A partir de los valores de las tuplas supervivientes, podemos haceruna búsqueda exhaustiva hacia atrás creando todos los conjuntos deasignaciones globales consistentes.

1 2 3 4

amount ⟨full, ↑⟩ ⟨full, θ⟩ ⟨(0,full),↑⟩ ⟨(0, full), θ⟩

outflow ⟨(0, ∞),↑⟩, ⟨(0, ∞), θ⟩ ⟨(0, ∞),↑⟩ ⟨(0, ∞), θ⟩

inflow ⟨if*, θ⟩ ⟨if*, θ⟩ ⟨if*, θ⟩ ⟨if*, θ⟩

netflow ⟨(0, ∞), ↓⟩ ⟨0, θ⟩ ⟨(0, ∞), ↓⟩ ⟨0, θ⟩

61

FILTRADO GLOBAL

La solución 3 se descarta por no representar ningún cambio.

Los estados 1,2 y 4 se consideran como posibles estados del sistema parael instante t1.

El estado 1 representa una transición a otro régimen de operación.

Los estados 2 y 4 representan estados equiescentes.

62

ÁRBOL DE COMPORTAMIENTOS

Árbol de comportamientos obtenido para el modelo de un tanque

t0 t0,t1 t1

QS1(F,t0), QS1(F,(t0,t1)),QS1(F,t1)

QS2(F,t0), QS2(F,(t0,t1)),QS2(F,t1)

QS3(F,t0), QS3(F,(t0,t1)),QS3(F,t1)

63

COMPORTAMIENTO 1

t0 t1

inf

full

Amount

t0 t1

inf

Netflow

t0 t1

inf

If*

Inflow

t0 t1

inf

o-2

outflow

N-0N-1

minf

64

COMPORTAMIENTO 2

t0 t1

inffull

Amount

t0 t1

inf

Netflow

t0 t1

inf

If*

Inflow

t0 t1

inf

o-0

outflow

N-0

A-0

minf

65

COMPORTAMIENTO 3

t0 t1

inf

full

Amount

t0 t1

inf

Netflow

t0 t1

inf

If*

Inflow

t0 t1

inf

o-1

outflow

N-0

minf

66

CONDUCTAS REALES PARA ELPROBLEMA DEL TANQUE

……….

Rebosa

lleno

Estado inicial

67

ALGORITMO ASOCIADO A QSIMAlgoritmo QSIM:

Dado una EDQ y su dominio de conocimiento parcial,QSIM predice el conjunto de posiblescomportamientos cualitativos {Beh1, ...Beh2} de lasiguiente forma:

68

ALGORITMO ASOCIADO A QSIM1. Inicializa la agenda:

Con el conjunto de estados iniciales completos usando para ello el SCA (State-Completion Algorithm).

2. Si la agenda está vacía o si los recursos son excedidos el algoritmo para.Los caminos definidos desde la raíz hasta las hojas describen los distintoscomportamientos.En cualquier otro caso sacamos un estado S de la agenda.

3. Algoritmo CFilter:Para cada variable vi en las EDQ se determinan los posibles valores sucesores aQV(vi,S). Estos son interpretados como dominios de restricción por el algorimo Cfilter.Determinar todo los posibles estados sucesores {S1, ..,Sk} consistentes con losdominios restringidos y con las QDE.

4. Si S es un estado que representa un intervalo de tiempo el algoritmo eliminatodos los estados sucesores Si cuyos valores son idénticos con dicho estados(no change filter).

5. Para cada Si se establecen las relaciones de sucesores (S, Si) y predecesores(Si,S). Inserción en el árbol de comportamientos de los nuevos estados.

6. Se aplican los filtros globales a cada estado sucesor de Si.7. Se añade cada posible estado sucesor a la agenda.

Un nuevo estado sucesor Si creado es añadido a la agenda a menos que seadeclarado por un filtro global como: inconsistente(SI), Quiescente(Si), Cíclico(Si),Transición(Si), o que t=∞ en Si.

8. Se continua a partir del paso 2.

69

ALGORITMO DEL ESTADOCOMPLETO (SCA)

SCA: (State Completion Algorithm)

Algoritmo que permite describir si un estado es completo o no.

Estado completo:• Un estado es completo si cada variable de dicho estado posee un

valor tanto para su magnitud cualitativa como para su direcciónde cambio cualitativa.

70

ALGORITMO DEL ESTADOCOMPLETO (SCA) PASO A PASO

1. Dada la descripción de un estado S:Si S es completo. Finaliza el algoritmo. Se afirma Complete(S) .

2. Se aplica propagación para obtener una más completa descripciónde S

Si S es completo. Finaliza el algoritmo. Se afirma Complete(S).

3. Aplicamos el algoritmo Cfilter para derivar todos los posiblesestados {S1, ..., Sn} que son completos a partir de la informacióndisponible.

Se afirma que el conjunto de estados generados de esta forma escompleto, Completion(S, Si) además de afirmarlo para cada Si.

71

FILTROS GLOBALES

Estos filtros nos permiten:

Determinar la inconsistencia de un estado que no es visible através de las restricciones.

Hacer una descripción más específica de un estado, sin perdidade validez o generalidad, a través de la inclusión de nuevoslandmarks o identificando nuevos valores correspondientes.

72

TIPOS DE FILTROS GLOBALES

Hay dos tipos de filtros globales: filtros de estado yfiltros de comportamiento.

Los filtros de estado tienen carácter local considerando sólola información del estado actual bajo estudio y tal vez de supredecesor inmediato.

Los filtros de comportamiento consideran la informaciónglobal sobre un comportamiento completo que finaliza en elestado actual.

73

MODELADO BASADO ENRESTRICCIONES: QSIM

Filtros Globales:Filtros de estado.

Filtro “No change”.Filtro de valores infinitos.Filtro de estados quiescentes.Filtro para la creación de nuevos landmarks.Filtro para la creación de nuevos valores correspondientes.Filtro de reconocimiento de comportamientos cíclicos.Filtro para la identificación de las transiciones entre regiones de operación.Filtro de las derivadas de orden superior.

Filtros de comportamiento.Restricción sobre funciones analíticas.Restricción sobre la no intersección.Restricción sobre la energía global.Uso de otras informaciones cualitativas.

74

INCONVENIENTE: GENERACIÓN DEESTADOS ESPÚREOS

Los estados espúreos son aquellos estados que satisfaciendo lasrestricciones no representan ningún estado físico posible.

Ejemplo del muelleLos valores iniciales de las variables del sistema hacen referencia a la energíatotal de éste.En esos puntos el valor de la energía está definido (valores landmarks).Cuando el sistema evoluciona hacia un intervalo abierto el valor de la energíadeja de estar definido para convertirse en un intervalo de valores.Esta incertidumbre en el valor de la energía se propaga a lo largo de lasimulación dando lugar a la aparición de los estados espúreos.

Solución:inclusión explícita de nuevas restriccionesmodelado semicuantitativoetc...