Title: An Application of Semantic Web Technologies to Situation Awareness
1An Application of Semantic Web Technologies to
Situation Awareness
An Application of Semantic Web Technologies to
Situation Awareness
- Christopher J. Matheus
- Versatile Information Systems, Inc.
- Mieczyslaw M. Kokar, Kenneth Baclawski
- Northeastern University
- Jerzy A. Letkowski
- Middle New England College
www.vistology.com
2Overview
- Situation Awareness
- Ontologies and Rules
- Situation Awareness Assistant SAWA
- A Simple Scenario
- Lessons Learned
3Our Problem Domain
- Formal yet Practical Applications of Situation
Awareness - Situation Awareness (SAW)
- an understanding of whats going on in an
evolving situatione.g. supply logistics,
financial markets, battlefields - involves fusion of object-level data from
multiple sources into meaningful higher-order
relations - highly context dependent and goal directed (i.e.,
requires domain knowledge) - Requirements for effective SAW apps
- domain knowledge about relevant objects and their
properties - specification of conditions that define
higher-order relations - a means for reasoning about time-dependent sensor
information in the context of the given domain
knowledge - much in common with SW goals of knowledge
representation and processing but with real-time
and uncertainty concerns
4AFRL Research Focus
- US AFRL supported effort to formalize and
automate the identification and monitoring of
relevant relations in evolving situations - Phase I Formalization of SAW
- Formal definition of situation awareness using
Speckware and DAML/OWL - Phase II SAW Assistant (SAWA)
- Prototype system to support the detection and
monitoring of relevant relations
5General Methodology
- Working with Subject Matter Experts we first
- develop ontologies for describing domain-specific
object classes and properties - develop rules to define complex relations that
are grounded in observable data annotated by the
ontologies - We then
- populate an inference engine with ontologies and
domain rules - establish an input stream of events describing
object observations annotated using the domain
ontologies - use the inference engine to process the event
stream and detect evolution of higher-order
relations
6Ontologies and Rules
- Need ways to represent domain knowledge
concerning - Situation Objects, their Attributes and their
inter-Relations - OWL provides a solid basis for these needs
- Formal semantics facilitates reasoning with
generic reasoners (e.g. Jess with OWL axioms) - Reuse of existing of tools (parsers, consistency
checkers, etc) - Main drawback limited representational power
- SWRL used to represent more complex relations
- Permits representation of more complex
relationships - e.g. there are two Units U1 and U2 in-region R
AND U1 is a member-of a Force F1 AND Unit U2 is a
member-of Force F2 AND F1 is not equal to F2 - Has advantage of formal semantics defined as an
extension to the semantics of OWL DL - Easily converted into Jess rules using XSLT
7SAW Core Ontology
8SAWA Architecture
SAWA
Knowledge Management
Runtime System
ConsVISor
GUI
SMC
RMA
Consistency Checker
OWL SWRL
domain knowledge
Protégé
goals and queries
RuleVISor
TDB
EMC
SWRL Editor
Ontology Editor
event annotations
9SAWA Knowledge Management
10SAWA Runtime System
- SMC Situation Management Comp.
- EMC Event Management Comp.
- TDB Triples Database
- RMA Relation Monitoring Agent
- GUI Graphical User Interface
- Java Components (RMI)
- RMA and TDB
- Based on Jess inference engine
- Store RDF triples in working memory
- Includes OWL axioms for inferring implicit
triples - Plus procedural attachments for SWRL built-ins
- TDB supports OQL and What-if reasoning
SMC
TDB
RMA
GUI
EMC
events
ontologies and rules
11SAWA Runtime GUI
12Supply Line Scenario
- Simple Scenario hasSupplyLine
- defines a unit to be in supply if a series of
roads can be traced from the unit to a supply
station through regions under friendly control
13Simple Supply Logistics Ontology
14hasSupplyLine Rule Set
ltrule rlab"has Supply Line"gt ltbodygt
lthslinRegion sub"?unit"
data"?region"/gt lthslisSuppliable
sub"?region" data"true"/gt lt/bodygt
ltheadgt lthslhasSupplyLine sub"?unit"
data"true"/gt lt/headgt lt/rulegt ltrule
rlab"isSuppliable"gt ltbodygt
lthslhasSupplyStation sub"?region"
data"true"/gt lthslunderFriendlyControl
sub"?region" data"true"/gt lt/bodygt
ltheadgt lthslisSuppliable sub"?region"
data"true"/gt lt/headgt lt/rulegt ltrule
rlab"isSuppliable2"gt ltbodygt
lthslconnects sub"?road"
data"?region1"/gt lthslconnects
sub"?road" data"?region2"/gt
ltswrlbnotEqual arg1"?region1"
arg2"?region2"/gt lthslisPassable
sub"?road" data"true"/gt
lthslisSuppliable sub"?region2" data"true"/gt
lt/bodygt ltheadgt lthslisSuppliable
sub"?region1" data"true"/gt lt/headgt
lt/rulegt
ltrule rlab"underFriendlyControl"gt ltbodygt
lthslinRegion sub"?unit"
data"?region"/gt lthslmemberOf
sub"?unit" data"?force"/gt
lthslFriendlyForce ind"?force"/gt lt/bodygt
ltheadgt lthslunderFriendlyControl
sub"?region" data"true"/gt lt/headgt
lt/rulegt ltrule rlab"isPassable"gt ltbodygt
lthslconnects sub"?road"
data"?regionA"/gt lthslconnects
sub"?road" data"?regionB"/gt
ltswrlbnotEqual arg1"?regionA"
arg2"?regionB"/gt lthslunderFriendlyControl
sub"?regionA" data"?force1"/gt
lthslunderFriendlyControl sub"?regionB"
data"?force2"/gt lt/bodygt ltheadgt
lthslisPassable sub"?road" data"true"/gt
lt/headgt lt/rulegt ltrule rlab"hasSupplyStation"gt
ltbodygt lthslinRegion sub"?X"
data"?region"/gt lthslSupplyStation
ind"?X"/gt lt/bodygt ltheadgt
lthslhasSupplyStation sub"?region"
data"true"/gt lt/headgt lt/rulegt
15SAWA Runtime GUI
16Lessons Learned
- OWL is very useful for base ontology
representation - Pros tools, formal semantics, extensible,
triples-based - Cons triples-based (binary predicates), lack of
complex implication - Rules on top of OWL is an effective way to
utilize the benefits of OWL while overcoming some
of its limitations - Limitations of SWRL
- restricted to binary predicates - not always
natural and work around is cumbersome - built-ins defined as axioms but are needed as
functions - need gensym() and assert() to generate and assert
new entities - need for negation as failure
- syntax not intended for human processing
- SWRL is too low level of a language for knowledge
engineering even with a graphical editor - need higher-level language(s) that can be
automatically translated to low-level triples
representation
17www.vistology.com