dt228/3 software and knowledge engineering lecturer: deirdre lawless

45
DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Upload: reynold-hines

Post on 18-Dec-2015

228 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

DT228/3

Software and Knowledge Engineering

Lecturer: Deirdre Lawless

Page 2: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Data, Information, Knowledge, Wisdom

Data... is raw. simply exists and has no

significance beyond its existence (in and of itself).

Information data that has been given meaning

by way of relational connection. "meaning" can be useful, but does

not have to be. Knowledge

the appropriate collection of information, such that it's intent is to be useful.

Understanding... cognitive and analytical. It is the process by which you can take

knowledge and synthesize new knowledge from the previously held knowledge.

The difference between understanding and knowledge is the difference between "learning" and "memorizing".

People who have understanding can undertake useful actions

Wisdom... an extrapolative and non-

deterministic, non-probabilistic process.

It calls upon all the previous levels of consciousness, and specifically upon special types of human programming (moral, ethical codes, etc.).

Page 3: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Data, Information, Knowledge, Wisdom Examples Data represents a fact or statement of event without relation to other

things. Ex: It is raining.

Information embodies the understanding of a relationship of some sort, possibly cause and effect. Ex: The temperature dropped 15 degrees and then it started raining.

Knowledge represents a pattern that connects and generally provides a high level of predictability as to what is described or what will happen next. Ex: If the humidity is very high and the temperature drops substantially the

atmospheres is often unlikely to be able to hold the moisture so it rains. Wisdom embodies more of an understanding of fundamental principles

embodied within the knowledge that are essentially the basis for the knowledge being what it is. Wisdom is essentially systemic. Ex: It rains because it rains. And this encompasses an understanding of all

the interactions that happen between raining, evaporation, air currents, temperature gradients, changes, and raining.

Page 4: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Transition

Page 5: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge

Abugt dbesbt regtc uatn s uitrzt. ubtxte pstye ysote anet sser extess ibxtedstes bet3 ibtes otesb tapbesct ehracts Does this mean anything to you ?

Page 6: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge I have a box. The box is 3' wide, 3' deep, and 6' high. The box is very heavy. The box has a door on the front of it. When I open the box it has food in it. It is colder inside the box than it is outside. You usually find the box in the kitchen. There is a smaller compartment inside the box with ice in it. When you open the door the light comes on. When you move this box you usually find lots of dirt underneath

it. Junk has a real habit of collecting on top of this box. What is it?

Page 7: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

What is Knowledge Management ?

An approach based on the central role of knowledge in organisations

Objective to manage and support knowledge work and to maximise the added value of knowledge for the organisation

Aims: identifying and analysing knowledge and knowledge work developing procedures and systems for generating,

storing, distributing and using knowledge in the organisation.

Page 8: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

What is Knowledge Management About?

improving the ability to acquire knowledge, improving the quality of knowledge, and using knowledge to its greatest

advantage

Page 9: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Objective of KM To create added value for the organisation at three distinct levels:

Improvement of existing business processes what can we do better

Development of new products and services what can we do more

Improving the strategic position, aimed at: Developing unique knowledge Applying knowledge to innovative products and services Strengthening the competitive position Safeguarding the organisation’s continuity Improving flexibility Creating an attractive work environment Making the organisation independent of the individual employee’s

knowledge

Page 10: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

How can computers help?

Share knowledge Discover Knowledge Assist people About both people and technology Knowledge not just stored in a knowledge

base but constructed through co-operation with a person using that knowledge base

Page 11: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge Engineering

KE is an engineering discipline that involves integrating knowledge into computer systems in order to solve complex problems normally requiring a high level of human expertise.

At present, it refers to the building, maintaining and development of knowledge-based systems

Page 12: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge Engineering Or it refers to transferring human knowledge into some form of

knowledge based system (KBS) Five steps

Acquisition Obtaining knowledge from various sources human experts, documents,

existing computer systems etc Validation

Check knowledge acquired using test cases Representation

Producing a map of knowledge and encoding into some sort of knowledge base

Inferencing Forming links in the knowledge so that a KBS can make a decision or provide

advice Explanation and justification

Allow a KBS to show how it reached a conclusion

Page 13: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge Engineer

Person who translates knowledge relating to an area of expertise into the knowledge base which supports a KBS

Page 14: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Types of Knowledge

Procedural How to E.g. I Know How To Drive A Car Processes, Tasks, Activities And conditions under which tasks are performed And sequence of tasks

Conceptual I know that … About ways in which things (concepts) are related to each

other and their properties

Page 15: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Types of Knowledge Explicit

Knowledge at the forefront of a person’s brain Thought about in a deliberate, conscious way Concerned with basic tasks, basic relationships between

concepts, basic properties of concepts Not difficult to explain

Tacit Deep, embedded knowledge At the back of a person’s brain Built from experience rather than being taught Gain when practice Leads to activities which seem to require no conscious

thought at all

Page 16: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Types of Knowledge

How to Boil An Egg Simple task easily explained

How to tie a shoelace Requires demonstration with commentary

E=mc2 Simply relates concepts

The position of keys on a keyboard Most people know this sub-conciously but few conciously

Basic, Explicit Knowledge

Deep, Tacit Knowledge

Conceptual Knowledge

Procedural Knowledge How to boil an

egg

E=mc2

How to interview an

expert

The properties of knowledge

The position of keys on a keyboard

How to tie a shoelace

Taken from Knowledge Acquisition in Practice A Step By Step Guide, Millton, Springer-Verlag

Page 17: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Eliciting Knowledge

Most knowledge is in the heads of experts Experts have vast amounts of knowledge Experts have a lot of tacit knowledge They don't know all that they know and use Tacit knowledge is hard (impossible) to

describe Experts are very busy and valuable people Each expert doesn't know everything

