Mathematical programming with equilibrium constraints: Difference between revisions

From Cornell University Computational Optimization Open Textbook - Optimization Wiki
Jump to navigation Jump to search
(→‎Piecewise SQP: equations updates)
(updated step 1 formula)
Line 119: Line 119:
<u>Step 1:</u> Let (<math>dx^v</math>, <math>\pi^{v+1}</math>) be a KKT pair for:
<u>Step 1:</u> Let (<math>dx^v</math>, <math>\pi^{v+1}</math>) be a KKT pair for:


<math>min \bigtriangledown f(x^v)^T dx + 0.5 dx^T (\bigtriangledown f(x)^2) L^NLP(v^v, \pi^v)dx</math>
<math>min \bigtriangledown f(x^v)^T dx + 0.5 dx^T \bigtriangledown^2_{xx} L^{LNP}(v^v, \pi^v)dx</math>


<math>s.t. g_i (x^v) + \bigtriangledown g_i (x^v)^T dx = 0, i =1...,l</math>
<math>s.t. g_i (x^v) + \bigtriangledown g_i (x^v)^T dx = 0, i =1...,l</math>

Revision as of 16:57, 11 December 2021

Authors: Andrew Amerman, Hannah Levy, Juan Henriquez, Matthew Baccaro, and Taha Shamshudin (SYSEN 5800 Fall 2021)

Introduction

A Mathematical Program with Equilibrium Constraint (MPEC) are special class of constrained optimization problems inside of nonlinear programming (NLP) [1]. These are constrained optimization problems where the constraints include equilibrium constraints like variational inequalities or complementary conditions. Variational inequalities are inequalities that involve a function and must be solved for all possible values of a given variable [2]. MPECs have applications in fields of engineering design, economic equilibrium, high level games, and modeling of transportation [2]. The feasible set of MPEC violates most of the standard constraint qualifications and are difficult to solve due to the feasible region not necessarily being convex or connected [1]. Constraint qualifications are assumptions of a feasible set of optimization problem. These qualifications confirm that Karush–Kuhn–Tucker (KKT) conditions are true at any local minimum [1]. It is necessary to consider suitable optimality conditions, which are derived studying the behavior of the functions and their derivatives at that point, for solving these optimization problems. Throughout this article, the theory and methodology behind MPEC will be discussed and an example will be given as well discussion on the applications pertaining to MPEC will occur.

Theory/Methodology/Algorithms

Definition

The MPEC problem is defined as a nonlinear programming optimization problem which includes variables based on the sets of  and   where there are one or more parametric variational inequality constraints for primary variables y and parameter vector x, where vector x contains the design variables of an engineering process [3].

The standard form for MPEC problems is:

where for all

refers to the equilibrium function of the inner problem.

Note that the above definition defines a nonlinear programming problem. The constraint:

represents the equilibrium constraints. The MPEC optimization problem becomes useful when these equilibrium constraints represent engineering or economic equilibrium states that can be modeled here as variational inequalities [3].

Given vector x:

Denoted by:

, is the set of all vectors[3].

Targeted Approaches

Three different types of algorithmic approaches can be used to solve MPEC. These are the penalty interior point approach (PIPA), the implicit programming approach, and the piecewise sequential quadratic programming (SQP) approach [3].

PIPA

The PIPA methodology has been applied to applications in finance, target classification, and electricity markets. This technique generates a sequence of iterates as shown below that are strictly within the bounds. The iterates are calculated by solving a quadratic direction-finding problem. PIPA combines aspects of interior-point and SQP methods.[4]

This approach considers an MPEC optimization problem with parametric complementary constraints as follows:

And defines the following optimality constraint:

Given:

is a stationary point if and only if:

The following algorithm is employed:

Step 0: Initialize scalars and the initial iterate.

Step 1: Solve the quadratic programming subproblem at v such that is the unique solution. Set penalty parameter αv using the selected penalty update rule.

Step 2: Calculate the step size.

