PC tools for expert system development

PC tools for expert system development

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...

347KB Sizes 0 Downloads 132 Views

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.