In this article we will discuss about:- 1. Introduction to Expert System 2. Features of an Expert System 3. Actors.
Introduction to Expert Systems:
1. They are a class of computer programs which can advise, analyse, categorise, communicate, consult, conceptualize, design, diagnose, explain, forecast, identify, interpret, justify, learn, manage, monitor, plan, present, retrieve, schedule, test and tutor. In brief, they address problems normally thought to require human specialists for their solutions.
If an expert system is a program which performs the work of human experts, what type of work are we talking about? This is not an easy question to answer since the possibilities, if not endless, are extensive. Expert systems have been developed to provide financial, tax-related and legal advice; to plan journeys; to check customer orders; to perform medical diagnosis and chemical analysis; to solve mathematical equations; to design everything from kitchen to computer network and to debug and diagnose faults. In fact the expert systems do compare well with the human expert, as is, clear from the table 12.1.
If artificial expertise (expert systems) is so much better than the human expertise what problems are candidates for an expert system? There are quite a few problems (table 12.2), in addition to one serious: one-expert systems are generally developed for domains which possess certain characteristics.
Despite these limitations expert systems are often used in an advisory capacity, as a consultant or aid to an expert or novice users in some problem domain.
2. Expert system is an intelligent computer program which uses knowledge (rules of thumb or heuristics, deep knowledge or process model or a mixture of shallow and deep knowledge) and inference procedures as used by domain experts to solve problems which are difficult or complex enough to require significant human expertise for their solution.
3. A formal definition of expert systems approved by British Computer Society’s committee of the specialist Group on Expert System is as under:
ADVERTISEMENTS:
“An expert system is the embodiment, within a computer system of knowledge-based component from an expert skill in such a form that the system can offer INTELLIGENT ADVICE or take an INTELLIGENT DECISION about a processing function. A desirable characteristic which many would consider fundamental, is the capability of the system, on demand, to justify its own line of reasoning in a manner directly intelligible to the enquirer”.
In totality computing world is likely to benefit from the use of expert systems. In many cases the benefits are in real commercial terms such as cost reduction, which may go a long way to explaining their commercial success. They may reduce the cost of accessing information by allowing the dissemination of information held by one or a small group of experts to less skilled (less expensive) people.
Expert systems also allow knowledge to be formalized, which can then be tested and potentially, validated, reducing the costs incurred. They also allow integration of information from different sources, again reducing the costs of searching for knowledge. In short, expert systems are computer programs specially designed to represent human expertise in a particular domain.
Features of an Expert System:
The heart of an expert system is the powerful corpus of knowledge which is built up during the system building. The knowledge is explicit and organised to simplify decision making.
ADVERTISEMENTS:
The importance of this feature of expert systems cannot be over emphasised:
The accumulation and codification of knowledge is one of the most important aspects of an expert system and has implications which go beyond the mere construction of a program to perform some class of tasks. This is because the knowledge of the expert system should be explicit and accessible unlike most of the conventional systems. It has the value which any large body of knowledge should have.
The most useful feature of an expert system is the high-level expertise it provides aid in problem solving. This expertise can represent the best thinking of the top experts in the field, leading to problem solutions, which are imaginative, accurate, and efficient. It is the high-level expertise together with the skill of applying that knowledge which makes the expert system cost effective, and able to earn its way in the commercial market place.
ADVERTISEMENTS:
Another useful feature of an expert system is its predictive modeling power. The system can act as an information processing model of problem solving in the given domain, providing the desired answers for a given problem situation and showing how they would change for new situations.
The expert system can explain in detail how the new situation led to the change. This lets the user evaluate the potential effect of new facts or data and understand their relationship to the solution. The user, in turn, can evaluate the effect of new strategies or procedures on the solution by adding new rules or modifying the existing ones, by providing feed-back.
The corpus of knowledge which defines the proficiency of an expert system can also provide an additional feature, an institutional memory. If the knowledge base was developed through interactions with key personnel in an office, department, or billet, it represents the current policy or operating procedures of that group.
This compilation of knowledge becomes a consensus of high-level opinion and is a permanent record of the best strategies and methods used by the staff. When key people leave, their expertise is retained, for future which is useful is in government, business and especially critical in defence.
ADVERTISEMENTS:
A final feature of an expert system is its ability to provide a training facility for key personnel and important staff members. Expert systems can be designed to provide such training, since they contain the necessary knowledge and the ability to explain their reasoning processes. Software must be added to provide a robust, friendly interface between the trainee and the expert system.
As a training device the expert system provides a vast reservoir of experience and strategies to the new staff members from which to learn about the recommended policies and methods of a corporate. The system can also be adapted to train novices in specific tasks, such as claims adjusting or financial planning etc.
Actors in the Expert System Game:
The main actors (players) in the expert system game shown in (Fig. 12.7) are:
1. The domain expert,
2. The knowledge engineer,
3. The expert-system-building tools, and
4. The user.
Their basic roles and their relationship to each other are summarised below:
The expert system is the collection of programs or computer software which solves problems in the domain of interest. It is called a system rather than just a program because it contains both a problem solving component and a support component.
This support environment helps the user interact with the main program and may include sophisticated debugging aids to help the expert-system builder test and evaluate the program’s code, friendly editing facilities to help the experts codify knowledge and data in the expert systems, and advanced graphic devices to help the user input and read information as the system is running.
The domain or area expert is an articulate, knowledgeable person with a reputation for producing good solutions to problems in a particular field (domain). The expert uses tricks and shortcuts to make the search for a solution more efficient, and the expert system models these problem solving strategies. In addition to involving one or more experts the expert system may also extract expertise from other sources such as books and journal articles.
The knowledge engineer is a human, usually with a background in computer science and particularly in AI, who knows how to build expert systems. The knowledge engineer interviews the experts, organises the knowledge, decides how it should be represented in the expert system, write or, even help the programmers to write the code of the expert system.
The expert-system-building tool is the programming language used by the knowledge engineer or programmer to build the expert system. As already pointed out these tools differ from conventional programming languages in that they provide convenient ways to represent complex high-level concepts the expert system is expected to project. In Artificial Intelligence jargon, the term tool usually refers both to the programming language and to the support environment used to build the expert system.
The user is the human who uses the expert system once it is developed. The user may be a scientist using the system to help discover new mineral deposits, a lawyer using it to help settle a case or a student using it to learn more about organic chemistry.
The term ‘user’ is a bit ambiguous. It normally refers to the end-user, the person for whom the expert system was developed. The user may be a tool builder debugging the expert-system-building language, a knowledge engineer refining the existing knowledge in the system, a domain expert adding new knowledge to the system, an end-user relying on the system for advice, or a member of the clerical staff adding data to the system.
It is important to distinguish here between the tools used to build the expert system and the expert system itself. The tools of building expert systems, also called AI shells, are the programming environment (systems) of expert system. In the early years of expert systems, computer scientists used specialised programming languages such as LISP or PROLOG which could process lists of rules efficiently.
These days a growing number of expert systems use AI shells which are user friendly development environment, AI shells can quickly generate user-friendly screens, capture the knowledge base and manage the strategies for searching the knowledge (rule) base. And, as we know, an expert system is a knowledge-intensive computer program which captures the expertize of a human in a limited domain of knowledge and envelops all the AI tools.