Goal-based Composition of Stateful Services for Smart Homes

Size: px
Start display at page:

Download "Goal-based Composition of Stateful Services for Smart Homes"

Transcription

1 Goal-based Composition of Stateful Services for Smart Homes Giuseppe De Giacomo 1 Claudio Di Ciccio 1 Paolo Felli 1 Yuxiao Hu 2 Massimo Mecella 1 SAPIENZA Università di Roma Via Ariosto 25, Roma, Italy lastname@dis.uniroma1.it Google Waterloo Toronto, Ontario M5S 3G4, Canada yuxiao@google.com Rome, 14 September 2012 C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 1 / 35

2 Outline 1 Introduction The Roman Model 2 Framework The dynamic system The goal process 3 Implementation The solver 4 Case study and evaluation Case study Performance evaluation 5 References C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 2 / 35

3 The Roman Model Outline 1 Introduction The Roman Model 2 Framework The dynamic system The goal process 3 Implementation The solver 4 Case study and evaluation Case study Performance evaluation 5 References C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 3 / 35

4 The Roman Model The Roman Model 1 Services are software artifacts, that 1 export a description of themselves, 2 are accessible to external clients and 3 communicate through a common interface. The so called Roman Model focuses on the conversational behavior of stateful services The conversational behavior is the collection of its potential evolutions resulting from the interaction with some external systems, such as a client service 1 As referred to by R. Hull at SIGMOD 04 C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 4 / 35

5 The Roman Model The Roman Model 1 Services are software artifacts, that 1 export a description of themselves, 2 are accessible to external clients and 3 communicate through a common interface. The so called Roman Model focuses on the conversational behavior of stateful services The conversational behavior is the collection of its potential evolutions resulting from the interaction with some external systems, such as a client service It represents stateful service behaviors as Finite State Automata (FSAs), with: a set of states one of which is some of which are initial final connected by transitions, i.e., atomic actions 1 As referred to by R. Hull at SIGMOD 04 C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 4 / 35

6 The Roman Model The Roman Model 1 Services are software artifacts, that 1 export a description of themselves, 2 are accessible to external clients and 3 communicate through a common interface. The so called Roman Model focuses on the conversational behavior of stateful services The conversational behavior is the collection of its potential evolutions resulting from the interaction with some external systems, such as a client service It represents stateful service behaviors as Finite State Automata (FSAs), with: a set of states one of which is some of which are initial final connected by transitions, i.e., atomic actions 1 As referred to by R. Hull at SIGMOD 04 C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 4 / 35

7 The Roman Model The Roman Model 1 Services are software artifacts, that 1 export a description of themselves, 2 are accessible to external clients and 3 communicate through a common interface. The so called Roman Model focuses on the conversational behavior of stateful services The conversational behavior is the collection of its potential evolutions resulting from the interaction with some external systems, such as a client service It represents stateful service behaviors as Finite State Automata (FSAs), with: a set of states one of which is some of which are initial final connected by transitions, i.e., atomic actions 1 As referred to by R. Hull at SIGMOD 04 C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 4 / 35

8 The Roman Model The Roman Model 1 Services are software artifacts, that 1 export a description of themselves, 2 are accessible to external clients and 3 communicate through a common interface. The so called Roman Model focuses on the conversational behavior of stateful services The conversational behavior is the collection of its potential evolutions resulting from the interaction with some external systems, such as a client service It represents stateful service behaviors as Finite State Automata (FSAs), with: a set of states one of which is some of which are initial final connected by transitions, i.e., atomic actions 1 As referred to by R. Hull at SIGMOD 04 C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 4 / 35

9 The Roman Model The Roman Model 1 Services are software artifacts, that ^ 1 export a description of themselves, 2 are accessible to external clients and 3 communicate through a common interface. The so called Roman Model focuses on the conversational behavior of stateful services The conversational behavior is the collection of its potential evolutions resulting from the interaction with some external systems, such as a client service # T Figure: An air conditioner as a stateful service 1 As referred to by R. Hull at SIGMOD 04 C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 4 / 35

10 The Roman Model The Roman Model : a running example The initial state # determines the state from which the conversation takes place. The only availableactions are those which label the transitions starting from the current state (here, and ). Say we want to raise up the temperature in the room: the action is performed. In the new state T, we want to raise the temperature up a little more. Maybe it is too much now, and we may want to lower it. After a while, we turn off the air conditioner. We are done. The final state is reached and the conversation can be closed. ^ # T Figure: An air conditioner as a stateful service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 5 / 35

11 The Roman Model The Roman Model : a running example The initial state # determines the state from which the conversation takes place. The only availableactions are those which label the transitions starting from the current state (here, and ). Say we want to raise up the temperature in the room: the action is performed. In the new state T, we want to raise the temperature up a little more. Maybe it is too much now, and we may want to lower it. After a while, we turn off the air conditioner. We are done. The final state is reached and the conversation can be closed. ^ # T Figure: An air conditioner as a stateful service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 5 / 35

12 The Roman Model The Roman Model : a running example The initial state # determines the state from which the conversation takes place. The only availableactions are those which label the transitions starting from the current state (here, and ). Say we want to raise up the temperature in the room: the action is performed. In the new state T, we want to raise the temperature up a little more. Maybe it is too much now, and we may want to lower it. After a while, we turn off the air conditioner. We are done. The final state is reached and the conversation can be closed. ^ # T Figure: An air conditioner as a stateful service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 5 / 35

13 The Roman Model The Roman Model : a running example The initial state # determines the state from which the conversation takes place. The only availableactions are those which label the transitions starting from the current state (here, and ). Say we want to raise up the temperature in the room: the action is performed. In the new state T, we want to raise the temperature up a little more. Maybe it is too much now, and we may want to lower it. After a while, we turn off the air conditioner. We are done. The final state is reached and the conversation can be closed. ^ # T Figure: An air conditioner as a stateful service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 5 / 35

14 The Roman Model The Roman Model : a running example The initial state # determines the state from which the conversation takes place. The only availableactions are those which label the transitions starting from the current state (here, and ). Say we want to raise up the temperature in the room: the action is performed. In the new state T, we want to raise the temperature up a little more. Maybe it is too much now, and we may want to lower it. After a while, we turn off the air conditioner. We are done. The final state is reached and the conversation can be closed. ^ # T Figure: An air conditioner as a stateful service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 5 / 35

15 The Roman Model The Roman Model : a running example The initial state # determines the state from which the conversation takes place. The only availableactions are those which label the transitions starting from the current state (here, and ). Say we want to raise up the temperature in the room: the action is performed. In the new state T, we want to raise the temperature up a little more. Maybe it is too much now, and we may want to lower it. After a while, we turn off the air conditioner. We are done. The final state is reached and the conversation can be closed. ^ # T Figure: An air conditioner as a stateful service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 5 / 35

16 Outline 1 Introduction The Roman Model 2 Framework The dynamic system The goal process 3 Implementation The solver 4 Case study and evaluation Case study Performance evaluation 5 References C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 6 / 35

17 Automated service composition is the problem of automatically combining a set of available services, so to synthesize a more complex service, according to a desired specification. The desired specification had to be expressed in terms of another deterministic FSA, named target service. The output was a orchestrator generator, i.e., a generator of all of the possible orchestrations of the available services, able to enact the desired behavior specification. It has been the basis from which we started our research work (see [BCDG + 03, Pat09]). C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 7 / 35

18 Automated service composition is the problem of automatically combining a set of available services, so to synthesize a more complex service, according to a desired specification. The desired specification had to be expressed in terms of another deterministic FSA, named target service. The output was a orchestrator generator, i.e., a generator of all of the possible orchestrations of the available services, able to enact the desired behavior specification. It has been the basis from which we started our research work (see [BCDG + 03, Pat09]). C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 7 / 35

19 Automated service composition is the problem of automatically combining a set of available services, so to synthesize a more complex service, according to a desired specification. The desired specification had to be expressed in terms of another deterministic FSA, named target service. The output was a orchestrator generator, i.e., a generator of all of the possible orchestrations of the available services, able to enact the desired behavior specification. It has been the basis from which we started our research work (see [BCDG + 03, Pat09]). C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 7 / 35

20 An example t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 8 / 35

21 An example of orchestration t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

22 An example of orchestration t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

23 An example of orchestration t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

24 An example of orchestration t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

25 An example of orchestration t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

26 An example of orchestration t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

27 An example of orchestration t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

28 An example of orchestration t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

29 An example of orchestration t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

30 An example of orchestration t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

31 An example of orchestration t 0 ^ # N t 1 T dodrain t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

32 An example of orchestration t 0 ^ # N t 1 T dodrain t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

33 An example of orchestration t 0 ^ # N t 1 T dodrain t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

34 An example of orchestration t 0 ^ # N t 1 T dodrain t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