Step 3: Compute the termination check to see if the optimal solution has been reached. If the optimal solution has not been reached, repeat steps 1-3 for [3].

A basic termination condition is:

Implicit Programming

The implicit programming approach is appropriate for use when complementarity constraints meet specific regularity conditions. This occurs when they are limited to solve the resulting nonsmooth problem in the variable x, as seen below[2].

This approach solves MPEC problems of the form:

The following subproblem can be defined:

Where Qv is a symmetric positive definite matrix.

The following method can be used to solve this formulation:

Step 0: Initialize scalars and the initial iterate.

Step 1: Solve the defined subproblem to obtain the solution if , the optimal solution has been found and is a stationary point. If not, determine the step size and repeat until the optimal solution has been found [3].

Piecewise SQP

The Piecewise SQP technique is a numerical method for solving certain MPECs, based on the different sequential quadratic programming method for NLP problems. This can be applied to any MPEC whose lower-level problem is a mixed complementarity problem and indirectly to any MPEC where the lower-level problem is at the class of variational inequalities. [5]

This approach solves MPEC problems of the form:

,

,

The following Newton-type method is employed:

Step 0: Initialize , ,

Step 1: Let (, ) be a KKT pair for:

Step 2: Set and check for termination. If check fails, repeat steps 1 and 2 with [3].

General Approaches

Note that the above approaches do not cover all formulations of MPEC problems. Aside from these formulations, one of the main approaches for the solution of optimization problems with constraints is a reformulation of the problem as a standard nonlinear program which allows the solution to use existing non-linear programming algorithms. There have been three advances in the past two decades which have increased the capability of a modeler to solve large scale complementarity problems. First was the implementation of large-scale complementarity solvers which utilize advance methods in linear algebra and nonlinear optimization. Some of these solvers are MILES, PATH and SMOOTH. The second advancement is the start of modeling systems that are able to express complementarity problems as part of their syntax and pass the model to the solver. The third advancement was the interactions in which the first two develop. A modeler is able to generate realistic large-scale models which allow the solvers to be tested on large and more difficult class of models. By solving larger and complex programming problems with additional constraints, this furthers the development of new applied economic models [2].

Numerical example

Bilevel program considered by Dempe [3]

argmin

We write the second-level optimization problem in terms of KKT conditions, and obtain a mixed nonlinear complementary problem (NCP) constrained master problem (MP):

using initial values for and using the generic algebraic modeling system (GAMS) MPEC solver [6] we modified the following instructions and solved for it.

Variables  objvar,x2,x3,x4,x5;
Positive Variables x5;
Equations  e1,e2,e3,e4;
e1.. - (POWER(x2 - 3.5,2) + POWER(4 + x3,2)) + objvar =E= 0;
e2.. 2*x3*x4 +x3 =E= 3;
e3.. x4 =G= 0;
e4.. - x3*x3 + x2 - x5 =E= 0;
* set non default bounds
* set non default levels
x2.l = 1; 
x3.l = 1; 
x4.l = 1; 
x5.l = 1; 
* set non default marginals
Model m / e1,e2.x3,e3.x5,e4.x4/;
m.limrow=0; m.limcol=0;
$if NOT '%gams.u1%' == '' $include '%gams.u1%'
Solve m using MPEC minimizing objvar;

After 5 iterations, MPEC terminates at the point with the first-level function value being .

Applications

MPEC can be found in a variety of real world applications such as: power management [7], highway pricing[8], chemical process engineering [9], and traffic planning [10]. One of the common two-level problems solved through MPEC is a single-leader Stackelberg game. This model is defined by a leader firm which moves first in the market, then other firms follow. Two of the most common fields this theory is applied is energy pricing and transportation tolls.

Energy Pricing

One type of problem solved using MPEC is finding market equilibrium in the energy sector. If we assume that there is only one strategic player in an energy market (leader) and there are several smaller fringe firms we can setup an MPEC with the constraints bounded by a fixed demand in the network and firms focused on maximizing profits. In this case the top level of the problem is solved with the market leader, and the lower-level equilibrium problem is made up of the competitive fringe firms where an independent system operator (ISO) is making decisions on the quantities produced by each fringe firm. This lower level problem is used as a starting point for the equilibrium constraints of the MPEC. This technique is shown to solve a fifteen-node network representative of the Western European power grid [11].

