Roger Clarke's Web-Site
© Xamax Consultancy Pty Ltd, 1995-2016
|Identity Matters||Other Topics||Waltzing Matilda||What's New|
Version of February 1988
© Xamax Consultancy Pty Ltd, 1988
This document is at http://www.rogerclarke.com/SOS/KBT.html
Expert systems are a particular class of computing application which have recently attracted a great deal of publicity. This paper provides a brief tutorial on expert systems, including an operational definition and model suitable for assisting managers to assess the relevance of the technology to their own organisations.
The software capability popularly known as Expert Systems is referred to in this paper as Knowledge-Based Technology (KBT). KBT has been an active area of research for some years, and is currently absorbing a significant percentage of software R&D and product development capacity, not only in Universities but also in corporations and government. It has attracted particular attention within competitive, information-dependent industry sectors, such as financial institutions.
This paper presents a brief introduction to KBT. Previous papers of a broadly similar nature include Elam & Henderson (1983) and Ford (1985), both of which focussed on DSS (Decision Support Systems); Holsapple & Whinston (1985), which dealt with applications of AI (Artificial Intelligence) in general rather than just expert systems; and Luconi et al (1986). The purpose of the present paper is to enable managers, especially those who are not directly responsible for computing, to appreciate the technology's distinctive differences, and assess its relevance to their own organisation's needs. Companion papers consider the identification of potentially profitable areas of application of KBT, and the technology's legal implications.
Gaining a clear understanding of the technology can be difficult, because key terminology is used in ways that are subtly different, sometimes significantly so. For example, the term 'expert systems' has been defined by well-known authors along the following lines:
computer programs which (a) use knowledge and inference procedures (b) to solve problems which, if addressed by a human, would be regarded as difficult enough to require significant expertise (after Feigenbaum)
software (a) built by assembling and codifying the knowledge used by one or more experts, and (b) designed to perform a task usually requiring specialist training (after Quinlan)
programs that (a) reason with symbolic information and use heuristic (non-algorithmic) inference procedures, (b) perform at the level of an expert, (c) are flexible both at design and run time, and (d) are able to explain their line of reasoning (after Buchanan)
These formulations demonstrate some broad consensus, but leave ample scope for discussion as to the meanings of key terms such as 'knowledge', 'inference procedures', 'difficult', 'expertise' and 'specialist training'. In particular, the word 'expert' may either refer to the source of the knowledge captured into the software, or to the nature or standard of performance expected of it (note that Buchanan uses the term much more open-endedly than do Feigenbaum and Quinlan). The word 'system' may be understood very broadly (e.g. to include manual procedures), or may refer to a specific piece of software (as in the term 'payroll system'). As a result, the term 'expert system' has proven to be subject to an inconveniently wide range of interpretations.
In order to avoid unnecessary confusion, this paper uses the term 'knowledge-based technology' (KBT) to mean the application of a set of analytical and programming techniques and tools. Beyond the techniques and tools themselves, KBT also encompasses the manner in which they are applied, and the education, training and organisational structure and infra-structure which support their use.
Conventional software development technology deals with procedures or algorithms which access and maintain precisely structured data. Conventional systems analysis focusses on specific problems, building up an understanding by accumulating detailed information about all of the various cases that have to be dealt with. On the other hand, KBT places emphasis on 'knowledge', and the new breed of 'knowledge engineers' are concerned with descriptions of whole 'problem-domains'. Individual cases are used as tests of the 'knowledge-base' which the knowledge engineer develops.
Few authorities make clear precisely what they mean by the term 'knowledge'. There are several possible ways in which knowledge can be expressed, but the dominant form in use in contemporary expert systems is what are called 'production rules' or 'antecedent-consequent-rules'. These are of the form:
IF <antecedent-condition> THEN <consequence> e.g. IF Applicant-Age < 18 & Parental-Consent-Received != 'Y' THEN Loan-Eligibility = 'N'
This representation can be used to express rules, which are firm statements of defined relationships between variables. These relationships are based on causal models, and are generally true, or at least firmly believed to be generally true. In addition, the representation can be used to express heuristics, or 'rules of thumb', which may be used as a guide, and are usually true, but which sometimes may not be. They are based on correlation or intuition, rather than on causal models. Heuristics represent 'surface knowledge' about the domain, whereas rules represent 'deep knowledge'.
Expressing knowledge as rules and heuristics has two particular advantages over previous software development technology. One is that not only can 'hard' knowledge be trapped into the computer, but so also can loose (but useful and potentially very profitable) knowledge. The other advantage is that knowledge that presently exists in the forms of rules can be captured in that form, without having to be first converted by teams of analysts and programmers into forests of data definitions and procedures.
KBT therefore contains a an important discontinuity compared to conventional software development technology. The difference is that the problem-solver no longer needs to think down at the level of the procedures and data which underlie the knowledge, and can therefore cope with more difficult problem-domains.
Beyond a mere definition of terms, management needs an explicit understanding of the process which KBT applications entail. Exhibit 1 provides a model of the development and use of KBT as it is conventionally practised. It omits technical detail, but includes all important elements and relationships.
During the Development Phase, knowledge is extracted from one or more people who have specialised knowledge in the relevant domain. Such a person is usually referred to in the literature as an 'expert', but the more general term 'domain specialist' is less pretentious and more general. The knowledge is commonly expressed in the form of antecedent-consequent rules.
In some cases it may be possible for the domain specialist to feed the knowledge directly into a 'knowledge-base', but more usually an intermediary analyst/programmer (popularly referred to as a 'knowledge engineer') captures it using some appropriate language and supporting software.
At some later time, a user, without reference to either the domain specialist or the knowledge engineer, consults the knowledge-base. He provides information about some event or situation within the problem domain. The software draws inferences, by applying the rules stored in the knowledge-base to the case-specific data and the more general (domain-specific) data stored in the knowledge-base. A result is provided to the user, in the form of a diagnosis, prognosis, recommendation, decision, etc, depending on the nature of the application. In addition, the user may request an explanation of the argument whereby the software reached its conclusion.
The schema also incorporates three emergent areas of KBT:
Because the field is still so new, the set of techniques and tools is explained somewhat differently by leading texts (e.g. Barr & Feigenbaum 1981 & 1982, Hayes-Roth et al 1983, Harmon & King 1985). They may be broadly classified into three groups:
These tools and techniques are quite different from those of conventional programming. Universities have been teaching at least some of them for some time now, but in many cases only in optional and advanced subjects. The skills necessary to develop KBT-based software therefore cannot be assumed to be available within an existing MIS Department. Like other new skills, they must be purchased or nurtured, and retained.
The ambiguous way in which the authorities use the term 'expert' has resulted in a common but very important misunderstanding. In a few instances, software developed using KBT techniques and tools has resulted in direct action on the world (e.g. in enhanced process and environmental control systems). In the vast majority of instances, however, the output from expert systems has been one form of input to humans, i.e. the results have been mediated by a responsible human decision-maker before resulting in action.
The term 'adviser systems' was coined some years ago to distinguish those applications which were not intended to act as experts, but rather to encapsulate the knowledge of human experts in order to support human decision-makers (e.g. Davis 1981, Bobrow et al 1986). Adviser software demands significant additional investment in user interface and explanation mechanisms.
The intention of the term 'adviser system' may have been to soften the notion of a genie in the computer, and so avoid the negative behavioural consequences of implying that humans were about to be replaced by software. Far from being a mere defensive reaction, the distinction is important. It is highly desirable that two distinct classes of KBT applications be identified:
Of course, many KBT applications will act as advisers in some circumstances and genuine experts in others, in which case the design, construction and implementation standards for both adviser and genuinely expert software must be taken into account.
A small number of publications have reviewed existing applications of KBT (see, in particular, Buchanan 1986 and von Weissenfluh 1987). One major way in which expert systems can be classified relates to the kind of conclusions which they reach. Some interpret the available evidence and produce diagnoses, e.g. to explain the reason for a machine-breakdown. Others interpret the available evidence but offer a prediction, e.g. of the likelihood of a particular applicant for a loan becoming a slow-payer or a defaulter. Some address design questions, proposing the form or layout of a product or the configuration of components needed. Some are related to industrial engineering matters such as the procedure whereby the components should be assembled.
However, not all expert systems are as ambitious as this. Indeed, many merely use the captured rules to determine to which class a particular instance belongs, e.g. whether a particular person is, or is not, entitled to a particular government benefit, an entry visa, or permanent residence.
Knowledge-Based Technology may have been in gestation in research laboratories for many years, but as an exploitable technology it is still very new. It therefore has similar disadvantages and dangers to those which any new technology entails. One of these, the shortage of people with the necessary skills, was discussed above in section 2.3. An associated problem is the relative immaturity of many of the available tools.
Many (perhaps most) expert systems deal with very specific problem-domains, and therefore do not undertake or support a complete activity, but rather one or two tasks within a sequence or cluster of tasks. The benefits which such software offers is seldom to completely automate the process and cut costs drastically, but far more often to assist the user to complete the activity faster, somewhat more cheaply and probably more accurately.
The term 'expert systems' has been to date associated with a high degree of independence from the mainstream information technology into which it now needs to be absorbed. Moreover, where an expert system is based on third party components (typically inference engine, KBMS and/or user-interface), it is not clear precisely what constitutes the expert system. If the expert system actually comprises only the knowledge-base itself, it is arguably not software, either in practice or in law. This may have some implications for the ownership of such software developed using KBT.
Finally, it should be mentioned that some commentators consider the definition of knowledge used by contemporary KBT to be dangerously narrow. Many of these sceptics come from outside the Information Technology disciplines (e.g. Dreyfus & Dreyfus 1986a and b, Roszak 1986), but some are themselves respected computing science theorists and practitioners (e.g. Hofstadter 1985, Winograd & Flores 1986).
Knowledge-Based Technology appears to have a great deal of potential to assist the activities of managers in many organisations. It also has some dangers which must be appreciated, and confronted.
This paper has provided a brief introduction to expert systems. A companion paper assesses the risk factors involved, and identifies circumstances in which profitable applications are likely to be found (Clarke 1989). A further paper considers the legal implications of KBT, both in terms of the ownership of KBT products, and the legal liabilities of organisations which develop and use expert systems.
Barr A. & Feigenbaum E.A. (Eds.) 'The Handbook of Artificial Intelligence' Vols. 1 and 2 Kaufman 1981, 1982.
Bobrow D.G., Mittal S. & Stefik M.J. 'Expert Systems: Perils and Promise' Comm ACM 29,9 (September 1986) 880-894.
Buchanan B.G. 'Expert Systems: Working Systems and the Research Literature' Expert Systems 3,1 (January, 1986) 32-51.
Clarke R.A. 'Knowledge-Based Expert Systems: Risk Factors and Potentially Profitable Application Areas' Working Paper 1989
Davis R. 'The Dipmeter Adviser: Interpretation of Geological Signals' Proc. 7th IJCAI, Vancouver, 1981 846-849.
Dreyfus H.L. & Dreyfus S.E. 'Mind Over Machine' Blackwell 1986.
_______ 'Why Expert Systems Do Not Exhibit Expertise' IEEE Expert Summer 1986.
EDP Analyzer 'What's Happening with Expert Systems?' 23,12 (Dec. 1985).
Elam J.J. & Henderson J.C. 'Knowledge Engineering Concepts for Decision Support System Design and Implementation' Info. & Management 6 (1983) 109-114.
Ford F.N. 'Decision Support Systems and Expert Systems: A Comparison' Info. & Management 8, 1985, 21-26.
Harmon & King 'Expert Systems' Wiley, 1985.
Hayes-Roth F., Waterman D.A. & Lenat D.B. (Eds.) 'Building Expert Systems' Addison-Wesley, 1983.
Hofstadter D.R. 'Metamagical Themas' Penguin 1985.
Holsapple C.W. & Whinston A.B. 'Management Support Through Artificial Intelligence' Human Systems Management 5, 1985.
Luconi F.L., Malone T.W. & Scott Morton M.S. 'Expert Systems: The Next Challenge for Managers' Sloan Management Review, Summer 1986, 3-14.
Roszak T. 'The Cult of Information' Pantheon 1986.
von Weissenfluh D. 'Überblick über Einsatzgebiete betrieblicher Expertensysteme' ('Overview of the Application Areas of Operational Expert Systems') Arbeitsbericht Nr. 15 Institut für Wirtschaftsinformatik Uni. Bern (December 1987).
Winograd T. & Flores F. 'Understanding Computers & Cognition' Ablex 1986.
The content and infrastructure for these community service pages are provided by Roger Clarke through his consultancy company, Xamax.
From the site's beginnings in August 1994 until February 2009, the infrastructure was provided by the Australian National University. During that time, the site accumulated close to 30 million hits. It passed 50 million in early 2015.
Sponsored by Bunhybee Grasslands, the extended Clarke Family, Knights of the Spatchcock and their drummer
Xamax Consultancy Pty Ltd
ACN: 002 360 456
78 Sidaway St, Chapman ACT 2611 AUSTRALIA
Tel: +61 2 6288 6916
Created: 27 July 2000 - Last Amended: 27 July 2000 by Roger Clarke - Site Last Verified: 15 February 2009
This document is at www.rogerclarke.com/SOS/KBT.html