- #ORF09 An introduction to the RETE algorithm
- #ORF09 Playing With the Rules Presentation
- #ORF09 Rule Patterns and Features Presentation
- #ORF09 Early Alert System Presentation
- #ORF09 Engineer’s perspective on Rule Technology Keynote
- #ORF09 Enterprise Architecture Presentation
- #ORF09 Enterprise Architecture Presentation Part II
- #ORF09 Model Driven Approach for BRMS Presentation
- #ORF09 Production Rule Systems
- #ORF09 Graph Based Knowledge Bases and Rules Presentation
- #ORF09 Truth versus Useful Lies Presentation
- #ORF09 Automated Verification of rules Presentation
- #ORF09 Agile Business Rule Development Presentation
- #ORF09 Rule Classification First Presentation
- #ORF09 Rule Violation and Over-Constrained Problems Presentation
- #ORF09 Generating Rules from UML presentation
- #ORF09 What’s Different about Rules in CEP Presentation
- #ORF09 Measuring your Rules’ KPI Presentation
- #ORF09 Designing a System of Rule Based Agents Presentation
- #ORF09 Extending General Purpose Engines Presentation
- #ORF09 Programming Rules using a spreadsheet interface
- #ORF09 Practical and Modern RBE Presentation
- #ORF09 Temporal Reasoning Presentation
- #ORF09 Business Rules in the Cloud Presentation
- #ORF09 October Rules Fest Think Tank
- #ORF09 October Rules Fest Think Tank – Part II
- #ORF09 CLIPS implementation of RETE Presentation
- #ORF09 Complex Event Processing Models Presentation
- #ORF09 Distributed Programming with Agents Presentation
- #ORF09 making Parallelism Available to Rule Developers Presentation
Dr. Jacob Feldman talked about rules and the problem of some rules that get violated because they were over-constrained. An example solution to this is to introduce “soft” constraints and an associated cost to the violation.
He identifies 2 types of rules:
- Hard rules: that must be satisfied
- Soft rules: that we would like to be satisfied
The idea is to use the experience of Constraint Programming (CP) to help with these “over-constrained problems”.
He gave us an example of constraint resolution for a problem of a map of countries that need to be coloured with different colours and that no two neighbouring countries can have the same color. With the 6 countries and the 4 colours, there is a solution.
Now if you take this same problem with a limit of 2 colours, there is no solution, but we can “soften” the constraints and to try to find a solution to the same problem.
You can apply this strategy to business rules by adding some constraints on violation of other constraints. These “meta-constraints” are themselves business rules. He also thinks that because this can be implemented in business rules, the business people can actually control the constraints themselves.
The application of this type of hard and soft rules requires a CP expert to be added to the list of people involved in the implementation.
He then showed an example of the well know “Miss Manners” problem with hard constraints. He then used some of the typical data and changed the gender of one of the “guests” and the problem became unsolvable (in a reasonable amount of time). By “softening” some of the constraints it is possible to find solutions.
He concluded that it is possible to do some of this type of work using “Greedy Java” so Java is a definitive competitor to business rules and constraint programming. Obviously the rules are not declarative, the solution is not optimized, etc.
Very interesting talk if you have the type of problems to resolve that requires CP.