Simulating Human Activities to Investigate Household Energy
Consumption
´
Edouard Amouroux
1
, Thomas Huraux
1,2
, Franc¸ois Semp
´
e
3
, Nicolas Sabouret
1
and Yvon Haradji
2
1
LIP6 - Universit
´
e Pierre & Marie Curie, Paris, France
2
EDF Research & Development, Clamart, France
3
Franc¸ois Semp
´
e AE, Paris, France
Keywords:
Agent-based Modelling, Social Simulation, Energy Control, Inhabitants’ Dynamic Behaviour.
Abstract:
This paper presents a multi-agent model and simulator for the investigation of inhabitants’ behaviour in re-
lation with energy consumption in a household, at a fine-grain level. We present the meta-model that allows
non-computer specialists to define the household activities, and the SMACH simulator that helps specialists
analyse behaviour and manage and control energy consumption. We illustrate on concrete example scenarios
how the system’s adaptation mechanisms allow us to outline behavioural patterns.
1 INTRODUCTION
Energy efficiency and consumption reduction is a ma-
jor challenge for our society due to awareness raising
to the greenhouse effect and growing tensions on the
energy market. European Union (EU) set the ambi-
tious objective to divide by four greenhouse gas emis-
sions by 2050. Yet, a large part of the final energy
consumed in Europe, 26.6%, is used within residen-
tial sector, according to the EEA (European Environ-
ment Agency, 2008). For this reason, several pro-
grammes in the residential sector have been proposed
such as building renovation, definition of low energy
building (LEB) and smart energy controller (Freire
et al., 2008), consumer awareness to cost and carbon
emissions thanks to real-time feedback (Rogers et al.,
2011). At a larger scale, smart grid have been pro-
posed (Massoud and Wollenberg, 2005) in order to
optimise the production and the distribution of elec-
tricity depending on consumption.
Nevertheless, individuals’ behaviour also strongly
influences energy consumption. In France, accord-
ing to (Poquet and Dujin, 2008), despite a moderate
increase of household electricity consumption (8%
from 1973 to 2003), a strong increase of the spe-
cific uses of electricity (i.e. electricity used except for
heating) occurred (85% for the same period). In this
context, the study of propositions to diminish specific
uses of electricity becomes a crucial issue.
One aspect of the problem is to study the con-
sumption of electrical appliances in real-life situa-
tions. That aspect is at the core of the REMODECE
1
european project, that provides knowledge on elec-
tricity waste due to inefficient appliances and standby
consumption. A complementary approach is to study
household activities. Several works have been pro-
posed in this direction such as (Duy Ha et al., 2006;
Mahdavi and Pr
¨
oglh
¨
of, 2009; Kashif et al., 2012),
but they usually focus on electricity demand predic-
tion, so as to optimise energy control systems. Never-
theless, one might want to consider influencing peo-
ple’s consumption behaviour through incentives such
as variable electricity pricing, awareness campaigns,
etc. For instance, (Newsham and Bowker, 2010) sug-
gests that a critical peak price program might reduce
by 30% the peak load.
Several models allows to take into account hu-
man activities and their resulting electricity demands.
Many of them rely on statistical approaches such
as (Wid
´
en and W
¨
ackelgard, 2010) and (Yamaguchi
et al., 2011) that use hidden Markov chains to gen-
erate human activities related to electricity demands.
Despite their statistical validity, they focus on repre-
senting an “average” familly and scenario and, thus,
do not allow to investigate on the activity dynam-
ics related, for instance, to specific events. Actu-
ally, agent-based models are best fitted for such anal-
ysis, as recently exhibited by the model proposed
in (Kashif et al., 2012). This model relies on the
Brahms language (Sierhuis et al., 2000) to allow ex-
1
http://remodece.isr.uc.pt
71
Amouroux É., Huraux T., Sempé F., Sabouret N. and Haradji Y..
Simulating Human Activities to Investigate Household Energy Consumption.
DOI: 10.5220/0004225100710080
In Proceedings of the 5th International Conference on Agents and Artificial Intelligence (ICAART-2013), pages 71-80
ISBN: 978-989-8565-39-6
Copyright
c
2013 SCITEPRESS (Science and Technology Publications, Lda.)
plicit representation and organisation of human activ-
ities. Nevertheless, the parametrization of this model
appears to be very complex. They are hardly acces-
sible to field experts and do not allow simulation of
complex and long situations.
In this paper, we present a meta-model and a sim-
ulator, called SMACH, that allows experts to model,
simulate and study the household activities and their
relation with electrical consumption depending on
specific pricing policies or appliance use. This system
can be used to evaluate possible incentives to dimin-
ish peak hours electricity demand.
In numerous modelling efforts, expertise collec-
tion is combined with definition of the technical ar-
chitecture which often limits the scalability of the
model. In contrary, our approach, incremental and
situated modelling (Semp
´
e and Gil-Quijano, 2010) ,
clearly separated the two processes: (1) we propose
a meta-model generic enough to (2) let field experts
integrate their knowledge and evaluate their hypothe-
ses by defining scenarios (for instance, in the present
application : a household of two adults, two kids, one
infant, their activities their habits, house environment
and specific events). Once a new question emerges or
an incoherence is pointed out by domain experts, the
cycle starts again by making amendment to the previ-
ous meta-model. In practice, our meta-model and the
dedicated simulator (SMACH) allow experts to de-
fine fine-grain activities (ranging from few minutes to
hours) and to study their evolution over long period
of time (one year). Using an advanced and intuitive
user interface, the simulator allows experts to under-
stand the respective influence of activities and energy
consumption, and the co-influence of activities.
In this paper, we focus on the presentation of the
meta-model of human activities within the household
(presented in Section 2) and the dynamics of this
model which includes communication, beliefs, action
selection and behaviour adaptation (detailed in Sec-
tion 3). Section 4, introduces the simulator GUI and
provides two distinctive examples of household emer-
gent adaptation forced by action competition and vari-
able electricity pricing. Section 5 concludes the paper
and presents the ongoing work.
2 META-MODEL OF HUMAN
ACTIVITY
Our meta-model of human activity follows two pur-
poses that are tightly connected. First, it aims
at describing human behaviours in the context of
household electricity consumption. This descrip-
tion must remain easy to manipulate, even for non-
computer specialists. To this purpose, we followed
an individual-centered agent-based approach in which
human activity is decomposed into tasks. Second, it
serves as agent description model for our multi-agent
simulator (section 3). This simulator allows to study
the evolution of human behaviour depending on the
characteristici.e.s of energy pricing and household ap-
pliances, that are defined in the environment.
2.1 Environment
Let [d
s
,d
e
] be the considered time period. En-
ergy prices can be specified to different time periods
{[d
i
;d
i+1
], price
i
} with d
0
= d
s
and price
i
R
+
, the
kilowatt hour price (kWh) for the i
th
sub-period.
The house is composed of several rooms where
electrical appliances are spread. Let R be the set of
rooms and E the set of appliances. For each room
r (r R), we note E
r
E the set of electrical ap-
pliances in this room. In our model, each appliance
can only be in one room, fixed for the duration of the
simulation.
2.1.1 Appliances
Each appliance e E is characterised by its electrical
consumption θ
i
. We note power : E R
+
the func-
tion that returns the current electrical consumption of
an appliance. In our model, we consider two different
kinds of appliances:
State-based appliances are defined as a tuple
{θ
o
,θ
s
,st} where θ
o
and θ
s
are the electrical con-
sumptions (in R
+
) when e is running or in standby
mode, and st {off,standby,on} is the state of the
appliance, modified by individuals in the house dur-
ing their activities. Heaters, TVs, fridges... can be
represented by state-based appliances.
Program-based appliances are defined as a tuple
< P
e
,st > where P
e
is a set of operating programs
characterised by load curves. Each program p is a
couple (τ
p
,φ
p
) where τ
p
is the program duration and
φ
p
: [0,τ
p
] R
+
gives the appliance consumption
at each time of the program. The status st of the
appliance is then defined by a couple st = (p
c
,t
c
)
where p
c
is the currently selected program and t
c
is
the time since the beginning of this program. Thus,
power(e) = φ
p
c
(t
c
). Ovens can be represented by this
kind of appliances. Note that state-based appliances
can be seen as specific cases of program based appli-
ances (with three programs and constant load curves).
All energy consumption profiles comes in our
model from real data from the REMODECE project.
ICAART2013-InternationalConferenceonAgentsandArtificialIntelligence
72
2.2 Household Members and their
Behaviours
Individuals represent the household members. Each
individual i I is characterised by its responsibility
level res
i
and the set of actions it can perform A
i
(see
below).
The responsibility level allows us to distinguish
between children, youngsters, adults and elderlies in
the simulation (see Section 3). Moreover, at each time
of the simulation, we note:
room(i) R the room in which the individual is
located;
action(i) A
i
the individual’s current activity;
B
i
the individual’s beliefs set (see Section 3.1.1);
C
i
the individual’s communications set (see sec-
tion 3.1.2);
2.2.1 Tasks
A task t T represents a generic activity in the house,
from which individual actions are derived. A task is a
tuple < τ
min
,τ
max
,bene,visi,coll,E
t
,T
pre
> where :
τ
min
,τ
max
the minimum and the maximum task du-
ration;
bene {alone,collective} describes whether this
task, once achieved, can be used by other individ-
uals or not (see preconditions below);
visi {none,individual,room,house} describes
the visibility (by other individuals) during and af-
ter the task realisation (see visibility of actions in
the following subsection);
coll {none,allowed,mandatory} describes
whether this task cannot, can or must be per-
formed alone or with other individuals.;
E
t
= {< e, p >} | e E & p {e.Pe} the set
of appliances used during this task realisation and
the associated programs (for program-based ap-
pliances);
T
pre
T is the set of pre-conditional tasks of t.
An individual can perform a given task if and only
it has the information that all pre-conditional tasks
have been achieved by himself (if bene = alone)
or by others (if bene = collective). The precondi-
tion relation maps into a graph of tasks;
2.2.2 Actions, Rythms and Events
An action a A represents the instanciation of a task
by an individual. We denote actor(a) the unique i I
such that a A
i
.
2
An action is defined by a tuple a = ht,w,R
a
,sti
where t T is the associated task, w W is the
action rhythm (see below), R
a
R is the set of
rooms in which this action can be performed and
st undone,done is the action status, whose dynam-
ics is described in section 3.2.2. When an action has
been achieved (st = done), we note rooms(a) the set
of rooms in which it has been done.
Rhythms. In order to express habits of humans, the
concept of rhythm has been introduced in the meta-
model. A rhythm w (w W ) allows to define, for
each action, a frequency and preferred periods. The
preferred period allows to specify the month, day of
the week and the time slots in which an agent may
perform a task. To each of these specifications is as-
sociated a force indicating if the system should more
or less take into account these periods. More formally,
a rhythm is a tuple hper
w
, f req
w
,var
w
,Pp
w
i where :
per {day, week,month, year} is the period con-
sidered;
f req N
+
is the frequency for this period;
For instance, per = day and f req = 2 means
“twice a day”.
var {weak, medium,strong} is the frequency
variability;
PP is a set of preferred sub-periods in the
considered period. Each preferred period
pp
i
is a tuple with h[d
1
,d
2
],strengthi where
d
1
and d
2
define the sub-period, strength
{weak, medium,imperative} the strength of the
preferred period;
For instance, let us consider the task “eating”. We
might want to define the default rhythm for this task
as being performed three times a day in most situa-
tions (per = day, f req = 3, var = weak) with pre-
ferred periods pp1
=
< [7 : 00, 9 : 00],imperative >,
pp
2
=< [12 : 00, 14 : 00], weak > and pp
3
=< [19 :
00,22 : 00], strong >, which means that our individual
will eventually eat in the morning, possibly at lunch
and very probably at dinner. Note that the number of
preferred periods does not need to be equal to f req
(in which case some executions of the task will re-
main completely free over the period).
Events. Events represents exceptional situations
(such as holidays, sickness, etc.) during which usual
actions cannot be performed. An event q Q can
be defined as a couple ([d
s
q
,d
e
q
],W
q
with W
q
a set of
2
When different individuals can perform the same task,
each one is associated with a different instance.
SimulatingHumanActivitiestoInvestigateHouseholdEnergyConsumption
73
couples (a,w). Concretely, an event associates new
rhythms w to some actions a for a given time period
[d
s
q
,d
e
q
]. For instance, during holidays, the rhythm
associated with actions “work” is null.
2.2.3 Collective Aspects
Our meta model was designed so as to integrate
the collective aspects in family organisation, such as
helping the children, sharing domestic tasks or spend-
ing time together during certain activities. The coll
and bene parameters in tasks play a key role in lead-
ing to a cooperation mechanism among individuals,
following the simulation model that is presented in
the next section. As an illustration, there is a syn-
chronisation mechanism between agents when coll =
mandatory so that individuals wait for each other to
begin the task. Similarly, the fact that some tasks with
collective benefits can be used by other agents allows
to really describe complex cooperation in the house.
3 SIMULATION OF HUMAN
ACTIVITIES
Based on the meta-model presented in the previous
section, human activity is simulated in a multi-agent
simulator called SMACH. In this simulator, agents
correspond to the human individuals in the model and
their procedural loop is presented in the next two sub-
sections. The adaptation of this loop over time to the
scenario constraints is presented in subsection 3.3.
3.1 Multi-agent Model
To each individual i I corresponds an agent in
SMACH. All agents run synchronously in the plat-
form and each step consists into selecting the best cur-
rent action based on the agent’s beliefs. In this sub-
section, we present the agent beliefs and the commu-
nication model. Next subsection presents the agent’s
dynamics.
3.1.1 Beliefs
A belief b of an individual is a tuple b = hd, a, si
such that d is the creation date, a A an action and
s {undone, running, done} is the believed status of
this action. < d,a,s > B
i
means that, at time d,
individual i had an information about action a being
in status s (with s = running when i I such that
action(i) = a). This belief is kept in is beliefs base
as long as no observation or deduction contradicts it.
The initial beliefs set B
i
of an agent i is that all
actions have the status : undone. We also consider
individuals know from the start which one can per-
form which task. The dynamics of the beliefs set is
presented in section 3.2.1.
3.1.2 Communications
In addition to individual actions, people in the house-
hold must communicate to exchange information or
request the participation of others in tasks. This is
represented using a multi-agent communication ap-
proach such as FIPA-ACL (FIPA consortium, 2003),
based on speech-act theory by Searle (Searle, 1969).
A conversation c C
i
is an ordered set
of n messages, msg
1
,...,msg
n
with msg
i
=<
d,to, f rom, per f Per f ,c > where d is the date of
the message, to and f rom are the sender and the re-
ceiver of the message, per f is the message performa-
tive and c its content.
In our model, the main considered performatives
are : I do ..., Are you ready to ... ?, What are you do-
ing?, Did you ... ?, Can you ... ? and their following
replies No, Yes, Later. The content of the message,
when required, is always a single task t T .
The selection of messages, based on the agents be-
liefs, is presented in the next subsection.
3.2 Agents’ Dynamics
This section first presents how beliefs are maintained
in the agents base. Then, we present how actions
are selected, based on individual’s preferences, be-
liefs and communications.
3.2.1 Beliefs Update
Beliefs in the agent’s base B
i
are added or removed
at each turn, based on the agent’s perception (either
direct perception in the visibility zone of an action, or
via a message) and on automatic inferences on actions
status and individual’s possible rooms.
More formally, let d
0
be the current time stamp
and let us note +
i
b and
i
b the addition and removal
of belief b in B
i
.
We first define the visibility zone of an action
a A, depending on its status and task’s visibility,
as follows (all cases are exclusive):
if a.t.visi = none, then it is not visible: visi(a) =
/
0;
if a is active (i.e. i I such that action(i) =
a) and has visibility a.t.visi {individual,room},
then visi(a) = {room(i)}
i|action(i)=a
;
if a is active and a.t.visi = home, then visi(a) = R
ICAART2013-InternationalConferenceonAgentsandArtificialIntelligence
74
if a is finished (i.e. a.st = done) and a is visi-
ble on on individuals (a.t.visi = individual), then
visi(a) = room(actor(a));
if a is finished and a.st.visi {room,home}, then
visi(a) = rooms(a);
The agent belief base B
i
is updated when observ-
ing actions from their visibility zone:
a|room(i) visi(a),@hd
0
,a,status(a)i B
i
+
i
hd
0
,a,status(a)i
Similarly, when receiving a message with per-
formative I do or an answer to a message Did
you in a conversation, a new belief is added:
+
i
hd
0
,a,status(a)i, with a the action corresponding
to the sender and the task (content) of the message.
Moreover, a coherence mechanism removes all
previous incompatible belief:
An action can only have one status:
+
i
hd
0
,a,status(a)i d
0
< d
0
,
i
hd
0
,a,s
0
6=
status(a)i
An agent can only do one action at a
time: +
i
hd
0
,a,status(a)i a
0
|actor(a) =
actor(a
0
),
i
hd
0
,a
0
,s
0
iand +
i
hd
0
,a
0
,donei;
A task “must” be over after its maximum duration:
if b B
i
such that b.d + b.a.t.τ
max
> d
0
, then
i
b
and +
i
hd
0
,b.a,donei;
Two actions associated with one sin-
gle “exclusive” task (a
1
.t = a
2
.t = t and
t.coll = none) cannot be active simultaneously:
i
hd
0
,a
2
,runningi and +
i
hd
0
,a
2
,donei
Note that when a previous belief is updated, its sta-
tus is moved to done (actions that can no longer be
performed are considered as achieved by default ).
3.2.2 Action Dynamic
The status of an action st (from undone to done) is
actually more complex than a simple done/undone
boolean. It is controlled by four internal variables:
real
number
N
+
is the number of realisation al-
ready conducted within the current day. The value
of a.st {done,undone} used in beliefs is directly
derived from a.real
number
1;
real
max
N
+
is the planned maximum number of
realisation for the current day (which directly de-
pends on w);
τ a.t.τ
max
is the elapsed duration when a is run-
ning;
pr [1; 1] is the action priority.
The priority a.pr evolves in time (see below, section
3.2.5) and the agent selects the action with the high-
est priority amongst all possible actions. An action
is possible if and only if all the following criteria are
met (see also Table 1):
Every precondition tasks have been conducted;
All needed appliances are available;
Table 1: Action availability conditions.
(a) t
0
a.t.T
pre
,a
0
A|a
0
.t = t
0
a
0
.st = done
(actor(a
0
) = actor(a) t
0
.bene = i.e.collective)
(b) e a.t.E
t
,@a
0
/a
0
.running e a
0
.t
0
.E
t
0
Note that a.st cannot be computed directly by the
agent. On the contrary, the agent will use its belief
base to decide whether actions are done or undone
and whether they can be performed. In the algorithm
in table 1, a.st = x means < d,a,done > B
i
. How-
ever, when starting an action, the simulator will check
all the actual preconditions and an agent will not be
able to perform an action that it believed possible if
table 1 is not checked. In this case, all inconsistent
beliefs are removed from the agent base.
3.2.3 Interruption and Realisation
The running action of an individual (a = action(i)),
can be interrupted for two reasons: 1) another (pos-
sible) action, a
0
, has a higher priority or 2) a became
impossible. When this occurs, another action will be
selected and the status of a is modified depending on
its duration time :
If a has been executed for a duration τ τ
min
, its
number of realisation a.real
number
is incremented
and a.τ is reset to 0. The action status a.st
switches do done.
If a.τ < τ
min
The action is put in a “standby
mode“: a.τ is blocked at its current value, its num-
ber of realisation is not increased. For instance, a
child is interrupted during homework, (s)he does
not loose the benefit of having started working.
3.2.4 Daily Reset
The action’s state evolves over time depending on the
individual behaviour and his/her environment. It is
reset at midnight except for the sleep action which
is reset at noon. In practice, a.st is reset to undone,
a.real
number
, a.τ and a.pr are reset to 0, and the maxi-
mum number of realisation is re-computed depending
on the action rhythm if the new day contains a pref-
erential period, ppi, and if some realisation are to be
done (w.real < w.real
max
).
SimulatingHumanActivitiestoInvestigateHouseholdEnergyConsumption
75
3.2.5 Action Priority
An action priority takes into account the individual’s
internal state: preference
3
, commitment to the current
action (see table 2 for details) and the influence of the
associated rhythm (a.w, see also 3.3). In addition to
the individual’s internal state, the priority of an action
may be influenced by external factors: energy price
level (variability of the energy price is summarised as
3 levels), other individuals invitations (through mes-
sages) and events influence. Table 2 describes the
computation of this raw priority, called pr
raw
:
pr
raw
= pre f + in f real + in f pp + in f eng +
in f ener + in f inci + in f eve
All the coefficient values have been determined
empirically, only their relative order is significant. For
instance, the individual preference is much less im-
portant than its commitment/lassitude to his/her cur-
rent action.
In order to allow the representation of sequential
behaviour (e.g. leave for work requires to be suit up
which requires to have taken a shower), the action pri-
ority must also consider the priority of the most urgent
depending action, i.e. the maximum of priorities of all
actions for which a is in precondition:
pr
dep
= max
a.ta
0
.T
pre
{a
0
.pr}
Thus, the action priority a.pr is the maximum of these
two values:
a.pr = max{a.pr
raw
, pr
dep
}
3.3 Behaviour Adaptation
Adaptation is essential in our model as we want to
study the possible reactions of a household to vari-
able energy pricing, habits emergence and other sin-
gle events (e.g. holidays, sickness, etc.). Adaptation
is conducted trough re-organisation of the household,
i.e. when tasks are made and who does which collec-
tive task.
We implemented two adaptation mechanisms dur-
ing a simulation: (1) everyday life obligations or
strong habits are represented through rhythms with
imperative frequencies and/or preferred period (PP)
and (2) habits may emerge thanks to the controlled
mobility of actions.
3.3.1 Everyday Life Strong Constraints
Some everyday life actions may require to be con-
ducted at specific time. Such constraint is controlled
3
minimal factor enabling complete differentiation be-
tween actions with similar priorities
Table 2: Raw priority external factors.
(a) pre f [0,01;+0,01] is the individual preference for
the action;
(b) in f
real
{−0,2;0} is the penalty if the action already
reached its maximum number of realisation (a.real
max
);
(c) in f
pp
{penalty,0, bonus} is the action’s rhythm in-
fluence, with penalty and bonus computed as described
below in section 3.3. in f
pp
= 0 if a.pp =
/
0 and is neg-
ative (penalty) when the current date is outside a pre-
ferred period and positive (bonus) otherwise.
(d) in f
eng
[0.1; +0,1] is the commitment or lassitude
influence. Its value is set to 0 for all non running ac-
tions. Otherwise, it is defined by a linear interpola-
tion from 0.1 when the action just began, to 0 when
it reaches τ
min
and 0.1 when at τ
max
.
(e) in f
ener
is the electricity price influence, defined by:
in f
ener
= 0 if a.t.cons = 0 or price = medium;
in f
ener
= 0.1 if price = high;
in f
ener
= +0.02 if price = low.
Tasks that consume energy are strongly penalised when
the energy price is high, but only marginally favored
when it is low.
(f) in f
inci
[0; +0,1] computes the influence of other in-
dividuals, through messages with performative Are you
ready to and Can you, also called invitations. When
a.t.coll = none, in f
inci
= 0. Otherwise, it is increased
by +0,02 per invitation (with a maximum of 0.1).
(g) in f
eve
[0, 1; +0,1] is the events’ influence. For each
q Q such that d
current
[d
s
q
,d
e
q
] and (a,w) W
q
,
in f
eve
is modified by ±0.05, depending on the new ry-
thm ws properties compared to the action’s initial ry-
thm a.w.
through the PP influence (see Table 2): positive dur-
ing a PP and negative outside of any PP, in order to
favour within PP and penalise outside PP realisation
respectively. Unfortunately, as in the everyday life,i.e.
several actions may compete for a realisation during
an overlapping timeslot (e.g. have breakfast and take
shower both should be done between 7 to 8am). To
lessen such competition between imperative rhythms,
each action at the end of the day reevaluates its bonus
and penalty values according to the following policy:
bonus must remain between 0 and 0.15;
penalty must remain between 0.15 and 0;
When the action could not be executed during its PP
this day, bonus is increased 0.02;
When the action was achieved during its PP for this
day, the bonus is decreased by 0.01. This ensures
a slow re-organisation capacity.
When the action was executed outside a PP, bonus is
increased by 0.01;
When the system could not reach the target reali-
ICAART2013-InternationalConferenceonAgentsandArtificialIntelligence
76
Figure 1: SMACH GUI (analysis mode).
sation number for this action (i.e., real
number
<
real
max
), penalty is decreased by 0.02, since we
want to give priority to action achievement over
PP constraints.
In other words, actions that could be done during
their PP during day n will be less favoured on their
PP in day n + 1 and vice-versa. Moreover, actions
that missed some executions will be encouraged. Al-
though this policy cannot guarantee the satisfaction of
all realisation constraints (which may not be possible
at all), it provides modeller more freedom regarding
rhythms definition.
3.3.2 Everyday Life Habits
Outside the competitive timeslot, habits may emerge
as in everyday life. This is achieved in SMACH
via the automatic creation of non-imperative rhythms
during simulation. In practice, if an action has
been triggered at a given period, this period will be
favoured the following days (using a limited mem-
ory window)
4
. As a consequence, all actions with no
specified PP are allowed to find the most suitable pe-
riods for their realisations and to keep them as long
they are suitable.
The maximum values for bonus and penalty are
4
The implementation detail of this mechanism is not de-
tailed in this paper but it is very similar to the one presented
in the previous subsection
lesser than those of imperative PP, so this kind of ac-
tions can change its PP more easily. The next section
will give an example of such adaptation: in conjunc-
tion with the priority penalty during periods with ex-
pensive energy, the household organisation is altered.
4 IMPLEMENTATION AND
EVALUATION
The SMACH simulator has been implemented in
Java and several example scenarios have been pro-
posed to validate our approach. We evaluated dif-
ferent generic modelling and simulation platforms
(i.e. Repast (North et al., 2007), Netlogo (Wilensky
and Evanston, 1999) and GAMA (Taillandier et al.,
2010)) but none would meet our two most impor-
tant requirements. First, a tailored modelling helps
to ease definition of simulation scenario by field ex-
perts. Programming-like modelling language are out
of the question for non-computer-scientists. Second,
a domain-related simulation analysis tool is also re-
quired by field experts and the implementation of such
a tool in a constrained environment can be very costly.
For these two main reasons, we developped our own
agent platform for the SMACH simulator, which of-
fer a detailed simulation analysis GUI. This GUI is
detailed in the following subsection. We will also
discuss two examples that illustrate the ability of the
SimulatingHumanActivitiestoInvestigateHouseholdEnergyConsumption
77
Figure 2: Activity diagram: (a) first week and (b) working day pattern.
model to express rhythm constraints and, at the same
time, and the actions reorganisation process. The first
example focuses on action competition whereas the
second one demonstrates how is handled household
adaptation in the situation of a change in electricity
pricing policy.
4.1 Simulation Analysis GUI
The SMACH simulation analysis GUI shown in fig-
ure 1 can be detailed as follows. The overall electric-
ity consumption is shown in panel (1). Each color rep-
resents a different appliance’s consumption (the cen-
tral gap correspond to holidays). Panel (1’) presents
some global variable (total electricity consumption,
associated price and social indicators). Below, panel
(2), details individuals activities over the week se-
lected in panel 1 (S45) whereas panels (3 and 3’)
presents a zoom for even more details (one rectangle
representing one minute). Finally, panel (4) allows
to investigates actions actual rhythms (only some ac-
tions are selected). Concretely, the horizontal axe rep-
resent the passing of days whereas the vertical axe
represen the time of the day. For instance, we can see
that the work actions (blocks centered horizontally)
occurs only during week days.
5
4.2 Dealing with Competing Actions
Our first example considers a family of 3 with a con-
flict situation: they have to make diner, have diner
and have shower within the 7 to 9 pm time slot. This
time slot imposes a constraint due to the actions dura-
tions and the exclusiveness of the have shower action
(one at a time). The adaptation process will organise
progressively the actions to ease their execution.
In the simulation first week, individuals usually
fails to have shower as shown in Fig.2 (a). This dia-
gram represents the individuals’ acitvities as colored
5
In addition, another simulation analysis GUI mode is
also available in order to compare several simulations: over-
all evolution and specific period of time can be compared
with side by side diagrams.
bar over time. In particular, the sleep action (straw-
berry pink) and the work action (brown) can serve as
reference points. These actions have regular sched-
ule since the beginning (no adaptation needed) as they
have no strong competitors and large preferred peri-
ods (around 8 hours). In the conflict timeslot, diner-
related actions are occuring whereas have shower is
not (only the mother do it on monday). The advantage
of diner-related actions is due to two factors: (1) make
dinner is a collective benefit task (one individual can
cook for 3) and (2) have dinner is a coordinated one
which imply strongly incentive invitations.
The conflict is resolved through adaptation of the
preferred periods (PP) and results in the following
working-day pattern showed in Fig. 2 (b). After
work, the mother takes her shower while the father
and Liz make diner. Once diner is ready, the father
or Liz invite the others to have diner. After diner, the
father takes a shower followed by Liz.
This example demonstrates how the adaptation
process can organize the actions in relation with PP
constraints. Although, this organization is not fully
stable, due to the continuous adaptations of the PP, it
can last several weeks.
4.3 Adaptation of Habits in Relation
with a New Pricing
The second example is based on similar parameters
but shows how PP modifications work with agents
sensitivity to the electricity price. In this example,
the simulation spans over 10 weeks from January to
March. In order to evaluate the capabilities of adap-
tation to variable electricity price we make the fol-
lowing hypotheses. In January, the electricity price
is fixed to a medium level. The following month, we
introduce a variable price policy: high from 6 to 8
pm and low for the rest of day (everyday). Finally,
in March, the price is switched back to the original
policy (fixed price at medium level).
Several actions, i.e. watch TV, use computer, gar-
den, take shower, play chess, without specified PP are
also added to the ones presented in the previous ex-
ample. Some of them consume electricity and are,
ICAART2013-InternationalConferenceonAgentsandArtificialIntelligence
78
Figure 3: Long term activity diagram: (a) watch Tv and (b) homework.
thus, sensible to electricity price. The variation of
electricity pricing induce actions mobility as show on
the long term activity diagrams (Fig. 3). In Fig. 3 (a),
we focus on the watch TV action (in black).Although,
two actions have been added as time landmark : have
breakfast (in the bottom) that takes place between
6:30 and 8:15 and have diner (in the top) between
19:30 and 20:30. In this simulation, individuals do
watch TV during 4 periods: (1) After breakfast, (2)
during the afternoon on week-ends and wednesday (3)
before and (4) after diner.
In January, individuals mostly watch TV before
the diner though a slow change from after diner to
after breakfast habit is appearing all along this month.
When February comes, with its special pricing, the
before diner period is abandoned to the benefit of the
after breakfast and after-diner periods due to the en-
ergy price penalty. One may notice that a slim black
line remains before diner in February. Indeed only
2 agents have completely quit watching TV before
diner. The third one continues to do it but for a shorter
duration. It means that the other influences, mainly
the strength of the before-diner PP, have balanced the
energy-price penalty. It is interesting to notice that
the effect of the penalty is progressive (it may com-
pletely stop or just shorten an action) and vary from
one agent to another. In March, when the special pric-
ing is stopped, we can observe a motion from after-
breakfast and after-diner periods to the before-diner
period as there is no electricity price penalty. Nev-
ertheless, the last two weeks of simulation still bear
this penalty influence (as adaptations are a progres-
sive process): the before-diner period happens later
and lasts shorter. This evolution demonstrates the ca-
pacity both to create and to modify habits thanks to
the adaptation of the PP.
Note that, the movement of the watch TV action
implies that other action have moved too. On the sec-
ond long-term diagram (3 (b)), we track the evolution
of the do homework action (red). As the time slot oc-
cupied by the watch TV action in January is free in
February, the action do homework happens more of-
ten during the before-diner period. We observe that
the return of an uniform pricing does not push back
the do homework action: Energy special pricing ef-
fects persists even after its end.
5 CONCLUSIONS AND
CURRENT WORK
In this paper, we presented the model and implemen-
tation of SMACH, a multi-agent simulator of human
activity. This simulator supports the investigation of
activity adaptation and energy consumption evolution
in response to different appliances or pricing policies.
We could not present all the details of this simula-
tor that results from a 5-years collaboration between
the French EDF energy company and AI researchers,
but we outlined its main features: accessibility of the
model to non-computer specialists and intelligent in-
terface for activity analysis and explanation. SMACH
also comprises a machine learning algorithm for auto-
mated management of temperature in the house (Gil-
Quijano and Sabouret, 2010) and an interactive mod-
elling system that helps refining the agent’s behaviour
(Semp
´
e and Gil-Quijano, 2010).
This model has been evaluated in several exam-
ple scenarios. The two examples presented in this pa-
per illustrated the ability of our model to represent
both the constraints and some of the “degrees of free-
dom” of everyday life. Furthermore, with the help
of the two adaptation processes (actions competition
SimulatingHumanActivitiestoInvestigateHouseholdEnergyConsumption
79
and habits emergence), agents are able to explore new
organisation and to discover pattern of actions in rela-
tion with time constraints and energy price for saving
purpose. In addition to this evaluation, our simulator
is provided with a participatory-simulation user inter-
face (introduced in (Haradji et al., 2012) ) that allow
to give control of one or several agents to users. Stu-
dents in our lab “played their own role” in our test
scenarios, which allowed us to validate the believabil-
ity of the model. In most situations, students could
not distinguish between artificial agents and human-
controlled ones.
We are currently extending the SMACH model to
study the activity of groups of families in different en-
vironments, over long period of time (one year) and
taking into account external temperature and build-
ing’s thermodynamical properties. This lead us to re-
consider the action rhythm model and to use multi-
level agent systems for individuals, families and ac-
tivities. Our long-term goal is to allow energy com-
panies to be able to investigate incentive to reduce or
to have a better prediction of consumption peaks us-
ing simulation of human activity.
REFERENCES
Duy Ha, L., Ploix, S., Zama
¨
ı, E., and Jacomino, M. (2006).
A home automation system to improve household en-
ergy control. In Proceedings of The 12th IFAC Sym-
posium INCOM2006.
European Environment Agency (2008). Energy and envi-
ronment report. Technical Report 6.
FIPA consortium (2003). FIPA Communicative Act Library
Specification and FIPA ACL Message Structure Spec-
ification. Technical report.
Freire, R. Z., Oliveira, G. H., and Mendes, N. (2008). Pre-
dictive controllers for thermal comfort optimization
and energy savings. Energy and Buildings, 40(7):1353
– 1365.
Gil-Quijano, J. and Sabouret, N. (2010). Prediction of hu-
mans’ activity for learning the behaviors of electrical
appliances in an intelligent ambiant environment. In
Proc. of the IEEE/WIC/ACM IAT’10 int. conf., pages
283–286.
Haradji, Y., Poizat, G., and Semp
´
e, F. (2012). Human Activ-
ity and Social Simulation, pages 416–425. CRC Press.
Kashif, A., Ploix, S., Dugdale, J., and Le, X. H. B. (2012).
Simulating the dynamics of occupant behaviour for
power management in residential buildings. Energy
and Buildings, To appear.
Mahdavi, A. and Pr
¨
oglh
¨
of, C. (2009). Toward empirically-
based models of people’s presence and actions in
buildings. In Proceedings of Building Simulation 09,
pages 537–544.
Massoud, A. S. and Wollenberg, B. (2005). Toward a smart
grid: power delivery for the 21st century. Power and
Energy Magazine, IEEE, 3(5):34–41.
Newsham, G. R. and Bowker, B. G. (2010). The effect of
utility time-varying pricing and load control strategies
on residential summer peak electricity use: A review.
Energy Policy, 38(7):3289 – 3296.
North, M., Howe, T., Collier, N., and Vos, J. (2007). A
declarative model assembly infrastructure for verifica-
tion and validation. In Advancing Social Simulation:
The First World Congress, pages 129–140. Springer
Japan.
Poquet, G. and Dujin, A. (2008). Pour les m
´
enages, la
recherche du confort prime encore sur les
´
economies
d’
´
energie. Consommation & Modes de Vie (CRE-
DOC), 210.
Rogers, A., Maleki, S., Ghosh, S., and Nicholas R, J.
(2011). Adaptive home heating control through gaus-
sian process prediction and mathematical program-
ming. In ATES’10, pages 71–78.
Searle, J. (1969). Speech Acts. Cambridge University Press.
Semp
´
e, F. and Gil-Quijano, J. (2010). Incremental and sit-
uated modeling for multi-agent based simulations. In
Proc. of the IEEE RIVF’10 int. conf., pages 1–6.
Sierhuis, M., Clancey, W. J., van Hoof, R., and de Hoog, R.
(2000). Modeling and simulating human activity. In-
telligent Agents for Computer Supported Co-operative
Work Workshop.
Taillandier, P., Vo, D.-A., Amouroux, E., and Drogoul, A.
(2010). Gama: A simulation platform that integrates
geographical information data, agent-based modeling
and multi-scale control. In PRIMA’10, pages 242–
258.
Wid
´
en, J. and W
¨
ackelgard, E. (2010). A high-resolution
stochastic model of domestic activity patterns and
electricity demand. Applied Energy, 87(6):1880–
1892.
Wilensky, U. and Evanston, I. (1999). Netlogo. center
for connected learning and computer based modeling.
Technical report, Northwestern University.
Yamaguchi, Y., Fujimoto, T., and Shimoda, Y. (2011). Oc-
cupant Behavior Model For Households To Estimate
High-temporal Resolution Residential Electricity De-
mand Profile. In Proceedings of BS2011, pages 1548–
1555, Sydney, Australia.
ICAART2013-InternationalConferenceonAgentsandArtificialIntelligence
80