25
AG Corporate Semantic Web Freie Universitä t Berlin http://www.inf.fu-berlin.de/groups/ag-csw/ A Rule-Based Agent-Oriented Framework for Weakly-Structured Scientific Workflows Zhili Zhao [email protected] Supervisors Prof. Dr. Adrian Paschke Prof. Dr. Hans Weigand Freie Universität Berlin Tilburg University

A Rule-Based Agent-Oriented Framework for Weakly ... Rule-Based Agent-Oriented Framework for Weakly-Structured Scientific Workflows ... An expressive rule-based workflow language

  • Upload
    dothu

  • View
    229

  • Download
    4

Embed Size (px)

Citation preview

AG Corporate Semantic Web

Freie Universität Berlin

http://www.inf.fu-berlin.de/groups/ag-csw/

A Rule-Based Agent-Oriented Framework

for

Weakly-Structured Scientific Workflows

Zhili Zhao

[email protected]

Supervisors

Prof. Dr. Adrian Paschke Prof. Dr. Hans Weigand

Freie Universität Berlin Tilburg University

2

Contributions

An expressive rule-based workflow language

− Combines messaging reaction rules and derivation rules

Domain-specific decision logic expression

− Combines logic programs with description logic

Adaptive workflow execution

− Distributed inference agents

− Integrating orchestration and choreography

− Different ways of exception handling

Asynchronous user interaction

− A Web-based human agent

− Manual tasks, workflow steering and exception handling

3

Outline

I. Proposed Solution

II. Proof-of-Concept

III. Evaluation

4

Outline

I. Proposed Solution

II. Proof-of-Concept

III. Evaluation

5

Rule-based Agent-Oriented Framework: RbAF

Rule-based workflow specification combining messaging

reaction rules and derivation rules

Distributed inference agents as the execution environment

Rule-based workflow specification combining messaging

reaction rules and derivation rules

Distributed inference agents as the execution environment

6

Upper-Level Workflow Ontology

Defines general concepts and their

relations

Supports for task allocation, execution

and exception handling

Can be further specialized into domain-

specific ontologies Protein Prediction Analysis

Workflow Ontology

Upper-level Workflow Ontology

specialize specialize

7

Describing Workflows with Messaging

Reaction Rules

sequential block

parallel block

iterative block

Event

message

Messaging Reaction Rules

Explicit sending and receiving messages

Associated with conversation identifiers

Complex Event Processing (CEP)-based process logic description

Messaging Reaction Rules

Explicit sending and receiving messages

Associated with conversation identifiers

Complex Event Processing (CEP)-based process logic description

8

Asynchronous User Interaction

Human Agent manages the life cycle of human tasks

Human users operate the tasks via a Web-based client

Human Agent manages the life cycle of human tasks

Human users operate the tasks via a Web-based client

9

Process of Exception Handling

Replacing exceptional resources

dynamically (automatic)

Replacing exceptional resources

dynamically (automatic) Human interaction

(manual)

Human interaction

(manual)

10

Domain-Specific Policy Expression

Semantic Web Data Integration

Decision Logic with Derivation rules Adapted from [Kindler, 2006]

Logical derivation rules:

q (consequent) p (antecedent)

More expressive than simple

Boolean expressions

Logical derivation rules:

q (consequent) p (antecedent)

More expressive than simple

Boolean expressions

Integrating Semantic Web data:

Querying simple vocabularies with

SPARQL

Incorporating ontologies as typed rules

Reasoning ontologies

Integrating Semantic Web data:

Querying simple vocabularies with

SPARQL

Incorporating ontologies as typed rules

Reasoning ontologies

11

CTR-Based Workflow Representation/1

CTR (Concurrent Transaction Logic) [Bonner et al., 1996]

A general logic for state-changing actions

Supports both serial and concurrent execution

Every transaction is a sequence of state changes (i.e., a state path)

Database Operation Semantics

Data oracle O d(D): specifies queries to a particular state D

Transition oracle Ot(D1, D2): specifies state transitions from D1 to D2

Complex Transactions

Serial transactions f j; concurrent transactions f | j;

nondeterministic transactions f j;

12

Workflow: a CTR goal, which is either:

An atomic transaction f or,

A complex transaction f j, f | j and f j

Primitive task: a predicate p(arg1, …, argn)

Composite Task: a CTR rule p f (f is a CTR goal)

Optional task: a CTR rule p f state (state is constant)

