0% found this document useful (0 votes)
35 views16 pages

Advantages of Model Driven Engineering F

This paper discusses the advantages of Model Driven Engineering (MDE) in studying complex systems, particularly in simulating emergent behaviors in large-scale scenarios like power grids. It emphasizes the need for detailed models that account for individual component interactions and the complexities of human behavior in electrical systems. A case study demonstrates MDE's effectiveness in developing simulators that support the analysis and design of complex systems, showcasing its practical benefits over traditional modeling approaches.

Uploaded by

aliadojohndave98
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views16 pages

Advantages of Model Driven Engineering F

This paper discusses the advantages of Model Driven Engineering (MDE) in studying complex systems, particularly in simulating emergent behaviors in large-scale scenarios like power grids. It emphasizes the need for detailed models that account for individual component interactions and the complexities of human behavior in electrical systems. A case study demonstrates MDE's effectiveness in developing simulators that support the analysis and design of complex systems, showcasing its practical benefits over traditional modeling approaches.

Uploaded by

aliadojohndave98
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

Nat Comput (2015) 14:129–144

DOI 10.1007/s11047-014-9469-y

Advantages of Model Driven Engineering for studying complex


systems
Jose Evora • Jose Juan Hernandez •

Mario Hernandez

Published online: 7 November 2014


 Springer Science+Business Media Dordrecht 2014

Abstract The evaluation of the emergent behaviour in 1 Introduction


complex systems requires an analytical framework which
allows the observation of different phenomena that take The study of physical systems requires the elaboration of
place at different levels. In order to observe the dynamics models that show their dynamic behaviour. All physical
of complex systems, it is necessary to perform simulations systems have the following properties: they have many
so that both local and the emergent behaviour can be components located in space and time; they are represented
observed. To this end, the way in which complex system with a state that changes throughout time; and they evolve
simulators are built must be examined so that it will be under the influence of energy. These components possess
feasible to model large scale scenarios. In this paper, the energy due to their movement, their chemical composition,
use of Model Driven Engineering methodology is proposed their position, their temperature, their mass or other
to deal with this issue. Among other benefits, it is shown properties.
that this methodology allows the representation and simu- To begin with, an exhaustive identification of all rele-
lation of a complex system providing support for the ana- vant components that are part of a system is required.
lysis. This analysis is supported by a metamodel which Using this, a model that allows the study of emergent
describes the system components that are under study. The behaviour can be built by describing the individual
application of this methodology to the development of behaviour of each component and interconnecting them.
large scale simulators is explored through a case study. These models reproduce the behaviour of physical sys-
This case study analyses a complex socio-technical system: tems: mechanical (translational or rotational), hydraulic,
a power grid. thermal, electromechanical or electrical. These models are
usually created for a better understanding of the system.
Keywords Agent based model  Electrical system  That is, models are made to develop the formulation of
Domestic load curve simulation  Residential demand  scientific theories as well as to enhance the system’s design
Demand side management  Appliances  Model driven and operation.
engineering  Simulation framework  Demand size However, models are built through simplification pro-
management  Complex system cesses with the aim of making it easier to understand a real
system. In this sense, part of the complexity of the real
system is neglected in the process of creating the model.
Physical systems are complex by nature. However, tra-
ditionally, simplified models of these systems have been
made, using ideal entities and simple equations. Never-
theless, this notion of simplification is not the only method
of modelling. Systems can also be studied in a higher level
J. Evora (&)  J. J. Hernandez  M. Hernandez
of detail, with non-ideal entities, non-linear behaviours and
SIANI, University of Las Palmas de Gran Canaria, Las Palmas,
Spain with emergent phenomena. This is a paradigm that is
e-mail: [email protected] focused on the creation of models that are more detailed

123
130 J. Evora et al.

and, therefore, multi-purpose. That is, models can be used This research is exploratory and contributes to the val-
in different use cases instead of building simplified models idation of MDE as a useful approach to building simulators
with just one purpose. that support large scale models. This paper presents an
Models of complex systems are made up of many experimental case which shows that MDE offers practical
components. These components are individually described advantages in the context of power grid simulations.
within the model using known laws. An essential feature of
complex system models is that emergent behaviours arise
from the integration of simple components with their 2 Case study on electrical systems
mutual interactions. That is, behaviour is not directly
deducible based on the individual behaviour of their Classically, electrical system management has been done
components. based on the aggregated consumption data at a global level.
Furthermore, many physical systems are subject to The nature of this management was centralized since the
human intervention. From this point of view, they can be system was considered as an indivisible unit.
considered as Complex Adaptive Systems (CAS). A CAS However, in recent years, an increasing interest in
is a special case of a complex system which has a large knowing more about electrical demand at low levels of the
numbers of components, often called agents, that interact power grid can be observed (Palensky and Dietrich 2011).
and adapt or learn (Holland 2006). These agents manage to This is mainly due to the process of change the electrical
develop a single, unique identity which keeps a stable and systems are undergoing, causes by factors such as the
coherent pattern throughout time (Holland 1995). introduction of renewable energy sources (RES) as well as
Examples of CAS are embryonic development, insect distributed generation (DG). These changes require a better
societies and power grids. In all of these cases, emergent knowledge of the load curves at a distributed level, which
and self-organizing principles are present. In a network of involves different factors such as electrical equipment, user
components without a central control, but simple opera- behaviour, environmental conditions, etc. that have a
tional rules, creating a collective behaviour. The result is potential impact on consumption.
the product of a huge number of decisions that are made by From this point of view, the management of future
many individual components. electrical systems must overcome the restrictions of
Based on these models, software simulations can be aggregated models and start analysing the electrical system
developed to study and understand complex systems. in a disaggregated manner. In the bibliography, several
However, it is necessary to approach simulator engineering methods of analysis of the electrical system have been
with a methodology that supports the analysis, modelling developed in a disaggregated manner in Capasso et al.
and design of software simulations with a large number of (1994), Palensky et al. (2008), Evora et al. (2011), Ram-
components. churn et al. (2011).
Simulation tools are not specifically designed for
developing large and complex system simulations and 2.1 Electrical systems
show limitations when building systems with more than
1,000 components. In the case study presented in this paper The electric power system is composed of different elec-
there are 20,000 components, developed by five engineers. trical components that allow for the production, transmis-
This paper proposes the development of simulators sion and consumption of electric power. Production or
under the Model Driven Engineering (MDE) methodology. generation of electric power is the process of converting
MDE improves productivity, quality and flexibility in energy in other forms (chemical, mechanical, nuclear, etc.)
developing software (Schmidt 2006). An MDE platform, into electrical energy. For the transmission, different kinds
called Tafat, has been developed to conduct this research of electrical networks are used. Generally, they are clas-
work in overcome the drawbacks of other simulation tools. sified by their nominal voltage at each level. Long range
The major benefits of this platform are the support for: transmissions over hundreds of kilometres are performed at
the analysis and design of software simulators; the high voltages of several hundreds of kilovolts (kV). These
description of simulation scenarios with a domain specific networks are called transmission systems. Transformer
language; the integration of simulations through a shared stations (substations), can reduce the voltage at a given
semantic; and the management of complexity in large point in order to feed electricity to the so called distribution
system development. At the same time, its modular archi- system. The distribution system carries the electricity to the
tecture allows the specialisation of the software team. final consumers. These networks operate at medium volt-
There are different types of engineers focused on the age levels, usually between 1–50 kV. In a final stage,
development of the simulation engine, behaviour compo- distribution transformers can convert from medium voltage
nents and simulation models. to low voltage (less than 1 kV) which is the typical voltage

