B. Apolloni et al. (Eds.): KES 2007/ WIRN 2007, Part II, LNAI 4693, pp. 26 – 33, 2007.
© Springer-Verlag Berlin Heidelberg 2007
Modeling Smart Homes for Prediction Algorithms
A. Fernández-Montes, J.A. Álvarez, J.A. Ortega, M.D. Cruz, L. González,
and F. Velasco
Departamento de lenguajes y sistemas informáticos. ETSI Informática Avda. Reina
Mercedes s/n, Sevilla
firstname.lastname@example.org, email@example.com, firstname.lastname@example.org,
email@example.com, firstname.lastname@example.org, email@example.com
Abstract. This paper reviews the goals of the Domoweb project and the
solutions adopted to achieve them. As a result we enjoy a great support to
develop smart home techniques and solutions. As a consequence of the acquired
experiences a Smart home model is proposed as a division of four main
categories. In relation with the smart home model, we show the essential
features a smart environment prediction algorithm should satisfy and a
procedure to select relevant information from the model to achieve artificial
intelligence based solutions.
Smart home technologies are often included as a part of ubiquitous computing. Mark
Weiser  outlined some principles to describe Ubiquitous Computing (ubicomp)
from which we emphasize that the purpose of a computer is to help you do something
Home technologies have tried to help home inhabitants since its creation.
Nowadays, due to the popularization of computational devices, ubiquitous computing
is called to be the revolution to develop smart systems with artificial intelligence
Domoweb  is a research project which was originally developed as a residential
gateway implementation over the OSGi (Open Services Gateway Initiative) service
platform. Domoweb implements the standard services any residential gateway must
have like http server, web interfaces, device manager, user manager and other basic
Nowadays Domoweb conform a great platform where researchers from different
disciplines converges and where we can deploy, develop and test smart home related
solutions, due to the component based model, and the service oriented architecture
that Domoweb and OSGi supports.
This article focuses on modeling smart homes and the features the prediction
algorithms should implement. A good smart environment model must represent the
Modeling Smart Homes for Prediction Algorithms 27
properties, states, attributes and any other characteristic that could be useful in
building smart environments solutions as is proposed in section 2.
Artificial intelligent methods can be supported by this model like prediction
algorithms where is centered this article. The features these algorithms must be aware
of are defined in section 3 and finally a procedure to discriminate significant
information is released in section 4.
2 Smart Home Model
Artificial intelligence algorithms need a solid base of knowledge to work. This fact
demands us a great effort for building a model of the smart home and its environment.
Other projects have helped us to compose the model [3-5] which has been arranged in
four main categories explained in next sections and expounded in table 1.
2.1 Device Related
This category is the most obvious one so is related with the main elements in a smart
home environment. Ambient intelligence algorithms should be aware of next main
? Status. Algorithms must know the current states of devices installed on the
smart home. Obviously this is essential for these algorithms, and one of the
most important domains to build future predictions.
? Location. Devices usually occupy a location for a long time and this location
may be useful for ambient intelligence algorithms. The model must be able
to consider non-still devices as well, like motorized cleaner robots and
2.2 Inhabitants Related
Smart home algorithms must be aware of the inhabitants’ status to offer appropriate
predictions for any user or for the whole group of inhabitants. On this line we discuss
some of the necessary fields to infer inhabitants-aware predictions:
? Personal data. This field includes all the data concerning to a particular
person like name, age, sex and so on.
? Location. Inhabitants can move over the home rooms, so smart home
systems have to know where each inhabitant is, and should be able to identify
? Physical state. This field is related with the illness or injuries that an
inhabitant can suffer during his life. Smart home technologies must adapt to
this situations and offer appropriate replies.
? Mental state. The state of mind of a person can be defined as a temporary
psychological state. A depressed inhabitant behavior usually differs from a
euphoric one, so smart home must be consistent with these circumstances.
28 A. Fernández-Montes et al.
Table 1. Smart Home Model
CATEGORIES FIELDS DESCRIPTION EXAMPLE
Status Current state the
temperature is at
Location Where the devices
Cleaner robot is
in Living room.
Personal data Name, Age, sex. Diane is 45.
Location Where the
Mark is at
Physical state Illness, injuries, and
Roy has a cold.
Mental state Psychological state
the inhabitants are.
Date, time Temporary
Current time is
the phenomena that
currently occur in
Where these entities
Sofa is at living
HOME BACKGROUND Home limits
The properties of
the home structure
2.3 Environment Related
This category probably is the most diffused due to it covers heterogeneous and
difficult-to-limit fields as we discuss in the following list:
Modeling Smart Homes for Prediction Algorithms 29
? Date, time, season. Obviously smart home behavior should be different in
different temporal conditions and it may depend in these temporal factors as
the air condition policies will differ between summer and winter.
? Environmental conditions. This field comprises current environmental
conditions (sunny, cloudy, rainy and others). Smart home should make a
request for a weather forecast as well, which could be significant to assess
2.4 Home Background
This category must comprise all the relevant things concerned to inert entities and its
properties or qualities. This could be the less relevant category discussed, but anyway
could be significant in some concrete applications. We propose a couple of fields
related in next listing:
? Furniture location and position. Furniture occupies space at home and can
be moved. Location (room where the furniture is) and position (place where
the furniture is placed in a room) should be known by the smart home systems
due to it could be useful by concrete applications like robot movement related
algorithms, or presence detection related algorithms.
? Home limits properties. The texture of a floor, the color of a wall, or the
opacity of the windows could be significant in several cases such as
temperature adjustment applications.
3 Features of Prediction Algorithms
In this section we present the features that a smart home system must implement,
specially related with the prediction algorithms the systems may have. The article
doesn’t focuses on artificial intelligence techniques like the studies of [5-10] do, but
on what are the most important and indispensable features that must be considered to
develop prediction algorithms. Much of the ideas presented below could be useful to
implement others smart home algorithms.
3.1 Prediction Supported by Last Events and States
Prediction algorithms should consider as input data two main aspects. First it should
analyze the last events occurred in the home’s performance field which have changed
the home status in any manner.
Second it should analyze current state and previous states as well. This way the
algorithms should determine last changes in the home status, and which events have
been involved in these changes.
In section 5 we discuss further about these aspects and propose a way to consider
states and events.
30 A. Fernández-Montes et al.
3.2 Predictable by the Inhabitants
Smart homes should learn inhabitant behaviors and habits, and build predictions, but
it has to be predictable by the inhabitants to achieve no unexpected behaviors.
3.3 Understandable Decisions
Prediction algorithms have to offer an explanation of their predictions and/or actions.
This way the inhabitants will be more trusted with the decisions the system took. This
will improve the user acceptance of the smart home predictions.
3.4 Wrong Decisions Detection and Related Improvement
If the smart home executes a wrong decision it should be aware of this failure and be
able to learn from its errors. A possible scenario should be when someone arrives
home at night and the system orders the hall lights to switch on, but immediately the
user performs the opposite action (which should be switch off the lights). The system
has to notice this failure and extract some knowledge from this experience to face
future similar situations with guarantees of success.
3.5 Anomalies Detection
In some scenarios, the smart home should consider that a wrong decision executed as
a consequence of a wrong prediction could be produced due to an anomaly. We can
consider this scenario, an inhabitant wake up all working days at 7.00 a.m., so smart
home switch on the coffee-maker some minutes before. But when the wake-up alarm
goes off, the smart home detects no movement so it could be desirable to request an
emergency service with a standard phone call or other mechanism.
3.6 Quick Response When Required
Some situations require the smart home prediction algorithms to return a response
with time limits. These algorithms are responsible for detection of this situations and
they must be able to adapt to these circumstances in order to provide a quick
3.7 General Policies and User Adaptation
Smart homes technologies should implement the mechanisms to support some home
policies like security, energy or comfort. These policies can be collected in different
levels. The inhabitants could define some general policies which could be
customizable by concrete inhabitant preferences. We can discuss the following
scenario; inhabitant A gives preference to energy consumption over comfort. To
satisfy these preferences smart home system should try to minimize the energy
Modeling Smart Homes for Prediction Algorithms 31
consumption produced as a result of its predictions. On the other hand, inhabitant B
gives preference to comfort over energy consumption, so algorithm has to adapt to
this user preferences policy.
This way if the prediction algorithm determines that inhabitant A arrives home, it
will switch on air conditioner system only at the arrival of the inhabitant, however if
the inhabitant B is going to arrive home, the smart home should switch on the air
conditioner system sometime before the arrival of the inhabitant.
4 Window of States
Smart home prediction algorithms usually make use of last states and events occurred
at home environment. A state can be defined as the whole set of pairs field-value
according to the model presented in section 3. We could also distinguish subsets of
these states for each category so we shape the related sub-states. This way we can
consider sub-states to include devices related, inhabitants related, environment related
and background related information.
Events can be defined as something that happen at a given place and time. In smart
home contexts, we can add to this definition that the event must cause a state change
of the smart home. Events that do not cause a state change shouldn’t be considered by
smart home algorithms as something significant.
When building a smart home solution we can discuss what states and events should
be considered. To resolve this situation we propose the use of a window which
envelops the states (and events) that are going to take part in the giving response as
shown in figure 2.
Fig. 1. Window of states
States are represented as circumferences labeled from S0 to Sj+1, transitions
between states as arrows labeled with the event which caused the state change.
Reader should notice that states from S0 (initial state) to Sj-1 are past time states, Sj
is the current state and Sj+1 is the next state which is currently unknown.
The size of the window n equals to the number of states and events to be
processed. This size is deduced from the equation n = j-i+1.
32 A. Fernández-Montes et al.
4.1 Dynamic vs. Static Window
Two approaches can be considered related with the size of the window. Algorithms
designer could prefer the use of a static and predefined size of this window to build
smart predictions. This approach can be useful in non-complex solutions, so it’s easy
to implement. The size could be estimated by means of empirical techniques and the
own designer experience.
However dynamic window size is a more powerful approach for determining the
size in real time. Algorithms could extend and reduce the size of the window
depending on the requisites of current application like time of processing, hardware
capabilities, solution accuracy and others.
5 Conclusions and Future Work
The previous sections have discussed some basis related with smart environments
methods. A first model approach have been proposed as a start point to develop
successful solutions, and prediction algorithms features form a guideline to implement
Prediction algorithms promise to be applicable to many areas within the smart
home and smart environments so future work should be centered in the study of the
methods and artificial intelligence techniques for prediction as in the improvement of
the model definition.
Acknowledgements. This research is supported by the MEC I+D project InCare. Ref:
 Weiser, M.: The computer for the 21st century. Scientific American 265(3), 66–75 (1991)
 Álvarez, J.A., Cruz, M.D., Fernández, A., Ortega, J.A., Torres, J.: Experiencias en