Workflow Task Semantics O d(D) specifies queries to a particular workflow state D;

Ot (D1, D2) specifies tasks t (I, O) that consume input data I and generate

output data O, D2 = D1 U {O} – {I}.

Example:

Workflow: processA | processB

processA taskA1 taskA2 send(ch1, startB2) taskA3

processB taskB1 receive(ch1, startB2) taskB3

CTR-Based Workflow Representation/2

13

Outline

I. Proposed Solution

II. Proof-of-Concept

III. Evaluation

14

Proof-of-concept Implementation: RAWLS

Prova [Prova Rule Language, 2010]: a Semantic Web rule engine

Combines the benefits of declarative and object-oriented programming

Provides access to external data

Mule ESB (Enterprise Service

Bus) [Mule ESB, 2012] :

Supports the agent

integration and

communication

Reaction RuleML [Paschke, 2014]:

Represents workflow

requests and results

ESB-Based System Architecture

15

Web-Based User Client

RDF Data Management

Workflow Inspection and

Invocation

Exception Management

Human Task Management

16

Outline

I. Proposed Solution

II. Proof-of-Concept

III. Evaluation

17

Control-Flow-Based Evaluation

Control-flow pattern examples:

Data: 35 control-flow patterns delivered by the Workflow Patterns Initiative

(excludes Cancellation and Force Completion patterns) [Russell et al, 2006]

Target Systems: Kepler, Taverna, Triana and RAWLS

Multiple Instances without Synchronization

Multi-Choice Deferred Choice

Sequence Exclusive Choice Synchronization

C A B C

A

B C

B

A

18

Control-Flow-Based Evaluation Results

Basic Control Flow Patterns A B C D

1. Sequence + + + +

2. Parallel Split + + + +

3. Synchronization + + + +

4. Exclusive Choice + - + +

5. Simple Merge + + + +

Advanced Branching and

Synchronization Patterns A B C D

6. Multi-Choice + + + +

7. Structured Synchronizing Merge - - - +

8. Multi-Merge + + + +

9. Structured Discriminator - - - +

10. Blocking Discriminator - - - -

11. Structured Partial Join - - - +

12. Blocking Partial Join - - - -

13. Generalized AND-Join + + + +

14. Local Synchronizing Merge - - - +

15. General Synchronizing Merge - - - +

16. Thread Merge + - - +

17. Thread Split + - - +

Trigger Patterns A B C D

25. Transient Trigger - - - +

26. Persistent Trigger + + + +

Multiple Instance Patterns A B C D

30. Multiple Instances without

Synchronization + + + +

31. Multiple Instances with a

Priori Design-Time Knowledge - - - +

32. Multiple Instances with a

Priori Run-Time Knowledge - - - -

33. Multiple Instances without a

Priori Run-Time Knowledge - - - -

34. Static Partial Join for Multiple

Instances - - - +

35. Dynamic Partial Join for

Multiple Instances - - - -

State-Based Patterns A B C D

20. Deferred Choice - - - +

21. Interleaved Parallel Routing + - - -

22. Milestone - - - +

23. Critical Section - - - -

24. Interleaved Routing + - - -

A = Kepler, B = Taverna, C = Triana, D = RAWLS

A B C D

Results 18 10 13 26

Iteration Patterns A B C D

27. Arbitrary Cycles + - + +

28. Structured Loop + - + +

29. Recursion - - - +

Termination Patterns A B C D

18. Implicit Termination + + + +

19. Explicit Termination + - - -

The RAWLS:

Benefits from messaging

reaction rules and the CEP

Supports advanced

synchronization, state-based,

trigger and iteration patterns

Interleaved routing-related

patterns are not supported

1. ‘+’ = supported, ‘-’ = not

supported;

2. The evaluation results of Kepler,

Taverna and Triana are from [Migliorini et al., 2011]

19

Dataflow-Based Evaluation

Dataflow pattern examples:

Data: 40 dataflow patterns delivered by the Workflow Patterns Initiative [Russell et al, 2004]

Target Systems: Kepler, Taverna, Triana and RAWLS

Task to Environment (Push Oriented)

Data Transfer by Value

Task to Task (Global data store)

Task Precondition – Data Existence

Event-Based Task Trigger Multiple Instance Data

20

Dataflow-Based Evaluation Results

Data Visibility A B C D

