Some Thoughts to Consider 1
Download
Report
Transcript Some Thoughts to Consider 1
Some Thoughts to Consider 1
•
What is so ‘artificial’ about Artificial Intelligence?
•
Just what are ‘Knowledge Based Systems’
anyway?
•
Why would we ever want to study this stuff?
•
Mind is what the brain does.
•
‘Brains cause minds’ - Searle.
•
Software is to machine as mind is to brain.
•
‘Knowledge is power’ - Francis Bacon.
•
Can machines think?
•
What does it mean to build software systems
that are ‘people-literate’, rather than having
people be ‘computer-literate’?
•
Does the study and use of AI help us better
understand how people think and act?
Anticipated Benefits of Investing in
Emerging Technologies
•
Particularly the technologies of:
•
•
•
•
•
Knowledge based systems
Agent oriented systems
Service oriented architectures
Neural networks
Genetic algorithms
•
Move people to a new level of problem solving.
•
Raise business concepts and operations to a
higher level of understanding.
•
Manage the increased complexity of running the
business.
•
Reduce the time required to field new
applications.
•
Produce more intelligent performance
enhancement applications.
•
Reduce long term system maintenance time.
•
Provide bottom-line value to clients and profit for
the corporation.
The Main Design Issues
•
•
•
Representation
•
What structures or ‘metaphors’
shall be used?
Knowledge
•
Where and how shall it be
represented?
Process Control Flow
•
Where in the architecture shall it
reside?
Types of Knowledge
•
Facts
•
Process Knowledge
•
Operational Know-How
•
Market Knowledge
•
Technology/System/Database Knowledge
•
Dependency Knowledge
•
Causality Knowledge
•
Conflict Knowledge
•
Constraint Knowledge
Types of Knowledge
•
•
Concept Knowledge (Objects, Nodes)
•
•
•
•
Physical objects
Actions
Events
Categories
Relationship Knowledge (Links, Arcs)
•
•
•
•
•
A-kind-of
Part-of
Instance-of
Cause-of
Acts-on
•
Descriptive Knowledge (Attributes)
•
Procedural Knowledge (Algorithms)
•
Inheritance Knowledge (Classes)
•
Heuristic Knowledge (Rules of Thumb)
•
Inference Knowledge (Strategies)
•
Emergent Knowledge (Neural Nets)
Types of Representation
•
Declarative (Facts)
•
Procedural (Instructions)
•
Inferential (Implied by Reasoning)
Mechanisms of Representation
•
•
•
•
•
•
•
•
Rules
Frames
Predicate Logic
Semantic Networks
Classes – Objects – Methods
Actors – Agents
Neural Nets
Genetic Algorithms
Key Knowledge Engineering Activities
•
•
•
Knowledge Acquisition
•
•
•
•
Interviewing experts
Protocol analysis
Prototype iteration
System acquisition of knowledge (learning)
Knowledge Representation
•
•
•
Categories of the knowledge
Structure of the knowledge
Tool selection
Knowledge Utilization
•
•
•
•
•
Control structure – “knowledge flow”
Reasoning strategies
Justification and explanation
Dealing with uncertainty and incompleteness
System validation
So, What About Decision Support?
•
We are evolving a new kind of product.
•
•
One that is knowledge-enriched, with locally-authored
decision support.
Rather than a vendor-supplied, predetermined package
of software logic and data structures.
•
This requires intense knowledge engineering
and knowledge representation that is
substantially different from traditional
programming practice.
•
Knowledge is represented declaratively in a
knowledge base such that customers can
customize it for local use.
•
Knowledge is not represented in programming language
code.
Model Based Software Design
•
Represents a different way of thinking about
software design and implementation.
•
Takes the clinical (business) knowledge out of
the Java code.
•
Moves the problem solving process to a higher
level of abstraction.
•
Models become the vernacular for clinical
(business) architecture discussions.
•
Representation is ‘outside’ the Java classes,
rather than ‘inside’ the Java classes.
•
The Java classes become more like ‘engines’
that manage and reason over the external
representations.
•
The movement to XML, RDF, and OWL is
movement in this design direction.
Motivation for Model Based Architecture
•
We’re growing out of traditional ‘database-toscreen’ types of product.
•
We are faced with providing more
‘knowledge-rich’ products.
•
Customers require customization of the
content we deliver for their specific product
venue.
•
More and more of our traditional products
require integration and interoperability.
•
Analysts are required to participate more in
the design of representational structures.
•
Developers are required to participate more in
product design.
•
The level of complexity of our products is
increasing beyond what is manageable by
traditional development means.