500,000 Decisions per Second

Decision Table Example – Tax

Here is another example of a decision table simplifying and solving complex business logic.

Similar to Decision Table Example – Vacation Days, this is another challenge posed by the DM Community.

“With tax season upon us, take a look at the following decision table created by a business analyst from a tax agency:”

tax form
As is typical, the model contains a number of discrepancies and can be simplified. A full description of how this model was simplified with a discussion of the gaps and overlaps in the specification is shown in my proposed solution.

In summary, I proposed this DMN decision model.
DMN decision table

Execution

I deployed the decision model into a RapidGen Genius DMN execution engine running on an HP EliteDesk 800 G1 SFF with a 4-core Intel Core i5 4570K at 3.2GHz, 16Gb RAM and 64-bit Windows 10, to check the veracity of the rules and test performance.

Against bulk generated data, and with transaction logging disabled, I measured a throughput of 500k decisions per second – very impressive for such modest hardware!

And just to be clear that was only using one of the four cores.

“RapidGen execution engine: 500k decisions per second on one core”

To measure how scalable these results were, I reconfigured RapidGen to run concurrently on all four cores. As shown below there is some variability but throughput for two of the four cores exceeded 500,000 decisions per second.

500,000 decisions per second

Using additional cores scales almost linearly, reaching over 1.9M decisions per second with four cores, as shown below.

4 cores 1.9M decisions per second

This certainly outperforms other Business Rules Management Systems I have used over the years.

About the Author

Jan Purchase has been working in investment banking for 20 years during which he has worked with nine of the world’s top 40 banks by market capitalization. In the last 13 years he has focused exclusively on helping clients with automated Business Decisions, Decision Modelling (in DMN) and Machine Learning. Dr Purchase specializes in delivering, training and mentoring all of these concepts to financial organizations and improving the integration of predictive analytics and machine learning within compliance-based operational decisions.

Dr Purchase has published a book Real World Decision Modelling with DMN, with James Taylor, which covers their experiences of using decision management and analytics in finance. He also runs a Decision Management Blog www.luxmagi.com/blog, contributes regularly to industry conferences and is currently working on ways to improve the explainability of predictive analytics, machine learning and artificial intelligence using decision modelling.

purchase@luxmagi.com   |   @JanPurchase   |   blog.luxmagi.com