Kurt Hungerford CSCI 8110. The Knowledge Machine is a knowledge representation and reasoning system that allows users to store concepts and relationships.

Post on 28-Mar-2015

217 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

The Knowledge Machine

Kurt HungerfordCSCI 8110

Bottom Line, Up Front

The Knowledge Machine is a knowledge representation and reasoning system that allows users to store concepts and relationships and then perform inferences on the knowledge base.

Overview

KR&R – Knowledge Representation and Reasoning

Description of the KM KM Applications

References

KM website: http://www.cs.utexas.edu/~mfkb/km/

Knowledge Systems Research Group website: http://www.cs.utexas.edu/users/mfkb/index.html

KM Manual [Barker K., et. al.] “A Question-Answering

System for AP Chemistry: Assessing KR&R Technologies”

The KM Algorithm (powerpoint) KM Tutorial (powerpoint)

KR&R

Knowledge Representation Reasoning More organized way for computers to

represent how people think “Computers are ignorant… Our goal

is to build knowledgeable computers – capable of conversing intelligently on many topics.”

- Knowledge Systems Research Group

Knowledge Representation

Symbols Represent objects and concepts

Example: chess Represent the board Represent the pieces Represent positioning

Knowledge Base – statements about what we know and believe

Reasoning

Inference – using current knowledge to deduce new knowledge

Example: chess What will the board look like if I make a

particular move? What will be the best response from my

opponent? Given that, what is my best response?

The Knowledge Machine

Developed by the Knowledge Systems Research Group at University of Texas Austin

Knowledge Representation Language Implemented in LISP Represents Knowledge in Frames Inference-Capable

KM Description

Object-Oriented Frames and Slots Similar to Classes and Fields

Queries Retrieve stored knowledge Perform inferences on knowledge

Frames

Object Information about the object Syntax:

(every <class> has (slot1 (expr1 expr2 …))

(slot2 (expr1 expr2 …))…)

Frames

Frames have slots Slots are how relations between

concepts are represented Predicates about the frame Slots assert what is known about the

frame

Frame Example

(every Building has (doors (front back)) (windows (w1 w2 w3 w4)) (roof (r1)))

(myHouse has (instance-of (Building)))

(myHouse has (doors (side1 side2))) (myHouse2 has (instance-of

(Building)))

Anonymous Instances

Instances that get automatically, created by the KM

(a <class>) returns an anonymous instance

Example: (a Building) (_Building15)

Queries

Knowledge Look-Up Inference Syntax

(the <slot> of <instance>)

Query Example

(the doors of *myHouse) (side1 side2 front back)

(the doors of *myHouse2) (front back)

KM’s Algorithm

An atomic value returns itself (4) -> 4

Otherwise, decompose the expression

Decomposition results in smaller expressions, which are then recursively evaluated

Ultimately, this will return a value, which is then propagated back up the recursion chain

KM’s algorithm

Different kinds of expressions decompose slightly differently Example: (if <expr1> then <expr2>) => (expr1)

returns bool1 if bool1 = true then (expr2)

(the <slot> of <expr>) => (expr) returns frame; (the <slot> of frame)

Quirks

Working with lists (it is LISP, after all) KM only computes slots on demand Unification

== for unification; /== for doesn’t unify = for testing equality; /= for testing

inequality (t) used for true; NIL used for false Any non-NIL value also evaluates to

true Output precision works in scientific

notation Delete – doesn’t undo previous

inferences

Advanced KM Abilities

Constraints Prototypes Theories Situations Simulations Metaclasses

Applications

Botany Knowledge Base Large Botany KB Used early version of KM

Project Halo Expert Tutor Store knowledge base on different

subjects Answered users’ questions and provide

explanation

Project Halo

Effort to create a “Digital Aristotle” Expert Tutor Wide variety of subjects Example: Chemistry

Attempt to develop a system capable of taking the AP Chemistry exam

AP Chemistry Application

Develop an expert system for AP Chemistry

Focused on a subset of Chemistry: Stoichiometry and equilibrium reactions Needed to restrict the domain, while still

working with a wide variety of questions System needed to deal with a wide

variety of questions Also needed to be able to provide

explanations for the answers it gave

AP Chemistry Application

Questions posed in using KM Answers used two types of

reasoning: Automatic classification – introduce new

concepts by using definitions (based off chemistry terms)

Backward chaining – goal-oriented search method (based off chemistry laws)

AP Chemistry Application

The system also provided explanations with its answers

KM logs the rules it uses during its reasoning

The Chemistry application uses that record to generate a human-readable explanation

The explanation leaves out the uninteresting parts of the reasoning process

This results in a succinct, understandable derivation of the answer

Conclusion

KM is a KR&R Language Used to capture knowledge about a

domain Used to reason about knowledge Provide an explanation of its

reasoning

Any Questions?

top related