A similar model is presented for the United States power grid by Hobbs, Metzler, and Pang [12]. The single-firm model consists of a dominant firm that interprets competitor firms’ bids and seeks to maximize its own profits. An MPEC is utilized with a penalty interior point algorithm to iterate through the single-firm problem to determine the optimum profit of the system, and ensure it is a global solution.

Transportation Tolls

MPEC problems are also used to solve pricing for highway tolls in a given area. Congestion on highways is one of the leading causes of accidents which has led to safety researchers to investigate ways to reduce traffic flow in certain areas. These problems are set up in a way that the different roadways between nodes are evaluated for demand and whether tolls can be placed on the road. This type of setup is considered a second-best toll pricing problem, which can be represented as a MPEC formulation of a bi-level optimization problem [13].

Conclusions

MPEC optimization problems are complex constrained optimization problems commonly used to approach feasible sets that are not convex or connected. The problems are generally approached three different way: PIPA, implicit descent, and piecewise SQP which provides for a technique to solve a MPEC of a variety of forms. With the ability to solve complex bi-level optimization problems, MPEC are commonly applied to transportation problems along with Stackelberg leadership game scenarios to find the optimal solution.

References

  1. 1.0 1.1 1.2 Joshi, B.C. Some Results on Mathematical Programs with Equilibrium Constraints. Oper. Res. Forum 2, 53 (2021).
  2. 2.0 2.1 2.2 2.3 M. Ferris, S. Dirkse, and A. Meeraus. Mathematical Programs with Equilibrium Constraints: Automatic Reformulation and Solution via Constrained Optimization. Northwestern University, Evanston, Illinois, July 2002.
  3. 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 Z.-Q. Luo, J.-S. Pang, and D. Ralph, Mathematical Programs with Equilibrium Constraints. Cambridge: Cambridge University Press, 1996.
  4. S. Leyffer, “Penalty Interior-Point Method Fails to Converge”, Optimization Methods and Software, vol 20, 11 2003.
  5. D. Ralph, “Optimization with equilibrium constraints: A piece-wise SQP approachOptimization with Equilibrium Constraints: A Piecewise SQP Approach”, in Encyclopedia of Optimization, C. A. Floudas en P. M. Pardalos, Reds Boston, MA: Springer US, 2001, bll 1897–1903.
  6. “MPEC World,” MPEC World Home Page. [Online]. [Accessed: 28-Nov-2021].
  7. Siddiqui, S., Gabriel, S.A. An SOS1-Based Approach for Solving MPECs with a Natural Gas Market Application. Netw Spat Econ 13, 205–227 (2013).
  8. Wang, J., Kang, Y., Kwon, C. et al. Dual Toll Pricing for Hazardous Materials Transport with Linear Delay. Netw Spat Econ 12, 147–165 (2012).
  9. B. T. Baumrucker, J. G. Renfro, en L. T. Biegler, “MPEC Problem Formulations in Chemical Engineering Applications”. 2007.
  10. Liu X, Chen Q, An Algorithm for the Mixed Transportation Network Design Problem. PLOS ONE 11(9): e0162618, (2016).
  11. S. A. Gabriel and F. U. Leuthold, “Solving discretely-constrained MPEC problems with applications in electric power markets,Energy Economics, vol. 32, no. 1, pp. 3–14, 2010.
  12. B. F. Hobbs, C. B. Metzler and J. -. Pang, "Strategic gaming analysis for electric power systems: an MPEC approach," in IEEE Transactions on Power Systems, vol. 15, no. 2, pp. 638-645, May 2000.
  13. Lawphongpanich, S., Hearn, D. An MPEC approach to second-best toll pricing. Math. Program., Ser. A 101, 33–55 (2004).