Knowledge Representation CIS 479/579 Bruce R. Maxim UM-Dearborn 9/22/2018
Representation Set of syntactic and semantic conventions which make it possible to describe things Syntax specific symbols allowed and rules allowed Semantics how meaning is associated with symbol arrangements allowed by syntax 9/22/2018
Representation Types Relational databases Constraints Predicate logic Concept hierarchies Semantic networks Frames Conceptual Dependency Scripts 9/22/2018
Types of Knowledge Objects Events Performance META Knowledge both physical & concepts Events usually involve time maybe cause & effect relationships Performance how to do things META Knowledge knowledge about how to use knowledge 9/22/2018
Stages of Knowledge Use Acquisition structure of facts integration of old & new knowledge Retrieval (recall) roles of linking and chunking means of improving recall efficiency 9/22/2018
Stages of Knowledge Use Reasoning Formal reasoning deductive theorem proving Procedural Reasoning expert system Reasoning by Analogy very hard for machines Generalization reasoning from examples Abstraction simplification 9/22/2018
Knowledge Representation Issues Grain size or resolution detail Scope or domain Modularity Understandability Explicit versus implicit knowledge Procedural versus declarative knowledge 9/22/2018
Advantages Declarative representation Procedural representation Store each fact once Easy to add new facts Procedural representation Easy to represent "how to do things" Easy to represent any knowledge not fitting declarative format Relatively easy to implement heuristic stuff on doing thing efficiently 9/22/2018
Attributes of Good KR Schemes Representational Adequacy works for all knowledge in problem domain Inferential Adequacy provides ability to manipulate structures to desire new structures ability to incorporate additional information in knowledge structures to help focus attention of promising new directions 9/22/2018
Attributes of Good KR Schemes Acquisitional Efficiency easy to add new knowledge Semantic Power Supports truth theory Provides for constraint satisfaction Can cope with incomplete or uncertain knowledge Contains some commonsense reasoning capability 9/22/2018
Broad KR Questions Are there properties of objects so basic that they occur in every domain? If so what are they? At what level should knowledge be represented? Is there a good set of primitives into which all knowledge can be broken down? How can the relevant parts of a large knowledge base be accessed when needed? 9/22/2018
State Space Representation How can individual objects and facts be represented? How do you combine individual object descriptions to form a representation of the complete problem state? How can the sequences of problem states that arise be represented efficiently? 9/22/2018
Two Approaches Use complete object descriptions that include relations to other objects in the environment Use predicate logic to express these kind of relations on(plant,table). under(table,window). in(table,room). 9/22/2018
Frame Problem What (or how much) should be stored at each node? How do you distinguish between facts that change from facts that do not change between frames? Stated and another way, how do you decide how much information to record as you move from problem state to problem state? 9/22/2018
Frame Problem The naive approach is to store complete state descriptions and make changes to them each time a node is updated Disadvantage takes time to do descriptions can become large what happens when algorithm needs to backtrack and undo changes? 9/22/2018
Frame Problem Better solution is to not physically modify the state description but merely record a list of changes that should be made at this node To get to the current state, you start at the initial state and then apply the changes recorded Backtracking will be easy, but state description is complicated 9/22/2018
Frame Problem Another alternative would be to modify the state description but mark the changes made so they can be undone when backtracking is required If temporal relations (time) are involved things will become regardless of the approach used 9/22/2018
Searching Rule-bases Sequential search of a large rule-base is time consuming and should be avoided if possible Making use of rule indices and hash tables would improve the efficiency Using variables in rules can reduce the number of rules 9/22/2018