Page 18: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge Acquisition/Knowledge Engineering

Knowledge Representation is about representing some knowledge

First need to determine what that knowledge is the process of Knowledge Acquisition and Elicitation non-trivial process

The information is often locked away in the heads of domain experts

The experts themselves may not be aware of the implicit conceptual models that they use

Have to draw out and make explicit all the known knowns, unknown knowns, etc….

Page 19: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge Acquisition

Capturing knowledge about a subject domain From experts And other sources Using this to create a store of knowledge Usable by many different applications, users

and benefits Does not have to be a database

Can be a knowledge web, ontology, knowledge document etc

Page 20: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Difficulties of knowledge acquisition

Experts find it difficult to Express their knowledge in a manner fully

comprehensible to the knowledge engineer Know exactly what the engineer wants Give the right level of detail Present ideas in a clear and logical order Explain all the jargon and terminology of the

subject domain Recall everything relevant to the project Avoid drifting into talking about irrelevant things

Page 21: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Difficulties of knowledge acquisition

Engineers find it difficult to Understand everything the expert says Note down everything the expert says Keep the expert talking about relevant issues Maintain high level of concentration needed Check they have fully understood what has been

said

Page 22: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Difficulties of Knowledge Acquisition

Arise due to human cognition and communication

Humans are good at communication and performing complex activities

Not good at communicating complex activities to those not from the same subject areas

Page 23: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge Acquisition Bottleneck Nothing happens until knowledge is acquired Sources of knowledge are unreliable

Domain experts provide incomplete, even incorrect knowledge Domain experts may not be able to articulate their knowledge

Knowledge bases are hard to build Computational knowledge representations are complex

Techniques Limited range Ignorance

Experts poor appreciation of different types ignorance

Expertise poor appreciation of different types ignorance need to organise knowledge into higher level units

Page 24: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

What is a Knowledge Based System ? Use knowledge to solve problems Exercise knowledge to solve problems Knowledge used is that possessed by people

knowledgeable in the domain Cause-and-effect Heuristics Etc

Definition: A computerised system that uses domain knowledge to

arrive at a solution to a problem within that domain. The solution is essentially the same as one concluded by a

person knowledgeable about the domain when confronted with the same problem.

Page 25: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

What is a Knowledge Based System ?

Computer system that is programmed to imitate or assist with human problem-solving By means of artificial intelligence And reference to a database containing human knowledge on a

particular subject.

Core components are the knowledge base and the inference mechanisms.

Typical Architecturei. a knowledge base (where the knowledge is stored)

i. Data plus more,

ii. an inferencing engine or reasoning engine,

iii. a working memory where the initial data and intermediate results are stored

Page 26: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge based systems

Use highly specific domain knowledge Heuristic nature of knowledge rather than

algorithmic Human ability

Separation of knowledge from how it is used Knowledge of how to infer something

Page 27: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Expert System Development Team

Knowledge Based Systems Development Team

Project Manager

ProgrammerDomain ExpertKnowledge Engineer

End-User

Expert System

Page 28: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless
Page 29: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Intelligence

?

Page 30: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Intelligent System

?

Page 31: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Artificial Intelligence

Definition ? Science that provides computers with the ability to

represent and manipulate symbols so that they can be used to solve problems not easily solved through algorithmic methods

Most methods founded on realization that intelligence is tightly coupled with knowledge

Knowledge is associated with symbols that are manipulated

Human intelligence ? Definition ?

Page 32: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

What is Artificial Intelligence ? Agreement that it is concerned with two things

Studying human thought processes Representing these processes via machines

Computers Robots

Artificial Intelligence is behaviour by a machine which if performed by a human would be considered intelligent

“Artificial Intelligence is the study of how to make computers do things at which, at the moment, people are better” (Rich & Knight 1991)

Page 33: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Typical problems addressed by KBS

Page 34: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge Representation

Programming language is a means of representing knowledge

Procedural knowledge “how to” Knowledge about how to perform some task

Declarative knowledge “what is “

Page 35: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Rule-based reasoning

One can often represent the expertise that someone uses to do an expert task as rules.

A rule means a structure which has an if component and a then component.

Page 36: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Other Examples of Rules

if - the leaves are dry, brittle and discoloured then - the plant has been attacked by red spider

mite

if - the customer closes the account then - delete the customer from the database

Page 37: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Rules

The statement, or set of statements, after the word if represents some pattern which you may observe.

The statement, or set of statements, after the word then represents some conclusion that you can draw, or some action that you should take.

IF some condition(s) exists THEN perform some action(s) IF-THEN Test-Action

Page 38: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Rule-Based Systems

A rule-based system, therefore identifies a pattern and draws conclusions about

what it means OR identifies a pattern and advises what should be

done about it OR identifies a pattern and takes appropriate action.

Page 39: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Rule-based system model

Long Term Memory

Production rule

Short Term Memory

Fact

Interpreter(Inference engine)

Conclusion

Page 40: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge Representation

Rules represent Relations Recommendations Directives Strategies

Page 41: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Knowledge Representation…Relations

IF fuel tank is empty then car is dead.

Page 42: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Recommendation

If the season is autumn And the sky is cloudy And the forecast is drizzle Then the adivce is take an umberella

Page 43: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Directive

If the car is dead And the fuel tank is empty Then the action is refuel the car

Page 44: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Strategy

If the car is dead Then the action is check the fuel tank step 1 is complete

If step1 is complete And the fuel tank is empty Then check the battery step 2 is complete

Page 45: DT228/3 Software and Knowledge Engineering Lecturer: Deirdre Lawless

Class Exercise : Rule-Based System for Tic-Tac-Toe

What rules do we need ? Rules may have tests that are satisfied at the

same time – need some mechanism for selecting right rule