Sessions

 

Rules: Essential, But Only Part of the Puzzle

Wednesday, October 22, 8:15 am

Dr. Leon A. Kappelman (University of North Texas)


Rules define “why” we do things in the enterprise.  Be it “Sarbanes-Oxley”, “payroll on Friday”, “the customer is always right”, or countless others, rules are where everything initiates in the organization.  But knowing “why” is not enough to accomplish anything.  You’ve got to have the rules but you can’t write code or build tractors with just the rules.  You must have the rest of the story, the whole context – the who, what, where, when, how, as well as the why.


The emerging practice of “Enterprise Architecture” (EA) is about knowing the whole context of the organization, including its rules.  EA is about capturing all of the knowledge about the enterprise, and using that knowledge to better manage it.  Much better.  This talk will explain EA, the place of rules in the enterprise’s architecture, and how rules connect and motivate everything in the enterprise.  But you can only understand the full implications of these connections if you know the architecture of the whole enterprise.  Rules and their systems implemented without context results in the stovepipes and discontinuities that we are too familiar with in these early days of the Information Age. Knowing the rules is absolutely necessary, but not sufficient for success.


Rule steer enterprise strategies and drive enterprise decisions.  The only way to ensure that the rules embedded in our decisions, systems, and processes align to the rules and goals of the enterprise, with the “why”, is to have the architecture and do the engineering.  The essence of achievement is knowing the requirements, the design objectives, the rules. Execution is basically project and risk management – also necessary, but pointless and doomed to failure if the requirements are incorrect.  Engineer first, then manufacture – Ready, aim, fire.  The flow is from logical to physical, from idea to instantiation.  If the brains are not aligned, there is no chance the things will be.

Experience Building a Parallel Rule Engine

Friday, October 24, 3:15 pm

Dr. Charles Forgy (PST, Rete, Rete 2/III, OPSJ, etc.)


For many years the semiconductor houses have been able to increase processor power at an exponential rate.  Unfortunately, that has become much more difficult in recent years, and companies are turning more and more to parallelism to provide increased processor power.  So if we want our rule engines to handle ever larger working memories and higher event rates, we have little choice but to move to parallel engines.  To some degree, this is not difficult with Rete because Rete was designed from the beginning to be executed in parallel.  Indeed, many parallel implementations of Rete and related systems have been developed over the years.  To get the most benefit from parallelism, it is not sufficient just to multithread the Rete network, however.  A number of difficult issues have to be addressed.  This talk discusses some of these issues and the solutions that have been developed.  Finally, some benchmark results will be provided for PST's latest parallel engine.

Why Systems Fail

Why Systems Work

Wednesday, October 22, 9:30 am

Rolando Hernandez (BIZRULES)


Why systems fail


    Why systems (and businesses) fail, cannot adapt, and do not last

    Ten Rules for Wall Street

    Examples


Why systems work


    Why systems (and businesses) work, change, and last

    Examples

    The Future of IT All

        Enterprise Architecture

        Rulebased Systems

            BRE Family Tree

        Knowledge-based Systems

        Intelligent Systems

Declarative vs. Procedural Programming, Building for Change

Wednesday, October 22, 10:30 am

Larwrence Terrill (EBDX.COM)


No single tool in the IT professional's tool-belt is appropriate for every challenge. Lawrence will describe the differences between more mature procedural programming approaches and declarative programming, especially as it relates to the use of declarative business rule engines. Lawrence hopes to answer the following questions:


    * How does the implementation and maintenance of a procedural and declarative program differ?

    * What are the characteristics that would lead a programmer to choice a procedural vs. declarative approach?

    * What is a "Domain Specific Language" and how does it relate to the choice of procedural vs. declarative        

programming?

    * How does a business rule approach differ from an object-oriented approach? How can they complement each other?

Reviving the Japanese Fifth Generation Project's Dream: Building the Ultimate Rule-processing Engine

Wednesday, October 22, 11:30 am

Dr. Gopal Gupta (University of Texas at Dallas)


More than 25 years ago the Japanese embarked on the "Fifth Generation Computer System" project to build fast, intelligent computers. The intelligence was supposed to come from rule-based languages such as Prolog and the speed was supposed to come from using parallel machines. The Fifth Generation Project made big strides, however, it did not succeed; primarily because the project was too much ahead of its times.


In this talk I will outline: (i) the problems that brought down the Fifth Generation Project and the solutions developed over the last 20 years; (ii) the features that have been added to Prolog to make it an extremely powerful language for expressing and processing rules; (iii) how multi-core machines can be used to realize fast implementations of non-deterministic rule-based languages such as Prolog.


I will also describe the efforts underway at UT Dallas to build the ultimate rule-processing engine based on logic programming using multi-core machines.

