You are on page 1of 3

Hatim Khalafallah Al-Tom

044026

Expert Systems

The definition of Expert Systems in artificial intelligence is a computer program that simulates the
judgment and behavior of a human or an organization that has expert knowledge and experience in a
particular field. Typically, such a system contains a knowledge base containing accumulated experience
and a set of rules for applying the knowledge base to each particular situation that is described to the
program. Sophisticated expert systems can be enhanced with additions to the knowledge base or to the set
of rules.

An expert system has a unique structure, different from traditional programs. It is divided into two parts,
one fixed, independent of the expert system: the inference engine, and one variable: the knowledge base.
To run an expert system, the engine reasons about the knowledge base like a human. In the 80s a third
part appeared: a dialog interface to communicate with users. This ability to conduct a conversation with
users was later called "conversational.

Among the best-known expert systems have been those that play chess and that assist in medical
diagnosis.

An expert system is software that attempts to provide an answer to a problem, or clarify uncertainties
where normally one or more human experts would need to be consulted. Expert systems are mostly
common in a specific problem domain, and are a traditional application and/or subfield of artificial
intelligence (AI). A wide variety of methods can be used to simulate the performance of the expert;
however, common to most or all are:

1- The creation of a knowledge base which uses some knowledge representation structure to capture the
knowledge of the Subject Matter Expert (SME).

2- A process of gathering that knowledge from the SME and codifying it according to the structure,
which is called knowledge engineering.

3- Once the system is developed, it is placed in the same real world problem solving situation as the
human SME, typically as an aid to human workers or as a supplement to some information system.
Expert systems may or may not have learning components.

Factors

The MYCIN rule-based expert system introduced a quasi-probabilistic approach called certainty factors,
whose rationale is explained below.
A human, when reasoning, does not always make statements with 100% confidence: he might venture,
"If Fritz is green, then he is probably a frog" (after all, he might be a chameleon). This type of reasoning
can be imitated using numeric values called confidences. For example, if it is known that Fritz is green, it
might be concluded with a 0.85 confidence that he is a frog; or, if it is known that he is a frog, it might be
concluded with a 0.95 confidence that he hops. These certainty factor numbers (CF) quantify

uncertainty in the degree to which the available evidence supports a hypothesis. They represent a degree
of confirmation, and are not probabilities in a Bayesian sense. The CF calculus, developed by Shortliffe
& Buchanan, increases or decreases the CF associated with a hypothesis as each new piece of evidence
becomes available.
It can be mapped to a probability update, although degrees of confirmation are not expected to obey the
laws of probability. It is important to note, for example, that evidence for hypothesis H may have nothing
to contribute to the degree to which (Not H) is confirmed or disconfirmed (e.g., although a fever lends
some support to a diagnosis of infection, fever does not disconfirm alternative hypotheses) and that the
sum of CFs of many competing hypotheses may be greater than one (i.e., many hypotheses may be well
confirmed based on available evidence).
The CF approach to a rule-based expert system design does not have a widespread following, in part
because of the difficulty of meaningfully assigning CFs a priori. (The above example of green creatures
being likely to be frogs is excessively naive.) Alternative approaches to quasi-probabilistic reasoning in
expert systems involve fuzzy logic, which has a firmer mathematical foundation. Also, rule-engine shells
such as Drools and Jess do not support probability manipulation: they use an alternative mechanism
called salience, which is used to prioritize the order of evaluation of activated rules.

Chaining

Two methods of reasoning when using inference rules are forward chaining and backward chaining.
Forward chaining starts with the data available and uses the inference rules to extract more data until a
desired goal is reached. An inference engine using forward chaining searches the inference rules until it
finds one in which the if clause is known to be true. It then concludes the then clause and adds this
information to its data. It continues to do this until a goal is reached. Because the data available
determines which inference rules are used, this method is also classified as data driven.

Backward chaining starts with a list of goals and works backwards to see if there is data which will allow
it to conclude any of these goals. An inference engine using backward chaining would search the
inference rules until it finds one which has a then clause that matches a desired goal. If the if clause of
that inference rule is not known to be true, then it is added to the list of goals.

SW Architecture.

The following general points about expert systems and their architecture have been outlined:
1-The sequence of steps taken to reach a conclusion is dynamically synthesized with each new case. The
sequence is not explicitly programmed at the time that the system is built.

2- Expert systems can process multiple values for any problem parameter. This permits more than one
line of reasoning to be pursued and the results of incomplete (not fully determined) reasoning to be
presented.

3- Problem solving is accomplished by applying specific knowledge rather than specific technique. This
is a key idea in expert systems technology. It reflects the belief that human experts do not process their
knowledge differently from others, but they do possess different knowledge. With this philosophy, when
one finds that their expert system does not produce the desired results, work begins to expand the
knowledge base, not to re-program the procedures.


End user

There are two styles of user-interface design followed by expert systems. In the original style of user
interaction, the software takes the end-user through an interactive dialog. In the following example, a
backward-chaining system seeks to determine a set of restaurants to recommend:

Q. Do you know which restaurant you want to go to?
A. No
Q. Is there any kind of food you would particularly like?
A. No
Q. Do you like spicy food?
A. No
Q. Do you usually drink wine with meals?
A. Yes
Q. When you drink wine, is it French wine?
A. Yes

Participants

There are generally three individuals having an interaction in an expert system. Primary among these is the
end-user, the individual who uses the system for its problem solving assistance. In the construction and
maintenance of the system there are two other roles: the problem domain expert who builds the system and
supplies the knowledge base, and a knowledge engineer who assists the experts in determining the
representation of their knowledge, enters this knowledge into an explanation module and who defines the
inference technique required to solve the problem. Usually the knowledge engineer will represent the problem
solving activity in the form of rules. When these rules are created from domain expertise, the knowledge base
stores the rules of the expert system.

Inference rule

An understanding of the "inference rule" concept is important to understand expert systems. An inference rule
is a conditional statement with two parts; an (if clause) and a then (clause). This rule is what gives expert
systems the ability to find solutions to diagnostic and prescriptive problems. An example of an inference rule
is:
If the restaurant choice includes French and the occasion is romantic,
Then the restaurant choice is definitely Solitaire.

You might also like