陈宝林《最优化理论与算法》详细学习笔记 (三)————单纯形法

  • 数学模型
  • 最优性检验与解的判别
    • 最优解的判别定理
    • 无穷多最优解判别定理
    • 无界解判别定理
    • 其他情形
  • 第三章 单纯形法
    • 单纯形表
      • 单纯形表
      • 计算步骤
    • 人工变量法
      • 大M法
      • 两阶段法
    • 退化

一般线性规划问题具有线性方程组的变量数大于方程个数,这时有不定的解。于是,我们有选择地选择一个基本可行解,也就是可行域的一个顶点,沿着可行域的边界到下一个相邻的顶点,要求新的顶点目标值函数更优,如此迭代,直至找到最优解,或判定该最优化问题无界。这就是单纯形法的基本求解思路

数学模型

给定标准形式的LP
min⁡cx\min {\mathcal{ cx}}mincx
s.t. Ax=b,A x=b,Ax=b, i=1,2,…,mi=1,2, \dots, mi=1,2,…,m, x≥0x \geq 0x≥0
x=(xB,xN),xBx=\left(x_{B}, x_{N}\right), x_{B}x=(xB​,xN​),xB​ 为基变量, xNx_{N}xN​ 为非基变量
利用分块矩阵
A=[B,N]Ax=b⇒BxB+NxN=b⇒xB+B−1NxN=B−1b⇒xB=B−1b−B−1xN\begin{array}{l} A=[B, N] \\ A x=b \Rightarrow B x_{B}+N x_{N}=b \Rightarrow \\ x_{B}+B^{-1} N x_{N}=B^{-1} b \Rightarrow x_{B}=B^{-1} b-B^{-1} x_{N} \end{array}A=[B,N]Ax=b⇒BxB​+NxN​=b⇒xB​+B−1NxN​=B−1b⇒xB​=B−1b−B−1xN​​
于是目标函数
z=cB′xB+cN′xN=cB′(B−1b−B−1NxN)+cN′xN=cB′B−1b+(cN′−cB′B−1N)xN\begin{aligned} z &=c_{B}^{\prime} x_{B}+c_{N}^{\prime} x_{N} \\ &=c_{B}^{\prime}\left(B^{-1} b-B^{-1} N x_{N}\right)+c_{N}^{\prime} x_{N} \\ &=c_{B}^{\prime} B^{-1} b+\left(c_{N}^{\prime}-c_{B}^{\prime} B^{-1} N\right) x_{N} \end{aligned}z​=cB′​xB​+cN′​xN​=cB′​(B−1b−B−1NxN​)+cN′​xN​=cB′​B−1b+(cN′​−cB′​B−1N)xN​​
上式中(cN′−cB′B−1N)\left(c_{N}^{\prime}-c_{B}^{\prime} B^{-1} N\right)(cN′​−cB′​B−1N)的分量cˉj=cj−cB′B−1Aj\bar{c}_{j}=c_{j}-c_{B}^{\prime} B^{-1} A_{j}cˉj​=cj​−cB′​B−1Aj​为约化(缩减)费用,于是有基本可行解xxx与基BBB相关联;若约化费用cˉ>0\bar{c}>0cˉ>0则可以推出xxx为最优;xxx为最优且非退化可以推出cˉ>0\bar{c}>0cˉ>0。

最优性检验与解的判别

