DMCommunity Challenge July-2018 “Zoo, Buses, and Kids”

The July’s challenge “Zoo, Buses, and Kids” deals with a very simple optimization problem:
“300 kids need to travel to the London zoo. The school may rent 40 seats and 30 seats buses for 500£ and 400£. How many buses of each to minimize cost?”
Naturally, a constraint solver nicely and easily solves this and more complex constraint satisfaction problems as shown in Philippe Laborie’s solution. When today I saw  a pure SQL solution provided by Damir Sudarevic, I thought that it’s time to model this problem as a business decision model. It would not be as compact as provided solutions, but it should be oriented to business users.  Continue reading

Advertisements

Decision Automation and Explanations

Prof. Gene Freuder wrote a position paper “Complete Explanations” for The Second Workshop on Progress Towards the Holy Grail that will be held on Aug 27, 2018 during CP 2018 in Lille, France. Gene writes: “As AI becomes more ubiquitous there is a renewed interest in computers being able to provide explanations, and the European GPDR provides special impetus.” Geen’s paper concentrates on constraint satisfaction problems (CSPs), but, as I’d shown in my 2016 paper, we may consider a decision model as a CSP, and everything Gene is talking about directly applies to business decision modeling. Continue reading

OpenRules Solution for the Christmas Challenge

DMCommunity.org offered a new Dec-2017 Challenge called “Reindeer Ordering“. It has a nice Christmas formulation:
Santa always leaves plans for his elves to determine the order in which the reindeer will pull his sleigh. This year, for the European leg of his journey, his elves are working to the following schedule, which will form a single line of nine reindeer. Here are the rules: Continue reading

Building a Custom Scheduler with OpenRules and JSR-331

One of the largest Japanese telecom company is successfully using OpenRules being integrated with a BPM product produced by our partner Intra-Mart. Last month this customer asked us to help with development of a custom scheduler capable to schedule thousands of cable construction operations subject to various precedence and exclusivity constraints. Continue reading

Decision Models: Finding Alternative and Optimal Decisions

People frequently assume that a good, consistent decision model should produce one and only one decision (solution) for any valid input. However, in real-world applications we frequently deal with situations when a decision model may produce multiple feasible solutions for the same input. And it does not mean that the decision model is incomplete – simply a user may choose the most appropriate solution among all produced decisions. It can be done interactively or by adding more rules. I’ve already provided an example “Monkey Business Analyzed” that describes how to deal with multiple decisions using OpenRules What-If Analyzer.  In this post I will describe another  decision model that also shows how to choose an optimal decision among multiple feasible decisions. Continue reading

“Monkey Business” Analyzed

I decided to add the decision model “Monkey Business” to our new What-If Analyzer. It brought several considerations missed by other solutions. In this post I will discuss my implementation and will show how What-If Analyzer helps to do a through analysis of usually unnoticed aspects of business decision modeling. Continue reading

Solving Rule Conflicts – Part 2

“The Sleep of Reason Produces Monsters”, Francisco Goya

 Defeasible Logic and Business Rules with Probabilities

Modern rules and decisions management systems provide effective mechanisms for development of good decision models. However, building real-world decision models people always face complex issues related to diagnostic and resolution of rule conflicts. Some systems can effectively verify decision model consistency and diagnose rule conflicts. But there are no practically used Business Rules (BR) products that claim that they may automatically resolve rule conflicts.

In the Part 1 of this series I described how end users can represent their rules in single-hit and multi-hit decision tables while avoiding rule conflicts. But is it possible to automatically resolve rule conflicts? I will discuss this problem below. Continue reading

Solving Rule Conflicts – Part 1

Representing Contradictory Rules with Single-Hit and Multi-Hit Decision Tables

Modern rules and decisions management systems provide effective mechanisms for development of good decision models. However, building real-world decision models people always face complex issues related to diagnostic and resolution of rule conflicts. Some systems can effectively verify decision model consistency and diagnose rule conflicts. But there are no practically used Business Rules products that claim that they may automatically resolve rule conflicts (at least I am not aware of them).  As a result, it becomes a responsibility of users to represent rules in such a way that allows them to avoid conflicts. Continue reading

Combining Constraint Solving with Business Rules and Machine Learning – CoCoMiLe 2013

The integration of different decision making techniques finally is finding its home under the roof of the Decision Management movement. I am glad that an integrated Constraint Programming (CP), Business Rules (BR), and Machine Learning (ML) approach is gaining in popularity as well. An interesting workshop “CoCoMiLe 2013 – Continue reading

Fischer vs. Kasparov vs. Karpov

On a long flight back to the US I had a few hours to kill. So, I decided to implement one of my favorite modeling tests that I used to give to my students and they always enjoyed it. This time I wanted to try it myself with the newest OpenRules Decision Modeling facilities (see Rule Solver).

Virtual Chess Tournament
Three world champions Fischer, Kasparov, and Karpov played in a virtual chess tournament. Each player played 7 games against two other opponents. Each player received 2 points for a victory, 1 for a draw, and 0 for a loss. We know that Kasparov, known as the most aggressive player, won the most games. Karpov, known as the best defensive player, lost the least games. And Fischer, of course, won the tournament. Continue reading

Rule Engines: RETE and Alternatives

The famous RETE algorithm was invented by Dr. Charles Forgy more than 30 years ago and it still remains the foundation for most implementations of inferential rule engines.  Recently Carole-Ann asked the question: why after all these years there were no practical alternatives to RETE? Continue reading

Modeling Decisions for Scheduling and Resource Allocation Problems

“Reality is built in wonderful simplicity”, Eliyahu Goldratt “The Choice

Scheduling and Resource Allocation are traditionally considered as very complex business problems. They are usually out of reach for the most rule engines.  I personally learned how to deal with these complex problems during my real-world consulting practice by applying a great product called “ILOG Scheduler” written by Claude LePape and Jean-Francois Puget 20 years ago. I’ve just googled the product name and got this User Manual that has over 600 pages with a lot of C++ code. I used to teach ILOG Solver/Scheduler courses and will reuse some examples borrowed from them. Continue reading

Rule Solver is now JSR-331 Compliant

OpenRules has announced that its redesigned Rule Solver™ is now JSR-331 compliant. Rule Solver™ is a long time available optimization component of OpenRules® BRMS that allows users to define and solve constraint satisfaction and optimization problems within a business rules environment. Continue reading