35 An example of orchestration t 0 ^ # T dodrain N t 1 t 2 t 3 (a) Air conditioner service (b) Bathroom management service (c) Target service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 9 / 35

36 Problems solved The problem of the automated service composition has been solved in many variants, along almost 10 years of research ([CGL + 08]): 1 services with deterministic observable behaviors [BCDG + 03, BCDG + 05b, BCDGP08]; 2 services with deterministic observable behaviors in the presence of failure [SPDG08]; 3 services with non-deterministic observable behaviors [BCGM05]; 4 services with partially observable non-deterministic behaviors [GMP09]; 5 services with non-deterministic behaviors, acting over data [BCDG + 05a, DGP09]... The results have been successfully applied in the context of smart home automation systems, for the SM4All European FP7 Project ( see [DCI11, DCMC + 11, CDCF + 11, DMDCMP10] ) C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 10 / 35

37 Problems solved The problem of the automated service composition has been solved in many variants, along almost 10 years of research ([CGL + 08]): 1 services with deterministic observable behaviors [BCDG + 03, BCDG + 05b, BCDGP08]; 2 services with deterministic observable behaviors in the presence of failure [SPDG08]; 3 services with non-deterministic observable behaviors [BCGM05]; 4 services with partially observable non-deterministic behaviors [GMP09]; 5 services with non-deterministic behaviors, acting over data [BCDG + 05a, DGP09]... The results have been successfully applied in the context of smart home automation systems, for the SM4All European FP7 Project ( see [DCI11, DCMC + 11, CDCF + 11, DMDCMP10] ) C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 10 / 35

38 Problems solved The problem of the automated service composition has been solved in many variants, along almost 10 years of research ([CGL + 08]): 1 services with deterministic observable behaviors [BCDG + 03, BCDG + 05b, BCDGP08]; 2 services with deterministic observable behaviors in the presence of failure [SPDG08]; 3 services with non-deterministic observable behaviors [BCGM05]; 4 services with partially observable non-deterministic behaviors [GMP09]; 5 services with non-deterministic behaviors, acting over data [BCDG + 05a, DGP09]... The results have been successfully applied in the context of smart home automation systems, for the SM4All European FP7 Project ( see [DCI11, DCMC + 11, CDCF + 11, DMDCMP10] ) (a) SM4All demo video excerpt (b) The SM4All development and management team C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 10 / 35

39 Drawbacks Drawing routines, where actions must respect the conversational behaviors of services, is not that intuitive for an unexperienced user. Users tend to express directives in terms of goals. The constraint of starting from initial states to necessarily end up in final states is not flexible enough for long/continuous conversations, as in the usual domestic life, either with or without domotic devices. Sometimes you consider your goal reached even though you did not turn off the air conditioner. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 11 / 35

40 The new challenge of goal processes The new challenge (last chapter of the story): given 1 a shared domain (i.e., data abstracting the environment that the services act in), 2 non-deterministic services whose actions can affect the domain, 3 a user-defined automaton whose states represent choice points and whose transitions specify the goals to fulfill step by step (named goal process), based on the notion of planning programs ([DGPS10, DMDCMP10]) automatically realize the goal process. PS And make it suitable for a smart home environment. The paper we are presenting faces and solves these issues. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 12 / 35

41 The new challenge of goal processes The new challenge (last chapter of the story): given 1 a shared domain (i.e., data abstracting the environment that the services act in), 2 non-deterministic services whose actions can affect the domain, 3 a user-defined automaton whose states represent choice points and whose transitions specify the goals to fulfill step by step (named goal process), based on the notion of planning programs ([DGPS10, DMDCMP10]) automatically realize the goal process. PS And make it suitable for a smart home environment. The paper we are presenting faces and solves these issues. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 12 / 35

42 The new challenge of goal processes The new challenge (last chapter of the story): given 1 a shared domain (i.e., data abstracting the environment that the services act in), 2 non-deterministic services whose actions can affect the domain, 3 a user-defined automaton whose states represent choice points and whose transitions specify the goals to fulfill step by step (named goal process), based on the notion of planning programs ([DGPS10, DMDCMP10]) automatically realize the goal process. PS And make it suitable for a smart home environment. The paper we are presenting faces and solves these issues. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 12 / 35

43 The new challenge of goal processes The new challenge (last chapter of the story): given 1 a shared domain (i.e., data abstracting the environment that the services act in), 2 non-deterministic services whose actions can affect the domain, 3 a user-defined automaton whose states represent choice points and whose transitions specify the goals to fulfill step by step (named goal process), based on the notion of planning programs ([DGPS10, DMDCMP10]) automatically realize the goal process. PS And make it suitable for a smart home environment. The paper we are presenting faces and solves these issues. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 12 / 35

44 The new challenge of goal processes The new challenge (last chapter of the story): given 1 a shared domain (i.e., data abstracting the environment that the services act in), 2 non-deterministic services whose actions can affect the domain, 3 a user-defined automaton whose states represent choice points and whose transitions specify the goals to fulfill step by step (named goal process), based on the notion of planning programs ([DGPS10, DMDCMP10]) automatically realize the goal process. PS And make it suitable for a smart home environment. The paper we are presenting faces and solves these issues. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 12 / 35

45 The new challenge of goal processes The new challenge (last chapter of the story): given 1 a shared domain (i.e., data abstracting the environment that the services act in), 2 non-deterministic services whose actions can affect the domain, 3 a user-defined automaton whose states represent choice points and whose transitions specify the goals to fulfill step by step (named goal process), based on the notion of planning programs ([DGPS10, DMDCMP10]) automatically realize the goal process. PS And make it suitable for a smart home environment. The paper we are presenting faces and solves these issues. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 12 / 35

46 The new challenge of goal processes The new challenge (last chapter of the story): given 1 a shared domain (i.e., data abstracting the environment that the services act in), 2 non-deterministic services whose actions can affect the domain, 3 a user-defined automaton whose states represent choice points and whose transitions specify the goals to fulfill step by step (named goal process), based on the notion of planning programs ([DGPS10, DMDCMP10]) automatically realize the goal process. PS And make it suitable for a smart home environment. The paper we are presenting faces and solves these issues. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 12 / 35

47 The dynamic system Outline 1 Introduction The Roman Model 2 Framework The dynamic system The goal process 3 Implementation The solver 4 Case study and evaluation Case study Performance evaluation 5 References C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 13 / 35

48 The dynamic system The dynamic domain Definition (Dynamic domain) Formally, a dynamic domain is a tuple D = P,A,D 0,ρ, where: P = {p 1,...,p n } is a finite set of domain propositions. D 2 P is a state; A = {a 1,...,a r } is the finite set of domain actions; D 0 2 P is the initial state; ρ 2 P A 2 P is the transition relation. Intuitively A dynamic domain provides a symbolic abstraction of the world that the user acts in. It models an environment whose states are described by the set P of boolean propositions, holding all relevant information about the current situation. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 14 / 35

49 The dynamic system The services Definition (Service) Given a dynamic domain D, a service over D is a tuple B = B,O,b 0,σ, where: B is the finite set of service states; O is the finite set of service actions over the domain, i.e., O A /0; b 0 B is the service initial state; σ B O B is the service transition relation. Intuitively The idea is that, at each moment, a service offers a set of possible actions, and the user can interact with the domain D by means of available services only. Both the service and the domain evolve synchronously according to their respective transition relations. We do not consider final states anymore, as behaviors are supposed to represent long-term continuous interactions with the house (from the user viewpoint). C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 15 / 35

50 The dynamic system Example revisited: the services ^ # T dodrain N (a) Air conditioner service (b) Bathroom management service C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 16 / 35

51 The dynamic system The dynamic system The dynamic system Given a dynamic domain D and a fixed set of available services {B 1,...,B n } over it, we define a dynamic system to be the resulting global system, seen as a whole: it is an abstract structure used to capture the interaction of available services with the environment. Each action a s.t. a / O A is called local action An action a O is said to be executable iff 1 it is available in the current service state of the service b, i.e. b a b in B for some state b B 2 it is either a local action (a O A), or allowed in the current domain state D (i.e., there exists a domain state D such that D a D ) C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 17 / 35

