Expert Systems - PowerPoint PPT Presentation

1 / 40
About This Presentation
Title:

Expert Systems

Description:

Title: Expert Systems Author: M Mackie (adapted from LTS Notes) Last modified by: Teresa Summers Created Date: 1/26/1999 9:05:48 PM Document presentation format – PowerPoint PPT presentation

Number of Views:144
Avg rating:3.0/5.0
Slides: 41
Provided by: MMac84
Category:

less

Transcript and Presenter's Notes

Title: Expert Systems


1
artificial
intelligence
2
4 Knowledge Representation
3
(No Transcript)
4
Defining Intelligence
Intelligence is VERY difficult to define! Even
the dictionaries dont agree. Some of the best
attempts at defining intelligence might
include - the ability to learn from
experience - the ability to adapt to new
environments - the ability to combine knowledge
to make decisions
Defining Artificial Intelligence
Artificial Intelligence could therefore be
thought of as the science of making machines
do things that would require intelligence if
it were to be done by a human.
Strong AI - Some AI researchers believe that one
day a machine will be built that can think. Weak
AI - Others believe that a machine will only
ever be able to emulate human thought.
5
Aspects of Intelligence
The main aspects of intelligence that we will
consider include
  • The ability to process language and communicate
  • The ability to learn and adapt
  • The ability to recognise features (also called
    cognitive ability)
  • Problem solving skills
  • The ability to remember and recall information
  • The ability to create knowledge (or apply
    knowledge in new ways).

With such a wide field it is no wonder that
intelligence is so difficult to define.
6
Aspects of Intelligence in Computer Games
  • The ability to process language and communicate

Interpret typed or spoken commands to perform
actions.
  • The ability to learn and adapt

Learning new strategies that can be applied in
future games.
  • The ability to recognise features (also called
    cognitive ability)

Examining surroundings to detect the opposing
player OR listen and/or watch for the other
player.
  • Problem solving skills

Searching for appropriate strategy for different
situations that occur.
  • The ability to remember and recall information

Remembering previous experience to inform future
strategy.
  • The ability to create knowledge (or apply
    knowledge in new ways).

Coping with new situations and/or novel
solutions.
7
One way of determining whether an AI program is
truly intelligent is to apply the Turing Test.
The method was proposed by the British
Mathematician Alan Turning in 1950.
How the Turing Test Works
Firstly, you place your interrogator (C) in a
room with 2 computer terminals. You then connect
your computer program to one terminal (A) and a
human being to the other (B). The interrogator
then asks questions of both terminals to see if
he or she can tell which is the human and which
is the machine. If the tester cannot tell the
difference, the machine has passed the Turing
test. BBC News - Turing Test
Flaws in the Turing Test
There are flaws in the Turing test as a method of
determining the existence of artificial
intelligence. 1 It can only cope with a fairly
limited problem domain (ie. the area of knowledge
that the system describes is very small). 2 Do
systems have to pretend to forget things or make
mistakes to fool us into thinking theyre
human? 3 Should the interrogator (C) know that
they are taking part in a test and that one of
the responses is coming from a computer. Does it
matter either way? 4 Displaying intelligent
behaviour is NOT the same as being intelligent.
Think about it! 5 - The Turing test assumes that
the interrogator is sophisticated enough to
determine the difference between the behaviour of
a machine and the behaviour of a human being.
8
Development of AI
Early Years (1940s-1950s)
In the beginning the focus of AI research was on
modelling the human brain. Information was
gathered from human and animal biologists,
psychologists, doctors and psychiatrists to try
to identify patterns in the way we do things. It
was thought that programs could be written or
machines could be built that would mimic human
and animal behaviour. Early work looked at simple
game playing, mathematical manipulation and
language processing. Alan Turnings work on
cryptography during WW2, showed that any
computable problem can be solved using simple
IF-THEN rules. It prepared the world for what
was to follow.
1960s
As machines became more powerful and expertise
grew in the field of AI, the focus shifted from
trying to model the human brain to trying to make
systems which exhibited intelligent
behaviour. Research concentrated on modelling
situations from a variety of relatively simple
problem domains. General Problem Solver (GPS) was
a program written in 1961. It was designed to use
something we use everyday common sense
reasoning. The General Problem Solver could
only operate in a very clearly defined area of
logical theorems and equations and not, as its
name suggests, on more general human
problems. Due to technical limitations of
machines at the time, it was only possible to
implement simple games like chess, draughts and
noughts and crosses. The earliest chess programs
could beat human players (if they were not too
good!) These early machines with restricted
problem domains, often referred to as closed
worlds.
9
Development of AI
1960s - 1970s
ELIZA Developed in 1966, ELIZA was one of the
first applications which was thought to display
understanding in language. ELIZA seemed to be
able to respond intelligently to human
conversation and was able to psychoanalyse
patients. Many users actually believed they
were talking to another person! Try ELIZA online
http//www.chayden.net/eliza/Eliza.html
SHRDLU A system called SHRDLU (developed in
1970), could understand a closed world
involving a number of coloured blocks. It was
one of the few programs which was able to
understand reasonably complex sentences. It could
interpret verbal commands to move these blocks
around.

