Zoutendijk可行性方法属于约束极值问题可行方向法中的一种。与之前无约束极值问题中的最速下降法、牛顿法相像,可行方向法的策略是:从可行点出发,沿着下降的可行方向进行搜索,求出使目标函数值下降的可行点。 教材中共介绍了四种方法:Zoutendijk可行性方法、Rosen梯度投影方法、既约梯度法、Frank-Wolfe方法。博文对Zoutendijk可行性方法和Frank-Wolfe方法进行了介绍,这个是第一篇。

这类算法的两大步骤如下所示,搜索方向的选择策略不同形成了不同的可行方向法。

1、选择搜索方向

2、确定沿此方向移动的步长

接下来开始正题:Zoutendijk可行性方法


一、线性约束情形

1.确定变动方向

对于一个非线性规划问题:。可以看到其共有m个不等式约束,n个等式约束。

若初始点设定为,考虑到m个等式约束中有一些是起作用约束(在边界上满足=),有一些是不起作用约束(在内部满足),所以将矩阵进行行调换:,同时对向量也进行对应分块:,最终得到起作用约束,不起作用约束

定理1(可行方向):在此点选择一个方向,如果使得目标函数值下降,则应满足:,即只考虑起作用约束集和等式约束集。

(这个定理不难理解,可行点已经触犯到了一些不等式约束的边缘,如果发生变动,那么变动之后的点一定依然满足这些起作用集约束。)

之前都是站在约束角度考察方向的取值,现在结合目标函数值进行联合分析:如果方向同时满足,那么这个方向就是下降可行方向(即方向既能够使函数值下降,又能满足约束条件)。基于这些分析我们可以把求方向规范化为线性规划问题:

计算过程1(求方向d):

形象理解可知,当d和函数梯度夹角大于90°时,函数值可以下降,上目标函数为负值。而当已经到达局部最优点,没有下降方向时,上目标函数最小值为0。这时可以给出第二个定理,即KT点和下降可行方向的关联:

定理2(KT点关联下降可行方向):当在x点处满足约束,且上目标函数最小值为0时,此点为KT点。(充要条件)

至此我们完成了方向d的确定。

2.确定移动步长

和无约束最优化问题类似,可行点的迭代公式为:。步长的选择一方面要满足后续点的可行性,一方面又要使目标函数值尽可能地小。因此可以得到完备计算过程:

计算过程2(完备求步长):

这时考虑:在选取时已经使得 作用约束满足、等式约束满足。因此只考虑非作用约束即可(这一步真的神奇!)。因此计算过程直接化简为:

计算过程2(简化求步长):

接下来对    式进行仔细分析:将不含的项移动到右端:,可以发现右端式满足小于0。分类讨论,当时,无论如何选取都满足条件,;当时,左除引起变号,最大取。所以最终精简求法为:

计算过程2(精简求步长):

其中求法按照上述分类讨论计算。完整的计算方法在教材中已经给出:

3.完整算法