entornos de computación ubica mediante arquitecturas orientadas a servicios. In: JSWEB
2005 (W3C) (2005)
 Cook, D.J., Youngblood, M., Das, S.K.: A Multi-agent Approach to Controlling a Smart
Environment. Designing Smart Homes, 165–182 (2006)
 Li, J., Bu, Y., Chen, S., Tao, X., Lu, J.: FollowMe: On Research of Pluggable
Infrastructure for Context-Awareness. In: Proceedings of the 20th International
Conference on Advanced Information Networking and Applications, IEEE, Los Alamitos
 Das, S.K., Cook, D.J.: Designing Smart Environments: A Paradigm Based on Learning
and Prediction. In: Pal, S.K., Bandyopadhyay, S., Biswas, S. (eds.) PReMI 2005. LNCS,
vol. 3776, Springer, Heidelberg (2005)
 Leake, D., Maguitman, A., Reichherzer, T.: Cases, Context, and Comfort: Opportunities
for Case-Based Reasoning in Smart Homes. Designing Smart Homes, 109–131 (2006)
 Hagras, H., Callaghan, V., Colley, M., Clarke, G., Pounds-Cornish, A., Duman, H.:
Creating an ambient-intelligence environment using embedded agents. IEEE Intelligent
Systems 19 (2004)
Modeling Smart Homes for Prediction Algorithms 33 Download full-text
 Choi, J., Shin, D., Shin, D.: Research on Design and Implementation of the Artificial
Intelligence Agent for Smart Home Based on Support Vector Machine. In: Wang, L.,
Chen, K., Ong, Y.S. (eds.) ICNC 2005. LNCS, vol. 3610, Springer, Heidelberg (2005)
 Roy, N., Roy, A., Das, S.K.: Context-Aware Resource Management in Multi-Inhabitant
Smart Homes:A Nash H-Learning based Approach. In: IEEE PERCOM’06 (2006)
 Yamazaki, T.: Beyond the Smart Home. In: ICHIT’06 (2006)
 Jiang, L., Llu, D.-Y., Yang, B.: Smart home research. In: Proceedings of the Third
International Conference on Machine Learning and Cybernetics, Shanghai, pp. 26–29