123
Advantages of Model Driven Engineering 131

level found at residential or tertiary customers. Some This means, the resulting model is not only including
specific customers (such as industries) may have direct electrical behaviour, but also other types of behaviour.
connections at medium voltage level, too. These types of behaviour are included in the model since
In a classical energy system, generation is injected at they affect the electrical components.
high or medium voltage level and consumed in the distri- Power grids cannot be studied in a mechanistic way
bution system. Following the trend of introduction of since they are used by agents that are autonomous, inde-
renewable energy sources and distributed generation, pendent and self-interested. Each of them interacts with the
injections of energy at almost all levels of the system are grid in order to consume or produce energy in different
possible. ways.
The power grid can be seen as a complex system, being There are agents that are making simple decisions
composed of a large number of interacting entities. The locally related to producing or consuming energy. For
reproduction of the behaviour of the system is therefore not instance, in the case of customers, the decision of con-
possible through modelling the system as a whole. suming energy is a consequence of specific activities such
as cooking, heating the household or watching TV.
2.2 Electrical systems complexity Therefore, the power grid can be observed as a system in
which there is a huge number of relatively simple agents,
An electrical system shows analogies with complex living that adapt themselves to new conditions of the environment
systems, such as ant or bee colonies, in which there are or to new objectives. There are agents of different nature:
several agents making decisions and acting locally. Actions producers and consumers. The interaction among these
that each agent are performing locally are aggregated, and agents is produced through the power grid to which they
these actions can lead to emergent phenomena. are connected (Wildberger 1997).
In this sense, in electrical systems there are people living In Massoud Amin and Wollenberg (2005), an agent-
in households that can be considered as agents (Wooldridge based modelling approach of a power grid is proposed. In
2002). Moreover, these agents are intelligent (Monti et al. this model, there are agents that directly influence the
2010) since they are self interested units with goals and production or consumption of energy. Generally, it can be
exhibit adaptive behaviour to their environment. These said that the dynamics of the system is not only dependent
agents are able to make decisions and coordinate their on the electrical behaviour of the devices but also social
actions with other agents. The main difference with complex behaviour. That is:
living systems is that in the electrical system, we are not
1. The interaction of the inhabitants of the households
interested in the study of the emergent behaviour starting
with the electrical appliances that are inside involves a
from the local actions, but the modification of local behav-
consumption. Since this is the main interest of the case
iour to obtain the desired emergent behaviour (Stepney et al.
study that will be described, this reality must be
2006). However, from a second point of view, a complex
modelled. Based on this study, comparisons of the
system simulation model can serve to observe unwanted
residential consumption of these households can be
emergent phenomena and study these effects on the system.
made according to profiles of standard consumption.
An approach to analyse complex systems from this point of
2. According to the external temperature, a household has
view can be seen in Polack et al. (2008).
a thermal behaviour that produces a power consump-
tion in order to heat or cool the household. The
2.3 Modelling Electrical Systems comfortable temperature of the household is deter-
mined by the preferences of each individual, as well as
According to the previous view, Electrical Systems can be the time when such individual is at home. Obviously, if
modelled as Complex Systems. This kind of modelling the household is empty, the consumption will be lower.
requires the representation of all existing electrical entities. 3. The temperature inside the household is not only a
Nevertheless, in addition to an electrical behaviour consequence of the external temperature, but also of
(Mitchell 1992), the entities may also have mechanical, the number of people that are inside the household and
thermal or chemical behaviour. the type of activity that they are doing. For instance, if
For instance, a wind turbine is a machine that transforms the individuals are cooking or there are guests, the
mechanical movement into electricity. Therefore, this temperature of the household will increase.
entity presents two different behaviours: a mechanical 4. Some of the appliances (e.g. refrigerators) have an
behaviour that transforms wind speed into the rotational electrical behaviour that is dependent on the temper-
speed of the blades, and an electrical behaviour that ature of the household as well as the number of times
transforms rotational speed into electricity. that the appliance is used during the day.

123
132 J. Evora et al.

2.4 Related work interaction of agents and a grid environment which is


