representing and reasoning about uncertain contexts in pervasive and ubiquitous computing...
TRANSCRIPT
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
1/13
Representing and reasoning about uncertain contexts in Pervasive
Abstract-The ability of context aware systems in pervasive and
ubiquitous environments depend mainly on the amount of
accuracy of information from physical sensors to reason over and
decide on some kind of adaptive action to take by the system.
Some of the difficulties a context aware system faces are the
amount of sensor data available to determine context, the noise
within the data, and the necessity of capturing the imprecise
nature of sensing using physical sensors. Probabilistic andontological techniques have the ability to represent uncertain
sensor data and to process uncertainty. These characteristics make
these techniques suitable for automatic generation of context that
simulate human decision making. This paper summarises four
such techniques and details different approaches taken to
represent and reason about uncertainty using these techniques.
I INTRODUCTION1
Ubiquitous and pervasive computing environments arepeppered with devices that sense implicit or explicit
changes of individual attributes that make up the wholeenvironment. One of the principle goals of pervasive andubiquitous computing environments is to aide a user incarrying out tasks [1], or maintain a system or systemstates within predetermined specifications. In effect, theenvironment must take adaptive action/s to achieve thisgoal, such actions may take the form of adjusting systemstate variables to maintain equilibrium of the system, orrecognising users needs and take action to meet thoseneeds.Prior to a system taking adaptive action, two basic stepsare required; 1) acquisition of environmental sensed datafrom multiple sources, 2) deciding what adaptive action isrequired, given the data provided.Both steps are reliant on the accuracy of data provided by
physical sensors. Physical sensors in real world situationscannot completely capture sensed data with completecertainty; variables which affect a real world environmentare to many, to diverse and to complex for a single sensorto capture a single environmental variable, with complete
certainty that all other variables have been taken intoaccount. Put simply, sensor data readings in real worldenvironments are inherently imprecise.Even more importantly, for an adaptive action to have anyreal merit, the system should know under whatcircumstances the sensor readings were taken. An identicaldataset of physical sensor readings under one set ofcircumstances may require a particular course of adaptiveactions to take place, however under differentcircumstances the same dataset may have a differentmeaning, and therefore require different adaptive actions.The circumstances under which sensor readings were takenis called context, identifying and being aware of thecontext of a dataset allows for correct adaptive action to betaken, not just on a single data set but on any dataset
presented in the same format and compatible with how thesystem accepts data. A system that can determine contextis said to be context aware. In this manner, a contextaware system has the flexibility to derive context fromsensor readings in different ubiquitous and pervasiveenvironments using physical sensors in real worldsituations.Knowing the context in which sensor readings werederived, provides a degree of certainty or uncertainty withregard to how accurate or precise the data readings are,given the context in which they were derived.The same principle of context awareness is applied to thesecond basic step of making a decision prior to takingadaptive action. Some form of reasoning process whichtakes in sensor readings as an input and outputs a decisionon what adaptive action to take also requires the ability ofdetermining how certain (or uncertain) the context of thedata is.Human beings derive context through perception of theworld, human perception is based on expert knowledge
based on experience and human reasoning. Applying suchperception ability to machine intelligence is the missinggap which context aware systems are trying to fill.In short, a context aware system firstly determines sensorcontext by representing data in different ways, andsecondly determines how precise the context and therefore
R. Gill
and Ubiquitous Computing Environments
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
2/13
the sensor reading itself, actually is, through reasoningabout the context itself, prior to making a decision.A number of different methods to represent contextualrelationships between data and to determine degrees ofcontext uncertainty have been put foreword. Figure 1represents the general taxonomy of proposed methodscurrently used to represent and reason about uncertainty in
pervasive computing environments.
Figure 1. Taxonomy of Schemes to determine context uncertainty
The rest of this paper uses the taxonomy as a basis ofreference from which to discuss the following: Section 2)Summary of Techniques, Section 3) Context Definition,Section 4), Context Uncertainty, Section 5) Approaches 6)Evaluation of Approaches, and Section 7) Analysis ofcurrent state of the art.
II SUMMARY OF TECNIQUES2
A. Fuzzy Logic
Human experts rely on common sense when faced withproblem solving, which involve uncertainty. Reasoningabout uncertainty in similar to reasoning about vaguenessand ambiguous data, a decision is required based on how todeal with vagueness and ambiguity. Transferring this to
pervasive computing environment, the question posed ishow to represent expert knowledge that uses ambiguousand vague terms in a machine. Fuzzy logic is not logic that
is fuzzy, but logic that describe fuzziness. Fuzzy logic isthe theory of fuzzy sets that calibrate vagueness, based onthe idea that all things admit to a certain degree on asliding scale, such as temperature, height, speed, distance,
beauty. A car engine can be said to be running really hotora person is very tall. Boolean logic uses sharp distinctions
between class members and non-members. For example,Tom is tall because his height is 181cm. If the classmembership for tall is fixed at 180cm, then David, who179cm is small. Is David really a small man or have wedrawn an arbitrary distinction between talland small?Fuzzy logic attempts to reflect how humans think, bymodeling our sense of words, decision making andcommon sense, theoretically leading to more human like
intelligent systems.Possibility theorey as extended by using multi-valued logictrue (1) and false (0) classical logic operators to include arange of truth values at all real umbers in the interval 0-1.The number within this range represented the possibilitythat a given statement was true of false. A continuumimplies degrees, and if a continuum is discrete, a number
can be allocated to each element, vagueness then, is amatter or probability. The classic example is an imaginaryline of chairs. At one end is a Chippendale chair and theend is a wooden log. Starting from the Chippendale chair,each successive chair is less chair like, until it ends as awooden log. The question posed is at what point does thechair become a log?Zadeh[2] extended possibility theory into a formal system
of mathematical logic called fuzzy logic and fuzzy sets,and introduced the concept of applying natural languageterms. This new logic for representing and manipulatingfuzzy terms is called fuzzy logic.Fuzzy logic is a set of mathematical principles forknowledge representation based on degrees ofmembership. Unlike binary valued Boolean logic, fuzzylogic is multi-valued, and deals with degrees ofmembership and degrees of truth. Fuzzy logic uses thecontinuum of logical values between 0 (completely false)and 1(completely true). Instead of a value being just blackor just white, it employs the whole spectrum of colors,accepting that things within the 0 or 1 (values) can be
partially true and partially false at the same time.
The concept of sets is fundamental to mathematics; thehuman language is also a great expression of sets. Forexample, carrepresents the set of cars, and when we say acar, we mean one particular car of the set of cars. A fuzzyset is a set with fuzzy boundaries. If we let the fuzzy set
be the range of all elements applicable to achosen variable such as a mans height, where the universeof discourse of mens heights consists of all tall men. Andlet represent the membership value of the fuzzyset, the fuzzy set of tall men maps height values intocorresponding y membership values.For example, let be the universe of discourse and itselements denote as . In classic set theory, the crisp set
of is defined as function called the
characteristic function of .
where is 1 if is in the set , and 0 if is not inthe set . This set maps universe to a set of twoelements. For any element of universe , characteristicfunction is equal to 1, and equal to 0 if is not anelement of .
In fuzzy theory, fuzzy set of universe is defined by
function called membership function of set .
where
if is totally in C;
if is not in ;
if is partially in ;
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
3/13
This set allows a continuum of possible choices because
for any element of universe , membership function
equals the degree to which is an element of the
set . This degree, is a value between 0 and 1,
representing the degree of membership, also called
membership value, of element in set .Another
example of fuzzy logic membership function. Let
be a universe of discourse, then
( of )
denotes a fuzzy set of ordered pairs
where .
is the membership function of .
is the degree of membership of in .
To represent fuzzy sets in machine language, firstly,
membership functions are determined. In the tall men
example fuzzy sets of tall, short and average can beobtained, all of which fall in the universe of discourse
mens heights. The fuzzy sets obtained in this example areshown in Figure 2, here a man who is 184cm tall is amember of the average men set with a degree of
membership of 0.1, and at the same time, a member of thetall men set with degree of 0.4. In the example linear fit
function is used to represent a fuzzy set, however sigmoid,gausian and pi can also be used.
Figure 2 Fuzzy sets for tall men
A graphic translation the above example to representcertainty (or truth) is shown in Figure 3, which representstruthfulness (certainty) of events as fuzzy sets over the
domain [0,1].
Figure 3 Conceptualising certainty in Fuzzy terms.
At the root of fuzzy set theory is the idea that fuzzyvariables are linguistic variables. For example the
statement john is tall implies that the linguistic variablejohn takes the linguistic value tall. Fuzzy expert systemsuse linguistic variables when developing fuzzy rules for
example,
IF wind is strongTHEN sailing is good
IF coursework_completion is highTHEN course_failure_risk is low
Linguistic variables use fuzzy set qualifiers called hedges,that modify the shape of fuzzy sets. Hedges includeadverbs such as very, quite, more or less, and slightly.
Fuzzy sets, then, have well defined properties, and thereare operations that can be performed on fuzzy sets. These
properties and operations are the basis on which fuzzy setsare used to deal with uncertainty and to represent
knowledge.
B Hidden Markov Models (HMM)
Hidden Markov Models can be used to simulatecharacterize real world signals from sensors in the form ofsignal models. These HMMs provide a basis from which tofirstly, describe the signal processing signal and somanipulate it to provide the desired output. Secondly,HHMs can potentially provide information about thesensor producing the signal (source), without the need tohave the actual source available. Here statistical models aredescribed. The underlying concept of statistical HMM isthat a signal can be characterized as a parametric random
process, and the parameters of the stochastic process canbe estimated in a precise and well defined manner. TheHidden Markov Model is one type stochastic signal model,in which the states are not directly observable but areassociated with observable states.HMM have three basic design problems to overcome, theseare evaluating probability of a sequence for a HMM,determining best sequence of HMM states, and adjusting
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
4/13
model parameters to give optimsed representation of thesignal. HMM have been used extensively in speechrecognition processing, however the robustness andfamiliarity of use of HMM methods makes it a flexibleuseful method to use for signal modeling.
(i) Observable Model
In an observable Markov Model such as that shown inFigure 4, the system has N distinct states S1,S2 Sn. Notestate transitions can also go back to original states.
Figure 4 A discrete Markov Chain with some observable statetransitions and 5 states.
At discrete time intervals the systems undergoes a changeof state, depending on the probabilities associated witheach state. The stochastic process in Figure 4 is anobservable Markov Model because the output of the
process is the set of states at each instant of time. Whereeach state corresponds to a physical event (such as a sensorreading). By allocating probabilities to system statechange, state change sequences can be predicted.
For example, using a N=3 state Markov Model forweather, the observable system states are:
State 1: RainState 2: CloudyState 3: Sunny
If we propose that the weather on day 1 (where 1= t fortime) is state 3 (Sunny), we can ask, will the weather for bethe system state sequence O (weather) for the next 7days
be sunny-sunny-rain-rain-sunny-cloudy-sunny? Moreformally, we define the observation sequence O as O={S3,S3, S3, S1, S1, S2, S3, S3} where t=1,2..8, we wish todetermine probability O given a model where N=3.If we know that the weather on day 1 is Sunny (t=1,state=3) we can form a matrix (A) of the state transition
probabilities.
The probability can be expressed and evaluated as followswhere denotes the initial state probability.
(ii) Hidden Model
The model in (i) corresponded to an observable event foreach state. Here a sequence of observations is provided(for example data from a sensor), and from this sequence a
model is constructed to represent how the sequence ofobservations were produced.
For example.If given a sequence of observations from tossing a coinwhere we have not seen how the coin tossing was done
(i.e. using same coin or multiple coins), we are only giventhe data heads (H) or tails (T). The question is how to builda HMM to explain the observed sequence of H and T.
Given
C. Bayesian Networks [3]
Formally, a Bayesian network can be defined as follows:
A Bayesian network (BN) is a pair (G,P), where G=(V,E)is a directed acyclic graph (DAG) over a finite set of nodes
(or vertices), V, interconnected by directed links (oredges), E, and P is a set of (conditional) probabilitydistributions. The network has the following property:
Each node representing a variable A with parentnodes representing variables B1, B2,..., Bn (i.e.,
Bi, A for each i=1,...,n) is assigned a conditional
probability table (CPT) representing P(A | B1, B2,
..., Bn).
The nodes represent random variables, and the links
represent probabilistic dependences between variables.These dependences are quantified through a set of
conditional probability tables (CPTs): Each variable is
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
5/13
assigned a CPT of the variable given its parents. Forvariables without parents, this is an unconditional (also
called a marginal) distribution.
An important concept for Bayesian networks is conditionalindependence. Two sets of variables, A and B, are said to
be (conditionally) independent given a third set C ofvariables if when the values of the variables C are known,
knowledge about the values of the variables B provides nofurther information about the values of the variables A:
Conditional independence can be directly read from thegraph as follows: Let A, B, and C be disjoint sets of
variables, then
identify the smallest sub-graph that contains A
B Cand their ancestors; add undirected edges between nodes having a
common child; drop directions on all directed edges.
Now, if every path from a variable in A to a variable in B
contains a variable in C, then A is conditionallyindependent ofB given C
Example.
To illustrate this concept, let us consider the followingfictitious piece of fictitious medical knowledge:
"Shortness-of-breath (dyspnoea) [d] may be due totuberculosis [t], lung cancer [l] or bronchitis [b], or none of
them, or more than one of them. A recent visit to Asia [a]increases the risk of tuberculosis, while smoking [s] is
known to be a risk factor for both lung cancer andbronchitis. The result of a single chest X-ray [x] does notdiscriminate between lung cancer and tuberculosis, neither
does the presence or absence of dyspnoea.The last fact isrepresented in the graph by the intermediate variable e.This variable is a logical-or of its two parents (t and l); it
summarizes the presence of one or both diseases or theabsence of both. Figure 5 shows a model for the
knowledge.
Figure 5: Graph representing structural aspects of medicalknowledge concerning lung diseases.
If we learn that a patient is a smoker, we will adjust our
beliefs (increased risks) regarding lung cancer andbronchitis. However, our beliefs regarding tuberculosis areunchanged (i.e., t is conditionally independent of s given
the empty set of variables). Now, suppose we get a positiveX-ray result for the patient. This will affect our beliefsregarding tuberculosis and lung cancer, but not our beliefs
regarding bronchitis (i.e., b is conditionally independent ofx given s). However, had we also known that the patient
suffers from shortness-of-breath, the X-ray result wouldalso have affected our beliefs regarding bronchitis (i.e., b isnotconditionally independent ofx given s and d).
Inference in a Bayesian network means computing theconditional probability for some variables given
information (evidence) on other variables. This is easywhen all available evidence is on variables that areancestors of the variable(s) of interest. But when evidence
is available on a descendant of the variable(s) of interest,we have to perform inference opposite the direction of the
edges. To this end, we employ Bayes' Theorem:
C. DEMPSTER SHAFER
D. ONTOLOGIES
An ontology is a graphic representation of that whichdefines relationships and attributes associated with people
places and activities in an intelligent space.
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
6/13
An ontology defines the terms used to describe andrepresent an area of knowledge. Ontologies are used by
people, databases, and applications that need to sharedomain information (a domain is just a specific subjectarea or area of knowledge, like medicine, tool
manufacturing, real estate, automobile repair, financialmanagement, etc.). Ontologies include computer-usabledefinitions of basic concepts in the domain and the
relationships among them (note that here and throughoutthis document, definition is not used in the technical sense
understood by logicians). They encode knowledge in adomain and also knowledge that spans domains. In thisway, they make that knowledge reusable.
The word ontology has been used to describe artifacts withdifferent degrees of structure. These range from simple
taxonomies (such as the Yahoo hierarchy), to metadataschemes (such as the Dublin Core), to logical theories. TheSemantic Web needs ontologies with a significant degree
of structure. These need to specify descriptions for thefollowing kinds of concepts:
Classes (general things) in the many domains ofinterest
The relationships that can exist among things
The properties (or attributes) those things mayhave
Ontologies are usually expressed in a logic-basedlanguage, so that detailed, accurate, consistent, sound, andmeaningful distinctions can be made among the classes,
properties, and relations. Some ontology tools can performautomated reasoning using the ontologies, and thus provide
advanced services to intelligent applications such as:
conceptual/semantic search and retrieval, software agents,decision support, speech and natural language
understanding, knowledge management, intelligentdatabases, and electronic commerce. Ontologies figure
prominently in the emerging Semantic Web as a way ofrepresenting the semantics of documents and enabling thesemantics to be used by web applications and intelligent
agents. Ontologies can prove very useful for a communityas a way of structuring and defining the meaning of themetadata terms that are currently being collected and
standardized. Using ontologies, tomorrow's applicationscan be "intelligent," in the sense that they can more
accurately work at the human conceptual level. Ontologies
are critical for applications that want to search across ormerge information from diverse communities. Although
XML DTDs and XML Schemas are sufficient forexchanging data between parties who have agreed todefinitions beforehand, their lack of semantics prevent
machines from reliably performing this task given newXML vocabularies. The same term may be used with
(sometimes subtle) different meaning in different contexts,and different terms may be used for items that have the
same meaning. RDF and RDF Schema begin to approachthis problem by allowing simple semantics to be associatedwith identifiers. With RDF Schema, one can define classes
that may have multiple subclasses and super classes, andcan define properties, which may have sub properties,domains, and ranges. In this sense, RDF Schema is a
simple ontology language. However, in order to achieveinteroperation between numerous, autonomously
developed and managed schemas, richer semantics areneeded. For example, RDF Schema cannot specify that thePerson and Car classes are disjoint, or that a string quartet
has exactly four musicians as members.
III CONTEXT DEFINITION3
There is no de facto definition of what is context; it wouldbe similar to defining what circumstance is. As withcircumstance, context is different for each situation. Indescribing context, the literature describes what type of
context, i.e. what aspects the system should characterizeand be aware of, rather than providing a single definitionof what context is. The nature of pervasive computingusing sensors makes defining circumstance almostimpossible, as theoretically context should include anysituation including all changeable attributes and sensorstates. Having said that, the literature does provide generaldefinitions which are more system specific, rather thanglobal. Some descriptions and the systems to which theyrefer to are given below.Chen and Finn[4] propose an ontology framework for anagent based pervasive computing environment.Accordingly, the definition for the system context includesagents. context can be defined as information that
characterizes the identity and attributes of people, devicesand agents in space. Another proposed ontologyRanganathan et al[5] specifies the context attribute in the
predicate syntax (
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
7/13
sensors may provide context facts such as lighting, numberof people, prices etc, but information describing if thediners are enjoying their food in a congenial atmosphere,or the meeting is going badly requires a greater degree,fine graininess and subtlety of context awareness.
4
Mckeever[8] describes context uncertainty in terms ofconfidence in context facts derived from source data.Uncertainty in source data is therefore inherited fromsource data to higher levels of context representation, and
permeates any reasoning or decision making made usingraw source data. Expanding on ascribing contextuncertainty to sensor confidence, Waltenegus[7] describescontext uncertainty as a gap between the degree ofawareness a self managing system and a real world systemusing physical sensors can achieve. The gap ischaracterized by three elements, incompleteness, exactnessand ignorance. Incompleteness, due to limitations on what
physical sensors can sense in real world environments.Inexactness, is deemed solvable by using multiple sensors
to sense the same context attributes to determine greaterexactness, such as Kalman Filtering method [9]. Ignorancehas the highest priority as it includes ignorance due to lackof information to translate sensor information accurately.Ignorance of factors affecting sensor inexactness andfinally, ignorance in sensor timing and availability.Context uncertainty not only affects context provided bysensors, but also the quality of service a context awaresystem might provide, aswell as adaptive actions taken onthe state of an intelligent space.
V APPROACHES DEALING WITH
REPRESENTATION AND REASONING5
In this section a selection of approaches taken by theliterature are described, which employ techniques outlinedin part II.
A. APPROACH 1
Very much an ontology based approach, Chen and Finn[4]propose a context broker ontology that acquires contextfrom devices and shares context between devices andservices. The key to representation and reasoning is
building a common set of ontologys for ontologyknowledge and contextual knowledge, of the contextdomain and devices, respectively. The context brokerarchitecture is centralized to reduce the effect of device
poor resources and allowing common security andauthentication policy between devices and agents. Eachaspect of context such as location, device, time and useridentity have their own ontologys.
Built using OWL/RDF the underlying knowledge ontologyis static, while context ontology is dynamic. Acquiring thedynamic context is achieved using predefined middlewaremodules.
Figure 6. The context broker takes context form sensors such asdevices and agents, fuses this information with environmental
context and provides feedback to the devices.
The context broker itself relies on five internal sources ofinformation and knowledge to function. These are asfollows:1) A knowledge base defining the situation domain andassociated heuristic domain knowledge, such as (in thecase of a meeting room domain) the office hours of acompany and no one person can be present in two separaterooms at the same time.2) A reasoning engine for reasoning over static knowledgeontology and dynamic context ontology .
3) An inference engine that checks and resolves ontologyinconsistency, and compares historical behaviour patternpatterns.4) A collection of pre-defined programming modules toacquire situational context information from sensors. Thiscollection is collectively the context acquisition module.5) A behaviour component which oversees communication
protocols between correct communication policy isenforced between user and agents. Here a privacy policy
between two communicating parties is established, fromwhich access to information rights are determined.
The Context Broker Architecture CoBrA ontologycomprises of 17 classes and 32 property definitions,
representing relationships and attributes associated withpeople places and activities in an intelligent space. The keyclasses represent Person, Place and Intention. Eachclass is defined as a subclass of a set of anonymous classesto allow the class itself to be general. Using the standard
property syntax of isXyz and hasXyz to define
IV CONTEXT UNCERTAINTY
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
8/13
relationships between classes, and place restrictions onwhich subclass a class relates to, allows the class to be ageneral class for the whole ontology.
(I) Use Case Scenarios
(a) Is anybody there?
Sensing the presence of a person in a particular place is acommon query, form which to take adaptive action on, incontext aware systems. The system must first determinethe identity of the person (sensors such as RFID swipecard), and then reason over the context of the presence of a
person.
The CoBrA ontology identifies and reasons over such aquery as follows:
The following snippet of how a person being present isrepresented and presented to the CoBrA ontology.
Here sensors have sensed a person called hchen4 hasbeen sensed to be present in a room called ECS2101because a RFID card with the identity of hchen4 has beenused in the swipe entrance to the room ECS2101. Fromthis information the CoBra ontology can now reason todetermine the context in which hchen is present in roomECS2101.
Example 1. How CoBrA might reason if a person called
hchen4 is in the ECS building.
A1:Person(hchen4) has the propertyisCurrentlyIn(ECS2101).
A2:For any person with property isCurrentlyIn() withrestriction to the Place class of property isPartofBuilding(),then the person must be of type PersonInBuilding, ie that
person is in the building.
A3. A3
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
9/13
presentation. On the date and time of the presentation theagent communicates with the CoBrA ontology that hchen4has is about to start a presentation. Before the agent can
provide any personalised services to aide hchen4, itrequires contextual knowledge about the situation. Theagent might query CoBrA with the following:
When reasoning over the context of a person/user anelement of uncertainty is introduced because knowledgeabout the person might not be completely accurate. Thefollowing is how the CoBrA ontology might reason ifhchen4 is presenting at a meeting called me239.
C1:Person(hchen4) is the same person asMeetingParticipant(hchen4)
C2:MeetingParticipant(
hchen4
) is associated withMeeting m239.
C3:Person(hchen42) has the intention toGiveSlideShowPresentation. (provided by hchen4 agent)
C4: If person is of type MeetingParticipant and person hasowl:one of the PresentingIntention, then person is likely to
be a presenting.
C:5 C5
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
10/13
components tasks are updated (Belief Revision). Systembelief is derived from the Reasoning component andupdated by the Belief component. The constant update in
belief reflects changes in sensor observation and thereforein the system. Constant updating also serves to detectcontradictory information, detection of which is only
possible when more recent (newer) information isavailable.
An example of implementing the conceptual architectureof figure 7 is shown in figure 8. The implementation tookthe following form.The system objective is to reason over the location of amobile person. Sensors record the following primativecontexts, light intensity, time, relative humidity, andtemperature, and represented as conceptual states definedas fuzzy sets as shown in Table 1.
Table 1 Fuzzy sets of primitive contexts.
Figure 8 Implementation
In figure 8 the function of the aggregators was to combine
data from sensors to improve sensor readings, andrepresent primitive context of the intelligent space.
Reasoning about the actual location was done using BNusing prior probability distribution of all potential location
from all context primitives, as graphically described inFigure 9. The subcomponents KB (Knowledge Base) andEAK (Empiracal Ambient Knowledge), make up the belief
component. Factual knowledge such as relationshipsbetween context spaces was managed by the KB, whileconditional relationships were managed by the EAK. The
function of the PCS (Primitive Context Server)components were that of translator of primitive contexts to
the aggregator component. The Composer componentcontained the BN reasoning function.
Figure 9 Bayesian networks for computing prior probability ofcontext primitives.
Operational sequence of the implemented architecture is asfollows:
PCS intermittently query sensors for primitivecontexts.
PCS report context abstraction to aggregators Aggregators either fuse PCS reports or simply
gather PCS information and push these to theComposer.
Based on aggregator reports, the Composerdetermines BN configuration by querying KB andEAK.
Composer determines posterior probabilitydistribution to determine most likely locationsensor context primitives are referring to.
The proposed system implementation was able todifferentiate between a mobile person being in a room or acorridor or inside a building.
C. APPROACH 3
Using Middleware support to automate the process, TaoGu[10] extends a typical OWL Predicate(subject,value)
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
11/13
RDF triple, by adding probabilistic informationrepresented as Prob(Predicate, (subject, value) usingBayesian theory. Here the triple becomes a quadruple, inwhich the triple is assigned a probability (an integer value
between 0-1). As OWL does not cater for probabilisticinformation, the extended probability triples are encodedinto the OWL context ontology as two classes calledPrioProb and CondProb, with property-instance relations
of hasVariable, hasProbValue for PrioProb class andhasVariable, hasProbValue and hasCond for CondProbclass.For example, if we assume A,B,C represent context
predicates as RDF triples (Figure 10(a)) then the priorprobability P(A) can be defined by an instance of classPriorProb. The conditional probability P(A|B,C) can bedefined as an instance of class CondProb(Figure 10 (b)).
Figure 10(a)-(b)
Constructing the BN, required translating representation ofcontext and dependencies from of RDF graph to BN graph.
As both BN and RDF are both a form of Direct AcyclicGraph (DAG) translation was relatively straightforward. Inthe RDF graph an additional property element called
rdf:dependsOn captured dependency relationships betweenassociated data types and objects as shown in Figure 1(a).
Structural translation from RDF to BN was achieved bymapping each OWL context predicate as a BN node. Acausal relationship arc (arrow) drawn between BN nodes if
and only if dependency relationship between two context
predicates existed, as shown in Figure 1(b), therebycreating one DAG from another.
Figure 11(a) RDF Graph with dependsOn property
Figure 11(b) BN DAG . Toms activity depends on his location,
living room context, parents context etc.
Implementing the concept of representing RDF contexttriples as probabilistic BN nodes was done using a
middleware support for using BNs. The Service-OrientatedContext-Aware Middleware (SOCAM) architecture(shown in Figure 12) is designed to build and rapid
prototype context aware services.
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
12/13
Figure 12. SOCAM architecture overview
SOCAM consists of the following components:
Context Providers: For abstracting context from
external or internal heterogeneous sources, andconvert to OWL expressions for sharing and reuse
by other entities. Context Interpreter: Consisting of a context
reasoning engine and context database (KB), it
provides logic reasoning services such asinferring indirect context from direct context.
Context Database: Stores context ontologys and
past contexts for a sub-domain, each domaincontain a single logic context database.
Context Aware Services: Adapts different levelsof context to current context.
Service Locating Service: A platform for context
providers and context interpreters to have apresence, and allow users or applications to locate
and have access to them.
SOCAM reasons about uncertain contexts in the following
sequence:
Context ontology is created and stored in the
context database. The ontology RDF structure is translated to a BN
DAG structure. Probability distributions are derived using current
node contexts to train the BN, here previous
contexts are logged and stored in database andconditional Probability tables are computed foreach node.
A post training BN infers probabilities of contextconditions and other events.
Using Bayesian Network Java (BNJ) toolkit as thereasoning mechanism, propagates the influence ofassigned probability values of a set of nodes
throughout the BN node structure.
(Using the sequence above, a training data set can beused to determine conditional probabilities of nodes
with predecessors (non root) and with no predecessors(root).)
Knowing node conditional probabilities,probability distribution of context are event in theBN can be determined and represented as
probability annotated OWL expressions. Owl expressions are stored in context knowledge
base.
The service developer must specify actions that are
triggered by a set of pre-defined rules (conditions) in orderto apply the above sequence to uncertain contexts.
For Example..
To infer a persons current activity in a smart homeenvironment. Here we assume a context ontology is storedin the context database. Example of dependency
relationships as user specified rules are:
DeduceActivity(User,X):Location(User,Y):LightingLevel(
Y,?x):NoiseLevel(Y,?x):NumberOfPerson(Y,?x):Profile(User,?x):Location(OtherMember,?x).
After creating BN, assigning context probabilitydistribution to BN and training, and reasoning, results from
context interpreter is shown below.
(Tom located in living
room)
0.9
-
7/28/2019 Representing and reasoning about uncertain contexts in Pervasive and Ubiquitous Computing Environments
13/13
REFERENCES
[1] Weiser, M, The Computer for the 21st Century-Scientific American Special Issue on Communications ,Computers, and Networks, September, 1991
[2] Zadeh, L, A,. Fuzzy Sets. Information and Control,March 2007, Page(s):27 32
[3] Extract taken from HuginLiteTM Tutorial 2009.
[4] Chen, H., Finin, T., An ontology for context-awarepervasive computing environments, Journal of KnowledgeEngineering Review, Volume. 18, No. 3. September, 2003,Page(s): 197-207.
[5] Ranganathan, A., Al-Muthadi, J., Cambell, R.,Reasoning about Uncertain Contexts in PervasiveComputing Environments, IEEE Pervasive Computing,Volume 3, Issue 2, 2004, Pages: 62 70
[6] Padovitz, A., Seng, W., Loke, A., Bartolini, A., Burg,B. An approach to Data Fusion for Context Awareness.
MONET, International Conference, October, 2002.
[7] Waltenegus, D, D,. The Role of ProbabilisticSchemes in Multisensor Context-Awareness. PervasiveComputing and Communications Workshop, IEEEInternational Conference, March 2007, Page(s):27 32
[8] McKeever, S., Juan, Y., Lorcan, C., A MultilayeredUncertainty Model for Context Aware System, PervasiveComputing International Conference, 2008.
[9] Al-Dhaher, A.H.G.; Mackesy, D.; Haptic Audio andVisual Environments and their Applications, HAVE,Proceedings of 3rd International Workshop, 2004Page(s):159 - 163
[10] Gu, T. A Bayesian Approach For Dealing withUncertain Contexts, Austrian Computer Society, 2004.
http://www.ubiq.com/hypertext/weiser/SciAmDraft3.htmlhttp://en.wikipedia.org/wiki/Communications,_Computers,_and_Networks_(Scientific_American%29http://en.wikipedia.org/wiki/Communications,_Computers,_and_Networks_(Scientific_American%29http://en.wikipedia.org/wiki/Communications,_Computers,_and_Networks_(Scientific_American%29http://www.citeulike.org/user/flashfonic/author/Chenhttp://www.citeulike.org/user/flashfonic/author/Fininhttp://www.ubiq.com/hypertext/weiser/SciAmDraft3.htmlhttp://en.wikipedia.org/wiki/Communications,_Computers,_and_Networks_(Scientific_American%29http://en.wikipedia.org/wiki/Communications,_Computers,_and_Networks_(Scientific_American%29http://en.wikipedia.org/wiki/Communications,_Computers,_and_Networks_(Scientific_American%29http://www.citeulike.org/user/flashfonic/author/Chenhttp://www.citeulike.org/user/flashfonic/author/Finin