Mercado Objetivo
“BIENES PÚBLICOS Y EXTERNALIDADES”
4.3. Plan de Gestión Social 4
The presented model framework covers the most relevant concepts and market actors. It is suitable for researching the main effects that can be expected from the introduction of a market for availability. However, some limitations are worth mentioning and can be seen as starting points for further research. The suggestions are ranked based on feedback received for the model at various events with academics and industry.
First, the model simulates a single year assuming that the emerging equilibrium is the result of a transition pathway. This is different to dynamic modeling techniques described in Section 3.2. However, the model in its present form could be extended to a multi-year approach by introducing an additional temporal index, e.g., representative years. Such a model extension would allow incorporating additional technical limitations like limited available technologies or delays in construction. Moreover, one could better represent market specifications such as lead times of CMs. The main hurdle is related to computational challenges but this could be addressed in a similar way as the representative periods.
Second, the role of storage applications and RES in other markets than the energy market is limited. Similar to new ways of participation in reserve requirements [6], an extension to this model could be an active participation of storage operators and RES in CMs, in a first approach, achieved by altering the deratings for technologies. Eventually, one could think of endogenous decision- making of agents to participate in a CM if there is a penalty for non-delivery. As such, the storage operators and RES would have to make a trade-off between the additional revenues and being unavailable, i.e., facing a penalty. This requires an extension on the stochastic framework as presented in Chapter 6.
Third, the model assumes that the generators group the technologies, i.e., one generator represents a unique technology available in the market. In a next step, one could assume agents incorporating different technologies and operate on multiple markets. An extension to Chapter 5 could include a case study on different utility functions of agents to spread a portfolio on interconnected market zones with different market settings. Together with the models for risk- averse behavior (Chapter 6), the model would represent the decision-making of large players in for example the European Internal Energy Market (IEM) more realistically.
SOFTWARE IMPLEMENTATION 99
Computation
method processingData formulationModel Solver
MCP Chapters 4,5 Python GAMS (MCP) Julia JuMP/Complementarity.jl (MCP) PATH Julia JuMP (QP) ADMM Chapter 6 CPLEX
Figure 3.12: Software implementation for equilibrium models
this would extend the model framework to a multi-level problem, i.e., with leaders and followers. Consequently, this would also require the introduction of new solution concepts. For the context of the model framework, two options seem appealing. On the one hand, one could assume an agent representing the regulator that has the decision variables to define the demand for capacity, e.g., chosen mechanism or the target demand respectively SR volume. Given its utility function, e.g. combined level of adequacy and social welfare, it would decide on the CM design endogenously. A regulator that anticipates on the market reaction of all other agents as described above, i.e., a leading regulator would parameterize the CM in an optimal way. On the other hand, leading generators (or firms) could anticipate on the reaction of the regulator to parameterize the CMs given their announced plans to invest. They could adapt their strategy to tune the CMs via the regulator’s reaction in a more favorable way. The latter one certainly deserves a discussion with respect to slippery slopes of SR or self-fulfilling prophesies of CMs once addressed.
3.5
Software Implementation
The software implementation of the models can be divided into two approaches based on the method of computation of the NE. Figure 3.12 shows the model components, software choices and their interactions.
Chapter 4 and 5 use the MCP-reformulation to compute the NE. The MCP formulation is implemented using two different software languages of which advantages and disadvantages are briefly discussed.
In a first implementation, the model in its MCP form is formulated using General Algebraic Modeling System (GAMS) [151]. GAMS is a high-level
100 MODELS FOR MARKETS INCLUDING CAPACITY MECHANISMS
modeling system for mathematical programming and optimization. It consists of a language compiler and a set of integrated high-performance solvers including the PATH solver [152]. GAMS uses the dedicated PATH solver [153] to solve the square set of complementarity constraints. PATH uses Newton methods for solving complementarity problems [154]. It is based on the normal map formulation of complementarity problems. At each iteration, a linear complementarity problem is solved to calculate a direction. The data processing prior to and after model formulation is done in Python. This includes the storing of model parameters, processing, plotting of results and so on.
GAMS offers some built-in features used to reduce the computation time. One feature is the possibility to scale constraints and variables without altering the model formulation. The performance of the PATH solver improves if the constraints are on the same scale. An example usage is the RES target. Due to the summation over all hours, the magnitude is about 1000 to 10000 times larger than for example hourly energy constraints. Alternatively, scaling can also be directly integrated in the model formulation. However, this approach would require a consequent rescaling of the model solution afterwards. Moreover, GAMS directly allows rerunning models using previous solutions as starting point. A starting point close to the solution improves the performance of the PATH solver to find the new solution. Such a “warm start” can be exploited if for example sensitivity analysis on RES targets are executed. Note that GAMS is a commercial software that requires a license that needs to be purchased. Purchasing such a license can be omitted with the alternative described below.
In a second implementation, the whole chain from data processing to model formulation, including the interface to the PATH solver, is implemented in Julia [155]. Julia is a rather new, high-level, high-performance dynamic programming language for numerical computing. It provides a sophisticated compiler, distributed parallel execution, numerical accuracy, and an extensive mathematical function library [156]. The JuMP (Julia for Mathematical Optimization) library is used for the model formulation [157]. In particular, the MCP formulation is realized using the Complementarity library [158] providing a modeling interface for MCP and Math Programs with Equilibrium Problems (MPEC) via JuMP. The interface to the PATH solver is done using the underlying
PATHsolver library [159]3.
The approach with Julia does not require the purchase of a commercial license 3At this point, I would like to thank prof. Changhyun Kwon (http://www.chkwon.net/) from the University of South Florida for the development of the libraries and the support and cooperation during implementation.
CONCLUSIONS 101
and performs as well as the approach using GAMS. Data processing and model formulation prior to the solving is even sped up. The only downside experienced during implementation is the lack of a possibility to efficiently rerun models using starting points from previous solutions. This is a specific problem for the implementation of the interface with the PATH solver and might be changed in future versions.
Similarly, the ADMM-based methodology (Chapter 6) is also entirely implemented in Julia. The requirement for the solver changes however. Instead of solving a MCP, the update steps require solving a Quadratically Constrained Program (QCP). It is chosen to use the CPLEX solver because a commercial license is available in the research group. However, other available QCP solvers, e.g., MOSEK, can replace CPLEX. For this approach, the Julia implementation has shown significant advantages as the interface can be implemented independent of the solver chosen. Moreover, the iterative process of the ADMM-based method extensively benefits from interfacing the model formulation and result processing because of the direct interface with the solver implementation.
In summary, two approaches for software implementation have been intensively used throughout the doctoral research and selected for the specific application based on their individual advantages. Moreover, both implementations have been used for validation of the two different computation methods, i.e., relying on an MCP reformulation or the iterative process using the primal model formulation. In case both methods compute an equilibrium, the resulting equilibria coincide, i.e, the values of all primal variables are equal. This has been tested for all market mechanisms.
Efforts have been made in describing an academic-viable software framework that does not necessarily rely on commercial solvers, but also makes use of academic or open-source licenses. Here, the Julia implementation offers the best flexibility to select solvers based on their availability.
3.6
Conclusions
The model framework is introduced. It forms the baseline for the case studies in the following chapters. The modular modeling framework builds upon equilibrium modeling and presents capacity expansion planning as a non- cooperative game of agents. Each type of agent represents a major market participant including generators, storage operators, consumers and market operators. For generators and storage operators, the decision-making entails investment decisions and decisions on volumes offered to the markets for energy,
102 MODELS FOR MARKETS INCLUDING CAPACITY MECHANISMS
flexibility (reserve requirements), Renewable Energy Sources (RES) certificates, and availability, i.e., capacity mechanisms (CMs).
The decision-making of each agent is transferred into a mathematical optimization problem. Each problem consists of a utility function and technical constraints describing the set of strategies. Each agent’s problem is discussed for three different market settings: energy-only market, centralized capacity market, and strategic reserves. In addition, the chapter briefly discusses capacity payments, reliability options and decentralized capacity markets for which the formulations are included in appendix. Finally, limitations of the model and possible extensions of the modeling framework are outlined.
Keeping the limitations in mind, the modeling framework offers an added value for studying the impact of changing market designs for relevant market participants. It allows comparing the effect of changing revenues resulting from the introduction of all major concepts for CMs. The impact can be examined for individual generation and storage technologies. Moreover, implications for consumers and from a systems perspective can be studied. The individual decision-making of each agent reveals how the changing revenues from markets for energy, RES certificates, flexibility and availability are translated into, e.g., changing installed capacities, price-elastic demand response, or involuntary energy not served.
As such, the model framework forms a first contribution of the thesis. It is a comprehensive framework for the studying of CMs. All major concepts of CMs are incorporated. The framework builds upon well-established equilibrium modeling and allows tracing links between market participants’ decision-making and market outcome. It bridges the gap between commonly used optimization models and agent-based models applying detailed expert rules.
In addition, many extensions can be easily built upon the presented framework. A multi-zonal context and the introduction of risk-averse agents are two examples, both part of this thesis.