A Semantic Infrastructure For A Knowledg
A Semantic Infrastructure For A Knowledg
A Semantic Infrastructure For A Knowledg
Web
1 Introduction
Advances in sensor technology and space science have resulted in the availability of
vast quantities of high quality, but distributed and heterogeneous earth observation
data. Sensor Web researchers are currently investigating middleware to facilitate the
dynamic discovery, integration and analysis of this data with the vision of creating a
global worldwide Sensor Web [33][6][9]. Key challenges being investigated include
dynamic data discovery, integration and analysis, semantic interoperability, and
sensor tasking. While it has been acknowledged that abstractions are required to
bridge the gap between sensors and applications [6][9] and to provide support for the
rapid deployment of end user applications [9], the most effective mechanism for
modeling and managing the resultant deluge of software components remains an open
issue. Two emerging technologies in Computer Science that have shown promise in
dealing with these challenges are software agents and ontologies. Agent researchers
propose the use of software agents as logical abstractions to model and manage
software components in large scale, dynamic and open environments [17][34][35].
Software agents are autonomous software components that communicate at the
knowledge level [13][17]. Many agent based architectures have been proposed for the
Sensor Web [14][23][5][2]. However most approaches have limited support for the
construction and evolution of the ontologies to support domain modeling, agent
communication and reasoning, and to represent the algorithms, scientific theories and
beliefs that are routinely applied to sensor data. In previous work we described an
agent based architecture for the Sensor Web [21], i.e. the Sensor Web Agent Platform
(SWAP), and proposed initial components for the semantic infrastructure [31]. In this
paper we introduce the idea of a knowledge driven Sensor Web and describe a
semantic infrastructure that supports both the specification and integration of
scientific theories and system modeling. Additional details of the implementation of
the ontologies and the reasoners can be found in [20].
3 Related work
A number of agent based Sensor Web approaches exist. These include the Internet-
scale resource-intensive sensor network services (IrisNet) [14], Abacus [2], the agent
based imagery and geospatial processing architecture (AIGA) [23], and the approach
by Biswas et al. [5]. A summary of these approaches is given in [21]. Each approach
proposes some form of layered architecture that provide abstractions to separate
sensor agents from data analysis and filtering agents and aims to ease the modeling of
agent based applications. While these approaches are promising for single or even
groups of organizations building distributed agent based applications, except for the
limited support provided in AIGA [23], no explicit support is provided for creating
and managing ontologies that are required for agent communication and processing in
an open Internet scale multi-agent system [13][34][35].
representations for space, time and theme have been proposed [26][31]. However,
these approaches still lack support for representing the inherent uncertainty [3]
associated with sensor data or for representing system entities. Even the widely used
Web Ontology Language (OWL) [25] still lacks core support for representing time,
space and uncertainty [30] and for representing system entities such as agents,
services and processes.
provided for each dimension. The reasoners currently use different inferencing
engines: the thematic reasoner uses a Pellet reasoner; the temporal and spatial
reasoners use a Jena rule-based engine; and the uncertainty reasoner uses a Bayesian
inference engine. Domain ontologies for specific application domains are built by
extending the swap-theme ontology. The eo-domain ontology extends the swap-theme
ontology by adding concepts for building applications in the earth observation domain
(Fig. 1). It currently references concepts from the SWEET [27] ontologies, an existing
set of earth science ontologies. Application ontologies specify concepts that are used
for specific applications, e.g. wildfire detection. Application specific concepts are
specified along one or more of the four dimensions. The four reasoners are applied
independently as required to perform inferencing on the application ontology.
The thematic dimension provides a thematic viewpoint for representing and reasoning
about thematic concepts. The swap-theme ontology provides for the representation of
observations and is based on the OGC's model of observations and measurements
[10]. The Observation concept, defined in the swap-theme ontology, describes a
single or a set of observations. Various thematic, spatial, temporal or uncertainty
properties that are known may be specified for an observation (Fig. 2). The different
types of properties are defined in the respective conceptual ontologies, e.g. thematic
properties are defined in the swap-theme ontology and spatial properties are defined
in the swap-space ontology.
The schema for the thematic reasoner consists of the eo-domain, swap-theme and the
SWEET ontology. This allows the inference engine to infer relations with SWEET
concepts not explicitly referenced in the eo-domain ontology, e.g. that
BrightnessTemperature and DryBulbTemperature are both subclasses of
Temperature.
The swap-space ontology provides concepts for representing and reasoning about the
spatial aspects of data. A part of the swap-space ontology is shown in Fig. 4. Spatial
entities include spatial reference systems, spatial projections, spatial resolution and
location. Locations can be common descriptions such as a point coordinate or a
bounding box, or well defined spatial geometries such as a point, line or polygon. A
SpatialThing is defined as an entity that has a Location and the spatial reasoner
determines how two SpatialThings are related. Since OWL does not provide native
support for spatial representation, a set of spatial rules were formulated using the
Jena3 rule-based OWL reasoner to represent the eight spatial operators specified in the
OpenGIS simple features for SQL [24].
For example, the rule used to determine whether two SpatialThings intersect is:
The rules use special builtins that were created for each of the eight relations. The
builtins use the JTS topology suite [11] to determine if a specific relation holds
between two spatial things. It first converts spatial things into JTS geometry objects
and then calls the appropriate method on the geometry objects to perform the check.
Fig. 4. The spatial ontology and representing spatial properties of observations in SWAP
The swap-time ontology incorporates the OWL-Time [16] ontology to represent and
reason about the temporal aspects of data (Fig. 5). OWL-Time considers a temporal
entity to be either a temporal instant or a temporal interval. As with the spatial
reasoner an additional set of temporal rules, based on the COBRA temporal reasoner
[7], specify temporal relations.
For example, the two rules for determining whether a time instant is inside a time
interval are:
where tme is the name space of the OWL-Time ontology. The first rule stipulates that
a time instant x is within a time interval y if the starting time of y is before x, and x is
before the ending time of y. The second rule uses the lessThan builtin to determine
whether the time value of a time instant x is before the time value of another time
instant y.
SWAP takes a Bayesian probability [28] approach to represent and reason about
uncertainty on the Sensor Web. Bayesian probability is well suited for dealing with
uncertainty on the Sensor Web: where no complete theory is available; where it exists
it might be too tedious or complex to incorporate all the required observations; or
where all the necessary observation data is not available [28].
In such a Bayesian Network two types of discrete random variables are required:
One extension to the BayayesOWL ontology is the specialization of the State classss to
allow for user defined DiscreteStates.
Di The DiscreteRangeState could be a numeeric
interval for numerical data
ata type properties or a SingleNumericState for single numeeric
values.
The swap-uncertainty ont ntology provides support to represent one or more Bayes esian
Networks (BN). Each nod ode in the BN represents either an observation or an inferr
erred
variable. An observa vation variable represents the observation va value
(hasValueProperty) for some
so observed property (observesProperty) of the observ
erved
entity (observesEntity). AnA inferred variable represents the occurrence of so some
phenomena (hasClass). The Th influencedBy property is used to specify the variabless tthat
influence the state of the variable.
v
SWAP uses the BNJ too oolkit for internal representation and inferencing. Bayesi
esian
(B 6. BNJ is an open source Java toolkit for developi
Network tools in Java (BNJ) ping
applications that use Bay
ayesian Networks. It provides a visual Bayesian Netwo work
editor and viewer, a graph
ph representation model for representing and manipulating
ing a
6
http://bnj.sourceforge.net
In this way the uncertainty reasoner dynamically populates user defined bayesian
networks with observable events, performs inferencing on these events and
determines and records the occurrence of other events.
SWAP provides three technical ontologies, i.e. swap-data, swap-agent and swap-task
that provide representational support to describe the system entities that are required
for hosting and transmitting observations, and for executing algorithms and theories.
The swap-data ontology provides descriptions of different data structures that can be
exchanged between agents. This includes coverage (image) and feature data as well as
units of measure.
Representing agents
The swap-agent ontology provides support for representing an agent, the service it
hosts and the interaction protocol required to invoke the service. It provides support
for representing the six different types of agents specified in the SWAP abstract
architecture (Fig. 8) [21]. These are data provider (Sensor) agents, processing or data
transformation (Tool) agents, modeling (Modeling) agents and coordination
(Workflow) and application (Application) agents.
Each agent type has a corresponding service description with a set of common
attributes that capture the conceptual functionality of the service. Sensor Agents
provide a description of the observations that they provide, while Tool and Modeling
Agents provide a description of the data processing algorithms and prediction models
that they respectively provide. Service description attributes are grouped into the four
different conceptual systems, i.e. spatial, temporal, thematic and uncertainty, and are
specified using concepts from the appropriate top level ontology. Service descriptions
also contain service invocation information in the form of input and output mappings.
A request and a response message template is used for invoking and interpreting the
response of the service. The request message template specifies all service invocation
parameters, which may be mandatory or optional parameters that have default values.
Users populate mandatory parameters and may also specify optional parameters for
finer control of the service. These message templates are used to dynamically invoke
a service and to consume and interpret its results. This bridges the gap between
service selection and use, i.e. once a suitable service has been identified it can be
dynamically invoked and its results can be dynamically interpreted.
The technical ontologies provide support for describing the services offered by
different agents and the agent interactions used to invoke these services. Support is
also provided for constructing complex information processing chains or workflows
that may be stored, shared and executed on demand. Since service descriptions and
data models are captured within shared ontologies, they become dynamic entities that
can be accessed, queried and modified at runtime. Selected services can be assembled
into different configurations to form complex executable workflows that may be
deployed as new composite services. This approach facilitates interoperability
between agents, and between agents and humans. It also allows for data models and
service offerings to change, and evolve naturally with minimal impact and without
having to re-engineer the system.
Together, the technical and conceptual ontologies allow SWAP users to represent
complex information processing chains or workflows. Users search semantic agent
service descriptions and identify appropriate sensor data sets, algorithms and models
to apply to these data sets. Once the appropriate agents are identified, users use the
algorithmic constructs in the swap-task ontology to specify a processing workflow
that assembles different agent services in an appropriate sequence for execution. Each
workflow represents new functionality in the system. A workflow can also be
deployed on a Workflow Agent where it can be executed on demand. Since a
workflow is fully specified and executed from its OWL-S specification, the
appropriate ontologies (which contain the workflow) can be shared, downloaded and
executed locally. Furthermore, once the workflow is downloaded it can be easily
modified and executed locally by SWAP users. A workflow is represented as a
composite process, which means that it can be incorporated into other composite
processes (workflows). This allows for reuse of existing workflows within other
workflows and for creating and managing large and complex nested workflows.
Currently, workflows are created and modified manually via an ontology editor.
However, given that the semantics of both the conceptual and the technical aspects of
each service are specified in the service description, this provides a sound foundation
for automating workflow composition.
5 Conclusion
We have introduced the notion and proposed knowledge representation requirements
and potential benefits of a Knowledge Driven Sensor Web. We contend that a
semantic infrastructure and formal software modeling and engineering abstractions
are both equally important to manage data and knowledge dynamisms as well as
system and application dynamism. We propose an ontology driven multi-agent
system approach to constructing such a system. A key limitation in agent based
approaches is the lack of a comprehensive semantic infrastructure that includes
support for representing uncertainty, theories and beliefs and support for representing
agents, services and tasks. A semantic infrastructure that deals with these limitations
was described. A novel aspect is the introduction of the additional modeling
dimension of uncertainty which can be used for representing and applying subjective
theories. The swap-uncertainty ontology incorporates Bayesian probability, which is
widely used in practical applications to represent degrees of belief, and allows for the
incorporation of Bayesian Networks to represent different theories of cause and effect
relations between events in the physical world. The nature and availability of sensor
data, the accuracy and completeness of the theory that underpins the choice, and the
sequence of the processing steps may contribute an additional element of uncertainty.
The information produced by workflows is frequently approximations or best guesses.
The incorporation of uncertainty allows end users to better understand the quality of
information generated within the Sensor Web.
There are many avenues for future work. The relation of this work to the trend in the
Semantic Sensor Web community towards linked data [9][4][18] warrants further
investigation. Another avenue is the extension of the uncertainty model to capture and
reason about relations between past, current and future events and events occurring at
different locations.
REFERENCES
17.Jennings, N.R. (2001), 'An agent-based approach for building complex software systems',
Commun. ACM 44(4), 35-41.
18.Kessler, C. & Janowicz, K. (2010), Linking Sensor Data - Why, to What, and How?, in
‘Kerry Taylor, Arun Ayyagari, David De Roure (Eds.): The 3rd International workshop on
Semantic Sensor Networks 2010 (SSN10) in conjunction with the 9th International
Semantic Web Conference (ISWC 2010), 7-11 November 2010, Shanghai,China'.
19.Mennis, J.; Peuquet, D. & Qian, L. (2000), 'A conceptual framework for incorporating
cognitive principles into geographical database representation', International Journal of
Geographical Information Science 1414(6), 501-520.
20.Moodley, D. (2009),'Ontology Driven Multi-Agent Systems: An architecture for Sensor
Web applications', PhD thesis, School of Computer Science, University of KwaZulu-Natal,
Durban, South Africa.
21.Moodley, D., and Simonis, I. (2006), A new architecture for the sensor web: the SWAP-
framework, in ‘Semantic Sensor Networks Workshop, A workshop of the 5th International
Semantic Web Conference ISWC 2006, November 5-9, 2006, Athens, Georgia, USA.
22.Moodley, D.; Vahed, A.; Simonis, I.; McFerren, G. & Zyl, T.V. (2008), 'Enabling a new era
of Earth observation research: scientific workflows for the Sensor Web', Ecological Circuits
1, 20-23.
23.Nolan, J. (2003),'An agent-based architecture for distributed imagery and geospatial
computing', PhD thesis, George Mason University.
24.Open GIS Consortium, I. (May 5, 1999),'OpenGIS Simple Features Specification For SQL
Revision 1.1', Technical report, OpenGIS Project Document 99-049.
25.Patel-Schneider, P.F. & Horrocks, I. (2007),'OWL 1.1: Web Ontology Language Overview'.
26.Perry, M.; Hakimpour, F. & Sheth, A. (2006),Analyzing theme, space, and time: an
ontology-based approach, in 'GIS '06: Proc. 14th annual ACM international symposium on
Advances in geographic information systems', ACM Press, New York, NY, USA, pp. 147-
154.
27.Raskin, R.G. & Pan, M.J. (2005), 'Knowledge representation in the semantic web for Earth
and environmental terminology (SWEET)', Computers & Geosciences 31(9), 1119-1125.
28.Russell, S. & Norvig, P. (2003), Artificial Intelligence: A Modern Approach, Prentice-Hall,
Englewood Cliffs, NJ.
29.Russomanno, D.J.; Kothari, C.R. & Thomas, O.A. (2005), Building a Sensor Ontology: A
Practical Approach Leveraging ISO and OGC Models, in 'IC-AI', pp. 637-643.
30.Shadbolt, N.; Berners-Lee, T. & Hall, W. (2006), 'The Semantic Web Revisited', IEEE
Intelligent Systems 21(3), 96-101.
31.Terhorst, A.; Moodley, D.; Simonis, I.; Frost, P.; McFerren, G.; Roos, S. & van den Bergh,
F. (2008), Geosensor Networks, Lecture Notes in Computer Science, Volume 4540/2008,
Springer-Verlag, chapter Using the Sensor Web to Detect and Monitor the Spread of
Vegetation Fires in Southern Africa, pp. 239-251.
32.The OWL-S Coalition (2004),'OWL-S: Semantic Markup for Web Services'. Available
online at: http://www.w3.org/Submission/OWL-S/
33.van Zyl, T.L.; Simonis, I. & McFerren, G. (2009), ''The Sensor Web: systems of sensor
systems', International Journal of Digital Earth 2:1, 16-30.
34.Wijngaards, N.J.E.; Overeinder, B.J.; van Steen, M. & Brazier, F.M.T. (2002), 'Supporting
internet-scale multi-agent systems', Data Knowl. Eng. 41(2-3), 229-245.
35.Zambonelli, F.; Jenning, N.R.; Omicini, A. & Wooldridge, M.J. (2001), Agent-oriented
software engineering for Internet agents, Springer-Verlag, London, UK, pp. 326-346.