A new approach to electricity market clearing with uniform purchase price and curtailable block orders. (15th September 2018) - Savelli, Iacopo; Cornélusse, Bertrand; Giannitrapani, Antonio; Paoletti, Simone; Vicino, Antonio
Highlights: Electricity market clearing with curtailable block orders and uniform purchase price. Equivalent reformulation of the uniform purchase price. Exact and heuristic-free model cast as a mixed-integer linear program. Python implementation freely available in a public repository. Abstract: The European market clearing problem is characterized by a set of heterogeneous orders and rules that force the implementation of heuristic and iterative solving methods. In particular, curtailable block orders and the uniform purchase price pose serious difficulties. A block order spans over multiple hours, and can be either fully accepted or fully rejected. The uniform purchase price prescribes that all consumers pay a common price in all the zones, while producers receive zonal prices, which can differ from one zone to another. The market clearing problem in the presence of both the uniform purchase price and block orders is a major open issue in the European context. The uniform purchase price scheme leads to a non-linear optimization problem involving both primal and dual variables, whereas block orders introduce multi-temporal constraints and binary variables into the problem. As a consequence, the market clearing problem in the presence of both block orders and the uniform purchase price can be regarded as a non-linear integer programming problem involving both primal and dual variables with complementary and multi-temporal constraints. The aim of this paper is to present a non-iterative and heuristic-free approach for solving the market clearing problem in the presence of both curtailable block orders and the uniform purchase price scheme. The solution is exact, with no approximation up to the level of resolution of current market data. By resorting to an equivalent uniform purchase price formulation, the proposed approach results in a mixed-integer linear program, which is built starting from a non-linear integer bilevel programming problem. Numerical results using real market data are reported to show the effectiveness of the proposed approach. The model has been implemented in Python, and the code is freely available on a public repository.