17
Engineering Tools for Building Knowledge-Based Systems on Microsystems M. R. WlGAN Australian Road Research Board nowledge-based systems tools are increas- K ingly available on microcomputer systems. The range and characteristics of some of these tools are briefly reviewed including moioc and L~SP sys- tems and Expert System Shells for both text- and rule-based approaches. While the tools available up to about 1984 were reasonably adequate for self and academic teaching purposes and for prototyp- ing systems, production quality and capability tools have subsequently become widely available. Dif- ferent paradigms for problem reduction and analy- sis are covered, followed by the matching of prob- lem type, approach, and tool to both the learning phase and the production process. There is a bias towards the construction, design, and transport en- gineering areas of civil engineering. INTRODUCTION There is a wide variety of interpretations of the term “expert system.” These differing ideas reflect a lack of systematic discussion of the problems towards which expert systems are directed, and the means by which they are implemented. The basic terms with which this report is involved are the following: 1. explanation, 2. deduction, 3. advice, and 4. inference. Most useful expert systems offer the user explanations if they ask .to have the reasons for a particular question Address correspondence to: M.R. Wigan, Australian Road Research Board, 500 Burwood Highway, Vermont, Victoria. 31 33. Australia. being posed, and will explain the chain of deduction that led to this point. Treating problems in this way leads to a series of spe- cial requirements. Ideally the complexities of the infer- ence system, the painful coding of the user interface and the articulation of the explanation mechanisms would all be provided to a practical analyst wishing to start the task of building an expert system for a specific problem are with which he was concerned. This series of tasks are the parallels to compilers and problem generators (“4th generation languages”) for conventional computer systems, and the days are long gone when an applications analyst had to consider writ- ing a compiler before he started his application coding. The family of tools now available to cocoon expert sys- tem builders from the internals and mechanisms of an expert system are usually termed ”shells,” by analogy to the UNIX shell which does a similar task for users of that operating system. Like UNIX, many of the available shells are still objects of considerable complexity, flex- ibility, and programming power, and-again like UNIX- are not yet always easily recognized as a “simple” in- terface. This article is based on the supporting documentation for an engineering expert systems seminar (751, and is concerned primarily with disentangling the languages and expert system shells now available on small systems (280 with CP/M 80 up to-typically-680 x 0 and PDP- 11 systems running UNIX). This exploration will take us through the conceptual chain of developments which led to the appearance of these tools to the specific tools which are now available on small computers to exercise expert system building and operation. Initial engineering applications of expert systems are proving most effective in areas where diagnosis, clas- sification, fault detection, control, or explanation are needed-especially in areas like road and other forms 52 Microcomputers in Civil Engineering 1. 52-68 119861 0 1986 Elsevier Science Publishing Co.. Inc. S.? Vanderbilt Avenue 0885-9607;86/$3.50

Engineering Tools for Building Knowledge-Based Systems · PDF file · 2017-05-02DENDRAL was designed to deduce ... tem tool empty of the knowledge which made MYCIN a operational expert

Embed Size (px)

Citation preview

Engineering Tools for Building Knowledge-Based Systems on

Microsystems

M. R. WlGAN Australian Road Research Board

nowledge-based systems tools are increas- K ingly available on microcomputer systems. The range and characteristics of some of these tools are briefly reviewed including moioc and L ~ S P sys- tems and Expert System Shells for both text- and rule-based approaches. While the tools available up to about 1984 were reasonably adequate for self and academic teaching purposes and for prototyp- ing systems, production quality and capability tools have subsequently become widely available. Dif- ferent paradigms for problem reduction and analy- sis are covered, followed by the matching of prob- lem type, approach, and tool to both the learning phase and the production process. There is a bias towards the construction, design, and transport en- gineering areas of civil engineering.

INTRODUCTION

There is a wide variety of interpretations of the term “expert system.” These differing ideas reflect a lack of systematic discussion of the problems towards which expert systems are directed, and the means by which they are implemented.

The basic terms with which this report is involved are the following:

1. explanation, 2. deduction, 3. advice, and 4. inference.

Most useful expert systems offer the user explanations if they ask .to have the reasons for a particular question

Address correspondence to: M.R. Wigan, Australian Road Research Board, 500 Burwood Highway, Vermont, Victoria. 3 1 33. Australia.

being posed, and wil l explain the chain of deduction that led to this point.

Treating problems in this way leads to a series of spe- cial requirements. Ideally the complexities of the infer- ence system, the painful coding of the user interface and the articulation of the explanation mechanisms would all be provided to a practical analyst wishing to start the task of building an expert system for a specific problem are with which he was concerned.

This series of tasks are the parallels to compilers and problem generators (“4th generation languages”) for conventional computer systems, and the days are long gone when an applications analyst had to consider writ- ing a compiler before he started his application coding. The family of tools now available to cocoon expert sys- tem builders from the internals and mechanisms of an expert system are usually termed ”shells,” by analogy to the UNIX shell which does a similar task for users of that operating system. Like UNIX, many of the available shells are still objects of considerable complexity, flex- ibility, and programming power, and-again like UNIX-

are not yet always easily recognized as a “simple” in- terface.

This article is based on the supporting documentation for an engineering expert systems seminar (751, and is concerned primarily with disentangling the languages and expert system shells now available on small systems (280 with CP/M 80 up to-typically-680 x 0 and PDP- 11 systems running UNIX). This exploration will take us through the conceptual chain of developments which led to the appearance of these tools to the specific tools which are now available on small computers to exercise expert system building and operation.

Initial engineering applications of expert systems are proving most effective in areas where diagnosis, clas- sification, fault detection, control, or explanation are needed-especially in areas like road and other forms

52 Microcomputers in Civil Engineering 1. 52-68 119861

0 1986 Elsevier Science Publishing Co.. Inc. S.? Vanderbilt Avenue 0885-9607;86/$3.50

VOL. I , NO. 1 , /ULY 1986 TOOLS FOR KNOWLEDGE-BASED SYSTEMS 53

of construction and maintenance engineering, where the role of experienced judgement is strong, and the un- derlying theory is often not an adequate guide.

THE EMERGENCE OF THE SHELL

The logical structure that is appropriate to the first phase of expert systems applications is one of developing rules, checking for conditions, and reestimating probabilities before seeking further information. This can be ex- pressed as follows: 1. Rules which specify conditions under which an ac-

tion occurs. 2. Inference engine for estimating revised probabilities

and actions. 3. Response to a user to obtain further information or

to report to him. These translate cleanly to Rule system, Inference Engine, and User Interface.

The early successful systems such as MYCIN [ l 1 I, DEN-

DRAL [ lo , 121, and PROSPECTOR [311 were distinguished by the sheer scale of the effort involved, and the high levels of performance eventually achieved. DENDRAL was designed to deduce compound compositions from spec- tral data, MYCIN was a Lisp-based system, designed to help in the diagnosis of infectious diseases and PROSPECTOR

was developed to assist in locating mineral deposits. This led to a feeling that such approaches were necessarily for problems at these scales of effort, requiring massive computing power, and that the level of complexity in- volved was that of the detailed discussions on the foun- dations of plausible reasoning and of system building techniques dedicated to LISP.

The initial development of expert systems drew heav- ily on purpose-built large-scale LISP and FORTRAN pro- gramming packages, and only after the initial phase of integrated knowledge and inference systems did the question of building expert systems as a task in itself really gain much attention. Up to this point the rule sys- tem and the inference engine were tightly bound to- gether, and in the case of such systems as MYCIN the "knowledge engineer" would be a programmer who could adjust the relevant section of the program and ensure that this addition did not upset the logic or the interfaces with other parts of the program.

This led fairly promptly to a development of major importance: the extraction of the EMYCIN (an expert sys- tem tool empty of the knowledge which made MYCIN a operational expert system).

EMYCIN [69] is simply the core of MYCIN ("Empty Mycin"). EMYCIN was of considerable importance as an early inference engine, where the other basic-but in- ternal-operative mechanisms were for the first time separated more or less cleanly from the knowledge base in an attempt to make the task of building an expert

MYClN MCIN \

'.Inference engino \

.Inference engine .Data .Rules + .User Intorrclion .User Intrrrctlon - I 1 W Van Me4119791

d

.Data

.Rules .User Intorrclion .User Intrrrctlon

SACON ..... .Data .Ruler Alhms11914l Benmiisr))

.Explrnrtlon L Aulomrted tuilion system

CIuIc.ylI9IOI #

.Nrlurrl

Shell language

Fami 19111)

FIGURE 1. Key elements of IKBS (based on MYciN).

system separable from writing the entire problem solving driving and inference frameworks at the same time as the expert task. EMYCIN has subsequently been used for a number of successful medical and other expert sys- tems, and thus was demonstrably the first generally available expert system shell which achieved a wider use than that of its initial authors.

The first of the MYCIN family was a large LISP program with rules, data, inference engine, and user interface all mixed up. Consequently, the modification version and extension of MYCIN information required an extensive and skilled understanding of the MYCIN program as a whole.

The rapid specialization of this large program into separable functional tools followed very quickly. EMYCIN

was the inference engine and user interface part (i.e., MYCIN with data and rules removed), and quickly gave rise to a number of expert systems in widely diverse areas: PUFF [51 for lung ventilation performance, and SACON 171 for engineering advice on finite element pro- gram setups were but two of these. The complexity of EMYCIN was still significant and a separate explanation (TEIRESIAS) [251, and tuition systems (GUIDON) [171 rapidly emerged based on different ways of exploiting the "knowledge" in an EMYCIN system for the acquisition of new information and for tuition purposes respectively: TEIRESIAS exploited the structured knowledge to provide explanatory assistance, checking internal consistency and permitting new rules to be selectively added, while GUIDON used the internal MYCIN information as a struc- tured teaching tool. To take full advantage of the infer- ence infrastructure provided in MYCIN, the ROSIE language (331 was built up, providing the well-interfaced "shell" structure needed for usage by a wider range of people. Figure 1 shows how the key separable elements of J

54 M. R. WICAN MICROCOMPUTER5 IN ClVIL ENCINEERlNC

EMYCIN in LISP + rules in

= PUFF

MYClN in LISP

+ rules in LISP EMYCIN 1 PUFF in Basic I I

t rules in BASIC

= PUFF

single purpose single purpose environment for DEC-10 1976

SOFTWARE TO HARDWARE IMPLEMENTATION CYCLE (1970s)

FIGURE 2. MYCIN to PUFF: KL-1 O to PDP-1 1.

knowledge based system emerged from the monolithic

The links between the elements of Figure 1 and cur- rent microsystems are made clearer by Figure 2. PUFF

was developed using EMYCIN-but once developed for production use, was converted to a single-minded pro- gram in BASIC on a microsystem.

EMYC~N was-and st i l l is-a fairly awkward environ- ment in which to set up expert knowledge for end user delivery, as its still intimate association with the LISP en- vironment complicates its ready use by those without a LISP background.

At about the same time as these larger and well-pub- licized systems were gaining currency in the U.S., a simultaneous development was occurring of the com- plementary-and arguably more broadly accessible- approach of logic programming, which had its origin in the formal treatment of logic as a programming lan- guage. The work on resolution principles exemplified by Robinson [59] led to the idea of making the resolution process available as an operational language. The Horn- clause based logic programming system became em- bodied as the PROLOG language through the efforts of the Marseilles group.

PROLOG now provided an alternative basis for knowl- edge-based systems construction from the already-clas- sical LISP approach, and has led the expert systems ap- plications development efforts in many European countries: notably France, Hungary, and the U.K., and forms a major strand in the current range of Japanese programs in this area. PROLOG contains its own inference “engine” (the process by which the logic programming statements are resolved requires an automated mecha- nism for making and driving inference deductions and operations), and for many of the smaller tasks provides a highly effective declarative language in which to ex- press rule-based expert knowledge, with the added ca- pability of asserting new rules dynamically generated by the operation of the system itself in the course of a con- sultation.

Once again, the construction of higher level expert

MYCIN System.

system shell facilities emerged as a useful and problem oriented task, and a considerable number of such expert system shells based on (and embedded in) PROLOG have appeared and continue to appear. Other languages than PROLOG and LISP have been used for IKBS (intelligent knowledge-based systems) work, including SIMULA, SMALL-

A number of examples will be discussed later in this report. The two alternative paths selected here to illus- trate development are far from the only routes used to produce expert systems or shells. There is, however, a series of progeny of PROSPECTOR which has achieved wide application and industrial use. PROSPECTOR i s based on the two concepts of production rules (if condition then set condition or action) and of plausible reasoning.

Most expert systems are not based solely on produc- tion rules, and many employ the probabilistic expres- sions termed “plausible reasoning” coined by Duda et al. [31 I in their report describing the foundations of PRO-

SPECTOR. There have been numerous efforts to improve the often weak theoretical underpinning of such schemes for “plausible reasoning.” The PROSPECTOR ap- proach [301 has proved to be a rich source of shells, although Quinlan [57]-amongst others-has demon- strated (with his INFERNO system) that the algorithms may be considerably improved upon, and made more reli- able. The general approach has remained, and in some cases has clearly been influenced by Quinlan’s findings. There are several schools of thought which have con- centrated on improving the basis for the plausible rea- soning approach to expert systems. Among these, the Dempster-Schaefer formalism [26, 621 attracted per- haps the greatest volume of support to date (see, for example, Garvey, Lowrance, and Fischler (361). Fuzzy logic has also been used in this context [451.

PROSPECTOR has been widely influential, and is the moral progenitor of a large fraction of the currently avail- able expert system shells. Figure 3 shows a family tree of some of the microsystem products arising from Pro-

TALK, FORTRAN, BASIC, PASCAL, SAIL, ADA, and MODULA-2.

FIGURE 3. T ie Deevolution of PROSPECTOR.

The Devolution of Prospector (short life)

Mainframe progenitor

(Cox, Eroughton) gt;, ,loo 68000 8086 IBM PC

PDP-11 68000 + videotext VAX PDP-11 1983 * 1981 VAX

*1984 I

VOL. I , NO. I . lULY 1986 TOOLS FOR KNOWLEDGE-BASED SYSTEMS 55

spector, progressively recreating PROSPECTOR’S range of capabilities, and graphics outputs, but on far smaller machines.

The problem of consistent treatment of certainty in such advisory shells has to date not been as important in practice as might have been expected, as the key problem in expert systems applications is still the knowl- edge engineering, rather than the finer details of the tool structures within which this knowledge is articulated and delivered. The refinement of the inference techniques employed in expert system shells will become increas- ingly important as more ambitious applications are ad- dressed on small systems, and users are strongly advised to investigate and question the mechanisms employed in any shell that they are considering to use. The intro- duction of tools to help develop rules for KBS systems will require users to be careful to check on the inference methods implied.

MICROSY STEMS TOOLS

At this point we shall demonstrate the wide range of afforable tools to enable experimental applications with- out heavy investments in computer science backup. The tools available on microsystems fall into a number of broad categories:

1. Implementations of LISP

2. Shells written (and embedded) in LISPS

3. Implementations of PROLOG

4. Shells written (and embedded) in PROLOGS

5. Stand-alone shells (in any language) 6. Deductive rule search and identification assistance 7.’ Integrated special purpose expert systems with their

own knowledge based embedded as a total product.

Tools in each of these seven categories exist in two categories: academic and commercially supplied and supported. In each of these categories there are a range of entrants, often with a common ancestor. While it is difficult to unambiguously define an expert system, it is also now becoming equally hard to define a micro-sys- tem unambiguously. As an arbitrary cutoff, 68000, 68010, 68020, and low end PDP-1.1 processors have , k n included in the present definition for the purposes of this report.

The dedicated LISP Machine, Lambda, and Xerox re- search workstations which have provided the main stay of much of the North American work on applied artificial intelligence are beginning to be challenged by the 68020-based general workstations such as the SUN^ and the HP300 series. Smaller-scale LISP systems have been available on more modest microsystems for some time. These include the following commercial systems:

2. Cromemco LISP on 280 CDOS systems from Cro- memco.

3. MULisp on Z80 and 8088/86 systems from Software House, Honolulu and Microsoft.

4. Golden Hill Common LISP on 8088186 systems from Golden Hill Computer Company in Boston, MA.

5. Cambridge LISP on 68000 under TRIPOS (now better known as Amiga Dos) Atari Tos and CP/M 68 K from Metacomco in Bristol, U.K.

6. Franz LISP on 68000, Vax, and other UNIX systems from Franz Inc., Berkeley, CA.

7. IQLisp on 8086188, from Integral Quality in Seattle, WA .

8. MacScheme for the Mac from Semantic Microsys- tems in Beaverton, OR.

There are several public-domain LISP systems, the most widespread probably being:

1. LlSPKit LISP on 68000, Perq, and VAX systems 1431. 2. XLisp in C, on Maclntosh, 8088, VAX, and other

(mainly) UNIX systems.

LISP suffers from a wide lack of agreed standards, but there has been a recent agreement on a series of facilities comprising COMMON LISP, which has a degree of stand- ardization in the core capabilities provided. Golden Hill Common LISP, as an example, provides most of this stan- dard LISP for 8088186 based microsystems. SCHEME (a so- phisticated Lispvariant, widely taught at MIT [ l l ) has also attracted a standardization agreement, 1201, and is sup- ported by Texas Instruments and Semantic Microsystems in the market place.

LISP i s considerably more widely used as the basis for workstation and mini/mainframe shells and develop- ment environments. Shells written in LISP are still fairly scarce, Personal Consultant from Texas Instruments i s one that is widely available, based on IQ LISP. The latest version (Personal’ Consultant Plus) is written and com- piled in SCHEME. The rapid emergence of the Texas In- struments LISP machine on a chip is likely to accelerate the availability of large system shells on small machines.

Some of the many PROLOG implementations of note are given in the following list:

1. LPA’s Micro- and Professional-PROLOG on 280 and

2. LPA’s Sigma Prolog on 68000 and UNIX systems 3. ESl’s PROLOG-1 on Z80, 8088, 8086, PDPl 1, RT-11

4. Marseilles PROLOG on 6502 5. MUPROLOG on 68000/u~1x systems 6. NSW PROLOG on 8086, 68000, and UNIX systems 7. Quintas PROLOG for Sun and MEGAFRAME 68010, and

8. ESl’s PROLOG-2 compiler for 8086 family

8088186

(RSX and VAX-VMS)

VAX systems

1. T.L.C. LISP on 280 CP/M 80 and MsDos systems from 10. York PROLOG on mdny small systems, written in PAS-

T.L.C. of Redwood City, CA. CAL

M. R. WlCAN bIICROCOMPUTERS IN CIVIL ENClNEERlNC 56

11.

12. 13. 14.

Arity PROLOG interpreter and compiler for 8086 sys- tems MPROLOG for 8086 and IBM 370/308x series systems POPLOG: a ~ 0 ~ 2 , LISP, and PROLOG synthesis ADA PROLOG: in several forms for 8086 systems, including a public domain version.

For LISP enthusiasts, a tiny PROLOG interpreter by Nils- son [52] can be typed in a few minutes, to get a feel for PROLOG. The most widespread PROLOG for teaching (and self-teaching) purposes is probably MICROPROLOG [191, which runs in various forms on machines from 280 to Vax. It’s syntax does not accord to the DEC-10 defacto specification resulting from the Edinburgh University DEC-10 compiler (1 31 and the widely used reference text by Clocksin and Mellish [21]. MICROPROLOG has been used from school level (28) [321 upward (8, 18, 23) to postgraduate work [15, 641. The POPLOG multiple lan- guage environment including Prolog is of considerable engineering interest, as it has been used for intelligent shape recognition for London buses, controlling an image processing system 1421. The rapid development of extensive shells in PROLOG by end users is now a widely observed phenomenon, and suggests that PROLOG has some advantages for initial IKBS developers.

Many of the smaller expert system shells in use do not necessarily employ either PROLOG or LISP, and there are several families of small expert shells with no alle- giance to either language available on microsystems. Even FORTRAN has been used effectively at Rutgers Uni- versity for their EXPERT [72] system. The portability of many of these shells is quite good, and appears to be helping their rapid propagation, even on the modest (but ubiquitous) IBM PC. These fall into a number of cate- gories:

1.

2. 3.

4.

5.

6.

7.

8.

PRosPEcroR-style shells (Microexpert, INSIGHT, Sage, EXSYS, AUX, and sAvoiR)-often written in PASCAL or C. Lap-style shells (Personal Consultant). PROLOG-based logical shells (APES, MI, BUILD, PROVE,

GEM) written in PROLOG. PRoLoc-based text management shells (ES/P advisor): written in PROLOG.

Rule induction tools: Expert Ease, ALCS, KDS, CLASS, Rulemaster (mostly based on Quinlan’s 103). Mixed approach shells, written in PASCAL, C, OPS-V, or assembler (such as TESS, XL).

Implementations of mainframe knowledge systems for specific domains (e.g., REDUCE for symbolic math- ematics). Special purpose shells for introductory or decison an- alysis purposes, typically in FORTH or BAsic-often based on decision table techniques (Arborist, etc.).

This does not exhaust the range of different types of

TABLE 1 SOME OF THE MANY EXPERT SYSTEM TOOLS CURRENTLY AVAILABLE ON SMALL

S Y S T E M S ~ ~ ~

Name Author

ADA PROLOG AlON Development System ALCS AUX APES Arborist ARITY PROLOG BUILD BYSO Lisp Cambridge LISP CLASS Cromenco Lisp DAISY DUCK ERGO LOGIC ES/P Advisor EsperLlSP Expert Choice Expert Ease Expert Edge (TESS) Expert-2 Expert System EXSYS ExCL Common Lisp GC-LISP GEM

IF-PROLOG IN-Ate 1 st-CLASS INSIGHT 1 INSIGHT 2 IQLisp KCL-Prolog KEE Delivery KDS KES Knowledge Workbench Lightyear Lisp-86 Lisp88 LispKit MacPROLOG

Mac SCHEME Methods MI MicroEXPERT MicroPROLOG 3.1

MPROLOG MULisp MUMath MU Prolog Nexpert NlAL NSW Prolog OPS-v OPS-83

Morein

Paterson Reiter Hammond Dyer Weiss Rosenman Levien Fitch Gyenes

-

- - Mc Dermott McCarth y Goodall - - Michie -

- Huntingdon

Wh i nston Nanninga

-

- Carcano

Seiler Sei ler

-

- - Wallace Reggia - - - Henderson McCabe

Kleiber - - cox McCabe

Szeradi Soft Warehouse Software Naish . Rappaport Jenkins Summut Taylor Forw

expert system support tools, but gives a practical idea

VOL. I , NO. I , lUlY I986 TOOLS FOR KNOWLEDGE-BASED SYSTEMS 57

Source Tool Type Organization Host Operating System Country Categories

VM Interpreter Pasca1:Shell Rule Induction Pasca1:Shel I Prolog Extensions Decision TreesILisp VM Compilerllnterp. Pro1og:Shell Interpreter Compiler Rule Induction Language Lisp:Shell Logic Language Decision Trees Pro log: S he1 I Compiler Decision Trees + Rule Induction C:Shell Forth-Shell Basic Shell C:Shell Compiler Interpreter Proiog:Shell

Interpreter Lisp:Shell Rule Induction C:Shell C:Shell Interpreter Interpreter Delivery System Rule Induction C:Shell Nat. 1anguage:Shell Decision Trees Interpreter Interpreter Interpreter Compiler

Compiler (Lisp) Small Talk (Language) Prolog Shell Pascal Shell Interpreter

Interpreter Interpreter Symbolic Maths Interpreter Full Environment Interpreter (LISPIAPL) Interpreter Interpreter Compiler

Automata Design Aion Corp Southdata Software Intelligent Terminals Logic Based Systems Texas Instruments Arity Corporation Sydney University Levien Instrument MetaComCo. Texpert Systems Cromemco Lithp Systems Smart Systems Technology Computer Language Expert Systems International ExperTell igence Decision Support Intelligent Terminals Helix Expert Systems Mountain View PPE Inc. Exsys Inc. Franz Inc. Golden Hill Computing CSIRO Water and Land

Resources Springer-Verlag Automated Reasoning Corp. Programs in Motion Inc. Level 5 Research Level 5 Research Integral Quality BYNAS lntellicorp KDS Software A&E Silogics Lightyear Solution Systems Norell Data Systems Public Domain Logic Programming

Associates Semantic Micro Systems Digitalk TeKnowledge IS1 Logic Programming

SZKl Microsoft Microsoft Me1 bourne University Neurone Data NIAL System NSW University ExperTelligence Production Syst. Tech

Associates

MSDOS MSDOS MSDOS UCSD MSDOSIU N IX MSDOS MSDOS MSDOS MSDOS Tripos:CPIM 68k MSDOSIU N IX CPlM8O:CDOS MSDOS UNlX MSDOS MSDOSIVMS MadFinder MSDOS UCSD MSDOS Forth Basic MSD0S:MaclFinder UNlX MSDOS PROLOG

MacIF i nder MSDOS/Mac/U NIX MSDOS MSDOS MSDOS MSDOS MSDOS MSDOS MSDOS MSDOSIUNIX UNlX MSDOS MSDOS MSDOS UCSDIPerqlU N I X MacIFinder

MacIFinder MSDOS MSDOS CP/M80:86/MSDOS/VMS CP/M80:88/MSDOS

MSDOS C PlM80 : MS DOS CPlM8O:MSDOS UNIWC MadFinder MSDOSIUN IX UNIWC MacIFinder UNIX, MSDOS

us us UK UK UK us us us UK us us

Netherlands us us UK us us UK UK us us us us us

Australia

Australia

Germany us us us us us

us us us us us us us UK UK

us us us UK UK

Hungary

Japan

us us

Australia us

Canada Australia

us us

1 I2 213 2 2

112 1

213

2 21314 213

1 2

214 1

21 3 2

112 1 I2

21314 112

1 21 3 214 2

*

*

2 21314

2 1

213 213 2 3

2 /3 (4) 213 213 2 2

112 2

21314

213 112 1 12 213 112

2 112 112

2 / 3 ( 4 ) 2

1 2 / 3 ( 4 )

*

coniinued

58 M. R. WICAN tLIICROCOMPUTER.5 IN CIVIL ENClNEERlNC

of the range and nature of the materials already on hand for the purpose-and on microsystems. Table 1 is an eclectic, brief, and necessarily partial list to provide some idea of a representation range of knowledge-based software now available on microsystems and their coun- tries of origin.

A key type of tool which has emerged is the rule in- duction assistant. Meta Dendral was the first such tool [ l 1 1 . The key progenitor of this style of tool is the ID3 rule induction system developed by Quinlan 1551, and the algorithms have been implemented in several com- mercial packages to date. Some examples are:

1. Expert Ease on 8086 systems, in UCSD PASCAL.

2. ACLS on 8086 systems, embedded in a database management system (SuperFile in this case).

3. RuleMaster from the Radian Corporation in the U.S. 4. KDS from KDS Inc. in the U.S. 5. CLASS from Texpert Systems in the US. 6. IN-ATE from Automated Reasoning Corporation in

the US.

These tools take sets of data and attributes and deduce operational conditional rules to explain as much of the variance as possible. Expert Ease provides a simple har- ness to run these rules at once as an embryonic expert system limited to the rules derived from the data inputs employed. IN-ATE is a highly specialized fault diagnosis assistant, which generates its own rules as well as those provided: it also uses Dempster-Shafer bounded rea- soning, and is a good example of a very powerful domain specific system 141.

The slightly more sophisticated ALCS/Superfile com- bination-based on further work by the authors of Expert Ease-permits rapid and constructive searches for em- pirical rules for subsequent inclusion in a shell with wider expertise included. It is crucial to acknowledge that the ID3 approach cannot be used blindly, and i s of by far the greatest value when the underlying structure of the problem requires otherwise empirical pruning of a huge tree of finite discrete alternatives (such as the chess end game problem addressed by Quinlan (55, 561).

Rulemaster is a unix-oriented large-scale IKBS tool (also available on IBM PCs) which employs these ap- proaches to compact rules already inputed, as well as helping the user to deduce rules as one' aspect of the development environment offered. KDS is similar to Rule- master, but optimized for large-scale problems spe- cifically on an IBM PC. A practical example of the two strategies (user defined, and computer induced) for rule production is given by Michalski and Chilauski [51]. Rulemaster has also been used to apply rule induction methods to management procedures for sewerage water systems by Hadden and Hadden [40].

As the weight of user efforts moves to applications

TABLE 1 SOME OF THE MANY EXPERT SYSTEM TOOLS CURRENTLY AVAILABLE ON SMALL

Continued

Name Author

PC-Prolog - PC-Sc heme - Personal Consultant - Personal Consultant Plus - POPLOG Me1 I ish Portable Common - PRESS Welham Professional APES Harnmond Professional PROLOG McCabe

PROLOG-I PROLOG-II

PROLOG-2

PROLOG-86 PROLOG V

QUINTAS PROLOG PROVE PSAl L REVEAL RULE MASTER

TlMM SAGE-PC

Coodall Kanoui

Goodall

Sammut Warren Thompson Lemkin

Shapiro

-

-

- -

Tiny Prolog N i lsson T.K. Solver! Konopasc k T.L.C. Lisp Allen TOPSI Smith REDUCE Hearn RISKCALC Hogan s-l - SAVOIR cox Series-PC - Supertree Celona UO-Lisp - Waltz-Lisp - Wizdorn Chang XL Watts XLlSP Betz XSYS - York Prolog -

' The categories used are 1 -modesUinvestigatory; 2-effective for develop ment; 3-effective for delivery; 4-powerful system or environment; *-aca- demic sourcing.

These systems range from near trivial to extremely powetful. but all are avail- able on microsystems up to and including those based on the Motorola 68010. Not all are recommendable, but all have something to offer.

development, this category of tool will take on much greater importance in aiding the knowledge engineer in his task. Tools of this type are already in use to help generate rules for input to others already embodied in systems under existing shells such as Micro Expert 124, 701. This trend to developing rules under one system to be run under another is fairly widespread, and Lansdown (481 reports other cases where Micro Expert was the tar-

VOL. I , NO. I , l U l Y 1986 TOOLS FOR KNOWLEDGE-BASED SYSTEMS 59

~

Source Tool Type Organization Host Operating System Country Categories

Interpreter Infologics Mac/Finder/MSDOS/U NIX us 2 / 3 ( 4 )

Lisp Shell Texas Instruments MSDOS us 213 Scheme Shell Texas Instruments MSDOS us 213 Compiler(s) Sussex University POP-Z/UN IX UK 2 / 3 ( 4 )

Symbolic Maths University of Edinburgh Prolog UK 2/ 3 Prolog Extensions Logic Based Systems MSDOS/UN IX UK 213 Interpreter Logic Programming MSDOS UK 213

Interpreter Expert Systems International C/PM 80:86/MSDOSlVMS UK 213

Compiler Texas Instruments MSDOS us 313

Compiler Lucid Inc. UNIX us a 3

Associates

Interpreter Centre for Propagation of Apple France 1

Interpreter Chalcedony Inc. MSDOS us 1 Interpreter Solution Systems MSDOS us 1 I2 Compiler Quintas Computer Systems UNlX us 4

SAIL Language Computer Language C us c

Shell McDonnell Douglas MSDOS us 2

Prolog VM Compiler Expert Systems International MSDOS UK 21314

Prolog Shell CSIRO MSDOS/Mad/UNIX Australia

Rule Induction Radian MSDOS/U N IX us 2/3(4) Shell SPL-Insight MSDOSIUN IX UK 213 Rule Induction General Research MSDOS us 2/3

Language U ppsala University Lisp Sweden * Math Solver Lotus MSDOS us 1 / 2 Compiler The Lisp Company C P/MBO/MS DOS us 2 OPS-5 Variant Decision Maker Systems CPIM80:MSDOS us 1 Symbolic Masters Rand Corporation Lisp us 4 Decision Trees Riscalc Associates MSDOS us 2 Lisp/c:Shell Teknowledge UNlX us ' 2/3(4) Pascal :She1 I IS1 MSDOSIUCSDIVMS MVS UK 21314 Lisp:Shell SRI Inc UNIX/MSDOS us 213

Corporation

APL:Decision Trees Strategic Decisions MSDOS us 2 Compiler NW Computer Algarithms MSDOS us 2 Interpreter Pro Code CP/M80/MSDOS us 2

C:Shell Intelligent Systems Research UNlX Australia 2 Interpreter Public Domain C us

C:Shell Software Intelligence MSDOS us 213

I

Lisp:Shell California Intelligence MSDOS us 213 Interpreter University of York Pascal UK 8

get shell. Wager 1701 considers a number of construction industry, specific applications in this area.

A rapidly developing area is the extendible shell writ- ten in PROLOG. Some recent examples include:

1. ES/P Advisor (text-oriented). 2. MI from Teknowledge in U.S. 3. GEM from CSlRO Water & Land Resources in Aus-

tralia.

4. PROVE from CSIRO Building Research in Australia. 5. BUILD from Sydney University in Australia.

The improving performance and availability of PROLOG compilers is accelerating the pace at which such extendible shells are being produced. Other types of PROLOG-embedded intelligent tools include T-PROLOG: an extended PROLOG designed to handle discrete event simulation at a high conceptual level 1351.

60 M. R. WICAN W MICROCOMPUTERS IN ClVl l ENClNEERlNC

MATHLAB (Engelmore)

Lisp - integration (Martin)

Lisp -Algebra 1971

REDUCE 2 (Hearn)

0 1971 - DEC-10 Lisp - Algebra

MuLisp - Algebra + Z00 8088

Lisp + Graphics SMP

C + Graphics SUN 68010 SUN 68010 0 1984

Sage 88000 Prolog - direct problem solving with dialog aid

DEClO I a1982 I

FIGURE 4. KBS for Symbolic Mathematics.

Amongst the most effective and widely used knowl- edge based systems are the symbolic mathematics sys- tems MACSYMA [SO] and REDUCE [421. These systems con- tain a massive amount of special knowledge (on integrations differentiation, polynomial reduction, and matrix algebra, for example), and are implemented in compiled LISP. Figure 4 shows how these systems relate. The major examples include:

1. MUMATH on 28018086. 2. REDUCE on 680 x 0, VAX. 3. MACSYMA with graphics on 68010. 4. SMP with graphics on 68010. 5. PRESS in PROLOG.

''

MACSYMA has long been widely used on VAX mini- computer systems as a major production tool for sym- bolic algebra, equation manipulation and solution. It has now migrated to some large 68000-based virtual mem- ory UNIX systems such as the SUN (68010-based super- micro). The Rand Corporation equivalent to MACSYMA,

REDUCE, has now migrated down to the very small (non- memory mapped) 68000 systems such as the SAGE, under both TRIPOS and CP/M 68K. Consequently any 68000 with one- megabyte or more of linear address space i s able to run REQucE-and at a remarkably brisk level of performance under the Cambridge LISP compiler used for this efficient port. Both REDUCE and MACSYMA originally omitted symbolic integration, although both now in- clude it.

This powerful level of direct expert support or micro- systems i s not widely known, and is of practical impor- tance in particular to engineers and scientists for han- dling complex or intractable formal mathematics with arbitrarily good precision in execution.

The clear chain of links between Bennett and Engle- more's SACON [71 (an advice system to help engineers select the best options from a massive existing MARC

structural analysis program written in FORTRAN), Gale and Pregibon's (37) Lisp-based expert system for regression analysis, and Hearn's REDUCE demonstrate how symbolic algebra and numerical problem solving has now moved close to knowledge based systems both for the identi- fication and execution of such problems-and the tools are a l l now available on micros. At present the level of power required is represented by such personal work- stations as the various LisPMachines, by LMI, Xerox, and others. However, the integrated processing and graphics power represented by these high-level workstations (which have become the preferred development envi- ronment for much of large-scale applied knowledge based systems) i s replicated at a lower level by such large 68010 systems as SUN and APOLLO. This i s as yet not avail- able on the cheaper (Sage level) 68000 systems, al- though the Macintosh and the currently announced Commodore Amiga 68000 will swiftly change this sit- uation.

The more recent relevant development for computer- aided.design i s the PRESS system, written in the U.K. in PROLOG by Bundy and Welham (141, which was specif- ically designed to elicit information, interact with the user, and solve problems at school leaver (university en- trance) level. The user interface i s probably the best yet provided for computational support and explanation, and the basis of PROLOG ensures that such facilities can in future be demanded by users in the IKBS and graphics environments now the subject on integrated develop- ments. PRESS has already been employed as the algebraic part of the generalized system to solve mechanics prob- lems by Bundy et al. (1 31. The Xerox 1 100 and LISP Ma- chine dedicated LISP minicomputers already have the ca- pacity and the tools: only the integration of the tools and the next quantum drop in price level need be awaited. The recent releases of the TI Explorer (a dedicated LISP

machine workstation similar to the Lambda-El, the HP 300 series AS machines and the Tek Personal A1 Machine suggests that this wait will not be long. It should also be realized that most LISP machines have high-performance PROLOGS available, built on top of their LISP.

SPECIAL PURPOSE A N D APPLIED TOOLS

A fundamental problem with expert systems i s that the deduction of knowledge and judgement i s considerably harder than the learning process required to manufacture the technical tools, although these tools too require

VOL. 1 . NO. I , lULY 1986 TOOLS FOR KNOWLEDGE-BASED SYSTEMS 61

some effective and demanding understanding for their full effectiveness. It i s not always necessary to descend to the shell-building languages (such as LISP or PROLOG).

There are different types of problems which match dif- ferent types of tools.

The text animation shells and the rule induction tools both provide examples of special purpose tools for re- stricted problem domains, where, by reducing the level of skill required of the user, productivity is much in- creased. An example familiar in every day life may help to explain an appropriate problem-solving approach. Text animation is a term coined by Goodall to describe their ES/P Advisor Shell, and to emphasise the special tailoring of this shell to problems where large quantities of text are to be used to construct an interactive knowl- edge based system from the formal statements in the text.

While the obvious application in civil engineering is to code of practice and legal requirements a more fa- miliar issue of partial information can be given in terms of driver knowledge of regulations. The legal basis for much of the transport system is the subject of changing and extensive regulations. Only the prospective driver (rather that the existing license holder) i s faced with the requirement for learning and being tested on these reg- ulations as they are current at the time of his driving test. Subsequent to this occasion there is but a limited ex- posure to the occasional television or newspaper cov- erage of some aspects of the changes to the regulations, leading to an increasing gap between the knowledge of drivers of the regulations and the associated penalties and the actual situation defined by the current laws and regulations.

While the formal legal argument is that it is everyone’s duty to discover and maintain an up-to-date knowledge of the law, the rapid growth of the exercise of regulatory powers subsequent to the passing of Acts, and the great increase in the volume of regulation has been leading to greater uncertainty of the application of the law in both the average person and in the legal area. The testing of a law in Court is essential in many fields of govern- ment intervention to establish case law in the interpre- tation of a regulation: A thriving industry has grown up to help to try to inform users of regulations now in effect including lawyers in their own fields. Civil engineers have much to gain from better tools covering their re- sponsibilities as professional liability in a time of in- creasing public litigiousness and increasingly complex codes of practice is a matter of rising concern.

These joint effects suggest that there are several new requirements arising both for the formulation and the propagation of information about the law and the reg- ulations enacted under enabling legislation. These prob- lems are in the eminent domain of some of the tools of logic programming and of small scale expert systems building and are especially well addressed by text ani- mation shells.

The formulation o i regulatory legislation as logical statements, with a growing overload of complex rule- based overriding interpretations, i s well suited to the style of logical statements of which PROLOG is an oper- ational and testing tool. Imperial College, London, U.K., has made early moves (411 in this area, and a famous example is the continuing reduction of the recently re- vised (and very complex) British Nationality Act into a PROLOG format. This elucidated a series of areas where apparent gaps had been left in the legislation, without the use of legal skills-which had been used to introduce these areas of flexibility when the drafting had been done in the conventional manner. Areas of information on health and welfare regulations have also been attacked for some time. Policy and regulatory matters and codes of practice are all in the same category of limited but valuable and cost effective applications of IKES methods on microsystems.

The transformation of a general tool into a tool for a particular task is a general capability of computers, and is little different from the normal specification of an ap- plied computer program. The difference here is that a large amount of the automatic explanation, querying, and control of the tool in operation is entirely handled by the PROLOG style of declarative statements, and pro- gramming in the conventional sense is not required. This frees up the specification task from the needs for special formats to relate to these supportive capabilities, and drastically simplifies the construction of a suitable shell (a shell being the external interface seen by the user of the tool).

It is clear that an animated text version of a complex regulation in this way will lead not only to a clear process of disentangling the parts of a regulation which apply in any specific case, but also provides a means for checking the structure of the regulation when at the construction and drafting stage, for explaining its application at this point and later on, and for teaching the application of the regulation.

The underlying problems of setting up a system of this kind which can be adapted swiftly to track changes in regulations has been an underlying problem for com- puter-based learning systems-which have in most cases less need to adapt. It i s the declarative nature of PROLOG that now makes this considerably easier to do. The PROLOG system itself carries out the process of searching for a satisfactory answer to the queries posed. This means that the addition of a further fact or general rule (which may be inputed at run time by the user, or be generated directly by the program itself and added to the system) does not require reprogramming. This level of flexibility (in terms of the end use of the tool) i s a fair measure of the potentially lower costs of main- taining a regulatory system in this general format.

The automatic deduction of general rules and their progressive inclusion in a PROLOG system i s a normal

62 M. R. WlGhN ~blICROCOMPUTER5 IN ClVll ENGINEERING

process in many PROLOG programs, but the need to spec- ify the necessary predicates (the PROLOG statements of a fact or a rule, not a normal sequential programming statement) to achieve this in a particular case requires some skill in writing and understanding the peculiarities

Rule induction systems of greater power are now ap- pearing as part of newer systems such as Radian's Rule- master Texpert systems "class," and KDS Inc.'s KDS systems-all of these are now available on IBM PCs.

A developing requirement for industrial shells with a delivery system to give users their own packaged KBS on their own microsystem has now converged with prod- ucts like SAVOIR, which ICI and lSlS jointly developed, and is now used both to distribute packaged (runtime only) knowledge systems-and to link directly into large-scale data banks with an intelligent KBS front end for wheat and other types of farming, using Prestel (Via- tel) technology. This is now a large-scale commercial system in operation by ICI in UK.

This uniformity in user interface between a micro- system and a central, remotely accessed system for the small IKBS System is a generally emergent trend in com- puter-based workstations, and, in the case of knowledge engineering, reflects the fact that many valuable knowl- edge systems can be produced in a form suitable for small system delivery-albeit on a tightly defined area of knowledge.

The gap between the PROLOG tools and the plausible reasoning shells will very shortly disappear, as the avail- ability of PROLOG compilers spreads. Warren's early DEC- 10 and -20 compilers are now increasingly being chal- lenged by a range of other PROLOG compiters for a wider range of systems (68000, 8086, and VAX are a l l ap- pearing, including new high-performance systems by Warren), whose performances are rapidly improving.

The important issue is that the current offerings from QUINTAS, the firm with which Warren is now associ- ated, are claiming 20,000 + lips (logical inferences per second) on a Sun 68010-based large microcomputer, yet this only increases to a claimed 23,000 on the VAX 11/ 780. The speeds are adequate to implement major sys- tems in the huge virtual address spaces of these types of systems, and irredeemably blurr the differences between small mainframe and microcomputer in this type of ap- plication.

The SUN has been selected by many groups (including the U.K. Alvey Project Group concerned) as their serious A1 workstation. This position has been enhanced by the POPLOG environment built by Sussex University to provide compiled LISP, PROLOG, and POP-ii in a powerful development environment. POPLOG must be the first full scale major development environment on 68000 microsystems rather than dedicated bitslice LISP stations. POPLOG has been used for IKBS methods of recognizing buses in street scenes 1441 and other substantial IKBS

Of PROLOG.

and imaging applications, at Plymouth Technical Col- lege, U.K.

Most of the major manufacturers are close to releasing their own Al Workstations, DEC and Tectronix being perhaps the first to make this public-DEC with their recent OPS-V software release, Texas Instruments with their Lisp-based Explorer, and Tek with their 8086-based Smalltalk/Lisp 68000-based workstation product. An in- teresting development is the rapid emergency of high- performance workstation-style products for the Mac: NEXPERT, OPS83, and Mac Prolog are all in this category, and offer substantial performance.

Knowledge exists at all levels, and the need to deliver it more flexibly, understandably, and effectively is be- coming widespread. lKBS or expert system techniques are now genuinely available in a form suitable for ex- tending the range of options available to systems analysts and end users to problems of both very modest size and to areas where the effort required still remain very large.

The difference this time around i s that the develop- ment and delivery tools are there, in numbers, and on cheap machines for the development and learning stages. The commercial and applications promise of ex- pert systems can now be tested economically and ef- fectively. . . . and success stories are beginning to ap- pear in many places.

Quite a number of these have taken the route of developing simple rules in a prototype environment and then feeding them into an operational shell such as MICROEXPERT (24) often with aid from a simple knowledge engineering tool like EXPERT EASE.

This approach i s listed several times in a recent review of expert systems in the construction industry (701, par- ticularly in connection with using the small Apple-based Expert-now renamed PRENTicE-shell developed by Lans- down (481 as part of a study for the Royal Institute of British Architects in this manner. Such users of MicroExpert have migrated their knowledge base to SA-

VOIR (a forward and backward chaining system with good videotext and videodisc interaction capabilities) when they needed more power and/or a video text interface. Both Loughborough University and Lansdown have done precisely this.

The simple choice of a single language (PROLOG, LISP,

OPS-v, etc.) is increasingly being seen to be inappro- priate: multiple language linkages are needed to obtain the best features of each-and to hook on to existing facilities on the same machine. OPS83 i s specifically designed for this: PROLOG i s an excellent example and the Salford LISP PROLOG system i s actually written in FOR-

TRAN 77 [16] and retains access to all the languages. These developments are widening the installation of IKBS

tools in wider environments than dedicated Al ma- chi nes!

VOL. I . NO. I , lUlY 1986 TOOLS FOR KNOWLEDGE-BASED SYSTEMS 63

DISCUSSION OF MICROSYSTEM TOOL REQUIREMENTS

The various tools listed in the earlier sections require a little more discussion before it i s really possible to con- sider which-if any-will fulfil a specific role or task. There are a number o i frames of reference required to make sense of the range of offerings, and a suitable checklist might be:

1. Education, 2. Prototyping, 3. Product delivery, 4. Portability, 5. Technical validity, 6. Academic or commercial sourcing, 7. Performance, 8. Other operational considerations.

Questions of price and local availability are always subject to change, and are excluded from this discus- sion. Each of these headings requires some careful qual- ification. Education in this field is often self-education, and so the best tool for learning may well not be used for anything other than that process. The cost of profes- sional courses in these subject areas is typically of the same order or greater than the purchase of an appro- priate self-learning tool. This is a typical situation for microsystems, and the purchaseltraining balance re-

quires careful consideration in most such cases: do not fail to cost your own time in both cases.

It is difficult to discuss the pertormance of various tools with some guidelines. Periormance in terms of speed is only one dimension, and is frequently badly misrepresented. The use made of memory is also mis- leading if treated in isolation-and the capacity in terms of numbers of rules is quite inappropriate without a clear idea of how many rules are needed in the particular tool to express a specific statement of information. Bench- marks are therefore both dangerous and misleading but sti l l required to evaluate the inevitable tradeoffs between different aspects.

For PROLOG in particular, it is useful to have some idea of the underlying speed of the inference engine. This i s normally expressed in terms of lips (logical inferences/ second). The simple test chosen to assume this rate of execution for this report i s the naive reverse of a list. This is a straightforward statement in PROLOG which pro- duces a list of numbers in the reverse order to the input list. For n elements in the list this requires ( ( n + 1) ( n + 2))/2, or 496 inferences for the reversal of a 30-ele- ment list.

The basic statement of the naive reverse in PROLOG is given in the Appendix. A typical set of approximate re- sults has been collated by the author and are given as Table 2. These results have been obtained from different sources, and only a few have been rerun by the author. Not only i s the naive reverse a rather one-eyed test, but

TABLE 2 INDICATIVE AND APPROXIMATE PERFORMANCE LEVELS OF SOME PROLOCS ON THE NAIVE REVERSE TEST

PROLOG lnterpreters

MPROLOG (Hungary) MsDOS IBM XT 4.77 MHz 8088: 300 Lips PROLOG-I (U.K.) MsDOS IBM XT 4.77 MHz 8088: 250 Lips MicroProlog (U. K.) CP/M80 Z80 4 MHz: 250 Lips PROLOG-I (U.K.) CP/M8O Z80 4 MHz: 3 10 Lips NSW PROLOG (Australia) UNlX SUN 2/120 10 MHz 68010: 490 Lips PROLOG-I (U.K.) VMS VAX 111780: 1000 Lips MUPROLOG (Australia) UNlX HP 9000 600 Lips WARREN (U.K.) - PDP-11 480 Lips

P ROLOC Compilers

QUINTAS PROLOG (USA) UNIX. VAX 11/780: 24000 Lips - SUN 2/120 10 MHz 68010: 20000 Lips

WARREN (U.K.) - DEC-10 KI 10000 Lips LPA MACPROLOG (U.K.) Finder Maclntosh 8 MHz 68000: 2500 Lips

APRICOT 7 + MHz 8086: 3000 Lips LSI Octopus 8 MHz 8088: 3500 Lips Wang PC 8 MHz 8086: 5000 Lip5 Burroughs 825 6 MHz 801 86: 6000 Lips IBM PC/AT 6 MYz 80286: ' 6270 Lip5

Automata Design (USA) MsDOS IBM PC 4.77 MHz 8088: 50 Lips

PROLOG-2 (U.K.) MsDOS IBM PC/XT 4.77 MHz 8088: 2200 Lips

SALFORD LISP/PROLOG Prime 750 1900 Lip5

64 M. R. WICAN t\.I/CROCOMPU JERS IN ClVl l ENGINEERING

also the differing implementations the host operating sys- tem have a visible and substantial effect. Garbage col- lection, stack space, clause indexing, and many other features are completely ignored by such a test.

This modest list of results, some claimed, some fully verified is given to encourage the careful specification of more relevant and helpful means of assessing the per- formance, capability, and effectiveness of different KBS tools and development systems. This process is essential as a part of the understanding needed to make effective use of the "canned" expertise-or otherwise-built into the shells available, and to properly address the appli- cation utility of the options. It would be a major error to assume that the performance on naive reverse is a fair reflection of the power of the PROLOG, although broad comparisons (50, 500, or 5000 Lips?) are useful and not too misleading.

MATCHING PROBLEM SOLVING METHODS TO REAL PROBLEMS

The plethora of acronyms in Table 1 might delude some readers into the belief that any tool would do for their problems, and they would be quite wrong. Knowledge- based systems require as much, if not more, problem analysis before reaching for the tool box that any other operational research or decision support issue, or com- puter application. Most current applications work in a range of fields are tentative, and a few are already prac- tical.

Applications of knowledge-based systems in struc- tural engineering have been surveyed by Adeli [2]. Ap- plications in the planning, transport and construction area have been discussed by several authors Cohn, Har- ris, and Bowlby 1221 on noice barrier design and; Dickey and Doughty 1291; Desrochers 1271; Lansdown 1481; Ogawa, Fu, and Yao 1531, who used PROLOG to develop the SPERIL system to assess damage on existing structures using fuzzy sets and Dempster-Schafer inference to cap- ture the knowledge of experienced structural engineers. Rosenman and Cero [611; Wager 1701; Wigan (73-761; Wood 1771; and Zozaya-Gorostiza 1781 on a whole range of applications. Only a few report operational re- sults as yet, the noise barrier system of Cohen et al. [22] does however illustrate joint use of KBS and conven- tional programs. This is typical of many application fields, and cover a wide range of initial investigations. Military applications in, transport and civil engineering are substantial and well advanced. The control area is important in engineering, and the control and diagnostic applications tools (such as InAte) wil l soon be comple- mented by fuzzy logic control developments. There are also demonstrated techniques for process control with its own rule generation [541 which will be of value in traffic guidance and control in future.

The problems of reformulating engineering decision knowledge in a usable form has been approached in- dependently by those seeking to build Bayesian decision rules without the IKBS environment, for pavement man- agement [631. This type of work will need to be stepped up in future. Tools such as Riskcalc, Expert Choice, and Arborist are likely to be helpful here. Recent develop- ments in improving the theoretical basis for pavement design have included Bayesian techniques [471 which have provided a good foundation for KBS applications in this area.

The litigious aspects of engineering have been ad- dressed by the Rand Corporation [701 to evaluate civil claims for personal injury (the Rand LDS system). These systems are specifically designed to handle legal con- ditions and to encompass expert strategies in their res- olution or application. This type of art is of considerable value in civil engineering projects, and i s perhaps an unexpected application development.

Diagnostic tools applied to heavy machinery are al- ready proving to be effective 1661, and even the weather forecasting aid valuable to major construction projects has been addressed effectively (791 using rule induction tools. However In-Ate 141 is a tool developed and tuned specifically to fault diagnosis in equipment: a frequent operational need in civil engineering.

The front ending of major engineering programs con- tinues to be a useful goal and British Aerospace, for ex- ample, have a 3000 + rule system under SAVOIR to deal more effectively with NASTRAN.

Experiments are needed to select the right engineering problems in each area, and it is now timely to do such work on microsystems. Very few examples indeed have yet been any more than identified as yet.

GRAPHICS AND KNOWLEDGE-BASED SYSTEMS

Transmission of understanding can be considerably en- hanced by graphics displays and interactions, and knowledge-based systems are no exception. While some of the small-scale tools have been hooked up to graphics displays using MicroProlog [461, Prolog-2 and MuProlog 1491, the more useful scale graphics enhancements are exemplified by Micro Expert 4.0 graphic display of the hypothesis trees, with on screen navigation and inquiry of the rules and links [24]. It i s rarely remembered that PROSPECTOR included a graphics output in the SRI System. However, at the heavy duty end of the spectrum, IKBS development environments make heavy use of bit- mapped graphics. KEE, ART, and LOOPS provide some of the most compelling demonstrations that such tools are needed for developers-and effective for end users. At present this depends on high-end personal (mini) com- puters such as PERQ, LISP Machine, Texas Instruments Ex- plorer Symbolics and Xerox 1100 series. These capa-

VOL. I , NO. 1,IULY 1986 TOOLS FOR KNOWLEDGE-BASED SYSTEMS 65

Special chip emcutas in 1t10 dedicated system ---

FIGURE 5. Adding interpretation to an instrument.

bilities are already appearing on personal (micro) level computers such as the Maclntosh (Neurone Data Sys- tems NEXPERT being but one recent example).

It should be noted that the massive early DENDRAL sys- tem was designed specifically to interpret graphical out- put of the spectral variety: after ten years this task (or at least a well judged subset of it) i s now operated in the field by a microsystem. This increase in power is due to several different factors, and is not simply due to the increasing power of mainframes and microcomputers. figure 5 shows the development cycle used. The main- frame-based Rutgers University EXPERT tool was used for development and testing, but once this phase had been completed EXPERT was then also used to generate the mi- crocomputer assembler code to into the chip-directly from the newly developed knowledge base.

General Electric Corporation has produced 191 an in- teresting expert system to help to buffer the imminent loss retirement of an expert diesel locomotive diagnos- tician. figure 6 shows the mix of tools, development, and delivery systems. A mainframe LISP system has been used to develop the system: the whole structure, thus produced, has been converted to FORTH, for speedy mi- crocomputer implementation, and optical discs under the control of the microsystem, then deliver both diag- nosis and instruction to the user. An elegant use of all three types of tool.

The next quantum increase in the penetration of IKBS systems in the market place will arrive when multitask- ing bit-mapped graphics delivery systems drop to $1-3 K. This i s likely to occur with increasing frequency, and will open the market for both delivery and use of KEE-

level systems. The Xerox 1 100 display of the 'trucking' system developed in LOOPS, with extensive analog 'con- trols', icons, and windows gives a good idea of the rich- ness of the user interface due shortly on micros for IKBS delivery .

FIGURE 6. The G.E. diesel locomotive diagnostic system. I i r . I 1

A QUESTION OF PERSPECTIVE

The basic elements ot an expert system are reasonably obvious, some form of specification of the knowledge, a method of interacting with the user, and a black box whose job is to access the knowledge, process it, and control the interaction with the user. An expert system or a KBS is, after all, just a computer program.

Unlike other programs, the performance or power of KBS systems needs to be measured in terms other than speed of execution of a task. Just as the 'naive l ist reverse' bench mark simply does not cover more than even a part of this aspect, the performance of a PROLOG, and other measures of the capacity of the PROLOG are at least as important, and the assessment of the capacity or com- plexity of a KBS shell requires several different dimen- sions.

Although there are a range of methods of representing 'knowledge' almost all systems include the capacity to handle a rule (If (condition) THEN (action)), although the complexity permitted for a single 'rule' may vary considerably between different KBS tools. Consequently the 'number of rules' is one sensible measure of com- plexity for judging expert systems, and the tools being considered.

A general perspective may be gained from the fol- lowing results from the field:

1. a feasibility demonstration 40 rules 2. a Lab prototype (reasonable coverage) 400 rules 3. a production system (extensive coverage) 1400 rules

These capacities are reflected in the microsystems tools. For example, the Expertelligence OPS-5 on a Maclntosh i s initially a limited system handling only about 50 rules; MicroExpert handles 400 + rules; EXSYS handles about 700 rules-but what each system defines as a rule can vary a great deal, and the power of a rule may vary by a fraction of 5, 10, or more between dif- ferent expert system shells of which a simple measure of response time is inescapably necessary. The heavier duty versions of these tools have far greater capacity (OPS-V + on Maclntosh, OPS-83, and S A V O I R ~ ~ IBM PC etc).

In spite of these cautious comments, it i s quite clear that nontrivial systems are already in the capacity range of currently common microsystems, and that this ca- pacity is more than adequate for feasibility and initial demonstration/field use. The rapid escalation of micro- systems power and memory size will ensure that the economics of hardware capacity and provision will not present a problem for long-and the objectives of sev- eral major National projects around the world (in the U.S., Japan, U.K., and EEC, for example) are to provide personal computer/workstation speed and capabilities to far exceed the large general purpose computers in cur- rent use for major expert systems.

66 M. R. WICAN ~MlCROCObfPUTERS IN CIVIL ENClNEERlNC

Tools such as KDS and Rulemaster, which have the capacity for very large numbers of rules on a PC, and offer rule induction assistance as simply one aspect of the development environment, are already appearing on m icrosystems.

CONCLUSIONS

The tools for IKBS construction and use at a practical, closely focussed level are now fairly readily available. They differ in quality and performance, but in practice the key problem is no longer finding a tool, but selecting one. The attention of potential users should now be di- rected towards the definition, extraction and implemen- tation of the knowledge base rather than the tools.

With the advent of PRoLoCcompilers on PCs and other microsystems, and runtime systems for many of the bet- ter-quality shells, the problems of the distribution of the results of IKBS construction on micros are now man- ageable. Videotext, graphics, and optical disks are now also practical delivery media on microsystems, and embedded small IKBS systems within equipment are al- ready a reality.

Versions of the integrated graphics and hybrid expert system building environments presently used for large- scale applications (KEE, etc.) are now appearing on such supermicros 68010 and 68020-level systems as the TEK 4410 SUN 3, and HP300 series, and must therefore be considered to be moving into the “personal system” area as the 68020-based Apple and other products move to mass market relexe, and the multiwindowing and visual rule tracing aspects of KEE are already available on Apple Mac (NEXPERT). This type of tool is still better thought of as the basis for large-effort projects, and the current crop of micro systems shells and tools on 8086 and 68000 family systems will still provide appropriate entry level and initial project support.

Many initial transport, road construction and other civil engineering applications wil l be fully satisfied by current tools, as they are characterized by a shallow underlying theoretical base, and long on the use of op- erational-and generally little recorded-judgemental experience. Control and diagnostic uses are obvious, but the greater efficiencies and management consisting of design support and training-especially code compli- ance implementations-are also cost-effective candi- dates for early applications.

It would be noted by engineers seeking help from this type of approach that the structuring of their present judgmental knowledge in a decision-free format will provide not only a useful starting point (which tools like Arborist can articulate), but also give some initial insight into the genuinely difficult task of knowledge formula- tion and articulation which is the reason for the exercise.

APPENDIX A

THE NAIVE REVERSE IN PROLOG

Nlist ((1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)).

N reverse( (1, 0). /* empty list specific */

Nreverse ((X I Rest), Result):- Nreverse (Rest, New), append (New, (XI, Result).

append ( L l , L2, L3). append ( (X I L l ) , L2, (X I L3)), append (L l , 12, L3).

Assuming that a predicate ’time’ exists which prints the time out on the console, a further predicate ’Do Nothing’ i s required to determine the acutal execution time of the naive reverse:

/* prune head */ /* Reverse the tail */ /* Add old head to end of new list */

?-ti me, N reverse( N I ist, Resul t), time. ?-time, DoNothing, time.

These two queries wil l then provide the necessary times to deduce the Lip rate, and for the 30 element list the time differences in seconds between the two intervals printed out from these two queries must be divided by 496.

REFERENCES

1. Abelson, H., Sussman, C.J. and Sussman, J . The struc- ture and interpretation of computer programs. MIT Press, Cambridge, Mass., 1985. Adeli, H. Knowledge based expert systems in structural engineering, Proc. 2nd. Intl. Conf. Civil and Struct. Engng. Computing, London, U.K., 1985. Andow, P.K. (1984). Expert Systems in Process Plant Fault diagnosis. Inst. Chem. Eng. Symposium Series (90) 49-58. Allen, D., and Radcol, K. Technical Diagnosis by au- tomated reasoning. Proc. Aerospace Applications of Ar- tificial Intelligence. Dayton, Ohio, 1985..

5. Atkins, J.S., Kunz, JC., Shortcliffe, C.H. and Fallat, R.I. PUFF: an expert system for interpretation of preliminary function data. In Clancey, B.C. and C.H. Shortcliffe (Ed.) Readings in Medical Artifical Intelligence: The First Decade. Addison-Wesley, Reading, MA, 1984. Bailey, D. The University of Salford LisplProlog System. Software Practice and Experience 15(6):565-609 (1985). Bennett, J.S. and Engelmore, R.S. SACON: a knowledge based consultant for structural analysis. Proc. 6th

Berk, A.A. MicroProlog and Artificial Intelligence. Col- lins, London, 1985.

2 .

3.

4.

6.

7.

//CA 179, 1979, pp. 47-49. 8.

I , NO. I , lULY 1986 TOOLS FOR KNOWLEDGE-BASED SYSTEMS 67 VOL.

9.

10.

11.

12.

13.

14.

15.

16.

17.

18.

19.

20.

21.

22.

23.

24.

25.

26.

27.

28.

29.

Bonnisone, P.P. and Johnson, H.E. Expert system Lor die- sel electric locomotive repair. Proc. //CAI. William Kauf- mann, Los Altos, CA, 1983. Buchanan, B.C., Smith, D.H., White, W.C., Critter, R., Feigenbaum, F.A., Lederburg, J . and Djerassi, C. Ap- plications of artificial intelligence for chemical infer- ence. Automatic rule formation in mass spectrometry by means of the meta-uENuRAL program. 1. Am. Chem.

Buchanan, B.C. and Feigenbaum, E.A. OENDRAL and META-OENORAL: Their applications dimension. Artifical In- telligence 11 :5-24 (1 978). Buchanan, B.C. and Shortliffe, E.H. (Eds.) Rule-based expert systems: the MYCIN experiments of the Stanford Heuristic Programming Project. Addison-Wesley, Read- ing, MA, 1984. Bundy, A., Byrd, L., Lager, C., Mellish, C., and Palmer, M. Solving mechanics problems using meta-level infer- ence, In //CAI 6 , William Kaufman, Los Altos, CA, pp.

Byrd, L., Pereira, F., and Warren, D. A Guide to DEC- 10 Prolog and Prolog Debugging Facilities. DAI Occa- sional Paper 19, Dept. of Artificial Intelligence, Uni- versity of Edinburgh, Scotland, 1980. Byrd, L., Welham, B. Using Meta-level inference for se- lective ,application of multiple rewrite sets in algebraic manipulation. Artificial Intelligence 190-210 (1 981 ). Chin, L. Computer interrogation systems: CISP. M.Sc. Thesis, Imperial College, London, U.K., 1981. Clancey, W.J. Tutoring rules for guiding a case method dialogue. Int. /. Man-Machine Studies 1 1 :25-49 (1 979). Clark, K.L. and McCabe, F.C. PROLOG: a language for implementing expert systems. In Machine Intelligence 10 Ell is Horwood, Chichester, 1982.

Clark, K.L., and McCabe, F.G. Micro-PROLOG: Pro- gramming in Logic. Prentice Hall, Englewood Cliffs, NJ, 1984. Clinger,'W. (4). The revised report on SCHEME. Al Memo 848, A.I.Lab, MIT, Cambridge, MA, 1985. Clocksin, W. and Mellish, C. Programming in Prolog. Springer-Verlag, London, 1983. Cohn, L., Harris, C., and Bowlby, F. Using expert sys- tems for transportation noise decision making. Transport Policy and Decision Making in press. Conlon, T. Start Problem Solving with Prolog. Addison- Wesley, Sydney, 1985. Cox, P. and Broughton, R. MicroExpert Users' Manual Version 4.0. IS1 PIC, Redhill, U.K., 1985. Davis, R. Interactive transfer of expertise acquisition of new inference rules. Artifical lntelligence 12(2): 121 -57 (1979). Dempster, A.P. A generalisation of Bayesian inference. /. Royal Stat. SOC. 8 30:205-47 (1968). Desrochers, M. Les systemes experts et la recherche op- erationelle. Report 386, Centre de Recherches sur les Transports, Univ. Montreal, Quebec, 1984. De Sarum, H. Programming in MicroProlog. El l is Hor- wood: Chichester, 1985. Dickey, J. and Doughty, I . The computer consultant: Users guide for the APPLE II. Virginia Polytechnic, Blacksburg, VA, 1983, (unpublished).

98:6168-78 (1976).

1071-1127, 1979.

30.

31 .

32.

33.

34.

35.

36.

37.

38.

39.

40.

41.

42.

43.

44.

45.

46.

Duda. R.O., Hart, P.E., Nilsson, N.J., Reboh, R., 510- cum, I.. and Sutherland, G.L. Development ot a com- puter based consultant for mineral exploration-SRI In- ternational. Report on SRI projects 5821 and 641 5 , SRI, Menlo Park, CA, 1978.

Duda, R.O., Hart, P.E., Barrett, P., Cashnig, J., Konolige, K., Reboh, R., and Slocum, J. Development of the PRO- SPECTOR System for mineral exploration. Final Report: SRI Projects 5821, 641 5. Stanford Res. Inst., Menlo Park, CA, 1979. Ennals, R. Beginning MicroProlog. Ellis Horwood, Chichester, 1984. Fain, J., Corlin, D., Hayes-Roth, R., Rosenschein, 1.. Sowizral, H., and Waterman, D. The ROSE reference manual. Tech. Rep. NI-1647-ARPA. Rand Corporation, Santa Monica, CA, 1981. Forgy, C.L. The OPS5 users manual. Tech. Rep. CblU- CS-81-135. Computer Science Dept. Carnegie-Mellon Univ., Pittsburgh, PA, 1981. Futo, I . and Szeradi, J. System simulation and co-oper- ative problem solving on a Prolog basis. In Campbell, J. (ed) Implementations of Prolog. E l l i s Horwood, Chich- ester, 1984. Carvey, T.D., Lowrance, J.D., and Fischler, M.A. An inference technique for integrating knowledge from dis- parate sources. Proc. 7th. Int. /oint Conf. Artifical Intel- ligence. William Kaufman, Palo, Alto, CA, pp. 319-25, 1981. Gale, W.A. and Pregibon, D. An expert system for regression analysis. Bell Labs. Tech. Rep. Murray Hill, NJ, 1982. .

Gosling, G.D., Hockaday, S.L.M. Identification and as- sessment of artificial intelligence techniques in air traffic control automation. Res. Report. UCB-ITS-RR-84-14, ITS, University of California, Berkeley CA, 1984. Gosling, C.D. and Oksenium, A.M. Simulation in LISP of continuous events. Working Paper UCB-ITS-WP-85- 11. ITS, University of California, Berkeley, CA, 1985. Hadden, W.]. and Hadden, S.C. Expert systems for en- vironmental regulation. Proc. Symposium Expert Sys- tems in Government, IEEE, 1985. Hammond, P. and Pickup, I. Prolog representation of DHSS Regulations: a pilot project. Dept. Computing. Working Paper 82/26, Imperial College, London, 1982. Hearn, A. REDUCE users guide to version 3.1. Rand Corp., Santa Monica, CA, 1984. Henderson, P. and Jones, G.A., and Jones, S.B. The LispKit Manual. Oxford University Programming Re- search Group Monographsb PRG-32(1): Vol, 1, PRC- 32(2); Vol 2, Sources. Oxford, UK, 1983. Hogs, D.C., Sullivan, C.D., Baker, K.D., and Mott, D.H. Recognition of vehicles in traffic scenes usipg geo- metric models, Int. Conf. on Road Traffic Data Collec- tion. Conf. Pub. 242. Inst. of Elec. Eng., London. pp.

Ishizu, K.A., M., Fu, L.S., and Yao, J.T.P. Inference pro- cedures under uncertainty for the problem reduction method. hiormation Sciences 28: 179-206 ( 1 982). Julien, S.L. Graphics in MicroProlog. Dept. of Comput- ing Working Paper 82/17, Imperial College, London, 1982.

115-19, 1984.

68 M. R. WlCAN MICROCOMPUTERS IN CIVlL ENClNEERINC

47.

48.

49.

50.

51.

52.

53.

54.

55.

56.

57.

58.

59.

60.

61.

62.

63.

Kinder, D.F. The design of road pavements as a problem in decision theory. Internal Report AIR 403-3, Australian Road Research Board, Vermont, Victoria, 1984. Lansdown, j. Expert systems: their impact on the con- struction industry. RlBA Conference Fund, London, UK, 1982. LeTexier, j . , Doman, A., Marksjo, B., and Sharpe, R. Use of Prolog with graphics including CAD. Proc. 2nd AUSCRAPH Conference Australian Computer Graphics Association, Brisbane, pp. 81-85, 1985. Mathlab Croup The MACSVMA Reference Manual: Version 9. Computer Science Department, MIT, Cambridge, MA, 1979. Michalski, R.S. and Chilauski, R.L. Knowledge acqui- sition by encoding expert rules verses computer induc- tion from examples: a case study involving soyabean pathology. Int. 1. for Man Machine Stud. 12(1):63-87 (1 980). Nilsson, M. The world’s shortest Prolog interpretor? In Campbell, I. (ed.), lmplementation of Prolog. Ell is Hor- wood, Chichester, U.K., pp. 87-92, 1984. Ogawa, H., Fu., L.S., and Yao, J.T.P. An expert system for structure damage assessment. Pattern Recognition Letters 2:427-32 (1 984). Procyk, T.J. and Mamdani, E.H. A linguistic self-organ- ising process controller. Automatica 15:15-30 (1 979). Quinlan, J.R. Discovering rules by induction from large collections of examples. In D. Michie, (ed.), Expert Sys- tems in the Micro-Electronic Age. Edinburgh University Press, pp. 168-201, 1979. Quinlan, J.R. Semi-autonomous acquisition of pattern- based knowledge, In D. Michie, lntroductory Readings in Expert Systems. Cordon and Breach, London, pp.

Quinlan, J.R. INFERNO: A cautious approach to uncertain inference. The Computer lournal 26(3):255-69 (1 983). Reiter, J.E. AUX: An inference system for probabilistic reasoning. MS Thesis, Univ. Illinois, Urbana, IL, 1977. Robinson, J.A. logic: Form and function. Edinburgh University Press, 1979. Roussel, P. PROLOG: Manual d’utilisation. Rapporte In- terne CIA, Ver de Luminy, Univ. d’Aix Marseille, Lu- miny, France, 1975. Rosenman, M.A. and Cero, J.S. An expert system for building regulations. Dept. Architectural Science, Univ. Sydney, 1984. Shafer, C. A theory of statistical evidence. In W. Harper, and C.A. Hooker (eds.) , Foundations of Probability The- ory. Statistical Inference, and Statistical Theories of Sci- ence (111, p. 365-436, 1976. Smith, W., Flynn, E., Kulkarni, R., and Saraf, C. Baye- sian methodology for rectifying recommend actions to minimise asphalt pavement distress. NCHRP Report 213, 1979.

192-207, 1982.

64

65.

66.

67.

68.

69.

70.

71.

72.

73.

74.

75.

76.

77.

78.

79.

Steel, B.D. Exwi-the implementation of a data in de- pendent expert system with a quasi-natural language in- terface. MSc. Thesis, Dept. Computing Sci., Imperial College, London, UK, 1981. Stefik, M., Borrow, D.C., Mittal, S., and Conway, L. Knowledge programming in LOOPS: report on an ex- perimental course. A/ Magazme 4(3) (1983). Stuart, j.D. and Ninson, J.W. Turbomac: an expert sys- tem to aid in the diagnosis of causes of vibration-pro- ducing problems in large turbo machinery. Proc. ASME Inl. Computers in Engineering Conference Boston, ASME, in press. Teitelman, W. Interlisp Reference Manual. Xerox PARC, Palo Alto, CA, 1978. Tong, R.M. An annotated bibliography of fuzzy control systems. In Sugeno, M. (ed.). Industrial Applications of Fuzzy Control. North Holland, in press. Van Melle, W. A domain-dependent production rule sys- tem for consultation programs. Proc. 6th Int. IJCAl 79 Joint Conf. on Artifical Intelligence, Tokyo, Japan, pp.

Wager, D.M. Expert systems and the construction in- dustry. Construction Industry Computing Assoc., Cam- bridge, MA, 1984. Waterman, D.A., and Peterson, M.A. Evaluating civil claims: an expert systems approach. Expert Systems 1 :

Weiss, S. and Kulikowski, C. A Practical Guide to De- signing Expert Systems. Rowman and Allanheld, Totowa, NJ, 1984. Wigan, M.R. Information technology and transportation: what research needs to be started now? Working Paper 172, Inst. Transp. Stud., Univ. Leeds., UK, 1983. Wigan, M.R. Useful information from the data explo- sion: Applied IKBS for transport. In Wigan, M.R., Mi- croelectronics, image and video processing, and expert systems in transport: a visit report. Internal Report AIR 000-227. Australian Road Research Board, Vermont, Victoria, Australia, 1984. Wigan, M.R. Knowledge based systems tools on micro- systems. Research Report ARR 134. Australian Road Re- search Board, Vermont South, Victoria, 1985. Wigan, M.R. Physical road performance: an analytic ap- proach to strategic pavement management. Australian Road Research 15(4):264-270 (1 985). Wood, P. A knowledge based system for transit bus maintenance. Tech. Rep. MP-84W15, Mitre Corp., McLean, VA, 1985. Zozaya-Corostiza, C. TRALI: A traffic light signal setting expert system assistant. Tech. Rep., Dept. Civil Eng., Carnegie-Mellon Univ., Pittsburgh, 1985. Zubrick, S.M. and Reise, C.E. An expert system to aid in thunderstorm forecasting. Tech. Rep. ZU-RS-00025, Radian Corp., Austin, TX, 1985.

923-25, 1979.

65-75 (1984).