Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Decision Modeling
Marlon Dumas Institute of Computer Science
Actions/ Outcomes
Conditions
Each column represents a condition-action rule
Classic Decision tables
1
1 2 3 4 5
Leave 8am 9am 9am 10am 10am
Stall? - - - Y N
Accident - Y N - -
Long Medium Long Long Short
DMN – Decision Model & Notation
2
} OMG standard decision modeling notation } Includes:
} High-level diagrams to denote decisions, sub-decisions, inputs and knowledge sources
} Decision tables (a bit different from classical decision tables)
} Supported by several tools } IBM ILOG Jrules } OpenRules } Signavio } GenMyModel
Decision Requirements Diagram
© Signavio 2015
3
Decision
Sub-decision
Input
Knowledge source
DMN Decision Table
© Signavio 2015
4
U
Inputs Output(s)
DMN Decision Table
© Signavio 2015
5
U
Decision tables: Numerical ranges
6
Incomplete tables and contradictory rules
7
• No rule for Age = Child, Marital status = Not married, Parental status = No kids
• Rules 1 and 3, and rules 2 and 3 are contradictory
Hit Policies
8
} Unique (single) – the rules are assumed to be non-overlapping so only one rule can fire for a given input
Unique-hit DMN table
© Signavio 9
Hit Policies
10
} Unique – the rules are assumed to be non-overlapping so only one rule can fire for a given input
} Any – rules may overlap, but if two rules overlap, they have the same output, so any of them can be fired
Any-hit decision table
© Visionalysis 11
Hit Policies
12
} Unique – the rules are assumed to be non-overlapping so only one rule can fire for a given input
} Any – rules may overlap, but if two rules overlap, they have the same output, so any of them can be fired
} Priority/first – rules may overlap and/or contradict. In case of overlap, the first rule matching the input is fired } NOT RECOMMENDED
Hit Policies
13
} Unique – the rules are assumed to be non-overlapping so only one rule can fire for a given input
} Any – rules may overlap, but if two rules overlap, they have the same output, so any of them can be fired
} Priority/first – rules may overlap and/or contradict. In case of overlap, the first rule matching the input is fired } NOT RECOMMENDED
} Multi-hit – rules may overlap; all rules that can fire for a given input will fire. Their outputs is combined using an aggregation function: } E.g. max, min, avg, sum
Multi-hit DMN table
© OpenRules (DMN Live Primer) 14
Recap
15
} Decision Trees } Suitable for modeling simple decisions } Also used when decision tree is auto-generated (e.g. decision
tree learning)
} Classic decision tables (rules on the columns) } Come with a methodology for capturing complex decisions
and ensuring rule completeness and non-overlap
} DMN decision tables (rules on the rows) } Provide many additional feature to organize decisions more
conveniently