1.2k likes | 1.39k Views
Ontologies and Level 2 Fusion: Theory and Application. Mieczyslaw (“Mitch”) M. Kokar kokar@coe.neu.edu http://www.coe.neu.edu/~kokar. Tutorial Overview. Motivation UML Representation of Ontologies OWL Representation of Ontologies Markup Querying Formal Representations and Reasoning
E N D
Ontologies and Level 2 Fusion:Theory and Application Mieczyslaw (“Mitch”) M. Kokar kokar@coe.neu.edu http://www.coe.neu.edu/~kokar
Tutorial Overview • Motivation • UML Representation of Ontologies • OWL Representation of Ontologies • Markup • Querying • Formal Representations and Reasoning • Situation Awareness: Level 2 Fusion Example • Ontology Tools • Road Ahead Cairns, Australia
Fusion: JDL Model Cairns, Australia
JDL Levels Level 0:Sub-Object Data Association and Estimation - pixels, signals Level 1:Object Refinement – object-to-track association, state estimation and prediction, target identification and type Level 2:Situation Refinement – object clustering and relational analysis (force structure, cross-force relations, communications, …) Level 3:Impact Assessment – threat intent estimation, consequence prediction, susceptibility and vulnerability assessment Level 4:Process Refinement – resource management, adaptive search and processing Cairns, Australia
Aggregation Structure Behavior Events Locations Situations Activity Capabilities Readiness Intentions Objectives Course of Action L2 Concepts (Llinas) Cairns, Australia
Unit Personnel Supplies Equipment On Hand Condition Theater Ammo Fuel Spares Clothing Food “Readiness” - traditional Stovepipe: relationships among “stovepipes” not captured, not even expressible. Can’t assess trade-offs. - David M. Snyder et. al, 1996 Cairns, Australia
“Readiness” - new • Ready for when? How long to “ready”? • Ready for what? “Ready” to perform what tasks? • Readiness for where? “Ready” for what theater or combat environment? • “Ready” which unit(s)? • Readiness is not a binary “yes” or “no”. - David M. Snyder et. al, 1996 Cairns, Australia
Readiness Relations Unit Task Region Training Time none 2004 A Counter- terrorism Waldenia B Routine 2010 Seal border Brooms Plan A C 2025 “Readiness” of a specific unit (or units) is defined as a set of relations, which in turn are functions of time. Cairns, Australia
Situations • “Readiness” is a conceptual term (not a physical object) • Need check relations to assess “readiness” • Relations can be complex (relations among relations, sub-relations) • Need to reason about relations • Need to project in time • Relations can hold “in a situation” Cairns, Australia
Situation Assessment provides understanding of combat intelligence: Composition of the enemy Unit aggregation Disposition Combat effectiveness Activities Peculiarities and limitations Situation Awareness (military) Cairns, Australia
Situation Awareness Situation Awareness (SAW) is the perception of the elements in the environment within a volume of time and space, the comprehension of their meaning, and the projection of their status in the near future. -Endsley & Garland, 2000 Cairns, Australia
Objectives • Provide a formalization of Situation Awareness (SAW) and Situation Analysis (SA). • Discuss computer infrastructure to support the implementation of SAW as formally defined • Languages • Tools • Explain the approach • Discuss SAW Scenarios for the purpose of evaluating/explaining the approach • A walk-though the proposed approach using a scenario. Cairns, Australia
Situation Assessment Situation Assessment: a process that estimates and updates that state Goal – not mentioned (relevance) Our focus: Computer support, rather than just human decision making Cairns, Australia
Situations – First Class Citizens “One of the starting points for situation semantics was the promotion of real situations from second class citizens to first class citizens.” “By a situation, then, we mean a part of reality that can be comprehended as a whole in its own right – one that interacts with other things. By interacting with other things we mean that they have properties or relate to other things.” - John Barwise, The Situation in Logic, 1989 Cairns, Australia
The Situation Awareness Problem • Simply knowing the current states of objects in a situation doesn’t provide a comprehension of what’s going on • e.g., seeing football for the first time • also need information about relations among objects (e.g, members of the same team), their history, background knowledge, context, etc. • Since the situation itself doesn’t provide them we need to derive meaningful relationships • The problem is, which ones? • The number of permutations of 100 objects is by itself greater than 10150! • Those that are meaningful are highly domain dependent Cairns, Australia
Approach • Focus onobjects and relations among objects in the world • Useontologies to specify potential objects, relations and queries • Knowledge of potential objects and relations = theories of the world • Theories are the subject of logic (well defined and understood) • They describe possibilities or potentiality (e.g., the fact that we know a theory of “car”, doesn’t mean there’s a car in this room) • Formally, objects are instantiations of theories • In logic, instantiations of theories are called models; in RDF/DAML/OWL they are called annotations Cairns, Australia
Approach (cont.) • Objects can be complex (compositions of simpler objects) • Ideally, theories and models of complex situations should be compositions of simple theories and models • Category theory provides composition operators: colimit (for theories) and limit (for models) • Data Association and Fusion = association of objects with theories and combining theories Cairns, Australia
Ontology (Webster) • ontology 1. the branch of metaphysics dealing with the nature of being, reality or ultimate substance (cf. phenomenology) 2. particular theory about being or reality • phenomenology 1. the philosophical study of phenomena, as distinguished from ontology 2. the branch of a science that classifies and describes its phenomena without any attempt at metaphysical explanation • metaphysics 1. the branch of philosophy that deals with first principles and seeks to explain the nature of being or reality (ontology); it is closely associated with the study of nature of knowledge (epistemology) Cairns, Australia
Ontology (cont.) • An explicit specification of a conceptualization: the objects, concepts, and other entities that are assumed to exist in some area of interest and the relationships that hold among them (Genesereth & Nilsson, 1997) • Definitions associate the names of entities in the universe of discourse (e.g., classes, relations, functions, or other objects) with human-readable text describing what the names mean, and formal axioms that constrain the interpretation and well-formed use of these terms. A statement of a logical theory. (Gruber) • An agent commits to an ontology if its observable actions are consistent with the definitions in the ontology (knowledge level). • A common ontology defines the vocabulary with which queries and assertions are exchanged among agents. Cairns, Australia
Representing Ontologies • Classes • Objects • Sub-classes • Relations (properties) • Sub-properties • Constraints Cairns, Australia
UML: The Unified Modeling Language • Graphics reveal data. • Edward TufteThe Visual Display of Quantitative Information, 1983 • 1 bitmap = 1 megaword. • Anonymous visual modeler • The UML is a graphical language for • specifying • visualizing • constructing • documenting the artifacts of software systems Cairns, Australia
UML Model Elements • Class/object • Relationship (name, role) • generalization • aggregation • association • Dependency • Cardinality constraints • More … Cairns, Australia
Example From: Cris Kobryn Cairns, Australia
Legal Instantiations From: Cris Kobryn Cairns, Australia
Illegal Instantiations :Carbon :Carbon :Carbon :Hydrogen :Hydrogen :Carbon :Carbon :Carbon Cairns, Australia
UML: Example Cairns, Australia
OWL vs. Other Languages • UML – great for visualization and human processing • UML – not so great for • Machine processing • Exchange of information among machines (or agents) • XML – great for machine processing and exchange, but no semantics • RDF (Resource Description Framework) – provides (some) semantics • RDFS (schema) – much more semantics • OWL (Web Ontology Language) – adds more expressiveness Cairns, Australia
Language Layering OWL-R OWL Rules (in progress) Web Ontology Language OWL RDF Schema RDFS RDF Resource Description Framework XML Extensible Markup Language Note: The layering of OWL on top of RDFS is not strict. Cairns, Australia
OWL Tutorial The following group of slides are from: OWL Tutorial A Quick Introduction toOWL Web Ontology Language by Roger L. Costello David B. Jacobs The MITRE Corporation (The creation of this tutorial was sponsored by DARPA) Cairns, Australia
Costello/Jacobs What is an Ontology? • An ontology answers questions that are implicit in your data. 4 How many guns/people are registered in a gun license? 1 <GunLicense> <registeredGun> <Gun> <serial>ABCD</serial> </Gun> </registeredGun> <holder> <Person> <driversLicenseNumber>ZXYZXY</driversLicenseNumber> </Person> </holder> </GunLicense> How many guns can have this serial number? Can this gun be registered in other gun licenses? 2 How many people can have this driver's license number? 3
Costello/Jacobs Gun License Ontology answers the Questions! 4 A gun license registers one gun to one person. <GunLicense> <registeredGun> <Gun> <serial>ABCD</serial> </Gun> </registeredGun> <holder> <Person> <driversLicenseNumber>ZXYZXY</driversLicenseNumber> </Person> </holder> </GunLicense> 1 Only one gun can have this serial number. A gun can be registered in only one gun license. 2 Only one person can have this driver's license number. 3
Costello/Jacobs Robber drops gun while fleeing! First of all a robbery takes place. The robber drops his gun while fleeing. This report is filed by the investigating officers: <RobberyEvent> <date>...</date> <description>...</description> <evidence> <Gun> <serial>ABCD</serial> </Gun> </evidence> <robber> <Person /> <!-- an unknown person --> </robber> </RobberyEvent>
Costello/Jacobs Speeder stopped Subsequently a car is pulled over for speeding. The traffic officer files this report electronically while issuing a ticket: <SpeedingOffence> <date>...</date> <description>...</description> <speeder> <Person> <name>Fred Blogs</name> <driversLicenseNumber>ZXYZXY</driversLicenseNumber> </Person> </speeder> </SpeedingOffence> Cairns, Australia
Costello/Jacobs The speeder owns a gun with the same serial number as the robbery gun! At police headquarters (HQ), a computer analyzes each report as it is filed. The computer uses the driver's license information to look up any other records it has about Fred Blogs (the speeder) and discovers this gun license: <GunLicense> <registeredGun> <Gun> <serial>ABCD</serial> </Gun> </registeredGun> <holder> <Person> <driversLicenseNumber>ZXYZXY</driversLicenseNumber> </Person> </holder> </GunLicense>
Costello/Jacobs Case Solved? • Not yet! These questions must be answered before the speeder can be arrested as the robbery suspect: • Can multiple guns have the same serial number? • If so, then just because Fred Blogs owns a gun with the same serial number as the robbery gun does not mean it was his gun that was used in the robbery. • Can multiple people have the same driver's license number? • If so, then the gun license information may be for someone else. • Can a gun be registered in multiple gun licenses? • If so, then the other gun licenses may show the holder of the gun to be someone other than Fred Blogs. • Can a gun license have multiple holders of a registered gun? • If so, then there may be another gun license document (not available at the police HQ) which shows the same registered gun but with a different holder. • The Gun License OWL Ontology provides the information needed to answer these questions! 1 2 3 4
Costello/Jacobs Can multiple guns have the same serial number? This OWL rule tells the computer at police HQ that each gun is uniquely identified by its serial number: <owl:InverseFunctionalProperty rdf:ID="serial"> <rdfs:domain rdf:resource="Gun"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/> </owl:InverseFunctionalProperty> 1 Only one gun can have this serial number. <Gun> <serial>ABCD</serial> </Gun>
Costello/Jacobs Can multiple people have the same driver's license number? The following OWL rule tells the computer that a driver's license number is unique to a Person: <owl:InverseFunctionalProperty rdf:ID="driversLicenseNumber"> <rdfs:domain rdf:resource="Person"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/> </owl:InverseFunctionalProperty> 2 Only one person can have this driver's license number. <Person> <driversLicenseNumber>ZXYZXY</driversLicenseNumber> </Person>
Costello/Jacobs Can a gun be registered in multiple gun licenses? The next OWL rule tells the computer that the registeredGun property uniquely identifies a GunLicense, i.e., each gun is associated with only a single GunLicense: <owl:InverseFunctionalProperty rdf:ID="registeredGun"> <rdfs:domain rdf:resource="GunLicense"/> <rdfs:range rdf:resource="Gun"/> </owl:InverseFunctionalProperty> <GunLicense> <registeredGun> <Gun> <serial>ABCD</serial> </Gun> </registeredGun> ... </GunLicense> A gun can be registered in only one gun license. 3
Costello/Jacobs Can a gun license have multiple holders of a registered gun? The police computer uses the following OWL rule to determine that the gun on the license is the same gun used in the robbery. This final rule seals the speeder's fate. It tells the computer that each GunLicense applies to only one gun and one person. So, there is no doubt that the speeder is the person who owns the gun: <owl:Class rdf:ID="GunLicense"> <owl:intersectionOf rdf:parseType="Collection"> <owl:Restriction> <owl:onProperty rdf:resource="#registeredGun"/> <owl:cardinality>1</owl:cardinality> </owl:Restriction> <owl:Restriction> <owl:onProperty rdf:resource="#holder"/> <owl:cardinality>1</owl:cardinality> </owl:Restriction> </owl:intersectionOf> </owl:Class> 4 A gun license registers one gun to one person. <GunLicense> <registeredGun> ... <holder> ... </GunLicense>
Costello/Jacobs Bridging the Terminology Gap using OWL • A key problem in achieving interoperability is to be able to recognize that two pieces of data are talking about the same thing, even though different terminology is being used. • The following slides presents an example to show how OWL may be used to bridge the "terminology gap". • Thanks to Jim Farrugia for the camera info! Cairns, Australia
Costello/Jacobs Interested in Purchasing a Camera • Query: "I am interested in purchasing a camera with a 75-300mm zoom lens, that has an aperture of (at least) 4.5-5.6, and a shutter speed that ranges from 1/2000 sec. to 10 sec. (or better)." • This query can be expressed in XML as: <Camera> <optics> <Lens> <size>75-300mm zoom</size> <aperture>4.5-5.6 (or better)</aperture> </Lens> </optics> <shutter-speed>1/2000 sec. to 10 sec. (or better)</shutter-speed> </Camera> Thus, the query may be recast as: "Find all XML documents which overlap with the above XML document."
Costello/Jacobs Is this document relevant? A Web Bot is launched to find camera info. The Bot finds this document at a Web site: <PhotographyStore rdf:ID="Hunts" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <store-location>Malden, MA</store-location> <phone>617-555-1234</phone> <catalog rdf:parseType="Collection"> <SLR rdf:ID="Olympus-OM-10"> <optics> <Lens> <focal-length>75-300mm zoom</focal-length> <f-stop>4.0-4.5</f-stop> </Lens> </optics> <shutter-speed>1/2000 sec. to 10 sec.</shutter-speed> <cost>starting at: $325 USD</cost> </SLR> ... </catalog> </PhotographyStore> Is this document relevant? (Note: SLR = Single Lens Reflex)
Costello/Jacobs A Match? <PhotographyStore rdf:ID="Hunts" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <store-location>Malden, MA</store-location> <phone>617-555-1234</phone> <catalog rdf:parseType="Collection"> <SLR rdf:ID="Olympus-OM-10"> <optics> <Lens> <focal-length>75-300mm zoom</focal-length> <f-stop>4.0-4.5</f-stop> </Lens> </optics> <shutter-speed>1/2000 sec. to 10 sec.</shutter-speed> <cost>starting at: $325 USD</cost> </SLR> </catalog> </PhotographyStore> <Camera> <optics> <Lens> <size>75-300mm zoom</size> <aperture>4.5-5.6 </aperture> </Lens> </optics> <shutter-speed>1/2000 sec. to 10 sec.</shutter-speed> </Camera> Match? To determine if there is a match, these questions must be answered: 1. What's the relationship between "SLR" and "Camera"? 2. What's the relationship between "focal-length" and "size"? 3. What's the relationship between "f-stop" and "aperture"?
Costello/Jacobs Relationship between SLR and Camera? This OWL rule (from the Camera Ontology) tells the Web Bot that a SLR is a type of Camera: <owl:Class rdf:ID="SLR"> <rdfs:subClassOf rdf:resource="#Camera"/> </owl:Class> Kokar
Costello/Jacobs Relationship between focal-length and lens size? This OWL rule tells the Web Bot that focal-length is equivalent to lens size: <owl:DatatypeProperty rdf:ID="focal-length"> <owl:equivalentProperty rdf:resource="#size"/> <rdfs:domain rdf:resource="#Lens"/> <rdfs:range rdf:resource="&xsd;#string"/> </owl:DatatypeProperty> Cairns, Australia
Costello/Jacobs Relationship between f-stop and aperture? This OWL rule tells the Web Bot that f-stop is equivalent to aperture: <owl:DatatypeProperty rdf:ID="f-stop"> <owl:equivalentProperty rdf:resource="#aperture"/> <rdfs:domain rdf:resource="#Lens"/> <rdfs:range rdf:resource="&xsd;#string"/> </owl:DatatypeProperty> The Web Bot now recognizes that the XML document it found at the Web site - is talking about Cameras, and it - does show the lens size, and it - does show the aperture for the camera. Further, the aperture exceeds the minimum value specified by the query (4.5-5.6), and the shutter speed and lens size criteria is met. Thus, the Web Bot has determined that this Olympus OM-10 SLR instance is a match for the query!
Costello/Jacobs Summary: Interoperability despite terminology differences! • The previous example demonstrated how the Web Bot was able to dynamically utilize the XML document from the Web site, despite the fact that the XML document used terminology different than was used to express the query. This interoperability was achieved through the use of the OWL Camera Ontology! Cairns, Australia
Costello/Jacobs Is this document relevant? A Web Bot is launched to find camera info. The Bot finds this document at a Web site: <PhotographyStore rdf:ID="RJs-SpecialtyCameras" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <store-location>Boston, MA</store-location> <phone>617-555-4321</phone> <catalog rdf:parseType="Collection"> <Large-Format rdf:ID="AnselAdams-LF4x5"> ... </Large-Format> </catalog> </PhotographyStore> By consulting the Camera Ontology, the Web Bot can immediately dismiss this document, without even examining the contents of <Large-Format>. The next slides shows how. Cairns, Australia
Costello/Jacobs Camera Ontology This class hierarchy shows that Large-Format is a type of Camera, and has two properties, optics (whose value is a Lens) and shutter-speed (whose value is a string): Here's the hierarchy for the Lens class: Kokar
Costello/Jacobs No Zoom Lens for Large-Format Cameras! This class hierarchy shown here has been modified to show that Large-Format cameras do not support zoom lenses: SLR, Large-Format, and Digital all inherit the Camera properties. However, Large-Format restricts the allowable values of optics to just Micro, Macro, or Normal. Kokar