由于线性规划问题的求解可能出现唯一最优解、无穷多最优解、无界解和无可行解等四种情况,因此,需要建立解的判别准则。
xi=bi′−∑j=m+1naij′xj,(i=1,2,⋯n)x_{i}=b_{i}^{\prime}-\sum_{j=m+1}^{n} a_{i j}^{\prime} x_{j}, \quad(i=1,2, \cdots n)xi​=bi′​−j=m+1∑n​aij′​xj​,(i=1,2,⋯n)
将上式代入目标函数式,整理可得
z=∑j=1ncjxj=∑i=1mcixi+∑j=m+1ncjxj=∑i=1mci(bi−∑j=m+1naijxj)+∑j=m+1ncjxj=∑i=1mcibi−∑i=1mci∑j=m+1naijxj+∑j=m+1ncjxj=∑i=1mcibi−∑j=m+1n∑i=1mciaijxj+∑j=m+1ncjxj=∑i=1mcibi+∑j=m+1n(cj−∑i=1mciaij)xj\begin{aligned} z &=\sum_{j=1}^{n} c_{j} x_{j}=\sum_{i=1}^{m} c_{i} x_{i}+\sum_{j=m+1}^{n} c_{j} x_{j}=\sum_{i=1}^{m} c_{i}\left(b_{i}-\sum_{j=m+1}^{n} a_{i j} x_{j}\right)+\sum_{j=m+1}^{n} c_{j} x_{j} \\ &=\sum_{i=1}^{m} c_{i} b_{i}-\sum_{i=1}^{m} c_{i} \sum_{j=m+1}^{n} a_{i j} x_{j}+\sum_{j=m+1}^{n} c_{j} x_{j} \\ &=\sum_{i=1}^{m} c_{i} b_{i}-\sum_{j=m+1}^{n} \sum_{i=1}^{m} c_{i} a_{i j} x_{j}+\sum_{j=m+1}^{n} c_{j} x_{j} \\ &=\sum_{i=1}^{m} c_{i} b_{i}+\sum_{j=m+1}^{n}\left(c_{j}-\sum_{i=1}^{m} c_{i} a_{i j}\right) x_{j} \end{aligned}z​=j=1∑n​cj​xj​=i=1∑m​ci​xi​+j=m+1∑n​cj​xj​=i=1∑m​ci​(bi​−j=m+1∑n​aij​xj​)+j=m+1∑n​cj​xj​=i=1∑m​ci​bi​−i=1∑m​ci​j=m+1∑n​aij​xj​+j=m+1∑n​cj​xj​=i=1∑m​ci​bi​−j=m+1∑n​i=1∑m​ci​aij​xj​+j=m+1∑n​cj​xj​=i=1∑m​ci​bi​+j=m+1∑n​(cj​−i=1∑m​ci​aij​)xj​​

最优解的判别定理

若X(0)=(b1′,b2′,⋯,bm′,0,⋯,0)TX^{(0)}=\left(b_{1}^{\prime}, b_{2}^{\prime}, \cdots, b_{m}^{\prime}, 0, \cdots, 0\right)^{T}X(0)=(b1′​,b2′​,⋯,bm′​,0,⋯,0)T为对应于基BBB的一个基可行解,且对于一切j=m+1,…,nj=m+1, \ldots, nj=m+1,…,n有σj≤0\sigma_{j} \leq 0σj​≤0,则X(0)X^{(0)}X(0)为最优解。称σj\sigma_{j}σj​为检验数

无穷多最优解判别定理

若X(0)=(b1′,b2′,⋯,bm′,0,⋯,0)TX^{(0)}=\left(b_{1}^{\prime}, b_{2}^{\prime}, \cdots, b_{m}^{\prime}, 0, \cdots, 0\right)^{T}X(0)=(b1′​,b2′​,⋯,bm′​,0,⋯,0)T为对应于基BBB的一个基可行解,且对于一切j=m+1,…,nj=m+1, \ldots, nj=m+1,…,n有σj≤0\sigma_{j} \leq 0σj​≤0,又存在某个非基变量的检验数σm+k=0\sigma_{m+k}=0σm+k​=0,则线性规划问题有无穷多最优解。
简要证明思路如下:只需将非基变量xm+k=0x_{m+k}=0xm+k​=0换入基变量中,找到一个新基可行解X(1)X^{(1)}X(1)。因为σm+k=0\sigma_{m+k}=0σm+k​=0,所以z=z0z=z_{0}z=z0​,故X(1)X^{(1)}X(1)也是最优解,进而X(0)X^{(0)}X(0)和X(1)X^{(1)}X(1)连线上的所有点都是最优解。

无界解判别定理

