UA SIE545 优化理论基础1 凸分析8 极点与极方向
UA SIE545 优化理论基础1 凸分析8 极点与极方向
这一讲我们讨论一种特殊的凸集,多面体集合(polyhedral set),定义
S={x∈Rn:Ax=b,x≥0}S = \{x \in \mathbb{R}^n:Ax = b,x \ge 0\}S={x∈Rn:Ax=b,x≥0}
称SSS为多面体集合的标准形式。如果AAA是n×nn\times nn×n的矩阵,并且rank(A)=nrank(A)=nrank(A)=n,则SSS是nnn个nnn维超平面的交;如果AAA是n×nn \times nn×n的矩阵但rank(A)<nrank(A)<nrank(A)<n,则可以用一个m×nm \times nm×n的矩阵代替AAA(我们记这个用来替代的矩阵为AAA)满足rank(A)=mrank(A)=mrank(A)=m,存在满秩的m×mm \times mm×m的矩阵BBB与m×(n−m)m \times (n-m)m×(n−m)的矩阵NNN,使得
Ax=b⇔BxB+NxN=b,xB≥0,xN≥0Ax = b \Leftrightarrow Bx_B + N x_N = b,x_B\ge 0,x_N \ge 0Ax=b⇔BxB+NxN=b,xB≥0,xN≥0
例1 考虑S={(x1,x2,x3):x1+x2+x3≤1,x1,x2,x3≥0}S=\{(x_1,x_2,x_3):x_1+x_2 +x_3 \le 1,x_1,x_2,x_3 \ge 0\}S={(x1,x2,x3):x1+x2+x3≤1,x1,x2,x3≥0},在三维空间中,SSS就是一个以(0,0,1),(0,0,0),(1,0,0),(0,1,0)(0,0,1),(0,0,0),(1,0,0),(0,1,0)(0,0,1),(0,0,0),(1,0,0),(0,1,0)为顶点的四面体,现在引入x4≥0x_4 \ge 0x4≥0使得x1+x2+x3+x4=1x_1+x_2+x_3+x_4=1x1+x2+x3+x4=1,显然
S={(x1,x2,x3):x1+x2+x3+x4=1,x1,x2,x3,x4≥0}S=\{(x_1,x_2,x_3):x_1+x_2 +x_3+x_4 = 1,x_1,x_2,x_3,x_4 \ge 0\}S={(x1,x2,x3):x1+x2+x3+x4=1,x1,x2,x3,x4≥0}
这就把多面体集合写成了标准形式。一个非常有趣的现象是,如果记S1={(x1,x2,x3,x4):x1+x2+x3+x4=1,x1,x2,x3,x4≥0}S_1=\{(x_1,x_2,x_3,x_4):x_1+x_2 +x_3+x_4 = 1,x_1,x_2,x_3,x_4 \ge 0\}S1={(x1,x2,x3,x4):x1+x2+x3+x4=1,x1,x2,x3,x4≥0}
则S1S_1S1是一个四维空间中的超平面,SSS是它试图进入到三维空间而被挤压后的形状,也就是第四个坐标x4x_4x4被挤掉了。
在这个问题中
A=[1111],B=[1],N=[111]A = [1 \ 1 \ 1 \ 1],\ B = [1],\ N = [1\ 1 \ 1]A=[1 1 1 1], B=[1], N=[1 1 1]
对于一个多面体而言,在三维空间中的实践告诉我们,只要我们确定了多面体的顶点和边,就能够确定一个多面体的形状进而确定它的性质,接下来我们就试图把顶点和边的概念推广到多面体集合。
称一个点为多面体集合的极点(extreme point)或者顶点如果它不能表示成多面体集合中任意两个点的(不含这两个点的)凸组合;称一个可以任意长的向量为多面体集合的极方向(extreme direction),如果它不能表示成多面体集合中任意两个向量的(不含这两个向量的)凸组合。
基于这个理解,我们可以给出一般的多面体集合的顶点与边。考虑
S={x∈Rn:Ax=BxB+NxN=b,x≥0}S = \{x \in \mathbb{R}^n:Ax = Bx_B+Nx_N = b,x \ge 0\}S={x∈Rn:Ax=BxB+NxN=b,x≥0}
如果BBB是可逆矩阵,则extreme point可以表示为
x=[xBxN]=[B−1b0]x = \left[ \begin{matrix} x_B \\ x_N \end{matrix} \right]= \left[ \begin{matrix} B^{-1}b \\ 0 \end{matrix} \right]x=[xBxN]=[B−1b0]
因为BBB事实上是AAA的列向量的极大线性无关组,因此一共可能有CnmC_n^mCnm种选择,这意味着顶点最多可能有CnmC_n^mCnm个。并且非空的多面体集合至少有一个顶点。
考虑极方向ddd,SSS中任何一个点可以表示成y=x+λdy=x+\lambda dy=x+λd,其中xxx表示一个极点,因此
Ay=Ax+λAd=b⇒Ad=0Ay = Ax + \lambda Ad = b \Rightarrow Ad = 0Ay=Ax+λAd=b⇒Ad=0
也就是说极方向属于AAA的核空间。如果N=[a1,a2,⋯,an−m]N=[a_1,a_2,\cdots,a_{n-m}]N=[a1,a2,⋯,an−m],并且存在aja_jaj使得B−1aj≤0B^{-1}a_j \le 0B−1aj≤0,则
d=[−B−1ajej]d = \left[ \begin{matrix} -B^{-1}a_j \\ e_j \end{matrix} \right]d=[−B−1ajej]
其中eje_jej是n−mn-mn−m维了除了第jjj个元素为1其他元素均为0的向量。简单分析如下
BdB+NdN=0Bd_B +Nd_N = 0BdB+NdN=0
因为rank(A)=mrank(A)=mrank(A)=m,所以核空间的维数为n−mn-mn−m,为了简单起见,可以取dN=ejd_N=e_jdN=ej,则
BdN=−Nej=−aj⇒dB=−B−1ajBd_N = -Ne_j = -a_j \Rightarrow d_B = -B^{-1}a_jBdN=−Nej=−aj⇒dB=−B−1aj
之所以要限制B−1aj≤0B^{-1}a_j \le 0B−1aj≤0是因为SSS永远在空间的第一象限,为了保证可以无限延伸的向量ddd仍然在SSS中,必须要−B−1aj≥0-B^{-1}a_j \ge 0−B−1aj≥0。注意到给定一个极点,极方向最多有n−mn-mn−m个,因此SSS的极方向最多有(n−m)Cnm(n-m)C_n^m(n−m)Cnm
UA SIE545 优化理论基础1 凸分析8 极点与极方向相关推荐
- UA SIE545 优化理论基础1 凸分析3 凸集与凸包
UA SIE545 优化理论基础1 凸分析3 凸集与凸包 基本概念与性质 凸集 凸组合 凸包 基本概念与性质 凸集 考虑数域FFF上的线性空间VVV. 定义一 凸集(convex set).S⊂VS ...
- UA SIE545 优化理论基础1 凸分析2 仿射组合与仿射包
UA SIE545 优化理论基础1 凸分析2 仿射组合与仿射包 对于数域FFF上的线性空间VVV,考虑∀x1,⋯,xm∈V,∀λ1,⋯,λm∈F\forall x_1,\cdots,x_m \in V ...
- UA SIE545 优化理论基础1 凸分析1 线性流形与超平面
UA SIE545 优化理论基础1 凸分析1 线性流形与超平面 线性流形 超平面 线性流形 假设FFF是一个数域,VVV是FFF上的一个线性空间.称M⊂VM \subset VM⊂V是一个线性流形,如 ...
- UA SIE545 优化理论基础1 例题3 凸多面体的表示与线性规划
UA SIE545 优化理论基础1 例题3 凸多面体的表示与线性规划 这一讲介绍多面体的表示算法,以及单纯形的计算方法.考虑线性规划: mincTxs.t.Ax=b,x≥0\min \ \ c^Tx ...
- UA SIE545 优化理论基础1 例题1 常见的凸集
UA SIE545 优化理论基础1 例题1 常见的凸集 一些例题 在优化理论中,我们主要讨论下面几种凸集: 超平面:{x:pTx=β}\{x:p^Tx=\beta\}{x:pTx=β} 半空间:{x: ...
- UA SIE545 优化理论基础 用Farkas定理证明Farkas类的结论
UA SIE545 优化理论基础 用Farkas定理证明Farkas类的结论 Farkas定理 AAA是一个m×nm\times nm×n的矩阵,下面两个系统有且仅有一个有解: I:Ax≤0,cTx& ...
- UA SIE545 优化理论基础 函数凸性的一些有趣的判断方法
UA SIE545 优化理论基础 函数凸性的一些有趣的判断方法 Convex function f:S→Rf:S \to \mathbb{R}f:S→R where SSS is a nonempty ...
- UA SIE545 优化理论基础 例题 对偶函数的凸性与次梯度计算
UA SIE545 优化理论基础 例题 对偶函数的凸性与次梯度计算 例 考虑对偶函数 θ(u1,u2)=minx12+x22≤4x1(2−u1)+x2(3−u2)\theta(u_1,u_2) = ...
- UA SIE545 优化理论基础2 凸函数 概念 理论 总结
UA SIE545 优化理论基础2 凸函数 概念 理论 总结 凸函数的概念与简单性质 Convex function f:S→Rf:S \to \mathbb{R}f:S→R where SSS is ...
最新文章
- js中的全局变量和局部变量
- eclipse远程调试失败
- jieba.posseg.cut方法
- Oracle在不同的语言环境结果to_date错误的问题
- python----字符串方法
- 一个应用程序和另一个应用程序apk文件信息
- SAP Spartacus popover Component css 的重用设计
- TensorFlow基础篇(五)——tf.constant()
- 20190922 On Java8 第二十一章 数组
- Android逆向实战篇(Luac文件解密)
- 【云售前工具】在线绘图工具推荐
- EMMC和Nand傻傻分不清
- JS实现小方块上下移动
- 程序员来聊一聊信用卡(一)——年轻人该不该办理一张信用卡
- C语言之struct
- OpenSearch最新功能介绍
- curl采集 根据关键词 获取雅虎竞价排名
- clodera scm 数据库表信息 和 hive元数据整理
- 学c语言笔记本电脑推荐,学生党看过来,哪些高性价比笔记本值得入手
- 线性回归 Linear Regression 与逻辑回归 Logistic Regression
热门文章
- Docker初识之Centos6.2下安装Docker容器
- Java图片文本识别工具Eye实现(不支持中文)
- mopso算法代码程序_JAVA程序员的必杀技,面试中常考的8个经典算法题,过程精妙,代码精炼...
- 电脑安全注意事项_别墅装修设计注意事项 别墅装修的陷阱有哪些
- Vue 单文件组件||Vue 单文件组件的基本用法||webpack 中配置 vue 组件的加载器|| 在 webpack 项目中使用 vue
- 跳转控制语句 break || continue || goto
- 转载:python pyppeteer手动、离线安装 chromium
- JQuery eval函数
- Mac 技术篇-Oracle数据库连接工具SQL Developer启用、关闭自动提交事务,设置自动commit
- Python 技术篇-用smtplib和email库实现邮件发送并展示本地图片实例演示