nor extremely complex. Highly recommended as
Aggregated data at substation level is no longer accurate tool for prototyping models that can later on be
enough to describe the consumption processes at the level implemented in lower-level platforms. However, its
of the distribution grid (Palensky et al. 2008). simplified programming environment may be
Modelling consumption locally can help us to better uncomfortable for experienced programmers, since
understand the composition of aggregated load curves (also all the code must be placed in just one file (as
represented by load profiles) and analyse how local mea- opposed to good practices in object-orientation
sures can have an effect on the global curve. Current programming) and the lack of a stepwise debugger.
aggregated models do not offer the possibility of modelling (b) Mason (Luke et al. 2004). Good alternative for
local measures on the grid, for example punctual actions experienced programmers who work on models that
taken by individual consumers, such as switching on a are computationally intensive since it performs well
cooking stove or an oven. They can only be included by giving the best execution time of the five platforms
modelling their aggregated effect and integrating it at tested. Things that can be improved are its non-
aggregated level. When considering the proposed changes standardised terminology, its incompatible classes
in the electrical system, for planning and control activities with the scheduler, its lack of a terminal window for
at distribution level, these curves are not suitable, as they debugging purposes.
only apply to a large number of consumers, as they (c) Objective-C Swarm (Minar et al. 1996). This version
describe the average use of energy over time (Willis and of Swarm is stable providing a fairly complete set of
Scott 2000; Paatero 2009). tools, a clear conceptual basis and clever design,
Some approaches which consider these facts already allowing for the separation of the model from the
exist and implement a demand modelling at lower scale. In interfaces. This tool is oriented to help model
Stokes et al. (2004) a simplified demand model for organisation by enabling the design and implemen-
domestic lighting is presented providing an estimation of tation of modules in separated swarms, each one
the aggregated demand or even the distributed loading for owning objects and schedule of actions. This helps to
groups of households. In Paatero (2009) a multi-use bot- manage the complexity of the models which is useful
tom-up domestic consumption modelling tool is developed when dealing with highly complex systems. On the
and verified. Wright and Firth (2007) gathered and ana- downside, there is a lack of a friendly development
lysed high resolution domestic electrical data and found tools, lack of garbage collection, weak error han-
that logging at intervals of few minutes is necessary to dling and low availability of documentation.
capture the fine detail of load patterns for evaluating on-site (d) Java Swarm (Minar et al. 1996). Actually, this
generation. In Widén and Wäckelgard (2009), a high res- provide the Swarm implementation for Java users
olution stochastic approach, using heterogeneous Markov but it contains significant drawbacks: clumsy work-
chains is chosen to model domestic electricity demand. arounds to implement Swarm features in Java,
difficulty in debugging errors that happen on Objec-
tive-C libraries and slow execution speed are some
of these drawbacks.
3 Existing simulation platforms
(e) Repast (Collier 2003). It is certainly the most
complete Java platform. Apart from implementing
Several simulation platforms have been developed for
most of the Swarm’s functions, they have added
making experiments using an ABM approach. These plat-
capabilities like reset and restart models from the
forms have succeeded since they provide standardised
graphical interface and the multi-run experiment
software designs and tools allowing the simulation of dif-
manager. Execution speed is good when compared to
ferent models. However, these platforms have well-known
other platforms. It also provides geographical and
limitations. In Railsback et al. (2006), five different plat-
network support. However, downsides include the
forms are reviewed in next paragraphs: NetLogo, Mason,
difficulty to getting started on it, especially for
Repast, Swarm for Objective-C, Swarm for Java. Further-
novice developers and poor documentation.
more, Anylogic and Flame are also reviewed as they are
(f) Anylogic (Borshchev and Filippov 2004). AnyLogic
also popular solutions for agent-based simulation.
is a multi-paradigm simulator supporting ABM as
(a) NetLogo (Tisue and Wilensky 2004). This is recom- well as Discrete Event modelling. It gives support for
mended for its ease of use and excellent documen- developing flowcharts, System Dynamics and stock-
tation, and suitability to develop models that are and-flow descriptions. AnyLogic is capable of cap-
compatible with its paradigm of short-term, local turing arbitrary complex logic, intelligent behaviour,

123
Advantages of Model Driven Engineering 133

spatial awareness and dynamically changing struc- of a large number of entities. The goal is to make simulator
tures. AnyLogic is object oriented and based on the development and maintenance easier. In this paper, we
Java programming language. To a certain degree this propose the development of simulators using a Model
ensures compatibility and reusability of the resulting Driven Engineering approach (MDE).
models (Zauner et al. 2007). MDE (Schmidt 2006; Butler et al. 2002; Poole 2001)
(g) Flame (Holcombe et al. 2006). FLAME (Flexible allows the development of software based on models. This
Large-scale Agent-based Modelling Environment) is is, the functionality of the software is defined in models
a agent-based modelling framework which allows and, by using a processor, the software is generated
modellers from various disciplines like economics, according to these models. The main advantage of this
biology and social sciences to easily write agent- approach is that the software development at the model
based models and simulate them on parallel hard- level is conceptually described using a DSL (Domain
ware architecture. The environment allows model- Specific Language) that is close to the domain problem.
lers to create agent-based models that can be run in Not only developers, but also domain experts, may have
high performance computers and graphical process- an important role in software development. In this way,
ing units. The simulation code is generated by communication problems between domain experts and
processing a model definition (Kiran et al. 2010). software developers are mitigated. Models are the artefacts
that drive the development process. From an methodolog-
After studying these simulation platforms, we have
ical point of view, development methods have been trying
found some limitations. Firstly, there is the lack of an
to include more abstractions in order to reduce the semantic
explicit formalisation of the semantic. We have analysed
gap between software design and domain concepts.
the code of many simulations where the same concept has
In addition, this approach improves productivity and
been represented in different ways. For example, freezers
flexibility in developing simulators, since they are devel-
can be represented considering either isolation, efficiency,
oped and modified just by changing the model (Schmidt
or thermodynamic processes. Any of these allows the cal-
2006). Thus, MDE is useful to speed up the creation of
culation of consumption. Therefore, developers are pro-
simulators and enhance their evolution.
ducing a code that cannot be combined further into a single
The application of MDE for developing complex system
model, since there is not a formal definition of a ‘‘freezer’’.
simulations is the most relevant contribution of this work.
That is to say, every model has its own semantic.
Several abstraction levels have been defined between the
The semantic of any concept must be shared among all
software design and the implementation. The lowest abstrac-
developers. This means that it should be agreed upon and
tion level is related to the description of instances that will
formalised. The development platforms should facilitate the
exist in the simulation scenario. For example, at this level,
explicit formalisation of the problem domain’s semantic.
different instances of buildings, power lines and customers
Another limitation is the lack of support for developing
can be specified in a power grid model description (Fig. 1).
large scale models. It is possible to build large scale models
Since these instances can be abstracted, the second level,
in these platforms, but the development process could
known as Metamodel, represents the different classes of
become as complex as the models themselves. Since large
instances that can be found in a domain. For example,
scale models own a high complexity, the developed software
building, power line and customer concepts are included
can be also very complex. These tools are not providing a
into the Metamodel to allow future specifications of con-
methodology that supports the development process on large
crete instances (Fig. 1).
scale models. That is, we find there is a lack of architectural
support for developing large-scale models.
Furthermore, since these platforms are oriented to multi-
purpose agent-based simulations they provide a language
that is far from the problem domain. This involves a
semantic gap between platform and modellers concepts.
Ideally, modellers would be more comfortable expressing
their models in a language closer to the problem domain.

4 Building complex electrical system simulations

It is necessary to approach the software engineering of the


simulator with a methodology that supports the modelling Fig. 1 Abstraction levels considered in the case of the power grid

123
134 J. Evora et al.

Finally, the third level of abstraction, the metameta-


model, allows the representation of any complex system
using three different metaclasses: entities, connections and
agents. For example, a building is an entity, a power line is
a connection and a customer is an agent of the power grid
system (Fig. 1).

