Podcast
Questions and Answers
According to the definition, what is the primary function of an expert system?
According to the definition, what is the primary function of an expert system?
- To emulate the decision-making capabilities of a human expert (correct)
- To automate routine tasks
- To manage and organize large databases
- To perform complex mathematical calculations
Expert system technology only includes specific expert system languages like CLIPS.
Expert system technology only includes specific expert system languages like CLIPS.
False (B)
Which of the following is a key component of an expert system?
Which of the following is a key component of an expert system?
- A graphical user interface
- A random number generator
- A knowledge base (correct)
- A data encryption module
What is the role of the inference engine in an expert system?
What is the role of the inference engine in an expert system?
The problem domain is always a subset of the knowledge domain.
The problem domain is always a subset of the knowledge domain.
An expert's knowledge is specific to one ______ domain.
An expert's knowledge is specific to one ______ domain.
Which of the following is NOT typically considered an advantage of using expert systems?
Which of the following is NOT typically considered an advantage of using expert systems?
Name two ways knowledge can be represented in an expert system.
Name two ways knowledge can be represented in an expert system.
Match the following components to their roles in knowledge engineering:
Match the following components to their roles in knowledge engineering:
An algorithm is always available to provide a solution to every problem.
An algorithm is always available to provide a solution to every problem.
What is the term for knowledge that is based on basic structure, function, and behavior of objects?
What is the term for knowledge that is based on basic structure, function, and behavior of objects?
What is a major limitation of expert systems regarding new situations?
What is a major limitation of expert systems regarding new situations?
The knowledge acquisition ______ results from the time-consuming and labor-intensive task of building an expert system.
The knowledge acquisition ______ results from the time-consuming and labor-intensive task of building an expert system.
Which early expert system was used to identify chemical constituents by analyzing chemical mass spectroscopy data?
Which early expert system was used to identify chemical constituents by analyzing chemical mass spectroscopy data?
Conventional computer programs typically solve problems having algorithmic solutions.
Conventional computer programs typically solve problems having algorithmic solutions.
Name a classic AI language.
Name a classic AI language.
Which of the following questions is most important to consider when building an expert system?
Which of the following questions is most important to consider when building an expert system?
Expert system languages focus on ways to represent ______.
Expert system languages focus on ways to represent ______.
Which element of an expert system explains the reasoning of the system to the user?
Which element of an expert system explains the reasoning of the system to the user?
Knowledge base is also called production memory.
Knowledge base is also called production memory.
In the context of expert systems, what does 'forward chaining' primarily involve?
In the context of expert systems, what does 'forward chaining' primarily involve?
What fundamental idea underlies a Post Production System?
What fundamental idea underlies a Post Production System?
What is a basic limitation of post production systems?
What is a basic limitation of post production systems?
Procedural programs can also be called sequential programs.
Procedural programs can also be called sequential programs.
Declarative programming separates the ______ from the method to achieve it.
Declarative programming separates the ______ from the method to achieve it.
Flashcards
What is an expert system?
What is an expert system?
A computer system that emulates the decision-making capabilities of a human expert.
Special Expert System Languages
Special Expert System Languages
A core technology used in Expert Systems to write specific programs.
Knowledge base
Knowledge base
Obtainable from books, magazines, knowledgeable persons, etc, used in Expert Systems
Inference engine
Inference engine
Signup and view all the flashcards
Expert's knowledge
Expert's knowledge
Signup and view all the flashcards
Knowledge domain
Knowledge domain
Signup and view all the flashcards
Advantages of Expert Systems
Advantages of Expert Systems
Signup and view all the flashcards
Advantages of Expert Systems
Advantages of Expert Systems
Signup and view all the flashcards
Knowledge engineer
Knowledge engineer
Signup and view all the flashcards
Knowledge engineer
Knowledge engineer
Signup and view all the flashcards
Algorithm
Algorithm
Signup and view all the flashcards
Shallow knowledge
Shallow knowledge
Signup and view all the flashcards
Deep knowledge
Deep knowledge
Signup and view all the flashcards
DENDRAL
DENDRAL
Signup and view all the flashcards
MYCIN
MYCIN
Signup and view all the flashcards
DIPMETER
DIPMETER
Signup and view all the flashcards
Problems with Algorithmic Solutions
Problems with Algorithmic Solutions
Signup and view all the flashcards
User interface
User interface
Signup and view all the flashcards
Exploration facility
Exploration facility
Signup and view all the flashcards
Working memory
Working memory
Signup and view all the flashcards
Inference engine
Inference engine
Signup and view all the flashcards
Agenda
Agenda
Signup and view all the flashcards
Knowledge acquisition facility
Knowledge acquisition facility
Signup and view all the flashcards
Forward chaining
Forward chaining
Signup and view all the flashcards
Backward chaining
Backward chaining
Signup and view all the flashcards
Study Notes
- An expert system is a computer system that emulates the decision-making capabilities of a human expert
- Professor Edward Feigenbaum of Stanford University defined expert systems
Areas of Artificial Intelligence (AI)
- Artificial Intelligence encompasses Robotics, Speech,Vision, Natural Language, Understanding, Artificial Neural Systems, and Expert Systems
Expert System Technology May Include
- Special expert system languages like CLIPS
- Programs
- Hardware designed to facilitate system implementation
Expert System Main Components
- Knowledge base: obtainable from books, magazines, knowledgeable persons
- Inference engine: draws conclusions from the knowledge base
Problem Domain vs. Knowledge Domain
- An expert's knowledge is specific to a problem domain like medicine, finance, science or engineering
- An expert's knowledge about solving specific problems is the knowledge domain
- The problem domain is always a superset of the knowledge domain
Advantages of Expert Systems
- Increased availability
- Reduced cost and danger
- Better performance
- Multiple expertise
- Increased reliability
- Provides explanations
- Fast response times
- Steady, unemotional, and complete responses at all times
- Functions as an intelligent tutor and database
Representing Knowledge
- Knowledge in an expert system can be represented in multiple ways, including IF-THEN rules
Knowledge Engineering
- Developing an expert system involves a knowledge engineer eliciting knowledge from an expert
- The knowledge engineer codes the knowledge explicitly in the knowledge base
- The expert evaluates the expert system and critiques the knowledge engineer
The Role of AI
- An algorithm is an ideal solution guaranteed to yield a solution in a finite amount of time
- When an algorithm is not available, artificial intelligence(AI) is used instead
- Expert systems use inference to arrive at a "reasonable solution"
Uncertainty
- Both human experts and expert systems must handle uncertainty
- Easier to program expert systems with shallow knowledge than with deep knowledge
- Shallow knowledge is based on empirical and heuristic knowledge
- Deep knowledge is based on the structure, function, and behavior of objects
Limitations of Expert Systems
- Typical expert systems cannot generalize about new situations like people can
- Knowledge acquisition bottleneck results from the time-consuming and labor-intensive task of building an expert system
Early Expert Systems
- DENDRAL: identifies chemical constituents using chemical mass spectroscopy
- MYCIN: medical diagnosis of illness
- DIPMETER: geological data analysis for oil
- PROSPECTOR: geological data analysis for minerals
- XCON/R1: configures computer systems
Broad Classes of Expert Systems
- Configuration: assembles system components properly
- Diagnosis: infers underlying problems from evidence
- Instruction: intelligent teaching capabilities
- Interpretation: explains observed data
- Monitoring: compares observed data to expected data to judge performance
- Planning: devises actions for desired outcomes
- Prognosis: predicts outcomes of situations
- Remedy: prescribes problem treatments
- Control: regulates a process, incorporating interpretation, diagnosis, monitoring, planning, prognosis, and remedies
Problems with Algorithmic Solutions
- Conventional computer programs solve problems algorithmically
- Algorithmic languages include C, Java, and C#
- Classic AI languages include LISP and PROLOG
Considerations for Building Expert Systems
- Determine if the problem can be solved effectively by conventional programming
- Confirm the need and desire for an expert system
- Ensure a willing human expert is available to cooperate
- Verify that the expert can explain the knowledge understandably to the engineer
- Verify if the problem-solving knowledge is mainly heuristic and uncertain
Languages, Shells, and Tools
- Expert system languages are post-third generation
- Procedural languages (e.g., C) focus on techniques to represent data
- Modern languages (e.g., Java) focus on data abstraction
- Expert system languages (e.g., CLIPS) focus on representing knowledge
Elements of an Expert System
- User interface communicates between user and system
- Exploration facility explains reasoning
- Working memory contains a global database of facts used by rules
- Inference engine makes inferences, deciding which rules are satisfied and prioritizing
- Agenda prioritizes rules created by the inference engine, satisfied by facts in working memory
- Knowledge acquisition facility allows users to input knowledge, bypassing explicit coding
Production Rules
- Knowledge base is also called production memory
- Production rules can be expressed in IF-THEN pseudocode format
- In rule-based systems, the inference engine determines which rule antecedents are satisfied by the facts
General Methods of Inferencing
- Forward chaining reasons from facts to conclusions, is best for prognosis, monitoring, and control
- Backward chaining reasons in reverse from a hypothesis, best for diagnosis problems
Production Systems
- Rule-based expert systems are the most popular type
- Knowledge is represented as rules that specify what should/not be concluded
- Forward chaining starts with facts and applies rules to draw conclusions/take actions
- Backward chaining starts with a hypothesis and seeks rules to prove it true
- Forward chaining is primarily data-driven
- Backward chaining is primarily goal-driven
Post Production System
- A mathematical/logical system with rules that change one string of symbols into another
- The basic limitation of the Post Production System is the lack of control mechanism
Markov Algorithm
- Markov Algorithm is an ordered group of productions with applied priorities to an input string
- If the highest priority rule is not applicable, the next applicable rule is applied
- It is an efficient algorithm for systems with many rules
Rete Algorithm
- The Rete Algorithms act like a net holding information
- Rete Algorithms have faster response times and rule firings as compared to IF-THEN rules
- Takes advantage of temporal redundancy and structural similarity, the drawback is is high memory requirements
Procedural Paradigms
- Algorithm - method of solving a problem in a finite number of steps
- Procedural programs are also called sequential programs
- The programmer specifies exactly how a problem solution must be coded
Imperative Programming
- Focuses on modifiable store -- variables and assignments
- During execution, a program transitions from initial to final state through intermediate states
- Provides for top-down design, but is not efficient for expert systems
Nonprocedural Paradigms
- Does not depend on the programmer giving exact details how the program is to be solved
- Declarative programming separates the goal from the method
- Object-oriented programming is partly imperative and partly declarative using objects and methods
- Inheritance derives OOP subclasses from parent classes
- Nonprocedural Paradigms are be considered declarative languages
- Induction-based programming - the program learns by generalizing from a sample
Summary
- During the 20th Century various definitions of AI were proposed
- In the 1960s, a special type of AI called expert systems dealt with complex problems in a narrow domain, e.g., medical disease diagnosis
- Today, expert systems are used in a variety of fields
- Expert systems solve problems for which there are no known algorithms
- Expert systems are knowledge-based and effective for solving real-world problems
- Expert systems are not suited for all applications
- Future advances in expert systems will hinge on new quantum computers in conjunction with computers on the Internet
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.