若X(0)=(b1′,b2′,⋯,bm′,0,⋯,0)TX^{(0)}=\left(b_{1}^{\prime}, b_{2}^{\prime}, \cdots, b_{m}^{\prime}, 0, \cdots, 0\right)^{T}X(0)=(b1′​,b2′​,⋯,bm′​,0,⋯,0)T为一个基可行解,有一个σm+k>0\sigma_{m+k}>0σm+k​>0,并且对i=m+1,…,ni=m+1, \ldots, ni=m+1,…,n,有ai,m+k≤0a_{i,m+k} \leq 0ai,m+k​≤0,那么该线性规划问题具有无界解(或称无最优解)。
简要证明思路如下:构造一个新的解X(1)X^{(1)}X(1),其分量为
xi(1)=bi′−λai,m+k′(λ>0)xm+k(1)=λxj(1)=0;j=m+1,⋯,n,并且 j≠m+k\begin{array}{l} x_{i}^{(1)}=b_{i}^{\prime}-\lambda a_{i, m+k}^{\prime}(\lambda>0) \\ x_{m+k}^{(1)}=\lambda \\ x_{j}^{(1)}=0 ; \quad j=m+1, \cdots, n, \text { 并且 } j \neq m+k \end{array}xi(1)​=bi′​−λai,m+k′​(λ>0)xm+k(1)​=λxj(1)​=0;j=m+1,⋯,n, 并且 j​=m+k​
因为ai,m+k≤0a_{i,m+k} \leq 0ai,m+k​≤0,所以对任意的 λ>0\lambda>0λ>0都是可行解,把x(1)x^{(1)}x(1)代入目标函数内,得到
z=z0+λσm+kz=z_{0}+\lambda \sigma_{m+k}z=z0​+λσm+k​
因 σm+k>0\sigma_{m+k}>0σm+k​>0,故当λ→+∞\lambda \rightarrow +\inftyλ→+∞, 则 z→+∞,z \rightarrow+\infty,z→+∞, 故该问题 目标函数无界。

其他情形

以上讨论都是针对标准型的,即求目标函数极大化时的情况。当要求目标函数极小化时,一种情况是将其化为标准型。
如果不化为标准型,只需在上述1,2点中把 σj≤0\sigma_{j} \leq 0σj​≤0 改 为 σj≥0,\sigma_{j} \geq 0,σj​≥0, 第3点中将 σm+k>0\sigma_{m+\mathrm{k}}>0σm+k​>0 改写为 σn+k<0\sigma_{n+k}<0σn+k​<0 即可。

第三章 单纯形法

单纯形表

单纯形表