5 Tafat framework

A framework called Tafat has been designed and devel-


oped at the Research Institute SIANI of the University of
Las Palmas de Gran Canaria to support the development of
complex system simulations based on MDE. Tafat uses an
object oriented and agent-based approach.
Tafat allow building models of complex systems where
the overall scene is decomposed into different components.
Each component of the model is statically represented by
means of attributes and variables. In this way, a structural
view of the system is modelled. In order to model the
behavioural view of the system, each component may
Fig. 2 Tafat architecture
include several behaviours that describe how this component
changes over time. That is, the dynamics of the system.
This separation between structural and behavioural view represented in terms of entities, connections, agents, attri-
is a major design concern in Tafat since it allows modelling butes, variables and context, amongst others. The Meta-
a complex system in a modular approach. At the same time, model is oriented to a specific domain and defines the types
this design technique is oriented to face the challenge of of components that can be instantiated in the model. It
building large scale simulations. Basically, when a simu- determines how the semantic is shared amongst different
lation is running, all the behaviours are concurrently exe- models.
cuting and modifying the variables of their components. Besides, Tafat includes different tools that support the
A major contribution of Tafat is that it allows the defi- simulator development process. Checker is a tool to vali-
nition of a Metamodel. This Metamodel supports the ana- date the model syntactically and semantically; Profiler is a
lysis, identification and description of system components. tool to assist the automatic construction of large scale
In this way, the Metamodel is shared with all simulation simulation models; and Simulator Generator is tool that can
models, since the identified components come from the automatically create a new simulator for this model.
Metamodel. In this sense, the Metamodel can be under- The Simulator Generator parses the model in order to
stood as a Domain Specific Language. As well, this lays the automatically generate the required Java classes and objects.
foundation for a specific analytical framework according to The simulator is completed by including the Simulator
the domain of the complex system. Engine and all the behaviours that the simulation requires.
Thus, models only include component types that have Behaviours are stored in the behaviour Repository and
been already defined in the Metamodel. This means that all can be used in different simulations. A behaviour describes
models share the same representation classes as well as the the dynamic of a model component that can be used in
same semantic. This is a necessary condition to allow the different simulations.
integration of simulation models. Therefore, it does not Therefore, model components are implemented by
matter the tool or language (e.g. Repast or Java) in which a composing two different views: structural, contained in the
behaviour has been developed as long as behaviours are Metamodel, and behavioural, contained in the repository.
associated to Metamodel component classes. The structural view concerns the description of the com-
ponents in terms of attributes, variables and context. The
5.1 Architecture behavioural view describes how states evolve and their
interaction with other components.
As mentioned before, the metamodel is a core component This separation of concerns enhances the possibility of
of Tafat architecture (Fig. 2). The Metamodel provides an customising already developed behaviours or, even, creat-
object oriented representation of the system. Systems are ing new ones and plugging them into a model component.

123
Advantages of Model Driven Engineering 135

• Connections. Components that link entities (e.g. the


washing machine’s power connection to the supply).
Metaclasses are classified into the Metamodel according
to these categories (Fig. 3). This classification is useful
since entities are used to model the scenario, agents to
model the population and connections to model the topol-
ogy. In addition, there are other categories within these
major ones that have been defined according to the nature
of the system.
Regarding the components description, there are several
aspects that can be used. The list below presents the dif-
ferent perspectives from which an object can be described:
• Features. Attributes of a component which do not
change their values during the simulation (E.G. capac-
ity of a washing machine).
• Variables. Attributes of a component which change
their values during the simulation (E.G. power of a
washing machine).
• Contains. Set of components that can be placed within a
component (E.G. a household can contain several
appliances).
• Context. Components that influence the component that
is being defined (E.G. as a radiator influences the
internal temperature of a household, the radiator is
considered to be in the context of the household).
Fig. 3 A Metamodel example for a power grid. In the scene, entities The example below presents the static description of a
that are related to power grids can be found. The topology contains household. This household description has one feature, one
connections. The population contains agents
variable, two contains and one context. As a feature, the
5.2 Metamodel height of the household is described. The personCount
variable indicates the number of people who are inside the
The Metamodel constitutes the core of the framework household at a given time. This is variable since people
architecture since it defines the metaclasses of components leaving and entering the house would affect this value. The
that can be simulated. A metaclass defines the structural household can contain a powerMeters and appliances. A
composition of a component, which may include other list of these appliances is part of its context since this list
components within. In this way, a model is described by will be used by the powerMeters to calculate the overall
decomposing high level components into low level ones. consumption.
In other words, the Metamodel is a representation that
describes how the model can be structured. However, there < c l a s s name=” Household ” p a r e n t =” L o c a t i o n ”>
<f e a t u r e name=” h e i g h t ” t y p e=” d o u b l e ”
are different layers in the Metamodel that have been u n i t=” meter ” default−v a l u e=” 3 ” />
defined by means of an abstraction process over several <v a r i a b l e name=” per sonCount ” t y p e=” i n t ” />
<c o n t a i n name=” powerMeter ” t y p e=” PowerMeter ” />
complex system models. These layers constitute the basis <c o n t a i n name=” a p p l i a n c e ” t y p e=” A p p l i a n c e ” />
<c o n t e x t name=” a p p l i a n c e L i s t ”
for defining the metaclasses included in the Metamodel: t y p e=” A p p l i a n c e ” r e p l i c a t e d=” t r u e ” />
</ c l a s s>
• Entities. Objects contained in the model scenario (e.g.
understanding the power grid as a complex system, a Listing 1.1 Metamodel entity example of a Household
washing machine would be a component) (Wooldridge
2009).
• Agents. Active objects (intelligent or not) that are able 5.3 Model
to interact with entities or other agents (e.g. people
living in the household where the washing machine is The simulation scenario is expressed through the simula-
located). tion model. This model contains a set of instances of the

123
136 J. Evora et al.