52 The dynamic system Example revisited: the domain A (simplified) smart home domain Dynamic domain transition relation (semi-formal): { D D D = (bathtemp = COLD) and D = (bathtemp = MILD) iff D = (bathtemp = MILD) and D = (bathtemp = HOT) { D D D = (bathtemp = MILD) and D = (bathtemp = COLD) iff D = (bathtemp = HOT) and D = (bathtemp = MILD) { D D D = (bathtub = EMPTY) and D = (bathtub = HALF hotwtrrsv = ) iff D = (bathtub = HALF) and D = (bathtub = FILLED hotwtrrsv = ) D dodrain D iff D = (bathtub = FILLED bathtub = HALF) and D = (bathtub = EMPTY) D D iff D = (hotwtrrsv = ) and D = (hotwtrrsv = ) Initial state for the domain: {bathtemp = COLD, bathtub = EMPTY, hotwtrrsv = } Intuitively You can not drain an empty tub, neither raise the temperature up again when it is already hot (easy). When you pour hot water in the tub, the hot water reserves finish: to store some hot water again, use the boiler (slightly more tricky). C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 18 / 35

53 The goal process Outline 1 Introduction The Roman Model 2 Framework The dynamic system The goal process 3 Implementation The solver 4 Case study and evaluation Case study Performance evaluation 5 References C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 19 / 35

54 The goal process The goal-based target process Definition (Target process) A target process for a dynamic domain D as a tuple T = T,G,t 0,δ, where: T = { t 0,...,t q } is the finite set of process states; G is a finite set of goals of the form achieve φ while maintaining ψ, denoted by pairs g = ψ,φ, where ψ and φ are propositional formulae over P; t 0 T is the process initial state; δ T G T is the transition relation. Intuitively The goal-based target process represents the situations that the user may want to keep on selecting among, at any point in time (achievement). During the execution of the whole sequence of actions needed to achieve that goal, some conditions must be respected (maintenance). C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 20 / 35

55 The goal process An example ψ 1 φ 1 (bathtemp = HOT) ψ 2 (hotwtrrsv = ) φ 3 (bathtub = FILLED) t 0 t 1 t 2 ψ 2 (bathtemp = HOT bathtemp = WARM) φ 2 (bathtub = EMPTY) C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 21 / 35

56 The goal process An example ψ 1 φ 1 (bathtemp = HOT) ψ 2 (hotwtrrsv = ) φ 3 (bathtub = FILLED) t 0 t 1 t 2 ψ 2 (bathtemp = HOT bathtemp = WARM) φ 2 (bathtub = EMPTY) Easier and more compact The cognitive effort of specifying the right sequence of actions to invoke is not demanded to the user anymore: compare it with the target automaton at slide 21 - which did not even drain the water out of the tub! C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 21 / 35

57 The goal process An example ψ 1 φ 1 (bathtemp = HOT) ψ 2 (hotwtrrsv = ) φ 3 (bathtub = FILLED) t 0 t 1 t 2 ψ 2 (bathtemp = HOT bathtemp = WARM) φ 2 (bathtub = EMPTY) t 0 t 1 t 2 t 3 C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 21 / 35

58 The goal process An example ψ 1 φ 1 (bathtemp = HOT) ψ 2 (hotwtrrsv = ) φ 3 (bathtub = FILLED) t 0 t 1 t 2 ψ 2 (bathtemp = HOT bathtemp = WARM) φ 2 (bathtub = EMPTY) Plans, not invocations Transitions from a goal process state to the following are realized by conditional plans, and not by single invocations of actions. E.g., to pass from t 0 to t 1 at the starting point, you have to invoke twice on the air conditioner and on the boiler (why? ). C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 21 / 35

59 The goal process Realization Intuitively (see the paper for formal definitions and statements), a target process is realized when 1 a finite sequence of executable actions (conditional plan) is available for the goal couple g = φ,ψ, chosen from initial state t 0 and 2 a new conditional plan is available for the new selected goal, and so on. Then, all possible choices available in the target process must be guaranteed. The problem Given a dynamic domain D, available services B 1,...,B n, and a target process T, build, if it exists, a realization of T in the dynamic system S corresponding to D and B 1,...,B n. The solution is based on the notion of PLAN-simulation relation (see the paper for further information). Theorem Building a realization of a target process T in a dynamic system S is an EXPTIME-complete problem. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 22 / 35

60 The goal process Realization Intuitively (see the paper for formal definitions and statements), a target process is realized when 1 a finite sequence of executable actions (conditional plan) is available for the goal couple g = φ,ψ, chosen from initial state t 0 and 2 a new conditional plan is available for the new selected goal, and so on. Then, all possible choices available in the target process must be guaranteed. The problem Given a dynamic domain D, available services B 1,...,B n, and a target process T, build, if it exists, a realization of T in the dynamic system S corresponding to D and B 1,...,B n. The solution is based on the notion of PLAN-simulation relation (see the paper for further information). Theorem Building a realization of a target process T in a dynamic system S is an EXPTIME-complete problem. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 22 / 35

61 The goal process Realization Intuitively (see the paper for formal definitions and statements), a target process is realized when 1 a finite sequence of executable actions (conditional plan) is available for the goal couple g = φ,ψ, chosen from initial state t 0 and 2 a new conditional plan is available for the new selected goal, and so on. Then, all possible choices available in the target process must be guaranteed. The problem Given a dynamic domain D, available services B 1,...,B n, and a target process T, build, if it exists, a realization of T in the dynamic system S corresponding to D and B 1,...,B n. The solution is based on the notion of PLAN-simulation relation (see the paper for further information). Theorem Building a realization of a target process T in a dynamic system S is an EXPTIME-complete problem. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 22 / 35

62 The goal process Realization Intuitively (see the paper for formal definitions and statements), a target process is realized when 1 a finite sequence of executable actions (conditional plan) is available for the goal couple g = φ,ψ, chosen from initial state t 0 and 2 a new conditional plan is available for the new selected goal, and so on. Then, all possible choices available in the target process must be guaranteed. The problem Given a dynamic domain D, available services B 1,...,B n, and a target process T, build, if it exists, a realization of T in the dynamic system S corresponding to D and B 1,...,B n. The solution is based on the notion of PLAN-simulation relation (see the paper for further information). Theorem Building a realization of a target process T in a dynamic system S is an EXPTIME-complete problem. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 22 / 35

63 The solver Outline 1 Introduction The Roman Model 2 Framework The dynamic system The goal process 3 Implementation The solver 4 Case study and evaluation Case study Performance evaluation 5 References C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 23 / 35

64 The solver Realization Theorem Building a realization of a target process T in a dynamic system S is an EXPTIME-complete problem. EXPTIME-complete! An efficient implementation of the solver is needed! [DGPS10, DGFPS10] reduce the composition problem to LTL synthesis by model checking. Viable in practice only if large computational resources are available! On typical hardware for the smart home applications, only simple examples can be solved with that approach (see later). We solved it by a direct (AND-OR) search in the space of execution traces of incremental partial policies guided by heuristics. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 24 / 35

65 The solver Realization Theorem Building a realization of a target process T in a dynamic system S is an EXPTIME-complete problem. EXPTIME-complete! An efficient implementation of the solver is needed! [DGPS10, DGFPS10] reduce the composition problem to LTL synthesis by model checking. Viable in practice only if large computational resources are available! On typical hardware for the smart home applications, only simple examples can be solved with that approach (see later). We solved it by a direct (AND-OR) search in the space of execution traces of incremental partial policies guided by heuristics. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 24 / 35

66 The solver Realization Theorem Building a realization of a target process T in a dynamic system S is an EXPTIME-complete problem. EXPTIME-complete! An efficient implementation of the solver is needed! [DGPS10, DGFPS10] reduce the composition problem to LTL synthesis by model checking. Viable in practice only if large computational resources are available! On typical hardware for the smart home applications, only simple examples can be solved with that approach (see later). We solved it by a direct (AND-OR) search in the space of execution traces of incremental partial policies guided by heuristics. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 24 / 35

67 The solver Implementation (sketch) Briefly, the algorithm works as follows. At each step, starting with an empty policy: 1 keep the partial policy; 2 simulate the execution; mind the non-determinism of actions (AND steps) and the possible choices for next goal requests (OR steps)! 3 try all of the actions you can, from the current system state; until either here the heuristics enter in action! 1 a valid policy is found, or 2 no extension is a valid solution. In case, the backtrack is caused by deadloops or violation of maintenance goals We adopted the delete-relaxation heuristics for sorting the list of next actions to choose among. The number of actions in the relaxed plan is the heuristic estimation for the cost of achieving the goal from the current state. The solver is encoded in Prolog. Problem specifications are Prolog source files as well. You can download and run the implementation: C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 25 / 35

68 The solver Implementation (sketch) Briefly, the algorithm works as follows. At each step, starting with an empty policy: 1 keep the partial policy; 2 simulate the execution; mind the non-determinism of actions (AND steps) and the possible choices for next goal requests (OR steps)! 3 try all of the actions you can, from the current system state; until either here the heuristics enter in action! 1 a valid policy is found, or 2 no extension is a valid solution. In case, the backtrack is caused by deadloops or violation of maintenance goals We adopted the delete-relaxation heuristics for sorting the list of next actions to choose among. The number of actions in the relaxed plan is the heuristic estimation for the cost of achieving the goal from the current state. The solver is encoded in Prolog. Problem specifications are Prolog source files as well. You can download and run the implementation: C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 25 / 35

69 Case study Outline 1 Introduction The Roman Model 2 Framework The dynamic system The goal process 3 Implementation The solver 4 Case study and evaluation Case study Performance evaluation 5 References C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 26 / 35

70 Case study The complete sample target process ψ1 (varlightsbedroom = off) (varpositionowner = bedroom) (vardoor3 = closed) (vardoor4 = closed) (varbed = down) φ1 (varbreakfastready = true) (varalarmset = false) cook t1 ψ2 (varguestdisturbed = false) φ2 (varpositionowner = livingroom) (varownerpicked = false) ψ2 (vartv = on) φ3 (varbathtub = filled) (vardoor2 = closed) (varlightsbathroom = on) (varownerpicked = false) (varpositionowner = bathroom) (varbathroomtemperature = warm) sleep t0 ψ2 WC t3 ψ2 φ3 TV t2 φ3 ψ0 true φ0 (varbed = down) (varalarmset = true) (varownerpicked = false) (varbathtub = empty) (varlightstoilet = on) (varlightsbedroom = off) (varlightsbathroom = off) (varlightskitchen = off) (varlightslivingroom = off) (varpositionowner = bedroom) eat t4 (vardoor2 = closed) (vardoor3 = closed) (vardoor4 = closed) (vardoor5 = closed) (vardoor6 = closed) (vardoor7 = closed) (varpositionnurse = toilet) (vartv = off) (varbathroomtemperature = cold) ψ4 φ4 ψ4 (varguestdisturbed = false) (varbathroomtemperature = warm) φ4 (varbreakfastready = true) (varpositionowner = kitchen) (varlightskitchen = on) (varownerpicked = false) C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 27 / 35

71 Case study The sub-targets used for comparative evaluations ψ 1 φ 1 t1 ψ 1 φ 1 t1 ψ2 φ 3 ψ 1 ψ 2 φ 1 t1 φ 2 t0 ψ 0 φ 0 t0 t3 t0 t2 ψ 0 φ 0 ψ 0 φ 0 t4 ψ 4 φ 4 (a) T 1 (b) T 2 (c) T 3 ψ 1 φ 1 t0 ψ 0 φ 0 t1 ψ 2 φ 3 t4 ψ 2 φ 3 t3 ψ 4 φ 4 ψ 1 φ 1 t0 ψ 0 φ 0 t1 ψ 2 φ 3 t4 ψ 2 φ 3 t3 ψ 2 φ 2 ψ 4 φ 4 ψ 4 φ 4 t2 ψ 1 φ 1 t0 ψ 0 φ 0 t1 ψ 2 φ 3 t4 ψ 2 φ 3 t3 ψ 4 φ 4 ψ 2 φ 2 ψ 2 φ 3 ψ 4 φ 4 t2 (d) T 4 (e) T 5 (f) T Figure: Comparative evaluation target processes C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 28 / 35

72 Performance evaluation Outline 1 Introduction The Roman Model 2 Framework The dynamic system The goal process 3 Implementation The solver 4 Case study and evaluation Case study Performance evaluation 5 References C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 29 / 35

73 Performance evaluation Summary of the results of performance tests Trans. s Time [sec] Std. Dev. Coeff. of Var. [ ] Mean (M ) min (m) Max (M) (σ) (σ/m ) T T T T T T Testing environment We run the solver 10 times per case in a SWI-Prolog environment, on top of an Intel Core Duo 1.66 GHz (2 GB DDR2 RAM, Ubuntu 10.04) laptop. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 30 / 35

74 Performance evaluation Summary of the results of performance tests Trans. s Time [sec] Std. Dev. Coeff. of Var. [ ] Mean (M ) min (m) Max (M) (σ) (σ/m ) T T T T T T Testing environment We run the solver 10 times per case in a SWI-Prolog environment, on top of an Intel Core Duo 1.66 GHz (2 GB DDR2 RAM, Ubuntu 10.04) laptop. About the efficiency We tried the implementation described in [DGFPS10], on a similar machine. C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 30 / 35

75 Performance evaluation Summary of the results of performance tests Trans. s Time [sec] Std. Dev. Coeff. of Var. [ ] Mean (M ) min (m) Max (M) (σ) (σ/m ) T T T T T T Testing environment We run the solver 10 times per case in a SWI-Prolog environment, on top of an Intel Core Duo 1.66 GHz (2 GB DDR2 RAM, Ubuntu 10.04) laptop. About the efficiency We tried the implementation described in [DGFPS10], on a similar machine. We had to turn it off after more than two days running... C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 30 / 35

76 Performance evaluation Analisys of the results of performances tests (a) Performances (b) Coefficient of variation C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 31 / 35

77 Bibliography I [BCDG + 03] [BCDG + 05a] [BCDG + 05b] [BCDGP08] Daniela Berardi, Diego Calvanese, Giuseppe De Giacomo, Maurizio Lenzerini, and Massimo Mecella, Automatic composition of e-services that export their behavior, ICSOC (Maria E. Orlowska, Sanjiva Weerawarana, Mike P. Papazoglou, and Jian Yang, eds.), Lecture Notes in Computer Science, vol. 2910, Springer, 2003, pp Daniela Berardi, Diego Calvanese, Giuseppe De Giacomo, Richard Hull, and Massimo Mecella, Automatic composition of transition-based semantic web services with messaging, VLDB (Klemens Böhm, Christian S. Jensen, Laura M. Haas, Martin L. Kersten, Per-Åke Larson, and Beng Chin Ooi, eds.), ACM, 2005, pp Daniela Berardi, Diego Calvanese, Giuseppe De Giacomo, Maurizio Lenzerini, and Massimo Mecella, Automatic service composition based on behavioral descriptions, International Journal on Cooperative Information Systems (IJCIS) 14 (2005), no. 4, Daniela Berardi, Fahima Cheikh, Giuseppe De Giacomo, and Fabio Patrizi, Automatic service composition via simulation, International Journal of Foundations of Computer Science 19 (2008), no. 2, C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 32 / 35

78 Bibliography II [BCGM05] [CDCF + 11] [CGL + 08] [DCI11] Daniela Berardi, Diego Calvanese, Giuseppe De Giacomo, and Massimo Mecella, Composition of services with nondeterministic observable behavior, ICSOC (Boualem Benatallah, Fabio Casati, and Paolo Traverso, eds.), Lecture Notes in Computer Science, vol. 3826, Springer, 2005, pp Tiziana Catarci, Claudio Di Ciccio, Vincenzo Forte, Ettore Iacomussi, Massimo Mecella, Giuseppe Santucci, and Giuseppe Tino, Service composition and advanced user interfaces in the home of tomorrow: the SM4All approach, Ambi-Sys (Silvia Gabrielli, Dirk Elias, and Kanav Kahol, eds.), Lecture Notes of the Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering, vol. 70, March 2011, pp Diego Calvanese, Giuseppe De Giacomo, Maurizio Lenzerini, Massimo Mecella, and Fabio Patrizi, Automatic service composition and synthesis: the roman model, IEEE Data Eng. Bull. 31 (2008), no. 3, Claudio Di Ciccio and Ettore Iacomussi, The Roman Model for automated synthesis in practice: the SM4All experience, July C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 33 / 35

79 Bibliography III [DCMC + 11] [DGFPS10] [DGP09] [DGPS10] Claudio Di Ciccio, Massimo Mecella, Mario Caruso, Vincenzo Forte, Ettore Iacomussi, Katharina Rasch, Leonardo Querzoni, Giuseppe Santucci, and Giuseppe Tino, The homes of tomorrow: Service composition and advanced user interfaces, ICST Transasctions on Ambient Systems 11 (2011), no , e2, To appear in ICST Transactions on Ambient Systems Giuseppe De Giacomo, Paolo Felli, Fabio Patrizi, and Sebastian Sardiña, Two-player game structures for generalized planning and agent composition, AAAI (Maria Fox and David Poole, eds.), AAAI Press, Giuseppe De Giacomo and Fabio Patrizi, Composition of services that share an infinite-state blackboard (extended abstract), IIWEB 09 (Biplav Srivastava, Ullas Nambiar, and Craig Knoblock, eds.), July Giuseppe De Giacomo, Fabio Patrizi, and Sebastian Sardiña, Agent programming via planning programs, Proc. of 9th Int. Conf. on Autonomous Agents and Multiagent Systems (AAMAS 2010), May C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 34 / 35

80 Bibliography IV [DMDCMP10] R. De Masellis, C. Di Ciccio, M. Mecella, and F. Patrizi, Smart home planning programs, Proceedings of the th International Conference on Service Systems and Service Management (ICSSSM 10), Japan Advanced Institute of Science and Technology, Japan, IEEE, 2010, pp [GMP09] [Pat09] [SPDG08] Giuseppe De Giacomo, Riccardo De Masellis, and Fabio Patrizi, Composition of partially observable services exporting their behaviour, ICAPS (Alfonso Gerevini, Adele E. Howe, Amedeo Cesta, and Ioannis Refanidis, eds.), AAAI, Fabio Patrizi, Simulation-based techniques for automated service composition, Ph.D. thesis, Department of Computer Science and Systems "Antonio Ruberti", SAPIENZA - Università di Roma, Rome, Italy, Sebastian Sardiña, Fabio Patrizi, and Giuseppe De Giacomo, Behavior composition in the presence of failure, KR (Gerhard Brewka and Jérôme Lang, eds.), AAAI Press, 2008, pp C. Di Ciccio (SAPIENZA Università di Roma) Goal-based Composition of Stateful Services... CoopIS 2012 (Rome, 2012/09/14) 35 / 35

The Roman Model for Automated Synthesis in Practice: the SM4All Experience

The Roman Model for Automated Synthesis in Practice: the SM4All Experience The Roman Model for Automated Synthesis in Practice: the SM4All Experience An implementation of the game structure based automated syntesis of services applied to a real scenario Mario Caruso 1 Claudio

More information

Fabio Patrizi DIS Sapienza - University of Rome

Fabio Patrizi DIS Sapienza - University of Rome Fabio Patrizi DIS Sapienza - University of Rome Overview Introduction to Services The Composition Problem Two frameworks for composition: Non data-aware services Data-aware services Conclusion & Research

More information

Composability of Infinite-State Activity Automata*

Composability of Infinite-State Activity Automata* Composability of Infinite-State Activity Automata* Zhe Dang 1, Oscar H. Ibarra 2, Jianwen Su 2 1 Washington State University, Pullman 2 University of California, Santa Barbara Presented by Prof. Hsu-Chun

More information

Online and Minimum-Cost Ad Hoc Delegation in e-service Composition

Online and Minimum-Cost Ad Hoc Delegation in e-service Composition Online and Minimum-Cost Ad Hoc Delegation in e-service Composition Cagdas E. Gerede Oscar H. Ibarra Dept. of Computer Science University of California Santa Barbara, CA, 93106, USA Bala Ravikumar Dept.

More information

Automatic Service Composition and Collection of Data

Automatic Service Composition and Collection of Data Modeling Data & Processes for Service Specifications in Colombo Daniela Berardi, Diego Calvanese 2, Giuseppe De Giacomo Richard Hull 3, Maurizio Lenzerini, and Massimo Mecella Università di Roma La Sapienza,

More information

Software Model Checking: Theory and Practice

Software Model Checking: Theory and Practice Software Model Checking: Theory and Practice Lecture: Specification Checking - LTL Model Checking Copyright 2004, Matt Dwyer, John Hatcliff, and Robby. The syllabus and all lectures for this course are

More information

P2P Data Integration and the Semantic Network Marketing System

P2P Data Integration and the Semantic Network Marketing System Principles of peer-to-peer data integration Maurizio Lenzerini Dipartimento di Informatica e Sistemistica Università di Roma La Sapienza Via Salaria 113, I-00198 Roma, Italy lenzerini@dis.uniroma1.it Abstract.

More information

Data integration and reconciliation in Data Warehousing: Conceptual modeling and reasoning support

Data integration and reconciliation in Data Warehousing: Conceptual modeling and reasoning support Data integration and reconciliation in Data Warehousing: Conceptual modeling and reasoning support Diego Calvanese Giuseppe De Giacomo Riccardo Rosati Dipartimento di Informatica e Sistemistica Università

More information

T-79.186 Reactive Systems: Introduction and Finite State Automata

T-79.186 Reactive Systems: Introduction and Finite State Automata T-79.186 Reactive Systems: Introduction and Finite State Automata Timo Latvala 14.1.2004 Reactive Systems: Introduction and Finite State Automata 1-1 Reactive Systems Reactive systems are a class of software

More information

A Framework for the Semantics of Behavioral Contracts

A Framework for the Semantics of Behavioral Contracts A Framework for the Semantics of Behavioral Contracts Ashley McNeile Metamaxim Ltd, 48 Brunswick Gardens, London W8 4AN, UK ashley.mcneile@metamaxim.com Abstract. Contracts have proved a powerful concept

More information

Accessing Data Integration Systems through Conceptual Schemas (extended abstract)

Accessing Data Integration Systems through Conceptual Schemas (extended abstract) Accessing Data Integration Systems through Conceptual Schemas (extended abstract) Andrea Calì, Diego Calvanese, Giuseppe De Giacomo, Maurizio Lenzerini Dipartimento di Informatica e Sistemistica Università

More information

A Constraint Programming Application for Rotating Workforce Scheduling

A Constraint Programming Application for Rotating Workforce Scheduling A Constraint Programming Application for Rotating Workforce Scheduling Markus Triska and Nysret Musliu Database and Artificial Intelligence Group Vienna University of Technology {triska,musliu}@dbai.tuwien.ac.at

More information

Today s Agenda. Automata and Logic. Quiz 4 Temporal Logic. Introduction Buchi Automata Linear Time Logic Summary

Today s Agenda. Automata and Logic. Quiz 4 Temporal Logic. Introduction Buchi Automata Linear Time Logic Summary Today s Agenda Quiz 4 Temporal Logic Formal Methods in Software Engineering 1 Automata and Logic Introduction Buchi Automata Linear Time Logic Summary Formal Methods in Software Engineering 2 1 Buchi Automata

More information

Formal Languages and Automata Theory - Regular Expressions and Finite Automata -

Formal Languages and Automata Theory - Regular Expressions and Finite Automata - Formal Languages and Automata Theory - Regular Expressions and Finite Automata - Samarjit Chakraborty Computer Engineering and Networks Laboratory Swiss Federal Institute of Technology (ETH) Zürich March

More information

Query Reformulation over Ontology-based Peers (Extended Abstract)

Query Reformulation over Ontology-based Peers (Extended Abstract) Query Reformulation over Ontology-based Peers (Extended Abstract) Diego Calvanese 1, Giuseppe De Giacomo 2, Domenico Lembo 2, Maurizio Lenzerini 2, and Riccardo Rosati 2 1 Faculty of Computer Science,

More information

A Tool for Generating Partition Schedules of Multiprocessor Systems

A Tool for Generating Partition Schedules of Multiprocessor Systems A Tool for Generating Partition Schedules of Multiprocessor Systems Hans-Joachim Goltz and Norbert Pieth Fraunhofer FIRST, Berlin, Germany {hans-joachim.goltz,nobert.pieth}@first.fraunhofer.de Abstract.

More information

Probabilistic Model Checking at Runtime for the Provisioning of Cloud Resources

Probabilistic Model Checking at Runtime for the Provisioning of Cloud Resources Probabilistic Model Checking at Runtime for the Provisioning of Cloud Resources Athanasios Naskos, Emmanouela Stachtiari, Panagiotis Katsaros, and Anastasios Gounaris Aristotle University of Thessaloniki,

More information

The Model Checker SPIN

The Model Checker SPIN The Model Checker SPIN Author: Gerard J. Holzmann Presented By: Maulik Patel Outline Introduction Structure Foundation Algorithms Memory management Example/Demo SPIN-Introduction Introduction SPIN (Simple(

More information

http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86

http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86 Atlantic Electronic http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86 AUTOMATED RECOGNITION OF STUTTER INVARIANCE OF LTL FORMULAS Jeffrey Dallien 1 and Wendy

More information

Formal Verification by Model Checking

Formal Verification by Model Checking Formal Verification by Model Checking Natasha Sharygina Carnegie Mellon University Guest Lectures at the Analysis of Software Artifacts Class, Spring 2005 1 Outline Lecture 1: Overview of Model Checking

More information

A Tutorial on Data Integration

A Tutorial on Data Integration A Tutorial on Data Integration Maurizio Lenzerini Dipartimento di Informatica e Sistemistica Antonio Ruberti, Sapienza Università di Roma DEIS 10 - Data Exchange, Integration, and Streaming November 7-12,

More information

EFFICIENT KNOWLEDGE BASE MANAGEMENT IN DCSP

EFFICIENT KNOWLEDGE BASE MANAGEMENT IN DCSP EFFICIENT KNOWLEDGE BASE MANAGEMENT IN DCSP Hong Jiang Mathematics & Computer Science Department, Benedict College, USA jiangh@benedict.edu ABSTRACT DCSP (Distributed Constraint Satisfaction Problem) has

More information

INF5140: Specification and Verification of Parallel Systems

INF5140: Specification and Verification of Parallel Systems INF5140: Specification and Verification of Parallel Systems Lecture 7 LTL into Automata and Introduction to Promela Gerardo Schneider Department of Informatics University of Oslo INF5140, Spring 2007 Gerardo

More information

Formal Verification and Linear-time Model Checking

Formal Verification and Linear-time Model Checking Formal Verification and Linear-time Model Checking Paul Jackson University of Edinburgh Automated Reasoning 21st and 24th October 2013 Why Automated Reasoning? Intellectually stimulating and challenging

More information

Course Outline Department of Computing Science Faculty of Science. COMP 3710-3 Applied Artificial Intelligence (3,1,0) Fall 2015

Course Outline Department of Computing Science Faculty of Science. COMP 3710-3 Applied Artificial Intelligence (3,1,0) Fall 2015 Course Outline Department of Computing Science Faculty of Science COMP 710 - Applied Artificial Intelligence (,1,0) Fall 2015 Instructor: Office: Phone/Voice Mail: E-Mail: Course Description : Students

More information

OntoPIM: How to Rely on a Personal Ontology for Personal Information Management

OntoPIM: How to Rely on a Personal Ontology for Personal Information Management OntoPIM: How to Rely on a Personal Ontology for Personal Information Management Vivi Katifori 2, Antonella Poggi 1, Monica Scannapieco 1, Tiziana Catarci 1, and Yannis Ioannidis 2 1 Dipartimento di Informatica

More information

logic language, static/dynamic models SAT solvers Verified Software Systems 1 How can we model check of a program or system?

logic language, static/dynamic models SAT solvers Verified Software Systems 1 How can we model check of a program or system? 5. LTL, CTL Last part: Alloy logic language, static/dynamic models SAT solvers Today: Temporal Logic (LTL, CTL) Verified Software Systems 1 Overview How can we model check of a program or system? Modeling

More information

Matching Midlet's Security Claims with a Platform Security Policy using Automata Modulo Theory

Matching Midlet's Security Claims with a Platform Security Policy using Automata Modulo Theory Matching Midlet's Security Claims with a Platform Security Policy using Automata Modulo Theory Fabio Massacci, Ida Siahan (University of ) www.massacci.org www.s3ms-project.org NORDSEC-2007 1 Motivation

More information

Task Management under Change and Uncertainty

Task Management under Change and Uncertainty Task Management under Change and Uncertainty Constraint Solving Experience with the CALO Project Pauline M. Berry, Karen Myers, Tomás E. Uribe, and Neil Yorke-Smith Artificial Intelligence Center, SRI

More information

Testing LTL Formula Translation into Büchi Automata

Testing LTL Formula Translation into Büchi Automata Testing LTL Formula Translation into Büchi Automata Heikki Tauriainen and Keijo Heljanko Helsinki University of Technology, Laboratory for Theoretical Computer Science, P. O. Box 5400, FIN-02015 HUT, Finland

More information

ForeverSOA: Towards the Maintenance of Service Oriented Software

ForeverSOA: Towards the Maintenance of Service Oriented Software Author manuscript, published in "SQM 20 - Fifth CSMR International Workshop on Software Quality and Maintainability (20)" ForeverSOA: Towards the Maintenance of Service Oriented Software Dionysis Athanasopoulos

More information

Composite Process Oriented Service Discovery in Preserving Business and Timed Relation

Composite Process Oriented Service Discovery in Preserving Business and Timed Relation Composite Process Oriented Service Discovery in Preserving Business and Timed Relation Yu Dai, Lei Yang, Bin Zhang, and Kening Gao College of Information Science and Technology Northeastern University

More information

Software Modeling and Verification

Software Modeling and Verification Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system

More information

Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection

Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection Martin Leucker Technische Universität München (joint work with Andreas Bauer, Christian Schallhart et. al) FLACOS

More information

6.080/6.089 GITCS Feb 12, 2008. Lecture 3

6.080/6.089 GITCS Feb 12, 2008. Lecture 3 6.8/6.89 GITCS Feb 2, 28 Lecturer: Scott Aaronson Lecture 3 Scribe: Adam Rogal Administrivia. Scribe notes The purpose of scribe notes is to transcribe our lectures. Although I have formal notes of my

More information

Pushdown automata. Informatics 2A: Lecture 9. Alex Simpson. 3 October, 2014. School of Informatics University of Edinburgh als@inf.ed.ac.

Pushdown automata. Informatics 2A: Lecture 9. Alex Simpson. 3 October, 2014. School of Informatics University of Edinburgh als@inf.ed.ac. Pushdown automata Informatics 2A: Lecture 9 Alex Simpson School of Informatics University of Edinburgh als@inf.ed.ac.uk 3 October, 2014 1 / 17 Recap of lecture 8 Context-free languages are defined by context-free

More information

Software Engineering using Formal Methods

Software Engineering using Formal Methods Software Engineering using Formal Methods Model Checking with Temporal Logic Wolfgang Ahrendt 24th September 2013 SEFM: Model Checking with Temporal Logic /GU 130924 1 / 33 Model Checking with Spin model

More information

Tools for Composite Web Services: A Short Overview

Tools for Composite Web Services: A Short Overview Tools for Composite Web Services: A Short Overview Richard Hull Bell Labs Research Lucent Technologies hull@lucent.com Jianwen Su Department of Computer Science UC Santa Barbara su@cs.ucsb.edu ABSTRACT

More information

Remarks on the GWV Firewall

Remarks on the GWV Firewall Remarks on the GWV Firewall Ron van der Meyden School of Computer Science and Engineering, University of New South Wales October 18, 2010 Abstract Greve, Wilding and Vanfleet (2003) have proposed a formal

More information

A Multi-agent System for Knowledge Management based on the Implicit Culture Framework

A Multi-agent System for Knowledge Management based on the Implicit Culture Framework A Multi-agent System for Knowledge Management based on the Implicit Culture Framework Enrico Blanzieri Paolo Giorgini Fausto Giunchiglia Claudio Zanoni Department of Information and Communication Technology

More information

Fundamentals of Software Engineering

Fundamentals of Software Engineering Fundamentals of Software Engineering Model Checking with Temporal Logic Ina Schaefer Institute for Software Systems Engineering TU Braunschweig, Germany Slides by Wolfgang Ahrendt, Richard Bubel, Reiner

More information

Best Place to Find the Best Jobs Out There

Best Place to Find the Best Jobs Out There Safer in the Clouds (Extended Abstract) Chiara Bodei, Viet Dung Dinh and Gian Luigi Ferrari Dipartimento di Informatica, Università di Pisa, Italy {chiara,dinh,giangi}@diunipiit We outline the design of

More information

Behavioral Service Substitution: Analysis and Synthesis

Behavioral Service Substitution: Analysis and Synthesis Behavioral Service Substitution: Analysis and Synthesis D I S S E R T A T I O N zur Erlangung des akademischen Grades Dr. rer. nat. im Fach Informatik eingereicht an der Mathematisch-Naturwissenschaftlichen

More information

Algorithmic Software Verification

Algorithmic Software Verification Algorithmic Software Verification (LTL Model Checking) Azadeh Farzan What is Verification Anyway? Proving (in a formal way) that program satisfies a specification written in a logical language. Formal

More information

Updating Action Domain Descriptions

Updating Action Domain Descriptions Updating Action Domain Descriptions Thomas Eiter, Esra Erdem, Michael Fink, and Ján Senko Institute of Information Systems, Vienna University of Technology, Vienna, Austria Email: (eiter esra michael jan)@kr.tuwien.ac.at

More information

Automated Composition of Semantic Web Services into Executable Processes

Automated Composition of Semantic Web Services into Executable Processes Automated Composition of Semantic Web Services into Executable Processes P. Traverso and M. Pistore ITC-IRST - University of Trento traverso@itc.it - pistore@dit.unitn.it Abstract. Different planning techniques

More information

Optimal Planning with ACO

Optimal Planning with ACO Optimal Planning with ACO M.Baioletti, A.Milani, V.Poggioni, F.Rossi Dipartimento Matematica e Informatica Universit di Perugia, ITALY email: {baioletti, milani, poggioni, rossi}@dipmat.unipg.it Abstract.

More information

Consistent Answers from Integrated Data Sources

Consistent Answers from Integrated Data Sources Consistent Answers from Integrated Data Sources Leopoldo Bertossi 1, Jan Chomicki 2 Alvaro Cortés 3, and Claudio Gutiérrez 4 1 Carleton University, School of Computer Science, Ottawa, Canada. bertossi@scs.carleton.ca

More information

Specification and Analysis of Contracts Lecture 1 Introduction

Specification and Analysis of Contracts Lecture 1 Introduction Specification and Analysis of Contracts Lecture 1 Introduction Gerardo Schneider gerardo@ifi.uio.no http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo SEFM School, Oct. 27 - Nov.

More information

Automata-Based Verification of Temporal Properties on Running Programs Dimitra Giannakopoulou Klaus Havelund

Automata-Based Verification of Temporal Properties on Running Programs Dimitra Giannakopoulou Klaus Havelund Automata-Based Verification of Temporal Properties on Running Programs Dimitra Giannakopoulou Klaus Havelund RIACS Technical Report 01.21 August 2001 Presented at the 16 th IEEE International Conference

More information

KEEP THIS COPY FOR REPRODUCTION PURPOSES. I ~~~~~Final Report

KEEP THIS COPY FOR REPRODUCTION PURPOSES. I ~~~~~Final Report MASTER COPY KEEP THIS COPY FOR REPRODUCTION PURPOSES 1 Form Approved REPORT DOCUMENTATION PAGE I OMS No. 0704-0188 Public reoorting burden for this collection of information is estimated to average I hour

More information

Using Patterns and Composite Propositions to Automate the Generation of Complex LTL

Using Patterns and Composite Propositions to Automate the Generation of Complex LTL University of Texas at El Paso DigitalCommons@UTEP Departmental Technical Reports (CS) Department of Computer Science 8-1-2007 Using Patterns and Composite Propositions to Automate the Generation of Complex

More information

Reinforcement Learning of Task Plans for Real Robot Systems

Reinforcement Learning of Task Plans for Real Robot Systems Reinforcement Learning of Task Plans for Real Robot Systems Pedro Tomás Mendes Resende pedro.resende@ist.utl.pt Instituto Superior Técnico, Lisboa, Portugal October 2014 Abstract This paper is the extended

More information

A Principled Approach to Data Integration and Reconciliation in Data Warehousing

A Principled Approach to Data Integration and Reconciliation in Data Warehousing A Principled Approach to Data Integration and Reconciliation in Data Warehousing Diego Calvanese, Giuseppe De Giacomo, Maurizio Lenzerini, Daniele Nardi, Riccardo Rosati Dipartimento di Informatica e Sistemistica,

More information

Towards a Comprehensive Design-time Compliance Management: A Roadmap

Towards a Comprehensive Design-time Compliance Management: A Roadmap Towards a Comprehensive Design-time Management: A Roadmap Amal Elgammal, Ph.D. Candidate, Tilburg, The Netherlands, a.f.s.a.elgammal@uvt.nl Oktay Turetken, Post-doc Researcher, Tilburg, The Netherlands,

More information

Optimal Scheduling for Dependent Details Processing Using MS Excel Solver

Optimal Scheduling for Dependent Details Processing Using MS Excel Solver BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 8, No 2 Sofia 2008 Optimal Scheduling for Dependent Details Processing Using MS Excel Solver Daniela Borissova Institute of

More information

Data Quality in Ontology-Based Data Access: The Case of Consistency

Data Quality in Ontology-Based Data Access: The Case of Consistency Proceedings of the Twenty-Eighth AAAI Conference on Artificial Intelligence Data Quality in Ontology-Based Data Access: The Case of Consistency Marco Console, Maurizio Lenzerini Dipartimento di Ingegneria

More information

A Mathematical Programming Solution to the Mars Express Memory Dumping Problem

A Mathematical Programming Solution to the Mars Express Memory Dumping Problem A Mathematical Programming Solution to the Mars Express Memory Dumping Problem Giovanni Righini and Emanuele Tresoldi Dipartimento di Tecnologie dell Informazione Università degli Studi di Milano Via Bramante

More information

Lecture 2: Universality

Lecture 2: Universality CS 710: Complexity Theory 1/21/2010 Lecture 2: Universality Instructor: Dieter van Melkebeek Scribe: Tyson Williams In this lecture, we introduce the notion of a universal machine, develop efficient universal

More information

Turing Machines: An Introduction

Turing Machines: An Introduction CIT 596 Theory of Computation 1 We have seen several abstract models of computing devices: Deterministic Finite Automata, Nondeterministic Finite Automata, Nondeterministic Finite Automata with ɛ-transitions,

More information

Introduction to Logic in Computer Science: Autumn 2006

Introduction to Logic in Computer Science: Autumn 2006 Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Now that we have a basic understanding

More information

MASSIMILIANO DE LEONI

MASSIMILIANO DE LEONI MASSIMILIANO DE LEONI VIA KENNEDY, 239 04100 LATINA ITALY TEL. : +39 348 78 48 314 BORN IN NAPLES (ITALY), 18/3/1980 ITALIAN CITIZENSHIP SINGLE E-MAIL: deleoni@dis.uniroma1.it WWW: www.dis.uniroma1.it/~deleoni

More information

Runtime Verification for Real-Time Automotive Embedded Software

Runtime Verification for Real-Time Automotive Embedded Software Runtime Verification for Real-Time Automotive Embedded Software S. Cotard, S. Faucou, J.-L. Béchennec, A. Queudet, Y. Trinquet 10th school of Modelling and Verifying Parallel processes (MOVEP) Runtime

More information

Formal Verification of Software

Formal Verification of Software Formal Verification of Software Sabine Broda Department of Computer Science/FCUP 12 de Novembro de 2014 Sabine Broda (DCC-FCUP) Formal Verification of Software 12 de Novembro de 2014 1 / 26 Formal Verification

More information

UPDATES OF LOGIC PROGRAMS

UPDATES OF LOGIC PROGRAMS Computing and Informatics, Vol. 20, 2001,????, V 2006-Nov-6 UPDATES OF LOGIC PROGRAMS Ján Šefránek Department of Applied Informatics, Faculty of Mathematics, Physics and Informatics, Comenius University,

More information

A Case Study of Question Answering in Automatic Tourism Service Packaging

A Case Study of Question Answering in Automatic Tourism Service Packaging BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 13, Special Issue Sofia 2013 Print ISSN: 1311-9702; Online ISSN: 1314-4081 DOI: 10.2478/cait-2013-0045 A Case Study of Question

More information

GOAL-BASED INTELLIGENT AGENTS

GOAL-BASED INTELLIGENT AGENTS International Journal of Information Technology, Vol. 9 No. 1 GOAL-BASED INTELLIGENT AGENTS Zhiqi Shen, Robert Gay and Xuehong Tao ICIS, School of EEE, Nanyang Technological University, Singapore 639798

More information

Context-Bounded Model Checking of LTL Properties for ANSI-C Software. Jeremy Morse, Lucas Cordeiro, Bernd Fischer, Denis Nicole

Context-Bounded Model Checking of LTL Properties for ANSI-C Software. Jeremy Morse, Lucas Cordeiro, Bernd Fischer, Denis Nicole Context-Bounded Model Checking of LTL Properties for ANSI-C Software Jeremy Morse, Lucas Cordeiro, Bernd Fischer, Denis Nicole Model Checking C Model checking: normally applied to formal state transition

More information

Layered Approach to Development of OO War Game Models Using DEVS Framework

Layered Approach to Development of OO War Game Models Using DEVS Framework Layered Approach to Development of OO War Game Models Using DEVS Framework Chang Ho Sung*, Su-Youn Hong**, and Tag Gon Kim*** Department of EECS KAIST 373-1 Kusong-dong, Yusong-gu Taejeon, Korea 305-701

More information

What to Ask to a Peer: Ontology-based Query Reformulation

What to Ask to a Peer: Ontology-based Query Reformulation What to Ask to a Peer: Ontology-based Query Reformulation Diego Calvanese Faculty of Computer Science Free University of Bolzano/Bozen Piazza Domenicani 3, I-39100 Bolzano, Italy calvanese@inf.unibz.it

More information

Data Management in Peer-to-Peer Data Integration Systems

Data Management in Peer-to-Peer Data Integration Systems Book Title Book Editors IOS Press, 2003 1 Data Management in Peer-to-Peer Data Integration Systems Diego Calvanese a, Giuseppe De Giacomo b, Domenico Lembo b,1, Maurizio Lenzerini b, and Riccardo Rosati

More information

An Object Oriented Role-based Access Control Model for Secure Domain Environments

An Object Oriented Role-based Access Control Model for Secure Domain Environments International Journal of Network Security, Vol.4, No.1, PP.10 16, Jan. 2007 10 An Object Oriented -based Access Control Model for Secure Domain Environments Cungang Yang Department of Electrical and Computer

More information

A Logic Approach for LTL System Modification

A Logic Approach for LTL System Modification A Logic Approach for LTL System Modification Yulin Ding and Yan Zhang School of Computing & Information Technology University of Western Sydney Kingswood, N.S.W. 1797, Australia email: {yding,yan}@cit.uws.edu.au

More information

Regular Expressions and Automata using Haskell

Regular Expressions and Automata using Haskell Regular Expressions and Automata using Haskell Simon Thompson Computing Laboratory University of Kent at Canterbury January 2000 Contents 1 Introduction 2 2 Regular Expressions 2 3 Matching regular expressions

More information

On the Modeling and Verification of Security-Aware and Process-Aware Information Systems

On the Modeling and Verification of Security-Aware and Process-Aware Information Systems On the Modeling and Verification of Security-Aware and Process-Aware Information Systems 29 August 2011 What are workflows to us? Plans or schedules that map users or resources to tasks Such mappings may

More information

Implementation of Recursively Enumerable Languages using Universal Turing Machine in JFLAP

Implementation of Recursively Enumerable Languages using Universal Turing Machine in JFLAP International Journal of Information and Computation Technology. ISSN 0974-2239 Volume 4, Number 1 (2014), pp. 79-84 International Research Publications House http://www. irphouse.com /ijict.htm Implementation

More information

MetaGame: An Animation Tool for Model-Checking Games

MetaGame: An Animation Tool for Model-Checking Games MetaGame: An Animation Tool for Model-Checking Games Markus Müller-Olm 1 and Haiseung Yoo 2 1 FernUniversität in Hagen, Fachbereich Informatik, LG PI 5 Universitätsstr. 1, 58097 Hagen, Germany mmo@ls5.informatik.uni-dortmund.de

More information

Theorem (informal statement): There are no extendible methods in David Chalmers s sense unless P = NP.

Theorem (informal statement): There are no extendible methods in David Chalmers s sense unless P = NP. Theorem (informal statement): There are no extendible methods in David Chalmers s sense unless P = NP. Explication: In his paper, The Singularity: A philosophical analysis, David Chalmers defines an extendible

More information

Regular Languages and Finite Automata

Regular Languages and Finite Automata Regular Languages and Finite Automata 1 Introduction Hing Leung Department of Computer Science New Mexico State University Sep 16, 2010 In 1943, McCulloch and Pitts [4] published a pioneering work on a

More information

INTEROPERABILITY IN DATA WAREHOUSES

INTEROPERABILITY IN DATA WAREHOUSES INTEROPERABILITY IN DATA WAREHOUSES Riccardo Torlone Roma Tre University http://torlone.dia.uniroma3.it/ SYNONYMS Data warehouse integration DEFINITION The term refers to the ability of combining the content

More information

A Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems

A Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems A Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems Vincenzo Grassi Università di Roma Tor Vergata, Italy Raffaela Mirandola {vgrassi, mirandola}@info.uniroma2.it Abstract.

More information

Policy Analysis for Administrative Role Based Access Control without Separate Administration

Policy Analysis for Administrative Role Based Access Control without Separate Administration Policy nalysis for dministrative Role Based ccess Control without Separate dministration Ping Yang Department of Computer Science, State University of New York at Binghamton, US Mikhail I. Gofman Department

More information

MONPOLY: Monitoring Usage-control Policies

MONPOLY: Monitoring Usage-control Policies MONPOLY: Monitoring Usage-control Policies David Basin, Matúš Harvan, Felix Klaedtke, and Eugen Zălinescu Computer Science Department, ETH Zurich, Switzerland 1 Introduction Determining whether the usage

More information

A Formal Methodology for Procedural Security Assessment

A Formal Methodology for Procedural Security Assessment A Formal Methodology for Procedural Security Assessment Komminist Weldemariam and Adolfo Villafiorita Center For Information Technology Fondazione Bruno Kessler Trento 38100, Italy Email: (sisai,adolfo)@fbk.eu

More information

Combining Software and Hardware Verification Techniques

Combining Software and Hardware Verification Techniques Formal Methods in System Design, 21, 251 280, 2002 c 2002 Kluwer Academic Publishers. Manufactured in The Netherlands. Combining Software and Hardware Verification Techniques ROBERT P. KURSHAN VLADIMIR

More information

0 0-10 5-30 8-39. Rover. ats gotorock getrock gotos. same time compatibility. Rock. withrover 8-39 TIME

0 0-10 5-30 8-39. Rover. ats gotorock getrock gotos. same time compatibility. Rock. withrover 8-39 TIME Verication of plan models using UPPAAL Lina Khatib 1, Nicola Muscettola, and Klaus Havelund 2 NASA Ames Research Center, MS 269-2 Moett Field, CA 94035 1 QSS Group, Inc. 2 RECOM Technologies flina,mus,havelundg@ptolemy.arc.nasa.gov

More information

A Propositional Dynamic Logic for CCS Programs

A Propositional Dynamic Logic for CCS Programs A Propositional Dynamic Logic for CCS Programs Mario R. F. Benevides and L. Menasché Schechter {mario,luis}@cos.ufrj.br Abstract This work presents a Propositional Dynamic Logic in which the programs are

More information

introduction to program monitoring

introduction to program monitoring introduction to program monitoring CS 119 part II beyond assert and print course website http://www.runtime-verification.org/course09 action standing order: sell when price drops more than 2% within 1

More information

Random vs. Structure-Based Testing of Answer-Set Programs: An Experimental Comparison

Random vs. Structure-Based Testing of Answer-Set Programs: An Experimental Comparison Random vs. Structure-Based Testing of Answer-Set Programs: An Experimental Comparison Tomi Janhunen 1, Ilkka Niemelä 1, Johannes Oetsch 2, Jörg Pührer 2, and Hans Tompits 2 1 Aalto University, Department

More information

Deterministic Finite Automata

Deterministic Finite Automata 1 Deterministic Finite Automata Definition: A deterministic finite automaton (DFA) consists of 1. a finite set of states (often denoted Q) 2. a finite set Σ of symbols (alphabet) 3. a transition function

More information

Offline Synthesis Engine in Practice: Usage Instructions

Offline Synthesis Engine in Practice: Usage Instructions Offline Synthesis Engine in Practice: Usage Instructions DIPARTIMENTO INGEGNERIA INFORMATICA, AUTOMATICA E GESTIONALE Ing. Mario Caruso Ing. Claudio Di Ciccio Prof. Massimo Mecella - (ettore.iacomussi@uniroma1.it)

More information

Towards Automated Conformance Checking of ebbp-st Choreographies and Corresponding WS-BPEL Based Orchestrations

Towards Automated Conformance Checking of ebbp-st Choreographies and Corresponding WS-BPEL Based Orchestrations Towards Automated Conformance Checking of ebbp-st Choreographies and Corresponding WS-BPEL Based Orchestrations Matthias Geiger, Andreas Schönberger and Guido Wirtz Distributed and Mobile Systems Group,

More information

A Slot Representation of the Resource-Centric Models for Scheduling Problems

A Slot Representation of the Resource-Centric Models for Scheduling Problems A Slot Representation of the Resource-Centric Models for Scheduling Problems Roman Barták * Charles University, Faculty of Mathematics and Physics Department of Theoretical Computer Science Malostranské

More information

LOCAL SURFACE PATCH BASED TIME ATTENDANCE SYSTEM USING FACE. indhubatchvsa@gmail.com

LOCAL SURFACE PATCH BASED TIME ATTENDANCE SYSTEM USING FACE. indhubatchvsa@gmail.com LOCAL SURFACE PATCH BASED TIME ATTENDANCE SYSTEM USING FACE 1 S.Manikandan, 2 S.Abirami, 2 R.Indumathi, 2 R.Nandhini, 2 T.Nanthini 1 Assistant Professor, VSA group of institution, Salem. 2 BE(ECE), VSA

More information

State-Driven Testing of Distributed Systems: Appendix

State-Driven Testing of Distributed Systems: Appendix State-Driven Testing of Distributed Systems: Appendix Domenico Cotroneo, Roberto Natella, Stefano Russo, Fabio Scippacercola Università degli Studi di Napoli Federico II {cotroneo,roberto.natella,sterusso,fabio.scippacercola}@unina.it

More information

Optimizing Description Logic Subsumption

Optimizing Description Logic Subsumption Topics in Knowledge Representation and Reasoning Optimizing Description Logic Subsumption Maryam Fazel-Zarandi Company Department of Computer Science University of Toronto Outline Introduction Optimization

More information

Secure Cloud Transactions by Performance, Accuracy, and Precision

Secure Cloud Transactions by Performance, Accuracy, and Precision Secure Cloud Transactions by Performance, Accuracy, and Precision Patil Vaibhav Nivrutti M.Tech Student, ABSTRACT: In distributed transactional database systems deployed over cloud servers, entities cooperate

More information

An Experiment on the Effect of Design Recording on Impact Analysis

An Experiment on the Effect of Design Recording on Impact Analysis An Experiment on the Effect of Design Recording on Impact Analysis F. Abbattista, F. Lanubile, G. Mastelloni, and G. Visaggio Dipartimento di Informatica University of Bari, Italy Abstract An experimental

More information

Automatic Composition of Web Services

Automatic Composition of Web Services Automatic Composition of Web Services N. Guermouche, O. Perrin, C. Ringeissen LORIA Réunion COPS 3. Guermouche, O. Perrin, C. Ringeissen (LORIA) Automatic Composition of Web Services Réunion COPS 3 1 /

More information

Automatic Verification of Data-Centric Business Processes

Automatic Verification of Data-Centric Business Processes Automatic Verification of Data-Centric Business Processes Alin Deutsch UC San Diego Richard Hull IBM Yorktown Heights Fabio Patrizi Sapienza Univ. of Rome Victor Vianu UC San Diego Abstract We formalize

More information