1. Task Data + + + + 2. Block Data - - - - 3. Scope Data - - - - 4. Multiple Instance Data + + + + 5. Case Data - - - - 6. Folder Data - - - - 7. Workflow Data - - - - 8. Environment Data + + + +

Internal Data Interaction A B C D

9. Task to Task + + + + 10. Block Task to Sub-Workflow

Decomposition + + + +

11. Sub-Workflow Decomposition to Block

Task + + + +

12. to Multiple Instance Task + + + + 13. from Multiple Instance Task - - - + 14. Case to Case - - - -

External Data Interaction A B C D

15. Task to Environment - Push-Oriented + + + + 16. Environment to Task - Pull – Oriented + + + + 17. Environment to Task - Push-Oriented - - - + 18. Task to Environment - Pull-Oriented - - - + 19. Case to Environment - Push-Oriented + + + + 20. Environment to Case - Pull-Oriented + + + + 21. Environment to Case - Push-Oriented - - - + 22. Case to Environment - Pull – Oriented - - - + 23. Workflow to Environment - Push-Oriented + + + + 24. Environment to Workflow - Pull – Oriented + + + + 25. Environment to Workflow - Push-Oriented - - - + 26. Workflow to Environment - Pull-Oriented - - - +

Data Transfer Patterns A B C D

27. Data Transfer by Value – Incoming + + + + 28. Data Transfer by Value – Outgoing + + + + 29. Data Transfer - Copy In/Copy Out + + + + 30. Data Transfer by Reference – Unlocked + + + + 31. Data Transfer by Reference - With Lock - - - - 32. Data Transformation – Input - - - + 33. Data Transformation – Output - - - +

Data-Based Routing A B C D

34. Task Precondition - Data Existence + + + + 35. Task Precondition - Data Value - - - + 36. Task Postcondition - Data Existence - - - + 37. Task Postcondition - Data Value - - - + 38. Event - based Task Trigger - - - + 39 .Data - based Task Trigger - - - + 40. Data - based Routing + - + +

Kepler Taverna Triana RAWLS

Results 19 18 19 33

The RAWLS:

Benefits from messaging reaction rules

and their combination with derivation rules

Supports almost all data interaction, data-

based routing and data transfer patterns

Data visibility patterns are not well

supported

A = Kepler, B = Taverna, C = Triana, D = RAWLS

(The evaluation results of Kepler, Taverna and Triana are from [Migliorini et al., 2011])

21

Distributed System Property-based

Empirical Evaluation

Distributed System Property Implementation

Cycles in execution graph

Arbitrary Cycles, Structured Loop and

Recursion are supported (an infinite loop

detector is also provided)

Deterministic or non-deterministic Non-deterministic execution which

determines specific resources dynamically

Consistency No consistency checking at design time;

some basic inconsistencies are supported

Parallel and concurrent execution Supported by messaging reaction rules

Distributed computation Distributed agents connected by ESB

Synchronous or asynchronous

communication

Asynchronous communication to support

long running tasks and human interaction

22

Summary and Outlook

Summary

− Proposed a rule-based agent-oriented architecture

An expressive rule-based language to describe the WsSWFs

Flexible execution environment via distributed inference agents

Outlook

− Improving usability by high level modeling workflow language

Usability testing with case studies

− Recording workflow provenance information

Important for workflow verification, optimization and reproduction

Comments or Questions?

Thank you!

http://www.corporate-semantic-web.de

AG Corporate Semantic Web

Freie Universität Berlin

http://www.inf.fu-berlin.de/groups/ag-csw/

24

Selected References/1

Wooldridge, Michael, An Introduction to MultiAgent Systems. Wiley Publishing, 2nd ed., 2009.

UniProt Core Vocabulary. http://www.uniprot.org/core/. Accessed: 2014-01-08.

A. Paschke and A. Kozlenkov, Rule-Based Event Processing and Reaction Rules, in Rule Interchange and Applications (G. Governatori, J. Hall, and A.

Paschke, eds.), vol. 5858 of Lecture Notes in Computer Science, pp. 53-66, Springer Berlin Heidelberg, 2009.

A. Paschke, A Semantic Rule and Event Driven Approach for Agile Decision-Centric Business Process Management, in Towards a Service-Based

Internet (W. Abramowicz, I. Llorente, M. Surridge, A. Zisman, and J. Vayssiére, eds.), vol. 6994 of Lecture Notes in Computer Science, pp. 254-267,

Springer Berlin Heidelberg, 2011.

