An Incremental Constraint Satisfaction Algorithm for Dynamic Reconfiguration
Sina Entekhabi Ahmet Serkan Karataş Halit Oğuztüzün ODTÜ, Ankara IZTECH Dependability, 8 May 2017
Supported by TÜBİTAK-ARDEB-1001 program under project 215E188. 1
Satisfaction Algorithm for Dynamic Reconfiguration Sina Entekhabi - - PowerPoint PPT Presentation
An Incremental Constraint Satisfaction Algorithm for Dynamic Reconfiguration Sina Entekhabi Ahmet Serkan Karata Halit O uztzn ODT, Ankara IZTECH Dependability, 8 May 2017 Supported by TBTAK -ARDEB-1001 program under project
Supported by TÜBİTAK-ARDEB-1001 program under project 215E188. 1
2
differences
3
4
Feature model diagram of a smart home[3]
expressions
“((B ∧ ~𝐷) ∨ (~B ∧ 𝐷)) ⇔ 𝐵”
5
6
Context Monitor Condition 1 Resolution 1 Condition 2 Resolution 2 …. …. Condition N Resolution N
The context monitor specifies activation and/or deactivation of some
Satisfaction Problem(CSP)
7
Having a constraint network including a set of variables 𝑊: 𝑊 = 𝑤1, 𝑤2, … , 𝑤𝑜 𝑥ℎ𝑓𝑠𝑓 𝑤𝑗𝜗𝐸𝑗 𝑔𝑝𝑠 1 ≤ 𝑗 ≤ 𝑜, and a set of satisfied constraints C among variables in V: C = 𝑑1, 𝑑2, … , 𝑑𝑙 , and a resolution R: R = 𝑤𝑘1 ⟵ 𝑏1
′ , 𝑤𝑘2 ⟵ 𝑏2 ′ , … , 𝑤𝑘𝑛 ⟵ 𝑏𝑛 ′
, where the variables have the previous values: 𝑤𝑘𝑠 = 𝑏𝑠 𝑔𝑝𝑠 1 ≤ 𝑠 ≤ 𝑛, the aim is satisfying C and R while minimizing the condition 𝜄 below: 𝜄 = 𝑏𝑠 ⊕ 𝑏𝑠
′ 𝑛 𝑠=1
, where 𝑦 ⊕ 𝑧 = 0 𝑗𝑔 𝑦 = 𝑧 1 𝑗𝑔 𝑦 ≠ 𝑧
8
9
10
11
12
A B C D E F G H I J K L
activated feature deactivated feature
13
A B C D E F G H I J K L
activated feature deactivated feature
constraints among them
14
D A C B E H I G L F J K
C1 C2 C3 C4 C5 C6 C7 C7
variable constraint
Mapping FM to a constraint network
15
16
D A C B E H I G L F J K
c1 c2 c3 c4 c5 c6 c7 c8 c9
Variable assigned to True Variable assigned to False Variable needed to be assigned to True to reach a solution Variable needed to be assigned to False to reach a solution
17
Variable assigned to True Variable assigned to False
D A C B E H I G L F J K
c1 c2 c3 c4 c5 c6 c7 c8 c9
Variable needed to be assigned to True to reach a solution Variable needed to be assigned to False to reach a solution
side
18
Variable assigned to True Variable assigned to False
D A C B E H I G L F J K
c1 c2 c3 c4 c5 c6 c7 c8 c9
Variable needed to be assigned to True to reach a solution Variable needed to be assigned to False to reach a solution
19
Variable assigned to True Variable assigned to False
D A C B E H I G L F J K
c1 c2 c3 c4 c5 c6 c7 c8 c9
Variable needed to be assigned to True to reach a solution Variable needed to be assigned to False to reach a solution
20
Variable assigned to True Variable assigned to False
D A C B E H I G L F J K
c1 c2 c3 c4 c5 c6 c7 c8 c9
Variable needed to be assigned to True to reach a solution Variable needed to be assigned to False to reach a solution
21
Variable assigned to True Variable assigned to False
D A C B E H I G L F J K
c1 c2 c3 c4 c5 c6 c7 c8 c9
Variable needed to be assigned to True to reach a solution Variable needed to be assigned to False to reach a solution
22
Variable assigned to True Variable assigned to False
D A C B E H I G L F J K
c1 c2 c3 c4 c5 c6 c7 c8 c9
Variable needed to be assigned to True to reach a solution Variable needed to be assigned to False to reach a solution
23
Variable assigned to True Variable assigned to False
D A C B E H I G L F J K
c1 c2 c3 c4 c5 c6 c7 c8 c9
Variable needed to be assigned to True to reach a solution Variable needed to be assigned to False to reach a solution
24
Variable assigned to True Variable assigned to False
D A C B E H I G L F J K
c1 c2 c3 c4 c5 c6 c7 c8 c9
Variable needed to be assigned to True to reach a solution Variable needed to be assigned to False to reach a solution
25
Variable assigned to True Variable assigned to False
D A C B E H I G L F J K
c1 c2 c3 c4 c5 c6 c7 c8 c9
Variable needed to be assigned to True to reach a solution Variable needed to be assigned to False to reach a solution
26
Variable assigned to True Variable assigned to False
D A C B E H I G L F J K
c1 c2 c3 c4 c5 c6 c7 c8 c9
Variable needed to be assigned to True to reach a solution Variable needed to be assigned to False to reach a solution
system would be the diagram below.
27
A B C D E F G H I J K L
activated feature deactivated feature
28
Wesley,2002.
Peterson, “Feature-oriented domain analysis (foda) feasibility study,” DTIC Document, Tech. Rep., 1990.
adaptive systems are product lines too: Using model-driven techniques to capture dynamic variability of adaptive systems.” in SPLC (2), 2008, pp. 23–32.
"Autonomic Computing through Reuse of Variability Models at Runtime: The Case of Smart Homes", Computer, vol. 42, no. , pp. 37-43, October 2009, doi:10.1109/MC.2009.309
variability models at runtime: The case of smart homes. Computer, 2009, 42.10.
29
reasoning on feature models,” in Seminal Contributions to Information Systems Engineering. Springer, 2013, pp. 361–373.
feature models to constraint logic programming,” Science of Computer Programming, vol. 78, no. 12, pp. 2295–2312, 2013.
incremental constraint solver,” Communications of the ACM,
constraint solver for user interface construction,” in Proceedings of the 7th annual ACM symposium on User interface software and technology. ACM, 1994, pp. 137–146.
linear arithmetic constraint solving algorithm,” ACM Transactions on Computer- Human Interaction (TOCHI), vol. 8,
30
31