约束优化方法_1_——Zoutendijk可行方向法相关推荐

  1. python和stata哪个数据分析实例,STATA数据分析案例:Zoutendijk可行方向法

    适用于线性约束和非线性不等式约束的非线性规划的两种算法. 1. 线性约束的情形: minf(X) 满足 其中A和E分别是m×n和l×n阶矩阵,b和e分别是m和l维列向量.Zoutendijk可行方向法 ...

  2. 约束优化:约束优化的三种序列无约束优化方法

    文章目录 约束优化:约束优化的三种序列无约束优化方法 外点罚函数法 L2-罚函数法:非精确算法 对于等式约束 对于不等式约束 L1-罚函数法:精确算法 内点罚函数法:障碍函数法 等式约束优化问题的拉格 ...

  3. 最优化 | 无约束优化方法 | C++实现

    文章目录 参考资料 1. 前言 2. 梯度下降法 2.1 原理 2.2 c++实现 2.3 共轭梯度法 3. 牛顿法 3.1 原理 3.2 c++实现 4. 模拟退火算法 4.1 原理 4.2 c++ ...

  4. 无约束优化方法之powell方法

    无约束优化方法是优化技术中心极为重要也是最基本的内容之一.无约束优化问题的数学模型为: min ⁡ x ∈ R n f ( x ) \min_{x \in R^n}f(x) x∈Rnmin​f(x) ...

  5. 约束优化方法之拉格朗日乘子法与KKT条件

    来源:https://www.cnblogs.com/ooon/p/5721119.html 引言 本篇文章将详解带有约束条件的最优化问题,约束条件分为等式约束与不等式约束,对于等式约束的优化问题,可 ...

  6. 可行方向法的matlab代码,zoutendijk 可行方向法的matlab实现

    (一) .基本思想是: 给定一个可行点)(k x 之后,用某种方法确定一个改进的可行方向k d ,然后沿方向k d ,求解一个有约束的线搜索问题,得极小点k λ,令k k k k d x x λ+=+ ...

  7. matlab优化设计大作业答案,优化设计有哪些方法(2019优化设计答案大全)

    本书主要介绍机械优化设计方法与实例,全书共有9章,内容主要包括机械优化设计的基本要素及数学模型.优化设计的理论基础.常见的优化设计方法和优化设计软件简介.书中对工程中常见的六大类优化设计方法--一维搜 ...

  8. 西工大机考《 现代设计方法》大作业网考

    ???202110?? 试卷总分:100 得分:96 一. 单选题 (共 40 道试题,共 80 分) 1.Powell改进算法是一种( ). A.一维搜索方法 B.处理约束问题的优化方法 C.利用海 ...

  9. 单目标模糊优化设计matlab程序,优化设计有哪些方法

    本书主要介绍机械优化设计方法与实例,全书共有9章,内容主要包括机械优化设计的基本要素及数学模型.优化设计的理论基础.常见的优化设计方法和优化设计软件简介.书中对工程中常见的六大类优化设计方法--一维搜 ...

最新文章

  1. 第十六届无线节能信标灯规格说明
  2. 作业——Windows核心编程学习手札系列之五
  3. CentOS 7 源码编译MariaDB 5.5.46
  4. iscroll5制作上下拉刷新 tab出现的问题
  5. sphinx java_把 sphinx 官方提供的 java api 添加到 maven 库
  6. 博文视点大讲堂41期-SEO难点之网站内部链接结构
  7. 绿盟科技:“无敌舰队”DDoS勒索防御关键是应急经验积累
  8. YOLOv2相比于yolov1的改进
  9. 虚拟服务器软件 海光,海光校园虚拟服务器管理软件技术参数
  10. 微信快捷回复技巧秘籍
  11. 基于C51实现测试人体反应速度
  12. c语言求最小值函数min的用法,C语言--min的宏定义
  13. 四月份适合发微信朋友圈的文案
  14. iOS开发学习48 OC的lambda block
  15. flex osgi实现-potomac 实现页面与页面间数据传递和页面间各部分的数据传递
  16. DataMatrix二维码识别 Halcon 同类软件 Malcon 机器视觉软件 案例讲解 FindDataCode2d
  17. 目标管理【管理学之十四】
  18. ApiPost与PostMan,你可以任选一款不错的接口管理工具
  19. 当好色女子遇上好色之徒-案例
  20. Android Studio App开发之下载管理器DownloadManager中显示、轮询下载进度、利用POST上传文件讲解及实战(附源码)

热门文章

  1. apikey、apisecret在api请求中的使用
  2. 历代显卡精彩演示DEMO赏析点评之NV篇
  3. 电路城(www.cirmall.com)— Altium常用库文件(元件库+封装库+常用元器件3D模型)
  4. [量子计算]量子计算常用高频词汇集(佛系月更)
  5. CSS小游戏2048—简单小游戏编程有手就行~会玩?你会写吗?
  6. 世界主要港口中英文对照表
  7. 骁龙780G和骁龙888哪个好 骁龙780G和骁龙888对比,哪个更强
  8. 用户活跃/用户价值度分析
  9. nginx 配置后缀
  10. 相机内参,外参的物理意义