Session 25

Structured Matching


Artificial Intelligence

today's slides in PDF

Context: Building a Wholesale Distributor

Suppose that you have been hired to build a decision-support system (DSS) for a large corporation that does business throughout the world. This corporation must often make decisions about new wholesaler distributors for its products in another country.

Sometimes the corporation would like to acquire an existing distributor and the decision is, "Do we buy distributor X?"

Sometimes it intends to initiate a joint venture with an existing distributor and the decision is, "Do we work with distributor X?"

The company employs a number of financial analysts who make recommendations on these decisions. Why might the corporation need a DSS?

Financial analysts embody knowledge.

Financial analysts are a scarce commodity.

Hence, the need for a decision-support system.

Problem Analysis

All wholesale distributor decisions depend on a number of factors:

These are the parameters of the decision.

The system will examine the data of the target corporation and return an answer of "yes", "no", or maybe a less certain answer such as "probably yes", "probably no", or "not sure".

These are the possible decisions.

Recognition as a Task

This is a recognition task. The system must determine if a particular label applies to a given situation. People have to make recognition decisions in all domains, in all sorts of contexts.

We could implement a DSS for this problem as a search agent, a logical inference agent, a learning agent, a planner--or using a slew of other AI techniques. Each technique will introduce some thorny implementation decisions...

Do we want to build solutions from scratch each time, re-learning the implementation lessons that other pro-grammers have learned?

A Common Design for the System

Write a rule base that associates patterns of parameter values with particular decisions:

    IF competence             = high       and
       size of workforce      = (> 50,000) and
       intensity              = low        and
       complementary products = none       and

    THEN decision = yes                  (or no, or ...)

Each rule associates one pattern with one choice. Making the decision involves finding the rule whose pattern (best) matches the input data and returning its choice.

Such a rule is called a simple matcher. A system made of such rules does simple matching.

Simple matching is a technique that is straightforward to implement as a logical inference agent, as long as the logic allows simple variables. Many logical inference programs evolve into a set of simple matchers.

Simple matchers have a number of significant drawbacks:

  1. It is computationally intractable, even for relatively small problems.

  2. It has no way to represent intermediate abstractions that may play a role in the decision.

  3. A simple matcher is brittle in the face of uncertain or missing data.

Fill in the Blank

... as time permits.

Wrap Up

Eugene Wallingford ==== ==== December 11, 2001