Person PICK UP A BIG RED BLOCK. Computer OK.
(does it) Person GRASP THE PYRAMID.
Computer I DON'T UNDERSTAND WHICH PYRAMID YOU
MEAN. Person FIND A BLOCK WHICH IS TALLER THAN
THE ONE YOU ARE HOLDING AND PUT IT INTO THE BOX.
Computer BY "IT", I ASSUME YOU MEAN THE BLOCK
WHICH IS TALLER THAN THE ONE I AM HOLDING.
Computer OK. (does it) Person WHAT IS THE
PYRAMID SUPPORTED BY? Computer THE BOX.
Person HOW MANY BLOCKS ARE NOT IN THE BOX?
Computer FOUR OF THEM.
Towards the end of the 1970s research began to
move away from the idea of creating a machine
which understood everything, and became more
focused on developing AI within a specified
domain. Researchers had realised by this time
that they required to store a huge amount of data
to solve the simplest of problems that a human
could solve so easily.
10
Development of AI
Restricted domains proved a great success and
produced, for example, the expert system.
1970s
MYCIN In the area of medical diagnosis, MYCIN,
an expert system was developed. Its knowledge was
based on that of a number of human experts, and
was able to diagnose blood infections. It
contained around 450 rules and was able to
replicate the reasoning and diagnoses of the
experts and to out-perform junior doctors. It was
written in LISP. Example of a MYCIN production
rule