The Role of Ontology in Modern Expert Systems Development

Wednesday, October 22, 2:00 pm

Jason Morris (Morris Technical Solutions)


This talk will focus on a technique for mitigating the effects of the "knowledge elicitation bottleneck" in the knowledge engineering process.  It will include some history, theory and examples.  Some lessons learned from a recent project will be presented to illustrate these points.

Complex Event Processing (CEP), Based on Rete

Wednesday, October 22, 3:30 pm

Edson Tirelli (Drools – Red Hat)


Complex Event Processing and Production Rules use cases usually have a noticeable overlap.  Even being consistently found in the field, the products to handle such use cases are usually distinct and with not always easy-to-do integrations. Extending Rete to handle Events as first class citizens and allowing "native support" for event semantics is the first step for a successful unification of both approaches in a single platform or even a better and seamless integration with other products in the market.


In this talk we will present the extensions developed for the ReteOO algorithm implemented by the Drools Rules Engine to enable the processing of events as first class citizens and the support to event semantics.  We will also cover the support for temporal constraints, required for the proper processing of time-sensitive events.

“Guvnor” – A BRMS for Drools and Managing Other Asset Types

Wednesday, October 22, 5:00 pm

Kris Verlaenen (Drools – Red Hat)


This will cover the usage of a versioned repository for less painful governance of business rules and other business artifacts, including how to validate and test them to preserve quality over time.

Brain Mechanisms for Making, Breaking, and Changing Rules

Thursday, October 23, 8:00 am

Dr. Dan Levine (University of Texas at Arlington)


How do we know to talk openly to our friends but remain guarded with strangers?  How do we move between work place, club, and house of worship and fit our behavior to each setting?  We solve such problems readily, but are a long way from designing intelligent systems that can do so.  Yet enough is known about cognitive and behavioral functions of the frontal lobes, and their connections with other brain regions, to suggest a neural theory of context-dependent rule formation and learning.  Individuals differ widely, and the same person varies over time, in their tendency to seek maximum information versus their tendency to follow the simplest heuristics.  Neuroimaging studies suggest which brain regions might mediate the balance between knowledge maximization and heuristic simplification.  The amygdala is more activated in individuals who use primitive heuristics, whereas two areas of the frontal lobes are more activated in individuals with a strong knowledge drive: one area involved in detecting risk or conflict, and another area involved in choosing task-appropriate responses.


Both of these motivations have engineering uses.  There is benefit to understanding a situation at a high enough level to respond in a flexible manner when the context is complex and time allows detailed consideration.  Yet simplifying heuristics can yield benefits when the context is routine or when time is limited.  The ability to distinguish these two situations can be trained to improve its accuracy.

How to build systems that work, change, and last

Thursday, October 23, 9:00 am

Rolando Hernandez (BIZRULES)


How to build systems that work, change, and last


    Ten Rules for building rulebased-systems

    Ten Rules for building knowledge-based systems

  

    Enterprise Architecture

    Rulebase Technology

    Business Rules Architecture

        Rules-based systems

        Principles-based systems

        Knowledge-based systems

    Knowledge Engineering Methodology

        KA, KR, KE

        Examples

        Best Practices

        Lessons Learned

Demystifying Predictive Analytics

Thursday, October 23, 10:15 am

Carlos Serrano-Morales (Fair Isaac) and

Carole Ann Berliotz-Matignon (Fair Isaac)


Over a decade ago, we were all still evangelizing the world on business rules engines, what was Rete and how it could help.  Shortly after that the BRMS concepts emerged.  It took a few years for the marketplace to

realize how to expose rules to the business users, again with a lot of efforts from the business rules experts to educate the masses.  For a couple of years, the new trend of Decision Management has been out there

with a small group of early adopters.  The idea of solving greater decisioning problems with a set of integrated technologies sounds great on paper but it also raises a number of questions on what it can really

do, how to get it implemented, what are the architectural issues that need to be addressed, etc.  In this presentation, Carlos and Carole-Ann, the pioneers of decision management, will provide insights on what's in it for the software and rules architects... or rather decision architects.  The focus will be on practical design and implementation aspects of decision management applications.

Using Constraint Programming in Business Rules Environments

Thursday, October 23, 11:30 am

Dr. Jacob Feldman (Open Rules)


Constraint Programming (CP) is a proven decision support technology for finding optimal solutions among multiple alternatives subject to different business constraints.  CP is especially successful dealing with scheduling, resource allocation, and complex configuration problems where a pure BR technology stops short when the number of alternatives goes beyond millions, decisions are expected in real time, and/or a compromise between time and quality is required.  Incorporating CP into rule-based systems provides more sophisticated decision-support capabilities.  In this presentation we will introduce the basics of Constraint Programming and will discuss real-world examples.  We will describe different BR+CP integration scenarios, and explain how different CP solvers could be incorporated into different BR products.

