2.01k likes | 3.59k Views
Knowledge Representation Chapter 10. Outline. KR Introduction Ontological Engineering Categories and Objects Actions, Situations, and Events Mental Events and Mental Objects Reasoning Systems for Categories Reasoning with Default Information Truth Maintenance Systems Bio-Ontologies.
E N D
Outline • KR Introduction • Ontological Engineering • Categories and Objects • Actions, Situations, and Events • Mental Events and Mental Objects • Reasoning Systems for Categories • Reasoning with Default Information • Truth Maintenance Systems • Bio-Ontologies 2
KR Introduction • General problem in Computer Science • Solutions = Data Structures • words • arrays • records • list • More specific problem in AI • Solutions = knowledge structures • lists • trees • procedural representations • logic and predicate calculus • rules • semantic nets and frames • scripts 3
Kinds of Knowledge Things we need to talk about and reason about; what do we know? • Objects • Descriptions • Classifications • Events • Time sequence • Cause and effect • Relationships • Among objects • Between objects and events • Meta-knowledge Distinguish between knowledge and its representation 4
Representation Mappings Reasoning Programs Facts Internal Representation • Knowledge Level • Symbol Level • Mappings are not one-to-one • Never get it complete or exactly right English Representation 5
Ontological Engineering • Like knowledge engineering but applies to general-purpose knowledge bases • Ultimate goal is to represent everything in the world!! • Result is an upper ontology Anything/Root AbstractObjects GeneralizedEvents Sets Numbers RepresentationalObjects Interval Places PhyscialObjects Processes Categories Sentences Measurements Moments Things Stuff Animals Agents Solid Liquid Gas Times Weights 6 Humans
Special- and General-purpose Ontologies • Special-purpose ontology: • Designed to represent a specific domain of knowledge; • genetics (GO) • immune system (IMGT) • mathematics (Tom Gruber) • General-purpose ontology: • Should be applicable in any special-purpose domain • Unifies different domains of knowledge • Upper ontology provides highest level framework - all other concepts follow 7
Cyc Upper Ontology • Cycorp released 3,000 upper-level concepts into public domain • Cyc Upper Ontology satisfies two important criteria; • It is universal: Every concept can be linked to it • It is articulate: Distinctions are necessary and sufficient for most purposes 8
Categories - Representation • Two choices for representation: • Predicate • Basketball(b) • Object • Basketballs • Member(b, Basketballs) • Subset(Basketballs, Balls) 9
Categories - Organizing • Inheritance: • All instances of the category Food are edible • Fruit is a subclass of Food • Apples is a subclass of Fruit • Therefore, Apples are edible • The Class/Subclass relationships among Food, Fruit and Apples is a taxonomy 10
Categories - Partitioning • Disjoint: The categories have no members in common • Exhaustive Decomposition: Every member of the category is included in at least one of the subcategories • Partition: Disjoint exhaustive decomposition 11
Categories - Partitioning Disjoint({Animals,Vegetables}) 12
Categories - Partitioning Disjoint({Animals,Vegetables}) Disjoint(s) <=> (c1,c2 c1s c2s c1c2 Intersection(c1,c2) = {}) 13
Categories - Partitioning Disjoint({Animals,Vegetables}) Disjoint(s) <=> (c1,c2 c1s c2s c1c2 Intersection(c1,c2) = {}) ExhaustiveDecomposition({Americans,Canadians,Mexicans},NorthAmericans}) 14
Categories - Partitioning Disjoint({Animals,Vegetables}) Disjoint(s) <=> (c1,c2 c1s c2s c1c2 Intersection(c1,c2) = {}) ExhaustiveDecomposition({Americans,Canadians,Mexicans},NorthAmericans}) ExhaustiveDecomposition(s,c) (i ic c2 c2s ic2) 15
Categories - Partitioning Disjoint({Animals,Vegetables}) Disjoint(s) <=> (c1,c2 c1s c2s c1c2 Intersection(c1,c2) = {}) ExhaustiveDecomposition({Americans,Canadians,Mexicans},NorthAmericans}) ExhaustiveDecomposition(s,c) (i ic c2 c2s ic2) Partition({Males,Females},Animals) 16
Categories - Partitioning Disjoint({Animals,Vegetables}) Disjoint(s) <=> (c1,c2 c1s c2s c1c2 Intersection(c1,c2) = {}) ExhaustiveDecomposition({Americans,Canadians,Mexicans},NorthAmericans}) ExhaustiveDecomposition(s,c) (i ic c2 c2s ic2) Partition({Males,Females},Animals) Parition(s,c) Disjoint(s) ExhaustiveDecomposition(s,c) 17
Categories - More • PartOf PartOf(Bucharest,Romania) PartOf(Romania,EasternEurope) PartOf(EasternEurope,Europe) PartOf(Europe,Earth) • Composite Objects Biped(a) c1,c2,b Leg(c1) Leg(c2) Body(b) PartOf(c1,a) PartOf(c2,a) PartOf(b,a) Attached(c1,b) Attached(c2,b) c1c2 [c3 Leg(c3) PartOf(c3,a) (c3=c1 c3=c2)] 18
Categories – And More • Count Nouns and Mass Nouns • How many aardvarks? How many butters!?! x Butter PartOf(y,x) y Butter • Intrinsic and Extrinsic Properties • Intrinsic properties belong to the very substance of the object; e.g. flavor, color, density, boiling point, etc. • Extrinsic properties change if the object is changed (cut in half); e.g. weight, length, shape, etc. 19
Situation Calculus • The states resulting from executing actions • Ontology: • Situations: logical terms describing initial situation and all situations that result from executing actions on a given situation Result(a,s) • Fluents: functions and predicates that may be different in different situations Age(Wumpus,S0) is Wumpus age in situation S0 • Atemporal or eternal: functions and predicates that are constant across all situations Gold(G1) 21
Situation Calculus – Actions • Each action described by two axioms: • Possibility Axiom: Preconditions Poss(a,s) • Effect Axiom: Poss(a,s) changes that result from taking action 22
Situation Calculus - Example Possibility Axioms: At(Agent,x,s) Adjacent(x,y) Poss(Go(x,y),s). Gold(g) At(Agent,x,s) At(g,x,s) Poss(Grab(g),s). Holding(g,s) Poss(Release(g),s). Effect Axioms: Poss(Go(x,y),s) At(Agent,y,Result(Go(x,y),s). Poss(Grab(g),s) Holding(g,Result(Grab(g),s)). Poss(Release(g),s) Holding(g,Result(Grab(g),s)). 23
Go for the Gold! GOAL: Bring the gold from [1,2] to [1,1] At(Agent,[1,1],S0) At(G1,[1,2],S0). Holding(G1,S0). Gold(G1). Adjacent([1,1],[1,2]) Adjacent([1,2],[1,1]). Do It: Go([1,1],[1,2]). Result: At(Agent,[1,2],Result(Go([1,1],[1,2]),S0)). Now, can I grab the gold? Grab(G1). 24
Go for the Gold! GOAL: Bring the gold from [1,2] to [1,1] At(Agent,[1,1],S0) At(G1,[1,2],S0). Holding(G1,S0). Gold(G1). Adjacent([1,1],[1,2]) Adjacent([1,2],[1,1]). Do It: Go([1,1],[1,2]). Result: At(Agent,[1,2],Result(Go([1,1],[1,2]),S0)). Now, can I grab the gold? Grab(G1). 25
Go for the Gold! GOAL: Bring the gold from [1,2] to [1,1] At(Agent,[1,1],S0) At(G1,[1,2],S0). Holding(G1,S0). Gold(G1). Adjacent([1,1],[1,2]) Adjacent([1,2],[1,1]). Do It: Go([1,1],[1,2]). Result: At(Agent,[1,2],Result(Go([1,1],[1,2]),S0)). Now, can I grab the gold? Grab(G1). 26
Go for the Gold! GOAL: Bring the gold from [1,2] to [1,1] At(Agent,[1,1],S0) At(G1,[1,2],S0). Holding(G1,S0). Gold(G1). Adjacent([1,1],[1,2]) Adjacent([1,2],[1,1]). Do It: Go([1,1],[1,2]). Result: At(Agent,[1,2],Result(Go([1,1],[1,2]),S0)). Now, can I grab the gold? Grab(G1). 27
The Frame Problem Result: At(Agent,[1,2],Result(Go([1,1],[1,2]),S0)). Now, can I grab the Gold? Grab(G1). 28
The Frame Problem Result: At(Agent,[1,2],Result(Go([1,1],[1,2]),S0). Now, can I grab the Gold? Grab(G1). What in the knowledge base allows me to go from my Result (above) to Grab(G1)? 29
The Frame Problem Result: At(Agent,[1,2],Result(Go([1,1],[1,2]),S0). Now, can I grab the Gold? Grab(G1). What in the knowledge base allows me to go from my Result (above) to Grab(G1)? nothing 30
The Frame Problem • How do we represent all the things in the world that stay the same? • Represent all things at all situations; the representational frame problem • Project the results of a sequence of actions; the inferential frame problem 31
Representational Frame Problem • Successor-State Axiom: Action is possible (Fluent is true in result state Action’s effect made it true It was true before and action left it alone). • Truth value of each fluent in the next state depends on action and truth value in the current state Poss(a,s) (At(Agent,y,Result(a,s)) a = Go(x,y) (At(Agent,y,s) a Go(y,z))). 32
Time and Event Calculus • Event Calculus based on points in time • Fluents hold at points in time as opposed to holding in situations “A fluent is true at a point in time if the fluent was initiated by an event at some time in the past and was not terminated by an intervening event.” 33
Event Calculus • Initiates(e,f,t) and Terminates(w,f,t) • Event Calculus Axiom: T(f,t2) e,t Happens(e,t) Initiates(e,f,t) (t<t2) Clipped(f,t,t2) Clipped(f,t,t2) e,t Happens(e,t1) Terminates(e,f,t1) (t < t1) (t1 < t2) 34
Event Calculus - more • Can be extended to handle; • indirect effects • continuous change • nondeterministic effects • causal constraints • . . . 35
Generalized Events • Combines aspects of space and time calculus • Allows representation of events occurring in a space-time continuum World War II is an event that happened in various geographic locations during a specific period of time within the 20th century. 36
Processes • Discrete Events: the event is a whole and a part of the event is no longer the same event • Processes can include subintervals; a part of a plane flight is still a member of the Flying class (aka liquid events) • Stated more precisely: “Any subinterval of a process is also a member of the same process category.” 37
Intervals • Moment: has temporal duration of zero • Extended Interval: has temporal duration of greater than zero Partition({Moments,ExtendedIntervals},Intervals) Member(i,Moments) Duration(i) = Seconds(0). 38
Intervals Ontology Meet(i,j) Time(End(i)) = Time(Start(j)). Before(i,j) Time(End(i)) < Time(Start(j)). After(j,i) Before(i,j). During(i,j) Time(Start(j)) Time(Start(i)) Time(End(i)) Time(End(j)). Overlap(i,j) k During(k,i) During(k,j). 39
Mental Events and Mental Objects • Knowledge about beliefs, specifically about those beliefs held by an agent • “Which agent knows about the geography of Maine?” • Provides an agent the ability to reason about beliefs of agents • However, need to define propositional attitudes, such as Believes, Knows and Wants as relations where the second argument is referentially opaque (no substitution of equal terms) 40
Reasoning Systems for Categories • Categories are KR building blocks • Two primary systems for reasoning: • Semantic Networks • Graphical aids for visualizing knowledge • Mechanisms for inferring properties of objects based on category membership • Description Logics • Formal language for constructing and combining category definitions • Algorithms for classifying objects and determining subsumption relationships 41
Semantic Networks • Graphical notation with underlying logical representation • A form of logic, but not FOL • Capable of representing objects, relations, quantification, … • Convenient representation of inheritance • Multiple Inheritance (sometimes) • Inverse links • Extendable using procedural attachments 42
Semantic Networks - More • Can only express binary relationships – making it more difficult to express n-ary predicates; e.g. Fly(Shankar,NewYork,NewDelhi,Monday) • Negation, disjunction, nested function symbols, and existential quantification are missing • Some SNs include procedural attachments • Represents default values – assertions may be overridden by more specific values 43
Semantic Networks Mammals SubsetOf Persons Legs 2 HasMother SubsetOf SubsetOf Females Males SisterOf Legs Mary 1 John 44
Description Logics • Notations to make it easier to describe definitions and properties of categories • Taxonomic structure is organizing principle • Subsumption: Determine if one category is a subset of another • Classification: Determine the category in which an object belongs • Consistency: Determine if membership criteria are logically satisfiable 45
Description Logics • CLASSIC was one of first languages (Borgida, et al, 1989) • “All bachelors are unmarried adult males.” • DL: Bachelor = And(Unmarried,Adult,Male). • FOL: Bachelor(x) Unmarried(x) Adult(x) Male(x) 46
Description Logics • What does this DL statement say? And(Man,AtLeast(3,Son), AtMost(2,Daughter), All(Son,And(Unemployed,Married, All(Spouse,Doctor))), All(Daughter,And(Professor, Fills(Department,Physics,Math)))). 47
Description Logics - More • Emphasis on tractability of inference • Inference happens by; • Describe the problem instance • Asserting the instance into the KB to be handled by the subsumption apparatus • FOL cannot predict solution time • DL solve in time polynomial in size of KB • DLs usually lack disjuntion and negation (for time/speed considerations) 48
Current Description Logic • DAML+OIL • DARPA Agent Mark-up Language + Ontology Inference Language (OIL) • Comes out of DARPA initiative • OIL from University of Manchester • http://www.w3.org/TR/daml+oil-reference • OWL • Ontology Web Language • A language for the semantic web • “Next generation” DAML+OIL • Flavors: OWL-Lite, OWL-DL and OWL (full) • W3C recommendation as of Feb 10, 2004 • http://www.w3.org/TR/2004/REC-owl-features-20040210/ 49
Reasoning with Default Information • Open and Closed worlds • Open World: Information provided is not assumed to be complete, therefore inferences may result in sentences whose truth value is unknown • Closed World: Information provided is assumed complete, therefore ground sentences not asserted to be true are assumed false • Negation as Failure: A negative literal, not P, can be “proved” true if the proof of P fails 50