为了便于理解计算关系,现设计一种计算表,称为单纯形表,其功能与增广矩阵相似。
将(1-22)式与目标函数组成n+1个变量,m+1个方程的方程组。
x1+a1m+1xm+1+⋯+a1nxn=b1x2+a2m+1xm+1+⋯+a2nxn=b2xm+amm+1xm+1+⋯+amnxn=bm−z+c1x1+⋯+cmxm+cm+1xm+1+⋯+cnxn=0\begin{array}{c} x_{1} \quad+a_{1 m+1} x_{m+1}+\cdots+a_{1 n} x_{n}=b_{1} \\ x_{2} \quad+a_{2 m+1} x_{m+1}+\cdots+a_{2 n} x_{n}=b_{2} \\ x_{m}+a_{m m+1} x_{m+1}+\cdots+a_{m n} x_{n}=b_{m} \\ & -z+c_{1} x_{1}+\cdots+c_{m} x_{m}+c_{m+1} x_{m+1}+\cdots+c_{n} x_{n}=0 \end{array}x1​+a1m+1​xm+1​+⋯+a1n​xn​=b1​x2​+a2m+1​xm+1​+⋯+a2n​xn​=b2​xm​+amm+1​xm+1​+⋯+amn​xn​=bm​​−z+c1​x1​+⋯+cm​xm​+cm+1​xm+1​+⋯+cn​xn​=0​
为了便于迭代运算,可将上述方程组写成增广矩阵形式
(010⋯0a1,m+1⋯a1nb1001⋯0a2,m+1⋯a2nb2⋮⋮⋮⋮⋮⋮000⋯0am,m+1⋯amnbm1c1c2⋯cmcm+1⋯cn0)\left(\begin{array}{cccccccc|c} 0 & 1 & 0 & \cdots & 0 & a_{1, m+1} & \cdots & a_{1 n} & b_{1} \\ 0 & 0 & 1 & \cdots & 0 & a_{2, m+1} & \cdots & a_{2 n} & b_{2} \\ \vdots & \vdots & & & \vdots & \vdots & & \vdots & \vdots \\ 0 & 0 & 0 & \cdots & 0 & a_{m, m+1} & \cdots & a_{m n} & b_{m} \\ 1 & c_{1} & c_{2} & \cdots & c_{m} & c_{m+1} & \cdots & c_{n} & 0 \end{array}\right)⎝⎜⎜⎜⎜⎜⎛​00⋮01​10⋮0c1​​010c2​​⋯⋯⋯⋯​00⋮0cm​​a1,m+1​a2,m+1​⋮am,m+1​cm+1​​⋯⋯⋯⋯​a1n​a2n​⋮amn​cn​​b1​b2​⋮bm​0​⎠⎟⎟⎟⎟⎟⎞​
若将zzz看作不参与基变换的基变量,它与x1,x2,…,xmx_{1},x_{2},…,x_{m}x1​,x2​,…,xm​的系数构成一个基,这时可采用行初等变换将c1,c2,…,cmc_{1},c_{2},…,c_{m}c1​,c2​,…,cm​变换为零,使其对应的系数矩阵为单位矩阵。得到
(010⋯0a1,m+1⋯a1nb1001⋯0a2,m+1⋯a2nb2⋮⋮⋮⋮⋮⋮000⋯0am,m+1⋯amnbm100⋯0cm+1−∑i=1mciai,m+1⋯cn−∑i=1mciain−∑i=1mcibi)\left(\begin{array}{cccccccc} 0 & 1 & 0 & \cdots & 0 & a_{1, m+1} & \cdots & a_{1 n} & b_{1} \\ 0 & 0 & 1 & \cdots & 0 & a_{2, m+1} & \cdots & a_{2 n} & b_{2} \\ \vdots & \vdots & & & \vdots & \vdots & & \vdots & \vdots \\ 0 & 0 & 0 & \cdots & 0 & a_{m, m+1} & \cdots & a_{m n} & b_{m} \\ 1 & 0 & 0 & \cdots & 0 & c_{m+1}-\sum_{i=1}^{m} c_{i} a_{i, m+1} & \cdots & c_{n}-\sum_{i=1}^{m} c_{i} a_{i n} & -\sum_{i=1}^{m} c_{i} b_{i} \end{array}\right)⎝⎜⎜⎜⎜⎜⎛​00⋮01​10⋮00​0100​⋯⋯⋯⋯​00⋮00​a1,m+1​a2,m+1​⋮am,m+1​cm+1​−∑i=1m​ci​ai,m+1​​⋯⋯⋯⋯​a1n​a2n​⋮amn​cn​−∑i=1m​ci​ain​​b1​b2​⋮bm​−∑i=1m​ci​bi​​⎠⎟⎟⎟⎟⎟⎞​
对于上表的说明:
XBX_{B}XB​列中填入基变量,这里是x1,x2,…,xmx_{1},x_{2},…,x_{m}x1​,x2​,…,xm​;
CBC_{B}CB​列中填入基变量的价值系数,这里是c1,c2,…,cmc_{1},c_{2},…,c_{m}c1​,c2​,…,cm​;它们是与基变量相对应的;
bbb列中填入约束方程组右端的常数;
cjc_{j}cj​行中填入基变量的价值系数c1,c2,…,cnc_{1},c_{2},…,c_{n}c1​,c2​,…,cn​;
θi\theta_{i}θi​列的数字是在确定换入变量后,按θ\thetaθ规则计算后填入;
最后一行称为检验数行,对应各非基变量xjx_{j}xj​的检验数是cj−∑i=1mciaij,j=1,2,⋯,nc_{j}-\sum_{i=1}^{m} c_{i} a_{i j}, \quad j=1,2, \cdots, ncj​−∑i=1m​ci​aij​,j=1,2,⋯,n

计算步骤

