Upload
nguyenxuyen
View
219
Download
1
Embed Size (px)
Citation preview
MULTI AGENT BASED CONTROL AND PROTECTION
FOR AN INVERTER BASED MICROGRID
Asitha Lakruwan Kulasekera
(108020B)
Thesis submitted in partial fulfilment of the requirements for the degree Master of
Science
Department of Mechanical Engineering
University of Moratuwa
Sri Lanka
February 2012
i
DECLARATION
I declare that this is my own work and this thesis does not incorporate without
acknowledgement any material previously submitted for a Degree or Diploma in any
other University or institute of higher learning and to the best of my knowledge and
belief it does not contain any material previously published or written by another
person except where the acknowledgement is made in the text.
Also, I hereby grant to University of Moratuwa the non-exclusive right to reproduce
and distribute my thesis/dissertation, in whole or in part in print, electronic or other
medium. I retain the right to use this content in whole or part in future works (such as
articles or books).
Signature: Date:
The above candidate has carried out research for the Masters/MPhil/PhD thesis under
my supervision.
Signature of the supervisor: Date:
Signature of the supervisor: Date:
ii
Table of Contents
List of figures ........................................................................................................... v
List of tables ........................................................................................................... vi
List of abbreviations ............................................................................................... vii
1. Introduction ...................................................................................................... 1
1.1. Emergence of smarter electrical grids and microgrids ................................. 1
1.1.1. Smart grid ........................................................................................... 2
1.1.2. Smarter microgrids.............................................................................. 3
1.2. Use of multi agent systems ......................................................................... 4
1.3. Thesis statement ......................................................................................... 5
1.3.1. Methodology ....................................................................................... 6
1.4. Contributions ............................................................................................. 8
1.5. Organization .............................................................................................. 8
2. Literature Review ............................................................................................. 9
2.1. A Multi agent system ................................................................................. 9
2.1.1. Features of a multi agent system ....................................................... 10
2.2. Multi agent systems and applications ....................................................... 11
2.3. Toolkits/frameworks for development of multi agent systems .................. 12
2.4. JADE and Zeus – a comparative overview ............................................... 12
2.5. JADE agent building toolkit ..................................................................... 14
2.5.1. JADE architecture ............................................................................. 14
2.6. Recent applications of multi agent systems in microgrids ......................... 17
2.6.1. Distributed control ............................................................................ 17
2.6.2. Electricity trading ............................................................................. 19
iii
2.6.3. Optimization ..................................................................................... 20
2.6.4. Power restoration .............................................................................. 21
2.7. Control architectures ................................................................................ 21
3. Conceptual design of dual-layered MAS ......................................................... 24
3.1. Dual layered architecture ......................................................................... 24
3.2. Agents used in the dual-layered MAS ...................................................... 26
4. Implementation of dual-layered MAS ............................................................. 28
4.1. Dual-layered Multi agent system implementation in JADE ...................... 28
4.1.1. Agent specification ........................................................................... 28
4.1.2. Application analysis .......................................................................... 29
4.1.3. Application design ............................................................................ 30
4.1.4. MAS algorithm implementation ........................................................ 34
4.2. Running multi agent system application ................................................... 36
5. Simulations and Results .................................................................................. 37
5.1. Description of simulation circuit .............................................................. 38
5.2. Intentional islanding during a fault ........................................................... 39
5.2.1. Messages exchanged among agents and physical entities .................. 40
5.2.2. Updates to the ontology .................................................................... 42
5.2.3. Results and discussion ...................................................................... 43
5.3. Protecting critical loads during intentional islanding ................................ 45
5.3.1. Messages exchanged among agents and physical entities .................. 46
5.3.1. Updates to the ontology .................................................................... 46
5.3.2. Results and discussion ...................................................................... 47
5.4. Managing critical loads during islanded operation .................................... 49
5.4.1. Messages exchanged among agents and physical entities .................. 50
iv
5.4.1. Updates to the ontology .................................................................... 51
5.4.2. Results and discussion ...................................................................... 52
6. Conclusions and Future Directions ................................................................. 55
6.1. Conclusions ............................................................................................. 55
6.2. Future work ............................................................................................. 56
References ............................................................................................................. 57
Section 4: Impact of Research results ...................... Error! Bookmark not defined.
Section 5: Publications ............................................. Error! Bookmark not defined.
v
LIST OF FIGURES
Figure 1.1 A smart grid application .......................................................................... 2
Figure 1.2 Conceptual model of a microgrid ............................................................. 4
Figure 2.1 Example of a multi agent system ............................................................. 9
Figure 2.2 JADE architecture ................................................................................. 15
Figure 2.3 Basic multi agent system structure ......................................................... 22
Figure 2.4 Single layered multi agent system architecture ...................................... 23
Figure 3.1 Proposed dual layered MAS architecture ............................................... 24
Figure 3.2 Interaction between agents in the dual layered multi agent architecture .. 25
Figure 4.1 Dual-layered MAS ontology .................................................................. 31
Figure 4.2 Control algorithm for multi agent system operation ............................... 34
Figure 4.3 Establishing communication between simulation environment and MAS36
Figure 5.1 Simulated microgrid test-bed ................................................................. 38
Figure 5.2 Test-bed set-up for case study 1 ............................................................. 39
Figure 5.3 Control flow chart for intentional islanding ........................................... 40
Figure 5.4 Key messages exchanged between agents during islanding .................... 41
Figure 5.5 Line to line voltages during intentional islanding ................................... 43
Figure 5.6 Test-bed set-up for case study 2 ............................................................. 45
Figure 5.7 Line to line voltages during securing critical loads ................................ 48
Figure 5.8 Test-bed set-up for case study 3 ............................................................. 49
Figure 5.9 Control flow chart for load management during islanded operation ....... 50
Figure 5.10 Line to line voltages during islanded operation .................................... 52
Figure 6.1 Proposed microgrid test-bed .................................................................. 56
vi
LIST OF TABLES
Table 2.1 A comparison between JADE and ZEUS platforms ................................ 13
Table 4.1 Microgrid domain knowledge, attributes and initial values ...................... 33
Table 5.1 Updated concepts, initial and updated values for case study 1 ................. 42
Table 5.2 Updated concepts, initial and updated values for case study 2 ................. 46
Table 5.3 Updated concepts, initial and updated values for case study 3 ................. 51
Table 5.4 Priority revision during islanded mode .................................................... 54
vii
LIST OF ABBREVIATIONS
Abbreviation Description
DG Distributed Generation
DSM Demand Side Management
FIPA Foundation for Intelligent Physical Agents
FOSS Free and Open Source Software
GHG Green House gasses
GUI Graphical User interface
JADE Java Agent Development Framework
MAS Multi Agent Systems
NCRES Non-conventional Renewable Energy Sources
OS Operating Systems
PC Personal Computer
PCC Point of Common Coupling
PV Photovoltaic (cell)
PWM Pulse Width Modulation
SCADA Supervisory Control and Data Acquisition
1
SECTION 3
1. INTRODUCTION
An agent is a software entity which can operate on its own by responding and
reacting with its environment. A collection of such agents collaborating to achieve an
overall goal can be considered as a multi agent system (MAS). Such systems are
ideal for the complex real-time control problems that are faced with today.
Multi agent systems are being widely used in computer systems and e-commerce
applications [1], [2]. The collaborative social ability of agents is enhanced by the
presence of fast communication capabilities in such applications (i.e. web/internet).
With the integration of fast communication capabilities into power grids in building
future-proof smart(er) grids, the possibility of integrating multi agent systems to
power engineering is becoming real [3]. The unique feature set available in multi
agent systems is proving to be the correct fit in terms of the requirements in power
engineering applications.
This section provides an introduction to the research area, which the application of
multi agent systems in microgrid applications. The importance of this work is briefly
explained and is followed by the thesis statement.
1.1. Emergence of smarter electrical grids and microgrids
The ever increasing demand for electrical power has been a major challenge for the
electrical supply authorities worldwide [4]. The present grid systems which have
mostly been built over the last century are rapidly aging [4]. These legacy grid
infrastructures are becoming increasingly congested and are seen as incapable of
meeting the future energy needs of an information economy. The renewed interest in
climate change mitigation through reduced Green House Gas (GHG) emissions has
ushered in a need of greener generation and utilizing renewables in the energy mix.
Therefore, these power systems have to become smarter, more reliable and more
robust in taking on renewable energy sources without losing stability and efficiency.
2
1.1.1. Smart grid
A smart grid is the use of sensors, communications, computational capabilities and
control to enhance the overall functionality of the electric power grid [4]. This
concept is depicted in Figure 1.1.
Figure 1.1 A smart grid application
Smarter grids are a step forward in overcoming the limitations of legacy electricity
infrastructure[4]. They must be automated and be able to behave as a distributed
energy delivery system, that incorporates two-way flow of electricity & information
including advanced sensing & monitoring [4] along with the following
functionalities [5].
• Visualizing the power grid in real time
• Increasing system capacity
• Relieving bottlenecks
• Enabling a self-healing network
• Enabling enhanced connectivity to consumers
• Allowing incorporation of distributed non-conventional renewable energy
sources (NCRES)
3
One rising feature integrated into smart(er) grids is the microgrid concept [6]. It
allows for far greater control over improving grid reliability [5], resilience towards a
wide range of threats to the electrical grid [7], allow for easy incorporation of
distributed generation [8], reduce GHG emissions etc. Therefore, in developing the
future smarter grid, implementation of successful microgrids are vital.
1.1.2. Smarter microgrids
Smarter microgrids are part of the solution to the problems faced by legacy electrical
infrastructure. Their capability to house local embedded generators as distributed
generation and be locally controlled offers various advantages over legacy systems.
In order to realize the potential of such smarter systems, a high degree of distributed
control is required [6]. As a novel method in providing this flexible distributed
control requirement, Multi Agent Systems (MAS) are stepping forward.
Centralized bulk generation facilities are giving way to, more distributed small scale
generation. Distributed generation (DG) introduces the capability of embedding a
wide range of low emission and potentially lower cost generation options. Such
options can include internal combustion engines, micro-turbines and non-
conventional renewable energy sources such as solar photo voltaic, wind, biomass,
mini/micro-hydro and even waste-to-energy systems. These smaller generation
technologies allow the sources to be placed optimally with respect to the loads, thus
reducing emissions and transmission losses, while also allowing for local control
instead of central dispatching [6].
Such DG systems provide the potential to take a sub-system approach in working
with microgrids. During a disturbance in the main grid, local generation and their
loads can be separated from the utility and isolate the local loads from the
disturbance, while maintaining the integrity of the main utility grid. This isolation is
carried out at a single point of connection to the main utility known as point of
common coupling (PCC). This capability, known as islanding, requires high
reliability and flexibility from the microgrid. These requirements can be met by
having peer-to-peer control and plug-and-play capabilities for each entity in the
microgrid.
4
A conceptual microgrid model is shown in Figure 1.2. This can be either a small
scale distribution network or an electrical system of a building. Certain loads,
considered critical, will have local power sources. Non-critical loads will have no
local supply. The critical loads can be isolated from upstream outages by islanding at
the PCC and shedding the excess demand of non-critical loads.
Figure 1.2 Conceptual model of a microgrid
1.2. Use of multi agent systems
Most conventional power systems rely on Supervisory Control and Data Acquisition
(SCADA) systems for control and communications. The control and communication
architecture provided by such SCADA systems is built upon proprietary
communication and signalling protocols. In terms of a microgrid, the aim is to allow
for flexible integration of a multitude of different distributed energy resources (DER)
and/or non-conventional renewable energy sources (NCRES). However the vendor
specific control protocols used in commercially available SCADA systems for
microgrids (i.e. RSView32 [9], Networked Distributed Resource™ and Central
Operation Management System) restrict the interconnectivity and interoperability of
5
diverse systems. Such restrictions can result in increased deployment costs and
prevent microgrid rollout.
Use of multi agent systems to provide distributed control capabilities to the
microgrid applications offers various advantages over conventional SCADA systems.
Multi agent system development platforms are available as Free and Open Source
(FOSS) applications and most of them are based on Java, making them platform
independent. They can also be combined with external programming to interface
with different external hardware and software systems [1]. These advantages make
multi agent systems more suited for microgrid control. In addition, multi agent
systems also have the following advantages in context of microgrid control:
i. Multi agent systems are inherently flexible and extensible.
ii. Local loads and sources will have different specifications and systems.
Therefore, an intelligent distributed control system is the best solution.
iii. The microgrid will have to take rapid autonomous decisions regarding
seamless transition to islanded mode from grid connected mode and
protecting critical loads by load shedding.
iv. Multi agent systems allow for a complex task to be broken down into several
smaller tasks assigned to a team of agents. This allows for easier handling of
a larger problem.
1.3. Thesis statement
The objective of this research is to design, develop and simulate a multi agent system
that enables real-time energy management of a microgrid. This will include the
management and control procedures during transition from grid-connected to
islanding mode; the algorithms to manage priority levels of the connected loads and
protect critical loads utilizing available limited capacity from local embedded
generators during outages.
Novel MAS which provides scalable and robust distributed control architecture for
microgrid application is presented in the thesis. The MAS model is designed using
6
the JADE (Java Agent Development framework) platform and is implemented on a
simulated test-bed in MATLAB/SIMULINK.
The steps taken to realize the objectives of the thesis statement are listed below, and
are further detailed in Section 1.3.1:
1. Identification of suitable agent building framework
2. Design of Multi agent system architecture
3. Development of Multi agent system
4. Integration of the multi agent system and the microgrid simulation
5. Validation of results using simulation studies
1.3.1. Methodology
the methodology consists of the following five steps:
Step 1: Identification of suitable agent building framework
Several commercial and open-source multi agent system building toolkits are
currently available today for developing complex multi agent system in which the
design phase has been simplified [10], [11]. Such tool kits have been assessed in
literature in terms of time required for analysis and design, code generation,
integration with external code, response time, the number of messages exchanged
among agents etc. Further details regarding the selection of a suitable toolkit is
discussed in Section 2.4.
Step 2: Multi agent system architecture Design
The multi agent system aims to provide control and protection system for an inverter
based microgrid. The aim is to break down a larger goal into several smaller tasks
and delegate them to individual entities rather than to a single controller. Further
details on designing the multi agent architecture is presented in Section 3.
7
Step 3: Development of dual-layered multi agent system
Developing a multi agent system using a selected tool kit consists of following steps.
Initially, the abilities of each agent have to be specified, followed by identifying each
of their roles and responsibilities, through building role models and defining social
and domain responsibilities. Then the ontology of the system has to be created based
on modelling their knowledge or facts. All of these are concluded by creating the
agents and generating the code. This process is detailed in Section 4.
Step 4: Integration of the multi agent system and the microgrid simulation
The developed multi agent system attempts to control physical entities or a
simulation of the same. The multi agent system and the simulation are inherently in
two domains. The multi agent system runs on a JAVA platform while the simulation
is run on a simulating environment (i.e. MATLAB/SIMULINK). Therefore, in order
to establish communication between the two domains, for sensing and control
TCP/IP is used. A third party TCP/IP server is utilized as an interface to MATLAB
and it connects to another middle server which allows multiple simultaneous TCP/IP
connections. The middle server is required because; the interface allows only a single
connection at a time. Details regarding the creation of this interface are given in
Section 4.2.
Step 5: Validation of results using simulation studies
Three case studies are carried out to verify the implementation of the multi agent
system within a simulated microgrid test-bed environment. They demonstrate the
functionality of the system in islanding, protecting/securing supply to critical loads
and managing load priorities during islanded mode operation. The case studies and
their results are presented in detail in Section 5. Details of the microgrid test-bed
used for simulations are given in Section 5.1.
8
1.4. Contributions
In summary, the proposed multi-agent system control architecture is designed,
developed and simulated in several simulation case studies. It is expected that this
research will provide an insight into the design and development of a multi-agent
system. Furthermore, this research also contributes novel control architecture to
increase effectiveness of multi-agent system in the context of microgrids.
Specifically, this comprises control algorithms for managing the available limited
supply from local embedded sources to protect local critical loads during fault/s in
the main grid.
1.5. Organization
Rest of the thesis is organized as follows. Section 2 summarizes related work.
Sections 3 and 4 explain the methodology presented in Section 1 in more detail.
Section 5 presents the case studies and results, and the final section presents
conclusions and future work.
9
2. LITERATURE REVIEW
An agent system is hardware or software entity that possesses social coordination
and communication capabilities and capable of achieving a larger overall goal by
tackling smaller individual tasks. Agents have the ability to operate within its
environment to achieve its goal by sharing knowledge with other agents or taking
initiative.
Even a single agent can operate as a system, by reacting and interacting with its
environment. Such an agent will require specific programming to provide itself with
individual knowledge, actions and goals. Any other agents in the same environment
will not have any effect on the operation of such an agent.
2.1. A Multi agent system
A collection of social, collaborative agents constitute a multi agent system. All the
agents will inherit a set of common goals, and react to change in the environment,
make decisions to achieve those goals, or help other agents in achieving their goals
[1]. In contrast to single agent systems, other agents will also be a part of any agent’s
environment.
An example multi agent system is described in Figure 2.1. It shows a community of
agents in a stock market environment.
Figure 2.1 Example of a multi agent system
Source: Manage the Complexity with Intelligent Agent Technology
(http://home1.gte.net/pfingar/eba.htm)
10
The selling agent only has direct knowledge of potential buyers and maximizing the
profit. Other agents will know about their own domains. The trading rules agent
knows of all the rules and regulations; the risk assessment agent is able to assess the
risk associated with any stock; Data mining agent is able to access and understand
patterns in the sales data and the forecasting agent is able to forecast the rise and fall
of stock prices. The selling agent can make a more educated decision on trading a
particular stock by collaborating with his fellow agents, than on his own. He can
communicate with the other agents in his environment and ask for any supporting
information that will enable him to maximize his sales and/or profits.
2.1.1. Features of a multi agent system
As the aim of this thesis is to implement a multi agent system for distributed control
(intelligence), the following available feature set is ideally suited for such
applications.
Autonomy – agents are capable of operating without human supervision.
Social ability – agents are able to communicate with each other as well as human
operators using a common language.
Reactivity – agents are able to identify and react to changes in the environment.
Proactivity – agents take decisions or initiatives based on their assigned
objectives/goals.
Agents also hold certain knowledge or beliefs regarding their existence or their
environment. This knowledge and beliefs enable the agents to take decisions
regarding changes in their environment and seek to fulfil their objectives. In addition
to these features, agents have all or some of the following capabilities as well.
11
Data collection – an agent contains or will be able to collect data to build-up
knowledge regarding its environment, and assist fellow agents
making their decisions.
Social knowledge – the multi agent system contains an agent who helps the other
agents to know about each other’s existence and share their
capabilities (i.e. yellow pages service).
Learning – agents have learning capabilities to update their knowledge
and beliefs based on changes in the environment, and updates
from fellow agents.
Communication – all agents in the multi agent system should have a clearly
defined set of protocols regarding their communication with
humans or other agents.
2.2. Multi agent systems and applications
Multi agent systems are becoming more and more ubiquitous in the world. Recently,
multi agent systems are being implemented in a many fields such as mathematics,
physics, engineering sciences, and social science communities [12]. They have been
used in a wide array of applications ranging from computing and processing [13–16],
robotics and control systems [17–21], transportation [22–25], aerospace and nuclear
engineering in recent literature. There is a rising trend of applying multi agent
systems in power engineering applications for microgrids which is discussed in detail
in Section 2.4.
12
2.3. Toolkits/frameworks for development of multi agent systems
A multi agent system can be built from base coding. However, this is not necessary
as there are many easily available agent development tool kits where the agent
development process has been simplified. There are a number of open-source agent
development toolkits available, such as: Aglets software development kit [26],
Voyager [27], Zeus [11], JADE [10], Tracy [28], SPRINGS [29], and Skeleton [30].
Performance analysis of these agent development toolkits has been comprehensively
discussed in [31–38] in terms of time taken for analysis and design, code generation,
integration with external code, response time, the number of messages exchanged
among agents etc.. Based on these evaluations JADE and ZEUS are initially short
listed as potential contenders. Further analysis carried out to select the best suited
platform is presented in the following Section 2.4.
Step 1: Identification of suitable agent building framework
2.4. JADE and Zeus – a comparative overview
In selecting an agent tool kit / platform for an open-source development application it
is important to select one which is based on a common standard. The established
standard for agent systems is IEEE’s standard on Foundation for Intelligent Physical
Agents (FIPA) [39]. Based on the development platform of a well-known standard
will allow for easier inter-operability between different systems, resulting in
universal applicability. Therefore, the main criteria in selecting the best suited toolkit
for this application are compliance with FIPA standards.
Several studies in the literature [31], [33], [37] have compared the performance of
JADE and ZEUS in terms of availability, design and analysis, number of lines of
code, response time etc. A comparison of JADE and ZEUS platforms are given in
Table 2.1.
.
13
Table 2.1 A comparison between JADE and ZEUS platforms
JADE ZEUS
Free and open source Free and open source
FIPA Compliant FIPA Compliant
JAVA Based JAVA Based
Agent Communication Language (ACL) Communication
ACL and Knowledge Query
Manipulation Language (KQML)
Provides authentication Some security capabilities
Decent GUI User friendly GUI
Lower latency in complex systems Higher latency in complex systems
JADE and Zeus along with JATLite and Skeleton are comprehensively evaluated in
[31], grouping them together based on Java and availability of GUI. These four are
evaluated for use in a web-based news retrieval system. The author has evaluated
their performance based on run-time and software building capabilities. The
evaluated parameters in terms of software building characteristics are: time required
for analysis and design of multi-agent system; time required for code generation;
time required for integration of agent with external code; time required for testing
and debugging the system; number of lines in the code and number of new Java
classes and reused classes to build news agents in the system. Selected parameters
for evaluating run-time characteristics are: response time and number of messages
exchanged among agents. While the results show both to be similar in terms of
software building, JADE outperforms ZEUS in terms of run-time performance.
JADE, ZEUS and Skeleton are compared in terms of number of documents requested
from a web server versus response time while varying the number of web-agents in
[33], which show JADE outperforms all others for complex applications.
14
In applying a multi agent system for a microgrid or power application, complex
systems maybe required with (near) real-time performance. Therefore response time
and the number of messages exchanged become critical. A delay of 0.1 s caused by
20-25 excess messages will be visible on the power distribution. Therefore JADE
becomes the most suitable tool for the application.
2.5. JADE agent building toolkit
JADE (Java Agent Development Framework) is an open source agent development
toolkit developed and distributed by Telecom Italia under the LGPL (Library Gnu
Public License) license [10]. It is a software development platform which provides
middleware functionalities independent of application and simplify agent creation
[1]. This middleware functionality [40] is provided by:
i. run-time environment where the agents exist
ii. vast class library for simplifying agent development
iii. suite of graphical tools that allow for simple administration and monitoring
of agents
JADE is based on the ubiquitous JAVA platform which makes it platform
independent and highly versatile. Details of the JADE architecture are presented in
Section 5.2.1.
2.5.1. JADE architecture
Each JADE run-time environment in operation is called a container, which can
contain several agents. A set of containers are called a platform. Each platform must
have a primary or main container, and all other secondary containers must register
with it as soon as they are created / initialized. These secondary containers are called
normal containers and must be told where to find the main container in their
platform. If another main container is created it will constitute a different platform.
The agents in these containers can communicate with one another, even if they are in
15
the same container, different containers in the same platform or on different
platforms, using the network protocol stack provided by JADE. These notions are
depicted in Figure 2.2 [40].
When the main container is started, it also includes the following two special agents
(these are automatically started):
AMS (Agent Management System) Agent: this agent provides a unique name (Agent
ID or AID) to each agent in the platform (naming service) and represents the
authority in the platform to create/kill agents on remote containers.
DF (Directory Facilitator): this agent provides a Yellow Pages service, using which
an agent can find other agents with capabilities / information it requires in order to
achieve its goals.
Figure 2.2 JADE architecture
In Figure 2.2, A1 to A5 denote agents in two platforms 1 and 2. Agents A2 and A3
are in the same container, Agents A1 and A4 are in different containers, while all of
16
them are in the same platform. Agent A5 is in the main container of a different
platform. Each main container hosts its own AMS and DF.
Agents may need to carry out parallel negotiations and each negotiation will need to
proceed at its own pace. Normally for a software entity/program this can be done by
assigning a thread. Modern OS designs limit the number of concurrent threads.
Therefore, in order for efficient parallel operation of agents, JADE provides a
concept called behaviours [41].
Behaviour represents a task that an agent can carry out and is implemented as an
object of a class that extends jade.core.behaviours.Behaviour. A behaviour is
essentially an event handler [42], a method which defines how an agent will react to
a given event. An event can be defined as a change of state in the environment. In
JADE, behaviours are classes and any code written to handle a given event will be
placed in a method called action. As behaviours are methods, they are processed one
after the other by an agent’s thread. Normally, this requires complex programming to
allow threads to pause in the middle of execution to listen for a response and
continue without losing context (active and passive phases). JADE simplifies this
process by allowing the easy creation of different behaviours for all active phases in
an activity, and arranging them to be created and triggered in the correct sequence
[43]. Each behaviour class must implement the following abstract methods:
Action( ) – actual task to be accomplished by the specific behaviour class
Done( ) – returns true when the behaviour has finished and false when the behaviour
has not and re-executes action
Reset( ) – restarts a behaviour from the beginning
An agent can be created by extending the agent class and providing agent specific
capabilities by programming one or more behaviour subclasses [41]. JADE provides
a wide range of ready-made behaviours for common agent tasks such as sending and
receiving ACL messages, and breaking down complex tasks as collections of simpler
tasks. Behaviours can be added to the agent by the addBehaviour( ) method of the
agent class. Behaviours can also be added at any time when an agent starts up [using
the setup( ) method] or from within other behaviours.
17
As FIPA specifications [39] define, in order for agents communications to be
successful, they must share the same language, vocabulary and protocols. JADE
simplifies this by allowing the creation of Agent ontologies. A JADE ontology
defines the vocabulary and semantics for the content of messages exchanged between
agents, and is built up of three main interfaces (components); Concept, AgentAction
and Predicate [43].
2.6. Recent applications of multi agent systems in microgrids
Analysis of recent literature revealed that the majority of the work has focused on
distributed microgrid control, while the other categories included: electricity trading
(market model analysis), optimization and restoration.
2.6.1. Distributed control
The work concentrated on distributed control amounts to more than half of the recent
literature [44–66]. This depicts the recent trend in using multi agent systems for
development of distributed control for microgrids. Among the research, various
architectures and frameworks are presented with simulations showing their
effectiveness in controlling a microgrid.
A basic hierarchical MAS which will act as a basis for further development is
presented in [44] to demonstrate the applicability of MAS as a distributed control
framework. Artificial neural networks and fuzzy systems have been used for
generation planning and load forecasting for operation planning and an adaptive
control based on traditional PI (Proportional-Integral) control that has been used in
MAS-based microgrid control model [57]. A real-time power management and
control system proposed in [52] is capable to optimize microgrid systems based on
multiple objectives, such as power demands, fuel consumption, environmental
emissions, costs and dispatchable loads. In [49] a control architecture is given which
is based on a hierarchically equal agent structure without a central agent able to
resolve real and reactive power mismatch within microgrids. Though there is no
18
central agent, a neighbour-to-neighbour three-step communication algorithm is used
to determine the real and reactive power mismatches.
Autonomous operation in island mode is proposed using a Multi-Agent
Reinforcement Learning Algorithm that utilizes the concept of layered learning in
[53], [56]. The concept of layered learning is used to group various controls and
actions of the agents depending on their effect on the environment and for the agents
to ultimately coordinate in achieving their goals. MAS controller for the MAS
control architecture is given in [47], [50]. An intelligent load controller is described
in [53] based on the same system. Further, the ability of MASs to achieve efficient
use of NCRES and green technologies is also described.
In [65], a three tiered hierarchical coordinated control strategy which aims to utilize
the MAS most efficiently for voltage stability and power balance in the microgrid
has been proposed. A controller for bilateral switching between grid-connected
operation and islanded operation is simulated in [55] for monitoring and control of a
microgrid. Intelligent Distributed Autonomous Power Systems (IDAPS) of Virginia
Tech [63] illustrates the capability of MAS’s to be considered as a software
alternative to traditional hardware-based zonal protection that can be used for
effective islanding. Their system demonstrates the MAS’s ability to disconnect and
stabilize the microgrid while being able to allow for redefinition of zonal boundaries
on the fly [63].
A control algorithm comprising of an intelligent connection agent and grid
synchronization system is used in [59] to ensure the appropriate microgrid
disconnection from the main grid. This is used to improve the performance of
microgrid and its interaction with the main network, or another microgrid, under grid
voltage transients.
MAS based DG controllers have been presented in [46], [51], [54] and [61]. A multi-
agent based DG microgrid control framework is presented in [46] for a DC
distributed energy system that can be used in a microgrid as a modular power
generation unit. Two-layered control architecture is presented in [51] to achieve local
19
autonomy and global optimization respectively, operating in both grid-connected
mode and islanded mode. A multi-agent models used in [54], [61] take each element
in the microgrid as a separate autonomous intelligent agent and are simulated using
the Real Time Digital Simulator (RTDS) and the ‘PowerWorld’ Simulator
respectively.
A smart grid (SG) should ideally be built up of microgrids. Therefore a multi-
microgrid system is essentially a SG system. Multi-microgrid systems inherit self-
healing, intentional islanding, and the anticipation of the entire distribution network
from SGs and the ability for dynamic behaviour from microgrids. MAS based control
systems have been proposed for multi-microgrids in [60], [64].
The incorporation of Service Oriented Architecture (SOA) approaches such as web
services into MASs are proposed in [58], [66]. The architectures presented are able to
dynamically adapt to changes, work together to solve complicated problems and be
flexible to accommodate for new behaviours with greater agility.
A hybrid MAS is presented in [45] where the controller is able to intelligently choose
the operation model, self-control the optimal operation of microgrid, monitor real-
time data and provide autonomous local protection.
The several MAS control architectures found in the literature contained a similar
basis or basic arrangement. A summary of these control architectures is discussed in
Section 2.4.5.
2.6.2. Electricity trading
MASs have been applied for electricity trading or market model analysis in [67–72].
A power market model is introduced in [67] for the effective operation of the
microgrid. A MAS electricity trading algorithm is proposed in [68] to maximize the
revenue from the microgrid. A case study is used in [69] on price determination
based on demand and supply side bidding strategies to propose a pricing mechanism
for Micro Grid energy in the competitive electricity market. The same mechanism is
20
developed in [70] by using a microgrid central controller to participate in the bidding
process to settle the market-clearing price (MCP). The need to include economic and
political measures, rather than only technological parameters in the future electricity
architecture is elaborated in [71]. This is done using a MAS which is able to
incorporate the mechanisms of a prevailing electricity market for high integration of
NCRES into microgrids. A retailing spot market of electric energy proposed in [72]
is able to interoperate with other stakeholders in the utility grid using a cooperating
MAS.
2.6.3. Optimization
MAS based controllers have been used in [48], [73–76] for optimizing microgrid
operations. As loads and sources within a microgrid can be diverse and distributed,
real-time reaction and DG source management is critical in preventing local power
outages. It is also essential that this is done most efficiently and cost effectively as
possible for the microgrid to be economically viable. The systems presented in [48],
[76] consider the characteristics of the source or load types and self-regulates with
other agents in order to globally optimize in terms of cost and efficiency. The
optimization MAS in [73] is able to determine the optimal operation of a solar-
powered microgrid considering the load demand, environmental requirements and
PV panel and battery capacities. A competitive pricing mechanism is also presented,
using auction theory and two bidding techniques (i.e. single bidding and
discriminatory bidding) in order to serve the consumers at a reduced price and to
provide better revenues. In [74], power production is maximized with respect to
production cost and DG unit constraints. Demand Side Management (DSM) is also
utilized via a load control agent. The MAS is able to monitor energy resources and
schedule generation (dispatch control) for optimized microgrid operation. An
artificial immune system based algorithm is used by the MAS in [75] to optimize the
production of the local DGs in order to optimize the microgrid operation.
21
2.6.4. Power restoration
MASs have been used for power restoration of microgrids in [77–80]. The load
restoration algorithm in [79] consists of agents that make synchronized load
restoration decisions according to information learned from their direct neighbours.
Though only the direct neighbours are contacted, global information is discovered
based on the Average-Consensus theorem [81], [82]. Thereafter, the load restoration
problem is modelled and solved using algorithms for the 0-1 Knapsack problem.
Power restoration in the case of a large-scale blackout in a microgrid with DGs is
discussed in [77], [80]. The models used the available capacity of DGs to reduce the
blackout area. A MAS using the Agent-Environment-Rules (AER) ontology and the
Constraint Satisfaction Problem (CSP) based model is used in [77]. An asynchronous
backtracking algorithm is used to solve the AER model based on CSP. In [80], a
multi-agent immune algorithm is used for rapid restoration of power. A method
called a ‘random tree’ method is used to code antibodies into the immune algorithm
to prevent unfeasible solutions. High frequency mutation is carried out for the
antigens to be dynamically changed in order to rapidly converge to the solution. A
hierarchical control strategy for power restoration is given in [78] targeting swift
power restoration to the most critical loads.
2.7. Control architectures
Intelligent agents can be assigned to each entity in a microgrid; i.e. circuit breaker,
generation unit, loads, users etc. This assignment will determine the MAS
architecture. Several different architectures for microgrid applications have been
proposed up to now. Almost all available architectures can be termed single layered
architectures. Especially, as an example, single layered architectures have been
proposed for microgrid applications such as resolving real and reactive power
mismatch [49] and load restoration [79].
Several multiple level control architectures have been presented in the literature [51],
[65]. However, in these multi layered topologies, the layers address different strata of
the distribution grid and not of the control architecture.
22
A summarization of the basic MAS structure used in distributed control approaches
in the literature is given in Figure 2.3. Three main agents shown are common in all
related work. A DG agent handles the addition, operation and control of all local DG
units. A user agent acts as or connects to a user interface where utility/consumer
users interact with the system. Last, but not least, a control agent will oversee all
these and any other related control tasks, while mainly connecting to/operating
circuit breakers. Two main types of control agents are seen; overall MAS controllers
[47], [50] and load controllers [53].
Figure 2.3 Basic multi agent system structure
This basic architecture can be implemented over a conceptual microgrid consisting of
several different DG units and critical and non-critical local loads as shown in Figure
2.4. Database agent facilitates message parsing (exchange) and storage, acting as the
access point for data for all the agents and users. Here the control agent is tasked
with islanding as well as load management.
Some drawbacks of the single layered architecture can be listed as:
• Certain agents get overloaded with objectives
• Such agents become critical, and their failure can be catastrophic
• Lower flexibility in terms of expanding the microgrid and/or controller
24
3. CONCEPTUAL DESIGN OF DUAL-LAYERED MAS
This section presents the conceptual design of multi agent architecture in detail.
Step 2: Multi agent system architecture conceptual design
3.1. Dual layered architecture
The single layered multi agent systems have the drawback of agents needing cater
multiple objectives. This drawback can be overcome by properly delegating the
multiple objectives to different agents. The proposed multi agent architecture
achieves this task delegation by creating multi-layered multi agent system
architecture. This novel architecture is presented in Figure 4.1.
Figure 3.1 Proposed dual layered MAS architecture
The control hierarchy is split in to two, creating dual-layered control architecture.
The primary layer (or the strategic layer) comprises the Control agent who makes the
run-time decisions. The secondary (tactical) layer contains the User Agent, DG
Strategic (Primary) Level
Tactical (Secondary) Level
Utility (Background) Operations
� Makes run-time decisions
� Execution of run-time decisions
� I/O operations
� Stores, and shares data
� Data access point for all
agents
Control Agent
User Agent
DG Agent
LV Agent
Load Agent
DB Agent
25
Agent, LV Agent and Load Agent. This layer carries out the execution of the run-
time decisions of the strategic level, which mainly comprises input/output operations.
Both these layers are ultimately supported by a service (utility) provided by a DB
(Database) agent, running in the background. This utility agent stores system
information and data and messages shared between the agents and acts as a data
access point for all agents.
The agent assignment of the novel dual-layered architecture is given in Figure 3.2.
This introduces the new secondary control layer in comparison to the single layered
architecture given in Figure 2.3. The agents depicted in the figure are briefly
introduced in Section 3.2.
Figure 3.2 Interaction between agents in the dual layered multi agent architecture
The process of developing this dual-layered multi agent system and implementing it
on the simulation test-bed is given in Section 4. The different case studies carried out
and their respective results are given in Section 5.
26
3.2. Agents used in the dual-layered MAS
The proposed dual-layered MAS shown in Figure 3.2 comprise the control agent, LV
agent, Load agent, DG agent, User agent and DB agent:
Control agent: This agent monitors the main grid for faults and/or outages and
controls the secondary layer in the MAS. It oversees the operation of the secondary
layer which is tasked with handling loads and the low voltage (LV) connection. It
also informs the agents in the MAS whether the system is islanding capable or not.
Ultimately, the control agent will be the centre of the primary layer holding influence
over the DG agent and controlling the LV (Low Voltage) agent and Load agents.
LV agent: This agent controls the islanding operation by opening the circuit breaker
at the PCC. It stores the islanded or grid-connected status of the PCC. The LV agent
can also be given metering capabilities if a ‘net-metering’ scheme is used for the
microgrid.
Load agent: Each individual load has an individual load agent. It stores information
regarding each load and control the connect/disconnect operation. Information such
as load identification number, load priority and current demand are stored for each
load. The LV agent can also be given metering capabilities if DSM (Demand Side
Management) schemes are to be used within the microgrid.
DG agent: This agent is responsible for storing information regarding the DG unit,
metering and controlling the output and connecting/disconnecting the unit to/from
the microgrid. The information stored regarding the DG includes;
i. Identification number
ii. Connection status (connected/disconnected)
iii. Type of equipment (IC engine, micro-turbine, Solar PV, Fuel cell etc.)
iv. Rated power (in kW)
v. Output power (in kW)
vi. Local energy source (Fuel) availability (given as infinite)
vii. Unit availability (given as always available – not under maintenance)
viii. Energy cost (in Rs./kW)
27
User agent: This agent behaves as the gateway for the user to interact with the
system, to obtain real-time information and set system goals. This agent collects
information from other agents regarding demand and supply and makes it available
to the system users. The user agent can also interface with a GUI (Graphical User
Interface) for easy interaction.
Database Agent: stores system information and data and messages shared between
the agents. The priority list used for load management is also hosted by the database
agent. The database agent acts as the access point for data for all the agents and
users.
These agents operate collaboratively to achieve the overall goals of the system (i.e.
island the microgrid during a fault, protect supply to critical loads and provide
dynamic load management.)
28
4. IMPLEMENTATION OF DUAL-LAYERED MAS
Following section describes the process of implementing the dual-layered
architecture introduced in Section 3.1. The methods and process of developing and
implementing the dual-layered multi agent system using JADE is explained
including features of multi-agent systems and the JADE toolkit. This section also
describes the process of establishing TCP/IP communication for running the multi
agent system on the simulated test-bed.
Step 3: Developing the dual-layered multi agent system
4.1. Dual-layered Multi agent system implementation in JADE
The multi-agent system implementation using JADE can be broken into the
following main steps:
i. Agent specification
ii. Application analysis
iii. Application design
iv. Implementation
4.1.1. Agent specification
Here, the specifications, requirements and tasks for the agents in multi agent system
are defined. The agents to be used in the multi agent systems were introduced in
Section 3.2.
29
4.1.2. Application analysis
The operation of the multi agent system is defined in this step. The target is to
develop a multi agent system that achieves the objectives put forward in Section 1.3.
The MAS is expected to provide the following capabilities to the microgrid:
i. Dynamic interaction with the microgrid (Rapid islanding in case of an
upstream fault)
ii. Sharing limited capacity of local DG unit/s between multiple loads
iii. Load management and prioritization
In order for the agents to follow the objectives, how they collaborate with one
another must be clearly defined. The agent collaboration process is described below.
Agent collaboration
1 Main-grid / microgrid Stimulus control agent receives information from main
grid and microgrid
2 Respond to microgrid main Control agent responds the microgrid
3 Inform all agents control agent informs all registered subscribers
about the information from microgrid
4 Command loads sends control commands to its corresponding
loads
5 Command DG send control commands to the DG unit
6 Load information receives load information from their
corresponding loads
7 Control DG Power production control agent informs DG agent of how much
power to produce
8 Information on DG output
DG unit informs DG agent about the amount of
power produced
9 Manage loads control agent manages its corresponding load
circuitry based on locally produced power
30
4.1.3. Application design
Using the JADE toolkit to allow for agent to communication with each other and
reason about facts and knowledge in relation to the microgrid domain is carried out
by the following steps [1]:
i. Define an ontology including the schemas for the types of predicate, agent
action and concept that are pertinent to the microgrid domain.
ii. Develop proper Java classes for all types of predicate, agent action and
concept in the ontology.
iii. Register the defined ontology and the selected content language with the
agent.
iv. Create and handle content expression as Java objects that are instances of the
classes developed in step ii and let JADE translate these Java objects to/from
strings or sequences of bytes that fit the content slot of ACL Messages.
Details of the ontology creation and concept identification are discussed as the first
step in application design.
31
Ontology creation
The detailed structure of the ontology for the dual-layered MAS is given in Figure
4.1. The ontology, as an example, has a concept named LV (LV Agent), with a
predicate called Islanded (addressing whether grid connected or not) and an agent
action called Disconnect (to open the circuit breaker at PCC).
Figure 4.1 Dual-layered MAS ontology
Concepts can either be a role of an entity or a common property. Here the concepts
represent the agents that make up the multi agent system. A concept can include
subconcepts as shown in Figure 4.1 (i.e. the concept, Load, includes the subconcepts,
Load ID, Demand, Priority, and Connected).
Predicates house the status of different concepts that can either be true or false. Four
predicates are defined in the ontology; Islanded, Connected, SupplyGTDemand and
32
CapacityGTDemand. Islanded and Connected predicates are used by LV agent and
Load agents respectively to define the state of their circuit breakers as open or
closed. SupplyGTDemand verifies whether supply greater than or equal (>=) demand
in the case of controlling DG output during load management in islanded mode.
CapacityGTDemand is used for load shedding for load management to verify if the
available local capacity is greater than or equal to the total local demand.
Agent actions are special concepts that indicate actions that can be performed by
particular agents. For example, the agent actions, connect and disconnect are used by
LV and Load agents to close and open their circuit breakers.
Software based development of the ontology is specific to the toolkit and detailed
information regarding this process can be found in the online tutorial [43]. The
process consists of the following steps.
i. Define the vocabulary of the agents communication space
ii. Define the java class that specifies the structure and semantic of the object
MakeOperation ( )
iii. Define the schema of the object
iv. Register the ontology and the language that are used for assembling and
parsing (or coding and decoding) the content of messages with the agent's
content manager
33
Concept identification
The next step in the application design consists of modelling the knowledge that will
be used by the agents. This knowledge is prescribed as the concepts used in the
ontology, their attributes and initial values. The multi agent system carries physical
as well as several abstract concepts. Being in islanded mode is an abstract concept,
and power demand/available power is a physical concept. A list of concepts defined
is given in Table 4.1.
Table 4.1 Microgrid domain knowledge, attributes and initial values
Concept Attributes Initial Value
islanded islanded: Boolean
pcc_state: Boolean
islanded: false
pcc_state: true
DG_info dg_id: String
connection_state : Boolean
type : String
rated_power : float
local_fuel : Integer
unit_availability : Integer
energy_cost : float
dg_id: 01
connection_state : true
type : IC
rated_power : 15
local_fuel : 100
Unit_availability : 100
energy_cost : 0
Load_x _info
(x = 1 or 2)
load_id: String
load_priority : float
power_demand: float
connected : Boolean
load_id: 1 / 2
load_priority : 0.7 / 0.4
power_demand: 7.5 / 7.5
connected : true / true
DG_Ctrl output_power : float output_power : 7.5
Ctrl_DG power_reqd: float power_reqd:
Ctrl_Load_x shed_loadx : Boolean shed_loadx : false
CB_A (Circuit Breaker A) cbA_state : Boolean cbA_state : true
CB_B cbB_state : Boolean cbB_state : true
CB_C cbC_state : Boolean cbC_state : true
CB_D cbD_state : Boolean cbD_state : true
The technical/programing aspects of next steps (steps ii – iv) are not discussed here
and they can be found in detail with examples in pages 82-90 in [1].
34
4.1.4. MAS algorithm implementation
The multi agent system implementation is discussed in this section. The multi agent
system allows the microgrid to operate in grid connected mode as well as islanded
mode. The multi agent system is implemented by developing the control algorithm
depicted below in Figure 4.2 .
Figure 4.2 Control algorithm for multi agent system operation
Assumptions: It is assumed that unlimited power is available from the grid and
local embedded generator has unlimited fuel to withstand an outage of any duration.
The embedded generator is assumed to be always online supplying part of the local
demand, and capable of instantly changing the output depending on changes in local
critical demand.
35
The control agent measures the main grid voltage and frequency, and detects any
fault or outage based on the measurements. If the measurements exceed the standard
thresholds in ±10% for voltage and ±0.5 Hz for frequency, the control agent switches
the microgrid to islanded mode operation. When the decision to switch to island
mode is taken, all the agents are notified and they cooperate and coordinate with the
control agent to achieve the objectives set forth. Based on the prescribed
MAS_Ontology, the agents can easily start their interactions and accomplish their
goals through the exchange of ACL messages. Three main objectives the multi agent
system has to meet (which are defined in Section 1.3) can be simplified as;
i. dynamic interaction with the microgrid (Rapid islanding in case of an
upstream fault)
ii. sharing limited capacity of local DG unit/s between multiple loads
iii. load management and securing supply based on load priority
Operation of each of the objectives is simulated and the success of the multi agent
system is verified in Section 5. The control algorithm is explained in detailed in the
respective simulation section.
36
Step 4: Integration of the multi agent system and the microgrid simulation
4.2. Running multi agent system application
The multi agent system attempts to control physical entities or a simulation of the
same. This puts the multi agent system and the simulation into two different
domains. In order for the multi agent system to work on the simulated environment
establishing communication between the two domains is required.
The multi agent system runs on a JAVA platform while the simulation is run on a
simulating environment (i.e. MATLAB/SIMULINK). Therefore, in order to establish
communication between two domains, for sensing and control TCP/IP is used. A
third party TCP/IP server [83] is utilized as an interface to MATLAB and it connects
to another middle server which allows multiple simultaneous TCP/IP connections.
Each agent requires a separate connection to the test-bed. The interface allows only a
single connection at a time; therefore a separate middle server is required. This
process is depicted in Figure 4.3.
Figure 4.3 Establishing communication between simulation environment and MAS
The middle server allows various agents in the multi agent system to establish
multiple simultaneous TCP connections and multiplexes all of them through the
single TCP connection to the TCP server. Both servers can be implemented on the
same PC running the simulation or on a separate PC on a connected network.
37
5. SIMULATIONS AND RESULTS
Step 5: Result validation using simulation studies
Three case studies are developed to verify the capability of the proposed MAS to
provide control and protection for an inverter based microgrid. Within conventional
power systems, frequency control is handled by rotating inertial masses of large
generators. This causes a problem within smaller microgrids. Therefore, an inverter
based system is selected, where the frequency control is handled by the inverter
interface. Details of the simulation test-bed used in the case studies are presented in
Section 5.1.
Case study 1: Intentional islanding during an upstream fault
In this case study, an upstream fault is introduced on the main grid system at 0.05 s
into the simulation. Upon the detection of the fault, the MAS switches from grid
connected mode to islanded mode of operation. The transition is carried out within
0.02 s of detecting the fault. This verifies the capability of the MAS in rapidly
initiating a seamless transition. This is further discussed in Section 5.2.
Case study 2: Protecting critical loads during intentional islanding
During an outage or fault on the main grid, the microgrid has to cater local demand
based solely on the local sources. In order to meet the local demand and maintain the
stability of the system at the same time, some loads have to be shed. This is done by,
shedding lower priority non-critical loads and protecting the higher priority critical
loads. This is completed within 0.02 s of detecting the fault and initiating islanding
transition. This verifies the capability of the MAS in rapidly protecting critical loads
during intentional islanding. This is further discussed in Section 5.3.
Case study 3: Managing critical loads during islanded operation
In the islanded mode, as the locally available DG capacity is limited, some of the
local loads have to be shed in order to maintain/protect the supply to higher priority
(critical) loads. During such islanded operation, if power needs to be re-routed to a
lower priority load by raising its priority, the MAS system allows for on-the-fly
38
priority revisions. This allows power to be re-connected to a previously shed load.
This is also completed within 0.02 s of detecting priority revision. This verifies the
capability of the MAS in rapidly managing load priorities during islanded operation.
This is further discussed in Section 5.4.
5.1. Description of simulation circuit
The simulations are carried out on an inverter-based microgrid test-bed developed
using MATLAB/SIMULINK. The test-bed is built mainly using the SimPower
Systems block set available in SIMULINK.
The test-bed based on the simplified block diagram, shown in Figure 5.1, is used for
the simulation case studies. The test-bed comprises an embedded generator, acting as
a DG unit, supplying part of the local demand, and some critical and non-critical
loads. It is assumed that the DG unit can operate at full capacity without fuel
limitations during any outage. It is also assumed that the DG unit can instantly
increase output using battery storage.
As an inverter based microgrid is considered, a grid interface unit comprising an
inverter, low pass filter, PWM (Pulse Width Modulation) and circuit breaker is used
in the case of a DC source. The microgrid is connected to a main utility grid (11 kV)
across a transformer (11kV/400V) and a main circuit breaker.
Figure 5.1 Simulated microgrid test-bed
39
5.2. Intentional islanding during a fault
The first case study is carried out to verify the effectiveness of the MAS in rapidly
islanding the microgrid upon the detection of an upstream outage on the main grid.
The ability of MAS to sense the upstream outage by detecting the voltage droop and
initiate agent actions to seamlessly transition to islanded mode from grid-connected
mode is addressed here. The test-bed used for the simulation is shown in Figure 5.2.
Figure 5.2 Test-bed set-up for case study 1
The test-bed comprises a 15kW DG unit producing 480V, connected to a 400V,
50Hz microgrid, a transformer (480V/400V) connecting the DG to the microgrid,
two 7.5kW local loads, with a connection to a 11kV main utility grid fed through
another transformer (11kV/400V), all of which are connected across circuit breakers.
Total local demand is 15 kW, 50% of which (7.5 kW) is supplied by the DG unit,
while the rest is supplied by the main grid. It is assumed that the DG unit can
instantly increase output using battery storage. An upstream fault is introduced to the
system at t = 0.05 s into the simulation. At the beginning of the simulation breakers
A, B, C and D are all closed.
40
5.2.1. Messages exchanged among agents and physical entities
The control agent detects the fault in the upstream, takes the strategic decision to
switch to island mode and informs the other agents to switch to islanded mode. The
control flow chart used in the process is given in Figure 5.3. This is a reduced
version of the algorithm given in Section 4.1.4. Upon receiving this ‘island’
command, the LV agent opens the main circuit breaker at PCC (point A) to isolate
the microgrid from the utility.
Figure 5.3 Control flow chart for intentional islanding
41
The control agent then queries local demand and available capacity data from the
Load and DG agents respectively. As the current local DG supply is enough to cater
the local demand the DG agent is asked to run at the present demand (increase output
to 15kW from 7.5 kW).
The messages exchanged between the agents are shown in Figure 5.4.
Figure 5.4 Key messages exchanged between agents during islanding
42
5.2.2. Updates to the ontology
The concepts known to the multi agent system is updated with every step. The agents
are able to identify the changes in the environment and react accordingly based on
these changes to the ontology. The updates to the ontology are:
Table 5.1 Updated concepts, initial and updated values for case study 1
Concept Initial Attribute/s Updated Value
islanded islanded: true
pcc_state: true
islanded: true
pcc_state: false
Load_1_info
load_id: 1
load_priority : 0.7
power_demand: 7.5
connected : true
load_id: 1
load_priority : 0.7
power_demand: 7.5
connected : true
Load_2_info
load_id: 2
load_priority : 0.4
power_demand: 7.5
connected : true
load_id: 2
load_priority : 0.4
power_demand: 7.5
connected : true
DG_Ctrl output_power : 15 output_power : 15
Ctrl_DG power_reqd: 15 power_reqd: 15
Ctrl_Load_1 shed_load1 : false shed_load1 : false
Ctrl_Load_2 shed_load2 : false shed_load2 : false
CB_A (Circuit Breaker A) cbA_state : true cbA_state : false
43
5.2.3. Results and discussion
The test-bed shown in Figure 5.2 is simulated for 0.1 s. The simulation results
presented in Figure 5.5 depicts the successful islanding process.
During grid connected mode:
While the microgrid is in grid-connected mode, the total demand is 15 kW. During
the grid-connected mode the DG unit only provides 7.5 kW output, 50% of the total
demand. Another 10 kW is required from the main grid to supply the microgrid. The
main grid experiences a fault at t = 0.5 s.
Figure 5.5 Line to line voltages during intentional islanding
During transition:
When the upstream outage is detected at t = 0.05 s the control agent informs the LV
agent and the Load agents to switch to island mode operation. Upon receiving the
islanding order the LV agent trips the main circuit breaker A, at the PCC, isolating
(a) Line to line voltage across the non-critical load at ‘A’, (b)
Line to line voltage at breaker ‘B’
(a) Main grid voltage supply
(b) Load voltage
44
the microgrid from the utility (Figure 5.5(a)). The Control agent then queries the DG
agent and the load agents regarding their available capacities the DG can provide to
the microgrid and the power requirements of the connected loads.
As the available maximum capacity of 15 kW is able to meet the total demand of 15
kW, the control agent commands the DG agent to increase DG output to match the
demand. Soon as the microgrid is put to island mode the supply to the loads are
maintained (see Figure 5.5(b)).
Islanded mode:
At t=0.05s the microgrid is separated from the main grid and the local loads are
secured. After the microgrid switches to island mode the total local demand is met by
the DG unit by supplying 15 kW.
All agent operations are carried out rapidly, from detecting fault, opening the main
breaker, connecting the local source and shedding loads, to stabilize the microgrid
within 0.02 s. Therefore the system is able to disconnect from the main utility grid
and maintain the supply to the critical loads without suffering a brownout and/or
blackout.
45
5.3. Protecting critical loads during intentional islanding
The second case study addresses the capability of the MAS to protect/secure power
to critical loads during intentional islanding. This should happen immediately
following the transition to islanded mode. If power supply from available local DG
unit is limited and insufficient to supply the total local demand, load shedding has to
be carried out rapidly in order to secure supply to the most critical loads. The test-
bed used for the simulation is shown in Figure 5.6.
Figure 5.6 Test-bed set-up for case study 2
The test-bed is same as the one used in case study 1, with only the following
changes. Two local loads are 15 kW each with assigned priorities of 0.7 and 0.4
respectively. The total local demand is 30 kW; initially the DG unit supplies 10 kW
while the other 20 kW is provided from the main grid. Similar to case study 1, an
upstream fault is introduced to the system at t = 0.05 s in to the simulation. At the
beginning of the simulation breakers A, B, C and D are all closed.
46
5.3.1. Messages exchanged among agents and physical entities
The control process and messages exchanged between agents are based on the details
given in Section 5. Further details regarding the control process can be found in
Figure 5.3. Messages exchanged between the agents are as shown in Figure 5.4. As
the local DG unit is unable to meet the total demand, load shedding is initialized
based on the assigned priorities. This makes load connected to point C with the
higher priority, the critical load. Therefore, a load_shed command is issued to the
load agent for the lower priority, non-critical load at point D.
5.3.1. Updates to the ontology
The concepts known to the multi agent system is updated with every step. The agents
are able to identify the changes in the environment and react accordingly based on
these changes to the ontology. The updates to the ontology are:
Table 5.2 Updated concepts, initial and updated values for case study 2
Concept Initial Value Updated Value
islanded islanded: false
pcc_state: true
islanded: true
pcc_state: false
Load_1_info
load_id: 1
load_priority : 0.7
power_demand: 15
connected : true
load_id: 1
load_priority : 0.7
power_demand: 15
connected : true
Load_2_info
load_id: 2
load_priority : 0.4
power_demand: 15
connected : true
load_id: 2
load_priority : 0.4
power_demand: 15
connected : false
DG_Ctrl output_power : 10 output_power : 15
Ctrl_DG power_reqd: 10 power_reqd: 15
Ctrl_Load_1 shed_load1 : false shed_load1 : false
Ctrl_Load_2 shed_load2 : false shed_load2 : true
CB_A (Circuit Breaker A) cbA_state : true cbA_state : false
CB_D cbD_state : true cbD_state : false
47
5.3.2. Results and discussion
The test-bed shown in Figure 5.6 is simulated for 0.12 s. The simulation results
shown in Figure 5.7 depict the successful islanding and subsequent securing of
critical loads.
Grid connected mode:
While the microgrid is in grid-connected mode, the total demand is 30 kW, with 15
kW critical loads and 15 kW non-critical loads. During the grid-connected mode the
DG unit provides 10 kW output and the other 20 kW is provided by the main grid.
The main grid experiences a fault at t = 0.5 s.
Transition period:
When the upstream outage is detected at t = 0.05 s the control agent informs the LV
agent and the Load agents to switch to island mode operation. Upon receiving the
islanding order the LV agent trips the main circuit breaker A, at the PCC, isolating
the microgrid from the utility (Figure 5.7(a)). The control agent then queries the DG
agent and the load agents regarding their available capacities that the DG can provide
to the microgrid and the power requirements of the connected loads.
As the total load of 30 kW exceeds the available maximum capacity of 15 kW, the
control agent commands the load agents to shed the 15 kW non-critical loads to
match the DG capacity and the DG unit to increase output to 15 kW. Soon as the
microgrid is put to island mode the supply to the critical loads is maintained (see
Figure 5.7(b)). The load agent at the non-critical loads sheds them from the system
by opening breaker D (see Figure 5.7(c)).
Islanded mode:
At t=0.05s the microgrid is separated from the main grid and the load agents balance
the local demand. After the microgrid switches to island mode the total local demand
is met by the embedded generator supplying 15 kW.
48
Figure 5.7 Line to line voltages during securing critical loads
All agent operations are carried out rapidly; from detecting fault, opening the main
breaker, connecting the local source and shedding loads, to stabilize the microgrid
within 0.02 s. Therefore the system is able to disconnect from the main utility grid
and maintain the supply to the critical loads without suffering a brownout and/or
blackout.
(a) Line to line voltage across the non-critical load at ‘A’, (b) Line
to line voltage at breaker ‘C’, (c) Line to line voltage at breaker ‘D’
(a) Main grid voltage supply
(b) Critical load voltage
(c) Non-critical load voltage
49
5.4. Managing critical loads during islanded operation
The third case study addresses the capability of the MAS to provide load
management capabilities during islanded operation. As the available local capacity is
limited and insufficient to cater total local demand during islanded mode, non-critical
(lower priority) loads have to be dynamically shed in order to protect the stability of
the microgrid. This simulation shows the ability of the MAS to allow for dynamic
update of load priority levels. The test-bed used for the simulation is shown in Figure
5.8.
Figure 5.8 Test-bed set-up for case study 3
The same test-bed used in Section 5.3 is used to simulate case study 3. The local
loads are given two priority levels as shown in Figure 5.8. Local load 01 is given a
priority level of 0.7, and load 02 is given a priority level is 0.4. This initial setting
designates load 01 as a higher priority load while load 02 is considered a lower
priority, by their respective load agents. At the beginning of the simulation breakers
A, B, C and D are all closed. An upstream fault is introduced to the system at t = 0.05
s into the simulation, and the microgrid switches to islanded operation. During
islanded operation the load 02 priority is raised to 0.9 at t = 0.14s.
50
5.4.1. Messages exchanged among agents and physical entities
The objective of the test setup is to demonstrate the ability of the proposed MAS to
island the microgrid after an upstream fault is detected, and maintain supply to the
most critical loads with dynamic priorities. The control flow chart used in the process
is given in Figure 5.9.
Figure 5.9 Control flow chart for load management during islanded operation
51
5.4.1. Updates to the ontology
The concepts known to the multi agent system is updated with every step. The agents
are able to identify the changes in the environment and react accordingly based on
these changes to the ontology. The updates to the ontology are:
Table 5.3 Updated concepts, initial and updated values for case study 3
Concept Initial Attribute/s Updated Value
islanded islanded: false
pcc_state: true
islanded: true
pcc_state: false
Load_1_info
load_id: 1
load_priority : 0.7
power_demand: 15
connected : true
load_id: 1
load_priority : 0.7
power_demand: 15
connected : false
Load_2_info
load_id: 2
load_priority : 0.4
power_demand: 15
connected : true
load_id: 2
load_priority : 0.9
power_demand: 15
connected : true
DG_Ctrl output_power : 15 output_power : 15
Ctrl_DG power_reqd: 15 power_reqd: 15
Ctrl_Load_1 shed_load1 : false shed_load1 : true
Ctrl_Load_2 shed_load2 : false shed_load2 : false
CB_A (Circuit Breaker A) cbA_state : true cbA_state : false
CB_C cbC_state : true cbC_state : false
CB_D cbD_state : true cbD_state : true
52
5.4.2. Results and discussion
The test-bed shown in Figure 5.8 is simulated for 0.2 s. the simulation results shown
in Figure 5.10 depict the successful islanding and subsequent securing of critical
loads.
Initially the microgrid is operating in the grid-connected mode, with the embedded
generator is supplying only part of the local loads while the rest is supplied by the
utility grid. The demands supplied initially by the DG and the grid are depicted in
Figure 5.8.
Figure 5.10 Line to line voltages during islanded operation
(a) Main grid voltage at breaker ‘A’, (b) load 01 measured
at ‘C’: switches from high priority to low priority, (c) load
02 measured at ‘D’: switches from low priority to high
priority.
53
Grid connected mode:
While the microgrid is in grid-connected mode, the total demand is 30 kW,
comprising two 15 kW local loads. During the grid-connected mode the embedded
generator only provides 10 kW, while the other 20 kW is supplied by the main grid
to the microgrid.
Transition period:
The proposed dual layered MAS is able to successfully island the microgrid during
the upstream outage within 0.02 s of detecting the fault in the main utility grid. As
the local generation capacity is unable to meet the total local demand, the MAS
initiates load shedding upon initially set priority levels of the loads as in case study 2
(see Section 5.3). This enables the MAS to maintain supply to the most critical load,
load 01, by shedding the least critical load, load 02.
Islanded mode:
At t = 0.05 s the microgrid is separated from the main grid and the load agents
balance the local demand as in case study 2 (see Section 5.3). After the microgrid
switches to island mode the total local demand is met by the embedded generator
supplying 15 kW.
During the island operation, the user agent can revise the initial priority assignment.
This can be pre-initiated or a user can change the priorities during the islanded mode.
At t=0.14, the user agent revises the priority value of load 02 from p=0.4 to p=0.9
and communicates the revise_request to the load agent at load 02. This update is
forwarded to other agents via the directory agent, and the control agent reinitiates
load management procedures. As the DG unit is still unable to meet the total demand
of 30 kW, and has to shed non-critical (lower priority) loads to maintain power to the
new highest priority load, load 02.
Therefore, the control agent commands the load agents to shed the load 01 of 25 kW
to match the DG capacity. Thus, the supply to the new most critical load, load 02 is
54
provided by re-closing ‘D’ (see Figure 5.10(c)). The load agent at the new lower
priority load, load 01, sheds it from the system by opening breaker ‘C’ (see Figure
5.10(b)). This process is shown in Table 5.4.
Table 5.4 Priority revision during islanded mode
Grid Connected mode Islanded mode
Initial priority Revised priority
Load 01 Priority = 0.7
Connected
Priority = 0.7
Connected
Priority = 0.7
Disconnected
Load 02 Priority = 0.4
Connected
Priority = 0.4
Disconnected
Priority = 0.9
Connected
When the load priorities are revised by a user via the user agent, the MAS is able to
reconfigure the system, in order to provide power to the new most critical load. The
reconfiguration is also done within 0.02 s of the revision and successfully reconnects
the new critical load. The results show the capability of the MAS to safely island and
maintain the supply to its critical loads, while allowing for the critical loads to be
dynamically revised.
55
6. CONCLUSIONS AND FUTURE DIRECTIONS
6.1. Conclusions
The developed MAS based control architecture for control and protection of an
inverter based microgrid has been successfully verified using a simulated microgrid
test-bed in MATLAB/SIMULINK. The MAS has been developed using the JADE
platform using its available programming techniques and communication facilities.
The control system has been endowed with seamless islanding, protection of critical
loads and load management capabilities during islanded operation.
Existing MAS based controllers for microgrid applications relied on a single layered
architecture which tasked agents with multiple objectives. This drawback was
overcome by developing novel dual layered architecture, where all tasks were
properly delegated to individual agents.
The MAS controller development phase involved application specification, analysis,
design and implementation. This process created the agents that sense the changes in
the environment and take initiative to achieve the overall goal put before them. This
was achieved by creation of five main agents; control agent, user agent, DG agent,
LV agent and load agent. These agents were supported by the DB agent running in
the background. The agents were then connected to a simulated microgrid test-bed in
MATLAB/SIMULINK over a third party TCP/IP server. Information regarding
agent development and server implementation has been discussed. The MAS
controller was simulated on a test-bed to demonstrate its ability to seamlessly island
the microgrid upon the detection of an upstream fault, protect critical loads during
islanding and manage critical and non-critical loads during islanded operation.
This incursion into multi agent based control system development will act as a
stepping stone to develop more intelligent distributed control systems in the future.
The novel concept of multi–layered control architectures will increase the impact
MAS has in microgrid control.
56
6.2. Future work
Multiple DG units and storage elements (i.e. battery storage, water pumping,
hydrogen generation etc.) can be integrated into the microgrid to increase reliability,
reduce emissions and to improve sustainability. As most NCRES tend to be of a
highly fluctuating output, energy storage would smooth-out the variation. With the
integration of multiple/various DG units, the user (utility or consumer) can select the
source which offers the optimal energy solution. These improvements will require
the development of DG agent’s responsibilities.
The following improvements can also be incorporated in future.
i. Agent behaviours can be improved by utilizing fuzzy / neural control logic
ii. The Effect of increasing number of agents on controller stability and service
latency can be studied to evaluate long-term extensibility of MAS
iii. With multiple DG units vying to service any given microgrid, a MAS based
energy bidding system can be developed for energy auctioning from
independent power producers (IPPs)
iv. The requirements of communication network redundancy and aspects of how
to improve data network security and preventing cyber-attacks and intrusions
should also be addressed in future work.
The developed multi agent system is to be implemented on the physical test-bed
shown in Figure 6.1 comprising rotating machines and solar PV panels.
Figure 6.1 Proposed microgrid test-bed
57
REFERENCES
[1] F. L. Bellifemine, G. Caire, and D. Greenwood, Developing Multi-Agent Systems
with JADE (Wiley Series in Agent Technology). John Wiley & Sons, 2007.
[2] L. Martinez-Lopez and F. J. Martinez-Lopez, “Intelligent e-services and multi-
agent systems for B2C e-commerce,” Internet Research, vol. 20, no. 3, Aug.
2010.
[3] M. Wissner, “ICT, growth and productivity in the German energy sector - On the
way to a smart grid?,” Utilities Policy, vol. 19, no. 1, pp. 14–19, 2011.
[4] The NETL Smart Grid Implementation Strategy (SGIS). [Online]. Available:
http://www.netl.doe.gov/smartgrid/. [Accessed: 25-Oct-2010].
[5] C.W. Gellings, The Smart Grid: Enabling Energy Efficiency and Demand
Response. Fairmont Press, 2009.
[6] R. H. Lasseter and P. Paigi, “Microgrid: a conceptual solution,” in Proc. 2004
IEEE 35th Annu. Power Electronics Specialists Conf., PESC 04. 2004, vol. 6, pp.
4285– 4290.
[7] R. Zamora, A. K. Srivastava, and Syukriyadin, “Microgrids for Reliable, Clean,
and Efficient Power Delivery,” in Proc. Annu. Int. Workshop and Expo on
Sumatera Tsunami, AIWEST 2009, Banda Aceh, 2009.
[8] N. Jenkins, Embedded Generation. The Institution of Engineering and
Technology, Michael Faraday House, Six Hills Way, Stevenage SG1 2AY, UK:
IET, 2000.
[9] RSView32 from Rockwell Software. [Online]. Available:
http://www.rockwellautomation.com/rockwellsoftware/performance/view32/.
[Accessed: 17-Jan-2011].
[10] JADE, “Jade - Java Agent DEvelopment Framework.” [Online]. Available:
http://jade.cselt.it/. [Accessed: 01-Nov-2010].
58
[11]Zeus agent development toolkit. [Online]. Available:
http://labs.bt.com/projects/agents/zeus. [Accessed: 01-Nov-2010].
[12] J. Lu, G. Chen, and X. Yu, “Modelling, analysis and control of multi-agent
systems: A brief overview,” in Proc. 2011 IEEE Int. Symp. Circuits and Systems,
ISCAS, 2011, pp. 2103–2106.
[13] Z. Li et al., “Consensus of Multiagent Systems and Synchronization of Complex
Networks: A Unified Viewpoint,” IEEE Trans. Circuits and Syst. I, Reg. Papers,
vol. 57, no. 1, pp. 213–224, Jan, 2010.
[14] G. Acampora, V. Loia, and M. Gaeta, “Exploring e-Learning Knowledge
Through Ontological Memetic Agents,” IEEE Comput. Intell. Mag., vol. 5, no. 2,
pp. 66–77, May 2010.
[15]Z. Meng et al., “Leaderless and Leader-Following Consensus With
Communication and Input Delays Under a Directed Network Topology,” IEEE
Trans. Syst. Man Cybern. B, Cybern., vol. 41, no. 1, pp. 75–88, Feb, 2011.
[16] E. Semsar-Kazerooni and K. Khorasani, “Optimal Consensus Seeking in a
Network of Multiagent Systems: An LMI Approach,” IEEE Trans. Syst. Man
Cybern. B, Cybern., vol. 40, no. 2, pp. 540–547, Apr. 2010.
[17] M. S. R. Mousavi, M. Khaghani, and G. Vossoughi, “Collision avoidance with
obstacles in flocking for multi agent systems,” in Proc. 2010 Int. Conf. Industrial
Electronics, Control & Robotics, IECR, 2010, pp. 1–5.
[18] W. Lepuschitz et al., “Implementation of automation agents for batch process
automation,” in Proc. 2010 IEEE Int. Conf. Industrial Technology, ICIT, 2010,
pp. 524–529.
[19] J. Barbosa and P. Leitao, “Modelling and simulating self-organizing agent-based
manufacturing systems,” in Proc. 2010 36th Annu. Conf. IEEE Industrial
Electronics Society, IECON, pp. 2702–2707.
[20] Q. Dong et al., “Multi-agent based federated control of large-scale systems with
application to ship roll control,” in Proc. 2011 4th Int. Symp. Resilient Control
Systems, ISRCS, 2011, pp. 142–147.
59
[21] S. Tan et al., “Research on continuous rolling process control system based on
multi-agent,” in Proc. 2011 9th World Congr. Intelligent Control and
Automation, WCICA, 2011, pp. 75–78.
[22] R. Claes, T. Holvoet, and D. Weyns, “A Decentralized Approach for
Anticipatory Vehicle Routing Using Delegate Multiagent Systems,” IEEE Trans.
Intell. Transp. Syst., vol. 12, no. 2, pp. 364–373, Jun. 2011.
[23] B. Chen and H. H. Cheng, “A Review of the Applications of Agent Technology
in Traffic and Transportation Systems,” IEEE Trans. Intell. Transp. Syst., vol.
11, no. 2, pp. 485–497, Jun. 2010.
[24] B. P. Gokulan and D. Srinivasan, “Distributed Geometric Fuzzy Multiagent
Urban Traffic Signal Control,” IEEE Trans. Intell. Transp. Syst., vol. 11, no. 3,
pp. 714–727, Sep. 2010.
[25] K. T. Seow and D. Lee, “Performance of Multiagent Taxi Dispatch on
Extended-Runtime Taxi Availability: A Simulation Study,” IEEE Trans. Intell.
Transp. Syst., vol. 11, no. 1, pp. 231–236, Mar. 2010.
[26] Aglets agent development toolkit. [Online]. Available:
http://aglets.sourceforge.net. [Accessed: 01-Nov-2010].
[27] Voyager agent development toolkit. [Online]. Available:
htt://www.recursionsw.com. [Accessed: 01-Nov-2010].
[28] Tracy agent development toolkit. [Online]. Available: http://www.mobile-
agents.org. [Accessed: 27-Jun-2011].
[29] Springs agent development toolkit. [Online]. Available:
http://sid.cps.unizar.es/SPRINGS. [Accessed: 01-Nov-2010].
[30] D. Camacho et al., “Agent architecture for intelligent gathering system,” AI
Communications, vol. 18, no. 1, pp. 15–32, Jan. 2005.
[31] D. Camacho and R. Aler, “Software and Performance measures for evaluating
multi-agent frameworks,” Applied Artificial Intelligence, vol. 19, no. 6, pp. 645–
657, 2005.
60
[32] E. Shakshuki and Y. Jun, Multi-agent Development Toolkits: An Evaluation.
Springer Berlin/Heidelberg, 2004.
[33] R. Trillo, S. Ilarri, and E. Mena, “Comparison and Performance Evaluation of
Mobile Agent Platforms,” in Proc. 3rd Int. Conf. Autonomic and Autonomous
Systems, ICAS07, Athens, Greece, 2007.
[34] D. Camacho et al., “Performance evaluation of Zeus, JADE and SkeletonAgent
Framework,” in Proc. IEEE Int. Conf. Systems, Man and Cybernetics, vol. 4, no.
6, p. 2002.
[35] M. K. Perdikeas et al., “Mobile agent standards and available platforms,”
Computer Networks, vol. 31, no. 19, pp. 1999–2016, Aug. 1999.
[36] M.D. Dikaiakos and G. Samaras, “Performance evaluation of mobile agents:
Issues and approaches,” in Lecture notes in computer science, vol. 2047,
Springer-Verlag, pp. 148–166.
[37] A. R. Silva et al., “Towards a reference model for surveying mobile agent
systems,” Autonomous Agents and Multi-Agent Systems, vol. 4, no. 3, pp. 187–
231, Sep. 2001.
[38] E. Shakshuki, “A methodology for evaluating agent toolkits,” in Proc. IEEE Int.
Conf. on Information Technology: Coding and Computing, ITCC, 2005, pp. 391–
396.
[39] IEEE FIPA, Foundation for Intelligent Physical Agents. [Online]. Available:
http://www.fipa.org/. [Accessed: 14-Jan-2011].
[40] Jade tutorial: Jade programming for beginners, 2009. [Online]. Available:
http://jade.tilab.com/doc/tutorials/JADEProgramming-Tutorial-for-
beginners.pdf.
[41] F. Bellifemine, A. Poggi, and G. Rimassa, “Developing Multi-agent Systems
with JADE,” in Proc. 7th Int. Workshop on Intelligent Agents VII. Agent
Theories Architectures and Languages, London, UK, 2001, pp. 89–103.
[42] Event Handlers and Callback Functions. [Online]. Available:
http://w3future.com/html/stories/callbacks.xml. [Accessed: 29-Jan-2012].
61
[43] J. Vaucher and A. Ncho, “Jade Primer and Tutorial,” Apr-2004. [Online].
Available: http://www.iro.umontreal.ca/~vaucher/Agents/Jade/JadePrimer.html.
[Accessed: 29-Nov-2010].
[44] C.-X. Dou et al., “Multi-Agent Based Control Framework for Microgrids,” in
Proc. 2009 Asia-Pacific Power and Energy Engineering Conf., Wuhan, China,
2009, pp. 1–4.
[45] X. Zhou et al., “Hybrid operation control method for micro-grid based on
MAS,” in Proc. 2010 IEEE Int.Conf. Progress in Informatics and Computing,
Shanghai, China, 2010, pp. 72–75.
[46] Z. Jiang, “Agent-Based Control Framework for Distributed Energy Resources
Microgrids,” in 2006 IEEE/WIC/ACM Int. Conf. Intelligent Agent Technology,
IAT'06, Hong Kong, China, 2006, pp. 646–652.
[47] A. L. Dimeas and N. D. Hatziargyriou, “Operation of a Multiagent System for
Microgrid Control,” IEEE Trans. Power Syst., vol. 20, no. 3, pp. 1447–1455,
Aug. 2005.
[48] M. Cirrincione et al., “Intelligent energy management system,” in Proc. 7th
IEEE Int. Conf. Industrial Informatics, Cardiff, Wales, UK, 2009, pp. 232–237.
[49] N. Cai and J. Mitra, “A decentralized control architecture for a microgrid with
power electronic interfaces,” in Proc. North American Power Symp. 2010,
Arlington, TX, USA, 2010, pp. 1–8.
[50] A. L. Dimeas and N. D. Hatziargyriou, “A MAS Architecture for Microgrids
Control,” in Proc.13th Int. Conf. Intelligent Systems Application to Power
Systems, Arlington, Virginia, USA, 2005, pp. 402–406.
[51] W. Zheng and J. Cai, “A multi-agent system for distributed energy resources
control in microgrid,” in Proc.2010 5th Int. Conf. Critical Infrastructure, CRIS,
Beijing, China, 2010, pp. 1–5.
[52] C. M. Colson and M. H. Nehrir, “A review of challenges to real-time power
management of microgrids,” in Proc. 2009 IEEE Power & Energy Society
General Meeting, Calgary, Canada, 2009, pp. 1–8.
62
[53] A. L. Dimeas and N. D. Hatziargyriou, “Agent based Control for Microgrids,” in
Proc. 2007 IEEE Power Engineering Society General Meeting, Tampa, FL,
USA, 2007, pp. 1–5.
[54] H. N. Aung et al., “Agent-based intelligent control for real-time operation of a
microgrid,” in Proc. 2010 Joint Int. Conf. Power Electronics, Drives and Energy
Systems & 2010 Power India, New Delhi, India, 2010, pp. 1–6.
[55] T. Li et al., “Control system simulation of microgrid based on IP and Multi-
Agent,” in Proc. 2010 Int. Conf. Information, Networking and Automation ,
ICINA, Kunming, China, 2010, pp. V1–235–V1–239.
[56] S. J. Chatzivasiliadis, N. D. Hatziargyriou, and A. L. Dimeas, “Development of
an agent based intelligent control system for microgrids,” in Proc. 2008 IEEE
Power and Energy Society General Meeting - Conversion and Delivery of
Electrical Energy in the 21st Century, Pittsburgh, PA, USA, 2008, pp. 1–6.
[57] T. Funabashi et al., “Field Tests of a Microgrid Control System,” in Proc. 41st
International Universities Power Engineering Conf., Newcastle upon Tyne, UK,
2006, pp. 232–236.
[58] D. A. Cohen, “GridAgentTM
: Intelligent agent applications for integration of
distributed energy resources within distribution systems,” in Proc. 2008 IEEE
Power and Energy Society General Meeting - Conversion and Delivery of
Electrical Energy in the 21st Century, Pittsburgh, PA, USA, 2008, pp. 1–5.
[59] J. Rocabert et al., “Intelligent control agent for transient to an island grid,” in
Proc. 2010 IEEE Int.Symp. Industrial Electronics, Bari, Italy, 2010, pp. 2223–
2228.
[60] G. Zheng and N. Li, “Multi-Agent Based Control System for Multi-Microgrids,”
in Proc. 2010 Int. Conf. Computational Intelligence and Software Engineering,
Wuhan, China, 2010, pp. 1–4.
[61] T. Logenthiran, D. Srinivasan, and D. Wong, “Multi-agent coordination for DER
in MicroGrid,” in Proc. 2008 IEEE Int. Conf. Sustainable Energy Technologies,
Singapore, Singapore, 2008, pp. 77–82.
63
[62] A. L. Dimeas and N. D. Hatziargyriou, “Multi-agent reinforcement learning for
microgrids,” in Proc. IEEE Power and Energy Society General Meeting,
Minneapolis, MN, 2010, pp. 1–8.
[63] M. Pipattanasomporn, H. Feroze, and S. Rahman, “Multi-agent systems in a
distributed smart grid: Design and implementation,” in Proc. 2009 IEEE/PES
Power Systems Conf. Expo., Seattle, WA, USA, 2009, pp. 1–8.
[64] E. J. Ng and R. A. El-Shatshat, “Multi-microgrid control systems (MMCS),” in
Proc. IEEE Power and Energy Society General Meeting, Minneapolis, MN,
2010, pp. 1–6.
[65] Z. Jian et al., “The application of multi agent system in microgrid coordination
control,” in Proc. 2009 Int. Conf. Sustainable Power Generation and Supply,
Nanjing, 2009, pp. 1–6.
[66] H. J. Zhou et al., “The architecture of intelligent distribution network based on
MAS-SOA,” in Proc. IEEE Power and Energy Society General Meeting,
Minneapolis, MN, 2010, pp. 1–6.
[67] H.-M. Kim and T. Kinoshita, “Multiagent system for Microgrid operation based
on power market environment,” in Proc. 31st Int. Telecommunications Energy
Conf., INTELEC 2009, Incheon, South Korea, 2009, pp. 1–5.
[68] T. Funabashi et al., “An autonomous agent for reliable operation of power
market and systems including microgrids,” in Proc. 2008 3rd Int. Conf. Electric
Utility Deregulation and Restructuring and Power Technologies, Nanjing,
China, 2008, pp. 173–177.
[69] A. K. Basu et al., “Key energy management issues of setting market clearing
price (MCP) in micro-grid scenario,” in Proc. 2007 42nd Int.Universities Power
Engineering Conf., Brighton, UK, 2007, pp. 854–860.
[70] A. Sinha et al., “Setting of market clearing price (MCP) in microgrid power
scenario,” in Proc. 2008 IEEE Power and Energy Society General Meeting -
Conversion and Delivery of Electrical Energy in the 21st Century, Pittsburgh,
PA, USA, 2008, pp. 1–8.
64
[71] R. Duan and G. Deconinck, “Multi-agent coordination in market environment
for future electricity infrastructure based on microgrids,” in Proc. 2009 IEEE Int.
Conf. Systems, Man and Cybernetics, San Antonio, TX, USA, 2009, pp. 3959–
3964.
[72] R. Duan and G. Deconinck, “Multi-agent model and interoperability of a market
mechanism of the Smart Grids,” in Proc. 2010 IEEE/IFIP Network Operations
and Management Symp. Workshops, Osaka, Japan, 2010, pp. 312–315.
[73] I. Maity and S. Rao, “Simulation and Pricing Mechanism Analysis of a Solar-
Powered Electrical Microgrid,” IEEE Syst. J., vol. 4, no. 3, pp. 275–284, Sep.
2010.
[74] T. Logenthiran et al., “Multi-Agent System (MAS) for short-term generation
scheduling of a microgrid,” in Proc. 2010 IEEE Int. Conf. Sustainable Energy
Technologies, ICSET, Kandy, Sri Lanka, 2010, pp. 1–6.
[75] R. Bhuvaneswari et al., “Intelligent agent based auction by economic generation
scheduling for microgrid operation,” in Proc. 2010 Innovative Smart Grid
Technologies, ISGT, Gaithersburg, MD, USA, 2010, pp. 1–6.
[76] T. Logenthiran et al., “Scalable Multi-Agent System (MAS) for operation of a
microgrid in islanded mode,” in Proc. 2010 Joint Int.Conf. Power Electronics,
Drives and Energy Systems & 2010 Power India, New Delhi, India, 2010, pp. 1–
6.
[77] X. Yuqin, Z. Li, and W. Zengping, “Research on service restoration for large
area blackout of distribution system with distributed generators,” in Proc. 2009
International Conference on Sustainable Power Generation and Supply,
Nanjing, 2009, pp. 1–6.
[78] Peng Li et al., “Multi-agent approach for service restoration of microgrid,” in
Proc. 2010 5th IEEE Conf. Industrial Electronics and Applications, Taichung,
Taiwan, 2010, pp. 962–966.
[79] Y. Xu and W. Liu, “Novel Multiagent Based Load Restoration Algorithm for
Microgrids,” IEEE Trans. Smart Grid, vol. 2, no. 1, pp. 152–161, Mar. 2011.
65
[80] X. D. Li, Y. Q. Xu, and L. Zhang, “Distribution service restoration with DGs
based on multi-agent immune algorithm,” in Proc. 2009 2nd Int. Conf. Power
Electronics and Intelligent Transportation System, PEITS, Shenzhen, China,
2009, pp. 1–4.
[81] R. Olfati-Saber, J. A. Fax, and R. M. Murray, “Consensus and cooperation in
networked multi-agent systems,” Proc. IEEE, vol. 95, no. 1, pp. 215–233, 2007.
[82] W. Ren, R. W. Beard, and E. M. Atkins, “A survey of consensus problems in
multi-agent coordination,” in Proc. 2005 American Control Conf., 2005, pp.
1859–1864.
[83] W. Zimmermann, IOlib – Hardware input / output library module for matlab and
simulink, 2011. [Online]. Available: http://www.it.hs-
esslingen.de/~zimmerma/software/index_uk.html.