17、无约束与约束优化问题的求解方法与实践

无约束与约束优化问题的求解方法与实践

1. 无约束优化问题求解

1.1 拟牛顿法概述

传统牛顿法在求解无约束最小化问题时,需要在每次迭代中计算海森矩阵的逆来确定搜索方向。当海森矩阵病态时,搜索方向会不准确,导致迭代过程可能失败。拟牛顿法通过在不同迭代中寻找海森矩阵的近似值来避免直接求逆。具体来说,用正定矩阵 $B(k)$ 代替 $(H(k))^{-1}$,迭代过程通常从 $B(0) = I$($I$ 为 $n×n$ 单位矩阵)开始。常见的拟牛顿法有 Davidon - Fletcher - Powell(DFP)和 Broyden - Flethcher - Goldfarb - Shanno(BFGS)方法。

1.2 BFGS 方法

1.2.1 算法原理

BFGS 方法从海森矩阵的初始近似 $H(0) ≈ I$ 开始。在第 $k$ 次迭代中,已知 $x(k)$、$g(k) = g(x(k))$ 和 $H(k)$,首先通过求解线性系统 $H(k)p(k) = -g(k)$ 找到搜索方向 $p(k)$,再用线搜索算法确定步长 $\alpha(k)$。接着计算两个向量:$s(k) = \alpha(k)p(k)$ 和 $y(k) = g(x(k) + s(k)) - g(x(k))$。最后,海森矩阵更新公式为:
$H(k + 1) = H(k) + \frac{y(k)(y(k))^T}{(y(k))^T s(k)} - \frac{H(k)(s(k)(s(k))^T)(H(k))^T}{(s(k))^T H(k)s(k)}$

1.2.2 Python 代码实现

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值