A. Paschke and H. Boley, Rules Capturing Events and Reactivity, in Handbook of Research on Emerging Rule-Based Languages and Technologies (A.

Giurca, D. Gasevic, and K. Taveter, eds.), pp. 215-252, IGI Publishing, May 2009. in Computer Science, pp. 254-267, Springer Berlin Heidelberg, 2011.

Agent Communication Langage Specifications. http://www.fipa.org/repository/aclspecs.html. Accessed: 2012-06-17.

J. Mendling, Event-Driven Process Chains (EPC), in Metrics for Process Models, vol. 6 of Lecture Notes in Business Information Processing, pp. 17-

57, Springer Berlin Heidelberg, 2009.

Workow Patterns. http://www.workflowpatterns.com/. Accessed: 2012-03-23.

A. Paschke and K. Teymourian, Rule-Based Business Process Execution with BPEL+, in Proceedings of I-KNOW and I-SEMANTICS 2009 (A.

Paschke, H. Weigand, W. Behrendt, K. Tochtermann, and T. Pellegrini, eds.), (Graz, Austria), pp. 588-601, Verlag der Technischen Universität Graz,

September 2009.

A. Paschke, Reaction RuleML 1.0 for Rules, Events and Actions in Semantic Complex Event Processing, in Proceedings of the 8th International Web

Rule Symposium, LNCS, Springer, 2014

D. Luckham, W. R. Schulte, J. Adkins, P. Bizarro, H.-A. Jacobsen, A. Mavashev, B. M. Michelson, P. Niblett, and D. Tucker, Event Processing

Glossary - Version 2.0, tech. rep., Event Processing Technical Society, 2011

A. Paschke, Rules and Logic Programming for the Web, in Reasoning Web. Semantic Technologies for the Web of Data (A. Polleres, C. d'Amato, M.

Arenas, S. Handschuh, P. Kroner, S. Ossowski, and P. Patel-Schneider, eds.), vol. 6848 of Lecture Notes in Computer Science, pp. 326-381, Springer

Berlin Heidelberg, 2011.

D. Hay, Defining Business Rules What Are They Really. Final Report, 2000.

SPARQL-DL API. http://www.derivo.de/ressourcen/sparql-dl-api.html. Accessed: 2014-02-06.

Web Services Human Task (WS-HumanTask) Specification Version 1.1. http://docs.oasis-open.org/bpel4people/ws-humantask-1.1.html. Accessed:

2011-08-13.

A. J. Bonner and M. Kifer, Concurrency and Communication in Transaction Logic., in Proceedings of the Joint International Conference and

Symposium on Logic Programming, pp. 142-156, 1996.

25

Selected References/2

E. Kindler, On the Semantics of EPCs: Resolving the Vicious Circle, Data & Knowledge Engineering, vol. 56, no. 1, pp. 23-40, 2006.

N. Russell, Arthur, W. M. P. van der Aalst, and N. Mulyar, Workflow Control-Flow Patterns: A Revised View, tech. rep., BPMcenter.org, 2006.

N. Russell, A. H. M. ter Hofstede, D. Edmond, and W. M. P. van der Aalst, Workow Data Patterns: Identication, Representation and Tool Support, in

Proceedings of the 24th International Conference on Conceptual Modeling, ER'05, (Berlin, Heidelberg), pp. 353-368, Springer-Verlag, 2005.

Prova Rule Language. https://prova.ws/. Accessed: 2010-10-26.

Mule ESB. http://www.workflowpatterns.com/. Accessed: 2012-09-30.

OpenRDF Sesame. http://www.openrdf.org/. Accessed: 2014-01-06.

M. Alviano, F. Calimeri, Faber Wolfgang, G. Ianni, and N. Leone, Function Symbols in ASP: Overview and Perspectives, in Nonmonotonic reasoning.

Essays celebrating its 30th anniversary. Papers from the conference (NonMon30), Lexington, KY, USA, 2010., pp. 1-24, London: College Publications,

2011.

S. Migliorini, M. Gambini, M. La Rosa, and A. H. ter Hofstede, Pattern-Based Evaluation of Scientific Workflow Management Systems, tech. rep.,

University of Verona, 2011.

A. Paschke, Reaction RuleML 1.0 for Rules, Events and Actions in Semantic Complex Event Processing, in Proceedings of the 8th International Web

Rule Symposium, LNCS, Springer, 2014