scieee AI-readable full text Open interactive document viewer

Agency services for the management of distributed energy networks using parallel auction markets

López Rodríguez, Ignacio José

Abstract

En las próximas décadas, el sistema de generación, transmisión y distribución de energía eléctrica afrontará los retos más importantes de su historia. La escasez de los recursos energéticos tradicionales, los efectos de los gases invernadero y el aumento imparable ,de la demanda llaman a transitar hacia un nuevo tipo de infraestructura capaz de explotar el potencial que ofrecen las nuevas fuentes de energía renovable, y de conceder autonomía y capacidad de decisión a los usuarios. Este nuevo modelo de red eléctrica es conocido como Smart Grid, y es habitualmente propuesto como una red distribuida, reactiva e inteligente.

Full text

UNIVERSIDAD DE LAS PALMAS DE GRAN CANARIA AGENCY SERVICES FOR THE MANAGEMENT OF DISTRIBUTED ENERGY NETWORKS USING PARALLEL AUCTION MARKETS by Ignacio Jos´ e L´ opez Rodr´ ıguez A thesis submitted to the University Institute of Intelligent Systems and Numeric Applications in Engineering (SIANI) University of Las Palmas de Gran Canaria for the degree of DOCTOR OF PHILOSOPHY IN COMPUTER SCIENCE September of 2015 AGENCY SERVICES FOR THE MANAGEMENT OF DISTRIBUTED ENERGY NETWORKS USING PARALLEL AUCTION MARKETS University Institute of Intelligent Systems and Numeric Applications in Engineering (SIANI) University of Las Palmas de Gran Canaria A thesis presented by Ignacio Jos´ e L´ opez Rodr´ ıguez Directed by Dr. Francisco Mario Hern´ andez Tejera The PhD student The director Las Palmas de Gran Canaria, September of 2015 A mis padres y mis hermanos; a ese todo del que me siento parte hasta los huesos. A mis t´ ıas, Mar´ ıa Dolores y Mar´ ıa Victoria. Abstract Facing growing energy demand, the exhaustion of fossil fuels, and the effect of greenhouse gases requires moving towards a new model of electrical grid. Aware of this situation, the US and Europe’s governments are working on the development of the Smart Grid, which is defined as a distributed, reactive and intelligent grid that will allow modulating the demand and use of available power generation dynamically, thus facilitating the integration of renewable energy sources safely and efficiently. One of the most important aims of the Smart Grid is to increase the participation of users in the management system of the network, who, by using smart local devices, are envisioned to be able to configure their consumption habits according to energy prices and to contribute in the generating facet. The enormous dependence of modern society on energy supply provokes the need for a gradual transition that converts the Smart Grid into a long-term process. The initial stage of this transition is supported by small distributed energy networks that are designed to be self-managed areas of the distribution network composed of modular loads and distributed energy sources. These networks represent controlled environments for the inclusion of renewable energy sources and the installation of distributed and reactive management systems such as those envisioned in the Smart Grid. The Chapters 1 and 2 are devoted to describing the electrical grid and the Smart Grid, including their present form, mission and challenges. The characteristics of intelligent agents make them a particularly suitable technology for managing environments in a distributed, reactive, intelligent and participative manner. Accordingly, there are many voices advocating the implementation of the management system of the Smart Grid as a multi-agent system. However, though intelligent agents have been a promising technology for the last fifteen years, the truth is that, far from achieving this, the technology has failed to establish itself as a practical solution in many technological settings that demand its functionality, as the Smart Grid now does. Among these are computational grids, P2P networks and virtual organizations, which have opted for more practical solutions, relegating the intelligent agents to the academic sphere. Aware of this barrier to entry, this thesis designs and implements an architectonic model called Agency Services (Chapter 3). This aims to facilitate the easy and realistic integration of software agents into the virtual environments that have arisen as result of the recent advances in information and communication technology, being especially suitable for implementing electronic markets and management systems based on coordination and negotiation actions, such as those expected in the Smart Grid. The Agency Services model is heavily based on the Cloud Computing paradigm, which has proven to be the type of solution that users adopt in practice. Also, the new model takes important lessons from solutions that have succeed in similar environments, such as computational grids and P2P networks. This thesis also provides a detailed review of the most important algorithms of the literature for the implementation of energy markets in distributed energy networks (Chapter 4). The review is particularly focused on agent-based solutions because they are the unique approach to empower users and implement reactive and distributed solutions. The review classifies and studies the literature according to the present needs of energy markets, highlighting the most complete proposals and discussing the subjects on which work remains to be done. Finally, an algorithm based on reverse parallel auctions has been selected as the most suitable for achieving distributed, flexible and reactive management systems based on autonomous entities. The combination of both the architectonic solution and the energy market’s algorithm is evaluated in a novel co-simulation infrastructure specially designed for this purpose, which combines the best solutions of both worlds, multi-agent systems and the electrical grid (Chapter 5). The experimental evaluation is based on demand-response programs, which are enriched with a new conceptual model based on critical loads and negative loads that opens the door to the implementation of market mechanisms (Chapter 6). Demandresponse programs are chosen in particular because they are one of the most immediate and realistic milestones on the road to the Smart Grid. The virtues and benefits of the Agency Services model are proven both quantitatively and qualitatively. Specifically, the Agency Services model has been shown to facilitate the installation of distributed agent-based solutions in restricted environments, to simplify the technical requirements of the client’s facility, and to improve the reliability of the system. Furthermore, in the particular case of energy management, it has been proven that energy balancing is successfully accomplished through negotiations between software agents. As the experimental evaluation reveals, the effectiveness of parallel auctions falls dramatically as the distribution of buyers between auctions becomes less uniform. This fact, which has not been addressed in the literature so far, may turn parallel auctions into a useless management system. To solve this problem, this thesis designs and implements a novel solution that manages to distribute buyers properly (Chapter 7). The mechanism noticeably improves the effectiveness of parallel auctions and is guided by a set of rules that preserves market competence. Furthermore, it is tailored to the needs of large and highly distributed environments, such as the Smart Grid and computational grids. The solution presented in this document is fully compliant with the main energy standards. In particular, the Agency Services model is compliant with the Energy Interoperation model defined by OASIS. As for DR programs, they are implemented using the OpenADR standard, which is the most widely adopted solution by sellers in this matter. Furthermore, it is noteworthy that all work developed in the course of this thesis respect the principles of the reproducible research movement, so that it can be evaluated and verified by other searchers. List of Figures 1.1 Overview of the structure of the electrical grid. . . . . . . . . . . 5 1.2 General properties of the primary, secondary and tertiary controls. 10 2.1 Basic scheme of micro-grids. . . . . . . . . . . . . . . . . . . . . 25 2.2 Architecture based on the concept energy cell of the CRISP project. 26 2.3 Control levels of the micro-grid environment. . . . . . . . . . . . 28 2.4 Common roles that play software agents in energy cells. . . . . . . 29 2.5 Parties interacting using tenders and transactions in the EI standard. 33 2.6 Example of interactions between VTN and VEN nodes. . . . . . . 34 2.7 Profiles of the OpenADR 2.0 specification. . . . . . . . . . . . . . 36 2.8 Tasks and interactions assigned to the smart local devices in distributed control schemes for the Smart Grid. . . . . . . . . . . . . 38 2.9 Disallowed interactions between local nodes in energy cells and micro-grids.............................. 39 2.10 Main types of P2P networks. . . . . . . . . . . . . . . . . . . . . 42 2.11 Structural pattern of the Gnutella network. . . . . . . . . . . . . . 43 3.1 General scheme of the Agency Services model. . . . . . . . . . . 55 3.2 Broker agent working as proxy of multiple local agents. . . . . . . 57 3.3 Simplified version of the Agency Services model. . . . . . . . . . 58 3.4 Interactions of an ASPEM node. . . . . . . . . . . . . . . . . . . 67 3.5 Correspondence between the architecture of the EI standard and the Agency Services model. . . . . . . . . . . . . . . . . . . . . 68 xiii LIST OF FIGURES 4.1 Linear piece-wise functions that define the behavior of the generation and consumption of energy. . . . . . . . . . . . . . . . . . . 75 4.2 Time slots of energy markets expressed as a binary tree. . . . . . . 82 5.1 Components of the simulation infrastructure. . . . . . . . . . . . 100 5.2 UML2 components diagram of the software modules that make up the simulation infrastructure. . . . . . . . . . . . . . . . . . . . . 101 5.3 Form to register a new scenario. . . . . . . . . . . . . . . . . . . 107 5.4 UML2 sequence diagram of the initiation stage of the simulation lifecycle. .............................. 118 5.5 UML2 sequence diagram of the execution stage of the simulation lifecycle. .............................. 119 5.6 UML2 sequence diagram of the completion stage of the simulation lifecycle. .............................. 119 6.1 Demand curve corresponding to 1st August, 2000 in the IEEE 13node when no signal is applied. . . . . . . . . . . . . . . . . . . . 125 6.2 Demand curve corresponding to 1st August, 2000 in IEEE 13-node when a delta signal of 30.000 kW is applied. . . . . . . . . . . . 128 6.3 Demand curve corresponding to 1st August, 2000 in IEEE 13-node when a delta signal of 70.000 kW is applied. . . . . . . . . . . . 130 6.4 Linear piece-wise function used by the bidders in auction markets. 133 6.5 Affected part of the demand curve of the parallel auction market (without starting prices) when a moderate signal is ordered. . . . . 135 6.6 Demand curve of the parallel auction market (without starting prices) when a high signal is ordered. . . . . . . . . . . . . . . . . . . . 136 6.7 Affected part of the demand curve of the parallel auction market when the duration of the market is set to 60 minutes. . . . . . . . 138 7.1 Overview of the HUDP mechanism. . . . . . . . . . . . . . . . . 150 7.2 UML2 sequence diagram of HUDP. . . . . . . . . . . . . . . . . 153 7.3 Buyers associated with a position of the list of sellers according to their identification token. . . . . . . . . . . . . . . . . . . . . . . 155 xiv LIST OF FIGURES 7.4 Over-concentration of buyers is limited by the frontier of each group ofsellers. .............................. 159 7.5 Linear piece-wise function. . . . . . . . . . . . . . . . . . . . . . 161 7.6 Buyers lists of the auctions. . . . . . . . . . . . . . . . . . . . . . 162 7.7 Example of extra buyers accumulated over the auctions. . . . . . . 162 7.8 Example of shifting the starting position of buyers according to the surpluselements. .......................... 163 7.9 Histogram of the covered auctions in each scenario. . . . . . . . . 170 7.10 Percentage of covered auctions depending on the ratio Rca. . . . . 171 7.11 Effect of the constant Cfon the peformance of the HUDP mechanism.172 7.12 Evolution of the number of empty auctions with the increasing of Cf.173 7.13 Evolution of the number of canceled auctions with the increasing of Cf. ................................ 173 7.14 Effect of the constant Cfon the performance of the HUDP mechanism when players adopt shared strategies. . . . . . . . . . . . . 175 C.1 Arquitectura b´ asica de una microrred. . . . . . . . . . . . . . . . 208 C.2 Arquitectura basada en el concepto celda de energ´ ıa del proyecto EuropeoCRISP............................ 209 C.3 Tareas e interacciones que se asocian a los dispositivos de control locales en el marco del sistema de gesti´ on del Smart Grid. . . . . . 214 C.4 Tipos principales de topolog´ ıa de las redes P2P. . . . . . . . . . . 215 C.5 Esquema general del modelo de Servicios de Agencia. . . . . . . 220 C.6 Esquema general de la versi´ on simplificada del modelo de ServiciosdeAgencia............................ 222 C.7 Interacciones de un nodo ASPEM. . . . . . . . . . . . . . . . . . 225 C.8 Componentes de la infraestructura de simulaci´ on.......... 233 C.9 Funci´ on lineal a trozos que env´ ıan los productores a los consumidores para representar sus ofertas. . . . . . . . . . . . . . . . . . 236 C.10 Curvas de demanda cuando se aplica una se˜ nal OpenADR de tipo moderate. .............................. 237 C.11 Curvas de demanda cuando se aplica una se˜ nal OpenADR de tipo hard.................................. 238 xv LIST OF FIGURES C.12 Curvas de demanda cuando se aplica una se˜ nal OpenADR de tipo delta que ordena una reducci´ on de 30.000 kW. . . . . . . . . . . . 240 C.13 Compradores asociados a una posici´ on de la lista de vendedores. . 242 C.14 La concentraci´ on de los compradores est´ a limitada por la fronteras de los grupos de subastas. . . . . . . . . . . . . . . . . . . . . . . 244 C.15 Funci´ onlinealatrozos........................ 245 C.16 Ejemplo de compradores extra acumulados en cada subasta. . . . 246 C.17 Ejemplo de compradores que son reasignados a otras subastas. . . 246 C.18 Histograma de la cantidad de oferta cubierta cuando se usa el mecanismo HUDP y los participantes adoptan estrategias. . . . . . . 251 xvi List of Tables 4.1 Properties for describing the works that aim to implement the SDM exchange model at medium to large DENs. . . . . . . . . . . . . 91 4.2 Description of the works according to the characteristics of energy markets................................ 92 4.3 Description of the works according to their standard-orientation and the capacity to reproduce experiments based on them. . . . . . 93 5.1 Description of the layer of RESTful web services provided by the application that represents the system operator. . . . . . . . . . . 108 5.2 Description of the layer of RESTful web services provided by the application that represents ASPEMs. . . . . . . . . . . . . . . . . 110 6.1 Consumption of the ASPEMs per OpenADR level. . . . . . . . . 124 6.2 Consumption of the ASPEMs per type of load. . . . . . . . . . . 124 6.3 Number of nodes associated to each type of schedule. . . . . . . . 125 6.4 Consumption of the ASPEMs per level when a delta signal of 30.000 kW isapplied. ........................... 129 6.5 Number of signals per type when a delta signal of 30.000 kW is applied. ............................... 129 6.6 Amount of load per type when a delta signal of 75.000 kW is applied.129 6.7 Number of signals per type when a reduction of 75.000 kW is applied.131 6.8 Description of the simulated scenarios using parallel auction markets.134 6.9 Data corresponding to the simulation of parallel auction markets when signals of type moderate and high are applied. . . . . . . . . 139 xvii LIST OF TABLES 7.1 Description of the scenarios used in the experiments. . . . . . . . 168 7.2 Scenario #1: Results when starting prices are not used. . . . . . . 168 7.3 Scenario #1: Results when using starting prices and multiple biddinglevels. ............................. 168 7.4 Scenario #6: Results when not using starting prices. . . . . . . . . 169 7.5 Scenario #6: Results when using starting prices and multiple biddinglevels. ............................. 169 7.6 Performance of the scenario with ratio Rcaequal to 3when the constant Cfvaries. ......................... 174 8.1 Meta description of the article [LRHT15], developed as part of this dissertation, and published in the journal Applied Energy. . . . . . 189 8.2 Ranking of the journal Applied Energy. .............. 189 8.3 Meta description of the article [LRHTHC15], developed as part of this dissertation, and published in the journal Expert Systems with Applications. ............................ 190 8.4 Ranking of the journal Expert Systems with Applications. . . . . . 190 C.1 Descripci´ on de los algort´ ımos m´ as destacados del estado del arte para la gesti´ on de entornos de energ´ ıa distribuida usando mecanismosdemercado. .......................... 229 C.2 Consumo de los ASPEM por cada nivel de consumo propio de las se˜ nales de tipo simple deOpenADR................. 234 C.3 Perfil del mercado de subastas. . . . . . . . . . . . . . . . . . . . 235 C.4 Datos correspondientes a las simulaciones de los mercados de subastas paralelas cuando se aplican las se˜ nales moderate yhard. . . 239 C.5 Descripci´ on de los escenarios usados en los experimentos del mecanismoHUDP............................ 247 C.6 HUDP: Escenario #1: Resultados para los casos en los que no se usan precios de entrada. . . . . . . . . . . . . . . . . . . . . . . . 248 C.7 HUDP: Escenario #1: Resultados para los casos en los que se usan precios de entrada y pujas en forma de funciones lineas a trozos. . 249 C.8 HUDP: Escenario #6: Resultados para los casos en los que no se usan precios de entrada. . . . . . . . . . . . . . . . . . . . . . . . 249 xviii LIST OF TABLES C.9 HUDP: Escenario #6: Resultados para los casos en los que se usan precios de entrada y pujas en forma de funciones lineas a trozos. . 250 xix ¡Estoy hasta los huesos de tu cuerpo!. . . ¡De tu carne de hombre que no aguanta los tiempos!. . . ¡Ni aguanta el sol de est´ ıo!. . . ¡Ni los fr´ ıos de diciembre!. . . ¡Para esto cri´ e yo mis pechos, duros como el pedernal!. . . ¡Para esto cri´ e yo mi boca, fresca como la pav´ ıa!. . . ¡Para esto te di yo dos hijos, que ni el andar de la caballer´ ıa ni el mal aire en la noche supieron aguantar! “La familia de Pascual Duarte”, Camilo Jos´ e Cela. Su nombre amontona pasado en mis ojos. “Ester Primavera”, Roberto Arlt. CHAPTER 1 The electrical grid The prolific inventor Thomas Edison introduced the first electric power system in New York City in 1882. The Edison Illuminating Company operated with direct current at 110 volts and initially supplied light to 59 customers in the Wall Street area. Unaware of the important social benefits that would arise later, the main goal of Thomas Edison was to create a new profitable business. By the end of 1880s, Edison had sold the patent for generating and transmitting electricity, and many cities of US and Europe had set up many similar small central stations capable of supplying few city blocks. However, due to the use of direct current, the range of these first generating stations was limited to a couple of kilometers. In 1888, Nikola Tesla, a former employee of Edison, received a patent for the induction motor, which would enable the high-voltage transmission of alternating current over long distances with low losses. In 1896, Nikola Tesla, by then working for Westinghouse Electric & Manufacturing Co, turned this idea into reality by constructing a hydroelectric station in the Niagara Falls that was capable of transmitting significant amounts of power to Buffalo, New York, more than 32 kilometers away. In the end, this innovation would establish the foundation of an electrical grid designed for centralized generation and distributed loads, a concept that has endured to the present day. 1 1. THE ELECTRICAL GRID established by the system standard, which is 50 Hz in Europe and 60 Hz in the US. In more detail, if production exceeds demand, the rotational movement of the generator speeds up, thus increasing the frequency. Conversely, if there is a temporary production deficiency, the generator’s rotational speed slows down and frequency decreases. It is important to note that the primary control does not return frequency to normal, but only stabilizes it. When the energy imbalance cannot be solved by small corrections of individual engines, it is necessary to put into action a coordinated plan that involves generators from multiple power plants. This kind of action belongs to the realm of the secondary control level. It usually takes few minutes and aims to restore the minute-to-minute balance by setting the frequency to the standard value of the grid after it has been normalized by the primary control. To facilitate the control mission, some national grids are divided into control areas. Each area is governed by the figure of Balancing Authority (BA), which is in charge of ensuring the operation within an area through the development of resource plans, maintaining the balance between load and generation, controlling transmission flows and voltages, and ensuring that frequency is held within normal limits. When balancing areas cannot meet the demand using their own resources, or there is surplus of production that can be consumed in other regions, BA can manage exchanges with neighboring control areas. The number of BAs, as well as the regions they run, is determined by the system operator. In the US there are over 130 balancing authorities, although over the last past several decades, motivated by economies of scale, they are gradually getting larger as a result of the union of some of them. The common rule in Europe is that each national grid works as a unique control area that can exchange energy with connected neighboring countries. On the other hand, correcting the deviations of balancing areas is based on the value Area Control Error (ACE), estimated in MW. ACE is a measure of error in the system frequency that helps to identify differences between the actual and the scheduled net power flow within a control area. A positive value of ACE means that generation within the area exceeds the load by more than the expected value. In this case, the generation within the control area must be reduced. Conversely, negative ACE means local generation must be increased. 8 1.4 Operation The elimination of ACE requires the coordinated action of multiple generators of multiple power plants. These kind of actions can only be run with an overview of the control area. This information gap is covered with an advanced system called Supervisory Control and Data Acquisition (SCADA). Making use of devices and sensors deployed across the network, SCADA continuously collects information on the grid status. In particular, with a typical periodicity of four seconds, it collects data on the system frequency, the generators and net real interchange between the system and adjacent systems. Using this information, the Automatic Generation Control (AGC) subsystem is responsible for setting ACE next to zero. The AGC software is run on the area control center to determine the most reliable, stable and economical solution, which basically consists of the resources that must participate in the restoration, as well as the set points to which devices must operate. Generators equipped with AGC devices are informed of the new set points through the communication network, after which they proceed to readjust their configuration. To achieve a reactive control system, generators that participate in AGC actions generally have fast response times and flexible production levels. In case the capacity of the AGC subsystem is not sufficient to cover the imbalance, the direct action of human operators may be necessary so that the system operator can phone the generation operators and ask for a change in the output of the power station. When resource planning or demand estimates fail so much that actions of the secondary control are not sufficient to restore the stability to the area, the tertiary control comes into play. It is intended primarily to address contingencies that require solutions that last from 15 minutes to several hours. Common actions of the tertiary control are enabling reserves, rescheduling net interchanges of the control area, and shedding parts of the load when necessary. This control level is not defined in the same way around the world, so sometimes this is understood to be part of the secondary control. Tertiary control can certainly be seen as a sort of long-term secondary control, but it is clearly differentiated by the type of resources it uses and the duration of its action. So, as depicted in Figure 1.2, energy imbalances are addressed gradually in three levels, which are mainly characterized by the period in which they run, and the size of the imbalance they can solve: from the first level, which is targeted to 9 1. THE ELECTRICAL GRID small imbalances that can be corrected quickly, to the third level, which handles large imbalances that may take hours to be corrected. Primary control fast and autonomous, power station context Seconds Minutes balancing area context, SCADA system, several MWs Secondary control Tertiary control Hours backup generators and load shedding, hundreds of MWs human operators, Figure 1.2: General properties of the primary, secondary and tertiary controls. Once the market or the system operator has assigned generating plans to power stations, the latter are responsible for determining how their generating units must meet the demand at all times of the day. That is, the power station has to set which units are going to be used, at which periods of the day they must operate, and which must be their production level at each moment. This task is always approached as short-term optimization algorithms that, beyond the essential purpose of supplying the required power, are focused to minimize overall fuel costs while satisfying the constraints imposed by the system. Specifically, short-term scheduling is tackled through two processes: rUnit commitment (UC): This determines the time points at which each generating unit must be started up and shut down, as well as the amount of energy it should produce when is on-line. Unit commitment is typically done one day ahead. rEconomic dispatch: This determines the set-points of each of the on-line generating units in order to meet the existent load at minimum cost. The economic dispatch optimization algorithm is typically run every 5 or 10 minutes. The efficiency of these processes is crucial for large utilities: a reduction of less than 1% can result in savings of millions of dollars a year. 10 1.5 Demand-response programs 1.5 Demand-response programs Rather than increasing generation capacity, decreasing demand is the most desirable measure when balancing energy. As described in Section 1.7, a significant amount of the investment on the generation, transmission and distribution of energy is driven by the need to cover the demand in high peak times, which in practice means less than 1% of the demand during the year. Also, avoiding using generation capacity, especially that installed to cover demand peaks, implies considerable savings on energy sources that are expensive and inefficient by nature. Aware of these conditions, the electrical grid has developed mechanisms to combat rise in demand. They are mainly two groups of means: rDemand-response (DR): This is an action by which end-nodes are encouraged to make short-term reductions in response to price signals, or as a result of bilateral contracts. After receiving a DR signal, typical actions are turning off banks of lighting, adjusting HVAC levels or shedding part of the demand of industrial processes. rDemand side management (DSM): This involves measures intended to improve energy efficiency, which are mainly related to the functioning of consumer devices. DR programs are one of the most promising mechanisms for efficient energy balance. However, due to the lack of modernization of the electrical grid, its application is still rather limited: it is mainly focused on discarding load from factories and large facilities under contracts previously agreed with the system operator. In particular, the facilities involved, in exchange for a payment, access to discard part of their demand under certain circumstances and in specific time periods. This type of solution lacks flexibility. With the aim of bringing DR programs to all customers, and thus obtaining all the benefits they can really offer, the community has long been working on DR standards and devices. The OpenADR standard [OAD] is the most advanced proposal, for which most popular sellers are already offering products. 11 1. THE ELECTRICAL GRID 1.6 Liberalization and energy markets Since the beginning of the large-scale generation of electrical energy in the late nineteenth century, up until less than two decades ago, the power supply has always been treated as a natural monopoly: as a service that should be provided by the government through utilities. The electricity sector, due to the complexity of both its infrastructure and operation, has always been understood as a field in which it is not easy to successfully apply market principles. In addition, the enormous importance that electricity has acquired for economic and social development of countries led governments to take on its management. However, this view of the electrical grid, partly because competition is limited or null, brings important drawbacks such as high costs, lack of innovation, and inefficiency. In contrast, the theoretical benefits commonly associated with the opening of electricity markets are: lower prices and operating costs, improvement of the system efficiency and service quality, fostering innovation, encouragement of the use of clean energy solutions, and increment of the array of energy products available to consumers. With these goals in mind, most developed countries have begun liberalizing the electricity sector, as well as creating and opening electricity markets, which is a complex task due to the magnitude of the system, long-established traditions, and the need to continuously provide a reliable service. In particular, the liberalization of the sector is focused on the definition and implementation of a framework that separates the activities that can successfully operate in competition and those which, by nature, must remain as natural monopolies. In general, the guidelines that the emerging liberalization process follows are: a) Deregulating generation and supply activities, and allowing the entry of private agents in these stages. The idea is that generators sell energy in a wholesale market, and both retail companies and large industrial customers buy it in order to offer supply to customers in the domestic and commercial sectors at regulated prices. b) Transmission and distribution networks remain as a natural monopoly. The management of the network is delegated to an independent operator that must guarantee its impartial and non-discriminatory use for generators and retailers. 12 1.6 Liberalization and energy markets This scheme aims at breaking the strong vertical integration typical of the stateowned electrical grids, in which a single company usually takes presence in all stages of the energy delivery: generation, transmission, distribution and supply. By contrast, it is replaced by a model that pursues to introduce competition in the generation and supply activities. Accordingly, the sector restructuring is formally guided by two key lines: i. Vertical unbundling: Avoiding the simultaneous presence of agents in multiple stages of the generation and delivery process. That is, to ensure and reinforce competition by avoiding that a player can be a customer of itself at a subsequent stage. Actually, if it is not properly regulated, an agent, in the role of retailer, may buy the same energy that it produces as generator, thus possibly distorting prices. ii. Horizontal separation: Reduce the horizontal concentration and guarantee the offer in the generation and supply activities by stimulating the entry of agents at each level. This model is intended to create competition through wholesale and retail markets. In the former case, retailers and large industrial consumers buy electricity directly from generators; while in the latter case, retailers wrap electricity from the wholesale market in commercial products that re-sell to end-use customers. Due to the critical nature of electricity to society, tariffs at this latter stage are regulated. The main trading mechanism in retail markets are long-term contracts between retailers and end-use customers. Specifically, the customer contracts an electricity product that, according to the profile of the demand, guarantees a fixed price for the energy. In this way, end-use customers are protected from the high volatility of energy prices. On the other hand, wholesale markets are based on rules and mechanisms typical of commodity markets. In this case, the fact that electricity cannot be stored on a large scale along with the impossibility of providing it at the instant customers demand it, makes it necessary to work with estimates and hold markets in advance. Actually, this type of market involves most of the wholesale activity. There, a central authority initiates a market in which generators and retailers, according to demand estimates, negotiate a specific volume of electricity for specific future blocks of time. According to the duration of these periods of time, three types of spot markets are held: 13 1. THE ELECTRICAL GRID rDay-ahead: This schedules the production and consumption for the next day. This market is organized on an hourly basis: players submit offers for purchasing and selling energy for blocks of hours of the day-ahead. Generators make offers for the hours they have available capacity, while retailers submit bids for purchasing energy in accordance to the estimated demand. Market players commonly put in 24 bids per day. rHour-ahead: This adjusts the deviations on the supply and consumption with regard to that initially scheduled in the day-ahead market. Several market sessions are programmed per day, which are intended to correct the deviations for specific time periods. The players are usually the same as in the day-ahead market. This market is also known as Intra-day market or Adjustment market. rReal-time: This acts as the last economic level for achieving the balance between supply and demand. It is not based on the same market mechanisms that the dayand hour-ahead markets use. Instead, in the real-time market, generators and consumers submit bids that specify the prices they require to vary their supply or demand for a specific volume in a short period of time. This market is also known as Balancing market. At the closing time of dayand hour-ahead markets, after collecting all offers and bids, a central authority proceeds to clear the price for each block of time. Clearing algorithms of electricity markets are mainly based on the marginal cost of generation. In terms of trading volume, the day-ahead market is the principal mechanism for scheduling the energy dispatch of each day. Next, hour-ahead and real-time markets are used respectively to correct deviations from the initial plan and to balance the supply and demand minute to minute. Furthermore, countries that have made most progress in the liberalization process are increasingly integrating markets of ancillary services. The aim of these is to trade capacity and functions that system operators use to cover unplanned imbalances and incidents. With the onset of electricity markets, has also emerged the figure of Market Operator (MO), which is the entity responsible for the management of the markets. The MO is commonly related to the ISO, and is complemented with the Energy Regulator (ER). This second role is established by the government and its principal mission is to ensure that market operation occurs in compliance with the 14 1.7 On road to obsolescence government’s regulation, paying special attention to the parts of the sector that remain natural monopolies, such as the transmission and distribution networks. In most cases, the MO is in charge of the management of the day-ahead and intra-day markets, while the balancing (real-time) and ancillary services markets are delegated to the ER. 1.7 On road to obsolescence The existing grid shows clear signs of obsolescence: the technological basis, the means of control, and the infrastructures for generating and delivering electricity have remained unchanged for decades. This lack of innovation contrasts with the context, which conversely has become particularly volatile. The huge increase in demand, the continuous fluctuation of prices and the inevitable depletion of fossil fuels are all challenges that electrical grids around the world have to face in the medium term. According to estimates, the coming decades will be crucial to overcome a threatening horizon [IEA14, EU14, EU13]: rExponential increase in demand. Between 2008 and 2035, world marketed energy consumption will increase by 53%. Although much of this growth is associated with emerging economies, developed countries will also experience a high rise in energy consumption. In particular, in Europe energy demand will increase by 60% from now to the year 2030. rDepletion of fossil fuels. Most of the supply to meet the new demand will be based on fossil fuels. As a result, it is estimated that most of the conventional oil reserves will be depleted by 2030. rLack of price control. Most countries need to import fossil fuels. In addition, much of the fossil fuel resources are controlled by a small group of producing countries, which are mainly represented by the Organization of the Petroleum Exporting Countries (OPEC) and the Gas Exporting Countries Forum (GECF). The lack of local sources and the fact that main existing producers are living under unstable governments leads to lack of control of prices. The European case is paradigmatic: if the continent is not able to increase its energy production, 70% of demand will have to be met with external energy 15 1. THE ELECTRICAL GRID sources over the next 20 years. As for the US, it will have to increase the production of crude oil by 13% by 2019 in order to combat the rise of prices. rGlobal warming: Climate change is a fact. The Intergovernmental Panel on Climate Change (IPCC) has evidence that greenhouse gases have so far caused a global temperature rise of 0′6degrees centigrade. Moreover, the IPCC estimates that in the event of continuing abuse of fossil fuels, this temperature will increase between 1′4and 5′8degrees during the twenty-first century. Also, characteristic factors of the grid, such as the low efficiency of generating mechanisms, or losses due to the transmission of energy over long distances, must be revised and corrected. For example, in relation to the amount of fuel used, the existing generating units only use between 25% and 40% of the energy generated. The rest of the energy is dissipated in form of heat during the process, which is difficult to transport. The efficiency ratio can be improved if generating units are near the place of consumption, so that heat rejection is applied right there. In this case, the efficiency ratio may reach 70%. As for the losses due to transmission and distribution of energy, the EIA estimates that they reach 7% in the US and 6% in the EU. The August 14, 2003, the northeastern US and southern Canada suffered one of the worst blackouts in history. It involved some 50 million customers, and its economic cost was estimated at between 7 and 10 billion dollars. The causes were the combination of overloading and failures in the control algorithm. Far from being a single event, blackouts with significant consequences occur every year. The rise in demand and having to control an increasingly complex system make failures inevitable. However, the lack of reactivity of the grid and its monolithic structure causes small blackouts to become rolling blackouts, thus extending consequences throughout the network. The most common cause of outages are temporary peaks of demand, which are usually focused on a small set of summer and winter days, when as a result of unusual temperatures there is a massive use of air conditioning or heating systems. These short periods of time may have a frequency of once every five years or even once every ten years, which makes reserve capacity extremely expensive. At the present time, between 25% and 50% of the electricity bills of most countries goes to finance the infrastructure in charge of covering usual peaks, which can mean 16 1.7 On road to obsolescence activity that occurs during less than 1 percent of year. Moreover, in the current circumstances, this scenario can only get worse: according to the IEA, peak load will increase until 2050 by 28% in the OECD countries of EU, 15% in OECD countries of US, and 200% in China. This may be alleviated if it is possible to shed dynamically specific parts of the load during especially demanding time periods. However, in practice this option is usually only arranged with industrial and large commercial customers. Therefore, the concept of reliability of the electrical grid is highly inefficient, as it generally assumes responsibility to supply every load, regardless of its type and importance. The exceptions are the zones with essential public services, such as hospitals and police stations, which are especially protected so that they are usually the last to be affected. Accordingly, the existing electrical grid is becoming obsolete: rThe Infrastructure, the technological basis and the control scheme of the grid have stayed the same for the past 60 years, with the result that they are not prepared to deal with the activity and complexity that the expected demand will entail. rGenerating units are highly inefficient, and the transmission of energy implies significant losses. rThe control system is highly centralized, so it losses reactivity and ability to act as it grows. rThe reliability and quality of service of the grid are virtually based on the concept of all or nothing. The need to supply outstanding peaks of demand charges the grid with excessive costs. In view of the facts and forecasts, the community agrees that the existing electrical grid is not ready to meet the upcoming challenges, so that the entire conception of it, from the structure to the technologies used, must be revised. 17 2. DISTRIBUTED ENERGY NETWORKS system operator, micro-grids behave like any other point of the network, so they are considered an effective means for the transparent and gradual integration of DER devices into the grid, including renewable energy sources. Figure 2.1 depicts the scheme traditionally used in the literature to illustrate the micro-grids. As shown, this is composed of feeders that can be devoted to specific types of loads. For instance, in Figure 2.1, the two upper ones contain loads that, correspondingly, can be discarded or adjusted to a specific level of consumption; while the bottom feeder is devoted to critical loads that the control system strives to preserve. By separating the devices according to their type, non-critical loads can be disconnected rapidly in case of an emergency or lack of supply. This action is commonly performed by the Separation Device (SD), which is officially responsible for facilitating the transition to isolated operation. Specifically, a micro-grid is in islanded mode when it is isolated from the main grid so that it remains operational and functional as an autonomous entity. Furthermore, all communications between the main grid and the micro-grid are performed by a device called Point of Common Coupling (PCC). Note that, depending on the context, the scenario depicted in Figure 2.1, instead of being composed of end-use units, may be based on facilities that operate as controllable end-nodes. As for behavior, micro-grids are said to be good citizens, which means they are entities that, by definition, pose no risk to the network and do not add complexity to its management either. In addition, for more advanced phases, it is expected to implement the behavior model citizen, by which the micro-grid will also provide ancillary services to the main grid, by either injecting energy when necessary, or limiting its demand when requested. At a higher level of abstraction, a micro-grid is a specific implementation of an enclosed, autonomous area of the electrical grid. In [PLSW06], the National Sandia Laboratories uses the concept of cell to describe a similar structure. In this case, cells are defined as set of distributed energy resources that are simple enough to be managed by a single entity based on local principles. Furthermore, the control system is supplemented by a software agent that is responsible for interacting with the neighboring cells. According to the nature of interactions, two organization models are possible: 24 2.2 Distributed Energy Networks Figure 2.1: Basic scheme of micro-grids. rGlob: A network composed of cells that, following their own interests, negotiate energy exchanges among themselves. The control agent is responsible for negotiating the purchase and sale of energy. rCo-op: A network composed of cells that, besides having all characteristics of Glob cells, are also able to cooperate with each other in order to achieve collective goals. In turn, a cell of type Co-op, due to its capacity to coordinate with other cells and pursue common goals, can participate as an internal element in other Co-op and Glob cells, thus making it possible to create composite structures. From a practical standpoint, using Co-op cells is the most feasible approach to tackling the development of the Smart Grid, since it allows the definition of goals related to the reliability and quality of the energy supply. On the other hand, the EU CRISP project [ECN06] uses the term energy cell [ARP+02] to refer to enclosed, self-managed areas of the distribution network. In this work, one of the most representative characteristics of energy cells is that they can be grouped so that the union of two or more energy cells can make a new cell, thus setting up a structure capable of scaling horizontally and vertically (Figure 2.2). A key difference between energy cells and micro-grids is that units of the former can be other cells, while micro-grids are intended to be composed of generation and consumption entities. 25 2. DISTRIBUTED ENERGY NETWORKS Aggregator Unit Unit Unit Cell Z Aggregator Unit Unit Unit Unit Unit Unit Cell X Cell Y Cell XY Cell XYZ Aggregator Aggregator Aggregator Figure 2.2: Architecture based on the concept energy cell of the CRISP project. As an initial step to implement the energy cell concept into the electrical grid, the CRISP project proposes [CRI02] two hierarchical levels: rLevel 1: A cell that is made up of devices belonging to one or more feeders of the distribution network. The boundaries of this type of cells are substations. rLevel 2: A cell that arises from grouping Level 1 cells that are connected to the same medium voltage transformer. 2.2.2 Energy Management System As part of its daily operation, distributed energy environments, either they are micro-grids or energy cells, must meet economic, heat load, environmental and legislative constraints. Therefore, apart from the fast electrical control systems, these environments require an intelligent global control system. This is called Energy Management System (EMS) and primarily aims to optimize cell’s energy cost through planning, coordinating and supervising the activity of all resources [KSLK03]. The EMS works in the secondary control system making short-term plans based on factors such as: conditions imposed by the main grid, specific features of generating units, amount of load that can be modulated and shed, amount 26 2.2 Distributed Energy Networks of energy that can be stored, energy prices, current legislation, demand estimates and weather forecasts. It should be noted that the EMS does not necessarily imply the presence of a physical device. The EMS is primarily a concept that may be implemented using the simplest method, such as the hand-control, or the most modern and sophisticated ones, such as distributed systems based on concepts and techniques belonging to the artificial intelligence field. In any case, building an EMS is recognized as a complex task. In practice, the EMS is mostly implemented as a centralized module that is part of a hierarchical control structure with three levels [DH05]: 1. Distribution Network Operator (DNO) and Market Operator (MO): The DNO is a management system responsible for the operation of the medium or low voltage area that the micro-grid is connected to. Thus, the area of action of the DNO can span multiple micro-grids and utility grids. On the other hand, the MO is responsible for the economic operation of one or more micro-grids. 2. Micro-Grid Central Controller (MGCC): After receiving information from the DNO and MO, as well as from internal sensors and components, the MGCC develops action plans and sends commands to the controllable units. 3. Local Controller (LC): Each controllable unit of the micro-grid has associated with a LC that is in charge of monitoring its activity and applying the commands sent by the MGCC. In this scheme (Figure 2.3), the EMS works as an embedded module of the MGCC devoted to the schedule of the local units operation. In particular, the EMS is commonly proposed as a non-linear optimization problem [HTV+04, HAIM07] that includes variables referencing to economic factors and technical characteristics. However, the aforementioned solution is considered neither efficient nor scalable for medium to large distributed environments because: i. The computational cost of finding a solution increases exponentially with the size of the model, so that it can easily result in a NP-Hard problem. ii. Stochastic and nonlinear variables typical of energy units are difficult to model, so they have to be simplified or omitted. 27 2. DISTRIBUTED ENERGY NETWORKS Figure 2.3: Control levels of the micro-grid environment. iii. The system has low reactivity, since any change in the environment demands restarting the optimization process. iv. The system provides a low level of autonomy to users, who are limited to expressing their intentions through prices or utility functions. Even though there are also works based on neural networks [CPPS06] and fuzzy logic [KDAP12, LSM09], adopting a centralized approach for implementing the EMS is considered unsuitable because it grants neither autonomy of users nor the reactivity and flexibility required by the Smart Grid. On the contrary, distributed control solutions fit better with an environment like the Smart Grid, which aims to be bi-directional, distributed, intelligent and reactive. In response to this demand, the EU CRISP project puts forward the Supply and Demand Matching (SDM) management model [KCKA04], whereby entities owning generation and consumption resources can dynamically bargain exchanges of energy blocks so that the network is continuously balanced. The SDM model stands out for providing autonomy to producers, unlike techniques such as DSM (Demand Side Management) and DRR (Demand Response Resources), in which only authority nodes and consumers have capacity to act. In essence, the SDM model proposes the creation of micro-energy markets in distributed energy contexts such as cells and micro-grids. On a smaller scale, they emulate the mechanics of wholesale energy markets: through negotiations each 28 2.2 Distributed Energy Networks node decides the amount of energy it produces and consumes, and for how long the action is carried out. Micro-energy markets are conceived as being highly reactive, instantiated on demand, and with a short time horizon (usually shorter than 15 minutes). The SDM model, as well as many other solutions related to the Smart Grid, require placing an autonomous piece of software at each node, which has the mission of: (i) representing the interests of users in micro-energy markets; and (ii) coordinating with other nodes in order to meet collective goals. Intelligent agents are accepted as the most suitable technology to address this challenge. However, the lack of stable standards for a noticeable period of time and the need to make assumptions about future scenarios, have resulted that many studies that propose software agents for the control of the Smart Grid do not share a common vocabulary. In order to proceed with our study, this work assumes the presence of the basic components described below, which are usually found in the literature (Figure 2.4): Local Agent Local Agent Local Agent Local Agent Central Agent Aggregator Agent Figure 2.4: Common roles that play software agents in energy cells. rLocal agent: This represents production, consumption and storage entities throughout the management process. The main tasks of local agents are to negotiate on behalf of customers, sending commands to the local devices, monitoring their activity, and sending updated information to the authority nodes. 29 2. DISTRIBUTED ENERGY NETWORKS Local agents are usually planned to be run in the control device of the customer’s facility. rCentral agent: It is a system agent that, depending of the level of decentralization of the solution, is in charge of supervising and/or controlling the operation of the micro-grid or energy cell. This role is essentially the agent-based version of that of central controller in the traditional approach. rAggregator agent: It manages the interactions of the cell with the main grid and other external entities, which in turn can be other cells or micro-grids. The participation of the central agent in the clearing process varies according to the decentralization level of the solution. Three main tasks are distinguished along the state of the art: rManagement: The central agent is responsible for developing and controlling the actions plans of all the entities. These plans are carried out according to the information sent by the local agents regarding both the state of the units under control and the users’ preferences. rSupervision: The central agent monitors the activity of the local agents, which in this case are the entities responsible for drawing up the actions plans. The central agent may refuse or intercede on both the plans and objectives in order to ensure that conditions related to the efficiency, security and reliability are met. rServices: The activity of the central agent is limited to providing support through functions and data services. In this regard, FIPA protocols [FIP96] define set of services intended to facilitate typical tasks in multi-agent systems, such as locating and registering agents. Also, in order to make reliable plans, local agents will likely require data services such as demand estimates and weather forecasts. As for the business logic, they are also necessary functions that control the market’s life-cycle. Furthermore, regardless of the type of approach, the central agent is commonly proposed to record the activity of the system’s components, and confirm that local agents behave in accordance with the agreed plans and goals. Environments in which the central agent performs the clearing process are essentially centralized solutions [HDT+05, OJ05, KWK05, FTNY08], so that the 30 2.3 Standards for the energy management functions of the central agent are practically identical to those of the Micro-grid Central Controller (MGCC, [HTV+04]), which is a physical device designed to take on the entire control of the micro-grid. When the central agent works as supervisor [DH04, DH05, Arn00], the solution gains in decentralization, as it arises from the interaction of local agents. However, in this case the outcome still requires the approval of the central agent, which may be programmed to look out for parameters such as grid stability, power quality, supply security and efficiency. Finally, when the tasks assigned to the central agent (when necessary) are limited to providing ancillary services, the solution can be considered fully decentralized [AB00, RPT07, PFR09, LKG05, Jia06, BCG+98, PLSW06]. Much of the literature tends to include the aggregator agent as a subsystem of the central agent. This work represents these two figures separately though because they actually work in well-differentiated functional areas that, due to their complexity, require individual analysis. As mentioned before, the aggregator is in charge of managing the interactions of the cell with the context. The aggregator may receive instructions from the system operator, sends information to it about the local devices, and manages the exchange of energy with the main grid and surrounding cells. The presence of the aggregator agent is common in environments in which local agents are able to coordinate and cooperate with each other. Internally, the aggregator communicates all the information and instructions to the central agent, which is responsible for processing them. To sum up, the EMS, when implemented in a distributed manner, is a multiagent system in which software agents, representing local nodes, interact and coordinate between them in order to balance the system and accomplish both particular and collective goals. This type of implementation shows that, indeed, the EMS is more conceptual than physical, since the management here arises as result of the communication and coordination of independent software agents. 2.3 Standards for the energy management The most important effort to standardize the Smart Grid comes from the National Institute of Standards and Technology (NIST). This aims to guide the development of a framework that includes standards of systems, devices and procedures 31 2. DISTRIBUTED ENERGY NETWORKS [NIS12]. In order to support NIST in this task, the Smart Grid Interoperability Panel (SGIP) was established in late 2009, which, in collaboration with external organizations, aims to define requirements for essential communication protocols and other common specifications. As a first step in the race to the Smart Grid, SGIP has identified key areas for which standards should be developed. Furthermore, a small group of these standards was considered highly important, being classified as Priority Action Plans (PAP). The PAP09 is specifically devoted to the development of DR programs, thus recognizing the importance of this area in the short-term future of the Smart Grid. Much of the work devoted to this plan has focused on the definition of the OpenADR standard, which is supported by the information and communication model described in the Energy Interoperation standard developed by the collaborating organization Advanced Open Standards for the Information Society (OASIS). The basic concepts of both standards are briefly described below. 2.3.1 The Energy Interoperation standard The goal of the Energy Interoperation (EI) standard from OASIS is to define messages to communicating prices, reliability and emergency conditions. Formally, the standard is said to describe “an information and communication model to coordinate energy supply, transmission, distribution, and use, including power and ancillary services, between any two parties, such as energy suppliers and customers, markets and service providers” [OASa]. It is important to highlight that, in the architecture defined in the EI standard: (i) interactions are always possible between any pair of actors; and (ii) an actor can participate in many interactions at the same time. The standard adopts a services-oriented approach and is agnostic in relation to the technology used to carry the messages. As for the local devices, facilities must be provided with communication interfaces such as that described in [Hol09]. Specifically, the point of communication whereby nodes offer and consume services is the ESI. The information and communication model defined in the EI standard is intended to facilitate collaboration in energy use. Collaborative Energy stands for the management of energy using cooperative mechanisms. In addition, when there are 32 2.3 Standards for the energy management market interactions, the management model is referred to as Transactive Energy. In this scheme, parties buy and sell energy using tenders that, if accepted, result in transactions (Figure 2.5). In a transaction, a party can take on the role of buyer or seller. Normally, a generator will be on the seller’s side of the transaction, and an end-use customer on the buyer’s one; although nothing prevents them from swapping these roles. As for the negotiation process, the tender that initiates the transaction can be sent by any of the parties. Figure 2.5: Parties interacting using tenders and transactions in the EI standard. Apart from the Transactive Energy model, the EI standard also defines a structural model for interactions typical of DR programs, which consists of event-based dispatch of resources. The model is principally based on the definition of two roles: Virtual Top Node (VTN) and Virtual End Node (VEN). A VTN can interact simultaneously with many VENs, while VENs are not allowed to interact directly among themselves. As in any interaction of the EI standard, parties may participate in many interactions concurrently. In this case, a node may implement both interfaces, playing the role of VTN in some interactions, and the role of VEN in others. In the common use case, VTNs are intended to be authoritative nodes, such as the DSO or the Micro-grid Operator, while VENs are intended to represent generation and curtailment resources. Thus, VTN nodes usually send DR signals and requests for information to VENs. The nodes that implement both interfaces are usually aggregators. Figure 2.6 illustrates how the combination of pairwise interactions of VTNs and VENs enables the implementation of complex structures. The graph could model a DR event initiated by the system operator, which in this case is represented by the node A. Initially, the event is sent to the first-level nodes B and C, which work 33 2. DISTRIBUTED ENERGY NETWORKS thus raising their price and making them more difficult to maintain. This condition is clearly undesirable, since these devices are intended to be installed massively. In particular, three important data services have constantly been proposed for the correct functioning of the Smart Grid: rDemand estimates: These are necessary in order that the system operator knows when curtailment events are necessary, and likewise nodes know how much demand they must shed or shift. To supply this type of service implies having databases that contain information about each user’s consumption throughout the year. rWeather forecasts: Consumption depends highly on factors such as atmospheric temperature. In winter, water-heaters and HVAC systems represent an important source of consumption, while in summer air conditioning systems are most important. Therefore, to obtain accurate demand estimates, it is necessary to have accurate weather forecasts. rEnergy prices: The demand for energy, as well as the reaction to DR events, may depend on the energy prices. If it is possible, users may be willing to configure their consumption level according to price levels. Multi-agent systems are a difficult matter. Although intelligent agents are continuously being proposed for the implementation of distributed management systems, the truth is that, in practice, developers and researches tend to choose more practical solutions for real cases. Actually, despite the high number of research studies that propose software agents for the management of distributed virtual environments such as grid computing and P2P networks, at the present time solutions based on intelligent agents are not widely adopted. In fact, the practical application of agency theory is mainly focused on the domain of processes and server applications, while solutions which connect agents with users are limited (see 3.1.2). This lack of success is partly due to the complexity that arises from solutions based on agents, and the absence of models adapted to the real habits of users, who are increasingly demanding transparent and simple solutions that avoid technological details. 40 2.5 Lessons learned from similar fields 2.5 Lessons learned from similar fields 2.5.1 Peer-to-peer networks In particular, Peer-to-peer (P2P) networks [ATS04] aim to facilitate the exchange of resources between peers that, in theory, can be considered equals in terms of functionality. Their implementation has traditionally been focused on exchanging files, Napster,Gnutella and eDonkey being the best-known cases. All these networks include ancillary services that facilitate processes such as the interconnection of peers, the search for resources and the classification of contents. One factor that has proven decisive in the success of P2P networks is the topology (Figure 2.10). In this regard, there are three main options [Sch01]: rCentralized: This is the simplest scheme. Peers connect to centralized servers in order to access special functionalities. Among them are the search for resources, and user registration. Note that resources (files in most of the cases) are still exchanged directly between peers. The most representative example of this type of network is Napster. rDecentralized: All services, including the registration of new peers and the search for contents, can be carried out in each node. The implementation of these tasks is performed by sending request messages to the closest neighbors. From there, messages are recursively propagated until reaching a maximum iteration depth. The most representative network using this topology is Gnutella. rHybrid: This topology uses special nodes, called supernodes, that, for a limited section of the network, work out as entry points for users, indexing all their contents, and processing search requests. Supernodes are connected between themselves so that they can exchange information about the network and its contents. Note that, by sharing this information, supernodes are able to search for contents in the whole network. eDonkey is the most best-known implementation of this type of networks. The main drawback of the centralized topology is having a single point of failure, thus being too vulnerable to attacks and prosecution. As a case in point, it took only one day for the authorities to shut down Napster. Alternatively, there are 41 2. DISTRIBUTED ENERGY NETWORKS Centralized Decentralized Hybrid Figure 2.10: Main types of P2P networks. decentralized networks. However, the lack of a full index of available resources in the latter type has proven to make the searching process ineffective. In addition, these types of networks have proven to be hard to scale and maintain. In order to overcome these drawbacks, in networks such as Gnutella, nodes have emerged that are able to handle large numbers of connections and take on special functionalities on behalf of other nodes, such as finding resources. In practice, this approach makes Gnutella resemble hybrid networks, since special nodes behave much like supernodes. As a matter of fact, as shown in Figure 2.11, the actual topology of Gnutella is similar to a hybrid one, thus reinforcing the thesis of the latter approach. Actually, the hybrid topology is the one most widely used in practice, having many successful implementations, and also having proven to be the most efficient for exchanging resources. Its success relies largely on the assumption that all nodes are not equal: they are not actually peers, since in practice they have different characteristics, including computing power, bandwidth and quality of service. Therefore, it is natural that, in order to improve the overall system performance, there are some nodes that have to take more responsibilities than others. As for the Smart Grid, since the OASIS and NIST standards leave the door open to the installation of nodes with different profiles, it is advisable to study the benefits that may arise from the installation of nodes which are more powerful than those envisioned so far. 42 2.5 Lessons learned from similar fields Figure 2.11: Structural pattern of the Gnutella network. 2.5.2 Grid computing The aim of a computational grid is to create the image of a powerful computer through the interconnection of heterogeneous interconnected systems [FKT01]. This goal is very similar to that pursued by the Smart Grid, which strives to build a large generation system from the joint production of distributed, small energy resources. The first computational grids were ad-hoc solutions implemented from scratch. As a result, these were difficult to replicate in other target environments. The second generation was characterized by the creation of frameworks and tools that facilitated the implementation of computational grids, as well as an application ecosystem around them. Among the best-known frameworks were Legion [GWTLT97], Condor [TTL05] and Gridbus Toolkit [FK97]. However, early versions of these frameworks were monolithic, hard to scale and with little capacity to connect to external middleware layers. As a result, many island grids emerged in the US with architectures that must be defined as too specific as they were principally intended to finding practical solutions, neglecting important features such as scalability and interoperability. As a matter of fact, in reference to the roughness of the solutions, this stage is commonly described as “big irons and fat pipes” [GDR04]. The third generation of computational grids was born embracing the services orientation [Fos05]. This replaced the concept of resource with that of service, with the result that nodes of the grid actually offer and consume services that mask resources. Also, in order to increase interoperability, this new generation of com43 2. DISTRIBUTED ENERGY NETWORKS putational grids promotes the adoption of open standards. In this regard, the Globus Toolkit team and IBM contributed to the creation of Open Grid Services Architecture (OGSA), which is considered the de facto standard for the implementation of computational grids [FKT04]. In addition, as occurs in the Smart Grid, there is a school of thought that touts the virtues of using market-based mechanisms as management system. This approach is known as grid economy [BAV05], and proposes to switch to a model in which clients are autonomous entities who try to defend their own interests and goals through negotiation systems. This approach can be defined as user-centric, while the traditional model that looks to improving the global efficiency of the system is defined as system-centric. Compared to other technological fields that face the challenge of sharing and coordinating distributed resources, the grid computing community has been praised for its ability to achieve valid solutions. Although these solutions are often described as being rigid, it is also true that a direct approach has proven to be effective for achieving operative systems. The grid computing community has also studied the benefit of integrating software agents throughout the architecture [FJK04]. These are mainly proposed to provide flexibility and automate the management tasks, and act on behalf of users in market-based environments. However, the truth is that the presence of software agents in real systems is scarce, possibly because this type of solution adds a new level of complexity in software development, requiring knowledge of the field of artificial intelligence. In conclusion, the most important lessons learned from the grid computing experience are to: i. Embrace a services-oriented approach; ii. Intensify efforts dedicated to the definition and adoption of standards; iii. Reach a compromise over the need to find practical solutions; and iv. Devote more research efforts to achieving solutions based on software agents. 44 2.5 Lessons learned from similar fields 2.5.3 Virtual organizations In the business world, enterprises are also experiencing challenges that, in essence, are similar to those addressed by the computational grids and the Smart Grid. In particular, due to the growing trend towards specialization, business opportunities are increasingly fulfilled by temporary coalitions of enterprises that cooperate and share knowledge, resources and competences. This type of coalition is known as Virtual Enterprise (VE); a concept that usually arises when individual enterprises do not have the resources to achieve a specific goal acting on their own, or to do so profitably [MFPF01]. In order to take advantage of this vision and learn from the experience gained in this field so far, the second generation of computational grids started using the concept of Virtual Organization (VO), which aims to apply the concept of VE in environments that are essentially technological. Specifically, VOs are defined as temporary coalitions of distributed entities that collaborate and share resources to meet global and individual goals making intensive use of new information and communication technologies [NT07]. This approach arose in response to environments that are increasingly changing, agile and distributed, in which partners look for alliances that help them to achieve new goals, increase their competitiveness and reduce risks. Societies that are classified as VOs commonly share the following properties: rThey are specifically created for meeting a temporal business opportunity. rThey have a strong dependence on ICT. rThey do not require the partners to be collocated in order to carry out the assigned tasks. rThey are capable of adapting their structures to the needs of the context. rThey make an intensive use of cooperation mechanisms in order to achieve the defined goals. rThey are composed of autonomous entities that, besides pursuing global goals, strive to meet their own goals. Distributed energy networks, particularly when the management system is based on a distributed mechanism, meet these properties: their activity is envisioned as being supported by multiple autonomous units that cooperate in order to guarantee global goals (such as reliability and security of supply) and particular goals 45 2. DISTRIBUTED ENERGY NETWORKS (such as exchanging energy in a profitable way) by using the latest information and communication technologies. Therefore, distributed energy environments can be conceptually considered VOs, thus being in good position to learn from important undertakings in this field in recent years. However, in difference to the attention paid to grid computing, the literature seems to have ignored this important example. Specifically, the experience of VOs warns us that the automation of the entire life cycle of a VO is a complex task, which in practice requires specific solutions, and usually the intervention of human operators. This experience therefore shows that, despite the remarkable progress in computer technology, the creation of distributed virtual environments inhabited by autonomous entities is a difficult task which at present requires the implementation of ad-hoc solutions, even the supervision of human actors. In particular, the main challenge faced by VOs is the implementation of the creation stage [CM06], which must accomplish tasks such as: opportunity identification, action plan designing, suitable partners selection and tasks assignation. In addition, the Smart Grid poses typical challenges of open and reactive environments, such as communication and coordination between heterogeneous agents, and the implementation of trust mechanisms that help to avoid the risk that the presence of agents with unknown reputation creates. To overcome the complexity of the creation stage, VO researches have proposed creating a specialized environment called Virtual Breeding Environment (VBE), which is a stable limited cluster composed of well-known and capable partners that maintain long-term relationships [CMA03]. A VBE imposes on the partners the use of common technological infrastructures, ontologies, communication protocols and social conventions. Furthermore, a VBE authority certifies the skills of each partner, thus proving that it is suitable for being part of VOs in the future. All these conditions are intended to configure a safe, reliable and normalized environment that facilitates the dynamic installation of VOs. As for its drawbacks, it must be noted that a VBE is a semi-closed environment that, to some extent, lacks flexibility and restricts participation. NIST and OASIS standards cover some of the features required to VBEs. They define the architecture, the communication protocols and the technologies to be used, including all issues related to the security of the network. However, in order to achieve a fully operative system based on autonomous, self-interested agents, 46 2.5 Lessons learned from similar fields it is still necessary to establish the negotiation algorithms and social conventions through which agents must behave under normal and exceptional situations. In this regard, VBE experience shows that the more defined and limited the context is, the easier it is to implement an effective solution. Here, the challenge of the Smart Grid community is to establish a well-defined framework that also preserves the autonomy of software agents and promotes the participation. 47 En mi largo trato con el mar aprend´ ı que lo m´ as natural del mundo son los cambios. “La obra”, Adolfo Bioy Casares. Qui´ en sabe. A m´ ı me parece que los peces ya no quieren salir de la pecera, casi nunca tocan el vidrio con la nariz [. . . ] Chestov hab´ ıa hablado de peceras con un tabique m´ ovil que en un momento dado pod´ ıa sacarse sin que el pez habituado al compartimento se decidiera jam´ as a pasar al otro lado. Llegar hasta un punto del agua, girar, volverse, sin saber que ya no hay obst´ aculo, que bastar´ ıa seguir avanzando. “Rayuela”, Julio Cort´ azar. CHAPTER 3 Agency Services As described in Chapter 2, the energy management of DENs is often envisioned in the form of a multi-agent system. Under this approach, end-nodes are represented by software agents in local energy markets in which they plan and conduct the action of the production and consumption units. The origin of this approach is based on the theoretical properties of intelligent agents, which are formally described as entities capable of providing autonomy, intelligence and reactivity in distributed environments. However, the proposals based on this idea have given little attention to the fact that intelligent agents, contrary to the enormous expectations built up about them for more than ten years now, have actually had little practical impact on technological areas that also seemed suitable for them. Some remarkable examples of these areas are computational grids, P2P networks and the multiple types of virtual societies created around Internet. In this light, this chapter first discusses the limited success of intelligent agents in the practical field. To this end, the question “Where are all the intelligent agents?”, which was recently put to the community by an authority on the subject, is used as starting point. The truth is that the complexity of typical artificial intelligence solutions, together with the lack of knowledge on the subject, poses insurmountable barriers for teams facing multidisciplinary challenges. As a matter of fact, authors usually propose solutions in which customers must perform 49 3. AGENCY SERVICES To shed more light on the purpose of the AS model, an example based on eBay is illustrated. In particular, eBay can define interfaces through which external software agents can bid on offers, and receive information about standing bids and deadlines. In this case, ASPs authorized by eBay can be contracted by users in order to effectively automate their participation in the auctions, thus saving them from having to develop their own solutions. ASPs also mean a guarantee for eBay, since they may impose a minimum set of rules and social conventions that ensure the proper operation of the site. This example, where the business site is eBay and the virtual environments are auctions, can be easily applied to more challenging technological fields where software agents are called in to play an important role, such as grid computing and the Smart Grid. In these cases, in addition, a role such that played by the local agent gains importance because it has to apply the actions determined by the broker agent on the local resources. Note that nothing prevents the user from having more than one local agent assigned at the same time. Thus, a local agent can automatically inform the broker agent about the state of the resources, meanwhile the user may use another local agent installed in his/her mobile phone for both receiving information from the broker and, if necessary, sending it new directives. Therefore, the broker agent, apart from participating in virtual societies, can also work as a proxy agent able to communicate local agents with each other (Figure 3.2). The main stages through which clients go in the AS model are: rRegistration: The client registers with an ASP that has been previously certified as reliable by the target business site. The main aspects of the agreement are the duration of the service, the processes in which the client wants to participate, and the configuration of the broker agent that will represent the client. rConfiguration: If necessary, the client installs local agents in its devices and configures the brokering service through software applications. rExpiration: Once the contract expires, the ASP suspends the participation of the client in the virtual societies of the business site. The user can set the preferences of the brokering service through web interfaces or mobile applications, both provided by the ASP. This information is forwarded to the broker agent when it is instantiated. Thus, in settings with local resources, 56 3.3 Agency Services local agent local agent local agent broker agent Figure 3.2: Broker agent working as proxy of multiple local agents. there is no need for embedded interfaces in order that the user communicates with local agents and resources. Once the client has contracted the services of an ASP, its participation consists of three main stages: rInitiation: The business site informs the ASPs that a new business process has been initiated. Each ASP deploys a broker agent for each client. If necessary, the ASP automatically updates the local agents’ software. The broker agent tells the local agents a new negotiation process has begun and, if any, the local agents report on the status of the local resources. rExecution: Broker agent is registered with the virtual environment and, according to the state of resources and the user preferences, it interacts with other broker agents developing action plans, coordination tasks and negotiations. Throughout this process, the broker agent may periodically inform the local agents about its participation in the virtual environment. Moreover, when there are local resources, the broker agent transmits the actions to be applied on them. Also, the local agents inform the broker agent of new local events and new directives (defined by the user). rClose: The broker agent records the details of its participation in the virtual society, and tells the local agents that the process has been completed. 57 3. AGENCY SERVICES It is possible to build a simpler version of the AS model. Specifically, the roles of business site and ASP can be joined in a single node (Figure 3.3), so that both the virtual environments and the broker agents are provided by the same entity. Although in doing so some level of competence is lost, this solution still maintains useful features, since the ASP can still offer users the possibility of configuring how the broker agent must behave. Continuing the example based on eBay, in this simplified version of the AS model, eBay may provide software agents that users contract in order to automate their participation in auctions. In this case, eBay would simultaneously work as business site and ASP. In order not to lose the autonomy and independence that intelligent agents are supposed to provide, eBay may allow users to configure the behavior of the software agents through directives. Furthermore, eBay may offer advanced behaviors in exchange for more expensive rates. Local Agent Broker Agent Broker Agent ASP / Business Site Local Agent Cloud Client Local devices Virtual Environment Figure 3.3: Simplified version of the Agency Services model. 3.3.2 Technologies The aim of this section is to prove the technical feasibility of the proposal. To this end, actual technologies that address the major challenges of the AS model are presented. However, it is noted that using other technologies is also possible. The two main challenges that the AS model faces are the ability to: (i) conduct 58 3.3 Agency Services asynchronous, bidirectional dialogues between remote software agents; and (ii) dynamically deploy software agents in remote devices. Well-known technologies that successfully solve these challenges are: rThe Extensible Messaging and Presence Protocol (XMPP) for the communication between the broker and local agents. This is an instant messaging protocol [XMP] based on XML that supports secure communications. Although XMPP is usually associated with applications such as Jabber and Google Talk, it was actually designed for communication between agents, whether they are human or software. As a matter of fact, there are already solutions using XMPP to encapsulate and send FIPA messages [GPA02]. As for the infrastructure, XMPP needs an instant messaging server, which can be installed in the ASP infrastructure. rJava Network Launching Protocol (JNLP, [Ora00]) for transferring and launching the local agent from the ASP. JNLP is a protocol for downloading and launching remote Java applications. It is a mature and widely used technology that ensures the latest available version of the software package is launched. Furthermore, it uses digital certificates to guarantee the authenticity and integrity of the application. In general, the use of instant messaging protocols provides an easy and effective way to communicate remote software agents (as the interaction between broker and local agents requires), thus avoiding the need for using more complex mechanisms, such as those based on static IP addresses and web services. In particular, web services are not a feasible technology for this goal because it requires that one of the two nodes installs a web server, and does not provide asynchronous, bidirectional communications. On the other hand, JNLP ensures that the client can remotely install and launch local agents in a transparent manner, thus conserving the simplicity that characterizes the cloud computing model. Furthermore, both XMPP and JNLP consume few resources so that they can be used in embedded systems and modern devices, including mobile phones and tablets. The communication mechanism for the interaction of broker agents with virtual societies is defined by the business site and is transparent to the customers, as it is an issue taken on by the ASP. The mechanism can be based on specific agent-based 59 3. AGENCY SERVICES frameworks. In any case, this point does not represent a technological risk as both business sites and ASPs are supposed to be technological companies with sufficient knowledge and resources. 3.3.3 Benefits and virtues One of the major goals of the AS model is to answer the challenges faced by intelligent agents in its quest to become a more accessible technology. In this regard, as described, when software agents (not just specific functions of them) are offered as cloud services: i. The complexity that entails developing software agents able to participate in virtual environments is delegated to third-party services providers. In addition, the need for updating agents in order to improve their performance or to adapt them to both the interface and social conventions of the target virtual environment is responsibility of services providers. ii. Users can contract and interact with agents using any device with Internet connection and thus participate in virtual societies without hindering mobility. iii. Users can pay for specific capabilities, thus determining the scope and skills that broker agents can develop in virtual societies. Revisiting the lessons learned from fields facing similar challenges (see Section 2.5), it can be noted that the AS model replicates many virtues of previous successful solutions. In particular: rASPs contribute to building virtual breeding environments (see Section 2.5.3, page 45). As commented, a business site evaluates the capabilities of the ASPs wanting to participate in future business opportunities. This condition ensures that all software agents deployed by the ASPs meet behavioral conditions and share both common ontologies and communication technologies. In addition, ASPs do not suffer from lack of participation, which is a restriction traditionally attributed to the solutions based on the VBE concept. On the contrary, the ASP role is designed to instantiate thousands of nodes, being all of them considered valid. Therefore, ASPs help to normalize the environment, while preserve the autonomy of the customers and promote their participation. 60 3.3 Agency Services rAs shown in Figure 3.1, solutions based on ASPs provide an architectonic structure very similar to that of hybrid P2P networks (Figure 2.10, page 42), which are characterized by the concept of supernode. In practice, ASPs are supernodes that principally develop advanced brokering functions on behalf of other nodes. In addition, they can provide other interesting behaviors such as accessing third-party services to obtain and process information that may be necessary for the broker agents and the local nodes. rMany of the conclusions reached by the community devoted to grid computing are actually part of the agency services foundation. On one hand, the AS model is built on the principles of service orientation and standardized communications, which is precisely the approach adopted by the latest grid computing development frameworks in order to improve interoperability. On the other hand, the AS model aims to achieve a compromise between using advanced mechanisms based on intelligent agents and delegating the most complex part of this technology to specialized companies, as well as to conduct the process in controlled environments. This compromise shares many characteristics with the practical vision that has brought grid computing to achieve operational solutions (see Section 2.5.2, page 43). Furthermore, in general, compared to traditional multi-agent systems, the AS model offers advantages in the following aspects: rParticipation: The transfer of the most complex tasks to the cloud, together with the simplicity offered to the clients, makes it easier to automate the customers’ participation in modern virtual societies. rScalability: Focusing the most complex technologies in companies that are intended to be powerful and specialized, brings out advantages of economies of scale, so that the solution can grow with little effort. rFlexibility: The client can participate in more than one type of virtual society with no need for additional efforts. Furthermore, the client can choose the provider that best fits its needs. rReliability: The model permits criteria to be established for the ASPs so that the broker agents’ activity does not endanger the stability of the system due to selfish or anti-social behaviors. 61 3. AGENCY SERVICES rCompetitiveness: The nature of interactions, clearly oriented to facilitate the implementation of competitive models, helps create exchanges based on market mechanisms. 3.3.4 In relation to intelligent agents theory 3.3.4.1 Intelligent agents and services-orientation In the world of software, services-orientation practically means web services, which are pieces of business logic accessible via standard Internet protocols. Their aim is that remote clients can build robust and complex structures based on loosely coupled and heterogeneous functionalities. Although the technology has been widely accepted for client-server communications, its specification suffer from characteristics that limit Internet options. The most prominent are the need to know in advance the definition of services to invoke, the absence of semantic information and the use of non-persistent communications which are always based on the request-response pattern. According to W3C specifications, software agents are a necessary component to articulate the web services infrastructure [Bea04]:“software agents are the running programs that drive web service, both to implement and to access them as computational resources that act on behalf of a person or organisation”. In line with this approach, agents have been proposed to be part of the business logic of web services with the aim of providing intelligence and reactivity to their behaviors, filtering requests and searching for sources of information [CL07]. Furthermore, mechanisms have been proposed in order for agents and services can interact with each other in a transparent manner [GC04]. Thus, agents may exploit functionalities offered by both other agents and services available in the context. However, in practice the absence of semantic information has significantly limited the applicability of these lines of work. In response, the community has been working since 2001 to transform Internet into a semantic web by means of ontologies and adopting standards for the description of resources. These technologies aim to enable software agents to reason about properties and functionalities of web resources and services [SBLH06]. In this subject, agents are normally proposed for orchestrating services and searching those that satisfy the goals of the client. 62 3.3 Agency Services As shown, efforts that relate intelligent agents and web services generally aim to improve the functionality and accessibility of services. However, there are no proposals in the opposite direction: assessing the success of web services solutions in order to overcome the problems which hinder the popularization of software agents. The Agency Services model responds to this novel vision: it uses serviceorientation ideas to create a new model that facilitates user access to the intelligent agents technology. 3.3.4.2 Agents as intermediaries In intelligent agents theory many efforts have been devoted to developing the concept of intermediary agent, also known as middle agent. The objective of this type of agent is to assist in communication tasks in order to facilitate exchanges between requesters and providers. Requesters are agents with objectives they want to be achieved by other agents, whereas providers are agents that fulfill objectives on behalf of other agents. The presence of middle agents is especially valuable in distributed, open environments, where they constitute a mechanism to overcome the heterogeneity between partners. Although there are several roles for middle agents, three of them are mainly recognized [KS01]: rMatchmaker: The functionality of a matchmaker agent corresponds to that of the yellow pages. Providers register their skills in the matchmaker agent. Requesters consult it in order to identify those providers that are capable of fulfilling their objectives. If the activity of the matchmaker is successful, the requester and the provider then enter into a new dialogue. rBlackboard: The blackboard agent registers petitions corresponding to tasks to be done. Specifically, requesters send their petitions to the blackboard, whereas providers ask this for petitions they can fulfill. In addition, the blackboard agent is commonly proposed to keep track of the requests and their respective answers so that other agents can easily extract information later. rBrokering: The aim of the broker agents is act on behalf of the requesters. It negotiates the requesters’ petitions with the providers, and finally conducts the results to the requester. Therefore, in the models dominated by a broker, there is no direct interaction between requesters and providers. 63 3. AGENCY SERVICES In the FIPA protocols there is one specially dedicated to the interactions mediated by broker agents [FIP02a]. In short, the agent that initiates the interaction (initiator) delegates the accomplishment of a task to a broker. After sending the request, the initiator plays no further part in the process. In general, the FIPA specification proposes neither client autonomy nor the need to relieve the client of the technical details. The Agency Services model is clearly based on the brokering role. The novelty of the model is that it delegates this functionality to the cloud so that broker agents are hired and work as a cloud service. Of course, the proposal also details and solves all the issues that arise as a result of externalizing the brokering role. 3.4 Agency Services for the Smart Grid 3.4.1 ASPs for the Energy Management (ASPEMs) The architecture proposed for the Smart Grid in the OASIS and NIST standards leaves the door open to the installation of nodes with different profiles. In the particular case of OpenADR, the first version of the standard [PAG+09] considered: (i)simple nodes, which automatically apply the DR signals they receive; and (ii)smart nodes, which usually work as aggregators of simple nodes, being able to process and transform the received signals. In this regard, output signals of smart nodes are usually designed to achieve the same result as the input signals, but respecting internal conditions of the sub-section managed by the node, including preferences and requirements of customers. Despite their advanced behavior, smart nodes cannot be considered as powerful as supernodes in P2P networks or ASPs in the AS model. Therefore, given that the AS model inherits many advantages of the cloud computing paradigm and replicates the virtues of existent successful solutions for similar environments (such as P2P networks), it is advisable to study the benefits that may arise from installing nodes with comparable characteristics to those of ASPs in distributed energy networks. In response to this opportunity, this research studies the installation of Agency Services Provider for the Energy Management (ASPEMs), which is introduced 64 3.4 Agency Services for the Smart Grid as a type of node capable of adding intelligent management behaviors and providing advanced data services to the electrical grid’s customers. Like aggregators, ASPEMs are nodes that implement both interfaces VTN and VEN simultaneously. What highly distinguishes an ASPEM of an aggregator (or a smart node in the case of DR architectures) is the manner in which incoming events are processed: instead of redirecting the events directly to the leaf nodes, or distributing them according to predefined criteria, ASPEMs are intended to providing advanced functionalities, including the ability to instantiate energy markets. In this regard, depending on the autonomy of users to defend their interests, two approaches are possible: rDistributed mechanism: The broker agents coordinate or negotiate between themselves the signals they will send to the customers. This approach allows the ASPEMs to run internal energy markets in which broker agents participate according to the preferences configured by the customers. As a result of negotiations, the input signal is translated into new sets of commands to be sent through the VTN interface to clients. rCentralized mechanism: The ASPEM runs an intelligent algorithm that decides which signals must be sent to each customer. In making the decision, the clearing algorithm can also consider the users’ preferences. Under this approach, direct interaction between broker agents may be unnecessary. Certainly, the most novel approach is that based on distributed mechanisms, since it allows responding to the incoming signals using markets. One of the main goals of the Agency Services model is to simplify the infrastructure of the client by delegating the complex and advanced behaviors to entities in the cloud. Applying this condition to the Smart Grid and the OpenADR standard means that end-nodes, which are typically users’ facilities, may adopt the simplest profile of the standard (i.e., profile 2.0a), but still enjoying part of the advantages of the most sophisticated ones (i.e., profiles 2.0b and 2.0c) thanks to the action of ASPEMs and broker agents. For instance, this capability would permit converting signals of type delta (those that specify the amount to be curtailed) into sets of signals of type simple, which are restricted to using the values: normal,moderate, high and critical (see Section 2.3.2, page 34). This conversion can be done so that 65 Escucha. Atiende. Vamos a realizar juntos el escrutinio de la escritura. Te ense˜ nar´ e el dif´ ıcil arte de la ciencia escriptural que no es, como crees, el arte de la floraci´ on de los rasgos sino de la desfloraci´ on de los signos. “Yo el Supremo”, Augusto Roa Bastos. CHAPTER 4 Review of the agent-based algorithms for DENs management The previous chapter introduced an architectonic solution aimed at facilitating the use of software agents in large distributed environments such as the Smart Grid. This chapter, in order to provide a complete solution, is devoted to identifying algorithmic solutions which use software agents for the management of DENs. The extensive literature devoted to solving similar problems leads us first to study the state-of-the-art, which gives the opportunity to harness valuable insight from existing proposals and, not least, contribute to their realization and improvement. However, at the present moment, there are no reviews dedicated to the assessment of agent-based algorithms for DENs management. The text of this chapter fills this gap. In particular, in order to fully exploit the capacity of the Agency Services model, the following study focuses on research that facilitates the implementation of the SDM model (see Section 2.2.2, page 28), so it is principally centered on works based on market mechanisms. First, this chapter characterizes energy markets by describing all features and conditions that algorithms designed to implement efficient energy management sys73 4. REVIEW OF THE AGENT-BASED ALGORITHMS FOR DENS MANAGEMENT tems must satisfy. Secondly, the text proceeds with the presentation and review of algorithms that, in principle, have been designed to implement management systems based on the SDM concept. With the aim of drawing useful conclusions, the algorithms are classified according to the properties required by energy markets. This classification serves as starting point for a discussion that will provide understanding of their suitability, advantages and weaknesses, paying particular attention to their completeness and efficiency. This review of the state-of-the-art ends up remarking on the most promising studies and pointing out the aspects that need to be reinforced in future research. In addition, as this work is closely related to artificial intelligence, this review includes a section on typical techniques used in this research field which are commonly proposed for covering ancillary tasks. 4.1 Characteristics of energy markets In energy markets the exchanged good is electrical energy, and the participants are software agents that make offers for producing and consuming it on behalf of customers. Despite lessons learned in electronic commerce, energy networks have special features that make energy markets especially difficult to manage: 1. Supply and demand must be balanced continuously in order to ensure the proper operation of the network. 2. Energy is not a good that can be stored on a large scale, so all the energy that cannot be consumed at the moment has to be discarded. 3. Supply and demand depend on uncertain factors and therefore it is necessary to work with forecasts and estimates. 4. Reactivity of consumers and producers is limited and slow. In addition, the need to ensure efficient use of resources and guarantee that users can satisfy their demand without excessive risk-taking, make that energy markets are rather difficult to implement. Specifically, fully functioning energy markets are: rMulti-unit: Consumers and producers can negotiate a variable amount of energy, so more than one unit of the good can be exchanged. In this case, bids are usually expressed in form of linear piece-wise functions [DJ03, SS01] (Figure 4.1), 74 4.1 Characteristics of energy markets in which price increases in relation to the amount; while the clearing price is determined by the amount of energy exchanged. rMulti-item: Energy markets are fragmented into time slots. In practice, each slot is a market item that can be negotiated by the participants. rCombinatorial with complementary goods: This refers to the support of bids that include groups of items that must be accepted or rejected as a whole. In the case of energy markets, it refers to the possibility of submitting bids that span multiple consecutive time slots. rCombinatorial with supplementary goods: This refers to the possibility of making bids including several groups of items, so that only one of them can be accepted. In energy markets, this feature means that a customer can define multiple periods of time in which a specific amount of load or generation can be accepted. generation price demand price Figure 4.1: Linear piece-wise functions that define the behavior of the generation and consumption of energy. Supporting combinatorial bids, despite the complexity that it entails, is an important requisite of energy markets. For instance, it is usually necessary that generation devices such as oil-based engines have to be active during a minimum period of time to be profitable and efficient. Likewise, some types of loads, such as washing machines and dishwashers, may need to span their activity during multiple consecutive time slots in order to finish their work. In these cases, if submitting bids for complementary goods is not supported, customers have to send separate bids for each time slot, which means the customer must risk that not all bids are not 75 4. REVIEW OF THE AGENT-BASED ALGORITHMS FOR DENS MANAGEMENT accepted or rejected jointly. On the other hand, bids of supplementary items allow that devices such as washing machines and water heaters can define disjoint sets of time slots in which their demand can be supplied, thus allowing the system to shift part of the demand at peak times, and giving flexibility to the providers. The importance of combinatorial bids, however, is not reflected in the state of the art, which usually defines energy markets without considering these properties. Markets that meet all the above characteristics are very difficult to resolve. As a matter of fact, in medium to large sized environments, the search for an optimal solution is considered a NP-Hard problem [RPH98, San02]. As a result, in practice, solutions are based on simplified models, so that heuristics are used to accelerate the search for solutions, and, when possible, particularities of the case under study are exploited. Furthermore, the complexity of energy markets is increased by the properties that are expected from any clearing algorithm that operates in the context of the Smart Grid, which should have: rResponsiveness: In distributed energy environments, planning is short-term, using time horizons that can range from fifteen minutes to few hours, so the algorithm must be able to quickly find a solution. rReliability: The solutions proposed by the algorithm must be able to meet goals imposed by the SO, such as energy quality and supply reliability. rScalability: In contexts typical of the Smart Grid, the number of nodes can grow significantly, so it is important that the performance of the algorithm, as well as the quality of the solutions, scale successfully. rAutonomy: The solution provided by the algorithm must strive to meet the preferences of users. The system goals may conflict with individual preferences, so the algorithm should also be able to find a workable compromise. rReactivity: In the electrical grid, planning is performed on the basis of forecasts and estimates, so unbalances between supply and demand is a frequent reality. Therefore, the clearing algorithm must be able to react to unexpected conditions. rFlexibility: The algorithm must be able to adapt itself to unexpected events and eventual orders from the SO. 76 4.2 Algorithms Despite all the advantages that the involvement of software agents promises, all the above-mentioned characteristics of energy markets, including the presence of combinatorial bids, make developing a fully effective solution a complicated task. 4.2 Algorithms This section reviews representative works that describe solutions based on software agents for the management of distributed energy areas such as energy cells and micro-grids. Two main categories of solutions are considered: (i) those that propose micro-energy markets based on the SDM model; and (ii) those that are intended to providing ancillary services and manage emergencies. In both cases, the review is mainly devoted to techniques that come from the artificial intelligence field and electronic commerce. 4.2.1 Supply-demand matching 4.2.1.1 Double-sided auctions In ordinary auctions, offers from all agents are collected by a central authority called the auctioneer, who is responsible for determining which are the winning offers and how the resources are distributed among them. When both producers and consumers can submit bids and offers, auctions are said to be double-sided or twosided auctions [FR93]. Even though this approach seems to be suitable for solving most of the problems, in practice it is hard to implement an algorithm that, after evaluating all bids and offers, determines which resources are assigned to which entities. In this regard, the most basic implementation is to define a clearing price in which all offers that exceed it are accepted. This solution, despite its simplicity, has shown to be valid and speedy for environments that are not expected to grow beyond projected boundaries. Focusing on the literature of the Smart Grid, Dimeas and Hatziargyriou (2004, [DH04]) uses English auctions to distribute generation resources between consumers in micro-grids. In this work, energy markets are held for 15-minute periods. Producers and consumers work, respectively, as auctioneers and bidders who compete for blocks of energy. To ensure competitive prices, a Grid Operator agent 77 4. REVIEW OF THE AGENT-BASED ALGORITHMS FOR DENS MANAGEMENT announces the prices at which the main grid is willing to sell and purchase energy. Furthermore, the time limit for negotiations is 3 minutes. Ramachandran et al. (2011, [RSEC11]) enriches this work by using a mechanism that minimizes the fuel cost on the generation side, and also implements strategies for handling the players’ risk attitude at the trading period. Specifically, in order to optimize the generation costs, the authors have developed a novel algorithm that combines techniques from Artificial Immune Systems (AIS) and Particle Swarm Optimization (PSO). Both proposals provide detailed experiments that simulate the operation of small micro-grids. In both cases, the participation of software agents that exchange energy blocks by using double-sided auctions has proven to bring benefits. However, it is important to note that none of the algorithms supports the negotiation of multiple items at the same time: bids and offers are always intended to cover the period ahead. Therefore, for larger and more complex scenarios of the Smart Grid, it is necessary to enable the algorithms to handle multi-item and combinatorial bids. Moreover, it is also necessary to point out that, in general, double-sided auctions scale very poorly when these conditions are considered, as is the case when the number of nodes grows, rapidly resulting in NP-Hard problems. 4.2.1.2 Parallel auctions When the complexity is too high, parallel auctions offer an attractive alternative. In this scheme, each seller has the option of holding its own auction, so many auctions may be running simultaneously. Although sellers may accept combinatorial bids, they usually occur in the context of single-sided auctions that are significantly simpler and faster than the double-sided option. On the other hand, the main drawbacks of parallel auctions are: rUsing distributed local clearing algorithms to obtain the solution causes loss of global insight and, consequently, the capacity to obtain optimal solutions. rRequiring the software agents to hold and manage their own auctions may be a demanding feature that can affect the level of participation. rSending the same bid to more than one auction implies that the bidder is actually overbooking his/her capacity, which may lead to solutions that, in practice, cannot be implemented. Thus, overbooking entails an important risk for the 78 4.2 Algorithms security and reliability of the electrical grid. On the other hand, when overbooking is forbidden, a specific block of energy can only be offered to a single auction, with the result that many of those blocks can remain unassigned at the end of the process, thus leading to a noticeable waste of scarce resources. Despite these disadvantages, parallel auctions may be explicitly requested by the players to gain autonomy and control over the decision process. Amin and Ballard (2000, [AB00]) presents a proof of concept based on parallel auctions. However, the auctions used in the study do not support multi-unit and multi-item bids. On the other hand, Penya and Jennings (2005, [PJ05]) introduces the algorithm mPJ, which supports bids that are multi-unit, multi-item and combinatorial. The main characteristics of mPJ are: rIn order that generation follows demand (demand-driven-supply), as electrical networks require, the market is based on reverse auctions. That is, auctions are held by consumers, while producers submit bids for selling generation capacity. Therefore, contrary to the classical approach, the entity that wants to acquire the good holds the auction. rBuyers make bids through linear piece-wise functions [SS01, DJ03] like the one depicted in Figure 4.1. rAuctions are non-iterative, so consumers have to determine the winner after the first round of bids. rThe implementation is developed according to the Vickrey formula [Vic61], so producers are encouraged to value energy according to their real needs. mPJ is a brute force algorithm that shows good performance when combinatorial bids are omitted. In the other case, due to the large number of combinations that may be involved, the performance of the algorithm drops noticeably. However, as shown by the authors, in real energy markets only part of the whole spectrum of possible combinatorial bids is useful. In practice, agents will be preferentially interested in packages of consecutive items since they allow conducting consumption and generation actions that span multiple time slots without taking risks. By limiting the set of possible combinations to the sets of items that are principally needed, the performance of the algorithm remains good and users do not lose significant action capacity. Despite mPJ being one of the most promising mecha79 4. REVIEW OF THE AGENT-BASED ALGORITHMS FOR DENS MANAGEMENT nisms for implementing energy markets based on software agents, its performance has only been tested through theoretical tests that are not focused on distributed energy environments, but simply on proving its capacity to scale. Therefore, it is still necessary to simulate mPJ in scenarios typical of the Smart Grid. 4.2.1.3 Price-oriented search of equilibrium This is the most common approach in classical markets. Parties express their preferences through price functions, so energy price is the factor that determines the amount of energy that each party will consume and produce. In this approach, the goal of the clearing algorithm is to find the price that optimizes the resources assignment. The main drawback of searching in the space of possible prices is that the optimal solution cannot be obtained analytically, which makes the process timeconsuming, using large amounts of computational resources. As a result, to tackle it, many works use the price resulting from matching the offer and demand aggregated functions, which is commonly known as equilibrium price, as it is supposed to result in the quantity of supply being equal to the quantity of demand. Furthermore, if the market needs to be corrected, this approach allows that the authority can change resources distribution by simply altering price signals. Arnheiter (2000, [Arn00]) describes a solution that uses price-oriented search of equilibrium to manage energy systems. However, this preliminary work does not support multi-unit and multi-item bids. Moreover, agents cannot use utility functions. Logenthiran et al. (2008, [LSW08]) implements a pool market that operates in the same manner as typical wholesale energy markets. The central agent represents the pool, which, after receiving all buying bids and selling offers from loads and generators, is in charge of determining the clearing price. This price corresponds to the highest accepted selling (generation) offer. As in the wholesale pool markets, all accepted generation bids are paid the clearing price, while loads are required to pay at that price. In general, pool markets are not intended to cover the features described in Section 4.1. 80 4.2 Algorithms 4.2.1.4 Resource-oriented search of equilibrium The optimal solution can also be sought in the space of possible resource allocations. In this case, the algorithm searches for the allocation of resources that yields the equilibrium price. Specifically, it is said that the system is in equilibrium if, after all resources have been assigned, all agents are willing to pay the same price for a specific good. The system is therefore in equilibrium if it finds a Pareto optimal distribution of the resources. Compared with the price-oriented approach, this model has the advantage that agents’ demand can be obtained analytically from utility functions, which significantly accelerates the searching process. Ygge and Akkermans (1996, [YA96]) uses an algorithm based on this approach in order to manage distributed loads. The algorithm does not support multiitem bids, so the solution is not suitable for implementing environments driven by supply-demand matching. This problem is overcome in Ygge and Akkermans (2000, [YA00]), where the authors present the algorithm COTREE. This describes an environment where software agents send their utility functions to a central node that uses Newton-Raphson to find a Pareto optimal solution. COTREE assumes an architecture founded on hierarchical cells [KWK05], which, although standards are not explicitly considered in the work, is compatible with the architecture proposed by the OASIS Energy Interoperation standard. COTREE was implemented and tested as part of the CRISP EU project [ECN06]. The tests show that COTREE is fast and scales well, being able to find an equilibrium solution in less than one second for scenarios with hundreds of nodes. Also, simulations show that COTREE is effective for smoothing demand curves. However, the algorithm has the following handicaps: rCombinatorial auctions are not supported. Accordingly, nodes cannot submit bids that span more than one time slot, which is a significant restriction for energy units. rAny change in the agents’ plans requires restarting the process, since a new equilibrium solution is necessary. It must be noted that the restoration involves all the nodes. In general, the latter drawback is attributable to all solutions based on equilibrium search, since the solution that clears the market is calculated from the utility 81 4. REVIEW OF THE AGENT-BASED ALGORITHMS FOR DENS MANAGEMENT 4.3 Discussion The purpose of this section is to identify the most promising mechanisms, compare them, discuss their advantages, and propose new lines of research. To this end, studies are classified according to the properties required by the energy markets. In addition, information is given about how the studies have been tested, and whether it is possible or not to reproduce their experiments. Table 4.1 describes the characteristics used to classify the works, and Tables 4.2 and 4.3 show them classified according to different sets of those characteristics. Table 4.2 shows that most works overlook all the challenges that distributed energy markets are expected to face. In particular, most of the algorithms do not support or do not even consider combinatorial bids. As explained, these types of bids are essential in order that customers can plan actions that cover multiple time slots, which is a usual requirement in energy contexts. As a matter of fact, only [CA07] (Carlsson and Andersson, 2007) and [PJ05] (Penya and Jennings, 2005) support this property in its two facets, including packages of complementary and supplementary bids. However, these two works are based on rather different approaches: the algorithm CONSEC presented in [CA07] looks for the equilibrium price by using a centralized scheme; while the algorithm mPJ described in [PJ05] proposes that each consumer holds its own auction, thus leading to a complete distributed solution based on software agents. The mechanism described in [CA07] suffers from drawbacks typical of centralized strategies and those based on equilibrium search (see Section 4.2.1.4). Furthermore, mPJ is more flexible than CONSEC in building combinatorial bids, as these can be made up of disjoint items. Table 4.2 also shows that auctions are the method most often considered for implementing agent-based energy markets. The reason is twofold: (i) auctions are flexible enough to meet all requirements of energy markets; and (ii) auctions is a typical approach of the community devoted to developing multi-agent systems because it is distributed and ensures the autonomy of agents in decision-making. However, theory says that obtaining an optimal solution by using bilateral auctions becomes a NP-Hard problem in large environments, so parallel auctions is, in principle, the only valid method for accomplishing this task. Therefore, in order 88 4.3 Discussion to check the suitability of the solutions proposed in [DH04] (Dimeas and Hatziargyriou, 2004) and [AB00] (Amin and Ballard, 2000), it is still necessary to conduct simulations with realistic scenarios considering all requirements. For its part, the solution based on parallel auctions proposed in [PJ05] has still to be simulated in scenarios typical of the Smart Grid. In this particular case, besides checking the efficiency of the algorithm mPJ in a realistic context, it is also necessary to study how typical drawbacks of parallel auctions may affect the capacity of the algorithm to balance the network. In particular, the best-known drawbacks of parallel auctions are: (i) poor distribution of buyers to the sellers [Hop08]; and (ii) the risk of buyers overbooking their capacity or, on the contrary, the business opportunities they may lose when they adopt overly conservative strategies. In practice, the only works that have been simulated by using an electrical grid simulator are the ones carried out in the CRISP EU project. This is because defining realistic scenarios and simulating them is a complex task. Furthermore, the integration of intelligent agents in the Smart Grid requires a multidisciplinary team with specialized members in both areas. As a result, it is normal that works coming from teams principally devoted to the research of software agents overlook facets such as simulations supported by tools belonging to the electrical engineering. For instance, simulators such as GridLAB-D, which is open source and agents-based (thus representing an excellent opportunity) is not used in any of the previous works. On the other hand, Table 4.3 shows information corresponding to other interesting aspects. Among them is standard-orientation, which is rather limited in works that combine software agents with techniques typical of the Smart Grid. The main reason for this is due to the development of stable standards in this field, as well as the acceptance of them as such, has been late. This fact has contributed to create a distorted idea of the Smart Grid and its goals, with the result that authors are occasionally unable to precise the context to which their works are intended. In the quest for implementing energy markets in the Smart Grid, well-established standards are definitely a valuable source of information that provides authors the insight necessary to identify the areas in which they can contribute on a safe foundation. 89 4. REVIEW OF THE AGENT-BASED ALGORITHMS FOR DENS MANAGEMENT In scientific and technological areas, it is important that people other than the authors can reproduce research and academic progress. Reproducibility ensures that results can be corroborated, and that other authors can conduct new research based on previous works, thus making progress faster and more reliable. The security, reliability and efficiency required for any solution that involves changes in the electrical grid, as well as the presence of cutting-edge technologies, makes reproducible research especially important for the Smart Grid, where any solution must be previously studied and tested in detail. The definition of frameworks intended to guarantee works reproducibility is increasingly common [Sto09, FC09]. However, none of the works reviewed in this document successfully meets the conditions of these frameworks. On the contrary, they ignored this aspect. However, the performance and efficiency of some methods presented in the state of the art could be validated due to the extensive knowledge we have of some mechanisms, as well as due to the availability of the resources involved. From this less strict point of view, as shown in Table 4.3, works based on auctions can be considered reproducible, since they use algorithms that are easy to implement, and their efficacy for the particular context they have been designed can be checked. In contrast, non-trivial formulas and factors come into play in works based on equilibrium search, so additional information is required in order to consider their experiments reproducible. To summarize, Penya and Jennings (2005) is the most promising and complete approach to fully implementing functioning energy markets based on autonomous software agents. Carlsson and Andersson (2007) meets all the requirements energy markets require, but from a more centralized and deterministic approach. Therefore, when the goal is implementing markets based on distributed decision-making, Penya and Jennings (2005) is definitely more suitable. However, as mentioned before, this method must overcome the complications of parallel auctions, including the need for software agents which can conduct their own auctions. In this regard, adopting the Agency Services model could be very useful, as the responsibility for holding parallel auctions would fall on broker agents. It therefore seems appropriate to assess the potential of this combination. Furthermore, as already discussed, it is still necessary to check the performance of the algorithm mPJ using an electrical grid simulator and realistic scenarios. 90 4.3 Discussion Property Description Values Multi-unit Indicates if it supports multi-unit bids. yes, no, — (not considered) Multi-item Indicates if it supports multiitem bids. yes, no, — Combinatorial complementary Indicates if it supports combinatorial bids with complementary items. yes, no, — Combinatorial supplementary Indicates if it supports combinatorial bids with supplementary items. yes, no, — Test type Indicates the type of environment in which the proposal have been tested. sim: Simulated using an electrical grid simulator. test: Tests the efficacy and scalability of the proposal without using simulators. exp: Experiment in a laboratory environment. Reproducible Indicates if the proposal is reproducible. yes, no Standards-based Indicates if it is based on the Smart Grid standards. yes, no Table 4.1: Properties for describing the works that aim to implement the SDM exchange model at medium to large DENs. 91 4. REVIEW OF THE AGENT-BASED ALGORITHMS FOR DENS MANAGEMENT Work Multi unit Multi item Comb. Comp. Comb. Supp. Test Type Dimeas et al. (2005) yes no no no exp Symmetric assignment Funabashi et al. (2008) yes no no no sim Symmetric assignment Nunna and Doolla (2013) yes no no no sim Symmetric assignment Dimeas et al. (2004) yes — — — test Double sided auctions Ramachandran et al. (2011) yes — — — sim Double sided auctions Arnheiter (2000) yes no no no test Equilibrium Logenthiran (2008) yes no no no test Equilibrium Ygge and Akkermans (1996) yes no no no test Equilibrium Ygge and Akkermans (2000) yes yes no no sim Equilibrium Carlsson and Andersson (2007) yes yes yes yes sim Equilibrium Amin and Ballard (2000) yes yes — — test Parallel auctions Penya and Jennings (2005) yes yes yes yes test Parallel auctions Rahman et al. (2007) yes no — — sim. Matchmaker Table 4.2: Description of the works according to the characteristics of energy markets. 92 4.3 Discussion Work Reproducible Standards-based Dimeas et al. (2005) yes no Funabashi et al. (2008) yes no Nunna and Doolla (2013) yes no Dimeas et al. (2004) yes no Ramachandran et al. (2011) yes no Arnheiter (2000) yes no Logenthiran (2008) yes no Ygge and Akkermans (1996) no no Ygge and Akkermans (2000) no no Carlsson and Andersson (2007) no no Amin and Ballard (2000) yes no Penya and Jennings (2005) yes no Rahman et al. (2007) yes no Table 4.3: Description of the works according to their standard-orientation and the capacity to reproduce experiments based on them. 93 Hay momentos para recitar poes´ ıa y momentos para boxear. “Los detectives salvajes”, Roberto Bola˜ no. CHAPTER 5 Simulation infrastructure This chapter introduces the simulation infrastructure used to evaluate the theoretical research done throughout this thesis. Its design is marked by the need for simulating both the electrical grid and multi-agent systems, which leads to an infrastructure composed of multiple modules. The following sections describe the technologies used to implement the infrastructure, the purpose and main characteristics of each component, the interactions between them, and the life cycle of the simulation process. As will be seen, the choice of technologies is guided by principles which are part of the aim of this project. In particular, the infrastructure is designed to comply with standard-oriented solutions based in extensively proven tools, and respects and promotes the conditions of reproducible research. Although it might seem that some of these conditions could limit the scope of the present project, the reader will have the opportunity to see that the best and most capable simulation tools in both domains (the electrical grid and multi-agent systems) have been implemented according to this thinking, with the result that, in practice, the main challenge relies heavily on achieving an effective liaison between simulators. 95 5. SIMULATION INFRASTRUCTURE 5.1 Simulation software The research presented in this document seeks to be reproducible and verifiable by the research community. As described in reproducible research frameworks [Sto09, FC09], conditions of both the software and data used during the experimental evaluation play essential roles in achieving this goal. In particular, frameworks stress the need to meet the following features: rBoth, software and data sets must be accessible. In the case of software, it must be possible for users to obtain all software components required to perform the simulations. Undoubtedly, this need is facilitated when the software does not cost anything and can be obtained directly from Internet. As for data sets, there must be a description of how the data was brought into the form used in the research. In this regard, widely accepted data sets are considered valuable resources. rThe licenses for both must not impose conditions limiting the reproduction of experiments and dissemination of results. rThe software must contain complete instructions on how to execute and use it, as well as information about how to obtain and use the data sets. On the other hand, the activity of the electrical grid implies the participation of many subsystems, which, in practice, results in a multilayer architecture that enters multiple domains, ranging from those focused on the electronic behavior of base components, to those focused on tasks related to the long-term management of generation and consumption resources. This condition makes it particularly difficult to capture all the complexity of the electrical grid with a single piece of software. As a result, simulation tools cover only some specific aspects of it; power flow calculations and demand models being the most attended functionalities. For this reason, research projects often resort to co-simulation [LSS+11, GMD+10, LAH11, LXJM12], a term used to refer to the need to simulate and model coupled problems in a distributed manner, so that subsystems are simulated separately, interacting with each other by using communication channels. Thus, in simulating the electrical grid, projects dealing with domains other than the two mentioned before are commonly required to use additional simulation frameworks. This is the case, for instance, of the project presented in this dissertation, 96 5.1 Simulation software which proposes a new architectural solution and the implementation of agent-based markets. Therefore, to make co-simulation possible, it is important that the electrical grid simulator provides its functionality through conventional means (such as APIs or web services), or, alternatively, facilitates the development of plug-ins that can accomplish this task. Given the large number of components and subsystems that participate in the operation of the electrical grid, in order to ensure the experiments’ reliability, it is also important that the simulator has been tested against benchmark scenarios, such as the Distribution Test Feeders [Chr99] defined by IEEE Power and Energy Society. Additionally, this feature improves the reproducibility of the projects tested on the simulator. A description of the characteristics and qualities of the most capable simulators of the electrical grid can be found in [LZ14, RLS+14, Ste14, FCD+13]. For the present project, the GridLAB-D simulator [CSG08] was chosen to perform the experimental evaluation because, besides being one of the most promising options, it meets all the requirements defined above. In particular, GridLAB-D has been developed by the US Department of Energy (DOE) as a tool for facing the forthcoming challenges in the energy field. Some interesting characteristics of GridLAB-D are: a) It follows an agent-based approach and is extensible, with modules which can simulate a large variety of components of the electrical grid at different levels of abstraction, including the power flow model and other physical constraints. b) It is open source, with a growing, active community of both developers and researches working on it. In particular, GridLAB-D uses the Berkeley Software Distribution (BSD) license, which guarantees that users can make use of it in all possible manners, and that reproducible research principles can be applied to any derivative work. c) Its efficacy has been extensively tested. It is worth mentioning that GridLABD includes the definition of the standard scenarios defined in [Chr99], for which it yields the expected values. d) It is well documented, the information being updated regularly. In addition, it has active forums. 97 5. SIMULATION INFRASTRUCTURE rname: Internal name of the element. This field is required in order that other elements can refer to the “GridOperator” object. For instance, ASPEMs use this token to register with the system operator. rservicesEndpoint: URL to access the web services API. The following code snippet shows a basic statement of this type of element: object GridOperator { name "gridop"; servicesEndpoint "localhost:9090/gridop/resources"; }; 5.3.1.3 Element ASPEM The “ASPEM” element defines an ASPEM. As in the case of the system operator, it is a Java web application whose functionalities are accessible through a web services API. It must be noted that “ASPEM” elements must be declared as inner objects of “GridOperator”. The fields that the “ASPEM” element includes are: rname: Internal name of the element. This name is required in order for other elements can refer to the ASPEM. For instance, households use this token to define the ASPEM to which they are connected via the ASBox. rparent: Internal name of the “GridOperator” element. rservicesEndpoint: URL to access the web services API. The following code snippet shows a basic statement of an “ASPEM” element: object ASPEM { name "aspem01"; parent "gridop"; servicesEndpoint "localhost:8080/aspem/resources"; }; 5.3.1.4 Element ASBox In order that a household can participate in the management system, it must contain an element of type “ASBox”. This is responsible for communicating with the 104 5.3 Modules and applications corresponding ASPEM, and thus being able to apply the orders sent by the broker agents, as well as sending information on the state of the local resources. This element is also used to set user preferences, including the roles they will play in the markets, and characteristics related to their behaviors. The fields of “ASBox” objects are: rname: Internal name of the element. ASBoxes are end nodes (no other element refers to them). However, specifying the internal name is still important for debugging and logging activity. rparent: Internal name of the “house” element to which the ASBox is linked. raspem: Internal name of the “ASPEM” element to which the ASBox is connected. rlevelsSchedule: Internal name of the schedule element that associates values to time periods. The value corresponding to a period identifies: (i) the mode of operation of the household (hard,easy or normal); and (ii) the level of consumption when the selected mode is hard or easy, which can be normal, moderate,high or critical. Internally, these two values are combined into a number; however, for the sake of readability, henceforth this combination is shown in plain text. As for schedules definition, GridLAB-D provides a native type that uses the same syntax and semantic as the well-known piece of software Crontab [Rez93]. rstartingPrice: Maximum price 1at which the broker agent is willing to buy energy blocks in parallel auction markets. rlevelPriceX: Price at which the broker agent is willing to sell energy blocks corresponding to the moderate (levelPrice1), high (levelPrice2) and critical (levelPrice3) level of consumption in energy markets. rpriority: Integer value useful for resolving conflicts and/or prioritizing some customers over others. The value of this parameter is meant to be contracted with the ASPEM. The following code snippet shows a basic statement of an “ASBox” element: 1The market is based on reverse auctions, so the definition of concepts such as the starting price is inverted. 105 5. SIMULATION INFRASTRUCTURE object ASBox { name i1B645; aspem aspem01; parent house1B_tm_B_1_645; levelsSchedule sch_02; startingPrice 140; levelPrice1 105; levelPrice2 140; levelPrice3 143; priority 3; }; As an example, the code snippet shown below contains a GridLAB-D schedule with three periods for the August 1st. It can be seen that from 13:30h to 15:30h the node works as a hard-load, willing to protect the moderate level as minimum; whereas from 15:30h to 17:00h, it is willing to adopt the high level even if it is not required. Thereafter, the node adopts the normal mode. It is assumed that the node works in normal mode for all those periods that are not explicitly defined. schedule sch_02 { 30 13 1 8 *hard(moderate); 30 15 1 8 *easy(high); 00 17 1 8 *normal; }; 5.3.2 System Operator application The system operator is represented by a Java web application running in a Jetty server. The application provides the following functionalities: (i) a user interface for easy configuration of scenarios; (ii) instantiation of the software agent that carries out the system operator tasks, including life cycle management of DR events; and (iii) web services API that GridLAB-D uses to communicate with the system operator. The implementation and instantiation of the software agent is addressed using the module EnergyAgents (see Section 5.3.4). 106 5.3 Modules and applications The primary objective of the user interface is to provide an easy means whereby users can configure the scenarios available. Specifically, scenarios are created through the form New Scenario (Figure 5.3), which requests the following information: rCode: Unique code related to the scenario being created. When GridLABD communicates with the system operator application, this code is used to identify the scenario being simulated (see Section 5.3.1.1). rStore name: Name of the database of demand estimates to be used in simulations. rProgram: File with the definition of the DR program to be applied during the simulation (see Section 5.4.1). rDescription: User comments about the scenario. Figure 5.3: Form to register a new scenario. Moreover, the application provides views for listing the current scenarios and providing information on the simulations performed so far. These views include basic actions that allow users to create, modify and delete items. 107 5. SIMULATION INFRASTRUCTURE Table 5.1 describes the RESTful web services API provided by this application. As can be seen, services are related to the management of the simulation process. Essentially, GridLAB-D uses this set of services to inform the system operator of simulation events, and register new ASPEMs when a new simulation is started. /services/simulations Name URL Oper. Description Parameters start / POST Start a new simulation, and return the identifier related to the simulation. scenariocode: Code of the scenario being simulated. usp: Flag indicating whether using starting prices (1) or not (0). rnd: Flag indicating whether using uniform distribution of buyers (1) or not (0) (see Chapter 7). cf: Value of the constant Cf(see Chapter 7). finish {id}/finish PUT End the simulation related to the identifier id. id: Identifier of the simulation. pause {id}/paused PUT Pause the simulation related to the identifier id. id: Identifier of the simulation. newAspem {id}/aspem POST Instantiate a new ASPEM, and return the identifier related to the ASPEM. id: Identifier of the simulation. content: XML description of the ASPEM (see Listing A.1, Appendix A). Table 5.1: Description of the layer of RESTful web services provided by the application that represents the system operator. 5.3.3 ASPEM application ASPEMs are implemented as Java web applications that provide the following functionalities: (i) a user interface; (ii) web services API that GridLAB-D uses to communicate with the ASPEM; (iii) instantiation of the software agent responsible for handling the DR events; (iv) creation of the virtual environment in which negotiations are performed; and (v) instantiation and deployment of the broker agents that act on behalf of users. The creation and activity of software agents, inclu108 5.3 Modules and applications ding the environment they run, is addressed through the module EnergyAgents (see Section 5.3.4). For ASPEMs, the user interface does not provide great functionality, since broker agents as well as other information that might be of interest, are dynamically loaded when the simulation starts. Therefore, the user interface only contains an information screen that allows users to check if the application is properly working. On the other hand, Table 5.2 describes the RESTful web services API of the ASPEM application. This is meant to inform the ASPEM when simulations are initiated and completed. In addition, once a simulation is running, it offers a service through which GridLAB-D registers the ASBoxes that will be connected to a particular ASPEM. This service receives user preferences as a parameter. For instance, in the particular case of auctions market, for each ASBox, GridLAB-D reports the ASPEM when the user participates as easy-load and hard-load, the price at which he/she is willing to buy or sell energy, and the starting price when he/she acts as auctioneer. Moreover, the RESTful API provides a service that reports the status of the ASPEM. Thanks to this, the system operator can check if ASPEMs are operating as expected. 5.3.4 Module EnergyAgents The EnergyAgents module implements all the functionalities related to software agents that both the system operator and ASPEMs require. This module therefore works as an external API that frees root applications from dealing with specialized concepts and procedures belonging to the artificial intelligence area. EnergyAgents is, in turn, built on the Jade framework, which facilitates the implementation of multi-agent systems fully compliant with the FIPA specifications [FIP96]. The module creates a platform composed of multiple containers [FIP03a] which work as running environments for the software agents. Following the Agency Services model’s guidelines, the system operator and each ASPEM owns a container. Furthermore, for each management method used in simulations, the EnergyAgents module implements all behaviors of: (i) the agent which acts on behalf of the system operator responsible for managing the event’s life cycle; (ii) the agent that 109 5. SIMULATION INFRASTRUCTURE /services/simulation Name URL Oper. Description Parameters start /{id}/start POST Report that a new simulation has been initiated. id: Identifier of the simulation. finish /{id}/finish PUT Report that the simulation related to the identifier id is complete. id: Identifier of the simulation. newASBox /{id}/asbox POST Instantiate a new ASBox inside the ASPEM and relate it to the simulation with identifier id. id: Identifier of the simulation. clientcode: Code that identifies the ASBox in GridLAB-D. content: XML description of the user preferences (see Listing A.2, Appendix A). /services/aspem status /id/status GET Return whether the ASPEM is available or not. Table 5.2: Description of the layer of RESTful web services provided by the application that represents ASPEMs. represents a particular ASPEM, which, after receiving the order to handle a particular event from the system operator, decides how to implement it; and (iii) the broker agents that participate in the management system when it is implemented as a distributed mechanism. In order to achieve a well-defined solution, the module defines ontologies that implement all the concepts, actions and predicates involved in the interactions and dialogues between agents. Specifically, an ontology is defined for each management method used in the experimental evaluation. In addition, all interactions between broker agents are conducted through standard FIPA interaction protocols. Specifically, the FIPA Request [FIP02c] is used when one agent requests another to perform an action, the FIPA Query [FIP02b] for asking for specific information, and the FIPA Inform [FIP01] communicate act for sending information about states and facts. In the source code, both ontologies and agents’ behaviors are grouped in Java packages so that each of these is associated with a specific method and experiment. 110 5.3 Modules and applications The correspondence between packages and management methods is noted in the code itself. The EnergyAgents module also creates its own layer of entities and functionalities, which, in addition to hiding the interface of Jade, results in a highly simplified interaction layer. Proof of this is the code of the system operator and ASPEMs applications, whose tasks concerning agents consist of a few calls. 5.3.5 Additional modules The simulation infrastructure provides two additional modules that aim to facilitate specialized tasks. These are: (i)SimpleDR, which facilitates the creation and management of entities and functions typical of the OpenADR standard; and (ii)Wonrest, which provides an API for accessing web services of type RESTful using the C++ programming language. To work with OpenADR it is necessary to extract the entities model from the XML schemes provided by the standard. The generated model is rather complex, so, in practice, using it leads to code difficult to maintain and read. The SimpleDR project aims to overcome this problem by providing a much more simplified model of entities. This new model successfully meets all requirements of the experimental evaluation, freeing the developer from having to manage many entities, which are automatically filled. On the other hand, the Wonrest library implements a simple RESTful client for the C++ programming language. It does not pretend to be a full implementation of the RESTful specification, but a simple interface for essential functions, hiding much of the complexity that involves working directly with the Curl library [cur15], which is the classical approach. Thanks to these complementary software modules, the business logic of both the EnergyAgents and the AgencyServices modules is actually focused on the issues they really have to solve. 111 5. SIMULATION INFRASTRUCTURE 5.4 Data files 5.4.1 DR programs file The DR programs are defined through XML files. The definition of DR program used in this project consists of zero o more events, which in turn may consist of one or more intervals. The event element also specifies, in form of attribute, the type of signal to be sent, and the starting time. As for interval elements are intended to specify the value of the signal for a specific time period. The following code snippet shows the definition of a DR program which consists of two events. The first event declares a signal of type delta that starts at 14:00h. This signal is implemented by using two intervals. The first one lasts 3600 seconds and specifies that 1000 kW must be discarded; while the second interval lasts 1800 seconds and specifies a value of 2000 kW. On the other hand, the second event declares a signal of type simple that starts at 15:30h. This consists of three events, each one lasting 1800 seconds. Respectively, they order the customers to adopt the levels moderate (1), high (2) and critical (3). <?xml version="1.0" encoding="UTF-8" ?> <program xmlns="http://www.siani.es/agencyservices/events/1.0" name="h14-d3500"> <event type="delta" start="2000-08-01T14:00:00Z" priority="0" notifDuration="300"> <interval duration="3600" value="1000" /> <interval duration="1800" value="2000" /> </event> <event type="level" start="2000-08-01T15:30:00Z" priority="0" notifDuration="300"> <interval duration="1800" value="1" /> <interval duration="1800" value="2" /> <interval duration="1800" value="3" /> </event> </program> The elements containing a file defining a DR program are: rprogram: Main element of the XML document. It may contain zero or more elements of type “event”. The attributes of “program” are: 112 5.4 Data files qxmlns:Namespace associated with the XML elements. It must be the same as that defined in the previous example. qname: Internal name of the program. This name is shown by the Java application of the system operator in order that users can identify the programs. revent: An OpenADR event. An event consists of one or more intervals. Intervals are supposed to span consecutive time blocks, so the duration of the event is equal to the sum of all the intervals duration. The attributes of “event” are: qtype: Type of the OpenADR event. The possible values are level and delta (see Section 2.3.2, page 34). qstart: Time when the OpenADR event starts. qpriority: Integer value that defines the event’s importance. In the simulation infrastructure presented in this document, when priority is higher than zero, ASPEMs are required to send the signal directly to households, thus indicating that markets cannot be used. qnotifDuration: Time slot within which events must be notified to households. rinterval: Element that associates a particular value to a time period of the covering event. The attributes of “interval” are: qduration: Interval duration in seconds. qvalue: Value associated to the block of time spanned by the interval. If the type of the covering event is delta, the value expresses kW; whereas if the type is level, the possible values are: 0(normal), 1(moderate), 2(high) and 3(critical). This syntax means a significant simplification compared to that provided by the OpenADR standard. For instance, the latter offers the possibility of setting the type of signal in the interval element. Although this feature is not supported, the same result can be achieved with the new syntax by defining events for each interval. The main objective of this new syntax is the search for simplicity and clarity without missing important functionalities for the experimental evaluation of the management methods. 113 – Y la naturaleza ¿tambi´ en es una tonter´ ıa? — pronunci´ o Arkadi mirando pensativo a lo lejos, a los campos abigarrados, que el sol ya en declive iluminaba hermosa y suavemente[. . . ] — Tambi´ en lo es, en el sentido que t´ u le das. La naturaleza no es un templo, sino un taller, y el hombre es un trabajador del taller. “Padres e hijos”, Iv´ an Turgu´ enev. CHAPTER 6 Experimental evaluation of the ASPEM role The ASPEM role introduced in Chapter 3, as discussed, is designed to work as a virtual environment in which software agents can conduct negotiations on behalf of customers. This concept represents a significant improvement over the classical architecture, in which end-nodes are supposed to be able to perform all type of functions. Specifically, in the context of the Smart Grid, besides managing local resources, they are also expected to access external data services, process data sets and conduct dialogues and negotiations. To some extent, this is the reason why real solutions do not incorporate advanced functionalities, but others which are more practical and less ambitious. In contrast, the ASPEM role, as a characteristic inherited from the Cloud Computing model, promises to free end-nodes from demanding tasks. When it comes to OpenADR, this feature implies that end-nodes should only have to support the simplest profile of the protocol (profile 2.0a) while still enjoying the functionalities and benefits of the most advanced profiles (2.0b and 2.0c). One of the goals of the present Chapter, which shows the results of simulating the participation of ASPEM nodes in OpenADR programs, is to demonstrate this conversion skill: to conduct the management of the grid by sending signals of the simplest profile, regardless of the profile of the signal sent by the system operator. 121 6. EXPERIMENTAL EVALUATION OF THE ASPEM ROLE With the aim of demonstrating the benefits that using software agents can bring to the customers, the simulations are implemented with parallel auction markets [PJ05]. As discussed in Chapter 4, this approach meets all the conditions of energy markets (see Section 4.1, page 74); and, not least of all, it is completely distributed, so it is closer to the future vision of the electrical grid. In particular, parallel auctions give the users autonomy and control over the decision process. However, this approach is known to shift the burden of holding auctions from the system operator to the customers. This Chapter also fulfills the mission of showing how this challenge can be met by using the concept of broker agent, which is a software agent contracted as a Cloud Computing service. In this regard, it is worth mentioning that this research work is the first of its kind to simulate parallel auction markets in the context of the electrical grid, thus giving an insight into the actual effectiveness of the mechanism. The simulations are performed in the context of OpenADR programs, this technology being one of the most immediate and realistic milestones of the Smart Grid. To achieve markets in DR programs, which by default is a context in which endnodes are expected to merely apply incoming signals, the model based on easyloads and hard-loads described in Chapter 2 is used (see Section 3.5, page 69). Furthermore, choosing DR programs as simulation context demonstrates the ability of ASPEM nodes to display their capabilities in restrictive environments. 6.1 Experimental evaluation Two types of experiments are carried out below: the first one consists of a centralized approach that prioritizes customers’ preferences according to their contract with the ASPEM, thus focusing on the services facet of the ASPEM nodes; while the second puts forward a decentralized solution that shows the capability of ASPEM nodes to manage the events through energy markets. In both cases, the process consists of the following general steps: i.The system operator sends curtailment events. These can be defined as signals of type simple or delta. In the case of simple signals, the system operator expects that nodes adopt one of the following predefined OpenADR levels: nor122 6.1 Experimental evaluation mal,moderate,high or critical. As for delta signals, they express an amount of load that must be discarded by each ASPEM. ii.ASPEM processes curtailment events. In the solution based on the users’ priority, the ASPEMs select the nodes that participate in the event, as well as the level of consumption they must apply to their devices. On the other hand, when markets are used, hard-loads initiate negotiations with easy-loads in order to avoid applying the level of consumption specified in the signal. iii.Customers receive signals of type simple from the ASPEM. The local agent applies the actions corresponding to the level indicated by the signal sent by the corresponding ASPEM. These actions consist of switching off devices. In the experiments, OpenADR levels are implemented as follows: rNormal: No restriction is applied, so the household can consume as usual. rModerate: HVAC units must be switched off. rHigh: HVAC units and water-heaters must be switched off. rCritical: All units, including lights, must be switched off. This definition of levels is too aggressive. Actually, for real scenarios the adoption of solutions that vary the comfort level is commonly proposed. To achieve this, ranges of operating points are set for each of the consumption levels, so users do not lose the entire service provided by the units, but only part of the comfort they provide. However, we prefer the above definition for simulations because it provides demand curves where it is easier to differentiate the application of each DR signal, besides helping to keep the focus on the exchange mechanism. In both types of experiments, a typical summer day (August 1st, 2000) is simulated in the scenario IEEE 13-node [Chr99], which is configured with two ASPEMs that have practically the same number of clients and the same level of consumption per OpenADR level (Table 6.1) and per type of load (Table 6.2). In order to configure the nodes’ preferences, three types of schedules are defined (Listing 6.1). They configure the nodes to act as easy-, hardor normal-loads during the whole period of simulation. In particular, the hard-loads are configured to protect all their demand, so they strive to preserve the normal state of operation; and the easy-loads are willing to discard all the demand. Table 6.3 summarizes the number of nodes associated to each type of schedule. 123 6. EXPERIMENTAL EVALUATION OF THE ASPEM ROLE schedule easy { 01418*easy(critical); 01518*easy(critical); 01618*normal; }; schedule hard { 01418*hard(normal); 01518*hard(normal); 01618*normal; }; schedule normal { 0018*normal; }; Listing 6.1: Schedules definition for the auctions market. normal (kW) moderate (kW) high (kW) critical (kW) aspem 1 61.137 27.103 15.552 0 aspem 2 66.461 30.871 15.194 0 Table 6.1: Consumption of the ASPEMs per OpenADR level. Easy load (kW) Hard load (kW) aspem 1 4.670 32.652 aspem 2 5.819 34.891 Table 6.2: Consumption of the ASPEMs per type of load. 124 6.1 Experimental evaluation Normal Easy Hard aspem 1 109 31 174 aspem 2 107 36 172 Table 6.3: Number of nodes associated to each type of schedule. In absence of any DR event, the behavior of the demand curve is that depicted in Figure 6.1. It shows that there is a peak demand in the afternoon, which is especially high between 14:00h and 15:30h. The following experiments are focused in this particular zone of the curve, to which OpenADR events of type level and delta are ordered. Figure 6.1: Demand curve corresponding to 1st August, 2000 in the IEEE 13-node when no signal is applied. 125 6. EXPERIMENTAL EVALUATION OF THE ASPEM ROLE As will be appreciated, the joint recovery of all the consumption devices after a DR event produces noticeable peaks in the demand curve. This is a well-known effect for which the OpenADR standard provides an operating procedure. However, being beyond the scope of this document, no mechanism has been implemented in the experiments. It is also worth mentioning that, in order to give the system operator a channel to bypass the action of ASPEMs, all OpenADR messages with priority higher than zero are conveyed intact to the child nodes. This channel can be useful for handling situations that require particular behaviors, such as emergencies. 6.1.1 Dispatch based on priorities In this experiment, the ASPEM uses an internal centralized algorithm to determine which nodes take on the curtailment job when an OpenADR signal of type delta is received. The decision is based on the content of the contract that links the user to the ASPEM. For this specific experiment, we assume that users can specify in their contract: i. The time periods at which they want to participate as hard-, easyand normalloads. ii. A priority level that the ASPEM uses to determine which nodes are used to meet the curtailment signal. The higher the value of the parameter, the more the preferences defined by the customer are considered. According to the syntax of the ad-hoc plugin developed for GridLAB-D (see Section 5.3.1, page 101), the above information is expressed by using elements of type “ASBox” as follows: object ASBox { name i1B645; aspem aspem01; parent house1B_tm_B_1_645; levelsSchedule sch_02; priority 3; }; 126 6.1 Experimental evaluation When an OpenADR signal is sent, the ASPEM gathers the previous information by asking the broker agents 1. Next, the algorithm converts the incoming signal (which in this case is of type delta) into multiple signals of type simple that are conveyed to the AS-Boxes. It must be noted that OpenADR events are composed of intervals, and therefore the exchange process is carried out for each of these intervals. The first step of the algorithm is to determine which resources are necessary to cover the amount of load specified in the delta signal. This information is obtained by asking each broker agent its demand estimates for each consumption level. Next, depending on this result, three settings are possible: i.The amount can be entirely covered by using easy-loads (Algorithm 6, Appendix B). This is the less dramatic case for the system, since all the demand to discard is collected from nodes that are actually willing to shed it. In this case, the algorithm sorts the easy-loads in descending order according to the priority value. Next, the algorithm, following the established order, takes the minimum number of loads necessary to cover the amount specified by the delta signal. ii.The amount can be covered without using hard-loads (Algorithm 7, Appendix B). In this case, it is possible to cover the delta amount by doing that no-hard loads adopt one of the predefined levels of the OpenADR standard (moderate, high or critical). The first step in this case is to calculate the level that the no-hard loads have to adopt. This list of nodes is sorted in ascending order according to the priority value. In addition, as in the previous case, a list of easy-loads is built. In order to cover the delta amount, firstly, the list of easyloads is used; next, the no-hard loads are taken (following the order of the list) until the delta amount is covered. iii.The amount has to be covered using hard loads (Algorithm 8, Appendix B). Firstly, all the no-hard loads are required to adopt the critical level. Next, the list of hard-loads is sorted in ascending order according to the priority value. Nodes from this list are ordered to adopt the critical level until covering the delta amount. 1Since this is a centralized solution, the information could also be obtained directly from the database system. 127 6. EXPERIMENTAL EVALUATION OF THE ASPEM ROLE Figure 6.2 illustrates the case in which the operator orders a reduction of 30.000 kW between 14:00h and 15:30h. In this scenario, the operator aims to reduce the required amount and avoid taking the moderate level. In general, when the difference of demand between the predefined OpenADR levels is significant, delta signals enable to apply reductions with results that are more accurate and require less involvement of clients. Table 6.4 shows that, for handling the event, only easyloads are used, so there is no need for the nodes working as hard-loads to contribute in the load reduction. Table 6.5 shows the number of signals of each type used to generate the expected result. Figure 6.2: Demand curve corresponding to 1st August, 2000 in IEEE 13-node when a delta signal of 30.000 kW is applied. Moreover, Figure 6.3 illustrates the example in which a delta signal of 75.000 kW is applied. It aims to avoid the need for the adoption of the high level. Due to 128 6.1 Experimental evaluation Delta Covered (kW) Normal (kW) Easy (kW) Hard (kW) aspem 1 14.465 14.569 9.899 4.670 0 aspem 2 15.534 15.680 9.861 5.819 0 Table 6.4: Consumption of the ASPEMs per level when a delta signal of 30.000 kW is applied. Normal Moderate High Critical aspem 1 187 91 36 0 aspem 2 204 80 31 0 Table 6.5: Number of signals per type when a delta signal of 30.000 kW is applied. the huge size of the reduction, as shown in Table 6.6, the hard-loads are involved in the action. However, in relation to the total capacity of this type of loads, their participation is actually limited: only the 11% of them are used in this case, and always after all the capacity corresponding to the normaland easy-loads has been used. Table 6.7 shows the number of signals per type that are applied in this case. All nodes to which a signal of level normal is sent are actually hard-loads that have contracted the maximum type of protection to the corresponding ASPEM. Delta Covered (kW) Normal (kW) Easy (kW) Hard (kW) aspem 1 36.163 36.295 27.996 4.670 3.628 aspem 2 38.836 38.977 29.487 5.819 3.671 Table 6.6: Amount of load per type when a delta signal of 75.000 kW is applied. In both cases, the charts show that the ASPEM role is able to handle delta signals by using user properties, which in this case, for the sake of simplicity, are 129 C. RESUMEN EN ESPA ˜ NOL requiere que el hogar restrinja su consumo; moderate, las unidades de aire acondicionado deben desconectarse; high las unidades de aire acondicionado y los termos deben desconectarse; critical, todos los dispositivos de consumo, incluidas las luces, deben desconectarse. En realidad, esta definici´ on de las se˜ nales es demasiado agresiva, de forma que, en escenarios reales, es com´ un proponer implementaciones que var´ ıan el nivel de confort. No obstante, en este trabajo se opta por una definici´ on como la expuesta porque permite centrar la atenci´ on en los mecanismos de gesti´ on, y porque asimismo proporciona curvas de demanda en las que es m´ as f´ acil distinguir el efecto de las se˜ nales aplicadas. Los agentes br´ oker se comunican con el agente local a trav´ es del protocolo XMPP, siendo este uno de los mecanismos propuestos en el est´ andar OpenADR. Por tanto, como resultado, la infraestructura de simulaci´ on incluye un servidor XMPP. Otro componente a destacar de la infraestructura es el repositorio de estimaciones de demanda. Este es necesario para que los nodos dispongan de indicadores que les informen de la cantidad aproximada de energ´ ıa que consumir´ an durante un per´ ıodo espec´ ıfico de tiempo y para cada uno de los niveles de consumo posibles. La Figura C.8 muestra los componentes principales de la infraestructura de simulaci´ on, incluyendo cada uno de los componentes software que se usan para implementarlos C.3.7 Simulaci´ on de mercados de subastas paralelas usando nodos ASPEM Como se puede concluir del an´ alisis del estado del arte, el mecanismo que mejor se adapta a la naturaleza distribuida del Smart Grid, y que asimismo cumple todos los requisitos de los mercados de energ´ ıa, son las subastas paralelas inversas. Bajo este esquema, un usuario que desea proteger su demanda es un usuario que ofrece bloques de demanda en el mercado (subastador o vendedor); mientras que un usuario dispuesto a ofrecer parte de su demanda es un usuario dispuesto a pujar para cubrir la demanda de terceros (comprador). De esta forma, usando los conceptos definidos en la Secci´ on C.3.4, las cargas de tipo hard son t´ ıpicas de los subastadores, y las de tipo easy de los postores. En este sentido, se debe notar que el rol desempe˜ nado por el agente puede cambiar entre mercado y mercado, cuya duraci´ on en 232 C.3 Aportaciones originales ASPEM Contenedor FIPA Agentes Bróker Simulador del Grid Eléctrico AS-Box Agentes Locales Java Web Application Jade GridLAB-D OpenADR sobre XMPP Módulo GridLAB-D (AgencyServices) Repositorio estimaciones Servidor XMPP Openfire PostgreSQL Figura C.8: Componentes de la infraestructura de simulaci´ on. las simulaciones se establece en 30 minutos. Por consiguiente, los eventos con una duraci´ on superior a 30 minutos se gestionan a trav´ es de secuencias de mercados. Despu´ es de recibir un evento OpenADR, los ASPEM instancian los agentes br´ oker que representan a los clientes en la gesti´ on del evento. A continuaci´ on, cada br´ oker registra en un directorio FIPA los roles que desempe˜ nar´ a en cada uno de los mercados que componen el evento, los cuales pueden ser: vendedor (subastador), comprador o ninguno (si decide no participar). Posteriormente, los consumidores (vendedores) consultan el directorio para obtener la lista de productores (compradores) disponibles. Los consumidores que no encuentran suficientes productores para cubrir un nivel completo de la se˜ nal OpenADR (moderate,high ocritical) deben cancelar la subasta y aplicar la se˜ nal OpenADR de entrada. Despu´ es de recibir las invitaciones, los productores deciden en qu´ e subastas participar. Es importante aclarar que los productores no pueden participar en todas las subastas simult´ aneamente porque esto seguramente implicar´ ıa pujar por encima de sus posibilidades reales. Es decir, supondr´ ıa llevar a cabo una estrategia basada en el concepto de overbooking, la cual supone un riesgo para el comprador y, 233 C. RESUMEN EN ESPA ˜ NOL en general, para el sistema. Por ´ ultimo, los consumidores deciden qu´ e ofertas son aceptadas. Como resultado, los productores a los que se hayan aceptado ofertas deber´ an adoptar niveles de consumo m´ as restrictivos, mientras que los consumidores que hayan logrado cerrar acuerdos podr´ an aumentar o mantener su nivel de consumo frente a la se˜ nal OpenADR de entrada. Las simulaciones se realizan en un d´ ıa t´ ıpico de verano (1 de agosto de 2000) usando el escenario est´ andar IEEE-13. En este se incluyen dos ASPEM que pr´ acticamente gestionan el mismo n´ umero y tipo de nodos (Tabla C.2), los cuales se configuran para actuar como cargas de tipo normal,easy ohard durante el per´ ıodo completo que abarca cada mercado. En concreto, las cargas hard se configuran para proteger toda su demanda (intentan conservar su consumo habitual); mientras que las cargas easy se definen para estar dispuestas a descartar, si es necesario, toda su demanda. normal (kW) moderate (kW) high (kW) critical (kW) Easy load (kW) Hard load (kW) aspem 1 61.137 27.103 15.552 0 4.670 32.652 aspem 2 66.461 30.871 15.194 0 5.819 34.891 Tabla C.2: Consumo de los ASPEM por cada nivel de consumo propio de las se˜ nales de tipo simple de OpenADR. La Tabla C.3 describe el perfil del mercado. Como indica su contenido, cuando el valor de la se˜ nal es moderate, la relaci´ on entre la capacidad de puja y la cantidad subastada (en adelante Rca) es 2,29. Por consiguiente, cuando los subastadores no establecen precio de entrada, se puede afirmar que la oferta duplica la demanda. La tabla tambi´ en muestra que, en este caso, la relaci´ on entre el n´ umero de productores y consumidores (en adelante Rnp) es 3,10. Cuando el valor de la se˜ nal es hard, la situaci´ on es menos ideal, ya que Rca es igual a 0,91. Es decir, la cantidad subastada es superior a la capacidad de compra; o, lo que es lo mismo, la oferta es mayor que la demanda. Se debe notar que todos estos valores son menores cuando existen 234 C.3 Aportaciones originales precios de entrada, puesto que la oferta de un comprador puede no ser v´ alida para todas las subastas. Se˜ nal Demanda (kW) Oferta (kW) Rca Rnp moderate 15271 35114 2,29 3,10 hard 20416 18569 0,91 2,27 Tabla C.3: Perfil del mercado de subastas. El mercado de subastas pasa por las siguientes etapas: i. Anuncio: los ASPEM informan a los agentes br´ oker de la instanciaci´ on de un nuevo ciclo de mercados para gestionar eventos DR. Espec´ ıficamente, se informa acerca de la duraci´ on del evento, la duraci´ on de los mercados y los plazos de las etapas subsiguientes. ii. Registro: los agentes br´ oker registran en un directorio FIPA el rol que desempe˜ nar´ an en cada mercado, que puede ser vendedor (subastador), comprador o ninguno si deciden no participar. Al tratarse de subastas inversas, el primer rol es propio de los consumidores y el segundo de los productores. Adem´ as, los agentes registran informaci´ on espec´ ıfica a cada rol: los subastadores definen el precio m´ aximo al que est´ an dispuestos a comprar; y los compradores definen la cantidad m´ axima de carga que est´ an dispuestos a suministrar. iii. Oferta: los subastadores consultan el directorio FIPA para localizar productores e invitarlos a que pujen en sus subastas. Al final de esta etapa, todos los subastadores que no hayan encontrado suficiente oferta, as´ ı como todos los productores que no hayan encontrado subastadores, informan al ASPEM y cancelan su participaci´ on en el mercado. Estos nodos est´ an obligados a aplicar la se˜ nal OpenADR que envi´ o originalmente el operador del sistema. iv. Subasta: entre todas las ofertas recibidas, los productores deciden en qu´ e conjunto de subastas participar. Las ofertas se env´ ıan en forma de funciones lineales a trozos como la representada en la Figura C.9. Cada nivel de la funci´ on se corresponde con un nivel de consumo que el productor ofrece (moderate, 235 C. RESUMEN EN ESPA ˜ NOL high,critical). El n´ umero de secciones de la funci´ on depende del valor de la se˜ nal OpenADR de tipo simple que env´ ıa el operador, el cual marca el nivel de inicio. v. Resoluci´ on: los consumidores deciden qu´ e ofertas aceptar. El algoritmo implementado en este trabajo selecciona las ofertas con los precios m´ as bajos. Para ello, en primer lugar, el algoritmo ordena todas las ofertas seg´ un el precio, entendiendo por oferta una secci´ on de la funci´ on lineal a trozos enviada por el productor. A continuaci´ on, acepta ofertas de la lista de forma iterativa hasta cubrir toda la demanda. Por ´ ultimo, el consumidor informa a cada agente sobre el resultado de la subasta. vi. Cierre: los ASPEM registran todos los acuerdos que han sido cerrados y, conforme a ellos, env´ ıa a cada agente br´ oker la se˜ nal OpenADR que este debe aplicar. Esta se˜ nal es transmitida a los agentes locales para que la apliquen sobre los recursos locales. En general, los productores que hayan logrado vender bloques de energ´ ıa deber´ an adoptar niveles m´ as restrictivos de consumo, y los consumidores que hayan cerrado acuerdos podr´ an mantener o incluso incrementar su demanda. Figura C.9: Funci´ on lineal a trozos que env´ ıan los productores a los consumidores para representar sus ofertas. La Figura C.10 ilustra el resultado de una simulaci´ on en la que el operador ordena una se˜ nal de tipo moderate que comienza a las 2:00 pm y termina a las 3:30 pm. Como resultado de los intercambios entre los nodos, el mercado genera una curva de demanda muy similar a la correspondiente al nivel moderate, siendo este 236 C.3 Aportaciones originales el efecto esperado. Por su parte, la Figura C.11 muestra el resultado de la simulaci´ on para una se˜ nal de tipo hard. En ambos casos, el resultado que se obtiene usando mecanismos de mercado es seguro porque, cuando un subastador no logra suficientes ofertas para cubrir un nivel entero de demanda, este es obligado a cancelar la subasta y a aplicar la se˜ nal OpenADR de entrada. Con este comportamiento se logra que la demanda, como m´ aximo, iguale el nivel de consumo ordenado por el operador. Figura C.10: Curvas de demanda cuando se aplica una se˜ nal OpenADR de tipo moderate. La Tabla C.4 muestra los datos correspondientes a las simulaciones. La columna “Cantidad intercamb.” hace referencia al porcentaje de la cantidad subastada que, gracias a los intercambios del mercado, ha logrado ser cubierta. Como se puede observar, el porcentaje es significativamente mayor cuando no existen precios de entrada. Esto se debe a que, en este caso, las ofertas de todos los productores son v´ alidas para todas las subastas. No obstante, el hecho m´ as destacable es que, 237 C. RESUMEN EN ESPA ˜ NOL Figura C.11: Curvas de demanda cuando se aplica una se˜ nal OpenADR de tipo hard. 238 C.3 Aportaciones originales pese a que un n´ umero considerable de subastas se deben cancelar por no recibir suficientes ofertas, una cantidad importante de ofertas no logran participar en ning´ un intercambio. La raz´ on para este hecho aparentemente contradictorio se halla en la mala distribuci´ on de las ofertas entre las subastas. En concreto, si muchos productores eligen participar en el mismo conjunto de subastas, muchas otras quedan excluidas de las negociaciones, no recibiendo suficientes ofertas para cubrir su demanda, y, por tanto, debiendo ser canceladas. En las simulaciones presentadas en este apartado los productores seleccionan las subastas de forma aleatoria. Bajo esta configuraci´ on, la mayor parte de las subastas reciben pujas, pero los factores Rnp yRca no son lo suficientemente altos como para propiciar que todas las subastas reciban el n´ umero m´ ınimo de ofertas de producci´ on que requieren. La ineficiencia que causa la mala distribuci´ on de los participantes en los mercados de subastas paralelas se estudia en el siguiente apartado de este ap´ endice. Con precio de entrada Sin precio de entrada Cantidad intercamb. (kW) Subastas cubiertas ( %) Oferta vendida ( %) Cantidad intecamb. (kW) Subastas cubiertas ( %) Oferta vendida ( %) moderate 5798 37.97 18.06 12930 84.67 36.82 hard 3334 16.33 23.80 3843 18.82 20.70 Tabla C.4: Datos correspondientes a las simulaciones de los mercados de subastas paralelas cuando se aplican las se˜ nales moderate yhard. El operador tambi´ en puede enviar se˜ nales de tipo delta, las cuales en vez de ordenar la adopci´ on de un nivel predefinido de consumo, indican la cantidad exacta de demanda que se debe descartar. Para gestionar esta clase de se˜ nales en la tesis se usa el par´ ametro prioridad, cuyo valor pueden acordar los usuarios con el ASPEM como parte del contrato. En este caso, el primer paso del procedimiento es crear una lista de las cargas compuesta de tres secciones. Estas, respectivamente, se corresponden con los tipos de carga easy,normal yhard. Las primeras dos secciones, tomando la prioridad como valor de referencia, se ordenan en forma descendente, 239 C. RESUMEN EN ESPA ˜ NOL mientras que la secci´ on correspondiente a las cargas de tipo hard se ordena de forma ascendente. A continuaci´ on, se itera sobre la lista hasta cubrir la cantidad de demanda definida en la se˜ nal delta. En la Figura C.12 se muestra un caso en el que el operador ordena una reducci´ on de 30.000 kW entre las 2:00 pm y las 3:30 pm. El objetivo de esta se˜ nal es evitar que los nodos deban adquirir el nivel moderate, el cual, en conjunto, resultar´ ıa m´ as restrictivo para los usuarios. Figura C.12: Curvas de demanda cuando se aplica una se˜ nal OpenADR de tipo delta que ordena una reducci´ on de 30.000 kW. Los resultados demuestran que usando el modelo de Servicios de Agencia se pueden gestionar se˜ nales OpenADR a trav´ es de mercados. Esto, en contraposici´ on con el esquema cl´ asico, posibilita que los usuarios puedan participar activamente en el proceso de gesti´ on y, con ello, defender sus intereses. Los experimentos tambi´ en sirven para constatar que el modelo de Servicios de Agencia facilita que, sin perder capacidad de gesti´ on, los nodos cliente s´ olo tengan que procesar se˜ nales de tipo simple, as´ ı simplificando notablemente su infraestructura. 240 C.3 Aportaciones originales C.3.8 Distribuci´ on de los compradores en mercados de subastas paralelas En entornos grandes, como pueden ser el Smart Grid y las redes computacionales, un comprador puede recibir cientos o miles de invitaciones para participar en subastas, ya que los vendedores est´ an interesados en incrementar la participaci´ on, y con ella la competitividad. Cuando existen m´ as compradores que vendedores, la configuraci´ on ideal es que la participaci´ on de los primeros se distribuya de manera uniforme entre las subastas de los segundos. Sin embargo, esta condici´ on no se puede esperar en entornos donde los compradores son agentes independientes, aut´ onomos e interesados en sus propias metas. Adem´ as, a ello se ha de sumar que pueden existir factores objetivos que conduzcan a los compradores a preferir algunas subastas sobre otras. En particular, en este ´ ultimo caso cabe esperar que los compradores adopten estrategias a la hora de seleccionar las subastas en las que desean participar y que, adem´ as, estas estrategias sean compartidas, ocasionando as´ ı que los compradores se acaben concentrando en un peque˜ no grupo de subastas. Para solventar este problema, en esta tesis se desarrolla el m´ etodo HUDP (Hashbased Uniform Distribution of Players), el cual est´ a inspirado en el funcionamiento de las tablas hash. El comportamiento b´ asico de HUDP se resume en dos pasos: i. Los compradores se registran en HUDP, de forma que a cada uno de ellos se le asigna un identificador. ii. Cada comprador accede al HUDP para obtener la lista de subastas en las que puede participar. La presencia de un mecanismo como HUDP puede alterar las condiciones de la competici´ on y, por tanto, es necesario definir reglas que garanticen normas esenciales. En la tesis se proponen las siguientes cuatro Prerrogativas: 1. Si en la configuraci´ on original un comprador puede recibir suficientes invitaciones para alojar toda su capacidad, el mecanismo debe preservar esta condici´ on. 2. Si en la configuraci´ on inicial un vendedor puede recibir pujas suficientes para vender toda su oferta, entonces el mecanismo debe preservar esta condici´ on. 3. El mecanismo no puede actuar en perjuicio de un participante de forma deliberada. 241 C. RESUMEN EN ESPA ˜ NOL sin HUDP con HUDP Aleatorio Estrategia Aleatorio Estrategia Intercambiado (kW ) 10612 492 11672 11521 Oferta cubierta 84 % 4 % 93 % 91 % Subastas canceladas 22 1 11 12 Subastas vac´ ıa 22 245 0 0 Tabla C.6: HUDP: Escenario #1: Resultados para los casos en los que no se usan precios de entrada. tiende a seguir una distribuci´ on uniforme. Sin embargo, destaca que, pese a la gran capacidad de oferta, existe un n´ umero significativo de subastas vac´ ıas (subastas que no reciben ninguna oferta) y subastas canceladas (subastas que no reciben ofertas suficientes como para alojar toda la demanda subastada). Los resultados mejoran cuando se usa HUDP. En concreto, gracias a la mejor distribuci´ on de los compradores, no quedan subastas vac´ ıas y el n´ umero de subastas canceladas se reduce a la mitad. Por otra parte, cuando los compradores tienen incentivos para concentrarse, HUDP pr´ acticamente logra anular su efecto; por el contrario, cuando HUDP no se usa y los compradores tienden a agruparse, el n´ umero de intercambios, y por tanto la eficiencia del sistema, se reduce dr´ asticamente. Como se muestra en la Tabla C.7, cuando las subastas establecen precio de entrada, el mecanismo de distribuci´ on tambi´ en logra mejorar la eficiencia del sistema, anulando en gran medida la concentraci´ on de los compradores cuando estos adoptan estrategias comunes. En el Escenario 6 la capacidad de compra es inferior a la cantidad subastada, y asimismo el n´ umero de compradores es inferior al n´ umero de vendedores. Como se explic´ o, en estos casos la ´ unica mejora que se puede lograr es evitar la concentraci´ on de los compradores. Los datos de las tablas C.8 y C.9 demuestran que se logra este objetivo y que, adem´ as, cuando los compradores no tienen incentivos para agruparse, el mecanismo no causa ning´ un perjuicio. 248 C.3 Aportaciones originales sin HUDP con HUDP Aleatorio Estrategia Aleatorio Estrategia Intercambiado (kW ) 8493 950 9949 8727 Oferta cubierta 67 % 7 % 79 % 69 % Subastas canceladas 31 8 33 49 Subastas vac´ ıas 41 222 1 4 Tabla C.7: HUDP: Escenario #1: Resultados para los casos en los que se usan precios de entrada y pujas en forma de funciones lineas a trozos. con HUDP sin HUDP Aleatorio Estrategia Aleatorio Estrategia Intercambiado (kW ) 11663 487 11535 11565 Oferta cubierta 45 % 2 % 45 % 45 % Subastas canceladas 249 3 285 164 Subastas vac´ ıas 179 739 177 271 Tabla C.8: HUDP: Escenario #6: Resultados para los casos en los que no se usan precios de entrada. 249 C. RESUMEN EN ESPA ˜ NOL con HUDP sin HUDP Random Strategy Random Strategy Intercambiado (kW) 10051 752 10824 10883 Oferta cubierta 39 % 3 % 42 % 42 % Subastas canceladas 168 10 285 94 Subastas vac´ ıas 314 715 177 431 Tabla C.9: HUDP: Escenario #6: Resultados para los casos en los que se usan precios de entrada y pujas en forma de funciones lineas a trozos. La Figura C.18 ilustra el rendimiento de HUDP en cada uno de los escenarios. La tendencia general es que el nivel de mejora logrado por HUDP se reduzca cuando tambi´ en lo hace Rca, ya que a menos participantes, menos posibilidades de lograr una mejor distribuci´ on de ellos. El aspecto m´ as destacable es que el efecto de las estrategias es anulado en gran parte. Asimismo, otro efecto visible de HUDP es que resulta inocuo cuando los compradores no adoptan estrategias. El gr´ afico tambi´ en muestra que, cuando no se adoptan estrategias y Rca no tiene asociado un valor alto, no existe claro ganador. Esto se debe a que en este caso HUDP no tiene espacio para trabajar. Para concluir, se puede afirmar que HUDP: (i) anula casi por completo la concentraci´ on de compradores cuando estos se gu´ ıan por estrategias comunes; (ii) reduce el n´ umero de subastas canceladas; y (iii) resulta inocuo cuando no tiene posibilidad de actuar. Adem´ as, como se ha expuesto, el funcionamiento de HUDP se basa en operaciones sencillas e independientes, de forma que soporta accesos concurrentes. C.4 Conclusiones Muchas de las caracter´ ısticas que habitualmente se atribuyen al Smart Grid demandan la implantaci´ on de un sistema de gesti´ on distribuido. Estos son proyectados de forma que los puntos de producci´ on y consumo, representados por unidades de control inteligente, son capaces de planificar y negociar sus acciones directamente 250 C.4 Conclusiones Figura C.18: Histograma de la cantidad de oferta cubierta cuando se usa el mecanismo HUDP y los participantes adoptan estrategias. 251 C. RESUMEN EN ESPA ˜ NOL con el resto de entidades. En la pr´ actica, la implementaci´ on de este modelo, conocido como SDM, adquiere la forma de un mercado de energ´ ıa que se caracteriza por ser instanciado bajo demanda y de corta duraci´ on. Para hacer posible la participaci´ on aut´ onoma y automatizada de los usuarios en esta clase de entornos se propone el uso de agentes inteligentes, los cuales, a priori, re´ unen todas las caracter´ ısticas requeridas. Sin embargo, como se describe en este documento, los agentes inteligentes no han logrado el ´ exito esperado en entornos similares, haciendo necesario la elaboraci´ on de nuevos modelos de interacci´ on y despliegue. Adem´ as, como tambi´ en concluye este documento, responsabilizar a los dispositivos de control locales de tareas de negociaci´ on, coordinaci´ on y acceso a datos introduce retos estructurales y tecnol´ ogicos que contravienen muchas de las cualidades que se esperan del Smart Grid. Con el objetivo de superar esta barrera y de garantizar un sistema el´ ectrico reactivo, flexible y fiable, esta tesis, inspir´ andose en la experiencia obtenida en ´ areas similares, desarrolla el modelo de Servicios de Agencia. Este libera a los nodos locales de toda la complejidad que implica participar en sociedades virtuales y, a trav´ es de una soluci´ on inspirada en el paradigma Cloud Computing, logra conservar todas las propiedades que habitualmente se atribuyen a los agentes inteligentes. En este sentido, cabe destacar que el hecho de recurrir a la analog´ ıa de campos tecnol´ ogicos similares, identificando tanto las soluciones de ´ exito como los problemas que afrontan, ha constituido un recurso de gran utilidad para componer una soluci´ on nueva y pr´ actica. El modelo de Servicios de Agencia combina la orientaci´ on a servicios con los agentes inteligentes, constituyendo ambos una soluci´ on que supera muchos de los retos de interacci´ on que presenta el Smart Grid. Por un lado, la orientaci´ on a servicios facilita el desarrollo de una red el´ ectrica en la que los clientes puedan contratar servicios conforme a sus necesidades; mientras que las cualidades de los agentes software, que el nuevo modelo conserva en su totalidad, proporcionan autonom´ ıa a los usuarios y, con ello, la capacidad de implementar sistemas de gesti´ on distribuidos, reactivos e inteligentes. El estado del arte de los algoritmos para la gesti´ on de entornos propios del Smart Grid revela que caracter´ ısticas importantes de los mercados de energ´ ıa son casi siempre omitidas. Entre ellas destaca la necesidad de aceptar ofertas combinadas de tipo complementario y suplementario. S´ olo los algoritmos CONSEC y 252 C.4 Conclusiones mPJ consideran esta funcionalidad; y s´ olo el ´ ultimo de los dos, basado en subastas paralelas inversas, proporciona un enfoque distribuido que explota todas las capacidades de los agentes aut´ onomos. Esta tesis es el primer trabajo en simular el algoritmo mPJ en el entorno de las redes de energ´ ıa, demostrando su validez. Asimismo es el primero en destacar el fuerte impacto que tiene la distribuci´ on de la participaci´ on de los compradores en la eficiencia de las subastas paralelas. Por otra parte, la revisi´ on del estado del arte muestra que la mayor parte de los trabajos no est´ an basados en est´ andares propios del Smart Grid, ni tampoco, en su mayor´ ıa, son reproducibles, lo cual afecta a la verificabilidad de las propuestas y, en consecuencia, a las garant´ ıas que ofrecen los mismos. La infraestructura de simulaci´ on basada en GridLAB-D y Jade ha demostrado ser efectiva, siendo capaz de simular en detalle ambos campos de aplicaci´ on: el de las redes de energ´ ıa y el de los agentes inteligentes. Adem´ as, el uso de interfaces bien definidas para la intercomunicaci´ on y sincronizaci´ on de las dos herramientas de simulaci´ on ha probado generar un dise˜ no limpio y escalable, fortaleciendo as´ ı la apuesta por soluciones de simulaci´ on conjunta. Del mismo modo, se ha de destacar que la sincronizaci´ on de ambos simuladores, la cual es reconocida como la tarea m´ as compleja en esta clase de soluciones, se vio simplificada por el hecho de que los dos proyectos fueran de c´ odigo abierto. Como demuestran los experimentos, los cuales est´ an especialmente dise˜ nados para ser realistas y reproducibles, el modelo de Servicios de Agencia es capaz de instanciar mercados de energ´ ıa en programas DR. En estos entornos, que en principio est´ an pensados para operar en base a comportamientos preprogramados, la presencia de nodos ASPEM, que incluyen entornos virtuales de negociaci´ on para los agentes software, demuestra: proporcionar autonom´ ıa a los usuarios, simplificar la infraestructura necesaria en las instalaciones del cliente, y facilitar la implementaci´ on de mercados guiados por los intereses de los usuarios. Asimismo, los resultados de los experimentos demuestran que, usando mercados basados en subastas paralelas y agentes software aut´ onomos, se puede lograr la curvas de demanda correspondientes a las se˜ nales DR de entrada. Adem´ as, el modelo de Servicios de Agencia logra completar todos sus objetivos respetando los est´ andares del Smart Grid desarrollados por OASIS y NIST. 253 C. RESUMEN EN ESPA ˜ NOL La concentraci´ on de compradores es una condici´ on que puede afectar severamente a la efectividad de los mecanismos basados en subastas paralelas. Los experimentos demuestran que, cuando surge esta condici´ on, el sistema puede tornarse inoperativo, invalidando completamente el uso de subastas paralelas, y con ello uno de los mecanismos m´ as completos para implementar mercados en sistemas distribuidos como las redes computacionales o el Smart Grid. Esta tesis es el primer trabajo en estudiar en profundidad este efecto y en proponer una soluci´ on al problema. En concreto, el mecanismo HUDP, inspirado por el funcionamiento de las tablas hash, logra distribuir los compradores de manera uniforme entre las subastas sin alterar reglas b´ asicas de los mercados. Adem´ as, es una soluci´ on especialmente dise˜ nada para entornos concurrentes, distribuidos y reactivos, como el Smart Grid. Para concluir, se ha de destacar que todo el trabajo desarrollado a lo largo de esta tesis cumple con los c´ anones de la investigaci´ on reproducible. El prop´ osito de ello es que las contribuciones puedan ser contrastadas y, en caso de inter´ es, extendidas por otros grupos de investigaci´ on. 254 Bibliography [AB00] M. Amin and D. Ballard. Defining new markets for intelligent agents. IT Professional, 2(4):29–35, 2000. 31, 79, 89 [ACC+99] Gul A. Agha, Kathleen M. Carley, Jose Cuena, Edmund H. Durfee, Clarence Ellis, Les Gasser, Michael P. Georgeff, Michael N. Huhns andToru Ishida, Nadeem Jamali, Sascha Ossowski, H. Van Dyke Parunak, Anand S. Rao, Tuomas W. Sandholm, Sandip Sen, Munindar P. Singh, Larry M. Stephens, Gerard Tel, Jacques Wainer, Gerhard Weiss, Michael J. Wooldridge, and Makoto Yokoo. Multiagent Systems: A Modern Approach to Distributed Artificial Intelligence. MIT Press, 1999. 51 [All10] Robert John Allan. Survey of agent based modelling and simulation tools. Technical report, Science and Technology Facilities Council (STFC), 2010. 98 [Arn00] Tim Arnheiter. Modeling and simulation of an agent-based decentralized two-commodity power market. Multi-Agent Systems, International Conference on, 0:361–362, 2000. 31, 80 [ARP+02] C. Andrieu, B. Raison, D. Penkov, M. Fontela, S. Bacha, and N. Hadjsaid. Fault detection, analysis and diagnostics in high-dg distribution systems. Technical report, CRISP, 2002. 25 [ATS04] Stephanos Androutsellis-Theotokis and Diomidis Spinellis. A survey of peer-to-peer content distribution technologies. ACM Computing Surveys (CSUR), 36(4):335–371, 2004. 41 255 BIBLIOGRAPHY [BAV05] Rajkumar Buyya, David Abramson, and Srikumar Venugopal. The grid economy. Proceedings of the IEEE, 93(3):698–714, 2005. 44 [BBCP05] Fabio Bellifemine, Federico Bergenti, Giovanni Caire, and Agostino Poggi. Jade — a java agent development framework. In RafaelH. Bordini, Mehdi Dastani, J¨ urgen Dix, and Amal Fallah Seghrouchni, editors, Multi-Agent Programming, volume 15 of Multiagent Systems, Artificial Societies, and Simulated Organizations, pages 125–147. Springer US, 2005. 98 [BBD+06] Rafael H Bordini, Lars Braubach, Mehdi Dastani, Amal El FallahSeghrouchni, Jorge J Gomez-Sanz, Joao Leite, Gregory MP O’Hare, Alexander Pokahr, and Alessandro Ricci. A survey of programming languages and platforms for multi-agent systems. Informatica (Slovenia), 30(1):33–44, 2006. 98 [BCG+98] F. Brazier, F. Cornelissen, R. Gustavsson, C. M. Jonker, O. Lindeberg, B. Polak, and J. Treur. Agents negotiating for load balancing of electricity use. In The 18th International Conference on Distributed Computing Systems, page 622. IEEE Computer Society, 1998. 31, 87 [Bea04] David Booth and et al. Web Service Architecture, Feb 2004. 62 [Bra97] Jeffrey M. Bradshaw. Software Agents. AAAI Press, 1997. 51 [CA07] P. Carlsson and A. Andersson. A flexible model for tree-structured multi-commodity markets. Electronic Commerce Research, 7:69– 88, 2007. 82, 88 [Chr99] Rich Christie. Power systems test case archive. http://www. ee.washington.edu/research/pstca, 1999. 97, 123 [CL07] Manish Chhabra and Hongen Lu. Towards Agent Based Web Service. In 6th IEEE/ACIS International Conference on Computer and Information Science, 2007. 62 256 BIBLIOGRAPHY [CM06] Camarinha-Matos. Virtual Organizations, chapter ICT Infrastructures for VO, pages 83–103. Springer US, 2006. 46 [CMA03] Luis M Camarinha-Matos and Hamideh Afsarmanesh. Elements of a base ve infrastructure. Computers in industry, 51(2):139–163, 2003. 46 [CPPS06] G. Celli, F. Pilo, G. Pisano, and G. Soma. Optimal participation of a microgrid to the energy market with an intelligent ems. In International Power Engineering Conference, pages 663–668, 2006. 28 [CRI02] CRISP. Case study simulations and results. Technical report, Distributed Intelligence in Critical Infrastructures for Sustainable Power, 2002. 26, 83 [CSG08] DP Chassin, K Schneider, and C Gerkensmeyer. GridLAB-D: An open-source power systems modeling and simulation environment. In Transmission and Distribution Conference and Exposition, 2008. T&D. IEEE/PES. IEEE, 2008. 97 [cur15] curl. curl and libcurl. http://curl.haxx.se, 2015. 111 [DH04] A. L. Dimeas and N. Hatziargyriou. A multiagent system for microgrids. In IEEE Power Engineering Society General Meeting, number 55-58, 2004. 31, 77, 89 [DH05] A. Dimeas and N. Hatziargyriou. Operation of a multiagent system for microgrid control. IEEE Transactions on Power Systems, 20:1447–1455, 2005. 27, 31, 84, 85 [DJ03] Viet Dung Dang and Nicholas R. Jennings. Optimal clearing algorithms for multi-unit single-item and multi-unit combinatorial auctions with demand/supply function bidding. In Proceedings of the 5th International Conference on Electronic Commerce, ICEC ’03, pages 25–30, New York, NY, USA, 2003. ACM. 74, 79, 160 257 BIBLIOGRAPHY [LKG05] R. Lum, D.B. Kotak, and W.A. Gruver. Multi-agent coordination of distributed energy systems. In Systems, Man and Cybernetics, 2005 IEEE International Conference on, volume 3, pages 2584 – 2589, 10-12 2005. 31, 86 [LRHT10] I. Lopez-Rodriguez and M. Hernandez-Tejera. Agent-based services for building markets in distributed energy environments. In Renewable Energy & Power Quality Journal (ICREPQ), 2010. 187 [LRHT11a] I. Lopez-Rodriguez and M. Hernandez-Tejera. Challenges of using smart local devices for the management of the smart grid. In Smart Grid Communications (SmartGridComm), 2011 IEEE International Conference on, pages 73–77, Oct 2011. 187 [LRHT11b] Ignacio Lopez-Rodriguez and Mario Hernandez-Tejera. Software agents as cloud computing services. In Yves Demazeau, Michal Pechoucek, JuanM. Corchado, and JavierBajo P´ erez, editors, Advances on Practical Applications of Agents and Multiagent Systems, volume 88 of Advances in Intelligent and Soft Computing, pages 271–276. Springer Berlin Heidelberg, 2011. 187 [LRHT15] I. Lopez-Rodriguez and M. Hernandez-Tejera. Infrastructure based on supernodes and software agents for the implementation of energy markets in demand-response programs. Applied Energy, 158:1–11, 2015. xviii, 188, 189 [LRHTHC15] I. Lopez-Rodriguez, M. Hernandez-Tejera, and J. HernandezCabrera. Regulation of the buyers’ distribution in management systems based on simultaneous auctions and intelligent agents. Expert Systems with Applications, 42(21):8014 – 8026, 2015. xviii, 188, 190 [LRHTar] I. Lopez-Rodriguez and M. Hernandez-Tejera. Methods for the management of distributed energy environments using software agents and market mechanisms: A survey. Electric Power Systems Research, to appear. 188 264 BIBLIOGRAPHY [LSM09] J. Lagorse, M.G. Simoes, and A. Miraoui. A multiagent fuzzylogic-based energy management of hybrid systems. Industry Applications, IEEE Transactions on, 45(6):2123–2129, Nov 2009. 28 [LSS+11] Hua Lin, S. Sambamoorthy, S. Shukla, J. Thorp, and L. Mili. Power system and communication network co-simulation for smart grid applications. In Innovative Smart Grid Technologies (ISGT), 2011 IEEE PES, pages 1–6, Jan 2011. 96 [LSW08] T. Logenthiran, D. Srinivasan, and D. Wong. Multi-agent coordination for der in microgrid. In Sustainable Energy Technologies, 2008. ICSET 2008. IEEE International Conference on, pages 77–82, Nov 2008. 80 [LXJM12] Martin L´ evesque, Da Qian Xu, G´ eza Jo´ os, and Martin Maier. Communications and power distribution network co-simulation for multidisciplinary smart grid experimentations. In Proceedings of the 45th Annual Simulation Symposium, ANSS ’12, pages 2:1–2:7, San Diego, CA, USA, 2012. Society for Computer Simulation International. 96 [LZ14] Weilin Li and Xiaobin Zhang. Simulation of the smart grid communications: Challenges, techniques, and future trends. Computers & Electrical Engineering, 40(1):270 – 288, 2014. 40th-year commemorative issue. 97 [Mar98] Mauricio Mar´ ın. Asynchronous (time-warp) versus synchronous (event-horizon) simulation time advance in bsp. In David Pritchard and Jeff Reeve, editors, Euro-Par’98 Parallel Processing, volume 1470 of Lecture Notes in Computer Science, pages 897– 905. Springer Berlin Heidelberg, 1998. 117 [MFPF01] Ma Ta Martinez, Philippe Fouletier, Ka Ha Park, and Joel Favrel. Virtual enterprise–organisation, evolution and control. International journal of production economics, 74(1):225–238, 2001. 45 265 BIBLIOGRAPHY [MG11] Peter Mell and Timothy Grance. The NIST definition of cloud computing. Technical report, National Institute of Standards and Technology (NIST), 2011. 53 [ML07] P. McBurney and M. Luck. The agents are all busy doing stuff! Intelligent Systems, IEEE, 22(4):6–7, July 2007. 51 [NEGR15] Nada A. Nabeeh, Haitham A. El-Ghareeb, and A. M. Riad. Integrating software agents and web services in service oriented architecture based cloud services discovery framework. Journal of Cases on Information Technology (JCIT), 10:67–79, 2015. 187 [NER11] NERC. Balancing and frequency control. Technical report, North American Electric Reliability Corporation (NERC), 2011. 7 [NIS12] NIST Framework and Roadmap for Smart Grid Interoperability Standards, Release 2.0, 2012. 32 [NT07] Mohammad Reza Nami and Djamshid Tavangarian. Virtual Organization: A New Approach in IT. In IEEE International Conference on Computer and Information Technology (CIT), volume 1, pages 93–98, 2007. 45 [OAD] OpenADR Alliance. http://www.openadr.org. 11, 35 [OAD12] Openadr 2.0a profile specification, 2012. 35 [OASa] Energy interoperation version 1.0. 32 [OASb] Energy market information exchange (emix) version 1.0. 34 [OASc] Ws-calendar version 1.0. 34 [OJ05] J. Oyarzabal and J. Jimeno. Agent based micro grid management system. In Future Power Systems (FPS), pages 16–18, 2005. 30 [Ora00] Oracle. Java Network Launching Protocol & API Specification (JSR-56), September 2000. 59 266 BIBLIOGRAPHY [PAG+09] Piette, Mary Ann, Girish Ghatikar, Sila Kiliccote, Ed Koch, Dan Hennage, Peter Palensky, and Charles McParland. Open Automated Demand Response Communications Specification (Version 1.0). Technical report, Lawrence Berkeley National Laboratory, 2009. 64 [Pal12] Mauricio Paletta. Cloud Computing for Teaching and Learning: Strategies for Design and Implementation, chapter Intelligent Clouds: By Means of Using Multi-Agent Systems Environments, pages 254–279. Information Science Reference, 2012. 187 [PAP] Requirements for smart meter upgradeability. 68 [PFR09] M. Pipattanasomporn, H. Feroze, and S. Rahman. Multi-agent systems in a distributed smart grid: Design and implementation. In Power Systems Conference & Exposition (PSCE), 2009. 31, 87 [PJ05] Y. K. Penya and N.R. Jennings. Combinatorial markets for efficient electricity management. In IEEE/WIC/ACM Int Conf on Intelligent Agent Technology, pages 626–632, 2005. 79, 88, 89, 122, 131, 178 [PL06] Yoseba Penya Landaburu. Optimal Allocation and Scheduling of Demand in Deregulated Energy Markets. PhD thesis, Vienna University of Technology, 2006. 131 [PLSW06] L. Phillips, M. Link, R. Smith, and L. Weiland. Agent-based control of distributed infrastructure resources. Technical report, Sandia National Laboratories, 2006. 24, 31 [PS06] Michael Peters and Sergei Severinov. Internet auctions with many traders. Journal of Economic Theory, 130:220–245, 2006. 178 [Rez93] Larry Reznick. Using cron and crontab. Sys Admin, 2(4):29–32, 1993. 105 267 BIBLIOGRAPHY [RLS+14] S. Rohjans, S. Lehnhoff, S. Schutte, F. Andren, and T. Strasser. Requirements for smart grid simulation tools. In Industrial Electronics (ISIE), 2014 IEEE 23rd International Symposium on, pages 1730–1736, June 2014. 97 [RPH98] Michael H. Rothkopf, Aleksandar Peke, and Ronald M. Harstad. Computationally manageable combinational auctions. Management science, 44(8):1131–1147, 1998. 76 [RPT07] S. Rahman, M. Pipattanasomporn, and Y. Teklu. Intelligent distributed autonomous power systems (idaps). In IEEE PES Annual General Meeting, pages 1–8, 2007. 31, 86 [RSEC11] B. Ramachandran, S.K. Srivastava, C.S. Edrington, and D.A. Cartes. An intelligent auction scheme for smart grid market using a hybrid immune algorithm. Industrial Electronics, IEEE Transactions on, 58(10):4603–4612, Oct 2011. 78 [RZ94] J. S. Rosenschein and G. Zlotkin. Rules of Encounter: Designing Conventions for Automated Negotiation Among Computers. The MIT Press, 1994. 87 [San02] Tuomas Sandholm. Algorithm for optimal winner determination in combinatorial auctions. Artificial Intelligence, 135(1–2):1–54, 2002. 52, 76, 178 [SBLH06] Nigel Shadbolt, Tim Berners-Lee, and Wendy Hall. The Semantic Web Revisited. IEEE Intelligent Systems, 21(3):96–101, July 2006. 62 [Sch01] Rudiger Schollmeier. A definition of peer-to-peer networking for the classification of peer-to-peer architectures and applications. Peer-to-Peer Computing, IEEE International Conference on, 0:101–102, 2001. 41 268 BIBLIOGRAPHY [SJ06] Manuel Sanchez-Jimenez. Smart electricity networks based on large integration of renewable sources and distributed generation. Master’s thesis, Kassel University, 2006. 6 [SS01] Tuomas Sandholm and Subhash Suri. Market clearability. In International Joint Conference on Artificial Intelligence, volume 17, pages 1145–1151. LAWRENCE ERLBAUM ASSOCIATES LTD, 2001. 74, 79, 160, 178 [Sta12] Tom Stanton. Are smart microgrids in your future? exploring challenges and opportunities for state public utility regulators. Technical report, National Regulatory Research Institute, 2012. 187 [Ste14] F. Bush Stephen. Smart Grid: Communication-Enabled Intelligence for the Electric Power Grid, chapter Appendix: Smart Grid Simulation Tools, pages 489–492. John Wiley & Sons, Ltd, 2014. 97 [Sto09] Victoria Stodden. Enabling reproducible research: Licensing for scientific innovation. International Jornal of Communications Law & Policy, 13:1, 2009. 90, 96 [Str05] Marta Stryszowska. Last-minute and multiple bidding in simultaneous and overlapping second price internet auctions. CentER Working Paper Series, 2005. 178 [Tal12] D. Talia. Clouds meet agents: Toward intelligent cloud services. Internet Computing, IEEE, 16(2):78–81, March 2012. 187 [Tal14] Domenico Talia. Towards internet intelligent services based on cloud computing and multi-agents. In Salvatore Gaglio and Giuseppe Lo Re, editors, Advances onto the Internet of Things, volume 260 of Advances in Intelligent Systems and Computing, pages 271–283. Springer International Publishing, 2014. 187 269 BIBLIOGRAPHY [TTL05] Douglas Thain, Todd Tannenbaum, and Miron Livny. Distributed computing in practice: the condor experience. Concurrency and Computation: Practice and Experience, 17(2-4):323–356, 2005. 43 [Vic61] William Vickrey. Counterspeculation, auctions, and competitive sealed tenders. The Journal of finance, 16(1):8–37, 1961. 79 [W3C] Soap version 1.2 part 0: Primer (second edition). 36 [WJ95] Michael Wooldridge and Nicholas Jennings. Intelligent agents: Theory and practice. Knowledge Engineering Review, 10:115–152, 1995. 50 [Woo09] Michael Wooldridge. An Introduction to MultiAgent Systems - Second Edition. John Wiley & Sons, 2009. 51 [XMP] XMPP Standards Foundation. Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence. 35, 59, 99 [YA96] F. Ygge and J. M. Akkermans. Power load management as a computational market. In Second International Conference on MultiAgent Systems, ICMAS 1996, Kyoto, Japan, pages 393–400. AAAI Press, 1996. 81 [YA00] F. Ygge and H. Akkermans. Resource-oriented multicommodity market algorithms. Autonomous Agents and Multi-Agent Systems, 3:53–71, 2000. 81 [YWM+05] Zhihong Ye, R Walling, N Miller, P Du, and K Nelson. Facility Microgrids. National Renewable Energy Laboratory, 2005. 87 [ZCB10] Qi Zhang, Lu Cheng, and Raouf Boutaba. Cloud computing: stateof-the-art and research challenges. Journal of Internet Services and Applications, 1:7–18, 2010. 53 270 BIBLIOGRAPHY [ZK13] T.A. Mohamed Ziyad and Dr.K.R. Shankar Kumar. Agent based intelligent systems: General views from learning and research perspective. Artificial Intelligent Systems and Machine Learning, 5(4), 2013. 187 271 Declaration I herewith declare that I have produced this work without the prohibited assistance of third parties and without making use of aids other than those specified; notions taken over directly or indirectly from other sources have been identified as such. This work has not previously been presented in identical or similar form to any examination board. The dissertation work was conducted under the supervision of Francisco Mario Hern´ andez Tejera at the University of Las Palmas de Gran Canaria. This page is intentionally left blank