二次规划_2_——起作用集方法

2023-05-16

  这个算法很反人类,迭代过程相当复杂,最优化老师说:“明确地告诉你要考的。”
  起作用集方法适用于消元法Lagrange方法无法处理的不等式约束二次规化问题。其主要思想是:以已知点为可行点,只考虑将该点的起作用约束,最小化 f ( x ) f(x) f(x),得到新的可行点后重复以上做法。

一、起作用集法适用情形

  适用于具有不等式约束的二次规划问题 m i n     f ( x ) = 1 2 x T H x + c T x s . t .     A x ⩾ b min \ \ \ f(x)=\frac{1}{2}x^THx+c^Tx \\ s.t. \ \ \ Ax\geqslant b min   f(x)=21xTHx+cTxs.t.   Axb

二、起作用集法求解步骤

  由于步骤太过繁琐,算法总是跳来跳去,所以在这里我只放上了我自己对于算法的分步与理解。算法可以分为一个初始+三个域,三个域分别为:解 δ \delta δ域、求 α ^ k \widehat\alpha_{k} α k 域、算L乘子 λ \lambda λ域。

(1)初始化:初始可行点 x ( 1 ) x^{(1)} x(1),作用约束集 I ( 1 ) I^{(1)} I(1),置 k = 1 k=1 k=1;
(2)解增量 δ \delta δ:这时构建增量求解问题: m i n     1 2 δ T H δ + ▽ f ( x ( k ) ) T δ s . t .     a i δ = 0 , i ∈ I ( k ) min \ \ \ \frac{1}{2}\delta^TH\delta+\triangledown f(x^{(k)})^T\delta \\ s.t. \ \ \ a^{i}\delta= 0, i \in I^{(k)} min   21δTHδ+f(x(k))Tδs.t.   aiδ=0,iI(k)  得到最优解 δ ( k ) \delta^{(k)} δ(k)。此时进行第一次分流分析

δ ( k ) = 0 \delta^{(k)}=0 δ(k)=0,则说明 x ( k ) x^{(k)} x(k)无法再继续变动,则跳到第4步计算L乘子,判断最优解;
δ ( k ) ≠ 0 \delta^{(k)}\neq 0 δ(k)=0,需要对 x ( k ) x^{(k)} x(k)进行变动,则跳到第3步,求解步长。

(3)求步长 α ^ k \widehat\alpha_{k} α k
  上一步求解出了增量 δ \delta δ,这一步将增量视为移动方向 d d d,即 d ( k ) = δ ( k ) d^{(k)}=\delta^{(k)} d(k)=δ(k)。变动过程为: x ( k + 1 ) = x ( k ) + α ^ k d ( k ) x^{(k+1)}=x^{(k)}+\widehat\alpha_{k}d^{(k)} x(k+1)=x(k)+α kd(k)  步长的选取首先要保证新点是一个可行点,不能违背 x ( k ) x^{(k)} x(k)的非作用下标集中约束,即: a i ( x ( k ) + α ^ k d ( k ) ) ⩾ b i     ,     i ∉ I ( k ) a^i(x^{(k)}+\widehat\alpha_{k}d^{(k)}) \geqslant b_i \ \ \ , \ \ \ i \notin I_{(k)} ai(x(k)+α kd(k))bi   ,   i/I(k)  在特定情况下左侧孤立 α ^ k \widehat\alpha_{k} α k i f     a i d ( k ) < 0    :     α ^ k = b i − a i x ( k ) a i d ( k ) \mathbf{if} \ \ \ a^i d^{(k)}<0\ \ :\ \ \ \widehat\alpha_{k}=\frac{b_i-a^ix^{(k)}}{a^id^{(k)}} if   aid(k)<0  :   α k=aid(k)biaix(k)  考察所有非作用约束集对应的约束式,可以求出多个 α ^ k \widehat\alpha_{k} α k,进而对其求最小。同时还要注意,最终 α ^ k \widehat\alpha_{k} α k的取值还要跟1进行比较: α k = m i n ( 1 , α ^ k ) \alpha_{k}=min{(1,\widehat\alpha_{k})} αk=min(1,α k)  得到步长,此时进行第二次分流分析:(这一步无论结果如何都要更新 x ( k ) x^{(k)} x(k),只是一个回去,一个继续)

