CSC 506: Software Engineering and Knowledge Engineering

Download Report

Transcript CSC 506: Software Engineering and Knowledge Engineering


1

Dr. Syed Noman Hasany






Review of known methodologies
Analysis of software requirements
Real-time software
Software cost, quality, testing and measurements
Object programming
Knowledge engineering issues: knowledge representation
using rules, frames & logic, basics of logical inference, and
basics of search.
2


 Knowledge
representation using rules
 Frames & logic,
 Basics of logical inference, and
 Basics of search.
4
 What
o

Knowledge is the sort of information that people
use to solve problems.
Knowledge includes:
o

is knowledge?
facts, concepts, procedures, models, heuristics, examples.
Knowledge may be:
o
o
o
specific or general
exact or fuzzy
procedural or declarative
IS
Strategy makers apply morals, principles, and
experience to generate policies
WBS
Higher management generates knowledge by
synthesizing information
KBS
Middle management uses reports/info.
generated though analysis and acts
accordingly
Basic transactions by operational staff
using data processing
Volume
DSS, MIS
TPS
Wisdom (experience)
Knowledge (synthesis)
Information (analysis)
Data (processing of raw observations )
Sophistication
and complexity
Data pyramid: Managerial perspectives
6
 What
o
A
is a knowledge-based system?
A system which is built around a knowledge
base. i.e. a collection of knowledge, taken from a
human, and stored in such a way that the
system can reason with it.
branch of Artificial Intelligence

What is an expert system?
o
o

A particular kind of knowledge-based system
One in which the knowledge, stored in the knowledge base, has
been taken from an expert in some particular field.
Therefore, an expert system can, to a certain extent, act as
a substitute for the expert from whom the knowledge was
taken.
Conventional
Programming
Algorithms
+ Data Structures
= Programs
Knowledge-Based
Systems
Knowledge
+ Inference
= Expert System
 General problem in Computer Science
 Solutions = Data Structures
o words, arrays
o records
o lists, queues
o objects
 More specific problem in AI
 Solutions = knowledge structures
o decision trees
o logic and predicate calculus
o rules: production systems
o description logics, semantic nets, frames
o scripts
o ontologies
CSC 9010 Spring 2011. Paula Matuszek Slides taken in part from Eric Eaton, http://www.csc.villanova.edu/~matuszek/fall2008/KnowledgeRepresentation.ppt
10

The term “knowledge engineering” is often used to mean
the process of
o
o
o

designing
building
installing
a knowledge-based system.
Some authors use the term to mean just the knowledge
acquisition phase.

Knowledge Representation means:
o Capturing human knowledge
o In a form computer can reason about

Why?
o Model human cognition
o Add power to search-based methods

Actually a component of all software development
CSC 9010 Spring 2011. Paula Matuszek Slides taken in part from Eric Eaton, http://www.csc.villanova.edu/~matuszek/fall2008/KnowledgeRepresentation.ppt
12
Knowledge base is a repository of domain
knowledge and metaknowledge.
Enriches the
system with
self-learning
capabilities
Inference engine is a software program that
infers the knowledge available in the
knowledge base.
Explanation
and
reasoning
Provides
explanation and
reasoning
facilities
Knowledge
base
Inference
engine
Selflearning
User interface
Figure 1.10: General structure of KBS
13
Friendly
interface to
users working
in their native
language





Knowledge Engineering (KE) concerns the basic issues
involved in building and using KBS, i.e.
Acquisition
Representation
Explanation
Validation
of knowledge in a KBS
14
Knowledge
validation
(test cases)
Sources of knowledge
(experts, others)
Knowledge
Acquisition
Knowledge
base
Encoding
Knowledge
Representation
Explanation
justification
Inferencing
Decision Support Systems and Intelligent Systems, Efraim Turban and Jay E. Aronson
6th ed, Copyright 2001, Prentice Hall, Upper Saddle River, NJ
15
 Acquisition
of knowledge
o General knowledge or metaknowledge
o From experts, books, documents, sensors, files
 Knowledge
representation
o Organized knowledge
 Knowledge
validation and verification
 Inferences
o Software designed to pass statistical sample data to
generalizations
 Explanation
and justification capabilities
11-16
Logic based representation – first order predicate logic,
Prolog
Procedural representation – rules, production system
Network representation – semantic networks, conceptual
graphs
Structural representation – scripts, frames, objects