Business Rules and Agent-Based Business Process Simulation

Gerd Wagner

Brandenburg University of Technology at Cottbus, Germany

This Talk Is about Three Topics

  1. Business Processes
  2. Agent-Based Discrete Event Simulation
  3. Business Rules and Simulation (work in progress)

Business Processes

What Is a Business Process? (Classical Def.)

What's Wrong with These Definitions?

What is a Business Process? (My Definition)

What is a Process?


What is BP Simulation Good For?

Discrete Event Simulation

Discrete Event Systems

A discrete event system is a dynamic system consisting of objects (of various types) whose states may be changed by events (of various types) occurring at successive points in time (from a a discrete set).

For modeling such a system:

  1. Describe its object types
  2. Describe its event types
  3. Specify the state changes of objects when events occur (which objects are affected in which way by the occurrence of an event).

Example: A Drive-Thru Restaurant

Based on [Ingalls 2008]

A Drive-Thru Restaurant as a basic DES

Possible object types to model:

Possible event types to model:

Multi-Agent Systems (MAS)

A multi-agent system is a dynamic system where special objects, called 'agents', interact


A Drive-Thru Restaurant as a MAS (1)

Possible (non-agentive) object types to model:
MenuBoardWaitingLine, PickupWindowWaitingLine

Possible agent types to model:
Customer, MenuBoard, PickupWindow

Possible message types to model:
Order, ConfirmOrder, Bill

A Drive-Thru Restaurant as a MAS (2)

Possible action event types to model:
Order-Out-MessageEvent, Bill-Out-MessageEvent, PaymentActionEvent

Possible perception event types to model:
Order-In-MessageEvent, Bill-In-MessageEvent PaymentPerceptionEvent

Application Areas for Agent-Based DES

  1. Management science:
    enterprise models, managment games, ...
  2. Economics:
    market models (stock market, labor market, etc.)
  3. Social science:
    evolution of language, norms, ...
  4. Engineering:
    socio-technical systems such as material handling systems (AGVs) and traffic systems
  5. Biology:
    population dynamics, eco-systems, evolution, ...

AOR Modeling and Simulation

BDES categories

The AOR Simulation Language (AORSL)

Simulation Scenarios and Simulation Models

The AOR Simulator Architecture

AOR Simulator Architecture

An AOR simulator consists of

Running an AOR Simulation Scenario

From AORSL to Java
  1. Validate your AORSL file
  2. Generate Java code
  3. Compile the Java code
  4. Run the resulting Java program
  5. Evaluate the statistics and/or the simulation log

Basic DES with AORSL

BDES categories

AORSL supports basic DES without agents by defining

A Basic DES Model for a Drive-Thru Restaurant

Rules (1)

An environment rule is a 5-tuple < EvtExpr, Var, Cond, UpdExpr, ResEvt > where

Rules (2)

A rule < EvtExpr, Var, Cond, UpdExpr, ResEvt > can also be stated in the following form:

ON EvtExpr
IF Cond
   UPDATE UpdExpr

Operational Semantics

A simulation step s = 1, 2, … of a DES system with state < S, FEvt, s > and environment rule set R consists of three sub-steps:

  1. Determine the set of current events:
    FEvts = { e ∈ FEvt | occTime(e) = s }
  2. Apply the rules triggered by the current events, resulting in an updated state S' and an updated future events list FEvt'
  3. Increment the simulation step (or time) counter

Agent-Based DES with AORSL

For an agent-based model we have to define

Why should We Want to Make Agent-Based Models?

Agent Types

An agent type is defined by

  1. a set of (objective) properties;
  2. a set of (subjective) self-belief properties;
  3. a set of (subjective) belief entity types; and
  4. a set of agent rules, which define the agent's reactive behavior in response to events

Agent-Related Events

Perfect Agents without Communication

Agent Types

Cognitive Agent Types

For a cognitive agent type we may specify:

Business Rules


SBVR's Strengths

SBVR's Weaknesses

Implementing Business Rules

Business Rules and Simulation

Simulations can be used for