Академический Документы
Профессиональный Документы
Культура Документы
∗ Corresponding author. Tel.: +41 21 693.55.56; fax: +41 21 693.27.22; email: david.lindelof@epfl.ch
1
Bayesian estimation of visual discomfort
derive, via bayesian inference, the probability that a given visual situation
before and after the user’s adjustments of the visual environment are the
model’s inputs. Discomfort probability functions for the users of the LESO-PB
2
1 Introduction
Visual discomfort of building users, because of the multiplicity of variables involved and
the difficulty of reconciling aesthetic and physiological elements, remains difficult to fully
understand. Yet it is important to develop a framework in which the visual discomfort can
be expressed numerically. Building designers need tools to assess the lighting quality in
their designs, especially when daylight is a major component, and designers of blinds’ and
electric lighting control algorithms often need a numerical expression of the lighting’s
quality. This work was mostly guided by the requirements of the latter group, and the
We begin this section by reviewing the current understanding of this problem and
Glare and inadequate illuminance are the two main causes of visual discomfort in
interior environments, but are usually treated separately in the literature and in norms.
Glare has, by far, been the most difficult problem of the two.
relationship between glare perception and the distribution, size and intensity of light
sources. Field studies led to the determination of Guth’s Discomfort Glare Rating and to
and published a report (Commission Internationale de l’Eclairage 1983) on the state of the
art on discomfort glare1 in the interior working environment. In the same report, the CIE
compromise between different national systems. This formula led to the CIE Glare Index
where Ed is the vertical illuminance [lx] at eye level from all sources, Ei is the indirect
illuminance [lx], Ls is the luminance [cd.m−2 ] of the luminous part of each luminaire in the
direction of the eye, ωs is the solid angle [sr] of the luminous part of each source, and ps is
the index proposed by Guth that gives different weights to luminous sources according to
3
The complexity of the CGI, together with changes in the working environment, led
1995) in which the Unified Glare Rating (UGR) was introduced, defined by
" #
0.25 X L2s ωs
UGR = 8 log10 (2)
Lb s p2s
where Lb = Ei /π is the indirect illuminance [lx] at the eye of the observer. The UGR is
thus a simplified version of the CGI whose the Ed term has been dropped.
The UGR takes on typically values between 10 and 30; one glare rating unit is the
least detectable step, while three glare rating units are considered the finest granularity
that makes sense for normative purposes. The advantage of this new formula was its
relative simplicity, which would help its implementation in computer calculations and
acceptance by practitioners.
Neither the CGI nor the UGR has been validated against daylight glare or against
large light sources. Glare from windows has been simulated in experiments at the Building
Research Station in England and at the Cornell University in the USA, using fluorescent
lamps behind diffusing screens. From these experiments, the “Cornell formula” (Chauvel,
Collins, Dogniaux, and Longmore 1982) or Daylight Glare Index (DGI) has been derived,
defined by
X L1.6
s Ωs
0.8
DGI = 10 log10 0.48 (3)
s
Lb + 0.07ωs0.5 Ls
the solid angle of the source [sr], and Ω is the solid angle [sr] of the source modified by its
Even the DGI has been derived from artificial light though, and Chauvel et al.
(1982) found that a direct application of the DGI formula to a real daylit window
overestimates the sensation of glare. For example, a daylit window that would in theory
have a DGI rating of 16 is perceived to be about as glary as a luminaire whose DGI would
be 10. Recent research by Tuaycharoen and Tregenza (2005) suggests that people are more
tolerant towards visually stimulating sources of glare that carry some form of information,
4
Probability index, defined as
!
X L2 ωs
−5 −2 s
DGP = 5.87 × 10 Ev + 9.18 × 10 log10 1+ 1.87 p2
+ 0.16 (4)
s
E v s
where Ev is the vertical eye illuminance [lx], Ls is the luminance of the source [cd.m−2 ], ωs
is the solid angle of the source [sr] and p is Guth’s position index. They found this formula
to correlate well with reported glare for DGP values between 0.2 and 0.8.
illuminance and of the luminances of the most luminous sources in the field of view of the
user, and has been derived from real, daylit windows. The inputs to this index are simple
enough for this index to be implemented in a commercial controller, provided outside solar
conditions are known to the controller and some reasonable assumptions are made as to
the layout of the user’s environment (furniture, workplace disposition, etc), and as to the
All these indices have been developed in an attempt to mathematically rate the
the field of view of the user. They are therefore difficult to use effectively in commercial
Another limitation of these formulas is that they treat only visual discomfort caused
by glare, and do not address visual discomfort caused by inadequate light. Used on their
own, they are insufficient for the implementation of a lighting controller but have to be
field of view of the user, such as the CIE recommendations (Commission Internationale de
l’Eclairage 1986).
The IESNA Lighting Handbook (Rea 2000) gives no specific daylight glare metric
against which to check a design. Instead, it recommends that direct sunlight should be
excluded from critical work areas and that glare from diffuse skylight can be avoided by
“limiting the height of the view window head in critical task areas, by screening upper
window areas from view, or by placing daylighting apertures high enough to be out of the
different users’ preferences with respect to light would make a controller solely based on
that formula difficult to accept by all users, unless an adaptation to the individual user
5
were achieved. Most published glare indices were derived under laboratory conditions and
represent an average over the subjects, and make no provision for adaptation to individual
users.
commercial building, relying exclusively on the observation of the users’ behaviour. These
are essential requirements for a control algorithm intended to run in a real building on
reasonably expensive hardware. This new index will by definition adapt to the user, and
learns better and better over time; furthermore it makes best use of all available quantities
or glare models.
2 Bayesian inference
Bayesian inference is what we do when we infer that A must be true because we have
There is strong evidence that the human brain functions according to bayesian
inference. Knill and Pouget (2004) review the available evidence for the so-called “Bayesian
coding hypothesis”, a school of thought that holds that the brain represents sensory
information probabilitistically and makes inferences via some form of bayesian inference.
Series of experiments have succesfully demonstrated that the brain carries a built-in prior
probability curve for different kinds of events, which is updated as new evidence becomes
available.
It was Reverend Thomas Bayes (1702–1761) who first discovered what is now known
as Bayes’s theorem: given two events, denoted by A and B, then the following holds:
Pr(B A) Pr(A)
Pr(A B) =
, (5)
Pr(B)
where Pr(A) stands for the probability of event A and Pr(AB) stands for the conditional
probability of A knowing that B has happened. Pr(B) can be expanded, yielding the same
Pr(B A) Pr(A)
Pr(AB) = , (6)
Pr(B A) Pr(A) + Pr(B A) Pr(A)
6
where Pr(A) stands for the probability of A not happening.
Bayes’s theorem deals with only two events, but Bayesian networks link together an
Consider the following example, adapted from Korb and Nicholson (2003). A patient’s
chances of developing lung cancer are assumed to depend exclusively on whether they live
in a polluted area, and on whether they smoke. Similarly, having cancer will determine the
chances of an X-ray test to be positive and will also affect the chances of the patient
Figure 1: Bayesian network for lung cancer. Pr stands for “Probability”, C for “Cancer”, P for
“Pollution”, S for “Smoker”, X for “X-Ray diagnosis”, D for “Dyspnoea symptom”,
H for “High”, L for “Low”, T for “True”, F for “False” and pos for “Positive”.
Adapted with permission from Korb and Nicholson (2003).
Here the conditional probabilities are given explicitly, and successive applications of
Bayes’s theorem allow us to determine any other probability. For example, without
knowing whether the patient exhibits dyspnoea and without the results of an X-ray test,
the probability of any patient having cancer (with symbols as defined in Figure 1) is:
Pr(C = T ) = Pr(C = T P = H, S = T ) Pr(P = H) Pr(S = T )
+ Pr(C = T P = H, S = F ) Pr(P = H) Pr(S = F )
+ Pr(C = T P = L, S = T ) Pr(P = L) Pr(S = T )
+ Pr(C = T P = L, S = F ) Pr(P = L) Pr(S = F ) (7)
7
which evaluates numerically to Pr(C = T ) = 0.012.
But if the diagnostic of dyspnoea is positive, that probability increases and becomes,
Pr(C = T D = T ) =
Pr(D = T C = T ) Pr(C = T )
(8)
Pr(D = T C = T ) Pr(C = T ) + Pr(D = T C = F ) Pr(C = F )
which evaluates to Pr(C = T D = T ) = 0.025, i.e. about twice the previous probability.
(Note again that at no time did the patient suddenly develop cancer, but our degree of
belief in cancer increased after learning about the positive dyspnoea diagnostic.) A very
artificial intelligence and has gained a solid foothold in the medical world, where its use is
facilitated by the existence of vast data archives, needed to derive probabilities such as the
Furthermore, since the publication of Paul Graham’s seminal article (Graham 2002),
bayesian classifiers, i.e. bayesian networks which yield the probability of a particular node
being true, have also become a major weapon in the fight against unsolicited junk email.
The idea is to compute, with the first form of Bayes’s theorem, the probability of an email
being spam on the basis of the words the email contains. For example, if an email contains
the word “Viagra”, then the probability of the email being spam is given by
Pr(ViagraSpam) Pr(Spam)
Pr(Spam Viagra) =
, (9)
Pr(Viagra)
where Pr(Viagra) is the fraction of all the user’s emails that contain the word “Viagra”,
Pr(ViagraSpam) is the fraction of all the user’s spam that contains that word, and
Pr(Spam) is the fraction of all the user’s emails that is spam. Note that these latter
quantities require a preliminary training of the classifier by the user on a (preferably large)
the basis of the words the email contains, even with rather simple implementations of
many fields, including at least one fairly succesful attempt to play chess (Breyer 2004).
8
This paper claims that if (even naive) bayesian classifiers are so good at calculating
judgement, then they should also be able to calculate the probability for a certain visual
should base its judgement on the physical variables it measures and classify the room as
comfortable or not.
In this paper we propose to use bayesian methods to write a building control system
that optimizes a user’s visual comfort. More specifically, we are going to derive a user
discomfort probability given a set of physical variables. The task of the controller shall then
Most commercial building controllers aim at keeping one or more physical quantities as
close as possible to given setpoints. A heating controller will try to keep the room
designer, installer, or adjusted by the user. An artificial lighting controller will try to keep
the indoor illuminance as close to a specified value as possible. There are also commercial
blinds controllers that adjust the blind’s position according to simple rules based on the
sun’s position and/or the facade’s vertical illuminance. These, however, take no account of
research. For instance, the building controller described in Guillemin (2003) keeps blinds’
positions and artificial lighting intensities close to values known to be preferred by the
user, instead of explicitly controlling the resulting illuminance, and learns from the user’s
actions.
In our methodology we make the explicit assumption that there exists a (limited)
set of physical, measurable variables that are sufficient to characterize the user’s comfort.
For the bayesian classifier to be efffective, these variables must be chosen to correlate well
with visual comfort, and must be variables that change when the users act on the control
at their disposal. Such variables can include the horizontal workplane illuminance and the
vertical illuminance at the user’s eye level. The latter is, indeed, an input to the four glare
indices (CGI, UGR, DGI and DGP) reviewed in section 1, which implies a correlation
9
between visual discomfort caused by glare with the vertical eye-level illuminance, either
The horizontal workplane illuminance is also likely to influence the user’s comfort,
or at least the user’s productivity. The IESNA Lighting handbook (Rea 2000) bases its
Additional variables can of course be added if found relevant. For example, the
These, and possibly other variables, can then build a bayesian network that includes
the probability that the user’s visual environment is uncomfortable (see Figure 2).
Discomfort
probability
Figure 2: Example bayesian network for user visual discomfort. Only three physical variables
have been considered but there is no limit to how many can be taken into account.
The relationship between horizontal illuminance and discomfort illuminance is the
one investigated in this paper.
Also shown in this figure are events that could be derived from this discomfort
probability, such as the probability that the user will act on his controls within the next
five minutes. This topic would deserve a research project by itself and will not be
There is a major difference between this network and the one shown in the lung
10
cancer example. In the latter, the nodes could only take discrete (actually, boolean) values,
whereas in our case, nodes such as “horizontal illuminance” take on continuous values. We
should therefore rather speak of probability densities when dealing with continuous
variables but for the sake of simplicity we will continue to use our notation as if they were
discrete.
In the smoker example, the probabilities associated with the “Cancer” node were
explicitly given. They were derived from an extensive data-mining of existing medical
archives. In our case, we must also do this mining in order to derive our user discomfort
probability.
In this paper we will consider the case with only one physical variable, the
horizontal workplane illuminance. In an ideal world we would have had the possibility of
intensities, and solar positions, and of asking the user whether the situation was
comfortable or not. From the results of such a survey, we would immediately obtain our
Such a survey would, however, have to be re-done for every user (since we all have
different preferences), for every room, and for every new variable under consideration.
Furthermore, we do not have full control over all variables (solar position, for instance).
And we cannot be expected to recreate in a laboratory setting the user’s office and ask him
Keeping in mind that we intend this method to be used by controller in real offices,
what data pool do we have where we know for sure the opinion of the user? There is
indeed one (probably the only one): the set of situations immediately preceding and
immediately following a user action provides us with a data pool of transitions from
uncomfortable to (presumably) comfortable situations for that user. (Notice, however, that
this assumption breaks down when several users have access to the same set of controls.
Simultaneous visual comfort control for users placed at different positions with different
therefore unclear whether our method is applicable to anything else than small offices.)
illuminance, by T =“True” and F =“False” the possible values for C, and by e a possible
illuminance value that E can take, we see that an application of the second form of Bayes’s
11
theorem (equation 6) yields:
Pr(C = F E = e) =
Pr(E = eC = F ) Pr(C = F )
(10)
Pr(E = eC = F ) Pr(C = F ) + Pr(E = eC = T ) Pr(C = T )
Except for Pr(C = T ) and its complement Pr(C = F ), all the right-hand terms in
this expression will be known from our data mining. For example, Pr(E = eC = T ), the
distribution of illuminance values after user action, can be derived by histogramming the
workplane illuminances resulting from the user action. There are however other approaches
The Pr(C = F ) term, also known to bayesians as the prior, has been the cause of
much controversy in the statistical community. A couple of years ago the dust seemed to
settle and the consensus seems now to be that in the absence of any prior information it is
safe in most cases to set Pr(C = F ) = Pr(C = T ) = 0.5 (a justification for this will be
Pr(E = eC = F )
Pr(C = F E = e) = (11)
Pr(E = eC = F ) + Pr(E = eC = T )
4 Methodology
The data used for the study discussed in this paper is part of a continuous recording
program by the Solar Energy and Building Physics Laboratory of EPFL (LESO-PB, or
LESO) on its own building. The building (Figure 3) is a small office building (20 office
rooms of about 15 m2 floor area each, approximately half of them with a single user and
the other half with two). For a detailed description of the building, see Altherr and Gay
(2002).
The work carried out in these offices is evenly split between reading/writing tasks,
and work on the computer. The computer screens were, during the measurements, mostly
flat-screen monitors. The windows of each office are protected by two external textile
blinds.
This building has been used for the experimentation of new passive solar systems
12
Figure 3: The LESO-PB building in Lausanne, Switzerland.
and advanced control algorithms for building services (heating, blinds and electric
Sensors: outside air temperature; solar diffuse and global radiation; solar horizontal and
south vertical illuminance; wind speed and direction; and for each office: inside
Actuators: for each office: blinds, electric lighting (continuous dimming), heating;
User controls: for each office: blinds, electric lighting, heating temperature setpoint.
The electrical consumption of each room is also recorded, the heating being recorded
The EIB was installed in 1999. Since then, two research projects focused on control
systems have been carried out at LESO-PB that used mesurements on its building,
AdControl (Guillemin 2003; Guillemin and Morel 2003; Guillemin and Molteni 2002) and
ECCO-Build, for which no publication is available yet. The data acquisition program has
been running independently of any research project continuously since 2002 (except for
upgrades) and the data is stored in a MySQL database (MySQL Development Team 2004),
representing slightly more than three years of monitoring. For data due to user actions
alone (occupancy change, use of manual blind or artificial lighting controls, etc...), we have
13
accumulated at the time of writing about three million datapoints.
The data we consider covers the period from mid-November 2002 to mid-January
2005. Anytime one of the physical variables changes by more than an adjustable threshold,
the new value is logged to the database together with the time of the event. A regularly
spaced time series of any variable can be reconstructed from the data.
The data in this study was analyzed with the open-source data analysis
5 Data analysis
A user action is defined as any action performed by the user on the blinds (raising or
user actions spaced apart not more than one minute in time (such as the user fine-tuning
the artificial lighting level) are considered as part of the same user action. Actions
performed less than two minutes before the user left the office (such as switching the lights
A total of 7273 such user actions have been recorded, and we have reconstructed the
workplane illuminance both before and after the user action. The measurements of the
drawn between -8 and +8 lx was added to the data. If the result became negative, it was
set to zero.
were a discrete variable we would simply count the number of times it realized each value
and divide by the total number of events. But E is a continuous variable so it is strickly
John and Langley (1995) discuss the value of different methods of density estimation
in bayesian classifiers. The simplest density estimator is a classic histogram but the choice
of bin width can influence the resulting density estimate. Other density estimators assume
14
In this work, we have no reason to impose any predefined model for either
distribution. Some authors, for instance Fischer (1970) and references therein, have let
users in a controlled laboratory setting adjust their horizontal workplane illuminance and
have found the logarithm of this illuminance to be normally distributed, and it might make
sense to use this model at least for Pr(E = eC = T ), but for consistency and symmetry
We will use a non-parametric density estimator, i.e. one that makes no use of any
distribution model. The classical non-parametric density estimator is based on some kernel
density estimates (Bowman and Azzalini 1997), but even this estimator makes some
(2005) we use the “taut-string” non-parametric density estimator described by David and
Kovac (2001). The details of its inner workings are beyond the scope of this paper, but it
works essentially as a histogram whose bin widths adapt to the data. Figure 4 gives an
drawn between x and x + δx, where δx is small enough, after N draws. We have
nx
p(x) = (12)
δxN
√
∆p(x) nx 1
= =p (13)
p(x) p(x)δxN p(x)δxN
Intuitively, this means that the relative errors on the density estimate will be
smaller when the density itself is high or when the total number of observations is large.
histogram, it is the bin width. For the taut-string algorith, we shall take it as constant,
equal to an illuminance difference which does not significantly affect visual comfort. We set
δx = 100 lx.
The error on a probability Pr calculated with Bayes’s theorem, which is the ratio
15
0.6
0.5
0.4
Density
0.3
0.2
0.1
0.0
−3 −2 −1 0 1 2 3
y
Figure 4: Example use of the taut-string non-parametric density estimator. The parent
distribution is a sum of five narrow normal distributions added to a wider one,
giving a claw-shaped distribution. The estimated distribution is shown. 200 data
elements drawn from the original distribution are shown as tick marks. A classical
histogram is shown for comparison.
16
BEFORE
12
10
2
Percent of Total
0
AFTER
12
10
Figure 5: Illuminance distribution, before and after user action, in office 104. User actions
immediately followed by user exit are excluded. 200 randomly chosen illuminance
values are shown on each panel as tick marks.
r
∆ Pr 1 1 1
=√ + (14)
Pr δxN p1 p1 + p2
We will first carry out all the analysis on one single LESO office, and then generalize to the
other offices. Office 104 has had 983 user actions over the data acquisition period and is
illuminances recorded immediately before and immediately after user actions in office 104.
From these density estimates we compute per Bayes’s theorem the discomfort probability
17
1.0
0.8
Discomfort probability
0.6
0.4
18
The errors on this discomfort probability curve are small for illuminances below
1000 lx but grow larger for higher illuminances. This is caused by the smaller number of
user actions for these higher illuminance values. Nevertheless, the general trend of this
curve remains discernable. The discomfort probability is very high for very low illuminance
values, then reaches a minimum between 800 and 1200 lx (the zone of optimal comfort for
this occupant), then increases again but at a slower rate until 3000 lx. It is difficult to
interpret the behaviour of the curve beyond this illuminance because of the small number
daylight controller, and that this controller will most likely be commissioned without any
data pre-recorded, how quickly will the discomfort estimate converge? How many user
actions are necessary to obtain a discomfort probability curve good enough to be used by
the controller?
To answer this question, we select 50 user actions at random from our data and see
how the algorithm estimates the probability densities and the resulting user discomfort
probability. Then we add a further randomly chosen 50 user actions from the remaining
ones, recompute, then another 50 and so on until all user actions have been chosen. The
The probability estimate is always troubled by the lack of user actions at higher
illuminances, but the presence of the global minimum around 1000 lx is already discernible
after 150 events. Assuming an average of four user events per day, five days per week, this
translates to an optimum user adaptation based on a single variable after 7–8 weeks.
We now turn to the remaining offices of the LESO building. We show in Figure 8 and 9
the estimated densities of the workplane illuminances before and after the user action for
all occupied offices of the LESO building. As before, the data points are represented
The users are remarkably consistent in that the illuminances most often seen to
trigger a user action are either below about 200 lx, or higher than 3000 lx. In other words,
only very dark or very bright situations prompt user actions. The peak seen on almost all
plots at 3500 lx is due to saturation of the illuminance sensor. However, this should not
19
0 1000 3000 0 1000 3000
0.6
0.4
0.2
Figure 7: Evolution of discomfort probability estimate for office 104. The number of user
actions used for the estimate is shown in each panel.
20
0 1000 3000
203 204
0.0015
0.0010
0.0005
0.0000
105 106 201 202
0.0015
0.0010
0.0005
Density
0.0000
101 102 103 104
0.0015
0.0010
0.0005
0.0000
001 002 003 004
0.0015
0.0010
0.0005
0.0000
0 1000 3000 0 1000 3000
Illuminance before action [lx]
Figure 8: Density estimate of illuminance levels before user action, per office. 100 random
measurements are shown in each panels as tick marks. The numbers on each panel
are the offices’ identifiers.
21
0 1000 3000
203 204
0.0015
0.0010
0.0005
0.0000
105 106 201 202
0.0015
0.0010
0.0005
Density
0.0000
101 102 103 104
0.0015
0.0010
0.0005
0.0000
001 002 003 004
0.0015
0.0010
0.0005
0.0000
0 1000 3000 0 1000 3000
Illuminance after action [lx]
Figure 9: Density estimate of illuminance levels after user action, per office. 100 random
measurements are shown in each panels as tick marks. The numbers on each panel
are the offices’ identifiers.
22
mean that most illuminance values between 200 lx and 3000 lx were optimally comfortable;
users do not necessarily continuously adjust their blinds or their electrical lighting. They
tolerate some minor discomfort that can depend on the design and placement of the
Similarly, the distribution of illuminances resulting from user actions tend to cluster
around a value of about 400–500 lx. Again, the users are consistent among each other, with
BEFORE
15
10
5
Percent of Total
0
AFTER
15
10
Figure 10: Density estimate of illuminance levels before and after user action, pooled data
except 003 and 004.
The consistency of the users allows us to lump together all the data, excluding
offices 003 and 004. The results are shown in Figure 10. The two curves shown on this
figure correspond to our Pr(E = eC = T ) and Pr(E = eC = F ) respectively. From these
two curves, we may now apply Bayes’s theorem (equation 10) and derive Pr(C = F E = e),
together with a smoothed approximation, is shown in Figure 11. (The same curve but with
23
different choices for the prior is given in the appendix.)
0.9
0.8
0.7
Discomfort probability
0.6
0.5
0.4
0.3
6 Discussion
Figure 11 features a global minimum at about 500 lx. The user discomfort probability for
lower workplane illuminances rises sharply, and would probably reach 1 at 0 lx were it not
for inevitable measurements errors. We interpret this as meaning that 500 lx is the
optimally comfortable workplane illuminance in LESO offices, which is consistent with the
For illuminances higher than 500 lx, the curve rises gently until about 2500 lx. It is
difficult to interpret the behaviour of the curve for higher illuminances because of the lack
24
of user actions at these illuminances, but it is resonable to assume the discomfort
found in Michel (1999), who finds that the maximum horizontal workplane illuminance for
We interpret this to mean that users react strongly against lack of sufficient
illuminance. Once the available light is sufficient, the user is relatively indifferent to the
Note also that the minimum of this curve never comes below about 0.3. One would
be tempted to interpret this as meaning that it is impossible to satisfy more than about
70% of the users. This interpretation is however incorrect for two reasons. First, we have
calculated the probability that the user would judge the visual environment as
uncomfortable if prompted to do so. This does not necessarily mean that the visual
environment is sufficiently uncomfortable for the user to manually adjust the blinds’
position. Secondly, remember that we compute this probability on the sole basis of the
horizontal workplane illuminance. As was the case with the lung cancer example, a
probability computed only on the basis of partial information does not necessarily reflect
A visual comfort controller that attempts to balance visual comfort with energy
savings can use this probability function. It is indeed obvious from this curve that for our
average user the preferred horizontal illuminance should be kept at 500 lx, without going
lower, but that higher illuminances can be tolerated (helping, for instance, the building use
It would be tempting to conclude that we now know how to satisfy the user on the basis of
the horizontal workplane illuminance alone. Indeed, this was the whole point in using
bayesian statistics: to extract the maximum amount of information from the available
data. However we must not forget that other factors can influence user comfort than just
the horizontal workplane illuminance. The user can experience direct sunlight without the
horizontal illuminance being affected, for instance. Therefore it is important that we make
use of as many other indicators of visual comfort as possible. The risk of direct sunlight,
25
for instance, will be greatly reduced if we derived the same probability curve for the
Once we have such a probability curve for the horizontal illuminance, possibly
combined with additional variables, what are we to make of it? How could an automatic
(and other variables) would be for any given configuration of solar shading and artificial
lighting. This implies the existence of a good daylighting model for the office; an extreme
would be a full Radiance (Larson and Shakespeare 2003) model4 . It is a difficult problem
Assuming then that the controller is capable of modeling the different illuminances
for a given set of blinds’ settings, it is therefore also capable of calculating the user visual
discomfort probability via our probability function. If the task of the controller were to
simply maximize user visual comfort at all costs, it would explore its degrees of freedom
and find the blinds and artificial lighting settings that minimize the user discomfort
probability.
However, in an extreme case, this might lead in winter to an office whose solar
shadings are completely closed to protect the user from direct glare from a sun low on the
horizon, taking no advantage of solar gains during the time of the year when they are most
Instead the controller should balance the user discomfort with the cost of a given
configuration in terms of energy. The easiest way to do this is to write a total cost function
that the controller should attempt to minimize. This function should be a sum of at least
two terms: one expressing the energy consumption, and the other expressing the user
discomfort, with a suitable scaling factor introduced to balance the two. The cost function
used in the ECCO-Build project, for instance, was inspired by the one described in
where Pel is the power applied to the articial lighting, Pth is the power necessary to keep
26
7 Conclusion
Based on recorded user actions, we have derived the user discomfort probability function
for LESO-PB occupants on the basis of the horizontal workplane illuminance. Its
minimum lies around 500 lx, rises sharply for lower illuminance values, rises more gently
building, with no interference with the regular workflow of its occupants. That curve has
adapted itself to the users and can be used by a user-adaptive building control system.
The complete dependency on the user’s behaviour is, in this approach, not a
weakness. It is known, for instance from Foster and Oreszczyn (2001) and the references
therein, that the occupant’s use of venetian blinds is not rational nor energetically optimal.
Hence, control algorithms that rely too much on learning from the user’s behaviour run the
risk of learning bad control strategies. It is, however, also known (Reinhart 2001) that the
users behave in a conscious and consistent way. In other words, it makes sense for a
controller to learn from the desired effects of the occupants’ actions, not necessarily from
the actions themselves. Users that close the blind in the morning because the sun is low on
the horizon, and leave the artificial light on the whole day will usually (albeit not always)
accept a system that shuts the lights off and opens the blinds when the source of glare is
Our approach seeks to understand what lighting conditions are acceptable by the
user; the controller then uses this understanding to reproduce these lighting conditions as
faithfully as possible. It is therefore quite different from the approach of Guillemin (2003),
whose control algorithm explicitly optimizes a set of rules that reproduce, within limits,
the user’s behaviour; this latter control algorithm, while minimizing the risk of user
In a future paper we will describe methods for combining more than one physical
variable that correlate with user comfort. Two offices at LESO have been equipped with
two additional illuminance sensors each and we will gather data on user actions to derive
comfort by using this comfort probability curve has been developed at LESO and installed
in two of its offices. It has also been installed in two offices at the Fraunhofer Institute for
27
Solar Energy in Freiburg im Breisgau, Germany, and in two offices at the Danish Building
(in terms of energy savings and of user adaptation), which will also be the subject of a
future paper.
28
Notes
1
Discomfort glare is defined as glare that causes discomfort without necessarily impairing
the vision of objects. It is distinct from disability glare, which is defined as glare that impairs
2
To be absolutely rigorous, Pr(C = F ) stands for the probability that, presented with
a given visual situation, and explicitely prompted whether that situation is judged uncom-
fortable, a user would answer affirmatively. We make in this paper the assumption that this
what one might intuitively be led to believe, it is not the probability that the user is about
3
We use Siemens brightness sensors GE 252, which are actually ceiling-mounted lumi-
nance sensors shielded from the window’s luminance. The conversion from the workspace’s
luminance to its illuminance is a programmable feature of the sensor, so that it can be cal-
ibrated to determine illuminance, assuming a constant reflectance in its visual field. Each
sensor has been calibrated with a reference sensor by Guillemin (2003). The sensors’ output
is linear only up to about 500 lx, and has to be corrected by the software in order to be
4
In which case it would be tempting to also use Guth’s Discomfort Glare Rating, available
in Radiance, but this would be step back towards a system without user adaptation.
5
This can be either power applied to heating elements, or power applied to active cooling
systems. The LESO building is passively cooled, and in these situations this term could
either be left untouched, just as if a cooling system existed; or it could be replaced with an
6
Several variations on this cost function have been considered for the experimental setup
at LESO-PB. In particular, a “View” term has been added to take into account a positive cost
when the blinds occlude too much of the window, affecting the user’s view to the outside.
29
Acknowledgments
The authors wish to thank Dr. Sylvain Sardy of the Chair of Statistics at EPFL for
We also thank Dr. Arne Kovac, one of the authors of the R implementation of the
taut-string algorithm, for helping us solve certain issues with the implementation.
We also would like to thank the Office Fédéral de l’Education et de la Science for
funding our contribution to the ECCO-Build project. We thank the Office Fédéral de
l’Energie for funding our participation to International Energy Agency projects, some
results of which have been of great help in the ECCO-Build project. We also whish to
thank the Ecole Polytechnique Fédérale de Lausanne for its funding and infrastructure.
We thank Jessen Page, Dr. Darren Robinson, and Prof. Jean-Louis Scartezzini for
reviewing the material in this paper and providing us with their helpful comments and
suggestions.
A Appendix
We have so far applied equation 10 with the simplifying assumption that the prior
A choice of prior always reflects some information we have about a system before
making observations. For example, let us consider the toss of a coin, which might or might
not be loaded. Let us say we believe there is a 0.1 probability of the coin being loaded in
If after the toss the coin indeed lands on heads, then our prior belief that the coin
Pr(LoadHeads) =
Pr(HeadsLoad) Pr(Load)
, (16)
Pr(HeadsLoad) Pr(Load) + Pr(HeadsNoLoad) Pr(NoLoad)
In the case of user comfort, we should ask ourselves what is the prior probability of
the user being uncomfortable, in the total absence of any information. But let us put this
30
question another way. Suppose you are given a coin, which might or might not be loaded,
and asked to evaluate the probability of it landing on heads on the next toss. In such a
complete absence of information, symmetry dictates that you should answer 0.57 .
be uncomfortable, and our inability to favour one answer or the other compels us to choose
0.5 as a prior, and this is the choice we have made in this work.
However, it might also be argued that a building built according to sound principles
will always ensure some degree of comfort (both visual and thermal) to its users, and in
these cases a choice of a prior different from 0.5 might be justified. How would this affect
Figure 12 shows two discomfort probability functions derived in the same way as the
one in Figure 11, but with a prior choice of 0.9 and 0.1 respectively. Comparing these
curves with the one with prior 0.5 given in Figure 11, we see that a different choice of
priors does not affect the shape of the probability curve but tends to “squash” it to higher
or lower values. Note in particular that if a probability for a given illuminance value was
higher than at another illuminance value, this ranking will be conserved no matter which
prior is chosen. Note also, as a corollary, that the position of the global minimum is
identical.
behave in an identical way no matter what the choice of prior is. It is only when
attempting to balance this discomfort probability with other factors, as is done in the
ECCO-Build project, that a non-trivial choice of prior can lead to different behaviours. It
This paper was produced with the Sweave literate programming tool bundled with R (R
Development Core Team 2004). In this section we give the R code that was used to carry
out the data-analysis and produce the plots in this paper. The code is written in a series of
code “chunks”, each of which is a logical unit usually responsible for the output of one
graph. The complete analysis can be reconstructed by executing this code. The original
###################################################
31
0.8
Discomfort probability
0.6
0.4
0.2
Figure 12: User discomfort probability for two non-trivial prior choices. The lower curve
has a prior of 0.1, the upper one a prior of 0.9. The thin lines are smoothed
approximations.
32
### chunk number 1:
###################################################
remove(list=ls())
options(width=80)
library(lattice)
library(ftnonpar)
lattice.options(default.theme = ltheme)
trellis.device("pdf",color=FALSE)
###################################################
###################################################
"factor","factor",rep("numeric",4))
header=TRUE)
# something smooth
###################################################
33
### chunk number 3:
###################################################
i <- 1
x <- data$x
y <- data$y
interp[i] <-
(target[i] - target[1]) /
(x[1] - target[1]) *
(y[1] - edges[1]) +
edges[1]
i <- i + 1
i.data <- 1
interp[i] <-
(target[i] - x[i.data]) /
(x[i.data+1] - x[i.data]) *
(y[i.data+1] - y[i.data]) +
y[i.data]
i <- i + 1
interp[i] <-
34
(target[i] - max.x) /
(target[length(target)] - max.x) *
(edges[2] - y[length(y)]) +
y[length(y)]
i <- i + 1
list(x=target, y=interp)
stopifnot(length(before) == length(after))
stopifnot(length(afterNorm$x) == length(beforeNorm$x))
N <- length(before)
sqrt(1/beforeNorm$y +
1/(beforeNorm$y + afterNorm$y))
data.frame(x=beforeNorm$x,
y=prob,
35
error=error)
###################################################
###################################################
y <- rclaw(500)
panel=function(col,x,...) {
panel.histogram(col=col,x, ...)
panel.rug(x=sample(y,200),...)
panel.lines(smdenreg(y), lwd=2)##col="red")
})
print(fig)
###################################################
###################################################
when=c(rep("BEFORE", length(before.104)),
rep("AFTER", length(after.104))))
col="lightgrey",
panel = function(x,nint,...) {
panel.histogram(x,...)
36
panel.lines(density, lwd=2)
panel.rug(sample(x,200))
panel.grid(h=0,v=-1)
},
layout = c(1,2),
aspect="fill",
print(fig.density.104)
###################################################
###################################################
data$lx.after[data$room==104])
panel = function(x,y,prob,...) {
y=c(y-prob$error, rev(y+prob$error)))
panel.polygon(na.omit(poly), density=10,
col="gray")
panel.lines(x,y,...)
## panel.loess(span=.3, evaluation=10,x,y,...)
})
print(fig.probreject.104)
###################################################
###################################################
37
data.104 <- data[data$room==104,]
panel = function(x,y,raw,panel.number,...) {
y=c(prob$y-prob$error, rev(prob$y+prob$error)))
panel.lines(prob$x, prob$y)
panel.grid(h=0,v=-1)
},
strip = function(factor.levels,...) {
strip.default(factor.levels=factorLevels,...)
},
print(fig.seq.104)
###################################################
###################################################
38
fig <- histogram(~lx.before | room, data, type="density",
panel = function(x,...) {
panel.lines(smdenreg(x))
panel.rug(sample(x,100))
panel.grid(h=0,v=-1)
},
print(fig)
###################################################
###################################################
panel = function(x,...) {
panel.lines(smdenreg(x))
panel.rug(sample(x,100))
panel.grid(h=0,v=-1)
},
print(fig)
###################################################
###################################################
when=c(rep("BEFORE", length(data.before)),
rep("AFTER", length(data.after))))
39
col="lightgrey",
panel = function(x,nint,...) {
panel.histogram(x,...)
panel.lines(density, lwd=2)
panel.rug(sample(x,200))
panel.grid(h=0,v=-1)
},
layout = c(1,2),
aspect="fill",
print(fig.density.all)
###################################################
###################################################
prob=prob.all,
panel = function(prob,lwd,...) {
y=c(prob$y-prob$error, rev(prob$y+prob$error)))
panel.lines(lwd=lwd,...)
panel.loess(span=.2, degree=2,col="black",lwd=1,...)
})
print(fig)
40
###################################################
###################################################
# prob=prob.all.prior,
panel = function(prob,lwd,...) {
panel.lines(lwd=lwd,...)
panel.loess(span=.2, degree=2,col="black",lwd=1,...)
data$lx.after, prior=0.1)
panel.lines(prob.all.prior.0.1,lwd=2)#, col="red")
panel.loess(prob.all.prior.0.1$x, prob.all.prior.0.1$y,span=.2,
panel.grid(h=0,v=-1)
},
ylim=c(0,1))
print(fig)
###################################################
###################################################
Stangle("bayesiandiscomfort.Rnw")
41
References
Altherr, R. and J.-B. Gay (2002). A Low Environmental Impact Anidolic Facade.
Bowman, A. W. and A. Azzalini (1997). Applied smoothing techniques for data analysis:
Breyer, L. dbacl – a digramis bayesian classifier [online]. 2004 [cited 1 November 2006].
Chauvel, P., J. B. Collins, R. Dogniaux, and J. Longmore (1982). Glare from windows:
current views of the problem. Lighting Research and Technology 14 (1), 31–46.
Technical report.
David and Kovac (2001). Local Extremes, Runs, Strings and Multiresolution. Annals of
Foster, M. and T. Oreszczyn (2001). Occupant control of passive systems: the use of
Graham, P. A plan for spam [online]. 2002 [cited 1 November 2006]. Available from:
http://www.paulgraham.com/spam.html.
Guillemin, A. (2003). Using Genetic Algorithms to Take into Account User Wishes in an
42
Guillemin, A. and N. Morel (2003). Experimental Assessment of Three Automatic
Microsoft Research.
Knill, D. C. and A. Pouget (2004). The Bayesian brain: the role of uncertainty in neural
Hall/CRC.
Luckiesh, M. and F. K. Moss (1937). The science of seeing. D. Van Nostrand Company,
Inc.
Rea, M. S. (Ed.) (2000). The IESNA Lighting Handbook, Ninth Edition. Illuminating
University of Karlsruhe.
43
Wienold, J. and J. Christoffersen (2005). Towards a New Daylight Glare Rating. In Lux
44