270 likes | 396 Views
The Knowledge Machine (KM) is an innovative knowledge representation and reasoning system developed by the Knowledge Systems Research Group at the University of Texas at Austin. It allows users to store concepts and relationships in a structured format, enabling powerful inference capabilities. The KM utilizes frames and slots to represent knowledge similarly to object-oriented programming, facilitating efficient querying and reasoning. Applications range from botany to advanced chemistry, making it a versatile tool for intelligent tutoring systems that provide explanations and answers in various domains.
E N D
Kurt Hungerford CSCI 8110 The Knowledge Machine
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))) • (myHousehas (instance-of (Building))) • (myHousehas (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