α k < 1 \alpha_{k}<1 αk<1,原来非作用约束集中有一个约束式变为作用约束,小数步长直接更新 x ( k + 1 ) x^{(k+1)} x(k+1)(算法中唯一更新x的地方),返回步骤2,重新计算增量 δ \delta δ
α k = 1 \alpha_{k}=1 αk=1,此时的变动不会触动任何非作用约束,1步长直接更新 x ( k + 1 ) x^{(k+1)} x(k+1)(算法中唯一更新x的地方),跳到第4步计算L乘子,判断最优解。

(4)计算L乘子 λ \lambda λ
  这一步是算法的出口,通过Lagrange方法最后给出的公式计算乘子 λ \lambda λ λ = R g k = ( A H − 1 A T ) − 1 A H − 1 g k \lambda=Rg_k=(AH^{-1}A^T)^{-1}AH^{-1}g_k λ=Rgk=(AH1AT)1AH1gk  其中 g k = ▽ f ( x ( k ) ) g_k=\triangledown f(x^{(k)}) gk=f(x(k)),是当前迭代点的梯度。
得到每个作用约束对应的乘子之后,进行第三次分流分析

λ < 0 \lambda<0 λ<0,挑选出最小的 λ \lambda λ,在起作用约束集 I I I中去掉下标,返回步骤2计算增量 δ \delta δ
λ ⩾ 0 \lambda\geqslant0 λ0,当前解 x ( k ) x_{(k)} x(k)是最优解。

三、注

  这个方法思想简单,但是每一块的计算都很精密,过程很繁琐。考试的时候一定要把思路写清楚。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

二次规划_2_——起作用集方法 的相关文章

  • B树,B+树,红黑树应用场景笔记

    一 B树的应用 1 B树大量应用在数据库和文件系统当中 它的设计思想是 xff0c 将相关数据尽量集中在一起 xff0c 以便一次读取多个数据 xff0c 减少硬盘操作次数 B树算法减少定位记录时所经历的中间过程 xff0c 从而加快存取速
  • 使用 Gitee 进行代码管理

    为什么使用 Gitee 这里推荐使用 Gitee 进行代码管理 Gitee 和 Github 最大的区别在我看来就是私有库的免费 xff0c 在 Github 上建立私有库是需要收费的 xff0c 而在 Gitee 上建立私有库是不需要收费
  • kubernetes的Kube-proxy的iptables转发规则

    概念 kube proxy 实际上并不起一个 proxy 的作用 xff0c 而是 watch 变更并更新 iptables xff0c 也就是说 xff0c client 的请求直接通过 iptables 路由 如果kube proxy通
  • kube-proxy ipvs模式详解

    一 kube proxy 开启 ipvs 1 环境准备 xff1a 测试环境为kubernetes集群 xff0c 一台master节点 xff0c 一台node节点 集群网络使用flanneld搭建 注意 xff1a master节点上也
  • k8s部署Traefik

    Ingress ingress是从kubernetes集群外访问集群的入口 xff0c 将用户的URL请求转发到不同的service上 Ingress相当于nginx apache等负载均衡方向代理服务器 xff0c 其中还包括规则定义 x
  • (1)webpack介绍

    一 webpack简介 webpack 61 Web Package xff0c webpack是一个现代JS应用程序的静态模块打包器 xff08 module bundler xff09 模块 xff08 模块化开发 xff0c 可以提高
  • MAML: meta learning 论文分析

    https zhuanlan zhihu com p 57864886 一 Meta Learning 简述 Meta Learning xff08 即元学习 xff09 是最近比较火的研究方向 xff0c 其思想是learning to
  • Oracle数据库权限

    Oracle数据库权限基本认识 一 oracle权限 ORACLE系统提供三种权限 xff1a Object 对象级 System 系统级 Role 角色级 权限分类 1 系统权限 xff1a 系统规定用户使用数据库的权限 xff08 系统
  • 解决:rospack depends 报错: could not find python module 'rosdep2.rospack'. is rosdep up-to-date

    这个问题全部如下 xff1a Traceback most recent call last File 34 home suli local lib python2 7 site packages rosdep2 init py 34 li
  • Ubuntu系统日常崩溃之-terminal打不开

    我也不记得干了什么 xff0c 莫名其妙的terminal就打不开了 xff0c 不只是通过快捷键打不开 xff0c 反正各种都打不开 xff0c 每次点击terminal xff0c 它会出现在任务栏上面 xff0c 之后鼠标就变成圆圈转
  • ARM交叉编译工具链

    为什么要用交叉编译器 xff1f 交叉编译通俗地讲就是在一种平台上编译出能运行在体系结构不同的另一种平台上的程序 xff0c 比如在PC平台 xff08 X86 CPU xff09 上编译出能运行在以ARM为内核的CPU平台上的程序 xff
  • 最近发现有很多人一直在问苹果ID双重认证怎么关闭。

    最近发现有很多人一直在问苹果ID双重认证怎么关闭 xff1f 其实我想说大家都粗心了 xff0c 双重认证是和ios版本没有关系的 xff0c 无论什么IOS版本开通的双重认证都是可以关闭的 https support apple com
  • QT - QT中配置MSVC编译环境 以及 VS中配置QT开发环境

    本文主要记录一下如何在 QT5 14 2 中配置 MSVC2017 构建套件 xff0c 以及在VS2017中配置QT的开发环境 开发环境为 Win10 43 QT5 14 2 43 Visual Studio 2017 1 VS2017安
  • Mysql启用only_full_group_by模式

    Expression 3 of SELECT list is not in GROUP BY clause and contains nonaggregated column userinfo t long user name which
  • 配置opencv3.1+caffe

    为了配置caffe做reid这是官方的入口 caffe reid https github com zlmzju caffe tree reid caffe install http caffe berkeleyvision org ins
  • reEFInd(refind)引导Windows+deepin双系统

    本文已迁移至 xff1a https www aflyingfish top articles 7fdc1ca8cf58
  • Kubernetes(K8S)一

    K8S 之前写了docker发现 docker只能在单机部署 docker部署分布式系统还是很麻烦 所以就有了K8S K8S全称Kubernetes xff08 读音 库波奈第丝 xff09 可以把K8S理解为一个在docker基础上进一步
  • 安装Docker Desktop报错WSL 2 installation is incomplete的问题(解决报错)

    WSL 2 installation is incomplete报错如下图所示 xff1a 处理方法 xff1a 1 安装Hyper V虚拟服务 2 安装 适用于 Linux 的 Windows 子系统 xff08 wsl2 xff09 3
  • 如何区分主键和外键以及主表和从表

    转自 xff1a https www cnblogs com miniSimple p 12275861 html 文章导读 xff1a 在后面跟其他数据库做对比的时候 xff0c 这个是其中一个点 xff08 关系型数据库 xff09 把
  • 使用客户端连接 Mysql 出现Error no. 1251错误

    错误详情信息 ERROR 1251 client does not support authentication protocol requested by server consider upgrading Mysql client 问题

