the morven framework
DESCRIPTION
The Morven Framework. George M. Coghill. Motivation. To provide properly constructive, constraint based qualitative simulation Retain QR ethos To alleviate the problem of spurious behaviours General purpose QR Why a “Framework” No system is suitable for all situations - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/1.jpg)
George M. Coghill
The Morven Framework
![Page 2: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/2.jpg)
Motivation
• To provide properly constructive, constraint based qualitative simulation
• Retain QR ethos• To alleviate the problem of spurious behaviours• General purpose QR• Why a “Framework”
– No system is suitable for all situations– Permits testing and comparison of approaches– Consists in modular constituents
![Page 3: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/3.jpg)
Context
PredictiveAlgorithm
Vector Envisionment
FuSim
Qualitative
Reasoning
P.A. V.E.
QSIM
TQA & TCP
Morven
![Page 4: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/4.jpg)
Constituents
• Predecessors– Variables are represented as vectors– Models are distributed over differential planes– Fuzzy quantity spaces are utilised– Empirical knowledge can be incorporated.
• Specific to Morven– Transitions only generated for state variables– Constructive (assynchronous) simulation– Fuzzy Vector Envisionment– Different approach to prioritisation– Discrete time (synchronous) simulation
![Page 5: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/5.jpg)
Constiuents (2)
• Permits multi-dimensional comparisons• Constructive & Non-constructive
• Simulation & Envisionment
• Synchronous & Assynchronous
![Page 6: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/6.jpg)
The Morven Framework
ConstructiveNon-constructive
Simulation
Envisionment
Synchronous
Asynchronous
![Page 7: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/7.jpg)
Fuzzy Qualitative Reasoning
• Motivation
• Integration of qualitative and vague quantitative information - captured in the nature of fuzzy sets
• Ability to utilise and calculate temporal information in a qualitative simulator
• To include empirically derived information into a qualitative simulator
![Page 8: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/8.jpg)
• 4-tuple fuzzy numbers (a, b, )
• precise and approximate
• useful for computation
μ
a x
x a
x a x a a
x a b
b x x b b
x b
( )
( ) [ ]
[ ]
( ) [ ]
=
< −
− + ∈ −
∈
+ − ∈ +
> +
⎧
⎨
⎪⎪⎪
⎩
⎪⎪⎪
−
−
0
1
0
1
1
x
μA(x)
1
0 a x
(a)
μA(x)
1
0 a b x
(b)μA(x)
1
0 a- a xa+
(c)
μA(x)
1
0 a- b+a b
(d)
A convenient fuzzy representation
![Page 9: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/9.jpg)
Fuzzy Quantity Spaces
μA
(x)
10 x-1 0.2 0.4 0.6 0.8-0.8 -0.6 -0.4 -0.2
n-top n-large n-medium n-small zero p-small p-medium p-large p-top
μA
(x)
10 x-1 0.2 0.4 0.6 0.8-0.8 -0.6 -0.4 -0.2
0
![Page 10: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/10.jpg)
Curve Shapes
+ 0
0
+
_
_
d1d2
![Page 11: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/11.jpg)
Transition Rules• Intermediate Value Theorem (IVT)
– States that for a continuous system, a function joining two points of opposite sign must pass through zero.
• Mean Value Theorem (MVT)– Defines the direction of change of a variable between two points.
[++] [+o] [+-]
[o+] [oo] [o-]
[-+] [-o] [- -]
![Page 12: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/12.jpg)
Single Tank System
V
qi
qo
plane 0qO = kVV’ = qi - qO
plane 1q’O = kV’V’’ = q’i - q’O
plane 2q’’O = kV’’V’’’ = q’’i - q’’O
![Page 13: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/13.jpg)
Single Compartment System
plane 0k10x1 = k10.x1x1’ = u - k10x1
plane 1k10x1’ = k10.x1’x1’’ = u’ - k10x1’
plane 2k10x1’’ = k10.x1’’x1’’’ = u’’ - k10x1’’
1
u
k10.x1
![Page 14: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/14.jpg)
Models in Morven
(define-fuzzy-model <model_name>
(short-name <short_name_of_model>)
(variables <list-of [variable_name, bounds, quantity-space]>)
(auxiliary-variables <list-of auxiliary_variable_names>)
(input <list-of [input_name, bounds, quantity-space]>)
(constraints <list-of [differential_planes (list-of constraints)]>
(print <list-of variable_names>)
)
![Page 15: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/15.jpg)
A JMorven Modelmodel-name: single-tankshort-name: fst
NumSystemVariables: 2variable: qo range: zero p-max NumDerivatives: 1 qspaces: tanks-quantity-spacevariable: V range: zero p-max NumDerivatives: 2 qsapces: tanks-quantity-space tanks-quantity-space2
NumExogenousVariables: 1variable: qi range: zero p-max NumDerivatives: 1 qspaces: tanks-quantity-space
Constraints:NumDiffPlanes: 2
Plane: 0 NumConstraints: 2Constraint: func (dt 0 qo) (dt 0 V) NumMappings: 9Mappings:
n-max n-maxn-large n-largen-medium n-mediumn-small n-smallzero zerop-small p-smallp-medium p-mediump-large p-largep-max p-max
Constraint: sub (dt 1 V) (dt 0 qi) (dt 0 qo)
NumVarsToPrint: 3 VarsToPrint: V qi qo
![Page 16: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/16.jpg)
A JMorven Quantity Space NumQSpaces: 2
QSpaceName: tanks-quantity-spaceNumQuantities: 9
n-max -1 -1 0 0.1n-large -0.9 -0.75 0.05 0.15n-medium -0.6 -0.4 0.1 0.1n-small -0.25 -0.15 0.1 0.15zero 0 0 0 0p-small 0.15 0.25 0.15 0.1p-medium 0.4 0.6 0.1 0.1p-large 0.75 0.9 0.15 0.05p-max 1 1 0.1 0
QSpaceName: tanks-quantity-space2NumQuantities: 5
nl-dash -1 -0.75 0 0.15ns-dash -0.6 -0.15 0.1 0.15zero 0 0 0 0ps-dash 0.15 0.6 0.15 0.1pl-dash 0.75 1 0.15 0
![Page 17: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/17.jpg)
Possible States
state vector state vector1 + + + + 22 + - o +2 + + + o 23 + - o o3 + + + - 24 + - o -4 + + o + 25 + - - +5 + + o o 26 + - - o6 + + o - 27 + - - -7 + + - + 28 o + + +8 + + - o 29 o + + o9 + + - - 30 o + + -10 + o + + 31 o + o +11 + o + o 32 o + o o12 + o + - 33 o + o -13 + o o + 34 o + - +14 + o o o 35 o + - o15 + o o - 36 o + - -16 + o - + 37 o o + +17 + o - o 38 o o + o18 + o - - 39 o o + -19 + - + + 40 o o o +20 + - + o 41 o o o o21 + - + -
![Page 18: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/18.jpg)
Step Response
t
V
![Page 19: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/19.jpg)
Solution Space
21
147
30V
qi
![Page 20: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/20.jpg)
Soundness and Completeness
• Sound– Guarantees to find all possible behaviours of system
• Incomplete– Unfortunately also finds non-existent (spurious) behaviours
• Still useful for ascertaining that a dangerous state cannot be reached.
• Large research effort to remove spurious behaviours– we will skim the surfarce of the surface!
![Page 21: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/21.jpg)
Single Tank System: Ramp Input
V
qi
qo
t
qi
•Input: Stepped Ramp
plane 0qO = kVV’ = qi - qO
plane 1q’O = kV’V’’ = q’i - q’O
plane 2q’’O = kV’’V’’’ = q’’i - q’’O
![Page 22: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/22.jpg)
2 Element Vector Envisionment
State Vector21 + - +12 + 0 +3 + + +5 + + 07 + + -
30 0 + +32 0 + 034 0 + -
21 12 3
30
5
32
7
34
![Page 23: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/23.jpg)
3 Element Vector EnvisionmentState Vector21 + - + -12 + 0 + -3 + + + -5 + + 0 07 + + - +
30 0 + + -32 0 + 0 034 0 + - +
21 12 3
30
5
32
7
34
![Page 24: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/24.jpg)
Distinct Behaviours
t
V 21
12
3
7
3
5
32
34
30
![Page 25: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/25.jpg)
Solution Space
21
7
30
V
qi
123
5
32
34
![Page 26: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/26.jpg)
Total Solution Space: Single Compartment
u 0
u 1
d
1
,d
3
,d
2
x(0)
![Page 27: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/27.jpg)
Cascaded Systems
plane 0qx = k1.h1qo = k2.h2h1’ = qi - qxh2’ = qx - qo
plane 1qx’ = k1.h1’qo’ = k2.h2’h1’’ = qi’ - qx’h2’’ = qx’ - qo’
plane 2qx’’ = k1.h1’’qo’’ = k2.h2’’h1’’’ = qi’’ - qx’’h2’’’ = qx’’ - qo’’
Tank A
Tank B
1 2
u
k12.x1
k20.x2
h1
h2
qi
qx
qo
![Page 28: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/28.jpg)
Cascaded Systems Envisionment
1
11
12
6 2
0 10 13 9
8
7
5
3
4
State h1 h2 qx qo
0 [0 +] [0 0] [0 +] [0 0]1 [0 +] [+ -] [0 +] [+ -]2 [+ -] [0 +] [+ -] [0 +]3 [+ -] [+ -] [+ -] [+ -]4 [+ -] [+ 0] [+ -] [+ 0]5 [+ -] [+ +] [+ -] [+ +]6 [+ 0] [0 +] [+ 0] [0 +]7 [+ 0] [+ -] [+ 0] [+ -]8 [+ 0] [+ 0] [+ 0] [+ 0]9 [+ 0] [+ +] [+ 0] [+ +]10 [+ +] [0 +] [+ +] [0 +]11 [+ +] [+ -] [+ +] [+ -]12 [+ +] [+ 0] [+ +] [+ 0]13 [+ +] [+ +] [+ +] [+ +]
![Page 29: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/29.jpg)
Cascaded Systems Solution Space
h2
h1
h1’=0
h1’=0
111
12
6 2010
13 9
8
7
5
3
4
![Page 30: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/30.jpg)
Complete Solution Space: Cascaded Compartments
u 0
x 1
x 2
d11,d12,d13
d21
d22
d23
![Page 31: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/31.jpg)
Categorisation of Behaviours
Behaviours
SpuriousReal
Non-chatteringChatteringPotentialActual
![Page 32: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/32.jpg)
Fuzzy Set Theory and FQR
• Two main concepts: the cut and the Approximation principle
• The cutA = [p1, p2, p3, p4]
A= [p1+p3(p2+p4(1-
x
μ A ( )x
(a)
x
μ A (x)
α
(b)
![Page 33: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/33.jpg)
Representational Primitives
Arithmetic primitives
Operation Result Conditions
-n (-d, -c, δ,γ) alln
n
d c d d c c
, ,
( )
,
( )
δ
δ
γ
γ+ −
⎛
⎝
⎜
⎞
⎠
⎟
n >0
0 ,n <0
0
m+n (a+ ,cb+ ,dτ+γ,+δ) allm,nm-n (a- ,d -b c,τ+δ,+γ) allm,nm n× (ac,bd,aγ+cτ−τγ,bδ+d+δ) m n> >
0 0
0 0,
(ad,bc,dτ−aδ+τδ,−bγ+c−γ) m n< >0 0
0 0,
(bc,ad,bγ−c+γ,−dτ+aδ−τδ) m n> <0 0
0 0,
(bd,ac,-bδ−d−δ,−aγ−cτ+τγ) m n< <0 0
0 0,
m=[a,b,τ,],n=[c,d,γ,δ]
![Page 34: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/34.jpg)
Representational Primitives (2)
• Functional primitives– More specific than M+/- relations, though still
incomplete– Compiled (tabular) set of fuzzy if-then rules -
permits incusion of empirical information
• Derivative primitive
![Page 35: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/35.jpg)
The Approximation Principle
The Approximation principle facilitates the mapping of the result of a fuzzy operation onto the values in the quantity space of the result variable.A measure of the Goodness of Approximation is
achieved by means of a Distance Metric
d(A, A’) = [(power(A)-power(A’))2+(centre(A)-(centre(A’))2]0.5
power([a,b, = 0.5[2(a+b) + centre([a,b, = 0.5[a+b]
![Page 36: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/36.jpg)
Approximation Principle (2)
Propagated value
4 76 8 11 15
Predicted values
10 12 a
![Page 37: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/37.jpg)
Transition RulesGeneration Rules
(G1) If there exists a derivative,dtmk, such that dtmk is the first non-zero derivative which is a higher derivative than dtjk, then If dtmk>0(dtmk<0) Ifqi∈ℜ,then dtjk+=qi+(dtjk+=qi−) else dtjk+=[ ]qqi i∨+(dtjk+=[ ]qqi i∨−)( 2)G Ifallderivativeshigherthandtjk ,are zero orifj=,nthen dtjk+=[ ]qqqi i i− +∨∨ FilteringRules( )F Iflili>+<−( ),the n¬ok( the adjacencyfilte )r ( 2)F Ifthereexists a derivative,dtmk, sucht hatdtmk is thefirstnon- zero derivativewhichis a higherderivativet handtjk,andmn<,then Ifdtmk>0(dtmk<0), then Ifqi∈ℜ,then Iflili≤≥()then¬ok else Iflili<>()then¬ok
![Page 38: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/38.jpg)
Temporal CalculationsPersistence time, ΔTp:
If0∉+dn,then Δ T
W d
d
p
n
n
∈
+
( )
• calculates the end points of an interval
Relative Arrival time, ΔTa:
If 01∉+dnα, then [ ] [ ]
Δ T
L d U d
d
a
j
n
j
n
n
∈
−+
+
1
1
α α
α
Absolute Arrival time, TA:
TA
n
= Δ Tp
i
( d
n
)
i = 0
n − 1
∑+ Δ T
aj
( d
n
)
j = 1
n
∑
Absolute Departure time, TD:
TD
n
= TA
n
+ Δ Tp
n
TD
n + 1
= TD
n
® Δ Tp
n
+ Δ Tp
n , n + 1
![Page 39: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/39.jpg)
Fuzzy Vector Envisionment
T.A.Q.A.
Generate Filter
![Page 40: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/40.jpg)
Experimental Test
h
qi
qo
![Page 41: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/41.jpg)
Fuzzy Vector State Labels
State Fuzzy Vector State Fuzzy Vector State Fuzzy Vector
1 pt z z z 8 pl nm pm nm 14 pm nm pm nm
2 pt ns ps ns 9 pl nl pl nl 15 ps pl nl pl
3 pt nm pm nm 10 pm pm nm pm 16 ps pm nm pm
4 pt nl pl nl 11 pm ps ns ps 17 ps ps ns ps
5 pl ps ns ps 12 pm z z z 18 ps z z z
6 pl z z z 13 pm ns ps ns 19 ps ns ps ns
7 pl ns ps ns
![Page 42: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/42.jpg)
FVE Graph for a Step Input
34
9 8
14 13
171819
23
8 7
17 16
111213p-medium
p-small
p-large
p-max
p-mediump-small
2
11 10
16 15
567
1
11 10
16 15
5
p-maxp-largeqi
h
![Page 43: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/43.jpg)
Fuzzy Qualitative Behaviours
h
t
72
6
510
16p-small
p-medium
p-large
p-max
![Page 44: The Morven Framework](https://reader036.vdocuments.net/reader036/viewer/2022070418/56815a64550346895dc7a822/html5/thumbnails/44.jpg)
Cascaded SystemS
mal
l
Small
Lar
ge
Large
h2
h1
Sm
all
Small
Med
ium
Medium Large
Lar
geH
uge
Huge
h2
h1