双层优化问题

介绍

1)层次性
优化时是分层管理的形式,下层优化服从上层优化,但下层优化有相对的自主权。
2)独立性
各层决策者各自控制一部分决策变量,以优化各自的目标。
3)冲突性
各层决策者有目标函数各不相同,且这些目标往往是相互矛盾的。
4)优先性
上层决策者优先做出决策,下层决策者在选择策略时,不能改变上层的决策。
5)自主性
上层的决策可能影响下层的行为,因而部分地影响下层目标的实现,但上层不能完全控制下层的选择行为,在上层决策允许范围内,下层有自主决策权。
 按照上下层优化的形式不同又可以分为线性双层优化以及非线性双层优化问题。当双层优化问题中所有目标函数和约束条件均为线性时,即为线性双层优化,否则就是非线性双层优化问题

基本原理与求解方法参考如下

双层优化入门(1)—基本原理与求解方法(附matlab代码)
双层优化入门(2)—基于yalmip的双层优化求解(附matlab代码)

拉格朗日乘数法

 拉格朗日乘数法(以数学家Joseph-Louis Lagrange命名)是一种寻找多元函数在其变量受到一个或多个条件的约束时的极值的方法。
 例如:要求 f ( x , y ) , 在 g ( x , y ) = c f(x,y),在g(x,y)=c f(x,y),g(x,y)=c时的最大值,引入拉格朗日乘数 λ \lambda λ,这时我们只需要下列拉格朗日函数的极值:
ι ( x , y , λ ) = f ( x , y ) + λ ( g ( x , y ) − λ ) \iota(x,y,\lambda) = f(x,y)+\lambda(g(x,y)-\lambda) ι(x,y,λ)=f(x,y)+λ(g(x,y)λ)
拉格朗日乘数法所得的极点会包含原问题的所有极值点,但并不保证每个极值点都是原问题的极值点

KKT条件

最优化问题分类

  • 无约束优化问题:直接求导、最速下降法、共轭梯度法、牛顿法等
  • 等式约束优化问题:拉格朗日(Lagrange)乘数法
  • 不等式约束优化问题:KKT条件

在这里插入图片描述
使f(X)取最小值时的最优X*,进一步,如果将其值X带入约束g(X)
若g(X
)<0,约束不起作用,该问题转化为无约束优化问题求解;
若g(X*)=0,引入拉格朗日乘子λ,采用拉格朗日乘数法求解嘛
在这里插入图片描述
若g(X*)>0,此时的X*不满足约束,应舍弃,由回到上述情形

总结如下
(1)若g(X*)=0,引入拉格朗日乘子λ,并要求λ≥0;
(2)若g(X*)<0,要求λ=0。
采用λg(X*)=0的形式统一
在这里插入图片描述
式(1):对拉格朗日函数求梯度(若X一维就是求导),其中,下三角表示梯度;
式(2):核心公式,要么λ=0,要么g(X*)=0(此处要求两者不能同时为0);
式(3):拉格朗日乘子λ必须是正的(下一部分的图示法有证明);
式(4):原问题自己的约束。

参考内容

KKT条件,原来如此简单 | 理论+算例实践

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
双层优化问题指的是一个具有两个层次的优化问题,其外层目标函数的最优解是通过内层目标函数的最优解来确定的。KKT条件是Karush-Kuhn-Tucker条件的缩写,它是指带有等式约束和不等式约束的优化问题的一组必要条件。 对于双层优化问题,KKT条件的表达式变得更加复杂。在此处,我们假设外层是一个最小化问题,内层是一个最大化问题。设外层的决策变量为x,内层的决策变量为y,则该问题的KKT条件可以表示为: 1. 外层必要条件: ∂L/∂x = 0 其,L表示Lagrangian函数,其在外层的形式为: L(x, y, λ) = f(x, y) + λ(g(x, y) - d) f是外层的目标函数,g是内层的约束函数,d是外层的约束值(一般是0),λ是Lagrangian乘子。 2. 内层必要条件: ∂L/∂y = 0 g(x, y) ≤ 0 λ ≥ 0 λg(x, y) = 0 其,第一个条件表明内层的Lagrangian函数在y处取得了最大值,第二个条件表示内层的约束条件必须满足,第三个条件是外层约束条件对应的Lagrangian乘子必须非负,第四个条件表示在满足内层约束的情况下,外层约束条件的Lagrangian乘子必须为0。 3. 互补松弛条件: y与λ的互补松弛条件是双层优化问题的重要概念,它是指Lagrangian乘子与约束的乘积等于0的条件。即: λg(x, y) = 0 这个条件表示如果一个约束条件被满足,那么与该约束条件对应的Lagrangian乘子必须为0。如果一个约束条件未被满足,那么对应的Lagrangian乘子必须满足λ>0。 通过上述KKT条件的应用,我们可以解决一系列复杂的双层优化问题

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

摸鱼带师小弟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值