Lecture 7
EXPERT CONTROL SYSTEMS
Artificial intelligence, in particular expert system techniques, have been developing rapidly in control engineering.
Applications of expert-system techniques in control engineering control-system design, fault diagnosis, simulation, modeling and identification, on-line performance monitoring, adaptation and auto-tuning and supervisory
control.
Branches of Computational Intelligence
7.1 Elements of an Expert System conventional computer software can be viewed as the synergy of:
In contrast, computer software used in Expert Systems can be described as the synergy of:
The most significant characteristic of this class of systems is that it draws on human knowledge and emulates human experts in the manner with which they arrive at decisions.
Definition of Expert System
A computing system capable of representing and reasoning about some knowledge rich domain, which usually requires a human expert, with a view toward solving problems and/or giving advice. Such systems are capable of explaining their reasoning.
Does not have a psychological model of how the expert thinks, but a model of the expert’s model of the domain.
7.1 Elements of an Expert System
Definition of Expert System
“An Expert System is the embodiment of knowledge elicited from human experts, suitably encoded so that the computa-tional system can offer intelligent advice and derive intelli-gent conclusions on the operation of a system”.
7.1 Elements of an Expert System
knowledge --two components: • facts, which constitute ephemeral information
subject to changes with time (e.g., plant variables) and
• procedural knowledge, which refers to the manner in which experts in the specific field of application arrive at their decisions.
7.1 Elements of an Expert System
7.1 Elements of an Expert System Expert System Structure
Inferenceengine
Explanationfacility
Knowledgebase
acquisitionfacility
Userinterface
Knowledgebase
Experts User
Knowledge Base
Stores all relevant information, data, rules, cases, and relationships used by the expert system
knowledge specific to the domain facts specific to the problem being solved Knowledge Representation is the key issue
Aim is usually to present the knowledge in as “declarative (陈述的)” a fashion (样式、方式) as possible
Inference Engine
Seeks information and relationships from the knowledge base and provides answers, predictions, and suggestions in the way a human expert would
Manipulates the knowledge base to solve the given problem
This is the "procedural knowledge", how to put the facts and domain knowledge together to reach a solution.
Basic ways inference engines work: forward chaining (forward reasoning)
FACTS = X
IF X, THEN Y
add Y to the blackboard which contains the facts start with the FACTS and work forward through the
rules to find a solution match FACTS to all possible RULES. A method of reasoning that starts with the facts and
works forward to the conclusions
Forward ChainingForward Chaining In this process the knowledge base is searched for rules that match
the known facts, and the action part of these rules is performed.The process continues until a goal is reached.
Puts the symptoms together to reach a conclusion ex. Doctor diagnosing a patient
Goal
Initial Knowledge/Facts
Forward Chaining
Basic ways inference engines work backward chaining (backward reasoning)
starts with the knowledge base - thinks of these as goals we are trying to obtain:
Y = result of rule (solution)
verify if FACTS (X) support the rule start with possible solution, and search facts to
see if rules can be supported A method of reasoning that starts with
conclusions and works backward to the supporting facts
Backward ChainingBackward Chaining Starts form a goal, the conclusion. All the rules that contain this conclusion are then
checked to determine whether the conditions of these rules have been satisfied Ex. Doctor has end idea of what is wrong with patient but know they must prove it
by going from the diagnosis and finding symptoms
Goal
Initial Knowledge/Facts
Backward Chaining
Explanation Facility
Explanation facility A part of the expert system that allows a user or
decision maker to understand how the expert system arrived at certain conclusions or results
Knowledge Acquisition Facility
Knowledge acquisition facility Provides a convenient and efficient means of capturing
and storing all components of the knowledge base
Knowledgebase
Knowledgeacquisition
facility
Joe Expert
User Interface Expert systems are interactive; a session
between the user and the KBS is necessary to generate a solution.
The interface is important since it provides the user with the ability to interact with the system.
A good user interface will increase users’ confidence in the system.
A poor interface will frustrate users and can cause a loss of confidence in the results of the system.
User Interface
The user interface also implements the explanation capability.
Essential is the ability to answer questions such as: Why? How? What?
Frequently: the ability to define terms
7.2 Stages in the Development of
an Expert System
Objectives ---Problem Definition Knowledge Acquisition and Knowledge
Representation Rapid Prototype Implementation Test and maintain
objectives The essential problem is selecting an
appropriate domain: the problem must require some type of specialized
knowledge, if there are human "experts" this criteria is probably satisfied
must not be overly large: define the problem fairly narrowly.
in business organizations, it should a problem that is handled often enough that an investment is expected to have some payoff: the once every 5 years sort of problem going to payoff.
Knowledge Acquisition
" the transfer and transformation of potential problem-solving expertise from some knowledge source to a program.”
- Buchanan 1983.
Knowledge Acquisition
machine learning - building capabilities into the system that allow it to learn from what it is doing. the problem of induction - how many instances
must be observed before it can be added to the knowledge base as "true"
knowledge elicitation - extract the knowledge from the human expert, through some means direct - interaction with the human expert
interviews, protocol analysis, direct observation, etc.
indirect - utilize statistical techniques to analyze of data and draw conclusions about the structure of the data.
Knowledge Acquisition (cont.)
Knowledge Representation A method to represent the knowledge about the domain
major methods: Decision tree Programming language logic
Although a shell contains a way to represent knowledge, shell selection should be influenced by the matching the representation to the knowledge in the domain.
Knowledge must be coordinated, so that the knowledge base is consistent.
Prototype Typically use an "incremental" development
approach to an expert system. Build an initial prototype and adjust and expand Allow the expert to interact with the prototype to
get feedback Reevaluate if the project should be
continued, if major redesign (knowledge representation) is necessary, or to go ahead.
Test and maintain
New rules can be continually added and old ones refined/ removed.
This is a tricky process, but there does not seem to be much literature on it.
One characteristic of an Expert system should be maintainability, so the ability to add/change/delete rules is essential.
Participants in Expert Systems Development and Use Domain expert The individual or group whose expertise and knowledge is
captured for use in an expert system Knowledge user
The individual or group who uses and benefits from the expert system
Knowledge engineer Someone trained or experienced in the design,
development, implementation, and maintenance of an expert system
Expertsystem
Domain expert
Knowledge engineer
Knowledge user
General Approaches to Building Expert Systems Purchase a developed system
Not that many exist, as packages are common for certain applications that are common to many businesses.
See expertise embedded in some applications, e.g., Turbo-Tax, network diagnostics.
General Approaches to Building Expert Systems
Build "in-house" using a shell A shell provides an inference engine, a user
interface, and a way to represent knowledge. Develop the knowledge base for the particular
problem domain. The focus of development is on knowledge
acquisition. Many shells are available for purchase.
General Approaches to Building Expert Systems
Build from scratch using an AI language Requires specialized training to effectively
program in these languages. Few people are trained in these approaches, and
these approaches are time consuming and expensive (shells are typically a much more economical approach).
Expert Systems Development Alternatives
low
high
low high
Developmentcosts
Time to develop expert system
Useexistingpackage
Developfromshell
Developfrom
scratch
When to Use an Expert System (1) Provide a high potential payoff or significantly
reduced downside risk Capture and preserve irreplaceable human
expertise Provide expertise needed at a number of
locations at the same time or in a hostile environment that is dangerous to human health
When to Use an Expert System (2) Provide expertise that is expensive or rare Develop a solution faster than human experts
can Provide expertise needed for training and
development to share the wisdom of human experts with a large number of people
Limitations Lack common sense: A KBS handles
problems in a very narrow range. Difficult to capture “deep knowledge” of a
problem domain. MYCIN, which diagnosis bacterial blood diseases,
does not know what blood does or the function of spinal cord. One story is that MYCIN asked if a patient was pregnant after being told the patient was a man.
Inability to provide deep explanation, i.e., why it applied certain rules.
Limitations Lack robustness: expertise is brittle. When a
human expert cannot solve a problem readily, they use their deep knowledge to come up with a strategy to attack a problem.
Difficult to verify. An important consideration as KBS approaches are applied to critical applications.
Little learning from experience. There are some inferential techniques, but they have their own limitations.
Categories of Expert SystemsCategory Problem Addressed
Interpretation Inferring situation descriptions from observations
Prediction Inferring likely consequences of given situations
Diagnosis Inferring system malfunctions from observations
Design Configuring objects under constraints Planning Developing plans to achieve goals
Monitoring Comparing observations to plans, flagging exceptions
Debugging Prescribing remedies for malfunctions
Repair Administer a prescribed remedy Instruction Diagnosing, debugging, and correcting student
performance Control Interpreting, predicting, repairing, and monitoring system
behavior
7.3 Concepts and Characteristics of Expert Control Systems DefinitionExpert control (or knowledge-based control) refers to methods that utilize expert-system techniques and control theory to design control systems that can auto-mate some of the tasks currently performed by human experts, and which cannot be carried out by traditional control systems
key point EC is the incorporation of heuristics and logic through knowledge-based structures, thus making the control systems more flexible and adaptive than conventional control systems.
7.3 Concepts and Characteristics of Expert Control Systems comparison of conventional expert systems and expert control system
7.3 Concepts and Characteristics of Expert Control Systems comparison of expert control and traditional advanced control
The fundamental functions of ECSs
(1) Take over the skilled operators' routine tasks and give effective
controls for processes which are time-varying, non-linear, and
subjective to various disturbances.
(2) Take advantage of all the available prior knowledge and on-line
information;
(3) perform fault diagnosis on the control system operation and
components, including the detection of actuator and sensor
problems;
(4) operate reliably and conveniently;
(5) Increase the amount of process knowledge, and accordingly improve
the control system's performance;
The fundamental functions of ECSs
(6) represent control knowledge in an effective way which easily allows
for modification and extension;
(7) Maintain dialogue with the user and give explanation of reasoning
results, and also obtain information from the user;
(8) require a minimal amount of prior knowledge;
(9) Have a capability for real-time reasoning and decision making.
suitable application areas for ECSs (1) ill-structured processes for which mathematical models do not exist
or are inadequate;
(2) Complex problems which require answers within a limited time
interval, such as fault diagnosis and emergency handling;
(3) Situations where expertise is required for problem-solving but
where there are not enough experts for the task;
(4) Situations where qualitative or uncertain information must be
processed, and symbolic logic is required for problem-solving;
(5) complicated problems where a heavy computing burden and high
cost would be involved when using conventional algorithmic
methods;
(6) Cases where operating conditions change frequently and/or
severely.
7.3 Concepts and Characteristics of Expert Control Systems DefinitionExpert control (or knowledge-based control) is one of the intelligent control methods, which combines control theory and expert-system techniques to design and realize in the autonomous operation of complex, uncertain or ill-defined physical processes.
An ECS is an intelligent control system which uses expert-system techniques on difficult control problems where analytic models do not exist or are inadequate, and require expert knowledge for their problem-solving.
7.4 Classification of Expert Control Systems
Rule-based expert tuning or adaptive controllers Expert supervisory control systems Hybrid expert control systems Real-time control expert system
7.4 Classification of Expert Control Systems Rule-based expert tuning or adaptive controllers
7.4 Classification of Expert Control Systems Expert supervisory control systems
7.4 Classification of Expert Control Systems
Hybrid expert control systems a composite intelligent control system which utilizes a multilayer hierarchical structure and the incorporation of various techniques, including expert systems, pattern recognition, fuzzy logic, neural networks, and computer process control.
7.4 Classification of Expert Control Systems Real-time control expert systema typical real-time expert system with all the characteristics of an expert system, such as modularity (flexibility), heuristics and transparency, as well as the features of a control system, e.g. real-time operation, reliability, and adaptation, etc
7.5 Design Principles of Expert
Control Systems knowledge representation in ECS can be grouped into two parts: system modeling (including the controlled process and controllers), and maintaining the relevant information and knowledge essential to
perform the intelligent control and supervision tasks.
Multiple representation forms should be used in modeling mainly because:
7.5.1 Modeling with multiple representation forms
7.5 Design Principles of Expert
Control Systems One of the important features of intelligent control is to classify and
extract on-line information in an effective way. In a complex system, a
large number of sensor data and noisy signals could enter the system
continuously. It is very important to collect, catalogue and dispense the
information in an organized way. Therefore, the emphasis of
information processing is on eliciting and recognizing characteristic
information that can reflect the system properties, and converting them
into the knowledge the decision-making requires.
7.5.2 Eliciting and recognizing characteristic information
7.5 Design Principles of Expert
Control Systems 7.5.3 Hierarchical structure of decision-making
Knowledge Refinement
Knowledge base & Inference Engine
Planning & Management
Supervisory control & Emergency Handing
Real-time Intelligent Control
7.5 Design Principles of Expert
Control Systems In ECSs, the inference engine should provide the Mechanism that
evaluates, interprets, and executes the data and knowledge to generate
inferences or sequences of actions to be executed under time constraints.
ECSs need to reason about a number of past, present and future events.
ECSs must be capable of being interrupted, to accept inputs from
unscheduled or asynchronous events, reasoning by a variety of means and
techniques.
Usually, different inference strategies should be used in different decision
levels or different tasks.
7.5.4 Real-time inference with multiple strategies
7.5 Design Principles of Expert
Control Systems concentrate only on the intelligence in the higher levels, such as
supervision, learning or adaptation, planning, etc., and adopt traditional
control techniques such as PID algorithms at their real-time level.
7.5.5 Introducing intelligent control into the real-time level
7.5 Design Principles of Expert
Control Systems
ECS is essentially non-linear, time-dependent, and also
unstructured. Thus, it is very difficult to analyze the stability of an
ECS by mathematical methods." Therefore, on-line monitoring of
the system behavior (e.g. acceptable behavior, malfunction
behavior and fault behavior,") and prediction of the possible states
to keep the system behavior within an acceptable area, is an
effective way to achieve guaranteed system stability.
7.5.6 On-line stability monitoring
7.6 Architecture of Expert Control
Systems
Figure 7.8 A generic architecture of expert control system
7.6 Architecture of Expert Control
Systems
Fig. 7.9 general basic structure of expert control
7.7 Development Methods of Expert Control
Systems The main tasks of developing an ECS can be grouped into three parts:
(1) Build the models of the process; including problem definition, model
selection, knowledge acquisition, etc.
(2) Construct an expert controller; involving building the knowledge base and
inference engine, constructing the system structure, determining knowledge
representation paradigms, selecting the control strategies and parameters,
etc.
(3) Establish a user-friendly interface; consisting of human-computer
interface design and management.
7.7 Development Methods of Expert Control
Systems Figure 7.10 Schema diagram of ECS development
seven stages
Top Related