gation of information on production within a single
level of a VPS; and (4) a directory service, that main-
tains a list of the resources that are available at any
given time, resources that could join a VPS.
Each VPS manager manages a single level within
a VPS. A VPS manager is either a simple or a com-
pound VPS manager. A simple VPS manager main-
tains a level in a VPS containing only resource man-
agers, such as the VPS manager depicted in Figure
1(a). A compound VPS manager maintains a level
in a VPS containing only other VPS managers, for
example the top two layers of VPS managers de-
picted in Figure 1(c). A complete VPS is represented
as the VPS manager of all of the levels in the VPS
together with the active energy Resource managers.
Each VPS manager performs modifications on its own
level: adding or dropping resources, or redistribut-
ing target capacities over subVPS manager. The fre-
quency at which these modification are performed, m,
determines the stability of the overall VPS. In this
paper m = 30 minutes is used, preventing the over-
all VPS from becoming too instable. Decisions to
select modifications are made based on information
provided by a local resource monitor and heuristics
further described in Section 2.3.
An energy resource manager represents a solar
panel, to allow simple contracts to be negotiated with
VPS managers, and to exchange information on the
current output of its represented energy resource. The
solar panels used within this experiment are described
in section 2.4.2.
A resource monitor provides a VPS manager in-
formation on the current energy output of its managed
level in the VPS. To monitor the energy output of a
VPS with multiple VPS managers, as depicted in Fig-
ure 1(c), monitoring needs to distributed. Each VPS
manager within a VPS has an associated resource
monitor. The Resource monitor interacts with the en-
ergy Resource managers and with Resource managers
of subVPS managers to construct reports on current
energy output of the managed level of its associated
VPS manager. Similar to the hierarchy of VPS man-
agers, a hierarchy of resource monitors is created in
which each node in the tree periodically reports its ag-
gregate output of its underlying resources. Each VPS
manager has access to an estimate of the total current
output of its members. The frequency with which ag-
gregation updates are made, f , determines the accu-
racy of these values. In this paper f = 5 minutes is
used, which corresponds to the rate at which the out-
put data for the solar panels changes. This gives a
fairly accurate measurement, though updates are not
synchronised and thus the measurement is not precise.
Increasing f allows us to test the effect of less accu-
rate, less communication intensive, monitoring.
The directory service maintains a list all energy
Resource managers not currently assigned to a VPS.
The directory records resource capacities and loca-
tions. When a VPS manager requires a new resource
it queries the directory to get a list of available re-
source management agents. When a VPS drops a re-
source it is put back into the directory.
The simulation is programmed in AgentScope, of
which the initial version is described in (Oey et al.,
2010), with Platform 9 3/4 as backend.
2.3 Reconfiguration Process
A simple or compound VPS manager locally adapts
the system configuration using heuristics. These
heuristics are for local assessment of over- and un-
derproduction. Choice of reconfiguration actions is
determined on the basis of these local assessments,
and consist of adding and dropping resources, or re-
distribution of target capacities.
Over- and underproduction are determined as fol-
lows. The VPS manager retrieves the current out-
put of its aggregated resources from its local resource
monitor. The difference between its production tar-
get, C
i
(t), and the current output of its underlying
resources E
i
(t) is determined. A set of managed re-
sources is underproducing if it does not meet its pro-
duction target, E
i
(t) − C
i
(t) < 0. A set of managed
resources is overproducing when its production target
is overshot with exactly or more than the production
of its smallest contributing resource, E
i
(t) − C
i
(t) ≥
min
r
j
∈A
i
(t)
e
j
(t).
A simple VPS manager adds a resource to com-
pensate underproduction, or removes a resource to
compensate overproduction. VPS manager can only
modify the status of a single resource during each re-
configuration step. For the sake of simplicity all re-
sources in a managed location are assumed to be sim-
ilar to each other (homogeneous) The responsibility
for the production of the VPS is divided equally over
each of the resources.
A compound VPS managers relies in most cases
on the VPS managers of its managed subVPSs for re-
solve under- and overproduction. Overproduction can
always be handled by subVPSs, as underlying active
resources can be dropped. However, if a configuration
manager of a subVPS is not able to resolve under-
production, i. e. it has no further available resources
to extend the production, the target production for
this subVPS needs to be reduced. The dependencies
within the level of the compound VPS are modified to
redistribute the target capacities. The heuristics used
for this redistribution are to remove 20% of the tar-
ICAART 2011 - 3rd International Conference on Agents and Artificial Intelligence
304