在初始单纯形表的基础上,每迭代一步构造一个新单纯形表,计算步骤如下:
(1)按数学模型确定初始可行基和初始基可行解,建立初始单纯形表。
(2)计算各非基变量xj的检验数,σj=cj−∑i=1mciaij\sigma_{j}=c_{j}-\sum_{i=1}^{m} c_{i} a_{i j}σj​=cj​−∑i=1m​ci​aij​;检查检验数,若所有检验数σj≤0,j=1,2,⋯n\sigma_{j} \leq 0, j=1,2, \cdots nσj​≤0,j=1,2,⋯n则已得到最优解,可停止计算。否则转入下一步。
(3)在σj>0,j=m+1,…,n\sigma_{j}>0, j=m+1, \ldots, nσj​>0,j=m+1,…,n中,若有某个σk\sigma_{k}σk​对应xkx_{k}xk​的系数列向量Pk≤0P_{k} \leq 0Pk​≤0,则此问题是无界,停止计算。否则,转入下一步。
(4)根据max⁡(σj>0)=σk\max \left(\sigma_{j}>0\right)=\sigma_{k}max(σj​>0)=σk​,确定xkx_{k}xk​为换入变量,按θ\thetaθ计算
θ=min⁡(biaik∣aik>0)=blalk\theta=\min \left(\frac{b_{i}}{a_{i k}} \mid a_{i k}>0\right)=\frac{b_{l}}{a_{l k}}θ=min(aik​bi​​∣aik​>0)=alk​bl​​
(5)以alka_{l k}alk​为主元素进行迭代(即用高斯消去法或称为旋转运算),把xkx_{k}xk​所对应的列向量
Pk=(a1ka2k⋮alk⋮amk)变换 ⇒(00⋮1⋮0)←第 l行 P_{k}=\left(\begin{array}{c} a_{1 k} \\ a_{2 k} \\ \vdots \\ a_{l k} \\ \vdots \\ a_{m k} \end{array}\right) \text { 变换 } \Rightarrow\left(\begin{array}{l} 0 \\ 0 \\ \vdots \\ 1 \\ \vdots \\ 0 \end{array}\right) \leftarrow \text { 第 } l \text { 行 }Pk​=⎝⎜⎜⎜⎜⎜⎜⎜⎜⎛​a1k​a2k​⋮alk​⋮amk​​⎠⎟⎟⎟⎟⎟⎟⎟⎟⎞​ 变换 ⇒⎝⎜⎜⎜⎜⎜⎜⎜⎜⎛​00⋮1⋮0​⎠⎟⎟⎟⎟⎟⎟⎟⎟⎞​← 第 l 行 
将X_{B}列中的x_{l}换为x_{k},得到新的单纯形表。重复(2)~(5),直到终止。

人工变量法

