目录
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博客
参考书籍:
- 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.
- Dempe, S. (2018). Bilevel optimization: theory, algorithms and applications (Vol. 3). TU Bergakademie Freiberg, Fakultät für Mathematik und Informatik.
- Luo, Z. Q., Pang, J. S., & Ralph, D. (1996). Mathematical programs with equilibrium constraints. Cambridge University Press.
- Pozo, D., Sauma, E., & Contreras, J. (2017). Basic theoretical foundations and insights on bilevel models and their applications to power systems. Annals of Operations Research, 254(1), 303-334.
现在有两个玩家,称为领导者和跟随者,追随者的反应会影响领导者,领导者会预测追随者的反应。
因为追随者是看到领导者的行为之后,自己才行动,因此我们可以将联系约束,放到追随者的优化问题中。于是有:
这里,x和y 是领导者的决策变量,但x在追随者的优化中是参数。所以,双层规划模型是,一个优化问题受制于另一个优化问题的模型。
规划过程分为两层:上层规划是领导者的优化问题,下层规划是跟随者的优化问题。
上层规划受制于下层规划,也就是说下层规划问题本身是作为上层规划问题的约束存在的。
如果一部分跟随者同时是另一部分追随者的领导者,我们将可以建立起三层规划问题。
下层问题被使用KKT条件替换,从而导致双层规划问题变为一个单目标优化程序。此外,在一些案例中,下层问题将被转化为均衡问题,此时方法称为Mathematical Program with Equilibrium Constraint (MPEC).
Fortuny-Amat, J., & McCarl, B. (1981). A representation and economic interpretation of a two-level programming problem. Journal of the operational Research Society, 32(9), 783-792.
使用大M求解问题后,应该检查一下原始互补问题是否成立。
注意事项:
更多的细节参见:
- Pineda, S., & Morales, J. M. (2019). Solving linear bilevel problems using big-Ms: not all that glitters is gold. IEEE Transactions on Power Systems, 34(3), 2469-2471.
- 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 research, 68(6), 1716-1721.
问题描述
数学模型:
策略制定者是领导者,他的目标是最大化收益;于是有:
注解:
从而我们得到MPEC公式如下:
显然这是一个非线性问题,因为模型中包含互补条件约束。
引入辅助变量,将问题中的互补条件约束进行线性化,则有:
我们得到的仍是一个非线性混合整数规划,即 项,目前没有现成的求解器去处理它。我们通常想把它转换为混合整数线性规划或者非线性规划。
最终,我们将问题转化为混合整数线性规划问题:
虽然双层规划问题难以求解,但是它是一个十分有用的技术;分解技术和分布式优化技术可以被使用来减轻计算负担。