components that are in the scenario. The next example can export results into different formats so that a
presents a simple scenario where a household containing an posterior analysis can be performed.
appliance is represented. Furthermore, there is agent which • Metamodel browser. As well as the model editor, this
is linked to this household. tool is not a framework development. This functionality
is provided by any web browser since the Metamodel is
<s i m u l a t i o n> translated into html format.
<s c e n e>
<o u t d o o r E n v i r o n m e n t>
<b u i l d i n g>
<h o u s e h o l d i d=” h0 ” h e i g h t=” 2 . 5 ”> 5.5 Programming behaviours
<washingMachine>
<b e h a v i o u r name=” WashingMachinebehaviour ”
r e l e a s e=” O p e r a t i o n a l ” />
</ washingMachine> To simulate the electrical system, all the metaclasses have
</ h o u s e h o l d>
</ b u i l d i n g>
to include programmed behaviours. In this section, an
</ o u t d o o r E n v i r o n m e n t> example of each type of behaviour will be described:
</ s c e n e>
<p o p u l a t i o n> environmental, device and social.
<f a m i l y l i n k e d T o=” h0 ”>
<b e h a v i o u r name=” F a m i l y B e h a v i o u r ”
r e l e a s e=” C o u p l e W i t h C h i l d r e n ” />
</ f a m i l y>
</ p o p u l a t i o n> 5.5.1 Environmental behaviour
</ s i m u l a t i o n>

Listing 1.2 Model example Environmental behaviours represent the change over time
of some environmental variables. Environmental variables
are normally common to a group of entities or devices and
5.4 Tools describe the environment.
These can be, for example: solar radiation models,
Within the architecture of Tafat, there are different tools which can be used for calculation of the thermal gains of a
which assist different processes that are part of the devel- building or, additionally, for energy production (photo-
opment of the experiments. The list below briefly explains voltaics, solar-thermal use, etc.). These behaviours do not
what these tools are for: directly change the attributes of an appliance or agents
(such as human behaviour), but rather allow some inter-
• Model editor. This tool is part of the architecture, but it
actions in an indirect way (e.g. through heat exchanges,
is not an exclusive development of the framework. This
etc.).
functionality may be transferred to any model editor
which supports XSD (XML schema) files for writing
simulation models. 5.5.2 Device behaviour
• Profiler. A tool for creating models in an automated
manner especially oriented to develop huge scenarios Most of the electrical appliances used in a household are
based on statistical or incomplete data. The construc- major appliances such as washing machines, refrigerators,
tion of large-scale models must be automatized. For etc. There are also some other, smaller appliances, such as
instance, the model of a huge power grid in which the CD players, televisions, HiFi Audio equipment, etc. Usu-
entire demand is represented in a disaggregated manner ally, the major appliances are responsible for the larger part
cannot be manually built. Furthermore, all required data of the electrical consumption. In order to recreate the
to represent this scenario is usually not available at such individual load curves, EIFER (European Institute for
a level of disaggregation. The Profiler allows the Energy Research, a common research institute by KIT and
integration of several sources of data which are used to EDF) has developed individual models for the behaviours
build large-scale simulation scenarios. of electrical appliances, which were integrated into Tafat.
• Repository. Storage containing behavioural aspects of Simplified technical models are used, which take into
the components described in the metamodel. consideration different technical parameters of a specific
• Simulator Generator. Based on a simulation model, this appliance. So, for example, the load curve of a TV will be
tool compiles all needed Java classes from the Meta- characterised by its size and technology (CRT, LCD,
model translation and the instantiated behaviours from Plasma, etc.). Major appliances also are modelled using the
the repository. All this compilation is integrated with EU Energy Label as an input parameter, which is an
the engine generating a simulator which simulates the indicator for the energy consumption of a device and is
input model. compulsory for appliances sold in the EU.
• Simulator Engine. This tool parses the model, instan- Different releases for the behaviours of the electrical
tiates Java Classes and runs the simulation. This tool devices were created. Using this modular approach, a

123
Advantages of Model Driven Engineering 137

Fig. 4 Simulated load curve of [kW]


a washing machine 2

1,5

0,5

0
0 30 60 90 120 [min]

behaviour of a single appliance can be exchanged in a and decision maker. Otherwise, in a complex social
simple manner. The different releases include simplified behaviour, the task can be launched by the mission maker
technical models with varying degrees of accuracy, thus according to several parameters of its own agent or the
allowing for an optimisation of execution time vs. the environment, which entails a more difficult process in
accuracy of the model. In Fig. 4 an example of the load choosing the recipe, but simpler recipes which only
curve generated by the behaviour of a washing machine describe how to arrange a task as, for example eat.
can be seen. This load curve is created by a simplified
technical model of this appliance. 5.6 Simulation

5.5.3 Social behaviour The main problem in developing good models that accu-
rately represents a place (town) is the lack of data. Often, it
A flexible architecture is proposed to carry out a social is quite difficult to gather the needed data.
behaviour (Fig. 5). Intentional stances are the most com- Ideally, models should be built using real data, since the
plex behaviours (Dennett 1987). For this reason, the simulation will help to understand what happens in the
architecture must be flexible to allow a range of behaviours electrical system. However, when no data is available, a
from simple behaviour based on a list of tasks to a complex model approximation is done. The previously mentioned
behaviour implemented as a neural network. tool Profiler helps to carry out this task. Using a high-level
The mission maker is the intention launcher, the deci- description of a place (for example, the number of build-
sion maker is in charge of choosing a recipe to accomplish ings and the population population), Profiler automatically
the mission launched and the action maker is the executor generates an electrical system model that can be simulated
of the recipe. The recipe is a list of actions that accom- directly. The profiler is part of Tafat, a MDE platform that
plishes a mission. With this architecture, a simple behav- supports the development of simulations.
iour can be developed by creating a big recipe in which all Electrical models can be created to represent the load
the tasks are described and having a very simple mission accurately but are light-weight enough for use in large
scale simulations, and handle demand side management
mechanisms through the use of an agent-based approach.

6 Experimental evaluation

This experiment is validating the MDE approach used in


Tafat. This case study shows the feasibility of Tafat and its
mechanisms for managing the complexity of huge systems.
The scenario used for validating the approach is con-
ceptually divided into three different layers which repre-
sent different realities (Fig. 6). In the base layer, known as
the territorial layer, facilities are placed.
Fig. 5 Agent architecture composed of a mission maker (intentions), The second layer, known as the power grid, includes,
decision maker (recipe selector) and action maker (recipe executor) over this territorial layer, a set of components that may be

123
138 J. Evora et al.

concrete case, ‘‘building’’ does not contain any static


information. However, households are described by their
area. This information is used to calculate the needs for
heating in the power grid layer in terms of installed power
for heating. An example of a simple model of this layer is
described below:
• Building B1
– Household H1
area = 50 m2
– Household H2
area = 45 m2
Fig. 6 Case study layers. The power grid devices are located over the
territorial layer. These power grid devices are controlled by the • Building B2
people who are in the sociological layer. Note that the numbering of
the layers corresponds to the order of development – ...

6.2 Power grid layer


