Lecture07:双层规划方法

 

目录

1 双层规划模型

1.1 一个简单的例子

1.2 斯坦克尔伯格模型到双层规划模型

2 求解双层规划

2.1 Mathematical Program with Complementarity Constraint (MPCC)

2.2 互补条件的线性化

2.2.1 Fortuny‐Amat (“Big‐M”) approach

3 策略提供问题(Strategic offering problem)

3.1 问题描述与模型

3.2 生成下层问题的KKT条件

3.3 线性化互补条件

 3.4 模型处理

 4 Equilibrium Problem with Equilibrium Constraints (EPEC)


本系列已发表文章列表:

Lecture01:市场出清问题的优化建模

Lecture1b: 如何由原始线性规划模型得到最优条件和对偶问题

Lecture02:均衡问题-优化问题以及KKT等价

Lecture03: 市场出清机制的理想特性

Lecture05:随机市场出清_运筹码仓的博客-CSDN博客

Lecture06:市场出清问题的鲁棒方法_运筹码仓的博客-CSDN博客


参考书籍:

  1. Gabriel, S. A., Conejo, A. J., Fuller, J. D., Hobbs, B. F., & Ruiz, C. (2012). Complementarity modeling in energy markets (Vol. 180). Springer Science & Business Media.
  2. Dempe, S. (2018). Bilevel optimization: theory, algorithms and applications (Vol. 3). TU Bergakademie Freiberg, Fakultät für Mathematik und Informatik.
  3. Luo, Z. Q., Pang, J. S., & Ralph, D. (1996). Mathematical programs with equilibrium constraints. Cambridge University Press.
  4. Pozo, D., Sauma, E., & Contreras, J. (2017). Basic theoretical foundations and insights on bilevel models and their applications to power systems. Annals of Operations Research254(1), 303-334.

1 双层规划模型

1.1 一个简单的例子

现在有两个玩家,称为领导者和跟随者,追随者的反应会影响领导者,领导者会预测追随者的反应。

Lecture07:双层规划方法_第1张图片

因为追随者是看到领导者的行为之后,自己才行动,因此我们可以将联系约束,放到追随者的优化问题中。于是有:

Lecture07:双层规划方法_第2张图片

这里,x和y 是领导者的决策变量,但x在追随者的优化中是参数。所以,双层规划模型是,一个优化问题受制于另一个优化问题的模型。

1.2 斯坦克尔伯格模型到双层规划模型

  一般定义:Lecture07:双层规划方法_第3张图片

 规划过程分为两层:上层规划是领导者的优化问题,下层规划是跟随者的优化问题。Lecture07:双层规划方法_第4张图片

 上层规划受制于下层规划,也就是说下层规划问题本身是作为上层规划问题的约束存在的。

Lecture07:双层规划方法_第5张图片

 如果一部分跟随者同时是另一部分追随者的领导者,我们将可以建立起三层规划问题。

2 求解双层规划

2.1 Mathematical Program with Complementarity Constraint (MPCC)

Lecture07:双层规划方法_第6张图片

 下层问题被使用KKT条件替换,从而导致双层规划问题变为一个单目标优化程序。此外,在一些案例中,下层问题将被转化为均衡问题,此时方法称为Mathematical Program with Equilibrium Constraint (MPEC).

2.2 互补条件的线性化

2.2.1 Fortuny‐Amat (“Big‐M”) approach

Lecture07:双层规划方法_第7张图片

Fortuny-Amat, J., & McCarl, B. (1981). A representation and economic interpretation of a two-level programming problem. Journal of the operational Research Society32(9), 783-792.

 使用大M求解问题后,应该检查一下原始互补问题是否成立。

注意事项:

  1. 选择而是用大M方法应该谨慎,因为选择合适的大M值,是一件有挑战性的事情;如果选错了,可能导致次优解或病态条件。

更多的细节参见:

  1. Pineda, S., & Morales, J. M. (2019). Solving linear bilevel problems using big-Ms: not all that glitters is gold. IEEE Transactions on Power Systems34(3), 2469-2471.
  2. Kleinert, T., Labbé, M., Plein, F. A., & Schmidt, M. (2020). There’s no free lunch: on the hardness of choosing a correct big-M in bilevel optimization. Operations research68(6), 1716-1721.

3 策略提供问题(Strategic offering problem)

3.1 问题描述与模型

问题描述

  1. Let’s consider a strategic power producer owning multiple generation units, indexed by i
  2. All generation units belonging to rivals are indexed by –i
  3.  Demands are elastic to price, and indexed by k
  4. No transmission network, unit commitment constraints, and uncertainty (for simplicity)

数学模型:

Lecture07:双层规划方法_第8张图片

 策略制定者是领导者,他的目标是最大化收益;于是有:

Lecture07:双层规划方法_第9张图片

 注解:

  1. 供给价格在上层模型是变量,在下层模型是参数
  2. 下层模型的所有原始和对偶变量是上层模型的变量

3.2 生成下层问题的KKT条件

Lecture07:双层规划方法_第10张图片 

 从而我们得到MPEC公式如下:

Lecture07:双层规划方法_第11张图片

 显然这是一个非线性问题,因为模型中包含互补条件约束。

3.3 线性化互补条件

引入辅助变量,将问题中的互补条件约束进行线性化,则有:

Lecture07:双层规划方法_第12张图片

我们得到的仍是一个非线性混合整数规划,即  项,目前没有现成的求解器去处理它。我们通常想把它转换为混合整数线性规划或者非线性规划。

 3.4 模型处理

Lecture07:双层规划方法_第13张图片

 最终,我们将问题转化为混合整数线性规划问题:

Lecture07:双层规划方法_第14张图片

 4 Equilibrium Problem with Equilibrium Constraints (EPEC)

Lecture07:双层规划方法_第15张图片

Lecture07:双层规划方法_第16张图片

 虽然双层规划问题难以求解,但是它是一个十分有用的技术;分解技术和分布式优化技术可以被使用来减轻计算负担。

你可能感兴趣的:(电力系统中的高级优化和博弈论,蓝桥杯,fpga开发,gnu)