Compvters in Human Behavior, Vol. 8, pp. 273-218. Printed in the U.S.A. All rights reserved.
0747~5632/92 $5.00 + .M) Copyright Q 1992 Pergamon Press Ltd.
1992
Software Review PC Tools for Expert System Development Leonard L. Snyder University of Minnesota
Wayne K. Schmidt United Behavioral Systems
Abstract - The purpose of this article is to identify and give basic information about several expert system software development tools that are available for the IBM PC and compatible computers. The article is intended for those who already use computers in their disciplines and would like to investigate expert systems as an extension of that use. With this in mind we have limited our consideration primarily to lower-priced tools. We have also included a bibliography of introductory readings in expert systems.
EXPERT SYSTEMS DEFINED
An expert system is a computer program that contains the domain-specific knowledge of a human expert, encoded in a form that can be accessed by other humans for assistance in problem solving and task performance. This knowledge is most commonly encoded in one of two forms, either as sets of production rules (i.e., IFTHEN constructs; Ignizio, 1991) or as frames (Harmon & Sawyer, 1990). Frames can best be described as representations of situations that contain both facts and procedures and are closely related to the concept of objects in object-oriented programming languages. In the last decade expert system technology has experienced explosive growth as expert systems have come into use in education, business, and government. Requests for reprints should be addressed to Leonard L. Snyder, Department of Educational Psychology, 178 Pillsbury Drive SE., University of Minnesota, Minneapolis, MN 55455. 273
274
Sofnvare Review
This growth has been made possible mainly by two factors. The first is simply the continuing demystification of the field of artificial intelligence (AI), of which expert systems represent one branch. As AI principles are applied to computer systems to make them more humanlike (i.e., user friendly) in their communications, the idea that a computer program can perform as reliably as a human expert becomes more credible. The other factor enabling the growth of expert systems is the availability of better tools for their development, especially for personal computer environments. Simons (1985) and Harmon, Maus, and Morrissey (1988) addressed the expanding role of the personal computer in AI development, citing growing hardware capacity, wider availability of sophisticated software tools, and increasing user familiarity with personal computers as the forces contributing to growth in expert system development for microcomputers.
EXPERT SYSTEM DEVELOPMENT SOFTWARE TOOLS
Software tools for expert system development mostly take the form of expert system sheIfs. An expert system shell is a skeleton expert system that can be instantiated with the specific knowledge required to make it a functioning expert system. Shells generally provide sophisticated, ready-for-use interfaces to both the developer, who need only be concerned with defining and entering the relevant knowledge, and to the eventual end user of the expert system. In this way a finished expert system can be created in a fraction of the time required to produce one from scratch, and the end result incorporates many of the features that are associated with state-of-the-art commercial software packages. These features may include on-line help, graphical user interface (GUI) capabilities, and so on. Most expert systems today are developed using shells. Harmon et al. (1988) report that, of 115 expert systems surveyed by them in actual use in the United States, 92 were produced using shells, while 23 were written using programming languages (chiefly LISP.) Using telephone interviews we asked a number of publishers of expert system tools to provide information about their products. From these interviews we selected the tools that are summarized below. We believe these tools to be representative of those available, but do not claim to have conducted an exhaustive search or a comparative evaluation. We asked the publishers to place their products into one of the following three categories: Type 1 (simple): limited number of rules allowed, programming skills not required, will nm on low-end PC equipment; Type 2 (complex): unlimited number of rules allowed, some programming skills required, requires high-end PC equipment; Qpe 3 (frame and/or object): frame-based rather than rule-based. We found that all of the rule-based tools selected for inclusion here placed no limitation other than disk space on the number of rules allowed. The results of this categorization are shown in Table 1. Tables 2-4 provide further information about the tools selected in the areas of computer system requirements, price, and features.
275
Sofiware Review Table 1. Products by Categoty With Publisher Addresses Publisher Name/Phone
Product
Publisher Address
Type 1 (Simple) Tools VP Expert 2.2
Paperback Software (415) 644-2116
2830 Ninth St., Berkeley, CA 94710
PC Expert 2.0
Software Artistry (317) 676-3042
3500 De Pauw Blvd., Suite 2021, Indianapolis, IN 46268
Type 2 (Complex) Tools NexPert Object
Neuron Data (415) 321-4486
444 High St., Palo Alto, CA 94301
PC Expert Prof. 2.0
Software Artistry (317) 676-3042
3500 De Pauw Blvd., Suite 2021, Indianapolis, IN 46268
CLIPS 5.0
COSMIC (University of Georgia) (404) 542-3265
382 E. Broad St., Athens, GA 30602
ExSys Prof. 3.0
Exsys, Inc. (505) 256-8356
P.O. Box 11247, Albuquerque, NM 87192
CXPERT
Software Plus (301) 261-0264
1652 Albermarfe Dr., Crofton, MD 21114
Type 3 (Frame and/or Object) Tools KDS2 and KDS3 (inductive)
KDS Corp. (708) 251-2621
934 Hunter Rd. Wilmette, IL 60091
Table 2. General Product Speclflcatlons Minimum PC Hardware
Operating System
VP Expert 2.2
PC/XT/AT or PSI2 mod 55
PC Expert 2.0
Recommended Memory/Disk
List Price
MS-DOS PC-DOS
64OWl Meg
$249
PC/XT/AT or PSI2 mod 55
MS-DOS/ PC-DOS
64OK/l Meg
NexPert Object
ATor PS12 mod 55
MS-DOS/ PC-DOS and Windows 3.0
3 Meg/4 Meg HD
PC Expert Prof. 2.0
PC/XT/AT or PSI2 mod 55
MS-DOS/ PC-DOS
64OW2 Meg HD
$500
CLIPS 5.0
XT/AT or PS/2 mod 30
MS-DOS/ PC-DOS
640104 Meg HD
$490
ExSys Prof. 30
AT or PS12 mod 55
MS-DOS/ PC-DOS/ OS/2
64OW2 Meg HD
$995
CXPERT
PC/XT/AT or PSI2 mod 30
MS-DOS/ PC-DOS and a C compiler
128W.5 Meg HD
$795
KDS2 and KDS 3 (inductive)
PC/XT/AT or PSI2 mod 30
MS-DOS/ PC-DOS
64OK/.5 Meg HD
$970
Product
$1,495
Software Review
276
Table 3. Product Features
And, Forward & Backward Chaining
Product
c, >,
Or, Else, Elself
z 5 <>
T F
;:
Confidence Nested If’s Factor
Loops and Recursion
VP Expert 2.2
Y
Y
Y
Y
Y
Y
N
PC Expert 2.0
Y
Y
Y
Y
Y
Y
Y
Y
NexPerl object
Y
Y
Y
Y
N
N
Y
Y
Y
Y
Y
Y Y
Y
Y
Y
Y
Y
N
Y Y
Loops only
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
N/A
PC Expert Prof. 2.0 CLIPS 5.0
Forward only
ExSys Prof. 3.0
Y
CXPERT
Y
KDS2 and and KDS3 (inductive)
Use own chaining strategy
Y
Y
Produce necessary logic from user provided facts
Loops and limited recursion
CONCLUSION
Expert system development tools seem to be following the same pattern of mahuation that more traditional software applications have shown over the years. One Table 4. Development Environment
Product
Built-in Editor
Debug/ Trace Tools
Screen Design Facility
Context Sensitive Help
Access Other Databases
External Subroutines/ Mixed language
VP Expert 2.2
Y
Y
DBASE Lotus
Y
PC Expert 2.0
Y
N
N
Y
NexPen object
Y
N
Oracle Actor Guide SQVWindows
Y
PC Expert Prof. 2.0
Y
Y
Y
Y
DBASE Paradox Lotus
Y
CLIPS 5.0
Y
Y
N
N
Y (via userwritten functions)
Y
Exsys Prof. 3.0
Y
Y
Y
Y
DBASE Lotus
Y
CXPERT
N
N
N
Only via other-vendor software
KDS2 and KDS3 (inductive)
Y
Debug yes Trace no
Y
DBASE Ill Lotus Symphony ASCII (read only)
Text mode (lTY) and HyperWindows N
Y (C language) Y
Software Review
277
sign of this is that many products have disappeared from the market in the last 2 years. Over half the companies from whom we sought information had either gone out of business or had dropped their expert system offerings. Another trend is that simple rule-based shells are being deemphasized in favor of more complex and multifeatured development environments. A common strategy is for the publisher to drop its own proprietary software and integrate products from several sources. This might be done, for example, by combining an already available database product with a hypertext product and adding further expert system features.
SUGGESTED
READINGS
In addition to the readings below, Harmon and Sawyer (1990) and Ignizio (1991) are worth investigating. The latter includes a demonstration copy of ExSys. Collins, H. M. (1990). Artificial Experts: Social Knowledge and Intelligent Machines. Cambridge, MA: MIT Press. It is difficult to do justice to this important book in a few sentences. The author, a sociologist, examines the importance of the social context in which knowledge exists. Beginning with the premise that “the locus of knowledge appears to be not the individual but the social group” (p. 6), the author considers the implications of his ideas for expert systems. Johnson, L., & Keravnou, E. T. (1985). Expert Systems Technology: A Guide. Cambridge, MA: Abacus Press. lntnxluces the technology by examining a number of examples of expert systems. The authors use similar terminology and structure in each description to facilitate comparison of the systems. Levine, R. I., Drang, D. E., & Edelson, B. (1990). AZ and Expert Systems: A Comprehensive Guide, C Language. New York: McGraw-Hill. Step-by-step introduction to expert system concepts and practice, including programming examples in C language accompanying each topic. Includes two chapters on neural networks, an emerging area of AI and expert system research. Weiss, S. M., & Kulikowski, C. A. (1984). A Practical Guide to Designing Expert Systems. Totowa, NJ: Rowman & Allanheld. General text on expert systems. Includes chapters on: (a) expert system reasoning; (b) history of expert systems; (c) expert system design, construction, and evaluation; and (d) the future of expert systems. Wenger, E. (1987). Artificial Intelligence and Tutoring Systems: Computational and Cognitive Approaches to the Communication of Knowledge. Los Altos, CA: Kaufman. Intelligent tutoring systems (ITS) represent a significant application of expert system technology. Wenger presents a model for the analysis of ITS that considers them as vehicles for communication. Many examples of ITS are reviewed by the author. Williams, N. (1989). The Intelligent Micro: Turbo Pascal Version. London: McGraw-Hill UK. Introduction to expert systems as well as to other areas of the artificial intelligence field. Includes program examples in Turbo Pascal that support each topic.
278
Software Review
REFERENCES
Harmon, P., Maus, R., & Morrissey. W. (1988). Expert system tools and applications. New York: Wiley. Harmon, I?, & Sawyer, B. (1990). Creating expert systems for business and industry. New York: Wiley. Ignizio, J. P. (1991). Introduction to expert systems: The development and implementation of rulebased expert systems. New York: McGraw-Hill. Simons, G. L. (1985). Expert systems and micros. Manchester, UK: NCC Publications.