Most experts and practitioners had agreed long ago that decision models should be declarative, meaning a user specifies WHAT the decision problem is and provides test cases with the desired outcome, and then the underlying decision engine or system automatically determines HOW to find the solution. Rule Engines and Constraint Solvers were specifically designed to support the declarativity.
Continue readingCategory Decision Modeling
Finding decisions for complex problems with multiple interdependent sub-problems
After I wrote about “Making Operational Repetitive Decisions Under Uncertainty,” I found several interesting descriptions of how optimization experts, Adam DeJans Jr. and Helmut Simonis, deal with challenging issues arising in dynamic, real-world settings characterized by high levels of uncertainty. In this LinkedIn post, I quoted their thoughts, including concrete problem examples. Link
Making Operational Repetitive Decisions Under Uncertainty
While just completed DecisionCAMP-2025 was dominated by the integrated use of Generative AI (LLMs) and Symbolic AI (Rules, Machine Learning, Optimization), in my closing notes I concentrated on the topic of making repetitive operational decisions in the real-world, frequently uncertain environments. In this article, I elaborated why it is important now and will be more important as the AI hype pushes our decision-making systems to even wider use within real-world business processes. Link
Why Decision Optimization Remains Underutilized
Adam DeJans just posted: “Most people don’t realize how much of the world runs on a math method called Mixed-Integer Linear Programming (MILP). It is how airlines schedule flights, supply chains allocate products, and manufacturers decide what to make.” https://lnkd.in/e_WAHxYc
He is right. Still, despite their proven effectiveness in real-world decision-making systems, optimization solvers—such as Constraint Programming (CP), Linear Programming (LP), and Mixed-Integer Programming (MIP)—remain underutilized by many decision intelligence practitioners. One contributing factor is the perception that these tools require experts like Adam DeJans to apply optimization effectively.
Resolving Conflicts among Business Rules
Ron Ross again brought up the question of “Exceptions to Business Rules”. Ron defines an exception to the rules as a foreseen, explicit set of circumstances in which different-than-normal guidance is to be followed. He gave an example: seeing-eye dogs as an (explicit) exception to dogs not being allowed in a hospital. One comment says: “I heard that there are no exceptions to the BRs. I heard that there are only other BRs.”
This discussion is still as important as it was years ago when we, vendors of Business Rules systems, considered it as a more generic problem of Resolving Conflicts among Business Rules.
OpenRules and SharePoint Integration
OpenRules announced a new Release 10.5.0 that integrates its Decision Intelligence Platform with Microsoft SharePoint. This development came in response to our large corporate customers who already use SharePoint as their major collaboration and document management platform to store, organize, share, and access information securely.
Why is this development important? For two reasons:
- OpenRules users can utilize SharePoint to manage their Rule Repositories
- SharePoint users can utilize OpenRules as a full-scale Decision Intelligence Platform.
In this post, I will explain both the benefits and how to integrate OpenRules and SharePoint.
Continue readingAI for Decisions: a look from 2017 and today
After listening to the latest talk of Prof. Bob Kowalski on What is AI?, I remembered his talk about logical AI at the joint session of DecisionCAMP and RuleML+RR in 2017 in London. It also reminded my own prediction about “What is the next “killer” application for Decision Management?” at that time. Here is what I wrote about a Decision Reasoner in 2017:
Continue readingChristmas Word Search
DMCommunity.org offered a relatively simple challenge “Christmas Word Search” for holidays. My first inclination was to ask an LLM to solve it. I certainly was impressed that Copilot (or another LLM-based tool) could quickly build a code to find a correct solution. But then I thought: “Can I, a human, do better than LLM preferably without coding?” Below I describe my experiments from this morning.
Continue readingMovie Production Scheduler
This year OpenRules was approached by a film production company that wanted to optimize their movie production scheduling process. They wanted us to build a scheduler that receives the following input: multiple scenes, estimated time to prep and film the scenes, shooting locations, day and night shifts, all characters, cast members with their availability and associated costs, production units, and other related information. The objective of the scheduler is to schedule a production process over a certain period subject to time constraints, actor preferences, location availability, union requirements, and various soft and hard constraints. We’ve successfully and quickly developed a working prototype that satisfied major customer’s requirements and produced good schedules for this particular client. Then we expanded this development to a generic Movie Production Scheduler now available for solving similar scheduling problems with more custom constraints and preferences.
Continue readingIntegrating Rule Engine and Constraint Solver
OpenRules Rule Solver is an open-source tool that adds the power of Constraint and Linear Programming to Business Decision Modeling. It extends OpenRules Decision Manager to support Declarative Decision Modeling and Decision Optimization.
You may look at multiple decision models from Simple Arithmetic Problems to Smart Investments to see how Rule Solver helps define business optimization problems and produce their optimal solutions. One such decision model was created by our intern to ponder the DMCommunlity Challenge “Rental Boats“.
Continue readingOpenRules Training/Consulting
In October-November of this year, OpenRules successfully provided Training/Consulting services for different business units of a major US insurance company. Working closely with their business analysts and software developers, we managed to develop and deploy decision services that became working prototypes for the production-level systems. Contact support@openrules.com if you want to quickly put together a pilot of your decisioning system.
New Rule Scheduler
We introduced RuleScheduler on Sep 19, 2024 at DecisionCAMP-2024 as a new OpenRules component for building decision models for Scheduling and Resource Allocation problems. Such problems traditionally considered very complex and they are usually out of reach for most rule engines. Traditionally, these problems require constraint programming tools and the involvement of technical gurus. RuleScheduler intends to allow business analysts to represent and solve these problems without programming by extending traditional user-friendly decision tables.
Continue readingDecision Model Interruptions
Real-world decision models usually execute multiple decisioning steps in a certain order. Whether the execution order is defined manually or automatically, the good design does not need to be explicitly interrupted if, after every execution step, the decision model validates the expected results and directs the execution to the correct branches. However, sometimes you still need to interrupt the execution of your multi-hit decision table, to break your iteration loop, or even to terminate the execution of your entire decision model. This post shows how to deal with such situations using OpenRules predefined actions “ACTION-BREAK” and “ACTION-TERMINATE”..
Continue readingEnglish-like Expressions inside Decision Tables
OpenRules Release 10.3 adds an ability to create complex English-like expressions inside your decision tables. With new predefined functions for lists and arrays of business objects, you don’t need to use loops in many practical situations. Consider a relatively simple example.
Continue readingMachine Learning inside Decision-Making Applications: Practical Use Cases
Machine Learning (ML) tools have been successfully used for decision-making applications for many years. Despite many success stories, ML popularity in enterprise-level software for years remained incomparable with commonly used Rule Engines or even with Optimization tools. Why? Until recently some application developers considered ML to be “too scientific” or unstable with rarely guaranteed results, others complained that it required too much data for practical applications. Nowadays, when Generative AI dominates most technological news and many populists use the terms “AI” and “ML” almost as synonyms, the situation is changing. Vendors and practitioners, who professionally develop decision intelligence software, see a growing interest in ML tools as enterprise developers want to add AI to their existing decision-making applications.
Continue readingFree POC Development
OpenRules Decision Manager becomes so powerful and easy to use that it dramatically reduces the efforts needed to develop new decision models and deploy them on cloud as decision microservices. OpenRules team has great practical experience of rapid creation of working prototypes or Proof of Concepts (POC). That’s why we offer a FREE POC development. After a brief meeting, we quickly (usually within 1-3 days!) put together a POC tested locally and deployed on cloud, so the customer may start testing it remotely without any installations! Read more Continue reading
Sorting Collections of Objects in OpenRules
We added more user-friendly sorting capabilities to the Release 10.1.0 of OpenRules. There are no need to use Java to define objects in the array of list of business objects that should be sorted inside a decision model. Let’s consider a simple example of sorting the array of “Passengers” using their frequent flier status and a number of miles.
Continue readingNew RuleSolver’s Modeling Facilities
OpenRules RuleSolver is an open source tool that adds the power of Constraint and Linear Programming to Business Decision Modeling. It extends OpenRules Decision Manager to support Declarative Decision Modeling and Decision Optimization.
The newest OpenRules Release 10.1.0 comes with an essentially simplified RuleSolver which now requires only two tables “DefineVariables” and “PostConstraints“ to define many complex logical problems. It also provides predefined methods for problem resolution so you really may concentrate only on the question “WHAT” and not worry about “HOW”. I will demonstrate the new decision modeling facilities using a relatively complex logical problem “Family Riddle“.
Continue readingOpenRules New Release 10.1
OpenRules Release 10.1.0 is now available. New capabilities include:
- New decision modeling constructs for RuleSolver
- Enhanced RuleDB including parameterized DataSQL tables
- Support for nested loops over the same collection
- Big Decision Tables with fixed width format
- Various improvements (patterns, templates, big tables, reworked User Manual, bug fixes).
Solving DMCommunity Challenge “Coins”
This weekend I tried to play with the latest DMCommunity Challenge that asks: “Suppose you need to pay 1 Euro. In how many different ways you can do it via 1c, 2c, 5c, 10c, 20c, 50c and 1 Euro coins?” It sounds as a very simple problem for any constraint solver.
Continue readingBig Decision Tables
Decision tables are the most popular decision modeling constructs but they have a tendency to grow with time or to use huge arrays of data from the very beginning. When decision tables have tens and even hundreds of thousands of rules, their performance may go down. It becomes especially unacceptable when such big decision tables need to be executed a million times a day. This article describes how OpenRules deals with big decision tables executing even very large tables within milliseconds and giving its users a choice of where to keep and maintain their data: in Excel, in a CSV file, in a fixed-width file, or in a database. Link
Rules as Preferences (Miss Manners Advanced)
DMCommunity Challenge July-2023 deals with a rules-based decisioning problem when not all rules can be satisfied and thus should be considered as preferences. It offers an advanced version of “Miss Manners” (see OpenRules solution) with not equal numbers of males and females at each party. So, the seating arrangement “boy-girl-boy-girl and each guest has someone on the left or right with a common hobby” becomes not a Rule but a Preference. It makes the problem much more difficult to represent and solve especially if we want to find an optimal seating. In this post I will demonstrate how to build the corresponding business decision model using the latest version of OpenRules Rule Solver.
Continue readingComposite Decision Variables
In real-world decision models, you may want to write business rules that refer to combinations of two or more individual decision variables called composite decision variables. For example, your business concept “Department” may have a decision variable “Manager” of the type “Employee” which is another business concept with such variables as “Name”, “Salary”, “Gender”, etc.
Continue readingDeclarative Decision Model “Flight Rebooking”
Rule Solver can be used to build a real declarative decision model for one of the most complex decision modeling challenges “Flight Rebooking” offered by DMCommunity.org: “A flight was cancelled, and we need to re-book passengers to other flights considering their frequent flyer status. miles, and seat availability“. Most of the submitted solutions were based on a procedural approach and used different implementations of a greedy algorithm where decision models concentrate on “HOW” to make flight assignments. We suggested and implemented a decision model that concentrate on Problem Definition (“WHAT”) instead of Problem Resolution. The complete model is described here. Link
Declarative Decision Model “Miss Manners”
This problem used to be one of the popular benchmarks for rule engines 20 years ago. And now DMCommunity.org brings it back to see how modern decision engines can represent and solve this problem today. I will demonstrate it in this post with the latest OpenRules Rule Solver.
Continue readingSudoku Decision Model
Everybody is familiar with Sudoku: you need to fill a 9×9 grid in a such way that each column, each row, and each of the nine 3×3 boxes (also called blocks) contains the digits from 1 to 9, only one time each. In this post I’ll show how easy to build a Sudoku decision model using the latest OpenRules Rule Solver.
Continue readingNested Attributes in OpenRules Glossary and Tests
In real-world decision models, our customers deal with complex business glossaries. In particular, it is quite common when one business concept refers to other business concept and it is not immediately clear how to define and use such references. I will explain how it’s supposed to be done in OpenRules. let’s consider a simple example “HelloNestedLocation” with the following glossary:

Nested Loops in OpenRules Decision Models
Iterating over collections (arrays) of decision variables is a frequent need in real-world decision models. For example, the following decision table defines if a company has high-paid employees:

The iteration here is defined by the [for each Employee in Employees] in the first row. The ACTION-BREAK in the column “ActionExecute” will force the iteration process to stop (break) when the very first high-paid employee is found.
Continue readingDecision Model “Permit Eligibility”
In this post we describe an OpenRules decision model that addresses DMCommunity.org Mar-2023 Challenge “Permit Eligibility”. The Challenge asks to implement this rule: “An applicant is eligible for a resident permit if the applicant has lived at an address while married and in that time period, they have shared the same address at least 7 of the last 10 years.” There is already 2 DMN-based solutions published by Bruce Silver who explained that this simply sounding rule requires to address several not so simple considerations. There is also an attempt to create a decision model with ChatGPT, which I analyzed and converted to a working Java code. I asked an OpenRules developer Alex Mirtsyn to look at this problem, and together we came up with a solution described in this post.
Continue readingHelping ChatGPT to Build a Working Decision Model
These days only lazy people don’t write about ChatGPT and large language models (LLM). Vendors are trying to be the first to announce a ChatGPT integration even when they don’t have anything serious to show. I’ve also written about it: see “ChatGPT Producing Simple Decision Models” and “LLM and Decision Modeling“. This weekend I decided to help ChatGPT (that is now at GPT-4) to address the Challenge “Permit Eligibility” published by DMCommunity.org. It has a simple rule: “An applicant is eligible for a resident permit if the applicant has lived at an address while married and in that time period, they have shared the same address at least 7 of the last 10 years.” But this rule contains several tricky assumptions – no wonder, DM vendors are not in a hurry to submit a solution.
Continue readingWe Know More Than We Can Tell
Living through the ChatGPT boom, it is interesting to read this article “Is ChatGPT Aware?“:
“Polanyi’s paradox, named in honor of the philosopher and polymath Michael Polanyi, states that “we know more than we can tell.” He means that most of our knowledge is tacit and cannot be easily formalized with words. In The Tacit Dimension, Polanyi gives the example of recognizing a face without being able to tell what facial features humans use to make such a distinction.“
It brings back some of my related thoughts on “Business Rules and Tacit Knowledge” from 7 years ago. It described how “Human Learning” and “Decision Modeling” were moving in opposite directions. Will we see a change?
LLM and Decision Modeling
ChatGPT has the public excited, but the experts are reserved in their praise. Thinking about a practical application of the Large Language Models (LLM) to decision modeling this quote from LeCun caught my attention:
When we create practical decision models we usually deal with an even more limited “universe”. A decision model “manipulates the state of the decision variables” within a very specific business domain (insurance, loan origination, claims, medical guidelines, etc.) complemented by generic concepts well covered by such relatively small standards as DMN and SBVR. Decision modeling universe is really “limited, discrete, deterministic, and fully observable”.
So, being cautious about the current ChatGPT’s hype, we may be more optimistic about the next breakthrough in Decision Modeling. I suspect the answers of experts to my DecisionCAMP-2022 question “Are our Rule Engines Smart Enough?” would be different today.
Christmas Model in JavaSolver
DMCommunity.org offered the Dec-2022 Challenge “Christmas Model” created with ChatGPT. This nice model defines a set of people, a set of gifts, the happiness level, and costs of each gift. The objective is to maximize the total happiness, subject to the budget constraint that the total cost of the gifts must be less than or equal to the budget, and the constraint that each person can only receive one gift. As a holiday exercise, I tried to implement it using a free and open-sourced JavaSolver.com. Here is my solution:
Continue readingNew Major Release OpenRules-9: Happy Thanksgiving!
Our team worked hard to prepare a nice Thanksgiving gift for our customers, and today I am happy to announce general availability of OpenRules-9! This major new release comes with a new implementation of our Graphical Explorer and Debugger as a foundation for the current and future OpenRules Interactive Decision Modeling Environment oriented to business users. Watch new Intro Video, read Release Notes 9.0.0, and evaluate it for free. Happy Thanksgiving!
Continue readingExtensible DMN
DMN is a modeling language and notation for the precise specification of business decisions and business rules using well-defined tabular formats. This popular standard even includes an interchangeable XML format. However, contrary to XML (eXtensible Markup Language), DMN can hardly be called extensible. Today’s DMN allows a user to define complex problem-specific decision modeling constructs using powerful FEEL boxed expressions (that still are being criticized as too close to programming). But DMN doesn’t specify means for building simple domain-specific decision tables that look very natural for business users and hide complex implementation details that actually may require programming.
Continue readingUsing a Decision Model for Orchestration of Decision Models
OpenRules empowers business users with an ability to assemble new decision services by orchestrating existing decision services independently of how they were built and deployed. The service orchestration logic is a business logic too, so it’s only natural to apply the decision modeling approach to orchestration. OpenRules allows business analysts to create a special orchestration decision model that describes under which conditions such services should be invoked and how to react to their execution results. Link
Decision Modeling: Declarative vs Procedural
The ultimate objective of Business Decision Modeling:
A business analyst (subject matter expert) defines a business problem, and a smart decision engine solves the problem by finding the best possible decision.
Declarative decision modeling assumes that a business user specifies WHAT TO DO and a decision engine figures out HOW TO DO it. This is quite opposite to the Procedural approach frequently used in traditional programming.
Continue readingHow Decision Tables work with Big Datasets
Decision tables is the most popular mechanism for representation of business logic – no wonder they play the major role in the DMN standard. However, when it comes to analyzing large amount of data, standard decision tables may not be the best way to do it. In this post, I’ll describe a much better approach implemented in OpenRules.
Continue readingWhere is Gold?
In this post I describe an OpenRules solution to the puzzle offered as DMCommunity.org June-2021 Challenge:
Continue readingRule Debugger for Business Users
Whether you like it or not, your business decision models will contain bugs like regular software always does. They will fail to produce expected results for certain inputs and under different unforeseen circumstances. As a result, their authors, who are usually business people, will have troubles to understand why certain rules were not executed while others did. For real-world business models even the best explanation reports and execution traces could be difficult to follow. When complex logical errors occur, decision model authors discover that their business rules and decision management environment is only as good as the rule debugging tools it offers! Continue reading
March 5 Webinar
Upcoming OpenRules Webinars
We will run a webinar series about OpenRules products starting on Feb 5, 2021:
“Decision Modeling with OpenRules Explorer – Introduction” – Free Registration
Watch Recording
Next Webinars: Continue reading
New Release 8.3.0 with Graphical Explorer
New OpenRules Decision Manager Release 8.3.0 comes with a Graphical Integrated Decision Modeling Environment called “Decision Model Explorer“. It automatically builds decision model diagrams, opens Excel files associated with different nodes, and allows business people to modify, test, and deploy their decision models from one place. Watch the video and read more. Join our free webinar on Feb 5, 2021 – register here. Continue reading
Using Formulas in Glossary
The new OpenRules Decision Manager 8.3.0 along with “Decision Model Explorer“ includes an ability to define some decision variables by using formulas directly in the Glossary. For instance, in the standard sample “PatientTherapy” we can modify the glossary as follows:

Text Interpolation in OpenRules
Many popular languages (e.g. Angular or Mustache) use text interpolation to incorporate dynamic string values into the text. OpenRules Decision Manager Release 8.2.1 gives our customers an option to use text interpolation by putting text decision variables in the double curly braces {{ and }}. For example, see how it’s being used in the standard sample project “PatientTherapy”:
Rules-based Service Orchestration
SaaS Rule Learner
Finally, our SaaS Rule Learner became publicly available allowing business analysts to extract business rules from their historical data sets. They can do it without any downloads directly from Amazon cloud using AWS Marketplace SaaS subscription – see https://aws.amazon.com/marketplace/pp/B08HNF1Q5J. Watch this video https://youtu.be/88B5rJa2yrI that describes how to use it for the demo and custom data sets. Try SaaS Rule Learner from http://saas.rulelearner.com. Continue reading
Self-Learning Decision Models
Today I presented “Rule Learner: Self-Learning Decision Models” at the DecisionCAMP Monthly Meeting. It’s about an integrated use of Machine Learning (ML) and Business Rules (BR) within Digital Decisioning Platforms. It describes how “RuleLearner.com” can help business analysts to discover business rules from large historical data sets. Without forcing business analysts to become experts in data science or programming, Rule Learner discovers business rules by naturally incorporating ML algorithms into Business Decision Models. The session focuses on practical aspects of rules generation by developing ever-learning decision-making applications. Video, Slides
Using Templates to Create Domain-Specific Decision Tables
While DMN-like decision tables are powerful enough to represent business logic for many practical problems, in the real world our customers frequently define new types of decision tables that are specific to their business domains. For example, OpenRules was chosen for a large project that in particular dealt with spatial business rules. Their customers, suppliers, and operations vary by region, and the distances between them were important considerations for making decisions. They already used a Geospatial Information System (GIS) to explore spatial relationships that leveraged the industry-standard Java Topology Suite (JTS) with a powerful Java API.
However, they wanted their business (!) users to natively define and maintain complex spatial rules without becoming experts in specific Java API. This 2014 presentation describes how OpenRules helped this customer to create a Spatial Decision Table template allowing stakeholders with no GIS training to use plain English in familiar Decision Model spreadsheets to define spatially aware business rules without any additional software.
Continue readingStateful Loan Approval Process with AWS Lambda+EventBridge+SNS+SQS
At DecisionCAMP-2020 we had a lot of discussions about the orchestration of the decision services and how to invoke different decision services when states of the business objects change over time. One of the most popular orchestration technique is a Pub/Sub architecture with State machines. The Challenge “Dynamic Loan Approval” is an example of perpetually running decision-making applications which should be able to learn from already executed transactions and evaluate new facts as they become available. This post describes how we implemented this application utilizing OpenRules-based GUI connected to AWS Lambda, EventBridge, SNS, and SQS. Continue reading





























