Difficulty in characterizing
How do we know which problems
are tackle-able?
Raised expectations due
to word "expert"
Why is Payroll Prog
not an Expert System?
Mathematical Models
Are they Expert Systems?
Discuss: symbolic reasoning
representation, control
Terms: heuristics, knowledge acquisition, learning
Two key words
Early History
General Problem Solving Issues
Difficult Problems in Specific Domains
(Dendral, etc.)
AI and Search
Problem Solving as Search in Some State Space
Complexity of Search
Very High for Problems People Generally Do Well
Idea of Heuristic Knowledge to Control Search
HPP Project
Heuristic Programming Project
Stanford 1972
Often Domain Knowledge was expressed as Actions to take when Conditions were met
Rule-based approach -
Hypothesize and match as the basic P.S. activity
(forward and backward chaining are variants of this)
No constructs for other knowledge structures
(goal structures, plans, etc.)
Example: Mycin is, of course, doing classification, but where? Not explicit.
Task specific classification control is implicit.
Modeling expert should have expert problem-solving
Claims of Rule Systems:
Logic's Knowledge Level terms exhausted by:
Frame system's Knowledge Level Primitives are
Comments below apply equally to Rules, Logic, Frames
All of them are computation-universal so it is hard to tell what they've actually contributed once the system is successfully designed.
Task-specific control structure "encrypted" and hidden at the control structure that comes with one of these languages
Because of the abstraction level, real task-level problems are ignored as "Knowledge Engineering" and artifacts are elevated as theoretical problems.
Example: Conflict resolution in rule systems,
syntactic clause selection strategies in resolution ...
In human reasoning task-specific organization resolves conflicts
Paucity of "knowledge-level" primitives for both
knowledge representation and control regime specification.
What we need is a Language of Mind - "Mentalese"
kinds of primitives that the mind uses to encode classification knowledge control
Claim:
There is a problem of Level in analyzing expert systems
Confusion between the information-processing level and the mechanism/implementation language level.
Failure to distinguish between what is computed and how it is computed.
The architecture of a sytem language should be on tap not on top
Matching Techniques to Tasks
Generic Tasks
Intuition: e.g., "Design" and "Diagnosis" have different families of knowledge types and control regimes across domains
Ideally, we would like to represent knowledge in task with appropriate vocabulary
Diagnosis:
Fact: Early expert system languages do not explicitly encode these distinctions. Success becomes a matter of programming.
Result:
There is a need for understanding the Generic information-processing tasks that underlie knowledge-based reasoning:
Dialectic of Progress:
What does Dendral do?
What does R1 do?
What does Prospector do?
What does MDX do?
Rather than discussion on procrustrean bed techniques, one talks about techniques for the task.
(Note: generic task work readily falls into intelligent agent ideas - achievement of a module that performs a task is an agent that is intellegent in this area)
Is there a set of generic tasks?
What are they?
What are the issues in this task?
Example arguments:
primitives
eg. is "analogy" a task or method?
is "consultation" (MYCIN) a category?
Interpretation vs. Diagnosis
(difference in problem-type?)
Interpretation vs. Perception
Diagnosis and Classification
- explicit properties (due to the problems representation) vs.
emergent properties (due to implicit aspects of an agent's strategy)
* significance - explanatory power
Explanation of Control and Level of Abstraction
Knowledge-Level (or information-processing level) vs Symbol Level
e.g., In rule-based systems, we can distinguish two kinds of control.
backward and forward chaining
e.g., Pruning the problem-space, setting up context hierarchy, etc.
Moral: Good explanations require abstraction at a much higher level than available at the symbol level (rules, logical formulae, etc.)
We need one step further
Integrate Problem-solving and explanation by identifying tasks and matching
these to strategies at the knowledge level
READ:
Chandrasekaran paper: Matching Techniques to Task
Chandra & Keuneke: Classification Problem Solving