@@ -2793,5 +2793,343 @@ $x = -H^{-1} y$
27932793(2) 原始问题没有可行点,当且仅当对偶问题无上界。
27942794
27952795定理2: 对于严格凸二次规划,设可行域为 $S$,则 $x^* \in S$ 为最优解,当且仅当存在 $w^* \ge 0$ 和 $v^* $,使得 $(x^* , w^* , v^* )$ 为 Lagrange 函数 $L(x, w, v)$ 的鞍点,即对任意 $x \in S$,任意 $w \ge 0$,有
2796+
27962797$$ L(x^*, w, v) \le L(x^*, w^*, v^*) \le L(x, w^*, v^*) $$
27972798
2799+ ### Lagrange 方法
2800+
2801+ 原理:凸规划问题的KKT点是最优解。通过求解KKT系统获取最优解.
2802+
2803+ 定义 Lagrange 函数
2804+
2805+ $$
2806+ L(x,\lambda)=\frac12x^THx+c^Tx-\lambda^T(Ax-b)
2807+ $$
2808+
2809+ 令 $\nabla_xL(x,\lambda)=0,\quad\nabla_ \lambda L(x,\lambda)=0$,则
2810+
2811+ $$
2812+ \begin{aligned}&Hx+c-A^T\lambda=0\\&-Ax+b=0\end{aligned}\\
2813+ \underset{\text{Lagrange矩阵}}{\underline{\begin{bmatrix}H&-A^T\\-A&0\end{bmatrix}}}\begin{bmatrix}x\\\lambda\end{bmatrix}=\begin{bmatrix}-c\\-b\end{bmatrix}
2814+ $$
2815+
2816+ 假设 Lagrange 矩阵可逆,逆为
2817+
2818+ $$
2819+ \begin{bmatrix}H&-A^T\\-A&0\end{bmatrix}^{-1}=\begin{bmatrix}Q&-R^T\\-R&S\end{bmatrix}
2820+ $$
2821+
2822+ 可得
2823+
2824+ $$
2825+ \begin{cases}HQ+A^TR=I_n\\-HR^T-A^TS=0_{n\times m}\\-AQ=0_{m\times n}\\AR^T=I_m\end{cases}
2826+ $$
2827+
2828+ 假设 $H^{-1}$ 存在,则
2829+
2830+ $$
2831+ \begin{aligned}&Q=H^{-1}-H^{-1}A^T(AH^{-1}A^T)^{-1}AH^{-1}\\&R=(AH^{-1}A^T)^{-1}AH^{-1}\\&S=-(AH^{-1}A^T)^{-1}\\
2832+ &\begin{bmatrix}\overline{x}\\\overline{\lambda}\end{bmatrix}=\begin{bmatrix}-Qc+R^Tb\\Rc-Sb\end{bmatrix}
2833+ \end{aligned}
2834+ $$
2835+
2836+ 若 $x$ 是任一可行解,则有 $Ax = b$,在该点目标函数的梯度为
2837+
2838+ $$
2839+ \nabla f(x) = Hx + c
2840+ $$
2841+
2842+ 因此
2843+
2844+ $$
2845+ \begin{bmatrix}\overline{x}\\\overline{\lambda}\end{bmatrix}=\begin{bmatrix}x-Q\nabla f(x)\\R\nabla f(x)\end{bmatrix}
2846+ $$
2847+
2848+ 定理:设约束系数矩阵 $A$ 行满秩,并对任意满足 $Ax = 0$ 的非零向量 $x$,均有 $x^THx \gt 0$,则矩阵
2849+
2850+ $$
2851+ \begin{pmatrix}H&-A^T\\A&0\end{pmatrix}
2852+ $$
2853+
2854+ 可逆。
2855+
2856+ 只需要证明该矩阵的零空间只有零元素即可。
2857+
2858+ 定理:在前定理假设下, KKT点是二次规划问题的严格全局最优解.
2859+
2860+ 设 $d = x^* - x \ne 0$,则 $Ad = 0, d^THd \gt 0$,从而
2861+
2862+ $$
2863+ \begin{aligned}
2864+ f(x) &= f(x^* -d) \\
2865+ &= f(x^*) - d^T(Hx^* + c) + \frac12 d^THd\\
2866+ &\gt f(x^*)\end{aligned}
2867+ $$
2868+
2869+ 其中利用了 KKT 条件,$Hx^* + c - A^Tv = 0$,因此 $d^T(Hx^* + c) = 0$。
2870+
2871+ ### 直接消去法
2872+
2873+ $$
2874+ A=\begin{pmatrix}B,N\end{pmatrix},x=\begin{pmatrix}x_B\\x_N\end{pmatrix},H=\begin{pmatrix}H_{BB}&H_{BN}\\H_{NB}&H_{NN}\end{pmatrix},c=\begin{pmatrix}c_B\\c_N\end{pmatrix}
2875+ $$
2876+
2877+ 其中,$B$ 为 $m \times m$ 的可逆矩阵
2878+
2879+ $$
2880+ x_B=B^{-1}(b-Nx_N)
2881+ $$
2882+
2883+ 这样就把有约束问题转换为无约束的问题。
2884+
2885+ $$
2886+ \begin{aligned}&\psi(x_N)=\frac12x_N^T\bar{H}_Nx_N+\left(c_N^T-c_B^TB^{-1}N\right)x_N\\&+\left(B^{-1}b\right)^T\left(H_{BN}-H_{BB}\left(B^{-1}N\right)\right)x_N+\frac12\left(B^{-1}b\right)^TH_{BB}\left(B^{-1}N\right)+c_B^TB^{-1}b\end{aligned}
2887+ $$
2888+
2889+ 其中,$\bar{H}_ {N}=H_ {NN}-\left(B^{-1}N\right)^{T}H_ {BN}-H_ {NB}\left(B^{-1}N\right)+\left(B^{-1}N\right)^{T}H_ {BB}\left(B^{-1}N\right)$
2890+
2891+ 消元法的特点:
2892+ (1) 简单、直观
2893+ (2) B接近不可逆时可能导致数值不稳定
2894+
2895+ ### 广义消去法
2896+
2897+ 取 $Ax = b$ 的一个特解 $x_0$,则原问题等价于
2898+
2899+ $$
2900+ \begin{cases}\min&\frac12y^THy+y^T(Hx_0+c)+f(x_0)\\s.t.&Ay=0\end{cases}
2901+ $$
2902+
2903+ 记 $Z$ 为由 $A$ 的零空间的一组基组成的矩阵,$Ay=0$ 等价于存在 $z\in \R^{n-m}$ 使 $y=Zz$.
2904+
2905+ 因此目标变为
2906+
2907+ $$
2908+ \min_{z\in R^{n-m}}\frac12z^TZ^TH\mathbb{Z}z+z^TZ^Tg(x_0)\\
2909+ g(x_0) = c+ Hx_0
2910+ $$
2911+
2912+ 令 $S, Z$ 分别为 $n \times m, n \times (n - m)$ 矩阵,满足
2913+
2914+ $$
2915+ AS = I, AZ = 0
2916+ $$
2917+
2918+ 且 $(S\: Z)$ 为可逆矩阵,则 $x = Sb$ 是方程 $Ax = b$ 的一个可行解,设 $d$ 为 $Ax = 0$ 的解,则 $d = Zy$,通解可表示为
2919+
2920+ $$
2921+ x = Sb + Zy
2922+ $$
2923+
2924+ 通过 QR 分解
2925+
2926+ $$
2927+ A^T = (Q_1\: Q_2)\binom{R}{0} = Q_1R
2928+ $$
2929+
2930+ 满足 $Q = (Q_1\: Q_2) \in R^{n\times n}$ 为正交阵,$R$ 为 $m\times m$ 上三角矩阵,$Q_1^TQ_1 = I$,$Q_1^TQ_2 = 0$。
2931+
2932+ 取
2933+
2934+ $$
2935+ S = Q_1(R^{-1})^T, Z = Q_2
2936+ $$
2937+
2938+ ### 起作用集方法
2939+
2940+ $$
2941+ \begin{cases}\min &f(x)=\frac12x^THx+c^Tx
2942+ \\s.t.&Ax\geq b\end{cases}
2943+ $$
2944+
2945+ 其中 $H$ 为 $n$ 阶对称正定矩阵。
2946+
2947+
2948+ 基本思想:在每次迭代中,以已知的可行点为起点,把在该点起作用约束作为等式约束,在此约束下极小化目标函数f(x).
2949+
2950+ 定理,设 $x^* $ 是不等式约束二次规划问题的可行解,$x^* , \lambda^* $ 是下述问题
2951+
2952+ $$
2953+ \begin{aligned}&\min f(x)\\&s.t.\quad a^ix=b_i\quad i\in I(x^*)\end{aligned}
2954+ $$
2955+
2956+ 其中 $a^i$ 是 $A$ 的第 $i$ 行。
2957+
2958+ 的 KKT 对,若对任意 $i \in I(x^* )$ 都有 $\lambda_i^* \ge 0$,则 $x^* $ 是原二次规划问题的 KKT 点。
2959+
2960+ 步骤:
2961+
2962+ $$
2963+ \begin{aligned}&1.\text{给定初始可行点}x^{(1)},\text{起作用下标集}I^{(1)}\text{,置}k=1。\\&2.\text{ 求解二次规划问题:}\\&\begin{cases}\min\frac12\delta^TH\delta+\nabla f(x^{(k)})^T\delta\\s.t\quad a^i\delta=0,\quad i\in I^{(1)}\end{cases}\\&\text{得最优解}\delta^{(k)}\text{。若}\delta^{(k)}=0\text{,则转5;否则转3。}\\
2964+ &\text{3.计算}\\&\hat{\alpha}_k=\min\left\{\frac{b_i-a^ix^{(k)}}{a^id^{(k)}}|\:i\notin I^{(k)},a^id^{(k)}<0\right\}=\frac{b_p-a^px^{(k)}}{a^pd^{(k)}},\\&\text{取}\\&\alpha_k=\min\left\{1,\hat{\alpha}_k\right\}.\\&\text{令}x^{(k+1)}=x^{(k)}+\alpha_kd^{(k)}\text{,计算}\nabla f(x^{(k)}).\\&4.\text{若}\alpha_k<1,\text{则置}I^{(k+1)}=I^{(k)}\bigcup\{p\},\:k:=k+1\text{, 返回}2;\\&\text{若}\alpha_k=1\text{,记}x^{(k+1)}\text{处起作用约束下标集为}I^{(k+1)}=I^{(k)},\\&\text{置}k:=k+1\text{,转5。}\\
2965+ &\text{5.计算}\\&\lambda^{(k)}=(A^{(k)}H^{-1}A^{(k)^T})^{-1}A^{(k)}H^{-1}\nabla f(x^{(k)})\\&\text{其中}A^{(k)}\text{是起作用约束系数矩阵,设}\\&\lambda_q^{(k)}=\min\{\lambda_i^{(k)}\mid i\in I^{(k)}\}\\&\text{若 }\lambda_q^{(k)}\geq0,\text{则停止计算,得到最优解;否则从}I^{(k)}\text{中}\\&\text{删除}q,\text{返回2。}\end{aligned}
2966+ $$
2967+
2968+ 1.在实际计算中,初始点选取并非易事,需要用类似于线性
2969+ 规划问题求初始基本可行解的方法构造辅助问题。
2970+
2971+ 2.若二次规划是严格凸的,则起作用集方法经有限步迭代可
2972+ 求出二次规划的最优解;若H是非正定的,按上述方法,有
2973+ 可能得不到最优解。
2974+
2975+ ### Lemke算法
2976+
2977+ 基本思想: 把线性规划的单纯形方法加以适当的修改,用于求二次规划KKT的点.
2978+
2979+ $$
2980+ \begin{cases}\min\:&f(x)=\frac12\:x^THx+c^Tx\\s.t.&Ax\geq b\\&x\geq0\end{cases}
2981+ $$
2982+
2983+ 其中 $H$ 为对称矩阵,$A$ 为行满秩矩阵
2984+
2985+ 定义 Langrange 函数
2986+
2987+ $$
2988+ L(x,y,u)=\frac12x^THx+c^Tx-y^T(Ax-b)-u^Tx
2989+ $$
2990+
2991+ 引入松弛变量 $v \ge 0$ 使得 $Ax - v = b$。
2992+
2993+ 则 KKT 条件为
2994+
2995+ $$
2996+ \begin{cases}Hx+c-A^Ty-u=0\\Ax-\nu=b\\u^Tx=0\\\nu^Ty=0\\u,\nu,x,y\geq0\end{cases}\Leftrightarrow
2997+ \begin{cases}u-Hx+A^Ty=c\\\nu-Ax=-b\\u^Tx=0\\\nu^Ty=0\\u,\nu,x,y\geq0\end{cases}
2998+ $$
2999+
3000+ 记 $w=\begin{bmatrix}u\\ v\end{bmatrix},z=\begin{bmatrix}x\\ y\end{bmatrix},M=\begin{bmatrix}H&-A^T\\ A&0\end{bmatrix},q=\begin{bmatrix}c\\ -b\end{bmatrix}$,则等价于
3001+
3002+ $$
3003+ \begin{cases}w-Mz=q\\w,z\geq0\\w^Tz=0\end{cases}\tag{*}
3004+ $$
3005+
3006+ 称为线性互补问题:对于给定的矩阵 $M$ 和向量 $q$ ,寻找向量$z$和
3007+ $w$,使之满足 $(* )$,或者找到一种判断,说明 $z$ 和 $w$ 不存在。
3008+
3009+ 线性互补问题的解 $(w, z)$ 的特征:
3010+
3011+ 解的 $2(m + n)$ 个分量中至少有 $m + n$ 个取 $0$ 值,而且每对变量 $w_i, z_i$ 中至少有 1 个为 0,其余分量均为非负数。
3012+
3013+ 定义:设 $(w, z)$ 是
3014+
3015+ $$
3016+ \begin{cases}w-Mz=q\\w,z\geq0\end{cases}
3017+ $$
3018+
3019+ 的一个基本可行解,且每个互补变量对 $(w_i, z_i)$ 中有一个变量是基变量,则称 $(w, z)$ 是互补基本可行解。
3020+
3021+ 求互补基本可行解的Lemke方法
3022+
3023+ 1 . 如果 $q \ge 0$,则 $(w,z) = (q, 0) $是一个互补基本可行解。
3024+ 2 . 若 $q \not\ge 0$,则引入人工变量 $z_0$,令
3025+
3026+ $$
3027+ \begin{cases}w-Mz-ez_0=q&\text{(1)}\\w,z,z_0\geq0&\text{(2)}\\w^Tz=0&\end{cases}
3028+ $$
3029+
3030+ 其中 $e = (1, \dots, 1)^T$ 是 $m + n$ 维的列向量。
3031+
3032+ 定义:设 $(w, z, z_0)$ 是 $(* )$ 满足下列条件的可行解,则称 $(w, z, z_0)$ 为准互补基本可行解。
3033+
3034+ 1 . $(w, z, z_0)$ 为 $(1)$ 和 $(2)$ 的一个基本可行解;
3035+ 2 . 对某个 $s \in \{ 1, \dots, m + n\} $,$w_s, z_s$ 都不是基变量;
3036+ 3 . $z_0$ 是基变量,且每个互补变量对 $(w_i, z_i) (i \ne s)$ 中,恰好有一个变量是基变量。
3037+
3038+ 用主元消去法求准互补基本可行解
3039+
3040+ 令 $z_0 = \max\{ -q_i|i = 1, \dots, m+n\} = -q_s, z = 0, w = q + ez_0 = q - eq_s$,则 $(w, z, z_0)$ 是一个准互补基本可行解,其中 $w_i()i\ne s$ 和 $z_0$ 是基变量,其余变量为非基变量,以此解为初始解,用主元消去法求新的准互补基本可行解。
3041+
3042+ 选择主元时应遵循的两条规则:
3043+ 1 . 若 $w_i$ (或者 $z_i$) 离基,则 $z_i$ (或者 $w_i$)进基;
3044+ 2 . 按照单纯形方法中的最小比值原则确定离基变量。
3045+
3046+ ### 路径跟踪法
3047+
3048+ $$
3049+ \begin{cases}\min\:f(x)=\frac12\:x^THx+c^Tx\\\\s.t.\quad Ax\geq b\end{cases}
3050+ $$
3051+
3052+ 其中 $H$ 是 $n$ 阶对称正定矩阵,$x$ 是最优解的充要条件为存在 $y$ 使得
3053+
3054+ $$
3055+ \begin{cases}Hx+c-A^Ty=0\\Ax-b\geq0\\\left(Ax-b\right)_iy_i=0,i=1,\cdots,m\end{cases}
3056+ $$
3057+
3058+ 记 $Ax-b-w=0,w=(w_1,\cdots,w_m)^T\geq0$,则
3059+
3060+ $$
3061+ \begin{cases}Hx+c-A^Ty=0\\Ax-b-w=0\\y_iw_i=0,i=1,\cdots,m\\y,w\geq0\end{cases}
3062+ $$
3063+
3064+ 对应的松弛 KKT 条件
3065+
3066+ $$
3067+ \begin{cases}Hx+c-A^Ty=0\\Ax-b-w=0\\YWe=\mu e,\\y,w\geq0\end{cases}
3068+ $$
3069+
3070+ 其中 $Y=diag(y_1,\cdots,y_m),W=diag(w_1,\cdots,w_m)$,称 $\left\{ \left(x(\mu),y(\mu),w(\mu)\right)|\mu>0\right\} $ 为中心路径。
3071+
3072+ 求解方法:
3073+
3074+ $$
3075+ \text{任取一点}(x,y,w)\text{,其中}y>0,w>0,\text{确定方向}\\(\Delta x,\Delta y,\Delta w),\text{使}(x+\Delta x,y+\Delta y,w+\Delta w)\text{满足松弛}KKT\text{条件}.\\
3076+ \begin{cases}H(x+\Delta x)-A^T(y+\Delta y)+c=0\\A(x+\Delta x)-(w+\Delta w)-b=0\\(Y+\Delta Y)(W+\Delta W)e=\mu e,\\y+\Delta y,w+\Delta w\geq0\end{cases}
3077+ $$
3078+
3079+ 从而
3080+
3081+ $$
3082+ \begin{aligned}&\Delta w=Y^{-1}(\mu e-YWe-W\Delta y)\\&\begin{pmatrix}-H&A^T\\A&Y^{-1}W\end{pmatrix}\begin{pmatrix}\Delta x\\\Delta y\end{pmatrix}=\begin{pmatrix}c+Hx-A^Ty\\b-Ax+\mu Y^{-1}e\end{pmatrix}\end{aligned}
3083+ $$
3084+
3085+ ### 序列二次规划方法
3086+
3087+ 通过解一系列二次规划问题产生收敛于问题最优解和Lagrange乘子的迭代序列。
3088+
3089+ $$
3090+ \begin{aligned}&\min f(x)\\&s.t.\quad h(x)=0\end{aligned}
3091+ $$
3092+
3093+ KKT 条件:
3094+
3095+ $$
3096+ \begin{cases}\nabla_xL(x,\lambda)=\nabla f(x)-A(x)^T\lambda=0\\\nabla_\lambda L(x,\lambda)=-h(x)=0\end{cases}
3097+ $$
3098+
3099+ 用牛顿法求解满足 KKT 条件的方程组:
3100+
3101+ $$
3102+ \begin{pmatrix}x^{(k+1)}\\\lambda^{(k+1)}\end{pmatrix}=\begin{pmatrix}x^{(k)}\\\lambda^{(k)}\end{pmatrix}+\begin{pmatrix}d_x^{(k)}\\d_\lambda^{(k)}\end{pmatrix}\\
3103+ \nabla^2L\Big(x^{(k)},\lambda^{(k)}\Big)\biggl(\begin{matrix}d_x^{(k)}\\d_\lambda^{(k)}\\\end{matrix}\biggr)=-\nabla L\Big(x^{(k)},\lambda^{(k)}\Big)
3104+ $$
3105+
3106+ 恰好是下列二次规划问题的一阶必要条件:
3107+
3108+ $$
3109+ \begin{aligned}&\min\frac12d^T\nabla_{xx}^2L\Big(x^{(k)},\lambda^{(k)}\Big)d+\nabla f\Big(x^{(k)}\Big)^Td\\&s.t.\quad A\Big(x^{(k)}\Big)d+h\Big(x^{(k)}\Big)=0\end{aligned}
3110+ $$
3111+
3112+ 势函数——衡量迭代点好坏的函数
3113+
3114+ $$
3115+ \phi(x,\sigma)=f(x)+\sigma\sum_{j=1}^mh_j(x)^2\\
3116+ \begin{aligned}&\text{结论:若}\nabla_{xx}^2L\left(x^{(k)},\lambda^{(k)}\right)\text{正定,}\sigma\text{充分大,则}\\&\min\frac12d^T\nabla_{xx}^2L\left(x^{(k)},\lambda^{(k)}\right)d+\nabla f\left(x^{(k)}\right)^Td\\&s.t.\quad A\left(x^{(k)}\right)d+h\left(x^{(k)}\right)=0\\&\text{的解}d^{(k)}\text{是函数}\phi(x,\sigma)\text{在点}x^{(k)}\text{点非增方向。}\end{aligned}
3117+ $$
3118+
3119+ 一般约束问题
3120+
3121+ $$
3122+ \begin{aligned}&\min f(x)\\s.t.\quad&g_i(x)\geq0,\quad i=1,2,\cdots,m\\&h_j(x)=0,\quad j=1,2,\cdots,l\end{aligned}
3123+ $$
3124+
3125+ Lagrange 函数:
3126+
3127+ $$
3128+ L(x,w,\nu)=f(x)-\sum_{i=1}^mw_ig_i(x)-\sum_{j=1}^l\nu_jh_j(x)
3129+ $$
3130+
3131+ 每次迭代所要求解的二次规划子问题为:
3132+
3133+ $$
3134+ \min\frac12d^T\nabla_{xx}^2L\left(x^{(k)},w^{(k)},\nu^{(k)}\right)d+\nabla f\left(x^{(k)}\right)^Td\\s.t.\quad\nabla g_i\left(x^{(k)}\right)^Td+g_i\left(x^{(k)}\right)\geq0,i=1,2,\cdots,m\\\nabla h_j\left(x^{(k)}\right)^Td+h_j\left(x^{(k)}\right)=0,j=1,2,\cdots,l
3135+ $$
0 commit comments