凸优化数学基础笔记(八):一维线性搜索法(一)
凸优化数学基础笔记八一维线性搜索法​ 由上一节关于求解最优化问题概括中可知迭代最优化算法的基本思路是从已知迭代点\(\mathbf{X}_k\in{R^n}\)出发按照迭代格式\(\mathbf{X}_{k1}\mathbf{X}_kt_k\mathbf{P}_k\),从已知迭代点来求解最优化问题其关键在于如何构造一个搜索方法\(\mathbf{P}_k\in{R^n}\)和确定 一个步长的\(t_k\in{R^1}\)使下一个迭代点\(\mathbf{X}_{k1}\)处的目标函数值下降即\(f(\mathbf{X}_{k1})f(\mathbf{X}_k)\)。现在我们来讨论当搜索方向\(\mathbf{P}_k\)已经确定的情况下如何确定步长\(t_k\)? 步长因子的选取有多种方法如取步长为常数但这样选取的步长并不最好如何选取最好步长呢实际计算通常采用一维搜索来确定最优步长。​ 对于无约束最优问题\[\min_{\mathbf{X}\in{R}^n}f(\mathbf{X}) \tag{1} \]当已知迭代点\(\mathbf{X}_k\)和下降方向\(\mathbf{P}_k\)时要确定适当的步长\(t_k\)使\(f(X_{k1})f(\mathbf{X}_kt_k\mathbf{P}_k)\)比\(f(\mathbf{X}_k)\)有所下降即相当于参数变量\(t\)的函数\[\varphi(t)f(\mathbf{X}_kt\mathbf{P}_k)\tag{2} \]要在区间\([0,\infty)\)上选取\(tt_k\)使\(f(\mathbf{X}_{k1})f(\mathbf{X}_k)\)即\[\varphi(t_k)f(\mathbf{X}_kt_k\mathbf{P}_k)f(\mathbf{X}_k)\varphi{(0)} \tag{3} \]由于这种从已知点的\(\mathbf{X}_k\)出发沿某一个下降的搜索方向\(\mathbf{P}_k\)来确定步长\(t_k\)的问题实质上是单变量函数关于步长变量的搜索选取故通常叫做一维搜索。按照这种方法确定的步长\(t_k\)又称为最优步长这种方法的优点是它使目标函数值在搜索方向上下降得最多。​ 今后为了简单起见我们用记号\[Zl_s(\mathbf{X},\mathbf{P}) \tag{4} \]表示从点\(\mathbf{X}\)出发沿\(\mathbf{P}\)方向对目标函数\(f(\mathbf{X})\)作直线搜索所得到的极小值点是\(\mathbf{Z}\)。其中\(l\)和\(s\)分别是Linear search(直线搜索)的缩写。在目标函数\(f(\mathbf{X})\)已确定条件下等价于如下两式\[\begin{cases} f(\mathbf{X}t_0\mathbf{P})\min{f(\mathbf{X}t\mathbf{P})}\varphi(t)\\ \mathbf{Z}\mathbf{X}t\mathbf{P} \end{cases} \tag{5} \]下面我们进一步解释迭代点\(\mathbf{X}_{k1}\mathbf{X}_kt_k\mathbf{P}_k\)的空间位置容易证明若从\(\mathbf{X}_k\)出发沿\(\mathbf{P}_k\)方向进行一维搜索得到极小值点\(\mathbf{X}_{k1}\mathbf{X}_kt_k\mathbf{P}_k\)则该点处\(\mathbf{X}\mathbf{X}_{k1}\)则该点处\(\mathbf{X}\mathbf{X}_{k1}\)的梯度方向\(\nabla{f(\mathbf{X}_{k1})}\)与搜索方向\(\mathbf{P}_k\)之间应满足\[\nabla{f(\mathbf{X}_{k1})}^T\mathbf{P}_k0 \tag{6} \]事实上设\(\varphi(t)f(\mathbf{X}_kt\mathbf{P}_k)\)求\(\varphi(t)\)的极值对\(t\)求导有\[\varphi^{\prime}(t)\nabla{f(\mathbf{X}_kt\mathbf{P}_k)}^T\mathbf{P}_k \tag{7} \]令\(\varphi^{\prime}(t)0\)即可得\(\nabla f(\mathbf{X}_kt\mathbf{P}_k)^T\mathbf{P}_k0\),所以\(\nabla{f(\mathbf{X}_{k1})}^T\mathbf{P}_k0\)。​ 式2.5的几何意义是明限的从某一个点\(\mathbf{X}_k\)出发沿\(\mathbf{P}_k\)方向对目标函数\(f(\mathbf{X})\)作直线搜索所得到的极小值点为\(\mathbf{X}_{k1}\)。公式6指出梯度\(\nabla{f(\mathbf{X}_{k1})}\)必与搜索方向\(\mathbf{P}_k\)正交。又因为\(\nabla{f(\mathbf{X}_{k1})}\)与目标函数过点\(\mathbf{X}_{k1}\)的等值面\(f(\mathbf{X})f(\mathbf{X}_{k1})\)正交所以进一步看到搜索方向\(\mathbf{P}_k\)与这个等值面在点\(\mathbf{X}_{k1}\)处相切。1.搜索区间及其确定方法​ 设一维最优化问题为\[\min_{0\leq{t}t_{max}} \varphi(t) \tag{8} \]为了求解式8我们可以引入如下的搜索区间概念。Definition 1设\(\varphi:R\rightarrow{R}\)\(t^*\in[0,\infty)\)\((t^*\in[0,t_{max}])\)并且\[\varphi(t^*)\min_{0\leq{t}\leq{t_{max}}}{\varphi(t)} \tag{9} \]若存在闭区间\([a,b]\subset[0,\infty)\)(\([a,b]\subset{[0,t_{max}]}\)) 并且使\(t^{*}\in[a,b]\),则称\([a,b]\)为以为优化问题式8的搜索区间*。​ 由定义简而言之一个一维最优化问题的搜索区间就是包含该问题最优解的一个闭区间。通常在进行一维搜索区间然后再在此区间中进行搜索求解。​ 下面介绍一个确定式8的搜索区间确定的简单方法。这个方法的基本思路如下先选定一个初始点\(t_0\in[0,\infty)(t_0\in[0,t_{max}])\)和初始步长\(h_00\)。然后沿着\(t\in[0,\infty)\)轴的正方向搜索前进一个步长得到新点\(t_0h_0\)。若目标函数在新点处的值是下降了即\[\varphi(t_0h_0)\varphi({t_0}) \tag{10} \]则下一步就从新点的处的值\(t_0h_0\)出发的加大步长再向前探索。若目标函数在新点处的值上升即\[\varphi{(t_0h_0)}\varphi(t_0) \tag{11} \]则下一步以\(t_0\)为出发点为出发点以原步长开始向\(t\)轴的负方向的同样探索。当达到目标函数上升的点时就停止搜索。这时候便得到一个搜索区间。这种以加大步长进行搜索来寻找搜索区间的方法叫做加步搜索法。其加步搜索法的步骤选取初始数据。选取初始点\(t_0\in[0,\infty)(t_0\in[0,t_{max}])\)计算\(\varphi_0\varphi(t_0)\)。给出初始步长\(h_00\)加步系数\(\alpha1\),令\(k0\)。比较目标函数值。令\(t_{k1}t_kh_k\)计算\(\varphi_{k1}\varphi(t_{k1})\)若\(\varphi_{k1}\varphi_{k}\),转步骤3否则转步骤4。加大搜索步长。令\(h_{k1}\alpha h_k\)。同时令\(tt_k,t_kt_{k1},\varphi_k\varphi_{k1},kk1\)转步骤2反向搜索。若\(k0\)转换探索方向令\(h_k-h_k,tt_{k1}\)转步骤2。否则停止迭代令\[a\min({t,t_{k1}}),b\max{(t,t_{k1})} \tag{12} \]输出\([a,b]\)。​ 在加步搜索法中一般建议\(\alpha2\)。若能估计式8的最优解的大体位置的话初始点\(t_0\)要接近于式8的最优解。在具体运用上述的加步搜索法时有时还要考虑一些细节问题。例如当探索得到新点处的目标函数值和出发点处相同的时以及初步步长应如何选取等都需作适当处理。​ 由于以后要介绍的一些一维搜索方法主要适用于式8在搜索区间只有唯一的最优解情况下为此我们再给出下面单谷区间与单谷函数概念。​Definition 2设\(\varphi:\mathbf{R}^1\rightarrow{\mathbf{R}^1}\)闭区间\([a,b]\subset\mathbf{R}^1\)。若存在点\(t^*\in[a,b]\)使得\(\varphi(t)\)在\([a,t^*]\)上严格递减在\([t^*,b]\)上严格递增则称\([a,b]\)是函数\(\varphi(t)\)的单谷区间\(\varphi(t)\)是在\([a,b]\)上单谷函数。​ 由定义2可知一个区间是某函数的单谷区间意味着在该区间中函数只有一个“凹谷”极小值。另外从定义2可知某区间上的单谷函数上不必是连续函数而凸函数在所给区间上必然是单谷函数。单谷函数和单谷区间有如下有用的性质。​定理 1设\(\varphi:\mathbf{R}^1\rightarrow\mathbf{R}^1\),\([a,b]\)是\(\varphi(t)\)的单谷区间任取\(t_1,t_2\in[a,b]\)并且\(t_2t_1\)。若有\(\varphi(t_2)\leq\varphi(t_1)\)则\([a,t_1]\)是\(\varphi(t)\)的单谷区间。若有\(\varphi(t_2)\geq\varphi(t_1)\)则\([t_2,b]\)是\(\varphi(t)\)的单谷区间。​ 上述定理说明经过函数值的比较可以把单谷区间缩短为一个较小的单谷区间。换句话说利用这个定理可以把搜索区间无限缩小从而求到极小点。以下介绍的几种一维搜索方法都是利用这个定理通过不断的搜索区间来求得一维最优化问题的近似最优解。