设线性规划问题的约束条件∑j=1nPjxj=b\sum_{j=1}^{n} P_{j} x_{j}=b∑j=1n​Pj​xj​=b
其中没有可作为初始基的单位矩阵,则分别给每一个约束方程加入人工变量xn+1,…,xn+mx_{n+1}, \ldots, x_{n+m}xn+1​,…,xn+m​,得到
{a11x1+a12x2+⋯+a1nxn+xn+1=ba21x1+a22x2+⋯+a2nxn+xn+2=bam1x1+am2x2+⋯+amnxn+xn+m=bx1,⋯,xn≥0;xm+1,⋯,xn+m≥0\left\{\begin{array}{cc} a_{11} x_{1}+a_{12} x_{2}+\cdots+a_{1 n} x_{n}+x_{n+1} & =b \\ a_{21} x_{1}+a_{22} x_{2}+\cdots+a_{2 n} x_{n}+x_{n+2} & =b \\ a_{m 1} x_{1}+a_{m 2} x_{2}+\cdots+a_{m n} x_{n} & +x_{n+m}=b \\ x_{1}, \cdots, x_{n} \geq 0 ; \quad x_{m+1}, \cdots, x_{n+m} \geq 0 \end{array}\right.⎩⎪⎪⎨⎪⎪⎧​a11​x1​+a12​x2​+⋯+a1n​xn​+xn+1​a21​x1​+a22​x2​+⋯+a2n​xn​+xn+2​am1​x1​+am2​x2​+⋯+amn​xn​x1​,⋯,xn​≥0;xm+1​,⋯,xn+m​≥0​=b=b+xn+m​=b​
以xn+1,…,xn+mx_{n+1}, \ldots, x_{n+m}xn+1​,…,xn+m​为基变量,并可得到一个m×mm×mm×m单位矩阵。令非基变量x1,…,xnx_{1},…,x_{n}x1​,…,xn​为零,便可得到一个初始基可行解X(0)=(0,0,…,0,b1,b2,…,bm)TX^{(0)}=\left(0,0, \ldots, 0, b_{1}, b_{2}, \ldots, b_{m}\right)^{\mathrm{T}}X(0)=(0,0,…,0,b1​,b2​,…,bm​)T
因为人工变量是后加入到原约束条件中的虚拟变量,要求经过基的变换将它们从基变量中逐个替换出来。
基变量中不再含有非零的人工变量,这表示原问题有解。
若在最终表中当所有cj−zj≤0c_{j}-z_{j} \leq 0cj​−zj​≤0,而在其中还有某个非零人工变量,这表示原问题无可行解。
以下讨论如何解含有人工变量的线性规划问题。

大M法

大M法的思想就是,在原线性规划问题加入松弛变量和人工变量后,将目标函数中松弛变量的系数设为0、人工变量的系数设为M(无穷大的数),再利用单纯形法进行计算得到最优解。

两阶段法

以下介绍求解含有人工变量线性规划问题的两阶段法。
第一阶段:不考虑原问题是否存在基可行解;给原线性规划问题加入人工变量,并构造仅含人工变量的目标函数和要求实现最小化。
目标函数
min⁡ω=xn+1+⋯+xn+m+0x1+0x2+⋯+0xn\min \omega=x_{n+1}+\cdots+x_{n+m}+0 x_{1}+0 x_{2}+\cdots+0 x_{n}minω=xn+1​+⋯+xn+m​+0x1​+0x2​+⋯+0xn​
约束条件
{a11x1+a12x2+⋯⋯=b1a21x1+a22x2+⋯⋯+a1nxn+xn+1=b2⋯⋯⋯⋯⋯am1x1+am2x2+⋯⋯+amxn+xn+m=bm\left\{\begin{array}{ccccc} a_{11} x_{1}+a_{12} x_{2}+\cdots \cdots & & =b_{1} \\ a_{21} x_{1}+a_{22} x_{2}+\cdots \cdots+a_{1 n} x_{n}+x_{n+1} & & =b_{2} \\ \cdots & \cdots & \cdots & \cdots & \cdots \\ a_{m 1} x_{1}+a_{m 2} x_{2}+\cdots \cdots+a_{m} x_{n} & & +x_{n+m}=b_{m} & \end{array}\right.⎩⎪⎪⎨⎪⎪⎧​a11​x1​+a12​x2​+⋯⋯a21​x1​+a22​x2​+⋯⋯+a1n​xn​+xn+1​⋯am1​x1​+am2​x2​+⋯⋯+am​xn​​⋯​=b1​=b2​⋯+xn+m​=bm​​⋯​⋯​
第一阶段求解:用单纯形法求解上述模型。若得到的最有值w=0w=0w=0,说明原问题存在基可行解,可以进行第二段计算。否则原问题无可行解,应停止计算。
第二阶段求解:从第一阶段计算得到的最终表中除去人工变量,将目标函数行的系数,换为原问题的目标函数系数,作为第二阶段计算的初始表。各阶段的计算方法及步骤与第3节介绍的单纯形法相同。

退化

在单纯形法计算中用θ\thetaθ规则确定换出变量时,有时存在两个以上相同的最小比值,这样在下一次迭代中就有一个或几个基变量等于零,这就出现了退化解。
这时换出变量xl=0x_{l}=0xl​=0,迭代后目标函数值不变。这时不同基表示为同一顶点。有人构造了一个特例,当出现退化时,进行多次迭代,而基从B1B_{1}B1​,B2B_{2}B2​,…又返回到B1B_{1}B1​,即出现计算过程的循环,便永远达不到最优解。
尽管实际计算过程中循环现象极少出现,但还是有可能发生的。如何解决这问题? 先后有人提出了“摄动法”,“字典序法”。1974年由勃兰特(Bland)提出一种简便的规则,简称勃兰特规则:
(1) 选取cj−zj>0c_{j}-z_{j}>0cj​−zj​>0中下标最小的非基变量xkx_{k}xk​为换入变量,即k=min⁡(j∣cj−zj>0)k=\min \left(j \mid c_{j}-z_{j}>0\right)k=min(j∣cj​−zj​>0)
(2) 当按θ\thetaθ规则计算存在两个和两个以上最小比值时,选取下标最小的基变量为换出变量。
按勃兰特规则计算时,一定能避免出现循环。

陈宝林《最优化理论与算法》超详细学习笔记 (三)————单纯形法相关推荐

  1. 陈宝林《最优化理论与算法》超详细学习笔记 (八)————最优性条件

    陈宝林<最优化理论与算法>超详细学习笔记 (八)----最优性条件 无约束问题的极值条件 必要条件 二阶充分条件 充要条件 约束极值问题的最优性条件 不等式约束的一阶最优性条件 无约束问题 ...

  2. 陈宝林《最优化理论与算法》超详细学习笔记 (七)————第五章 运输问题

    陈宝林<最优化理论与算法>超详细学习笔记 (七)----第五章 运输问题 第1节 运输问题的数学模型 第2节 表上作业法 2.1 确定初始基可行解 2.2 最优解的判别 2.3 改进的方法 ...

  3. 陈宝林《最优化理论与算法》超详细学习笔记 (四)————第四章 对偶理论

    陈宝林<最优化理论与算法>超详细学习笔记 (四)----第四章 对偶理论 1. 对偶问题的提出 2. 线性规划的对偶理论 2.1 原问题与对偶问题的关系 2.2 对偶问题的基本性质 3. ...

  4. 陈宝林《最优化理论与算法》超详细学习笔记 (一)————第十章 使用导数的最优化方法(最速下降法、牛顿法、阻尼牛顿法)

    陈宝林<最优化理论与算法>超详细学习笔记 (一)----第十章 使用导数的最优化方法(最速下降法.牛顿法.阻尼牛顿法) 写在前面 第十章 使用导数的最优化方法 最速下降法 牛顿法 阻尼牛顿 ...

  5. 陈宝林《最优化理论与算法》超详细学习笔记 (五)————最优性条件 之 KKT条件

    陈宝林<最优化理论与算法>超详细学习笔记 (五)----最优性条件 之 KKT条件 Lagrange对偶问题 原问题 Lagrange函数 Lagrange对偶函数 强/弱对偶性 弱对偶性 ...

  6. 陈宝林《最优化理论与算法》超详细学习笔记 (二)————补充知识(凸集) 第二章 线性规划的基本性质

    陈宝林<最优化理论与算法>超详细学习笔记 (二)----补充知识 凸集 & 第二章 线性规划的基本性质 补充知识 凸集 方向与极方向 表示定理 择一定理 第一章 线性规划的基本性质 ...

  7. 【台大郭彦甫】Matlab入门教程超详细学习笔记二:基本操作与矩阵运算(附PPT链接)

    Matlab入门教程超详细学习笔记二:基本操作与矩阵运算 前言 一.基本操作 1.把matlab当作计算器使用 2.变量 3.控制格式输出 二.矩阵运算 1.矩阵 2.矩阵索引 3.使用:创建向量 4 ...

  8. Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)

    所有示例使用的数据表均为Oracle提供的SQL基础数据表(t_employees.sql dept.sql emp.sql salgrade.sql) 熟练掌握多多练习即可达到完成后端开发所需具备的 ...

  9. MITRE ATTCK超详细学习笔记-01(背景,术语,案例)

    文章目录 1. ATT&CK框架简介 1.1 背景 1.2 特点 1.3 与Cyber Kill Chain的关系 2. ATT&CK相关术语 2.1 Matrix 2.2 TTPs ...

最新文章

  1. Android内存管理-OnTrimMemory
  2. 【版本更新】完整UI库Kendo UI发布R3 2017|附下载
  3. 小波的秘密9_图像处理应用:图像增强
  4. 浅谈c#垃圾回收机制(GC)
  5. iOS正则表达式(亲测,持续更新)
  6. 每日一题:leetcode1128.等价多米诺骨牌对数
  7. maven向本地仓库导入jar包
  8. ASP.NET 封装JS文件到DLL中并在页面中调用
  9. Visual Studio Code(VSCODE)语言设置
  10. 2016,我似乎明白了
  11. oppok3如何刷机_OPPO K3刷机教程?
  12. 教你如何用R进行数据挖掘
  13. 零库存挑战-分压电阻选择器V1.01【下载地址发布】
  14. 操作系统之银行家算法实现代码
  15. 通过SMART法则进行网站策划
  16. Linux TOP CPU %wa 值的理解
  17. 企业对NAS私有云存储有什么样的需求,NAS网络存储又有哪些优势与功能呢?
  18. 迅雷欲缔造互联网“视频梦工厂”
  19. 找软件测试工作自测,测试经验分享:做一个靠谱的软件测试人员
  20. 在win10上安装oracle10g

热门文章

  1. 三星HTC价格跳水 安卓旗舰会否崩塌?
  2. 每日技巧分享:怎么用AI绘画?
  3. CF886C Petya and Catacombs
  4. 《Rumor Detection By Exploiting User Credibility Information,Attention and Multi-task Learnning 》解读
  5. 解决csrftoken = soup.find(id=“csrftoken“).get(“value“)AttributeError: ‘NoneType‘ object has no attri问
  6. 论文:An Event Data Extraction Approach from SAP ERP for Process Mining翻译
  7. 基于蓝牙模块HC05的手机控制灯开关的小项目
  8. 屌丝一键换系统官方版
  9. 没有做过生意的老板,利用人性把濒临倒闭的面馆经营得红红火火
  10. 我一位老师对我们的人生寄语