logo

An Introduction to ABLE Rule Processing


logo
Course Home Page Course Description and Instructions AI Pretest and Review ABLE on alphaWorks Contacts for Questions
Topic 1
Reasoning
Topic 2
ABLE Overview
Topic 3
Simple Business Rules
Topic 4
Data Analysis Rules
Topic 5
Planning Rules
Topic 6
Expert Systems
Topic 7
Putting It All Together

Course Evaluation

Topic 7: Putting It All Together

In general, the decision-making process for deciding whether ABLE rule processing should be considered for a project is:
  1. Start by examining each of the functional requirements for the project. A large software development project may have a large number of requirements. ABLE rule processing may be useful in more than one area of a project.
  2. Determine if the problem identified by the requirement is a reasoning problem. In general you want to consider whether the problem can be solved by using rules.
  3. Decide whether ABLE rules can be used to solve the problem. This can be broken down into a couple of substeps:
    1. Drill down into the problem to determine some of the relevant attributes of the problem. Focus specifically on attributes that may be important when using simple business rules, planning rules, data analysis rules, or expert systems.
    2. Match the attributes of the problem with the different uses and capabilities of ABLE rule processing.
  4. List the requirements, analysis, and ABLE features you identified in the previous steps as areas for which ABLE warrants further conideration in your design.
Remember, there is probably no one “right” answer or solution for any business problem.

Let’s look at an example of how this process could be used to make a decision as to whether ABLE rule processing should be considered as part of the solution.


EXAMPLE:

Problem Statement
A nature center wants a software program that its patrons can use to identify types of trees based on the characteristics of the leaves. Currently the patrons either ask the local naturalist or look it up in the tree identification guides available at the center.

Analysis

  1. There is one main requirement for this project – classify trees using information about leaves. In a real-life situation, there may be other requirements as well, dealing with the user interface, the computer resources available, language requirements, etc. But we will focus on the main requirement of the problem for this simple example.
  2. This problem can be characterized as a reasoning problem because deduction can be used to go from the general characteristics of the leaves to the specific type of tree the leaf came from.
  3. Some of the relevant attributes of the problem are:
    1. Leaf characteristics can be organized in general categories (deciduous vs. non-deciduous, simple vs. compound leaf, etc.) but also include more specific details (color, smell, etc.) that can be used to narrow down the type of tree the leaf came from. This hierarchy indicates that inferencing can be used to solve the problem.
    2. The goal is to identify the tree from its leaves. This suggests a backward-chaining goal-driven approach in which the patron would be queried for the leaf data. Note, however, that a data-driven approach (forward chaining) could also be used if all the leaf data was gathered from the patron up front.
    3. Expert resources (naturalist, tree identification guides) that can explain how to solve to identify trees from their leaves. This indicates a possible expert system approach.
    4. The patrons are looking for advice as to the type of tree the leaf came from. This suggests an advisory expert system.
  4. The attributes of the problem indicate that ABLE rule processing should be considered in the solution. Specifically, ABLE rules, the Backward engine (for backward chaining), and the Forward engine (for forward chaining) should be looked at in detail.


If you have any technical problems proceeding through this course, please contact support@bigusbooks.com.