placed inside facilities. These components are electrical
devices that may be either power consumers or power
At this point, the Metamodel must be altered to enable the
producers. In this case study, the focus is made on the
introduction of electrical devices in the territory. To this
residential sector so that these electrical devices are mainly
end, a new concept must be modelled: the electrical device.
common appliances (e.g. refrigerators, radiators, televi-
Now, the household description of the Metamodel must be
sions, etc.). Furthermore, distributed photovoltaic cells
modified in order to include power devices inside. Fur-
may be placed in the home so that the residential sector not
thermore, the description of the building must be changed
only consumes, but also produces energy.
to allow for the introduction of photovoltaic cells.
The third layer is the sociological one and involves the
Apart from these modifications, it is necessary to
interaction of the people living in the households (agents)
develop models for all the different devices. This devel-
with the electrical appliances. Based on this interaction, the
opment involves not only the static model design but also
consumption of the appliances inside the household is
the dynamics. In Fig. 7, the hierarchy of the electrical
calculated when people switch them on.
devices is shown.
Concerning the static description of the electrical devi-
6.1 Territorial layer ces, the parent Metamodel class Electrical device is
described by the operational mode of the device (ON,
This layer is modelled by locating facilities in a territory. STAND BY, OFF) and the active power that the device is
These facilities may be buildings, roads, pipes or networks consuming. These properties are then inherited so that all
(e.g. electrical, communication), among others. In this case the electrical devices have these variables. Since each kind
study, concepts as buildings and households are placed in of electrical device has a specific way of working, a
this layer. behaviour must be developed for each one. These behav-
Buildings are the facilities that support the photovoltaic iours are not developed using the meta language describes
installations (which are defined in the power grid layer) and the Metamodel. In this case, they are developed using Java.
serve as households, which are part of the facility layer. An example of a model including this layer within the
Households contain power grid appliances that used by facilities is presented below:
the simulation agents. These agents, sociological agents • Building B1
that represent the behaviour of the people living in the
household, are defined in the sociological layer and, then, – Household H1
related to households. This relation will define the action Refrigerator R1
area in which they can switch devices on and off.
Therefore, it is necessary to create two new components mode = ON
in the Metamodel: ‘‘building’’ and ‘‘household’’. In this behaviour = RefrigeratorBehaviour

123
Advantages of Model Driven Engineering 139

Fig. 7 Hierarchy of the


electrical devices within the
Metamodel

6.3 Sociological layer specific case study, an agent is defined by its household. An
example of a model is presented below:
The sociological layer is designed to allow the analysis of
• scene
the electrical load of households according to social group
characteristics. The following five different social groups – Building B1
have been taken into account to develop the case study:
Household H1
1. younger single people,
...
2. older single,
3. younger single, • population
4. younger couple and
– SociologicalAgent A1
5. family with children.
householdId = H1
These groups represent about 70 % of the population of
Germany, being the most numerous groups identified by
the German Socio-Economic Panel Study (SOEP). The 6.4 Simulation and results
constitution of this sample is shown in Fig. 8.
The survey1 here provides the information about the In this simulation, the device load curves within a house-
timetables and appliance usage of a household according hold are generated. The curves were aggregated using
to social group. Based on this information the agent individual behaviours for each household, taking into
behaviour related to the household is implemented. The account some deviation from the mean (variation of the
electrical usage behaviour data employed for this study duration and usage time for different electrical appliances).
was obtained through a local survey. Thus the data The simulation results show the load curve for a day of
gathered from a small sampling was used as input 1,000 households with around 12 appliances in each, thus
parameter in the Tafat model. Hence, 20 different types of composing approximately 12,000 simulation components.
social behaviours are used to simulate the five socio- This type of simulation can provide the relevance of a
demographic groups. For example, cooking the dinner is specific power consumer in the household as well as the
at 20 h in a specific social behaviour. Obviously, not all influence of a specific type of consumer on the global load.
the households start cooking at 20. Thus, a normal sta- The number of 1,000 entities was chosen, because it has
tistical distribution is defined, where the starting time been found that larger numbers of units do not change the
mean is at 20 with a deviation of 15 min. results significantly, but only increase the simulation exe-
In arranging this study, a Tafat tool that automatically cution time for the simulation. This consistency of results
builds a scene has been used. This tool uses statistical data is probably due to the use of a limited number of recipes
from the SOEP and the survey to create a model scene in (taken from the number of people surveys). The execution
which the social groups are distributed in the households. time for a 24-h simulation period was around 20 minutes
These households contain the electrical appliances, and on a standard desktop PC.
their number, depending on the social group. The 1,000 household sample contains a distribution of
The introduction of these agents into the Metamodel the different social groups according to real statistical data,
involves a distribution of the components within the in order to obtain a sample of households as close as
Metamodel among components that are placed in a sce- possible to reality. In Fig. 9, the simulated load curve for
nario and components that are part of a population. For this one day can be seen. The simulation is run in a high time
resolution, with a time step of one minute. This allows
observing effects which are neglected in simulations at
1
The survey consisted in local interviews with around 20 people in lower resolutions, in 15 minutes or one-hour models. Some
Karlsruhe, Germany, in order to obtain data such as usage time and
sharp peaks can be observed, which are caused by the use
duration amongst specific socio-demographic groups. It should be
noted that the survey is not representative, but rather a sample of the of high power consumption devices in the household. A
user behaviours of those groups. general trend to use more power during the daytime is

123
140 J. Evora et al.

Fig. 8 Socio-demographic Socio-demographic groups distribuon


groups used in the case study.
Source SOEP
Populaon in Germany Sample Populaon used in the
simulaon

Other combinaon Couple without children


8% 17%

1 pers.HH, person
GT 60 Family with
Couple with Selecon children LE 16
9%
children GT 16 70% 20%
16%

1 pers.HH, person LE 60
9%

Couple without children


Single parent
GT 60
6%
15%

Fig. 9 Simulated load curve of [kW]


1,000 households for one day 1000

900

800

700

600

500

400

300

200

100

0 [h]
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

clearly visible. At night, the base load (devices that are location and area. Notwithstanding, the database does not
constantly running, such as refrigerators and other perma- contain all the parameters defined in the template. These
nent loads) cause a consumption that is only around one parameters (e.g. number of computers) are calculated
third of the daily peak load. The parameterisation of the according to statistical distributions for each social group.
simulation can be seen in Fig. 10. In addition, the social group is adjusted based on different
Basically, the Profiler works based on a household statistical distributions considering the household area and
template. This template has different parameters as it is location.
shown in Fig. 10. The scenario model is automatically built It is necessary to validate simulation results. However, it
based on this template and a household database which is not possible to compare the simulation data to real data
contains all the information available: household reference, at a disaggregated level. Real disaggregated data is not

