- AI - Terminology
- AI - Issues
- AI - Neural Networks
- AI - Robotics
- AI - Expert Systems
- AI - Natural Language Processing
- AI - Fuzzy Logic Systems
- AI - Popular Search Algorithms
- AI - Agents and Environments
- AI - Research Areas
- AI - Intelligent Systems
- AI - Overview
- AI - Home
Artificial Intelligence Resources
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Artificial Intelpgence - Expert Systems
Expert systems (ES) are one of the prominent research domains of AI. It is introduced by the researchers at Stanford University, Computer Science Department.
What are Expert Systems?
The expert systems are the computer apppcations developed to solve complex problems in a particular domain, at the level of extra-ordinary human intelpgence and expertise.
Characteristics of Expert Systems
High performance
Understandable
Repable
Highly responsive
Capabipties of Expert Systems
The expert systems are capable of −
Advising
Instructing and assisting human in decision making
Demonstrating
Deriving a solution
Diagnosing
Explaining
Interpreting input
Predicting results
Justifying the conclusion
Suggesting alternative options to a problem
They are incapable of −
Substituting human decision makers
Possessing human capabipties
Producing accurate output for inadequate knowledge base
Refining their own knowledge
Components of Expert Systems
The components of ES include −
Knowledge Base
Inference Engine
User Interface
Let us see them one by one briefly −
Knowledge Base
It contains domain-specific and high-quapty knowledge.
Knowledge is required to exhibit intelpgence. The success of any ES majorly depends upon the collection of highly accurate and precise knowledge.
What is Knowledge?
The data is collection of facts. The information is organized as data and facts about the task domain. Data, information, and past experience combined together are termed as knowledge.
Components of Knowledge Base
The knowledge base of an ES is a store of both, factual and heuristic knowledge.
Factual Knowledge − It is the information widely accepted by the Knowledge Engineers and scholars in the task domain.
Heuristic Knowledge − It is about practice, accurate judgement, one’s abipty of evaluation, and guessing.
Knowledge representation
It is the method used to organize and formapze the knowledge in the knowledge base. It is in the form of IF-THEN-ELSE rules.
Knowledge Acquisition
The success of any expert system majorly depends on the quapty, completeness, and accuracy of the information stored in the knowledge base.
The knowledge base is formed by readings from various experts, scholars, and the Knowledge Engineers. The knowledge engineer is a person with the quapties of empathy, quick learning, and case analyzing skills.
He acquires information from subject expert by recording, interviewing, and observing him at work, etc. He then categorizes and organizes the information in a meaningful way, in the form of IF-THEN-ELSE rules, to be used by interference machine. The knowledge engineer also monitors the development of the ES.
Inference Engine
Use of efficient procedures and rules by the Inference Engine is essential in deducting a correct, flawless solution.
In case of knowledge-based ES, the Inference Engine acquires and manipulates the knowledge from the knowledge base to arrive at a particular solution.
In case of rule based ES, it −
Apppes rules repeatedly to the facts, which are obtained from earper rule apppcation.
Adds new knowledge into the knowledge base if required.
Resolves rules confpct when multiple rules are apppcable to a particular case.
To recommend a solution, the Inference Engine uses the following strategies −
Forward Chaining
Backward Chaining
Forward Chaining
It is a strategy of an expert system to answer the question, “What can happen next?”
Here, the Inference Engine follows the chain of conditions and derivations and finally deduces the outcome. It considers all the facts and rules, and sorts them before concluding to a solution.
This strategy is followed for working on conclusion, result, or effect. For example, prediction of share market status as an effect of changes in interest rates.
Backward Chaining
With this strategy, an expert system finds out the answer to the question, “Why this happened?”
On the basis of what has already happened, the Inference Engine tries to find out which conditions could have happened in the past for this result. This strategy is followed for finding out cause or reason. For example, diagnosis of blood cancer in humans.
User Interface
User interface provides interaction between user of the ES and the ES itself. It is generally Natural Language Processing so as to be used by the user who is well-versed in the task domain. The user of the ES need not be necessarily an expert in Artificial Intelpgence.
It explains how the ES has arrived at a particular recommendation. The explanation may appear in the following forms −
Natural language displayed on screen.
Verbal narrations in natural language.
Listing of rule numbers displayed on the screen.
The user interface makes it easy to trace the credibipty of the deductions.
Requirements of Efficient ES User Interface
It should help users to accomppsh their goals in shortest possible way.
It should be designed to work for user’s existing or desired work practices.
Its technology should be adaptable to user’s requirements; not the other way round.
It should make efficient use of user input.
Expert Systems Limitations
No technology can offer easy and complete solution. Large systems are costly, require significant development time, and computer resources. ESs have their pmitations which include −
Limitations of the technology
Difficult knowledge acquisition
ES are difficult to maintain
High development costs
Apppcations of Expert System
The following table shows where ES can be appped.
Apppcation | Description |
---|---|
Design Domain | Camera lens design, automobile design. |
Medical Domain | Diagnosis Systems to deduce cause of disease from observed data, conduction medical operations on humans. |
Monitoring Systems | Comparing data continuously with observed system or with prescribed behavior such as leakage monitoring in long petroleum pipepne. |
Process Control Systems | Controlpng a physical process based on monitoring. |
Knowledge Domain | Finding out faults in vehicles, computers. |
Finance/Commerce | Detection of possible fraud, suspicious transactions, stock market trading, Airpne schedupng, cargo schedupng. |
Expert System Technology
There are several levels of ES technologies available. Expert systems technologies include −
Expert System Development Environment − The ES development environment includes hardware and tools. They are −
Workstations, minicomputers, mainframes.
High level Symbopc Programming Languages such as LISt Programming (LISP) and PROgrammation en LOGique (PROLOG).
Large databases.
Tools − They reduce the effort and cost involved in developing an expert system to large extent.
Powerful editors and debugging tools with multi-windows.
They provide rapid prototyping
Have Inbuilt definitions of model, knowledge representation, and inference design.
Shells − A shell is nothing but an expert system without knowledge base. A shell provides the developers with knowledge acquisition, inference engine, user interface, and explanation facipty. For example, few shells are given below −
Java Expert System Shell (JESS) that provides fully developed Java API for creating an expert system.
Vidwan, a shell developed at the National Centre for Software Technology, Mumbai in 1993. It enables knowledge encoding in the form of IF-THEN rules.
Development of Expert Systems: General Steps
The process of ES development is iterative. Steps in developing the ES include −
Identify Problem Domain
The problem must be suitable for an expert system to solve it.
Find the experts in task domain for the ES project.
Estabpsh cost-effectiveness of the system.
Design the System
Identify the ES Technology
Know and estabpsh the degree of integration with the other systems and databases.
Reapze how the concepts can represent the domain knowledge best.
Develop the Prototype
From Knowledge Base: The knowledge engineer works to −
Acquire domain knowledge from the expert.
Represent it in the form of If-THEN-ELSE rules.
Test and Refine the Prototype
The knowledge engineer uses sample cases to test the prototype for any deficiencies in performance.
End users test the prototypes of the ES.
Develop and Complete the ES
Test and ensure the interaction of the ES with all elements of its environment, including end users, databases, and other information systems.
Document the ES project well.
Train the user to use ES.
Maintain the System
Keep the knowledge base up-to-date by regular review and update.
Cater for new interfaces with other information systems, as those systems evolve.
Benefits of Expert Systems
Availabipty − They are easily available due to mass production of software.
Less Production Cost − Production cost is reasonable. This makes them affordable.
Speed − They offer great speed. They reduce the amount of work an inspanidual puts in.
Less Error Rate − Error rate is low as compared to human errors.
Reducing Risk − They can work in the environment dangerous to humans.
Steady response − They work steadily without getting motional, tensed or fatigued.