In the BREC project, we are investigating rule-based business processes for e-commerce: both business-to-business (B2B), e.g., to integrate supply chains; and business-to-consumer (B2C).
Overall, our mission is to develop technology that is highly reusable and easy to integrate with a broad spectrum of networked applications. Towards this end, we prototype applications in tandem with developing reusable componentry. We also contribute to company-wide efforts in strategy and in common architecture, e.g., for inter-agent knowledge-level communication and inter-operability. Our reusable technology for business rules and rule-based intelligent agents is embodied as an extensible structured Java library, called CommonRules (formerly called DIPLOMAT; follow-on to RAISE and Agent Building Environment implemented in C++).
An alpha prototype of CommonRules has been released (free with trial license) on the Web, at AlphaWorks. You can see the overview of the CommonRules 1.0 release of July 30, 1999.
Specifically, we have been developing:
The new techniques are embodied in a core rules technology prototype called CommonRules, formerly called "DIPLOMAT" (e.g., in many of our papers and talk slides). CommonRules is a Java library. CommonRules's starting point is:
CommonRules includes innovative functionality for:
Courteous logic programs allow the specification of the scope of potential conflict, via pairwise mutual exclusions called "mutex's". E.g., one might specify that discounting price by X percent is mutually exclusive with discounting price by Y percent (whenever X and Y are not equal). These mutual exclusions are then enforced in the sense that the conclusion set is guaranteed to be consistent with (i.e., to respect) all the specified mutual exclusions. Courteous logic programs also include classical negation; a simple kind of mutual exclusion is between p and classical-negation-of-p. Courteous logic programs further allow the specification of partially-ordered priorities between rules. Conflict between rules is resolved using these priorities. The prioritized conflict handling enables modularity and locality in updating, merging, and specifying/maintaining rule sets. Changes in rule sets can much more often be specified simply by adding new rules, without having to modify previous rules. This enables a more natural style of specification and communication, closer to how humans specify and communicate rules in natural language and closer to subclassing/inheritance in object-oriented programming.
Courteous logic programs are thus a form of prioritized logic programs. More generally, courteous logic programs are a form of prioritized default reasoning. Unlike previous highly expressively powerful forms of prioritized defaults (e.g., Prioritized Circumscription or Prioritized Default Logic), courteous logic programs are computationally tractable under common expressive restrictions (e.g., no non-0-ary logical functions and a bounded number of logical variables per rule).
An alpha-version prototype of this core technology will soon be released (free with trial license) on the Web, on IBM's AlphaWorks site. Planned release date for this first alpha version of CommonRules is July 30, 1999.
The rationale for the name "CommonRules" is as follows. Our approach/prototype supports rules that are common in the sense of a highly interoperable knowledge representation, with consensus semantics shared by many heterogeneous rule systems/languages. The XML interlingua in particular is a common syntactic format. The courteous expressive extension provides some "common-sense" reasoning capabilities, in the sense of knowledge representation theory and artificial intelligence, because the prioritized conflict handling enables rules to be specified in a more modular and natural style, closer to natural language and object-oriented subclassing/inheritance.
We have further been developing:
The BREC project overall builds upon the work in our earlier Intelligent Agents project (1994-97), including the techniques developed there in the RAISE IBM-Research prototype (in C++), and in the IBM-Development-version alpha Agent Building Environment (ABE) whose heart was RAISE. In particular, the "situated" technique in CommonRules is an enhanced version of the "situated" technique in RAISE and ABE. ABE was in release 1996-98. RAISE/ABE was used for several pilot rule-based intelligent agent applications including mail, news, customer service, and manufacturing workflow & control.
The Information Economies Project also grew out of the earlier Intelligent Agents project. It investigates economies composed of intelligent agents that buy and sell to each other, including brokering, learning, pricing, game-theory, and large-scale market phenomena. It thus explores issues that will in future be important for practical e-commerce agents, including those built using the techniques in the BREC project.
We have a number of papers and other documents, including talk slides and patents, available about the techniques and applications.
For further information, please contact: Benjamin Grosof at grosof@us.ibm.com
[ IBM home page | Order | Search | Contact IBM | Help | (C) | (TM) ]