算法中的最优化方法和实现 (第7课 有约束的非线性规划)

一、学习目标

根据约束条件的类型,将问题分为4类:线性等式、非线性等式、线性不等式、非线性不等式。学习对于不同的问题,使用不同的方法进行求解。统一的思想都是消解法,即消去约束条件,将有约束的问题转化为无约束的问题,再进行求解
在这里插入图片描述
注意:我们说的非线性规划,说的是目标函数是非线性的,而上面讲的线性和非线性,指的是约束函数。

二、线性等式约束的非线性规划

对于等式约束,我们可以通过映射法将约束条件约去。原理就是原本的x处于随机数据空间,先将其限制在Ax=b的超平面中,随机数据空间变为超平面空间中,既然在超平面空间中,就不会背离原来的约束。
在这里插入图片描述
具体方法就是用奇异值分解,(奇异值分解原本用于求非方阵的逆,显然,我们的A不一定是方阵)具体矩阵的计算见下面的例子:
在这里插入图片描述

三、非线性等式约束的非线性规划

在这里插入图片描述
实际上,对于非等式约束问题,我们并没有更专的算法,只有使用拉格朗日算子法消去约束函数,而之后,除了梯度下降法外,我们还是可以使用上一节课的方法来求解。

四、线性不等式约束的非线性规划

在这里插入图片描述
与线性等式约束的问题一样,也可以使用映射去解决约束问题,但是并不像前者是“从体到面”的映射,是“从体到体”的映射,并不好寻找这样的映射函数。于是类似于单纯形法和有效集法,前人提出了梯度投影法:
在这里插入图片描述
如果最优点在约束条件外,我们的计算过程就如下图:
在这里插入图片描述
或许有人会好奇,如果最优解在约束内,就没必要投影了啊。确实,但做投影并不影响找到最优解。实际上,我们每一步迭代时,我们都找到下降方向,然后将这个方向向某条边界进行投影,实际上还是会导致函数值下降。显然,做投影的唯一作用就是不让迭代点跑到约束条件外。

五、非线性不等式约束的非线性规划

对于这类问题,我们主要使用外点法(罚函数法 pentalty function)和内点法(栅栏函数法 Barrier function)来解决。而这两个方法都起源于可行性函数法(feasibility function)。这三类方法都可以统称为惩罚法。
在这里插入图片描述
而由于可行性函数是不平滑的,于是才提出外点法和内点法。其中外点法(罚函数法)如下定义:
在这里插入图片描述
注意:罚函数是人为设计的函数,与原问题无关。有以下几种罚函数:
在这里插入图片描述
同理,内点法(栅栏函数法)的定义与例子为:
在这里插入图片描述

将三种方法作用到统一条函数中,可以明显发现其区别:
在这里插入图片描述
而罚函数法之所以叫外点法,是因为合成后的函数的最优解出现在约束区域外,不断向约束区域内收敛;而栅栏函数法之所以叫内点法,是因为合成后的函数的最优解出现在约束区域内,最后也会往最优解收敛。

2.除了以上方法外,前人还提出了序列二次性优化(SQP,Sequential Quadratic Programming),其思想总体上而言,就是使用拉格朗日算子法消去约束条件,再根据梯度下降法,迭代收敛到最优解:
(a)首先拉格朗日算子法:
在这里插入图片描述
(b)然后求梯度下降方向:
在这里插入图片描述
(c)再然后,进行迭代:
在这里插入图片描述
整体算法就是:
在这里插入图片描述

六、本章小结

1.了解非线性规划问题拥有不同约束条件的情况。
2.认识到主要的思想是消去约束条件,再使用各种办法去求解问题。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值