• English
  • French
  • German
  • Italian
  • Portuguese
  • Romanian
  • Russian
  • Spanish

Business Rules for Electronic Commerce. (Project at IBM T.J. Watson Research)

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:

1. New fundamental techniques for business rules interoperability, prioritized conflict handling, and procedural attachments. These techniques include: an XML interlingua for communication; and an extended core knowledge representation, with declaratively clean semantics, that facilitates updating and execution.

 

2. 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:

* declarative logic programs as a core rule knowledge representation. ("Declarative" means having declarative semantics in the sense of knowledge representation theory; this is independent of details of procedural inferencing control and implementation, including of whether the direction of inferencing is forward chaining or backward chaining. Declarative semantics say what set of conclusions is sanctioned for each given set of premises. Pure Prolog, by contrast, is a particular kind of backward-inferencing logic program.)

CommonRules includes innovative functionality for:

a) courteous  logic programs as a knowledge representation, which expressively extends ordinary logic programs to enable prioritized conflict handling of a practical and clean kind. This prioritized conflict handling.

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).

b) a courteous compiler that tractably compiles a courteous logic program into a semantically equivalent ordinary logic program. This enables software engineering modularity: the courteous expressive extension can be added simply via a pre-processor.

c) the translation of rules to and fro heterogeneous commercially important rule systems/languages, as well as to and froANSI-draft Knowledge Interchange Format (KIF) (you can also see another KIF site).

 

d)  an XML interlingua (i.e., syntactic interchange format) for such translation, called Business Rules Markup Language (BRML). The current version of BRML expresses courteous logic programs, which overlaps with a broad subset of KIF.

e) situated courteous/ordinary logic programs, which expressively extends courteous/ordinary logic programs to include procedural attachments of a powerful but semantically-clean kind. "Situating" a rule set or a rule engine means associating its pure-belief expressions with external procedures (i.e., external to the rule engine proper) for performing actions and testing conditions. (Such associations are called "procedural attachments" in knowledge representation theory.) More precisely, the procedural attachments provided in situated logic programs include:

 

* effectors  that perform actions upon drawing conclusions in rule consequents.

* sensors  that perform queries during testing of conditions in rule antecedents.

These effectors and sensors are specified by statements that "link" (i.e., associate) them to predicates. These effector and sensor link statements are treated as part of the knowledge representation, similarly to rules and mutex's.

f) a sample rules engine, that does forward-direction exhaustive inferencing for a broad case of situated courteous/ordinary logic programs.

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 a new pilot applications for these fundamental business rules techniques in intelligent agents and e-commerce. These applications include especially:

a) negotiations, including procurements & auction configuration

b) catalogs & storefronts

c) security authorization & trust management

and also other applications such as financial.

As part of all this, our group leads a major portion (including the IBM Research portion and additional aspects) of the $29 Million EECOMS NIST match-funded ATP project, a 3-year industry consortium project (1998-2001) in intelligent agent-based manufacturing supply chain integration, led by IBM, also including Baan, Boeing, TRW, several universities, and some smaller companies. Our role is in the use of rules, especially for the contents of negotiation messages, e.g., product/service descriptions and conditions.

 

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.

(Started in 1997, this project grew out of the earlier Intelligent Agents project (1994-97) at IBM T.J. Watson Research Center.)

Comments

Post new comment

The content of this field is kept private and will not be shown publicly.
Enter the code shown in the image:

Search Engine Optimization