An expert system is a computerized system that attempts to reproduce the decision making process of an expert human being
An expert system operates by prompting the user to enter certain data using the user interface, referring to the knowledge base and using the inference engine to aid the decision making process it is designed to stimulate
Expert systems can be used as a diagnostic tool, in financial planning and risk analysis
Components of an expert system
USERINTERFACE: this is the way a user interacts with the expert system
the user interface will guide the user about what data they need to input into the expert system and will then display any output from the expert system
Examples of the user interface
using a keyboard
choosing options by pressing offered choices on a touch screen
Without the user interface:
a user would need to know how to program each of the interactions they want to make with the expert system
The quality of the design of the user interface is very important
Components of an expert system
KNOWLEDGE BASE: this is a database of related information about a particular subject
When an expert system is developed, several experts contribute the knowledge they have of a given field
this knowledge is then used to build a database that is the knowledge base for the expert system
In an expert system, 2 types of knowledge is needed
factual is knowledge that is definitive and widely shared amongst experts in the field
heuristic knowledge is acquired through personal experiences and built on reasoning
Part of the knowledge base is
THE RULES BASE: is a set of rules that will be used to produce an output or decision by the expert system
these rules are used by the inference engine as a base for reasoning, to obtain a solution to a problem or decision
In the rules base, each rule contains two parts: IF and THEN
A rule can have multiple IF parts that will be joined together by Boolean operators such as OR and AND
Components of an expert system
INFERENCEENGINE: this part makes judgements and reasoning using the knowledge base and user responses
it is designed to produce reasoning based on the rules and the knowledge base
An inference engine asks the user questions and based on their answer, it will follow a line of logic
this may lead to further questions and eventually to a final result
The inference engine is mostly a problem-solving tool
The 2 main methods that an inference engine can use to stimulate reasoning is backward chaining and forward chaining
Backward chaining is based on goal driven reasoning. this means that it is dependent on finding a desired goal
this type of chaining is used when the possible outcomes are limited and definitive in nature
Inbackward chaining, the system tries to take a goal and repeatedly split it into sub-goals that are simpler to achieve
the nature of this type of system is that it moves backward from the goal to be achieved
Backward chaining
Sub goals <- Rules <- Goal
Forward chaining is based on data driven reasoning. this is dependent on the data that it is provided with
this type of system is used when a problem is more open ended, and the outcome is not necessarily definitive in nature
In forward chaining, the system will take data input by the user and move forward from rule to rule to suggest a possible outcome
it will then ask the user for more data and repeat this process until it can suggest an outcome
Forward chaining
Data -> Rules -> Outcome
Components of an expert system
EXPLANATIONSYSTEM: the conclusion or decision an expert system provides may not always make sense to a user which leads to them wanting to gain an understanding of how the conclusion or decision was determined
Components of an expert system
METHODOFOUTPUT: the outputmethod is the method the user will use to view any results produced by the expert system
this will often be in the form of a display screen that will allow them to see the results on a screen or may include an output such as a printer that allows the results to be printed and viewed
Advantages of an expert system
can provide answers to questions that are outside the knowledge you currently have
can aid professionals by guiding them to look at areas of knowledge they may not have considered or remembered
are consistent in responses they produce as they are arrived at in a logical way
can be used at any time - don't need to contact a human at an unsuitable timing
can arrive at a solution quicker than a human would
Disadvantages of an expert system
do not have the intuition that humans have - responses will only be logical
are only as good as the rules and data they are provided with. error in data = incorrectresults
are expensive to create. many experts need to be consulted and high level of skill is required to build the components parts
Expert systems are used in:
medical diagnosis
car engine fault diagnosis
digital opponent in chess
providing financial planning and investment advice
providing insurance planning advice
plant and animal identification
planning and scheduling routes for delivery vehicles