IF 1. The infection that requires therapy is
meningitis AND 2. The patient has evidence of
serious skin or soft tissue infection AND 3.
Organisms were not seen on the stain of the
culture AND 4. The type of infection is
bacterial THEN There is evidence that the
organism that might be causing the infection is
Staphylococcus coagpos (0.75) or Streptococcus
(0.5).
1980s
In the early 1980s, one of the largest computer
firms, DEC began to use XCON, the first
commercially successful expert system. This was a
time when ordering a computer system was much
more complex than it is today! DEC employees were
not always technically expert, and so the XCON
expert system interacted with the sales person
and asked critical questions before printing out
a coherent, workable system specification/order
slip!XCON ultimately saved DEC an estimated 25
million per year.
11
Development of AI
Modern Developments in AI
Your car may be able to work out what is wrong
when it will not start. It may even be able to
contact the garage for you.
Modern fridges can detect when food supplies are
running low, and can send out an order for more
food via the internet.
A modern example of robots interpreting behaviour
would be a robotic fish that swims with real
fish, collecting data about ocean currents,
migration patterns and other behaviours.
European researchers have designed robots that
react to one another in ways that resemble the
actions of mammals. BBC News See Robots
Swarm
Modern Developments in AI
As technology has developed, the study of AI has
benefited enormously. Faster processors Larger
Memory Capacity Faster Backing Storage Access
Faster Solutions to more complex AI
problems Parallel processing has further
improved performance, since multiple processors
can simultaneously work on different parts of the
same AI problem (e.g. Searching different braches
of a tree in a depth-first search) . Classic
applications of parallel processing include
Vision Systems (where a video image can be
analysed by using a separate processor for each
part of the image, comparing pixel intensities
and detecting edges), Chess Program ( where
several branches of moves can be evaluated
simultaneously) and Speech Recognition (where
several processors simultaneously try to match
the input signal with stored patterns of
sounds. However, as we learned in the Digital
Intelligence Lecture, processing power alone does
NOT solve many AI problems! Even the most
powerful supercomputer in the world struggles to
distinguish the difference between cats and dogs!
Parallel Processing
Use the internet to investigate more modern
developments in AI
12
(No Transcript)
13
2 Applications and Uses of AI
We are going to examine 6 areas of AI
applications
  • Expert Systems
  • Natural Language Processing
  • Vision Systems
  • Intelligent Robots
  • Smart/Embedded Technology
  • Artificial Neural Systems (ANS)

14
2 Applications and Uses of AI Expert Systems
Expert Systems
Problems with Human Experts
  • Not enough of them
  • Not in the right place at the right time
  • Medical expertise is scarce in the third world
  • - Crops may fail for no apparent reason
  • Legal advice is sometimes not available to poor
    people
  • Expensive
  • - Cost a lot to train
  • - Expect high salaries and/or fees
  • Not permanent
  • - May move to work elsewhere
  • - Will retire or die or may no longer be
    available
  • Imperfect
  • - They do not know everything
  • - Knowledge is sometimes forgotten
  • - Imperfect logic and
    intelligence when solving problems
  • - May be biased by outside factors
  • - May lie, conceal or omit true advice
  • - Make mistakes through tiredness/pressure

15
2 Applications and Uses of AI Expert Systems
Expert Systems are Used To
All expert systems produce advice as output, but
the way that the output is used determines the
category of the expert system. There are 4
different categories of expert system. They can
be used to
advise
classify
diagnose
plan
16
2 Applications and Uses of AI Expert Systems
Expert Systems are Used By
  • Doctors to help diagnose specialist diseases
    such as cancer
  • Oil Companies to advise on the most likely
    places to drill for oil
  • Banks to help advise customers on types of
    mortgage, saving account etc
  • Airlines to help the aircraft pilot to plan a
    flight path
  • Botanists to classify rare plants
  • Solicitors to advise on certain aspects of the
    law
  • Telecommunications Companies to help plan the
    design fibre optic cabling

17
2 Applications and Uses of AI Expert Systems
Main Component of an Expert System
User Interface
Knowledge Base
Inference Engine
User
Expert System Shell (E.g. Intermodeller)
Expert System
18
2 Applications and Uses of AI Expert Systems
Components of an Expert System
  • - the Knowledge Base
  • - contains the facts and rules that represent
    the knowledge in the system
  • - written in a knowledge representation language
    (KRL)
  • - uses certainty factors to represent uncertain
    knowledge
  • - the Inference Engine
  • - determines the method of reasoning used by the
    expert system (i.e. Forward Chaining, Backward
    Chaining)
  • - determines how the expert system rules are
    applied to the facts
  • - determines the order in which the rules are
    applied ( the order of questions posed)
  • the User Interface
  • - allows the user to seek advice by providing
    questions for the user to answer
  • - allows the system to provide user with advice
    justify the advice offered and questions asked
  • - determines how user friendly the system is

Working Memory In addition, the users responses
to questions, and the deductions for the current
query are stored in working memory and then
discarded when a new query is started
19
2 Applications and Uses of AI Expert Systems
Justification Features of an Expert System
  • An expert system must be able to explain its
    behaviour and its decisions to the user.
  • This explanation feature is necessary in order to
    enhance the users confidence in the systems
    advice.
  • Explanations can reassure the user that systems
    conclusions are valid and are based on the
    evidence provided and that the questions asked
    are relevant and necessary for drawing a
    conclusion.
  • It also enables the designer to detect a possible
    flaw in the systems reasoning.
  • Explanations are used to test an expert system to
    ensure that its conclusions are correct. They are
    also used to debug the system if it is generating
    conclusions that are incorrect.
  • For these reasons, all expert systems can justify
    their actions. In particular an expert system
    can

WHY
give a reason why it is asking a particular
question
HOW
give a reason how it came to suggest a particular
piece of advice
20
2 Applications and Uses of AI Expert Systems
WHY?
WHY Justification Feature
Are you interested in buying a car?
Why are you asking me if I am interested in
buying a car?
Magazine Selector
Because I may be able to suggest that you should
buy Car Weekly.
The WHY justification allows the expert system to
explain why it is asking a particular question.
21
2 Applications and Uses of AI Expert Systems
HOW?
HOW Justification Feature
Suggestion You should buy Skiing and
Snowboarding Magazine.
How did you arrive at that conclusion?
Magazine Selector
Because you said that you enjoy sport and you
said you dont mind cold weather.
The HOW justification allows the expert system to
explain how it arrived at a particular piece of
advice.
22
2 Applications and Uses of AI Expert Systems
Expert Systems Personnel
There are 4 main personnel involved in the
development of expert systems
The Domain Expert
The domain expert is the human whose knowledge
and expertise has to be gained in order to design
and construct the expert system.
The Knowledge Engineer
The knowledge engineer has the task of obtaining
the domain knowledge from the human expert and
representing it in a suitable form so that it can
be entered into an expert system shell. This
process is called knowledge acquisition and
elicitation. (This role is similar to a systems
analyst for other types of software development).
The Programmer
The programmers task is to enter facts and rules
into the knowledge base from the knowledge
representation provided by the knowledge
engineer.
The User
There are 2 categories of user the client, and
the end user. The client may be the company
that has commissioned the expert system and must
be satisfied that it meets there requirements.
The end user is the person who will ultimately
use the expert system to help them solve
problems. Both the client and the end user may be
involved with the other personnel in testing the
expert system to ensure that it works correctly.
23
2 Applications and Uses of AI Expert Systems
Social, Ethical and Legal Implications
Expert Systems have been designed to replace
human expertise, make decisions and give advice
that would normally be suggested by a human
expert. What happens the advice is wrong? Or when
this advice turns out to be bad advice? The
consequences of acting upon bad advice could be
catastophic! Who is responsible for this?
Knowledge Engineers Knowledge engineers are
responsible for representing the specialist
knowledge in the expert system as facts and
rules. They are also responsible for testing the
system to ensure that it is correct. There is
scope for error if they have represented the
knowledge incorrectly or they have not tested
the system adequately. Users of the Expert
System Users are responsible for providing
answers to the questions asked by the expert
system. The user may respond incorrectly
especially if working under stressful conditions.
They should also use common sense when acting
upon the advice provided by the system. Human
Experts Human experts are responsible for
supplying specialist knowledge that is accurate.
They must also take part in the testing of the
system to make sure that advice suggested by the
expert system matches the advice that the human
expert would give in the same circumstances. It
is possible that the human expert could provide
inaccurate information at either the design or
testing stage. The Company / Organisation who
Installed the System The management of the
company / organisation is ultimately responsible
for the decisions taken within the company
whether by human expert or by expert system.
There is scope for error on their part if they do
not provide enough time for liaison between
themselves, their staff and the knowledge
engineers. They should also ensure that company
procedures are adjusted to incorporate the use of
the expert system. They should also ensure that
the introduction of the system is phased to
accommodate testing.
24
2 Applications and Uses of AI Expert Systems
Social, Ethical and Legal Implications
Expert Systems Advantages Disadvantages
Advantages Disadvantages of Expert Systems Advantages Disadvantages of Expert Systems
Advantages Disadvantages
Permanent Always available Narrow focus narrow domain
Easy to transfer Portable Needs expert to set up and maintain
Easy to document Lack of common sense
Consistent Inability to acquire new knowledge
Affordable Cost Effective Inflexible
Remember!
Users of Expert Systems must always remember that
they can, if they wish, ignore the advice of the
expert system when making a final decision.
Expert Systems are simply electronic consultants
it is the user who has control over the final
solution and its application.
25
Artificial Neural Systems (ANS)
The human brain is made up trillions of
connections. These connections are called
neurons. A neuron fires when it get enough
input from those neurons it is connected to. This
sends a signal to other neurons which are
connected to it. If they get enough stimulation
from the other neurons to take them over their
own thresholds, they will fire too. In this way,
signals are travelling around the brain all the
time.
Even simple creatures like insects behave in
intelligent ways (they can see, they can learn),
and they do this with a much smaller brain of
around 1 million neurons. Each neuron is a
relatively simple structure, consisting of a cell
body, with many long tentacle-like extensions
called dendrites. Neurobiologists have studied
the way neurons work and have discovered they
work in a fairly simple manner. Dendrites are the
cells input devices. They receive signals from
other neurons. If sufficient inputs are received,
this triggers an electrical output signal along
the axon.
26
Artificial Neural Systems (ANS) continued
Illustration of the major elements in chemical
synaptic transmission. An electrochemical wave
called an action potential travels along the axon
of a neuron. When the wave reaches a synapse, it
provokes release of a puff of neurotransmitter
molecules, which bind to chemical receptor
molecules located in the membrane of another
neuron, on the opposite side of the synapse.
27
Artificial Neural Systems (ANS) continued
Early researchers discovered that it would be
possible to model a simple brain neuron, and
developed the perceptron. The perceptron
has a small number of inputs (like dendrites) and
a single output (axon). It multiplies each input
by a number (called a weight) which could be
adjusted. It then adds up all the inputs and
gives an output if the total exceeds a threshold
value. The output value is then used to adjust
weights and repeat the process. Each iteration
reduces error. Eventually, error is reduced to
the extent that a pattern can be identified to a
degree of certainty.
Applications of Artificial Neural Systems (ANS)
Neural nets are very good for pattern recognition
problems where data is plentiful and inexact and
where human experts cannot explain the
pattern. Real-world applications exist in
hand-writing recognition (e.g. postcodes
identifying postcodes on written letters), vision
systems, speech recognition, weather forecasting,
financial forecasting etc.
28
Vision Systems
29
Vision Systems
Vision Systems take input from a digital camera
or a digital video camera and analyse the data to
try to make sense of what is shown. Computer
vision is a 5 stage process
Vision Systems
1 Image Acquisition
Natural Language Processing
Converting the image into digital data (i.e. bit
map of the scene)
2 Signal Processing
Improving the digital image by increasing the
resolution and removing distortion.
3 Edge Detection
Comparing adjacent pixels to determine where
changes in the bit patterns show that edges occur.
4 Object Recognition
Representing each object mathematically and
comparing this representation with stored
representations. (This is called pattern
matching).
5 Image Understanding
Putting together identified objects to make sense
of the image and take the appropriate action.
30
Vision Systems continued
There are many applications of Vision Systems
including
- Fingerprint/Biometric Identification - Digital
Cameras can use face detection to aid focus -
Quality control on a production line -
Meteorologist systems analysing weather from
satellite images - Military uses include self
targeting smart weapons that will find targets
Vision Systems
Natural Language Processing
Face Detection OFF
Face Detection ON
There are difficulties with computers trying to
interpret 3D objects as a single 2D images. To
help overcome this problem there are current
developments in depth perception using
stereoscopic vision.
31
Natural Language Processing
Natural Language Processing (NLP) is the use of
computers to identify meaning from the spoken or
written word and to reply in a meaningful way
using everyday human language. It involves 4
steps
1 Speech Recognition
Taking the spoken works captured by microphone
and identifying each word.
2 Natural Language Understanding
Taking the identified words and interpreting
their meaning to allow appropriate response.
Natural Language Processing
3 Natural Language Generation
Constructing sentences from stored information
about words and their meaning to construct a
reply.
4 Speech Synthesis
Taking the words generated and trying to output
sounds to match how these words should be
pronounced.
32
Difficulties in Natural Language Processing
Computers processing Natural Language is very
different to the way a computer would understand
a programming language. Programming languages
have a very small vocabulary and very strict
grammar rules. A language like English has
millions of words, several different ways of
saying the same thing, and many different ways of
interpreting the same thing. Plus the rules are
evolving all the time.
Ambiguity of MeaningJosh likes fencing Does
this mean Josh enjoys the sport or putting up
timber fences? The teacher runs after the pupil
with book Who has the book? Soldiers charged
How many valid interpretations of this headline
can you think of?
Similar Sounding WordsToo, two, to He took
those two, He took those too?
Inconsistencies in Grammar of Human
LanguagesThe team is happy with their
performance or The team are happy Which is
correct?
Changing Nature of LanguageIll text you later
Language is constantly changing. The verb
text is a recent addition in this context.
33
Smart/Embedded Technology
Intelligent software is used to monitor and
control many devices in our everyday lives.
- the fridge that knows when supplies are low and
orders more - the car that diagnoses its own
faults and books itself in for a service -
the satellite/cable TV system that works out what
you might enjoy watching based on previous
viewing patterns, and records it when you are
out - the Genius ipod feature which is
able to generate a playlist of recommended songs
for you, based on music you like
Intelligent Robots
Dumb robots blindly follow users
instructions. Intelligent robots do not need
humans to make decisions for them. They do work
within user-defined parameters, but they take
sensory information from their surroundings, and
crucially they learn and adapt to new
situations. Current applications range from
mowing the lawn to assisting in medical
operations.There is even the possibility that
one day, micro robot may be injected into the
bloodstream to help treat you! Practical problems
with intelligent robots include limited
processor power, limited mobility, navigation and
path planning, inventing a small but powerful
power supply, vision recognition, manipulating
small objects.
34
(No Transcript)
35
3 Search Techniques
Breadth-first and Depth-First
The two exhaustive, or brute force, search
techniques used in AI are Breadth-first and
Depth-first.
Consider a game of chess that looks 3 moves
ahead.Start at initial state 1. Each branch
represents a possible move at that stage.
Breadth-first vs. Depth-first Searching
Imagine the goal state is state 8, via move 4.
What are implications for breadth-first vs.
depth-first? Looking 3 moves ahead, state 8 is
reached much more quickly using
breadth-first.The problem with breadth-first
however is that, the whole tree (1 to 7) must be
held in memory until 8 is found. Using
depth-first searching (and backtracking), state 8
is found last of all!However, there is less
demand on memory with depth-first search, since
fruitless branches can be checked then discarded
from the search!
36
3 Search Techniques
Combinatorial Explosion
Whichever method is used, in reality the search
tree can get very big very quickly! Even if every
node on the tree leads only to 2 other nodes,
than after only a few levels, the number of nodes
is huge! This is called a combinatorial explosion.
Searching Using Heuristics
To help reduce the search time we must employ a
technique called heuristics. This simply means
using a rule of thumb to cut own the size of
the search space, by ignoring branches which are
unlikely to lead to a solution. If you were
looking for the shortest route between 2 points
in a maze, then a heuristic might be to try to
move towards the target at every opportunity,
thus ignoring a large amount of the potential
options. In assessing the best path to a goal
state in a game driven by AI, the system might
give a score to each of the possible moves in
terms of how much closer it brings you to goal
and then select the move with highest score.
37
4 Knowledge Representation
38
4 Knowledge Representation
Fishy Scenario
A group of S1 pupils have been asked to write
down any facts about fish. Here is what they
wrote A fish has fins, scales, is cold blooded
and has gills. There are lots of kinds of fish,
including cod, haddock, shark, goldfish, and
trout. A fish is a vertebrate that means it has
a backbone. I have a goldfish called Sammy. Cod,
haddock and sharks are salt-water fish (they live
in salt water). Goldfish and trout are freshwater
fish (they live in fresh water).
Semantic Nets
The knowledge above can be represented as a
semantic net.
39
4 Knowledge Representation
Turning a semantic net into Prolog Rules
We can use this semantic net to write a Prolog
knowledge base. Each arrow on the semantic net
becomes a Prolog clause. There are 3 different
relationships shown in the diagram. These are
- is a (e.g. Sammy is a goldfish) - has (e.g.
a fish has fins) - lives in (e.g. a salt water
fish lives in salt water) We can use these as
Prolog predicates. So the knowledge base would
look like this
1. is_a(sammy,goldfish).2. is_a(goldfish,freshwat
er_fish).3. is_a(trout,freshwater_fish).4.
is_a(cod,saltwater_fish).5. is_a(haddock,saltwate
r_fish).6. is_a(shark,saltwater_fish).7.
is_a(saltwater_fish,fish).8. is_a(freshwater_fish
,fish).9. is_a(fish,vertebrate).
10. has(fish,fins).11. has(fish,scales).12.
has(fish,cold_blood).13. has(fish,gills).14.
has(vertebrate,backbone).15. lives_in(freshwater
_fish,freshwater).16. lives_in(saltwater_fish,sal
twater).
40
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com