相关新闻

Understanding the Fine-Grained Knowledge Capabilities of Vision-Language Models

Understanding the Fine-Grained Knowledge Capabilities of Vision-Language Models

Understanding the Fine-Grained Knowledge Capabilities of Vision-Language Models Authors: Dhruba Ghosh, Yuhui Zhang, Ludwig Schmidt Deep-Dive Summary: 视觉语言模型(VLM)细粒度知识能力研究 摘要 视觉语言模型(VLM&#xff09…

2026/7/4 20:06:56 阅读更多 →
掌握长尾关键词的运用技巧,优化您的SEO效果与网站流量

掌握长尾关键词的运用技巧,优化您的SEO效果与网站流量

掌握长尾关键词的运用对提升网站的SEO效果至关重要。长尾关键词通常由三个或更多词组成,具备更具体的搜索意图,能够帮助用户更精确地找到所需的信息。在选择长尾关键词时,可以参考用户的搜索习惯和实际需求,确保所选词语与内容相关…

2026/7/4 1:34:40 阅读更多 →
多车编队智能跟驰,小车队列行驶,减少风阻,输出编队轨迹。

多车编队智能跟驰,小车队列行驶,减少风阻,输出编队轨迹。

多车编队智能跟驰系统一、项目概述1.1 实际应用场景在高速公路物流运输、城市公交接驳、军事运输等场景中,多车编队行驶具有显著优势。以高速公路物流为例,当多辆货车以固定车距编队行驶时,可形成"空气动力拖曳效应",使…

2026/7/4 11:18:10 阅读更多 →

最新新闻

OpenCV形态学实战:从腐蚀膨胀到开闭运算,解锁图像处理核心技能

OpenCV形态学实战:从腐蚀膨胀到开闭运算,解锁图像处理核心技能

1. 形态学操作:图像处理的"外科手术刀"第一次接触OpenCV的形态学操作时,我正处理一批医学显微图像。那些粘连在一起的血细胞就像煮过头的饺子,完全分不清个数。导师当时说:"试试形态学操作吧,这是图像处…

2026/7/5 12:39:52 阅读更多 →
目标检测实战:从理论到实践攻克小目标与遮挡难题

目标检测实战:从理论到实践攻克小目标与遮挡难题

1. 小目标检测的挑战与核心问题小目标检测一直是计算机视觉领域的难点问题。在实际项目中,我们经常会遇到无人机航拍图像中的车辆、工厂流水线上的微小零件,或是监控摄像头中远距离的行人。这些目标在图像中往往只占据几十甚至几个像素,给检测…

2026/7/5 12:39:52 阅读更多 →
YOLOv8结合PointRend提升小目标分割精度实战

YOLOv8结合PointRend提升小目标分割精度实战

1. 项目概述:当YOLOv8遇上小目标分割难题在计算机视觉的实际工程应用中,小目标分割一直是个令人头疼的问题。想象一下在卫星图像中识别车辆、在工业质检中检测微小缺陷,或者在医学影像中分割细胞核——这些场景中的目标往往只占图像的几十甚至…

2026/7/5 12:37:52 阅读更多 →
模特ai图如何高效生成?多平台快速制作技巧分享

模特ai图如何高效生成?多平台快速制作技巧分享

在电商行业,模特ai图的高效生成已成为商品展示的核心环节。随着AI技术的发展,各类平台助力模特图自动化处理,让从业者效率显著提升。 本文将系统介绍多款相关平台的主要功能与适配优势,帮助你深入了解模特ai图制作的实际场景与选…

2026/7/5 12:35:51 阅读更多 →
AI推理服务Invalid Argument错误:构建健壮数据校验与预处理流水线

AI推理服务Invalid Argument错误:构建健壮数据校验与预处理流水线

1. 项目概述:从一次深夜告警说起凌晨两点,手机突然震动,监控告警提示线上AI推理服务大面积报错,错误信息赫然是“Invalid Argument”。相信不少负责模型部署和线上服务的同行都经历过这种心跳加速的时刻。这个错误看似简单&#x…

2026/7/5 12:33:50 阅读更多 →
Carsim中构建多车道动态交通流与智能车辆交互场景

Carsim中构建多车道动态交通流与智能车辆交互场景

1. Carsim多车道动态交通流搭建基础在智能驾驶算法开发过程中,真实还原多车道交通环境是验证ADAS功能的关键。Carsim作为行业标准的车辆动力学仿真平台,其ADAS模块提供了高度灵活的交通场景构建能力。我最近在测试ACC自适应巡航功能时,就遇到…

2026/7/5 12:33:50 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