123
Advantages of Model Driven Engineering 141

SG SG
Building
AƩributes
Sociological Behavior
area Household It is responsible for using the
Appliances appliances depending on the
AƩributes day Ɵme
installed power Cooking Microwave Oven
mode
power
Stove 4 1 1

Dishwasher Appliance Behavior


Refrigerator Washing It is responsible for calculaƟng
1 1 1
Machine the power consumpƟon

Audio TV Computer
Hifi 1 1 SG

Console Lighng Console


1 1 SG

Vacuum Hairdryer Iron


1 1 1

AƩributes Power Bus Power Bus Behavior


power It is responsible for aggregaƟng
1 power consumpƟon

1000

SG Household area, number of computers or consoles and socialogical


behavior depend on the Social Group

Fig. 10 Profiler pattern for creating 1,000 households. The Social Group (SG) is randomly selected for each household using a frequency
distribution

available to the public, the only available is are at an consistent with the relatively small amount of households (in
aggregated level RWE (Rhein-Ruhr Verteilnetz 2011). comparison to the statistical samples taken to obtain a pro-
Therefore, the simulation is validated comparing real data file, which are representative) and the reduced number of
to simulated results at an aggregated level. types of behaviour (in total, only 20 different types of
In Fig. 11 the simulation load curve is compared to a behaviour have been used). Furthermore, only 70 % of the
real load curve in Germany for a winter weekday household population is modelled, neglecting other social
[according to Bundesverband der Energie- und Wasser- groups which may change the curve.
wirtschaft (2011) and reported by RWE (Rhein-Ruhr Even though the selected samples in the survey are not
Verteilnetz 2011)] for household demand. This curve is a representative for all Germany nor German society as a
profile in a normalized form. This profile can be scaled to a whole (only five social groups were used), the general
given amount of energy. In this case, and for comparison trends of both curves are similar. Three peaks can be
purposes, the profile was weighted with the same amount observed, which are closely synchronized in time and
of energy as the simulation load curve, i.e. that the daily correspond to morning, noon and evening peaks. These
energy consumed [kWh] is the same in both cases. The real peaks are correlated with a large and concurrent usage of
load curve is smooth, since it represents an aggregated load high power devices, such as cooking plates, ovens,
behaviour at high levels of the electricity system for large microwaves, etc. due to eating habits, as well as lighting
number of consumers. They are the result of a statistical use in the evening. The morning and noon peaks are lower
analysis based on representative samples from different in the simulation than in the profile, whereas the evening
consumer groups (Palensky et al. 2008). peak is higher. The time synchronization of the ramps of
The simulated curve represents the total power consumed the peaks matches quite well; this indicates that the
by a sample of 1,000 households, modelled individually and activities (having breakfast, lunch, returning home, etc.)
with an autonomous behaviour for each of them. The curve were modelled according to the average German user
has been built by averaging periods of 15 minutes in order to behaviour. Even though, some differences can be observed
match the same time granularity as given in the standard in the evening drop (21–23 h), as well as a small second
load profile. The curve is more peak shaped, which is peak that is not seen in the profile.

123
142 J. Evora et al.

Fig. 11 Simulated load curve [kW] Weighted profile Simulaon


vs. standardized residential load 1000
profile
900

800

700

600

500

400

300

200

100

0 [h]
00:00 02:00 04:00 06:00 08:00 10:00 12:00 14:00 16:00 18:00 20:00 22:00 00:00

6.5 Discussion modelling processes should be done using a large amount


of detail in order to experiment and study new algorithms
Even using a relatively small sample of households and and strategies for management. New scenarios, new prob-
reduced number of types of behaviour, a curve that repre- lems and new challenges will arise in the near future with
sents the major characteristics (peaks and troughs, as well as the introduction of renewable energy sources and a dis-
their timely synchronization) is generated. Concerning the tributed production in the electrical system. Simulations
differences in the height of the peaks, the model should be are necessary to design new management approaches.
reviewed in order to check the individual power curves of The case study demonstrates that a bottom-up simula-
each electrical device. This seems to be quite as almost no tion of residential consumption using an agent-based
data is available for such a validation (at a representative approach has been successful, as the result curves show
sample). However, the differences could also be related to similarities to aggregated load curves. A comparison with a
the use of only 70 % of the socio-demographic population national aggregated profile shows similarities in the main
share. Further, behaviour itself is another factor to consider, characteristics of the curve. Moreover, due to the high
as a largely simplified and almost static model was used. resolution of the model, a large number of parameters
Some specific characteristics of the model create peaks, (individual appliances types and models, socio-technical
which could be explained by a rather homogeneous behaviours, etc.) are available for variation.
behaviour of the groups. For example the second evening The simulation will allow us to further the study of the
peak (around 21:30 h) might be caused by some activities integration of demand side management strategies. Strate-
(watching TV, other evening activities) which start and end gies, such as adaptive or reactive technologies, incentives
at similar times, because of the relatively small sample. or campaigns, can be addressed for studying their impact at
Using data from a more representative survey or a more load curve level. However, social behaviour components
stochastic-based social behaviour, this could be avoided. need to be validated and improved. This validation is
necessary for studying the emergent behaviour and for
finding the local actions of components which result in the
7 Conclusions and outlook desired emergent behaviour. Moreover, new social behav-
iour components should be improved in order to achieve a
In this paper, a complex model of a Power Grid has been higher degree of heterogeneity to the models. Due to the
introduced. In engineering, model complexity is increasing, high resolution of the household model, individual actions,
since it is necessary to analyse new proposed designs from such as changing specific parameters on an appliance can
different perspectives. In the case of Power Grids, be performed.

123
Advantages of Model Driven Engineering 143