Distributed Data Processing with ILOG JRules

Thursday, October 23, 5:00 pm    

Daniel Selman (ILOG – JRules) and Keith Lindsey (UBS Bank)


UBS Bank operates in over 50 countries and employs more than 80,000 people. Learn how UBS uses ILOG JRules and a distributed grid architecture to generate internal and regulatory reports for all the regions around the world off a single dataset. In order to acheive this UBS is required to process 2 billion records every night, with over 30 million records passing through the rule engine. Performance objectives are in place to ensure the bank meets its regulatory and financial reporting requirements before the trading day starts.

Propositional Logic - Verification, Conflict Resolution, and Procedural Systems

Friday, October 24, 9:00 am

Richard Hicks (EZ Xpert, Texas A&M International)


The most important tool in creating accurate rule-based systems is the science of verification, which answers the question “Did we build the system right?” – in other words, did we engineer the system correctly?  Verification involves analyzing the rule base for criteria such as completeness, consistency, and subsumption.  We will discuss the criteria for propositional logic systems, as well as the more difficult topic of when to apply them and the impact of solution strategy on this decision.  From there, we will demonstrate how propositional logic systems can be transposed to procedural systems – that do not need an inference engine and test over 20k rules per second - by performing enhanced conflict resolution during development.

Re-architecting CLIPS: Recent Changes to Improve Performance, Integration, and Internationalization

Friday, October 24, 10:15am

Gary Riley (CLIPS)


At 23 years of age, CLIPS is one of the older rule-based programming languages still in use.  In this session, I'll provide some anecdotal observations gleaned from developing and maintaining the same piece of code for over two decades.  On the technical side, I'll focus on recent changes made to improve performance for the manners and waltz benchmarks and discuss a new benchmark for measuring performance.

Declarative Programming with Rules, Processes and CEP

Friday, October 24, 11:30 am

Mark Proctor (Drools – Red Hat)


Rules, processes and event stream processing/complex event processing are at the heart of the business logic for most enterprises.  Each one provides a declarative environment to model the business problems, but each one cannot model everything so integration is needed to model the entire domain problem.  Typically an enterprise will source each product from a different vendor and at some level tries to integrate the three to solve business problems.  This integration is often very limited and superficial, such as processes only using rules for stateless decision services.  In this talk we present a unified environment for rules, processes and cep all as first classes citizens and the declarative modeling advantages this approach provides.

The Original 1979 Rete Algorithm

Friday, October 24, 2:00 pm

James Owen (KBSC)


The original 1979 Rete Alorithm has been referenced probably more than any one Ph.D. thesis in the world.  What I will present is a very short lecture on the main algorithm in LISP without delving into the more arcane aspects of the thesis.  The entire thesis is on-line at http://www.kbsc.com

Knowledge, Rules and Reality

Thursday, October 23, 2:00 pm    

John McQuary (Fluor)


Fluor Corporation is one of the world’s largest publicly traded engineering, procurement, construction, maintenance and project management companies.  As a global leader, Fluor has a legacy of leveraging technology to improve business performance.  Using both a codification strategy and a personalization strategy, Fluor applies its global expertise to capital projects around the world. 


This session will provide a practical example of leveraging knowledge and expertise through the knowledge management program at Fluor.  It will also provide an example of rule-based design that improves project performance, decision making and dispersed project execution.  Finally, future directions for convergence and integration of knowledge management and rule-based systems will be described.

Conference Wrap-up and Roundtable

Friday, October 24, 4:30 pm

All Speakers

Enterprise Decision Management

Thursday, October 23, 3:30 pm    

Carlos Serrano-Morales (Fair Isaac)

Fine Grain = Slow, Right?

Friday, October 23, 8:00 am

David Butler and Brian Liddell (Countrywide)


Imagine a system based on a few primitives; lists, symbols, facts and rules. A list is an ordered collection of bits, symbols, facts or rules. A symbol is a list of bits. A fact is a list of symbols; usually a name and 0 or more (usually restricted to 2) roles. A fact list contains all the facts of the system. A rule is a list of two fact lists; patterns and actions. An active part of the system repeatedly searches the fact list for rules’ pattern lists and executes the rules’ action lists until no pattern list is matched. A system constructed with these primitives takes fine grain to an extreme!


There are two big questions with such a system. Does it have to be so fine grained? Can it perform well?


I will, leveraging the past two days, discuss the need for such fine grain systems. Assuming I can make that case, today’s sessions will help us understand they can perform well.