随机推荐

  • linux下启动mariadb数据库

    在linux下启动数据库时 xff0c 出现如下错误 span style color rgb 79 79 79 text align justify ERROR 2002 HY000 Can 39 t connect to local M
  • 【编译原理】实验二 词法分析程序

    一 实验标题 xff1a 词法分析程序 二 实验目的 xff1a 学习和掌握词法分析程序构造的状态图代码化方法 三 实验内容 xff1a xff08 1 xff09 阅读已有编译器的经典词法分析源程序 xff08 2 xff09 选择一个编
  • 49.在ROS中实现local planner(2)- 实现Purepersuit(纯跟踪)算法

    48 在ROS中实现local planner xff08 1 xff09 实现一个可以用的模板实现了一个模板 xff0c 接下来我们将实现一个简单的纯跟踪控制 xff0c 也就是沿着固定的路径运动 xff0c 全局规划已经规划出路径点 x
  • Hadoop学习之web查看HADOOP以及文件的上传和下载

    Hadoop学习之web查看HADOOP 1 web端查看HDFS的NameNode 浏览器输入 xff1a http hadoop1002 9870 查看HDFS上储存的数据信息 2 Web端查看YARN的ResourceManager
  • 【编译原理】实验三 NFA 确定化和 DFA 最小化

    一 实验标题 xff1a NFA确定化和 DFA 最小化 二 实验目的 xff1a 1 学习和掌握将NFA转为 DFA 的 子集构造法 2 学会编程实现等价划分法最小化DFA 三 实验内容 xff1a xff08 一 xff09 NFA确定
  • 【网络协议】openR调研

    OpenR 是 Facebook 内部设计和开发的路由协议 平台 最初于 2016 年发布 xff0c 作为所有运行于 Terragraph 上的硬件的软件基础 xff0c 提供了一个测试更快 更有效的新型路由程序的框架 xff0c 引导数
  • Linux下安装docker详细操作步骤

    Docker的几个核心概念 xff1a Docker主机 xff08 host xff09 安装了docker程序的机器Docker客户端 xff08 client xff09 连接docker主机进行操作Docker仓库 xff08 Re
  • 相对熵 KL散度 (KullbackLeibler divergence)

    这个属于香农信息论中的东西 xff0c 在 PRML 书中1 6 信息论小节中有具体说明 真正碰到应用还是在洛桑联邦理工的POM文章中 xff08 概率占用图 xff09 作者使用自己产生的估计Q来去逼近未知分布P xff0c 其中P是一个
  • Python虚拟环境——virtualenv

    林野哥推荐的虚拟环境 xff0c 这个跟Conda虚拟环境有点像 xff0c 但是和conda最大的区别就是virtualenv会创建一个单独的文件夹存放python环境 xff0c 感觉隔离程度更高 使用方法如下 xff1a 1 安装vi
  • 洛桑联邦理工 TPAMI-2008 MTMC 概率占用图POM建模过程推导 笔记

    一切都要从2019年9月的那个秋天讲起 xff0c 林野哥向我推荐了这篇洛桑联邦理工的2008年TPAMI论文 xff0c 于是一个半月的时间都花在了这上面 Multi Camera People Tracking with a Proba
  • 知识图谱笔记(小象学院课程)

    2018年寒假看小象学院课程的时候写的笔记 xff0c 一共写了10页 xff0c 记得比较乱 因为纸质笔记不容易保存 xff0c 所以把它扫成了PDF以备后用 希望大家能够指出不足和错误
  • 隐马尔可夫模型HHM重要公式推导

    我终于把HMM看完了 xff0c 这些笔记都是看的过程中自己对推导过程写的注释 xff0c 还有知识框架 原来卡尔曼和粒子滤波都是属于HMM模型里面的 笔记结构如下 xff1a 1 HMM简介 xff1a 知识体系 43 一个模型 43 两
  • MOT指标笔记《CLEAR Metrics-MOTA&MOTP》2008年·卡尔斯鲁厄大学

    搞了这么久的MOT xff0c 到头来发现最基本的MOTA和MOTP还没有搞懂 xff0c 实在有点说不过去 今天花了一上午的时间阅读2008年卡尔斯鲁厄大学的 Evaluating Multiple Object Tracking Per
  • 概率图模型-知识结构

    两周多 xff0c 终于把概率图模型这一章看完了 xff0c 由于只是看了知识框架 xff0c 很多具体细节都还不理解 内容真的是好多啊 xff0c 而且都是理论 xff0c 没有实践 希望日后用到的时候能回忆的起来这些内容吧
  • 软件工程概论-课后作业1

    需要网站系统开发需要掌握的技术 1 网页设计 xff1a Photoshop Flash max Dreamweaver 2 网站程序 xff1a Dreamweaver Visual Studio NET 会asp asp net php
  • 《强化学习》——CH2 多臂赌博机 笔记

  • 相机几何学——投影矩阵P的构成(实验报告版)

    最近在可视化WildTrack数据集 xff0c 由于要对棋盘格点进行映射和绘制 xff0c 涉及到了P矩阵的计算 现在对P的来源进行了系统的整理 xff0c 以备后忘 在最后对场地端点映射产生的问题进行了讨论 xff08 事情开始变得有意
  • 约束优化方法_2_——Frank-Wolfe方法

    Frank Wolfe方法属于约束优化中可行方向法的一种 上一篇博文对同类型的Zoutendijk可行性方法进行了介绍 xff0c 这一部分着重关注Frank Wolfe方法 Frank Wolfe方法的基本思想是 xff1a 每次迭代中使
  • 二次规划_1_——Lagrange方法

    二次规化是非线性规化中的一种特殊情形 xff0c 其目标函数是二次实函数 xff0c 约束是线性的 考试中会考到四种方法 xff0c 分别为 xff1a Lagrange方法 起作用集方法 直接消去法和广义消去法 前两种在教材上有详细描述
  • 二次规划_2_——起作用集方法

    这个算法很反人类 xff0c 迭代过程相当复杂 xff0c 最优化老师说 xff1a 明确地告诉你要考的 起作用集方法适用于消元法和Lagrange方法无法处理的不等式约束二次规化问题 其主要思想是 xff1a 以已知点为可行点 xff0c