The reasoning engine could also adapt to different
smart home environments through a rule generation
process. Rules are created such that logical
consequences could be inferred from low-level
context received over a sensor network. The
reasoning engine is also built to detect any
anomalies in a person’s ADL and also to reason if
any accident has happened. Based on a given set of
rules controlled by the nurses or caregivers, alerts or
reminders could then be sent out to the medical
personnel in-charge or patients whenever
abnormalities are detected, for example when
somebody stays too long in the shower and needs to
be reminded to leave the washroom. With this set of
rules, nurses and caregivers would be able to
determine and configure actions to be taken and the
different type of reminders to be issued based on
each person’s unique personality or habits.
In scenarios where sensors are unavailable to
transmit sensor information due to low battery
power or incorrect sensor data being transmitted to
the reasoning engine, a probabilistic model would be
used to determine the type and number of rules that
are to be fired and the subsequent consequences due
to the fired rules.
In addition, we note that existing reasoning
engines are mostly governed by rules that are pre-
defined by programmers before being deployed for
end-users usage. Editing of such initial set of rules is
often too difficult for non-technical end-users and is
also a barrier for user’s acceptance towards the
system. Therefore we intend to only host generic
rules with a pre-defined setting and also develop a
control mechanism that allows the user to determine
preferences within their personal profiles to be
uploaded into our reasoning engine.
The rest of the paper is organised as follows.
Existing reasoning engines and related work are
listed and compared in Section 2. We introduce our
novel context-aware reasoning engine in Section 3.
In Section 4, we describe the implementation of our
prototype and scenario which our prototype has
already been tested in, together with feedback from
medical personnel. We end with the conclusion in
Section 5.
2 RELATED WORK
We are aware of current reasoning engines with
similar capabilities pertaining to the uncertainty
aspect. Many probabilistic schemes for context
processing have been used to tackle the issue of
uncertainty. The theory on fuzzy logic (Zadeh, 1996)
and Hidden Markov Models (HMM) (Krogh et al.,
1994) have been mentioned and discussed as
potential probabilistic schemes that could be used
(Dargie, 2007). Ranganathan et al. (Ranganathan,
2004) have used Microsoft’s Belief Network
(MSBN) software to create Bayesian networks to
represent relationships between events. Liu Peizhi et
al. (Liu, 2008) applied the combination rule in
Dempster-Shafer Theory of Evidence (DST) to their
reasoning mechanism to construct the inferencer.
There was work done on Dynamic Bayesian
Networks (DBN) that are able to represent and learn
in order to produce more complex models. Murphy
modelled hierarchical HMMs as DBNs, as part of
his work (Murphy, 2002).
These approaches, apart from fuzzy logic, are
mainly generalizations of the Bayesian network and
are proposed as possible solutions to solving the
uncertainty problem by providing the probabilistic
reasoning mechanism. Our approach towards
uncertainty is to also create a probabilistic model
with probabilistic information optimally pre-defined.
However, generic rules related to common smart
home scenarios would initially be obtained via a
rules repository.
We could not afford to have learning processes
when we deploy our reasoning engine as it is
expected to be effective on deployment. Therefore,
as and whenever the reasoning engine is unable to
handle any given situation with the prepared rules,
the end-user could personalise or customise the rules
and probabilistic information to meet their needs.
This manner of customisation would be covered by
our rule generation process and end-user control
mechanism within our reasoning engine. User
profiles from different individuals could also be used
for customisation purposes.
There are other reasoning engines that are rule
based, but do not take into account high level
knowledge that could be used to optimize rule
design (Goh, 2007). There are also methods that
utilise high level knowledge but are instead used to
computerize Clinical Practice Guidelines (CPG) so
as to operationalize them within Clinical Decision
Support Systems (Hussain, 2007).
3 OUR REASONING ENGINE
3.1 Rule with High Level Knowledge
Our context-aware reasoning engine (later referred
to as “engine”) is rule driven and based on first order
logic. It is able to work without training. The engine
CONTEXT-AWARE REASONING ENGINE WITH HIGH LEVEL KNOWLEDGE FOR SMART HOME
293