nitin kumar yadav rmit university, melbourne [email protected] minor thesis for...
TRANSCRIPT
Nitin Kumar YadavRMIT University, Melbourne
Minor thesis for semester 2, 2009, under the supervision of Dr. Sebastian Sardina, RMIT university
Implementation and analysis of simulation based techniques for behavior composition
Implementation and analysis of simulation based techniques for behavior composition
Behavior CompositionSimulationTechniquesImplementation Analysis
Contents
Behavior Composition
3
What is a behavior ?
• Behavior – Logic of a machine– Web service– Stand alone component
• Abstracted as finite transition systems• Available behaviors can be non-deterministic
B1 B2
Behavior Composition
4
Combining available behaviors to realize a target behavior
Available behaviors
Target behavior(virtual)
T1
Can we realize T1 by composing B1 and B2 ?
B1 B2
Behavior Composition
5
Combined finite transition system of available behaviors
‘composed’ transition system of available behaviors
B1
B2
Asynchronous product of B1 and B2
Behavior Composition
6
Combined finite transition system of available behaviors
B1
B2
Asynchronous product of B1 and B2
‘composed’ transition system of available behaviors
Behavior Composition
7
Combined finite transition system of available behaviors
B1
B2
Asynchronous product of B1 and B2
Can this behave like the target system ?
Simulation
8
• A transition system T1 simulates another transition system T2 iff T1 can ‘mimic’ all the states of T2
• A state in the available system mimics another state in the target system if:– It can do all the actions that the target state can do– The successor state in the available system as a result of
such an action simulates the resulting state in the target system
• Simulation is a relation of states of the composed system and the states of the target behavior which can be ‘mimicked’.
t
Simulation
9
Example
Available behaviors
Target System
{<S1,S1>, <T1>}{<S2,S1>, <T2>}…
Simulation Relation
simulation relationis a solution to the behavior
Composition problem !
How to calculate it ?
Techniques
10
Two approaches for behavior composition
• Regression based approach [Sardina,Patrizi & De Giacomo, KR 2008]
• Progression based approach [Stroeder & Pagnucco, 2009, IJCAI 2009]
Proceedings of Principles of Knowledge Representation and Reasoning (KR), pages 640-650, Sydney, Australia, September 2008. AAAI Press.
Accepted for the IJCAI 2009
Techniques
11
Regression based approach [Sardina, Patrizi, De Giacomo]
• Assume each state in the available system simulates each state in the target system
• Iteratively remove non-conformant links which don’t’ follow the simulation definition i.e., – Can not perform the actions which can be requested
in the matching target state– The successor state of the action does not follow the
above rule
• Stop when no more links can be removed
t
Regression based approach
12
Example
Available behaviors
Target System
{<S1,S1>, <T1>}{<S1,S1>, <T2>}{<S1,S1>, <T3>}{<S2,S1>, <T1>}{<S2,S1>, <T2>}{<S2,S1>, <T3>}{<S2,S2>, <T1>}{<S2,S2>, <T2>}{<S2,S2>, <T3>}{<S1,S2>, <T1>}{<S1,S2>, <T2>}{<S1,S2>, <T3>}
Assume each state from availablebehaviors simulates each stateIn the target system
t
Regression based approach
13
Example
Available behaviors
Target System
{<S1,S1>, <T1>}{<S1,S1>, <T2>}{<S1,S1>, <T3>}{<S2,S1>, <T1>}{<S2,S1>, <T2>}{<S2,S1>, <T3>}{<S2,S2>, <T1>}{<S2,S2>, <T2>}{<S2,S2>, <T3>}{<S1,S2>, <T1>}{<S1,S2>, <T2>}{<S1,S2>, <T3>}
Each Cycle : step 1 – remove the States which can not perform the Actions of the linked target state
t
Regression based approach
14
Example
Available behaviors
Target System
{<S1,S1>, <T1>}{<S1,S1>, <T2>}{<S2,S1>, <T1>}{<S2,S1>, <T2>}{<S2,S2>, <T1>}{<S2,S2>, <T2>}{<S2,S2>, <T3>}{<S1,S2>, <T1>}{<S1,S2>, <T3>}
Each Cycle : step 2 – remove the States whose successor states are not in the simulation relation
X
Continue till no more links can beremoved
Techniques
15
Progression based approach [Stroder & Pagnucco]
• Start from the initial state• Iteratively add conformant links between the
states of the composed system and the target system
• Stop when no more links can be added
t
Progression based approach
16
Example
Available behaviors
Target System
{<S1,S1>, <T1>}{<S2,S1>, <T1>}{<S2,S2>, <T1>}{<S1,S2>, <T1>}
Start from states those ‘canMimic the initial state
t
Progression based approach
17
Example
Available behaviors
Target System
{<S1,S1>, <T1>}{<S2,S1>, <T1>}{<S2,S2>, <T1>}{<S1,S2>, <T1>}
{<S2,S1>, <T2>}{<S2,S2>, <T2>}
Iteratively add links
t
Progression based approach
18
Example
Available behaviors
Target System
{<S1,S1>, <T1>}{<S2,S1>, <T1>}{<S2,S2>, <T1>}{<S1,S2>, <T1>}
{<S2,S1>, <T2>}{<S2,S2>, <T2>}
{<S2,S2>, <T3>}
Iteratively add links
X
Implementation
19
Implementation of both the techniques on a common platform
• Implement both approaches on a common platform – Java
• Prototype implementation available.
1. TLV implementation for deterministic available behaviors is available, but not for non-deterministic behaviors. Symfony is another system, but Lacks some of the components.
Analysis
20
Comparing the speed of the techniques
• Measure the speed of both the algorithms for the problems
• Design benchmark problems– Hand crafted• Problems for which a known solution exists• Problems for which a solution does not exist
– Randomly generated problems– Variation in size and number of available behaviors
• If time left in minor thesis– Study algorithm’s behavior with respect to• Varying degrees of non determinism in available behaviors
Questions ?
Comparing the speed of the techniques