overview of a self-adaptive workflow system
DESCRIPTION
TRANSCRIPT
Towards Self-Adaptation Towards Self-Adaptation and Evolution in Business and Evolution in Business
ProcessProcess
Luca Sabatucci
15 Ottobre 2013
Consiglio Nazionale delle Ricerche
Istituto di Calcolo e Reti ad Alte Prestazioni
BPMNBPMN• Commercial workflow engines
follow the plan as in the blueprint (BPMN, BPEL)
The execution model is based on the petri-net model: token and activation
Self-Adaptive WorkflowsSelf-Adaptive Workflows
• In current workflow systems, • a unexpected situation generates a fail
to the standard plan, • alternative plans can not be
autonomously considered• In order to enable self-adaptation,
• rigid constraints of a workflow must be relaxed
• plans should be searched in a broader solution space.
Our ApproachOur Approach
FROM BPMN to GoalsFROM BPMN to Goals
Decoupling WHAT and Decoupling WHAT and HOWHOWWe desire that BPMN is used for
◦describing the result to address, ◦not “how to address it”
We use a Goal-Oriented approachGoalSPEC: a language to
describe business goals to delegate to the system
Goal in GoalSpecGoal in GoalSpec
Goal
TRIGGERING CONDITIONThe state of the world that must hold because the goal
becomes active
ACTOR LISTWho is responsible
FINAL STATEThe state of the world that
must be true for considering the goal addressed
(WHEN MESSAGE book_request(Book) RECEIVED FROM THE Client ROLE AND WHEN available(Book) )THE Clerk ROLE SHALL ADDRESS book_checkout(Book,Client)
(BookManagment example)
In order to describe Trigger condition and Final state we use an ontological approach
In order to describe Trigger condition and Final state we use an ontological approach
Each goal in GoalSPEC
defines a
desired State
Transition,
G:TC -> FS
Each goal in GoalSPEC
defines a
desired State
Transition,
G:TC -> FS
Extracting GoalSPEC from BPMNExtracting GoalSPEC from BPMNThe workflow execution may be seen as a
finite set of state transitions from the start event to the end event.
Where: each FlowNode generates a single step of the transition
We identify intermediate transitions
ExamplesExamplesEvery FlowNode potentially impacts the state of the workflow
WHEN completed(client_credential) THE user role SHALL ADDRESS( done(booking) AND sent(receipt,client) ) OR error(booking)
AFTER 1 hour SINCE WHEN done(login)OR WHEN user_number > MAX_USERSOR WHEN thrown(stopping_signal)THE user role SHALL ADRESSdone (logout)
THE Agent ARCHITECTURETHE Agent ARCHITECTURE
Why Software AgentsWhy Software AgentsAgents encapsulate autonomy and
proactivity.Agents ground on the classic AI loop-
model: sense – reason – actBDI agents represent a good abstraction
for self-awareness and context-awareness
MAS are a flexible and powerful method for distributed reasoning
The BDI ArchitectureThe BDI Architecture
13
Environment
Agent1 Agent2 AgentN(plans)
(mental states)
(act and perceive)
Context-Awareness and Self-Context-Awareness and Self-AwarenessAwareness
• Proactive contextual matching of the behavior (how) with expected results (what)
• The agent must be able to reason • on evolving business goals• on the execution context• on its capabilities
The Self-Aware AgentThe Self-Aware Agent
15
Resources(databases, …) Web Service
Environment Web Service
SYSTEM GOALS
Business Analyst
Workflow User
(UI)
(UI)
Agent1 Agent2 AgentN
System goals derive from business analysis, when some business goal is delegated to the system
Self-Aware agents knows:•system goals•their own execution state •their capabilities and how capabilities can be used
Capability encapsulates the ability to manipulate resources, to call web services or to interact with humans
CAPABILITIES (plans)
(commitment)
(means-endreasoning)
Self-Organization AlgorithmSelf-Organization AlgorithmGoal commitment is a social activity
Each goal prescribes a state transition (TC -> FS)
Agents may own capabilities for addressing sub-transitions (sinput -> soutput)
A Solution is a decomposition of the main transition TC -> FS into a set of sub-transitions
A Team prescribes a collaboration among many agents, and it is regulated by contracts and rewards.
A solution is a set of potential contracts for addressing sub-goals:
contract( potential commitment, curriculum, request income)The algorithm for searching solutions is distributed and recursive
The algorithm for searching solutions is distributed and recursive
Agents tries to
match their
capacities with goal
transition TC -> FS
Agents also decide
IF PARTICIPATE to
the solution and
WHICH PART play in
it, depending on
their working queue
Agents tries to
match their
capacities with goal
transition TC -> FS
Agents also decide
IF PARTICIPATE to
the solution and
WHICH PART play in
it, depending on
their working queue
Recursion stops when no solution is discovered or in the trivial case of null transition
Recursion stops when no solution is discovered or in the trivial case of null transition
Many solutions may
be discovered.
Each solution is
evaluated according
to: completeness,
agents’ reputation
and total cost)
Many solutions may
be discovered.
Each solution is
evaluated according
to: completeness,
agents’ reputation
and total cost)
Conclusions: Conclusions: The new Lifecycle of Business ProcessThe new Lifecycle of Business Process
18Running MAS
GoalSPEC
Business Analyst
Business Expert
models revises
The systemautomatically translates BPMN into goals
injection
analyzes
analyzes
commits to
commits to
analyzesanalyzes
worker
interacts
The business analyst
continues to use
traditional
instruments to model
his processes
The business analyst
continues to use
traditional
instruments to model
his processes
GoalSPEC is a
language for
expressing
goals that grounds on
ontology and
defines a goal
as the tuple(actor,trigger-condition,final-state)
GoalSPEC is a
language for
expressing
goals that grounds on
ontology and
defines a goal
as the tuple(actor,trigger-condition,final-state)
Every agent in the system autonomously decides when to commit to some goal
Every agent in the system autonomously decides when to commit to some goal
Environment perturbations
Conclusions:Conclusions:The components of the MAS SolutionThe components of the MAS Solution
• Agents are specialized: every agent owns its own capacities.– User capacities are used to interact with humans and monitor their
activity– Service capacities are used to manipulate the environment.
• Agent are peers: there is not a pre-established organization. They organize themselves in teams every time a new workflow starts– The self-org algorithm considers many criteria (experience, cost,
trust)– The team is the candidate group of agents for addressing the workflow,
in a given context – Anyway, the context may change for some reason during the
execution:• In case of starvation the team tries to relax some constraints• If some task fails, the team is dismissed and a new team is formed• If no alternative team can be found, the analyst is informed of failure
• Commitment: when an agent is involved in a team, it tries to address its responsibilities at best of its possibilities– It waits for triggering conditions hold– It selects and executes the proper capacity or composition of capacities– It checks that result is the expected final state
• Trust and Reward:: agents that successfully complete their task gain reputation and they increase their chance to be selected again.
Future WorksFuture WorksAgents Learns by
◦Experience to improve owned capabilities
◦Studying to acquire new capabilities
Coupling Goals and Norms in GoalSPEC
Open Systems and Clouds
Thanks for your AttentionThanks for your Attention
Luca [email protected]
Consiglio Nazionale delle Ricerche
Istituto di Calcolo e Reti ad Alte Prestazioni