[comp.ai] Object Oriented Expert Systems

bill@waikato.ac.nz (05/24/91)

I've just come across the term "object-oriented expert system". I've read up
on what object-oriented languages and object-oriented databases are, but how
is an object-oriented expert system organized? What makes it any different
from an object-oriented database? (Is there a difference?) Does it use rules?

Does anybody know of any good references on this subject? Thanks for any help.

bill@waikato.ac.nz

anestis@yetti.UUCP (Anestis Toptsis) (05/25/91)

Recently, COSMIC released CLIPS 5.0 which is an object oriented
expert system shell. Looking at that, may give some insights of
what an OOES may look like?   

steve@grian.cps.altadena.ca.us (Steve Mitchell) (05/29/91)

In comp.ai you write:

>I've just come across the term "object-oriented expert system". I've read up
>on what object-oriented languages and object-oriented databases are, but how
>is an object-oriented expert system organized? What makes it any different
>from an object-oriented database? (Is there a difference?) Does it use rules?

An object oriented expert system is simply an expert system written
using some object oriented programming language.  The expert system
can use almost any type of architecture which can be described using
standard OOPS techniques.  A few years ago I wrote a medium-sized
(~750 rules and 15,000 lines of code) expert system using YAPS (Yet
Another Production System) on top of flavors (a venerable OOPS) in
common lisp.  The expert system used a modified blackboard
architecture and included a justification-based truth maintenance
system.  It encoded knowledge in a variety of forms, including
production rules, proceedural code (mainly flavor methods), and
frames.

An object oriented expert system differs from an object oriented
database the same way any expert system differes from any database:
the expert system encodes knowledge (in some form) which allows it to
perform at a level comparable to a human expert in it's domain, while
a database simply stores and allows the retrieval of data.  In some
cases an expert system (object-oriented or otherwise) can make a good
front-end to a database (allowing the casual user to find what s/he is
looking for).  Symmetrically, a (conventional or object-oriented)
database can be used to store rules/frames/etc which might be used by
an expert system.

>Does anybody know of any good references on this subject? Thanks for any help.

For a taste, try Liz Allen's paper in the proceedings of AAAI'83 - "YAPS: A
production rule system meets objects", pg. 5 - 7

-- 
                           -  Steve Mitchell	
College Park Software			steve@seabhag.cps.altadena.ca.us
461 W. Loma Alta Dr.			grian!seabhag!steve@elroy.jpl.nasa.gov
Altadena, CA  91001-3841                ames!elroy!grian!seabhag!steve