Creation And Application Of A
CBR-Based Expert System
Project
proposal for CSIS 636T, Artificial Intelligence and Knowledge Based Systems II
baylor wetzel,
8.27.01
The Knowledge
Based Systems concentration for the MS in computer science at St Thomas
requires that the student take CSIS636T Artificial Intelligence &
Knowledge-Based Systems II.
This course, which according to the class description “revolves around a
semester-long development of a knowledge-based system”, is not currently
offered but, in speaking with Dr. Bennett, I believe that this class can be
fulfilled through independent study.
Objectives
There are several different approaches to building an expert system, the most well known of which is the rule-based system. Among the newer approaches is Case Based Reasoning (CBR), which reasons by analogy. It is my intent to build an expert system using The SelectionEngine, a java-based, general-purpose CBR engine that I designed. A paper describing the design and implementation of The SelectionEngine has been submitted for publication.
My goals are three-fold. First, I hope to develop a realistic CBR-based application. Specifically, I intend to build a sales advisor system that helps computer shoppers determine which products to purchase. The sales advisor will be targeted to the e-commerce environment and will be implemented as a stateless Java applet. The success of the application will be judged on the accuracy of its recommendations, although attention will also be paid to other aspects of expert systems, most notably system maintenance.
My second goal is to investigate issues in data representation and to illustrate ways to model data that make application development easier. It is my belief that substantially more deployed expert systems fail because of data representation than because of the underlying expert system technology.
My third goal is to understand those features that make a CBR engine successful. I am the author of The SelectionEngine, a highly portable CBR engine hosted on SourceForge, a site for open source projects. While the engine appears to be functional when used within a test harness, no attempt has been made to use the engine in a real-world application. The needs of the proposed sales advisor application will quite possibly lead to changes in the underlying CBR system.
Resources
The computing
resources necessary are minimal – a computer, a Java run time and a Web
browser. These resources are available
both at the St. Thomas computer lab and at my home.
I plan to use
Ian Watson’s Applying Case Based Reasoning (Morgan Kaufmann Publishers; ISBN: 1558604626). On-line resources
include the AI-CBR Web site (ai.cbr.org), the AI-CBR mailing list and many of
the Web’s information resources on the nearest neighbor algorithm (the
Selection Engine uses a k-nearest neighbor brute force algorithm).
Schedule And
Milestones
|
Sept 18 |
Functional
requirements, UI design, screen designs |
|
Oct 2 |
Data design,
data representation, sample data |
|
Oct 9 |
Test cases,
sample data |
|
Oct 23 |
Test harness,
validate SelectionEngine and data representation against test cases |
|
Nov 13 |
Implementation
of screen designs, implementation of workflow |
|
Nov 20 |
Checkpoint:
GUI/SelectionEngine integration |
|
Nov 27 |
GUI/SelectionEngine
integration completed, engine modifications (if needed) completed |
|
Dec 4 |
Human tests
(volunteers to test accuracy of system recommendations) |
|
Dec 11 |
Complete
paper, present findings |
Deliverables
At the end of
the semester, I hope to have a working application that, in functionality, will
be indistinguishable from a production application. This application, along
with any modifications made to the underlying CBR engine, will be distributed
to the open source and CBR communities via SourceForge and the AI-CBR mailing
lists. A paper will also be authored explaining the application, the reason CBR
was used, explanation of design decisions made (both application and data
representation) and items of interest to those hoping to create similar
applications. I estimate that the paper will be on the order of 100 pages,
although, for purposes of publication, a shorter version might be produced in
addition to the longer version.