Lecture 6 - Knowledge and Expert Systems Flashcards
Pre-1970s is known as the _________ Era
Heuristic Search Era
In the Heuristic Search Era, the quest for the essence of intelligence focused on two areas:
Universal Problem Solving Techniques
Universal Learning Techniques
Search techniques and General Problem Solving are both part of
Universal Problem Solving Techniques
Perceptrons are part of
Universal Learning Techniques
Both universal problem solving techniques and universal learning techniques are characterised by
Absence of a priori knowledge of the problem domain (i.e. no knowledge or understanding before the problem solving begins)
Post 1970s is known as the
Knowledge Based Systems Era
The Knowledge based systems era is characterised by
Recognition of central role of knowledge in all types of intelligent activity
Shift of research emphasis to study of techniques for representing and using knowledge
What was Dendral?
The first serious attempt to produce a system as good as a human expert in a real world problem domain
In what years was Dendral under devleopment?
1965-1972
What was Dendral’s task?
Determine structure of a chemical compound from mass spectrogram data
How does a mass spectrogram work?
Smash up molecules
Get a histogram of fragment masses
What knowledge did dendral have?
Chemical formula of the compound
Atomic weights of chemicals and compounds
Why was Dendral’s task particularly difficult?
Huge search space -
Atoms may be joined in many different configurations
Organic compound with only 20 atoms can have up to 104 isomers
What would be the naive solution to Dendral’s task, and why is it a stupid idea to use this?
Generate all possible structures of the compound
For each, check if it is consistent with spectral data
Not used because it is very computationally expensive
What solution did dendral use for its task?
Use knowledge about the problem domain to constrain generation of candidate solutions
e.g. substructures the molecule is known to contain
substructures the molecule is known not to contain
which bonds are more likely to break
Far fewer candidates generated this way!
What is the 8 Queens problem?
Illustration how the use of additional knowledge can reduce number of candidates in generate and test procedure:
place 8 queens on an 8x8 chessboard so no queen occupies a square attacked by any of the others
What is the naive 8 queens solution?
Generate all possible configurations of 8 queens on a board
For each, check if it satisfies the conditions
How many possible configurations of 8 queens are on a 8x8 chessboard?
64*63*62*61*60*59*58*57=2x104
Checking a million configs a second would take 5.6 years to execute
What constraint can be added to the 8 queens problem to reduce the number of configurations?
Only allow one queen in each row
no. solutions = 88=2x107
Execution time reduced to ~20 seconds
What lessons can we learn from Dendral?
Searching is easy but time consuming
Intelligence lies in constraining the search to reduce time
Adding constraints is harder than programming a basic search
Constraints embody domain specific knowledge
From Dendral we learn we need to replace this with

this

What is a Production System?
A set of production rules
What is a production rule?
Codify knowledge as a set of states and actions, e.g.
IF IT IS RAINING THEN PUT UP YOUR UMBRELLA
situation action
Production rules are essentially
Ordered pairs
The state component of a production rule is often called
condition
antecedent
left hand side or LHS
The action component of a production rule is often called
Consequent
Right hand side or RHS
What are the advantages of production systems?
Easy to program - if … then very basic construct
Modular - each bit of knowledge has its own rule - easy to add or remove rules
Easy to show user how the result was reached
Reaches decisions in a very natural fashion