Understanding Expert Systems in Computer Engineering
Expert systems are interactive computer-based decision tools that utilize facts and heuristics to solve various problems based on knowledge acquired from experts. This system consists of three main components: User Interface, Inference Engine, and Knowledge Base. The User Interface facilitates communication between the system and user, while the Inference Engine processes information and the Knowledge Base stores acquired knowledge. Expert systems are designed to solve real-world problems in specific domains, emulating human expert behavior to provide solutions.
Download Presentation
Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
E N D
Presentation Transcript
Expert Systems Introduction to Expert System State Institute of Engineering & Technology Nilokheri, 132117 Department: Computer Engineering
Expert System An Expert System is an interactive computer-based decision tool that uses both facts and heuristics to solve different decision making problem based on knowledge acquired from an expert. Inference engine+ knowledge = Expert System. First Expert System called DENDRAL, was developed in the early 70 s at Stanford University. An expert system is a system that employs human knowledge captured in a computer to solve problems that ordinarily require human expertise.(Turban).
A computer program that emulates the behaviour of human experts who are solving real-world problems associated with a particular domain of knowledge. (Pigford & Braur) Expert Systems are designed to solve real problems in a particular domain that normally require a human expert. It can solve many types of problems. Diagnostic applications. Play chess. Monitor real time systems. Underwrite insurance policies.
Fig.1.1 Block diagram of Expert System.
Components of Expert System An expert system mainly consists of three components: User Interface Inference Engine Knowledge Base User Interface With the help of a user interface, the expert system interacts with the user, takes queries as an input in a readable format, and passes it to the inference engine. After getting the response from the inference engine, it displays the output to the user. In other words, it is an interface that helps a non-expert user to communicate with the expert system to find a solution.
Inference Engine (Rules of Engine) The inference engine is known as the brain of the expert system as it is the main processing unit of the system. It applies inference rules to the knowledge base to derive a conclusion or deduce new information. It helps in deriving an error-free solution of queries asked by the user. With the help of an inference engine, the system extracts the knowledge from the knowledge base. Knowledge Base The knowledgebase is a type of storage that stores knowledge acquired from the different experts of the particular domain. It is considered as big storage of knowledge. The more the knowledge base, the more precise will be the Expert System.
Representation and organization of knowledge 1. Simple relational knowledge: It is the simplest way of storing facts which uses the relational method, and each fact about a set of the object is set out systematically in columns. This approach of knowledge representation is famous in database systems where the relationship between different entities is represented. 2. Inheritable knowledge: In the inheritable knowledge approach, all data must be stored into a hierarchy of classes. All classes should be arranged in a generalized form or a hierarchal manner. In this approach, we apply inheritance property. Elements inherit values from other members of a class. This approach contains inheritable knowledge which shows a relation between instance and class, and it is called instance relation.
3. Inferential knowledge: Inferential knowledge approach represents knowledge in the form of formal logics. This approach can be used to derive more facts. It guaranteed correctness. Example: Let's suppose there are two statements: 1. Marcus is a man 2. All men are mortal Then it can represent as; man(Marcus) x = man (x) ----------> mortal (x)s. 4. Procedural knowledge: Procedural knowledge approach uses small programs and codes which describes how to do specific things, and how to proceed. In this approach, one important rule is used which is If-Then rule. In this knowledge, we can use various coding languages such as LISP language and Prolog language. We can easily represent heuristic or domain-specific knowledge using this approach.
Characteristics of Expert System Expert System is capable of handling challenging decision problems and delivering solutions. Expert System uses knowledge rather than data for solution. Much of the knowledge is heuristic based rather than algorithm. Expert system has the capability to explain how the decision was made. An Expert System must be skillful. It should apply its knowledge to produce solution both effectively and efficiently using shortcuts or tricks.
Expert System benefits.. Increased output and productivity. Reduced downtime. They can be used for risky places where the human presence is not safe. Error possibilities are less if the KB contains correct knowledge. The performance of these systems remains steady as it is not affected by emotions, tension, or fatigue. Flexibility. Easy to develop and modify Elimination of Expensive Equipment. Decreased decision making time. Increased process and product quality.
Expert System limitations. The response of the expert system may get wrong if the knowledge base contains the wrong information. Like a human being, it cannot produce a creative output for different scenarios. Its maintenance and development costs are very high. Knowledge acquisition for designing is much difficult. For each domain, we require a specific ES, which is one of the big limitations. It cannot learn from itself and hence requires manual updates.
Early Expert Systems.. DENDRAL used in chemical mass spectroscopy to identify chemical constituents MYCIN medical diagnosis of illness DIPMETER geological data analysis for oil PROSPECTOR geological data analysis for minerals XCON/R1 configuring computer systems
Application of Expert System. Credit granting Information management and retrieval AI and expert systems embedded in products Plant layout Hospitals and medical facilities Help desks and assistance Employee performance evaluation Loan analysis Virus detection Repair and maintenance Shipping Marketing Warehouse optimization
Knowledge-Engineering Knowledge engineering is the technology behind the creation of expert system to assist with issues related to their programmed field of knowledge. Expert systems involve a large, expandable knowledge base integrated with a rules engine that specifies how to apply information to each particular situation. A knowledge engineering system looks at the structure of a task done or decision made by a human. It studies how the conclusion is reached and resolves the issue or question using a library of problem-solving methods and a body of collateral knowledge. Collateral knowledge is information that is not central to the given issue but is still needed to make judgments.
Knowledge engineering generally involves these five steps: Knowledge is gathered from various sources, such as text, human experts, big data repositories and sensors. Knowledge is verified using test cases that human experts run to ensure they're correct. Knowledge is organized, encoded and provided in a knowledge base. Software makes inferences based on the organized and encoded knowledge. An explanation is devised to explain the basis for a certain conclusion.
The most important step in the process is to ensure that the knowledge base is accurate and timely. Another important aspect of the knowledge engineering process is to have a human agent who ensures the system is doing its job. The engineer will develop rules for the system so it functions like a human and reaches the same conclusions as a human expert.
Why is knowledge engineering important? Speeds decision-making. The AI capabilities of these systems speeds up information processing and decision-making. A knowledge engineering system can identify a task and work toward a logical conclusion using its expertise. Handles large data sets. As organizations deal with increasingly large quantities of data, they need a way to efficiently process it and make decisions, which knowledge engineering provides. Develops expert systems. Knowledge engineering results in the expert systems used in many industries, including medicine, engineering and finance. For example, systems provide advice on investment decisions, portfolio management and risk assessment. Creates decision-support systems. provides the information and tools people need to make better decisions. Decision-support systems are used in various fields, including healthcare, manufacturing and retail. financial expert Knowledge engineering
System building aids The system-building aids consist of programs which help acquire and represent the domain expert s knowledge and programs which help design the expert system under construction. These programs address very difficult tasks; many are research tools just beginning to evolve into practical and useful aids, although a few are offered as full-blown commercial systems. Compared with programming and knowledge engineering languages, relatively few system-building aids have been developed. Those which exist fall into two major categories; design aids and knowledge acquisition aids. The AGE system exemplifies design aids, while TEIRSIAS, MOLE and SALT exemplify knowledge acquisition, TIMM system construction and SEEK knowledge refinement aids.
AGE: This software tool helps the knowledge engineer design and build an expert system. AGE provides the user with a set of components which, like building blocks, can be assembled to form portions of an expert system. Each component, a collection of INTERLISP functions, supports an expert system framework, such as forward chaining, backward chaining, or a blackboard architecture. MOLE: This is a knowledge acquisition system for heuristic classification problem, such as diagnosing diseases. In particular, it is used in conjunction with the cover-and- differentiate problem solving method.
Stages in the development of Expert System The following points highlight the five main stages to develop an expert system. The stages are: 1. Identification 2. Conceptualization 3. Formalization (Designing) 4. Implementation 5. Testing (Validation, Verification and Maintenance).
Identification: Before we can begin to develop an expert system, it is important to describe, with as much precision as possible, the problem which the system is intended to solve. It is not enough simply to feel that an expert system would be helpful in a certain situation; we must determine the exact nature of the problem and state the precise goals which indicate exactly how the expert system is expected to contribute to the solution.
Conceptualization: In the conceptualization stage, the knowledge engineer frequently creates a diagram of the problem to depict graphically the relationships between the objects and processes in the problem domain. It is often helpful at this stage to divide the problem into a series of sub-problems and to diagram both the relationships among the pieces of each sub-problem and the relationships among the various sub-problems.
Formalization (Designing): During the formalization stage, the problem is connected to its proposed solution, an expert system is supplied by analyzing the relationships depicted in the conceptualization stage. The knowledge engineer begins to select the techniques which are appropriate for developing this particular expert system.
Implementation: During the implementation stage the formalized concepts are programmed into the computer which has been chosen for system development, using the predetermined techniques and tools to implement a first-pass (prototype) of the expert system.
Testing (Validation, Verification and Maintenance): The chance of prototype expert system executing flawlessly the first time it is tested are so slim as to be virtually non-existent. A knowledge engineer does not expect the testing process to verify that the system has been constructed entirely correctly. Rather, testing provides an opportunity to identify the weaknesses in the structure and implementation of the system and to make the appropriate corrections.
PROSPECTOR PROSPECTOR is an expert system which was designed for decision making problems in mineral exploration. It uses a structure called an inference network to represent the data base. PROSPECTOR was written in 1978 by Richard O. Duda (1979), then of SRI International. Its rules look like: If: Magnetite or pyrite in disseminated or vein let from is present. Then: (2, 4) there is favorable mineralization and texture for the prophylactic stage.
The rules describe in previous slide contain two confidence estimates. The first indicates the extent to which the presence of the evidence described in the condition part of this rule suggests the validity of the rule s conclusion. Number 2, in the rule shown above indicates that the presence of the evidence is mildly encouraging. It aids geologists in evaluating the favorability of an exploration site or region for occurrences of ore deposits of particular types.
Some of the important features and contributions of PROSPECTOR are the following: 1. The system represents fuzzy input on a range from -5 = certainly false to +5 = certainly true and produces conclusion with associated uncertainty factors. 2. The system s expertise is based on hand-crafted knowledge of twelve major prospect-scale models and 23 smaller regional scale models.
PROSPECTOR has 3 modes of operations: Interactive consultation; Batch processing; Compiled execution. For the Interactive consultation mode, there are 2 phases: 1.The antecedent mode. 2.The consequent mode. A typical consultation session begins with the user volunteering information in the form of simple assertions. A typical consequence of initial volunteering is that a few exact and a number of partial matches are made between volunteered evidence and the nodes in the inference network, and some changes occur in the probabilities of the top-level hypotheses. Second, once a top-level hypothesis H has been chosen, the program enters the consequent mode. It searches the inference network below H to determine what question to ask the user to help resolve the issue.