Furthermore, the model developed could be expanded in Capasso A, Grattieri W, Lamedica R, Prudenzi A (1994) A bottom-up
order to simulate not only the demand side, but also dis- approach to residential load modeling. Power Syst IEEE Trans
9(2):957–964
tributed generation or other injections to the grid (like Collier N (2003) Repast: an extensible framework for agent
storage). These could interact with the existing compo- simulation. Univ Chic Soc Sci Res 36:2003
nents. This is already contemplated within Tafat, and Dennett D (1987) The intentional stance. M.I.T. Press, Cambridge
would allow a disaggregated analysis of offer-demand Evora J, Kremers E, Morales S, Hernandez M, Hernandez JJ, Viejo P
(2011) Agent-based modelling of electrical load at household
balance as well as estimating the impact of those measures level. In: ECAL 2011: CoSMoS—Proceedings of the 2011
at a grid level. workshop on complex systems modelling and simulation, p 12
From the software engineering point of view, Model Holcombe M, Coakley S, Smallwood R (2006) A general framework
Driven Engineering has been demonstrated to be a very for agent-based modelling of complex systems. In: Proceedings
of the 2006 European conference on complex systems. European
useful methodology for dealing with the complexity of complex systems society Paris, France
simulation models. Amongst advantages: Holland JH (1995) Hidden order: how adaptation builds complexity.
Addison Wesley Longman Publishing Co.,Inc, Redwood City, CA
• Fast development of complex system simulations from Holland JH (2006) Studying complex adaptive systems. J Syst Sci
scratch. Complex 19(1):1–8
• Formalisation of a Metamodel to describe the compo- Kiran M, Richmond P, Holcombe M, Chin LS, Worth D, Greenough
C (2010) Flame: simulating large populations of agents on
nent classes to have a shared representation and
parallel hardware architectures. In: Proceedings of the 9th
semantic. Therefore, modellers may integrate their international conference on autonomous agents and multiagent
models easily. systems: volume 1–Volume 1. International foundation for
• The Metamodel enables the construction of a family of autonomous agents and multiagent systems, pp 1633–1636
Luke S, Cioffi-Revilla C, Panait L, Sullivan K (2004) Mason: a new
simulators which uses the same component classes and
multi-agent simulation toolkit. In: Proceedings of the 2004
behaviours. SwarmFest Workshop, vol 8
• Separation of concerns: component descriptions are Massoud Amin S, Wollenberg BF (2005) Toward a smart grid: power
fixed at the Metamodel level while their way of acting delivery for the 21st century. Power Energy Mag IEEE 3(5):34–41
Minar N, Burkhart R, Langton C, Askenazi M (1996) The swarm
(behavioural aspects) are variable allowing to have
simulation system: a toolkit for building multi-agent simulations.
different releases in which the behaviour of a compo- Santa Fe Institute Santa Fe
nent may be represented. Mitchell WM (1992) Complexity: the emerging science at the edge of
• Modular development which can improve the engine order and chaos. Touchstone, New York
Monti A, Ponci F, Benigni A, Liu J (2010) Distributed intelligence for
without affecting previously developed models.
smart grid control. In: Nonsinusoidal currents and compensation
• A high performance engines whose optimization is (ISNCC), 2010 international school on, pp 46–58
constantly being improved. Paatero JV (2009) Computational studies on variable distributed
• A complete set of tools which assist the different energy systems. Phd thesis, Helsinki University of Technology
Palensky P, Dietrich D (2011) Demand side management: demand
processes in creating a new simulator.
response, intelligent energy systems, and smart loads. Ind Inform
• An easy access to the modification of experiments by IEEE Trans 7(3):381–388
merely changing the definition of the simulation model. Palensky P, Kupzog F, Zaidi AA, Kai Z (2008) Modeling domestic
housing loads for demand response. In: Industrial electronics, 2008.
IECON 2008. 34th Annual conference of IEEE, pp 2742–2747
Acknowledgments This work has been partially supported by Polack FAC, Hoverd T, Sampson AT, Stepney S, Timmis J (2008)
European Regional Development Fund (ERDF/FEDER) and Agencia Complex systems models: engineering simulations. In: ALife XI,
Canaria de Investigacin, Innovacin y Sociedad de la Informacin Winchester, UK, August 2008. MIT Press, pp 482–489.
(ACIISI) of Canary Islands Autonomous Government through the Poole JD (2001) Model-driven architecture: vision, standards and
project whose reference is SolSub200801000137, and also through emerging technologies
the ACIISI PhD Grant funding to José Évora with reference Railsback SF, Lytinen SL, Jackson SK (2006) Agent-based simula-
TESIS20100095. tion platforms: review and development recommendations.
Simulation 82(9):609–623. http://sim.sagepub.com/content/82/
9/609.short
Ramchurn S, Vytelingum P, Rogers A, Jennings N (2011) Agent-
based control for decentralised demand side management in the
References smart grid. Taipei, Taiwan, pp 5–12. http://eprints.ecs.soton.ac.
uk/21985/
Borshchev A, Filippov A (2004) Anylogicmulti-paradigm simulation RWE Rhein-Ruhr Verteilnetz: Lastprofile (2011) http://www.rwe-
for business, engineering and research. In: The 6th IIE annual rhein-ruhr-verteilnetz.com/web/cms/de/201616/rwe-rhein-ruhr-
simulation solutions conference, vol 150 verteilnetz/netzzugang-strom/netzzugang-netznutzung/lastprofile/
Bundesverband der Energie- und Wasserwirtschaft (2011) BDEW - Schmidt DC (2006) Guest editor’s introduction: model-driven
Standardlastprofile (SLP) engineering. Computer 39:25–31. doi:10.1109/MC.2006.58
Butler M, Petre L, Sere K, Kent S (2002) Model driven engineering. Stepney S, Polack FAC, Turner HR (2006) Engineering emergence.
In: Lecture notes in vomputer science, vol 2335. Springer, In: Engineering of complex computer systems, 2006. ICECCS
Berlin, Heidelberg, pp 286–298. doi:10.1007/3-540-47884-1_16 2006. 11th IEEE international conference on, p 9

123
144 J. Evora et al.

Stokes M, Rylatt M, Lomas K (2004) A simple model of domestic Wooldridge MJ (2002) An introduction to multiagent systems. Wiley,
lighting demand. Energy Build 36(2):103–116 Chichester, West Sussex
Tisue S, Wilensky U (2004) Netlogo: a simple environment for Wooldridge M (2009) An introduction to multiagent systems—
modeling complexity. In: International conference on complex second edition. Wiley and Sons, New York
systems, pp 16–21 Wright A, Firth S (2007) The nature of domestic electricity-loads and
Widén J, Wäckelgard E (2009) A high-resolution stochastic model of effects of time averaging on statistics and on-site generation
domestic activity patterns and electricity demand. Appl Energy calculations. Appl Energy 84(4):389–403
87(6):1880–1892 Zauner G, Leitner D, Breitenecker F (2007) Modeling structural-
Wildberger AM (1997) Complex adaptive systems: concepts and dynamics systems in modelica/dymola, modelica/mosilab and
power industry applications. Control Syst IEEE 17(6):77–88 anylogic. In: EOOLT, pp 99–110
Willis HL, Scott WG (2000) Distributed power generation: planning
and evaluation. Marcel Dekker, New York

123

You might also like