Chapter 4. Convex Optimization Problems Notes

Chapter 4. Convex Optimization Problems Notes

[摘要 作者对Convex Optimization是入门级的level. 写这个notes主要是为了理清楚Convex Optimization Problems的基础概念以及各种问题形式的关联关系.

1. 凸优化问题的标准形式:

minimize f0(x)subject tofi(x)0,i=1,...,mhi(x)=0,i=1,...,p

f0ficonvex function,hiaffinie function
满足上述条件才是凸函数.

上述问题的最优解定义为p=inf{ f0 | fi(x)0,i=1,...,m,hi(x)=0,i=1,...,p}
其中inf表示集合的最小值,而min则是函数,是一个求解运算过程.

如果问题不可行,即x不满足xDfi0,hi(x)=0,那么p=(空集的下确界为), 如果存在可行解xk满足:当xk时,f0(xk),那么p=,并且称问题无下界
注意,凸优化问题的定义域实际上是一个凸集:

D=mi=0domfi

这个凸集由目标函数定义域(凸集)、m个(凸的)下水平集{x|fi(x)0}和p个超平面{hi(x)=0}的交集构成. 我们是在一个凸集上极小化一个凸的目标函数.

2. 等价问题

2.1 变量变换与消除等式约束

$x为原始参数变量,z为变换后参数变量,即x=\psi(z) \\ 如果x为原始问题的最优解,那么z = \psi^{-1}(x)为变换后问题的最优解 \\ 如果求解了变换后问题,得到z,那么x=\psi(x)为原始问题的最优解.$

2.2 优化部分变量

infx,yf(x,y)=infxg(x)其中g(x)=infyf(x,y). 优化部分变量对两部分变量分步优化,首先先优化一部分变量,然后再优化另一部分变量. 先后别对两部分变量优化等价于优化整个函数.

例4.4 在约束条件下优化二次函数的部分变量里提到的Schur Complement Lemma可以参见这里, 这里的证明部分也挺有意思的.

2.3 Parameter and oracle problem descriptions

analytical/closed form solution: given by a formula or expression that involves the variables x as well as some parameters.
oracle models/black box/subroutine models:in oracle model, we never really know the function; we only know the function value (and some derivatives) at the points where we have quried the oracle. (We also know some given prior information about the function, such as differentiability and convexity.)

3. 可微函数f0的最优性准则

3.1 标准凸优化问题
f0(x)T(yx)0,yX
3.2 无约束问题

即 m = 0, p = 0.

f0(x)T=0
3.3 只含等式的约束问题

即m = 0.

f0(x)Tv0,vN(A)

4. 凸优化问题的划归转化

  • 消除等式约束
  • 引入等式约束
  • 松弛变量
  • 上镜图问题

    minimize tsubject tof0(x)t0fi(x)0,i=1,...,mhi(x)=0,i=1,...,p

    转换成上镜图形式之后, 目标函数是线性的,并且引入的新变量f0(x)t是(x,t)上的凸函数,因此上镜图形式的问题也是凸问题.
    任何凸优化问题都可以很容易地通过上述方式转换为具有线性目标函数的问题,因此称线性目标函数对凸优化问题是普适的.

  • 极小化部分变量
    与优化部分变量得到的等价问题一致的原理.

    5. 拟凸优化问题的求解

    拟凸优化问题的标准形式是:

    minimize f0(x)subject tofi(x)0,i=1,...,mhi(x)=0,i=1,...,p

    其中目标函数f0(x)是拟凸的.
    通过一组具有0-下水平集的凸函数等价的表示凸目标函数:

    find xsubject toψt(x)0fi(x)0,i=1,...,mhi(x)=0,i=1,...,p

    ψt(x)是t的非递增函数, 是拟凸函数f的t-下水平集的凸函数的0-下水平集表示形式,即:

    f(x)<tψt(x)0

如果拟凸优化问题是可行的,总有pt, 反之,如果问题不可行,总有pt.
因此,可以通过如下二分法求解拟凸优化问题:
Alt text

每次迭代得到一个上述凸可行问题的一个解. k次迭代之后区间的总长度为2k(ul). 算法复杂度为log2(ul)/ϵ

4. 线性规划、二阶锥规划、几何规划以及半正定规划

  • Linear Programs,线性规划

    minimize cTx+dsubject toGxhAx=b

    其中目标函数和约束函数都是仿射函数.
    图形解释如下图:
    Alt text

  • Quadratic Problems, 二次规划

    minimize (1/2)xTPx+qTx+rsubject toGxhAx=b

    其中,PSn+,GRm×n and ARp×n. 目标函数是凸二次型并且约束函数均是仿射函数.
    图形解释如下图:
    Alt text
    例子:多面体的Chebyshev 中心:

    maximize rsubject to aTixc+rai2bi,i=1,...,m

    Section 4.3.1: Compute the Chebyshev center of a polyhedron

      % Boyd & Vandenberghe "Convex Optimization"
      % Joëlle Skaf - 08/16/05
      %
      % The goal is to find the largest Euclidean ball (i.e. its center and
      % radius) that lies in a polyhedron described by linear inequalites in this
      % fashion: P = {x : a_i'*x <= b_i, i=1,...,m}
    
      % Generate the data
      randn('state',0);
      n = 10; m = 2*n;
      A = randn(m,n);
      b = A*rand(n,1) + 2*rand(m,1);
      norm_ai = sum(A.^2,2).^(.5);
    
      % Build and execute model
      fprintf(1,'Computing Chebyshev center...');
      cvx_begin
          variable r(1)
          variable x_c(n)
          dual variable y
          maximize ( r )
          y: A*x_c + r*norm_ai <= b;
      cvx_end
      fprintf(1,'Done! \n');
    
      % Display results
      fprintf(1,'The Chebyshev center coordinates are: \n');
      disp(x_c);
      fprintf(1,'The radius of the largest Euclidean ball is: \n');
      disp(r);
    
  • Second-order cone Programming, 二阶锥规划

    minimize fTxsubject toAi+bi2cTix+di,i=1,...,mFx=g

    其中,xRnAiRni×nFRp×n
    Ai+bi2cTix+di,i=1,...,m 称为二次锥约束.
    即仿射函数(Ax+b,cTx+d)Rk+1的二阶锥中.
    The second-order cone in Rk+1 is defined as

    Kk:={(x,y)Rk+1:x2y}

    This set is convex, since it is the intersection of (an infinite number of) half-spaces:

    Kk=u:u21{(x,y)Rk+1:xTuy}

    It is a cone, since it is invariant by scaling: if xKp, so does ax for any a0.
    图形解释例子:
    Alt text

    The second-order cone in R3. The set actually extends to infinity upwards. For some strange reason, this set is called an "ice-cream cone".

    参考这里看图形解释:Standard Forms of SOCP 和 Second-Order Cone Programming

  • Geometric Programming, 几何规划

    例子cantilever_beam_rec:
    % The problem can be posed as a geometric program (posynomial form)

    minimizeNi=1wihis.t.wminwi<=wmax,i=1,...,Nhminhihmax,i=1,...,NSminhi/wiSmax,i=1,...,N 6iF/(wih2i)sigmamax,i=1,...,Ny1ymax
      % optimization variables
      N = 8;
    
      % constants
      wmin = .1; wmax = 100;
      hmin = .1; hmax = 6;
      Smin = 1/5; Smax = 5;
      sigma_max = 1;
      ymax = 10;
      E = 1; F = 1;
    
      cvx_begin gp
        % optimization variables
        variables w(N) h(N)
    
        % setting up variables relations
        % (recursive formulation)
        v = cvx( zeros(N+1,1) );
        y = cvx( zeros(N+1,1) );
        for i = N:-1:1
          fprintf(1,'Building recursive relations for index: %d\n',i);
          v(i) = 12*(i-1/2)*F/(E*w(i)*h(i)^3) + v(i+1);
          y(i) = 6*(i-1/3)*F/(E*w(i)*h(i)^3)  + v(i+1) + y(i+1);
        end
    
        % objective is the total volume of the beam
        % obj = sum of (widths*heights*lengths) over each section
        % (recall that the length of each segment is set to be 1)
        minimize( w'*h )
        subject to
          % constraint set
          wmin <= w    <= wmax;
          hmin <= h    <= hmax;
          Smin <= h./w <= Smax;
          6*F*[1:N]'./(w.*(h.^2)) <= sigma_max;
          y(1) <= ymax;
      cvx_end
    
  • Semidefinite Programming, 半正定规划

    例子Section 4.6.3: Find the fastest mixing Markov chain on a graph:

      % Boyd & Vandenberghe "Convex Optimization"
      % Joëlle Skaf - 09/26/05
      %
      % The 'fastest mixing Markov chain problem' is to find a transition
      % probability matrix P on a graph E that minimizes the mixing rate r, where
      % r = max{ lambda_2, -lambda_n } with lambda_1>=...>=lambda_n being the
      % eigenvalues of P.
    
      % Generate input data
      n = 5;
      E = [0 1 0 1 1; ...
           1 0 1 0 1; ...
           0 1 0 1 1; ...
           1 0 1 0 1; ...
           1 1 1 1 0];
    
      % Create and solve model
      cvx_begin
          variable P(n,n) symmetric
          minimize(norm(P - (1/n)*ones(n)))
          P*ones(n,1) == ones(n,1);
          P >= 0;
          P(E==0) == 0;
      cvx_end
      e = flipud(eig(P));
      r = max(e(2), -e(n));
    
      % Display results
      disp('------------------------------------------------------------------------');
      disp('The transition probability matrix of the optimal Markov chain is: ');
      disp(P);
      disp('The optimal mixing rate is: ');
      disp(r);
    

5. Exercise

CVX Example library


参考文献:

  1. Convex Optimization by Stephen Boyd and Lieven Vandenberghe
  2. Convex Optimization Edx
  3. Schur Complement Lemma
  4. Standard Forms of SOCP
  5. Second-Order Cone Programming
  6. convex optimization 这里很多列出了很多凸优化的书籍
  7. Introduction to Semidefinite Programming
  8. SEMIDEFINITE PROGRAMMING by tephen Boyd and Lieven Vandenberghe, 1996.
  9. CS 8292: Advanced Topics in Convex Optimization and its Applications
Chapter%204.%20Convex%20Optimization%20Problems%20Notes%20%20%20%0A%3D%3D%3D%3D%20%20%0A@%5Bconvex-optimization%7Cmachine%20learning%7Cpublished%5D%20%20%20%0A%0A%5B%u6458%u8981%20%u4F5C%u8005%u5BF9Convex%20Optimization%u662F%u5165%u95E8%u7EA7%u7684level.%20%u5199%u8FD9%u4E2Anotes%u4E3B%u8981%u662F%u4E3A%u4E86%u7406%u6E05%u695AConvex%20Optimization%20Problems%u7684%u57FA%u7840%u6982%u5FF5%u4EE5%u53CA%u5404%u79CD%u95EE%u9898%u5F62%u5F0F%u7684%u5173%u8054%u5173%u7CFB.%0A%0A%0A%23%23%231.%20%u51F8%u4F18%u5316%u95EE%u9898%u7684%u6807%u51C6%u5F62%u5F0F%3A%20%20%0A%60%60%60mathjax%0A%20%20%20%20minimize%20%5C%20f_%7B0%7D%28x%29%20%20%5C%5C%0A%20%20%20%20subject%20%5C%20to%20%5C%5C%20%0A%20%20%20%20f_%7Bi%7D%28x%29%20%5Cle%200%2C%20i%20%3D%201%2C%20...%2C%20m%20%5C%5C%0A%20%20%20%20h_%7Bi%7D%28x%29%20%3D%200%2C%20i%20%3D%201%2C%20...%2C%20p%20%20%0A%60%60%60%20%20%0A%60%24%u76EE%u6807%u51FD%u6570f_%7B0%7D%u548C%u4E0D%u7B49%u5F0F%u7EA6%u675F%u6761%u4EF6f_%7Bi%7D%u5FC5%u987B%u90FD%u662Fconvex%20%5C%20function%2C%20%u7B49%u5F0F%u7EA6%u675F%u6761%u4EF6h_%7Bi%7D%u5FC5%u987B%u662Faffinie%20%5C%20%20function%24%60%20%20%0A%u6EE1%u8DB3%u4E0A%u8FF0%u6761%u4EF6%u624D%u662F%u51F8%u51FD%u6570.%20%20%20%0A%0A%u4E0A%u8FF0%u95EE%u9898%u7684%u6700%u4F18%u89E3%u5B9A%u4E49%u4E3A%60%24p%5E*%20%3D%20%5Cinf%20%5C%7B%20%5C%20f_%7B0%7D%5C%20%7C%5C%20f_%7Bi%7D%28x%29%5Cle0%2C%20i%3D1%2C...%2Cm%2C%20h_%7Bi%7D%28x%29%3D0%2C%20i%20%3D%201%2C%20...%2C%20p%20%5C%7D%24%60%20%20%0A%u5176%u4E2Dinf%u8868%u793A%u96C6%u5408%u7684%u6700%u5C0F%u503C%uFF0C%u800Cmin%u5219%u662F%u51FD%u6570%uFF0C%u662F%u4E00%u4E2A%u6C42%u89E3%u8FD0%u7B97%u8FC7%u7A0B.%20%20%0A%0A%u5982%u679C%u95EE%u9898%u4E0D%u53EF%u884C%uFF0C%u5373x%u4E0D%u6EE1%u8DB3%60%24x%5Cin%20%5Cmathcal%7BD%7D%u4E14f_%7Bi%7D%5Cle0%2C%u548Ch_%7Bi%7D%28x%29%3D0%24%60%uFF0C%u90A3%u4E48%60%24p%5E*%3D%5Cnsim%24%60%28%u7A7A%u96C6%u7684%u4E0B%u786E%u754C%u4E3A%60%24%5Cnsim%24%60%29%2C%20%u5982%u679C%u5B58%u5728%u53EF%u884C%u89E3%60%24x_%7Bk%7D%24%60%u6EE1%u8DB3%uFF1A%u5F53%60%24x_k%5Crightarrow%5Cnsim%24%60%u65F6%2C%60%24f_%7B0%7D%28x_k%29%5Crightarrow-%5Cnsim%24%60%uFF0C%u90A3%u4E48%60%24p%5E*%3D-%5Cnsim%24%60%2C%u5E76%u4E14%u79F0%u95EE%u9898**%u65E0%u4E0B%u754C**%20%20%0A%u6CE8%u610F%uFF0C%u51F8%u4F18%u5316%u95EE%u9898%u7684%u5B9A%u4E49%u57DF%u5B9E%u9645%u4E0A%u662F%u4E00%u4E2A%u51F8%u96C6%3A%0A%60%60%60mathjax%0A%5Cmathcal%7BD%7D%3D%5Cbigcap_%7Bi%3D0%7D%5Em%5Cmathbf%7Bdom%7Df_i%0A%60%60%60%0A%u8FD9%u4E2A%u51F8%u96C6%u7531%u76EE%u6807%u51FD%u6570%u5B9A%u4E49%u57DF%28%u51F8%u96C6%29%u3001m%u4E2A%28%u51F8%u7684%29%u4E0B%u6C34%u5E73%u96C6%60%24%5C%7Bx%7Cf_i%28x%29%5Cle0%5C%7D%24%60%u548Cp%u4E2A%u8D85%u5E73%u9762%60%24%5C%7Bh_i%28x%29%3D0%5C%7D%24%60%u7684%u4EA4%u96C6%u6784%u6210.%20%u6211%u4EEC%u662F%u5728%u4E00%u4E2A%u51F8%u96C6%u4E0A%u6781%u5C0F%u5316%u4E00%u4E2A%u51F8%u7684%u76EE%u6807%u51FD%u6570.%0A%23%23%232.%20%u7B49%u4EF7%u95EE%u9898%0A%23%23%23%23%232.1%20%u53D8%u91CF%u53D8%u6362%u4E0E%u6D88%u9664%u7B49%u5F0F%u7EA6%u675F%0A%60%24x%u4E3A%u539F%u59CB%u53C2%u6570%u53D8%u91CF%uFF0Cz%u4E3A%u53D8%u6362%u540E%u53C2%u6570%u53D8%u91CF%uFF0C%u5373x%3D%5Cpsi%28z%29%20%5C%5C%20%0A%u5982%u679Cx%u4E3A%u539F%u59CB%u95EE%u9898%u7684%u6700%u4F18%u89E3%uFF0C%u90A3%u4E48z%20%3D%20%5Cpsi%5E%7B-1%7D%28x%29%u4E3A%u53D8%u6362%u540E%u95EE%u9898%u7684%u6700%u4F18%u89E3%20%5C%5C%0A%u5982%u679C%u6C42%u89E3%u4E86%u53D8%u6362%u540E%u95EE%u9898%uFF0C%u5F97%u5230z%uFF0C%u90A3%u4E48x%3D%5Cpsi%28x%29%u4E3A%u539F%u59CB%u95EE%u9898%u7684%u6700%u4F18%u89E3.%24%60%20%20%0A%23%23%23%23%232.2%20%u4F18%u5316%u90E8%u5206%u53D8%u91CF%20%20%0A%60%24%5Cinf_%7Bx%2Cy%7D%20f%28x%2Cy%29%20%3D%20%5Cinf_%7Bx%7D%20g%28x%29%24%60%u5176%u4E2D%60%24g%28x%29%3D%5Cinf_yf%28x%2Cy%29%24%60.%20%u4F18%u5316%u90E8%u5206%u53D8%u91CF%u5BF9%u4E24%u90E8%u5206%u53D8%u91CF%u5206%u6B65%u4F18%u5316%uFF0C%u9996%u5148%u5148%u4F18%u5316%u4E00%u90E8%u5206%u53D8%u91CF%uFF0C%u7136%u540E%u518D%u4F18%u5316%u53E6%u4E00%u90E8%u5206%u53D8%u91CF.%20%u5148%u540E%u522B%u5BF9%u4E24%u90E8%u5206%u53D8%u91CF%u4F18%u5316%u7B49%u4EF7%u4E8E%u4F18%u5316%u6574%u4E2A%u51FD%u6570.%20%20%0A%0A%u4F8B4.4%20%u5728%u7EA6%u675F%u6761%u4EF6%u4E0B%u4F18%u5316%u4E8C%u6B21%u51FD%u6570%u7684%u90E8%u5206%u53D8%u91CF%u91CC%u63D0%u5230%u7684Schur%20Complement%20Lemma%u53EF%u4EE5%u53C2%u89C1%5B%u8FD9%u91CC%5D%28http%3A//inst.eecs.berkeley.edu/%7Eee127a/book/login/thm_schur_compl.html%29%2C%20%u8FD9%u91CC%u7684%u8BC1%u660E%u90E8%u5206%u4E5F%u633A%u6709%u610F%u601D%u7684.%20%20%0A%0A%23%23%23%23%232.3%20Parameter%20and%20oracle%20problem%20descriptions%0A%3E**analytical/closed%20form%20solution**%3A%20given%20by%20a%20formula%20or%20expression%20that%20involves%20the%20variables%20x%20as%20well%20as%20some%20parameters.%20%20%0A%3E**oracle%20models/black%20box/subroutine%20models**%3Ain%20oracle%20model%2C%20we%20never%20really%20know%20the%20function%3B%20we%20only%20know%20the%20function%20value%20%28and%20some%20derivatives%29%20at%20the%20points%20where%20we%20have%20quried%20the%20oracle.%20%28We%20also%20know%20some%20given%20prior%20information%20about%20the%20function%2C%20such%20as%20differentiability%20and%20convexity.%29%20%20%0A%0A%23%23%233.%20%u53EF%u5FAE%u51FD%u6570%60%24f_0%24%60%u7684%u6700%u4F18%u6027%u51C6%u5219%20%20%0A%23%23%23%23%233.1%20%u6807%u51C6%u51F8%u4F18%u5316%u95EE%u9898%20%0A%60%60%60mathjax%0A%20%20%20%20%5Ctriangledown%20f_0%28x%29%5ET%28y-x%29%5Cge0%2C%20%5Cforall%20y%20%5Cin%20%5Cmathbf%7BX%7D%0A%60%60%60%20%20%0A%23%23%23%23%233.2%20%u65E0%u7EA6%u675F%u95EE%u9898%0A%u5373%20m%20%3D%200%2C%20p%20%3D%200.%0A%60%60%60mathjax%0A%20%20%20%20%5Ctriangledown%20f_0%28x%29%5ET%20%3D%200%0A%60%60%60%0A%23%23%23%23%233.3%20%u53EA%u542B%u7B49%u5F0F%u7684%u7EA6%u675F%u95EE%u9898%20%20%0A%u5373m%20%3D%200.%0A%60%60%60mathjax%0A%20%20%20%20%5Ctriangledown%20f_%7B0%7D%28x%29%5ETv%20%5Cge%200%2C%20%5Cforall%20v%20%5Cin%20%5Cmathcal%7BN%7D%28A%29%0A%60%60%60%20%20%0A%20%20%0A%20%20%0A%23%23%234.%20%u51F8%u4F18%u5316%u95EE%u9898%u7684%u5212%u5F52%u8F6C%u5316%20%20%0A-%20%u6D88%u9664%u7B49%u5F0F%u7EA6%u675F%20%20%0A-%20%u5F15%u5165%u7B49%u5F0F%u7EA6%u675F%0A-%20%u677E%u5F1B%u53D8%u91CF%0A-%20%u4E0A%u955C%u56FE%u95EE%u9898%0A%60%60%60mathjax%0A%20%20%20%20minimize%20%5C%20t%20%20%5C%5C%0A%20%20%20%20subject%20%5C%20to%20%5C%5C%20%0A%20%20%20%20f_0%28x%29%20-t%20%5Cle%200%20%5C%5C%0A%20%20%20%20f_%7Bi%7D%28x%29%20%5Cle%200%2C%20i%20%3D%201%2C%20...%2C%20m%20%5C%5C%0A%20%20%20%20h_%7Bi%7D%28x%29%20%3D%200%2C%20i%20%3D%201%2C%20...%2C%20p%20%20%0A%60%60%60%20%20%20%20%0A%20%20%20%20%u8F6C%u6362%u6210%u4E0A%u955C%u56FE%u5F62%u5F0F%u4E4B%u540E%2C%20%u76EE%u6807%u51FD%u6570%u662F%u7EBF%u6027%u7684%2C%u5E76%u4E14%u5F15%u5165%u7684%u65B0%u53D8%u91CF%60%24f_0%28x%29%20-%20t%24%60%u662F%28x%2Ct%29%u4E0A%u7684%u51F8%u51FD%u6570%uFF0C%u56E0%u6B64%u4E0A%u955C%u56FE%u5F62%u5F0F%u7684%u95EE%u9898%u4E5F%u662F%u51F8%u95EE%u9898.%20%20%0A%u4EFB%u4F55%u51F8%u4F18%u5316%u95EE%u9898%u90FD%u53EF%u4EE5%u5F88%u5BB9%u6613%u5730%u901A%u8FC7%u4E0A%u8FF0%u65B9%u5F0F%u8F6C%u6362%u4E3A%u5177%u6709%u7EBF%u6027%u76EE%u6807%u51FD%u6570%u7684%u95EE%u9898%uFF0C%u56E0%u6B64%u79F0%u7EBF%u6027%u76EE%u6807%u51FD%u6570%u5BF9%u51F8%u4F18%u5316%u95EE%u9898%u662F**%u666E%u9002**%u7684.%20%20%20%0A%0A-%20%u6781%u5C0F%u5316%u90E8%u5206%u53D8%u91CF%20%20%20%0A%20%20%u4E0E%u4F18%u5316%u90E8%u5206%u53D8%u91CF%u5F97%u5230%u7684%u7B49%u4EF7%u95EE%u9898%u4E00%u81F4%u7684%u539F%u7406.%20%20%0A%23%23%235.%20%u62DF%u51F8%u4F18%u5316%u95EE%u9898%u7684%u6C42%u89E3%20%20%0A%u62DF%u51F8%u4F18%u5316%u95EE%u9898%u7684%u6807%u51C6%u5F62%u5F0F%u662F%3A%0A%60%60%60mathjax%0A%20%20%20%20minimize%20%5C%20f_%7B0%7D%28x%29%20%20%5C%5C%0A%20%20%20%20subject%20%5C%20to%20%5C%5C%20%0A%20%20%20%20f_%7Bi%7D%28x%29%20%5Cle%200%2C%20i%20%3D%201%2C%20...%2C%20m%20%5C%5C%0A%20%20%20%20h_%7Bi%7D%28x%29%20%3D%200%2C%20i%20%3D%201%2C%20...%2C%20p%20%20%0A%60%60%60%20%20%0A%u5176%u4E2D%u76EE%u6807%u51FD%u6570%60%24f_0%28x%29%24%60%u662F%u62DF%u51F8%u7684.%20%20%0A%u901A%u8FC7%u4E00%u7EC4%u5177%u67090-%u4E0B%u6C34%u5E73%u96C6%u7684%u51F8%u51FD%u6570%u7B49%u4EF7%u7684%u8868%u793A%u51F8%u76EE%u6807%u51FD%u6570%3A%20%20%0A%60%60%60mathjax%0A%20%20%20%20find%20%5C%20x%20%5C%5C%0A%20%20%20%20subject%20%5C%20to%20%5C%5C%20%0A%20%20%20%20%5Cpsi_t%28x%29%20%5Cle%200%20%5C%5C%0A%20%20%20%20f_%7Bi%7D%28x%29%20%5Cle%200%2C%20i%20%3D%201%2C%20...%2C%20m%20%5C%5C%0A%20%20%20%20h_%7Bi%7D%28x%29%20%3D%200%2C%20i%20%3D%201%2C%20...%2C%20p%20%20%0A%60%60%60%20%20%0A%60%24%5Cpsi_t%28x%29%24%60%u662Ft%u7684%u975E%u9012%u589E%u51FD%u6570%2C%20%u662F%u62DF%u51F8%u51FD%u6570f%u7684t-%u4E0B%u6C34%u5E73%u96C6%u7684%u51F8%u51FD%u6570%u76840-%u4E0B%u6C34%u5E73%u96C6%u8868%u793A%u5F62%u5F0F%uFF0C%u5373%3A%20%20%0A%60%60%60mathjax%0A%20%20%20%20f%28x%29%20%5Cle%20%3C%20t%20%5CLongleftrightarrow%20%5Cpsi_t%28x%29%20%5Cle%200%0A%60%60%60%20%20%0A%0A%u5982%u679C%u62DF%u51F8%u4F18%u5316%u95EE%u9898%u662F%u53EF%u884C%u7684%uFF0C%u603B%u6709%60%24p%5E*%20%5Cle%20t%24%60%2C%20%u53CD%u4E4B%uFF0C%u5982%u679C%u95EE%u9898%u4E0D%u53EF%u884C%uFF0C%u603B%u6709%60%24p%5E*%20%5Cge%20t%24%60.%20%20%20%0A%u56E0%u6B64%uFF0C%u53EF%u4EE5%u901A%u8FC7%u5982%u4E0B%u4E8C%u5206%u6CD5%u6C42%u89E3%u62DF%u51F8%u4F18%u5316%u95EE%u9898%3A%20%20%0A%21%5BAlt%20text%5D%28data%3Aimage%2Clocal%3A//bisected.jpg%29%20%20%20%20%0A%0A%0A%u6BCF%u6B21%u8FED%u4EE3%u5F97%u5230%u4E00%u4E2A%u4E0A%u8FF0%u51F8%u53EF%u884C%u95EE%u9898%u7684%u4E00%u4E2A%u89E3.%20k%u6B21%u8FED%u4EE3%u4E4B%u540E%u533A%u95F4%u7684%u603B%u957F%u5EA6%u4E3A%60%242%5E%7B-k%7D%28u-l%29%24%60.%20%u7B97%u6CD5%u590D%u6742%u5EA6%u4E3A%60%24%5Clceil%20log_2%28u-l%29/%5Cepsilon%5Crceil%24%60%20%20%0A%20%20%0A%20%20%0A%23%23%234.%20%u7EBF%u6027%u89C4%u5212%u3001%u4E8C%u9636%u9525%u89C4%u5212%u3001%u51E0%u4F55%u89C4%u5212%u4EE5%u53CA%u534A%u6B63%u5B9A%u89C4%u5212%20%0A%0A-%20%23%23%23%23Linear%20Programs%uFF0C%u7EBF%u6027%u89C4%u5212%20%20%0A%60%60%60mathjax%0A%20%20%20%20%5Ctext%7Bminimize%7D%20%5C%20c%5ETx+d%20%5C%5C%0A%20%20%20%20subject%20%5C%20to%20%5C%5C%20%0A%20%20%20%20%5Cmathrm%7BG%7Dx%20%5Cpreceq%20h%20%20%5C%5C%0A%20%20%20%20%5Cmathrm%7BA%7Dx%20%3D%20b%0A%60%60%60%20%20%20%0A%u5176%u4E2D%u76EE%u6807%u51FD%u6570%u548C%u7EA6%u675F%u51FD%u6570%u90FD%u662F%u4EFF%u5C04%u51FD%u6570.%20%20%0A%u56FE%u5F62%u89E3%u91CA%u5982%u4E0B%u56FE%3A%20%20%0A%21%5BAlt%20text%5D%28data%3Aimage%2Clocal%3A//LP.jpg%29%0A%0A-%20%23%23%23%23Quadratic%20Problems%2C%20%u4E8C%u6B21%u89C4%u5212%20%0A%60%60%60mathjax%0A%20%20%20%20%5Ctext%7Bminimize%7D%20%5C%20%281/2%29x%5ET%5Cmathrm%7BP%7Dx%20+%20q%5ETx%20+%20r%20%5C%5C%0A%20%20%20%20subject%20%5C%20to%20%5C%5C%20%0A%20%20%20%20%5Cmathrm%7BG%7Dx%20%5Cpreceq%20h%20%20%5C%5C%0A%20%20%20%20%5Cmathrm%7BA%7Dx%20%3D%20b%0A%60%60%60%20%20%20%0A%u5176%u4E2D%uFF0C%60%24%5Cmathrm%7BP%7D%5Cin%5Cmathbf%7BS%7D%5En_+%2C%20%5Cmathrm%7BG%7D%5Cin%5Cmathbf%7BR%7D%5E%7Bm%5Ctimes%20n%7D%20%5C%20%20%5Ctext%7Band%7D%20%5C%20%5Cmathrm%7BA%7D%5Cin%5Cmathbf%7BR%7D%5E%7Bp%5Ctimes%20n%7D%20%24%60.%20%u76EE%u6807%u51FD%u6570%u662F%u51F8%u4E8C%u6B21%u578B%u5E76%u4E14%u7EA6%u675F%u51FD%u6570%u5747%u662F%u4EFF%u5C04%u51FD%u6570.%20%20%20%0A%u56FE%u5F62%u89E3%u91CA%u5982%u4E0B%u56FE%3A%20%20%0A%21%5BAlt%20text%5D%28data%3Aimage%2Clocal%3A//QP.jpg%29%20%20%0A%u4F8B%u5B50%3A%u591A%u9762%u4F53%u7684Chebyshev%20%u4E2D%u5FC3%3A%20%20%0A%60%60%60mathjax%0A%5Ctext%7Bmaximize%7D%20%5C%20r%20%5C%5C%0A%5Ctext%7Bsubject%20to%7D%20%5C%20a_i%5ETx_c%20+%20r%5Cparallel%20a_i%5Cparallel%20_2%20%5Cle%20b_i%2C%20i%20%3D%201%2C%20...%2C%20m%0A%60%60%60%20%20%0A%0A%20%20%20%20Section%204.3.1%3A%20Compute%20the%20Chebyshev%20center%20of%20a%20polyhedron%0A%20%20%20%20%0A%20%20%20%20%60%60%60Matlab%0A%20%20%20%20%25%20Boyd%20%26%20Vandenberghe%20%22Convex%20Optimization%22%0A%20%20%20%20%25%20Jo%EBlle%20Skaf%20-%2008/16/05%0A%20%20%20%20%25%0A%20%20%20%20%25%20The%20goal%20is%20to%20find%20the%20largest%20Euclidean%20ball%20%28i.e.%20its%20center%20and%0A%20%20%20%20%25%20radius%29%20that%20lies%20in%20a%20polyhedron%20described%20by%20linear%20inequalites%20in%20this%0A%20%20%20%20%25%20fashion%3A%20P%20%3D%20%7Bx%20%3A%20a_i%27*x%20%3C%3D%20b_i%2C%20i%3D1%2C...%2Cm%7D%0A%20%20%20%20%0A%20%20%20%20%25%20Generate%20the%20data%0A%20%20%20%20randn%28%27state%27%2C0%29%3B%0A%20%20%20%20n%20%3D%2010%3B%20m%20%3D%202*n%3B%0A%20%20%20%20A%20%3D%20randn%28m%2Cn%29%3B%0A%20%20%20%20b%20%3D%20A*rand%28n%2C1%29%20+%202*rand%28m%2C1%29%3B%0A%20%20%20%20norm_ai%20%3D%20sum%28A.%5E2%2C2%29.%5E%28.5%29%3B%0A%20%20%20%20%0A%20%20%20%20%25%20Build%20and%20execute%20model%0A%20%20%20%20fprintf%281%2C%27Computing%20Chebyshev%20center...%27%29%3B%0A%20%20%20%20cvx_begin%0A%20%20%20%20%20%20%20%20variable%20r%281%29%0A%20%20%20%20%20%20%20%20variable%20x_c%28n%29%0A%20%20%20%20%20%20%20%20dual%20variable%20y%0A%20%20%20%20%20%20%20%20maximize%20%28%20r%20%29%0A%20%20%20%20%20%20%20%20y%3A%20A*x_c%20+%20r*norm_ai%20%3C%3D%20b%3B%0A%20%20%20%20cvx_end%0A%20%20%20%20fprintf%281%2C%27Done%21%20%5Cn%27%29%3B%0A%20%20%20%20%0A%20%20%20%20%25%20Display%20results%0A%20%20%20%20fprintf%281%2C%27The%20Chebyshev%20center%20coordinates%20are%3A%20%5Cn%27%29%3B%0A%20%20%20%20disp%28x_c%29%3B%0A%20%20%20%20fprintf%281%2C%27The%20radius%20of%20the%20largest%20Euclidean%20ball%20is%3A%20%5Cn%27%29%3B%0A%20%20%20%20disp%28r%29%3B%0A%20%20%20%20%60%60%60%20%20%0A%0A-%20%23%23%23%23Second-order%20cone%20Programming%2C%20%u4E8C%u9636%u9525%u89C4%u5212%20%20%0A%60%60%60mathjax%0A%20%20%20%20%5Ctext%7Bminimize%7D%20%5C%20f%5ETx%20%5C%5C%20%5Ctext%7Bsubject%20to%7D%20%5C%5C%20%0A%20%20%20%20%5Cparallel%5Cmathrm%7BA%7D_i+b_i%5Cparallel_2%20%5Cle%20c_i%5ETx+d_i%2C%20i%20%3D%201%2C%20...%2C%20m%20%20%5C%5C%0A%20%20%20%20%5Cmathrm%7BF%7Dx%20%3D%20g%0A%60%60%60%20%20%20%20%20%0A%u5176%u4E2D%2C%60%24x%5Cin%5Cmathrm%7BR%7D%5En%u4E3A%u4F18%u5316%u53D8%u91CF%uFF0C%5Cmathrm%7BA%7D_i%5Cin%5Cmathbf%7BR%7D%5E%7Bn_i%5Ctimes%20n%7D%u4E14%5Cmathrm%7BF%7D%5Cin%5Cmathbf%7BR%7D%5E%7Bp%5Ctimes%20n%7D%24%60%20%20%0A%60%24%5Cparallel%5Cmathrm%7BA%7D_i+b_i%5Cparallel_2%20%5Cle%20c_i%5ETx+d_i%2C%20i%20%3D%201%2C%20...%2C%20m%24%60%20%u79F0%u4E3A%u4E8C%u6B21%u9525%u7EA6%u675F.%20%20%0A%u5373%u4EFF%u5C04%u51FD%u6570%60%24%28%5Cmathrm%7BA%7Dx+b%2C%20c%5ETx+d%29%24%60%u5728%60%24%5Cmathrm%7BR%7D%5E%7Bk+1%7D%24%60%u7684%u4E8C%u9636%u9525%u4E2D.%20%20%20%0AThe%20second-order%20cone%20in%20%60%24%5Cmathrm%7BR%7D%5E%7Bk+1%7D%24%60%20is%20defined%20as%20%20%0A%60%60%60mathjax%0A%5Cmathbf%7BK%7D_k%20%3A%3D%20%5C%7B%28x%2Cy%29%5Cin%20%5Cmathbf%7BR%7D%5E%7Bk+1%7D%20%3A%20%5Cparallel%20x%5Cparallel_2%5Cle%20y%5C%7D%0A%60%60%60%20%20%0AThis%20set%20is%20convex%2C%20since%20it%20is%20the%20intersection%20of%20%28an%20infinite%20number%20of%29%20half-spaces%3A%20%20%0A%60%60%60mathjax%0A%5Cmathbf%7BK%7D_k%20%3D%20%5Cbigcap_%7Bu%3A%5Cparallel%20u%20%5Cparallel_2%20%5Cle%201%20%7D%20%5C%7B%28x%2Cy%29%5Cin%5Cmathrm%7BR%7D%5E%7Bk+1%7D%3Ax%5ETu%20%5Cle%20y%5C%7D%0A%60%60%60%20%20%0AIt%20is%20a%20cone%2C%20since%20it%20is%20invariant%20by%20scaling%3A%20if%20%60%24x%5Cin%5Cmathrm%7BK%7D_p%24%60%2C%20so%20does%20%60%24ax%24%60%20for%20any%20%60%24a%20%5Cge%200%24%60.%20%20%0A%u56FE%u5F62%u89E3%u91CA%u4F8B%u5B50%3A%20%20%0A%21%5BAlt%20text%5D%28data%3Aimage%2Clocal%3A//soc_in_r3_space.png%29%0A%0A%20%20%20%20The%20second-order%20cone%20in%20%60%24%5Cmathrm%7BR%7D%5E3%24%60.%20The%20set%20actually%20extends%20to%20infinity%20upwards.%20For%20some%20strange%20reason%2C%20this%20set%20is%20called%20an%20%22ice-cream%20cone%22.%20%20%0A%0A%20%20%20%20%u53C2%u8003%u8FD9%u91CC%u770B%u56FE%u5F62%u89E3%u91CA%3A%5BStandard%20Forms%20of%20SOCP%5D%28https%3A//inst.eecs.berkeley.edu/%7Eee127a/book/login/l_socp_soc.html%29%20%20%u548C%20%5BSecond-Order%20Cone%20Programming%5D%28https%3A//inst.eecs.berkeley.edu/%7Eee127a/book/login/l_socp_main.html%29%20%20%20%0A%0A%0A%0A-%20%23%23%23%23Geometric%20Programming%2C%20%u51E0%u4F55%u89C4%u5212%20%20%20%20%20%0A%u4F8B%u5B50cantilever_beam_rec%uFF1A%0A%25%20The%20problem%20can%20be%20posed%20as%20a%20geometric%20program%20%28posynomial%20form%29%0A%60%60%60mathjax%0A%20%20%20%20%20%5Ctext%7Bminimize%7D%20%20%20%5C%5C%20%5Csum_%7Bi%3D1%7D%5EN%20%20w_i*%20h_i%20%5C%5C%0A%20%20%20%20%20%20%20%20%20%5Ctext%7Bs.t.%7D%20%20%20%5C%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20w_%7Bmin%7D%20%5Cle%20w_i%20%3C%3D%20w_%7Bmax%7D%2C%20i%20%3D%201%2C...%2CN%20%5C%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20h_%7Bmin%7D%20%5Cle%20h_i%20%5Cle%20h_%7Bmax%7D%2C%20i%20%3D%201%2C...%2CN%20%20%5C%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20S_%7Bmin%7D%20%5Cle%20h_i/w_i%20%5Cle%20S_%7Bmax%7D%2C%20i%20%3D%201%2C...%2CN%20%20%5C%5C%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%206*i*%5Cmathrm%7BF%7D/%28w_i*h_i%5E2%29%20%5Cle%20sigma_%7Bmax%7D%2C%20i%20%3D%201%2C...%2CN%20%20%5C%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20y_1%20%5Cle%20y_%7Bmax%7D%0A%60%60%60%20%20%20%0A%0A%20%20%20%20%60%60%60Matlab%0A%20%20%20%20%25%20optimization%20variables%0A%20%20%20%20N%20%3D%208%3B%0A%20%20%20%20%0A%20%20%20%20%25%20constants%0A%20%20%20%20wmin%20%3D%20.1%3B%20wmax%20%3D%20100%3B%0A%20%20%20%20hmin%20%3D%20.1%3B%20hmax%20%3D%206%3B%0A%20%20%20%20Smin%20%3D%201/5%3B%20Smax%20%3D%205%3B%0A%20%20%20%20sigma_max%20%3D%201%3B%0A%20%20%20%20ymax%20%3D%2010%3B%0A%20%20%20%20E%20%3D%201%3B%20F%20%3D%201%3B%0A%20%20%20%20%0A%20%20%20%20cvx_begin%20gp%0A%20%20%20%20%20%20%25%20optimization%20variables%0A%20%20%20%20%20%20variables%20w%28N%29%20h%28N%29%0A%20%20%20%20%0A%20%20%20%20%20%20%25%20setting%20up%20variables%20relations%0A%20%20%20%20%20%20%25%20%28recursive%20formulation%29%0A%20%20%20%20%20%20v%20%3D%20cvx%28%20zeros%28N+1%2C1%29%20%29%3B%0A%20%20%20%20%20%20y%20%3D%20cvx%28%20zeros%28N+1%2C1%29%20%29%3B%0A%20%20%20%20%20%20for%20i%20%3D%20N%3A-1%3A1%0A%20%20%20%20%20%20%20%20fprintf%281%2C%27Building%20recursive%20relations%20for%20index%3A%20%25d%5Cn%27%2Ci%29%3B%0A%20%20%20%20%20%20%20%20v%28i%29%20%3D%2012*%28i-1/2%29*F/%28E*w%28i%29*h%28i%29%5E3%29%20+%20v%28i+1%29%3B%0A%20%20%20%20%20%20%20%20y%28i%29%20%3D%206*%28i-1/3%29*F/%28E*w%28i%29*h%28i%29%5E3%29%20%20+%20v%28i+1%29%20+%20y%28i+1%29%3B%0A%20%20%20%20%20%20end%0A%20%20%20%20%0A%20%20%20%20%20%20%25%20objective%20is%20the%20total%20volume%20of%20the%20beam%0A%20%20%20%20%20%20%25%20obj%20%3D%20sum%20of%20%28widths*heights*lengths%29%20over%20each%20section%0A%20%20%20%20%20%20%25%20%28recall%20that%20the%20length%20of%20each%20segment%20is%20set%20to%20be%201%29%0A%20%20%20%20%20%20minimize%28%20w%27*h%20%29%0A%20%20%20%20%20%20subject%20to%0A%20%20%20%20%20%20%20%20%25%20constraint%20set%0A%20%20%20%20%20%20%20%20wmin%20%3C%3D%20w%20%20%20%20%3C%3D%20wmax%3B%0A%20%20%20%20%20%20%20%20hmin%20%3C%3D%20h%20%20%20%20%3C%3D%20hmax%3B%0A%20%20%20%20%20%20%20%20Smin%20%3C%3D%20h./w%20%3C%3D%20Smax%3B%0A%20%20%20%20%20%20%20%206*F*%5B1%3AN%5D%27./%28w.*%28h.%5E2%29%29%20%3C%3D%20sigma_max%3B%0A%20%20%20%20%20%20%20%20y%281%29%20%3C%3D%20ymax%3B%0A%20%20%20%20cvx_end%0A%20%20%20%20%60%60%60%0A%20%20%20%20%0A-%20%23%23%23%23Semidefinite%20Programming%2C%20%u534A%u6B63%u5B9A%u89C4%u5212%20%20%20%20%0A%20%20%20%20%u4F8B%u5B50Section%204.6.3%3A%20Find%20the%20fastest%20mixing%20Markov%20chain%20on%20a%20graph%3A%20%20%0A%20%20%20%20%60%60%60Matlab%0A%20%20%20%20%25%20Boyd%20%26%20Vandenberghe%20%22Convex%20Optimization%22%0A%20%20%20%20%25%20Jo%EBlle%20Skaf%20-%2009/26/05%0A%20%20%20%20%25%0A%20%20%20%20%25%20The%20%27fastest%20mixing%20Markov%20chain%20problem%27%20is%20to%20find%20a%20transition%0A%20%20%20%20%25%20probability%20matrix%20P%20on%20a%20graph%20E%20that%20minimizes%20the%20mixing%20rate%20r%2C%20where%0A%20%20%20%20%25%20r%20%3D%20max%7B%20lambda_2%2C%20-lambda_n%20%7D%20with%20lambda_1%3E%3D...%3E%3Dlambda_n%20being%20the%0A%20%20%20%20%25%20eigenvalues%20of%20P.%0A%20%20%20%20%0A%20%20%20%20%25%20Generate%20input%20data%0A%20%20%20%20n%20%3D%205%3B%0A%20%20%20%20E%20%3D%20%5B0%201%200%201%201%3B%20...%0A%20%20%20%20%20%20%20%20%201%200%201%200%201%3B%20...%0A%20%20%20%20%20%20%20%20%200%201%200%201%201%3B%20...%0A%20%20%20%20%20%20%20%20%201%200%201%200%201%3B%20...%0A%20%20%20%20%20%20%20%20%201%201%201%201%200%5D%3B%0A%20%20%20%20%0A%20%20%20%20%25%20Create%20and%20solve%20model%0A%20%20%20%20cvx_begin%0A%20%20%20%20%20%20%20%20variable%20P%28n%2Cn%29%20symmetric%0A%20%20%20%20%20%20%20%20minimize%28norm%28P%20-%20%281/n%29*ones%28n%29%29%29%0A%20%20%20%20%20%20%20%20P*ones%28n%2C1%29%20%3D%3D%20ones%28n%2C1%29%3B%0A%20%20%20%20%20%20%20%20P%20%3E%3D%200%3B%0A%20%20%20%20%20%20%20%20P%28E%3D%3D0%29%20%3D%3D%200%3B%0A%20%20%20%20cvx_end%0A%20%20%20%20e%20%3D%20flipud%28eig%28P%29%29%3B%0A%20%20%20%20r%20%3D%20max%28e%282%29%2C%20-e%28n%29%29%3B%0A%20%20%20%20%0A%20%20%20%20%25%20Display%20results%0A%20%20%20%20disp%28%27------------------------------------------------------------------------%27%29%3B%0A%20%20%20%20disp%28%27The%20transition%20probability%20matrix%20of%20the%20optimal%20Markov%20chain%20is%3A%20%27%29%3B%0A%20%20%20%20disp%28P%29%3B%0A%20%20%20%20disp%28%27The%20optimal%20mixing%20rate%20is%3A%20%27%29%3B%0A%20%20%20%20disp%28r%29%3B%0A%20%20%20%20%60%60%60%20%20%0A%0A%23%23%235.%20Exercise%20%20%0A%5BCVX%20Example%20library%5D%28http%3A//cvxr.com/cvx/examples/%29%20%20%0A%0A----%0A%0A%23%23%23%u53C2%u8003%u6587%u732E%3A%20%20%0A1.%20%5BConvex%20Optimization%5D%28http%3A//book.douban.com/subject/1888111/%29%20by%20Stephen%20Boyd%20and%20Lieven%20Vandenberghe%20%20%0A2.%20%5BConvex%20Optimization%20Edx%5D%28https%3A//class.stanford.edu/courses/Engineering/CVX101/Winter2014/info%29%0A2.%20%5BSchur%20Complement%20Lemma%5D%28http%3A//inst.eecs.berkeley.edu/%7Eee127a/book/login/thm_schur_compl.html%29%20%20%20%20%0A3.%20%5BStandard%20Forms%20of%20SOCP%5D%28https%3A//inst.eecs.berkeley.edu/%7Eee127a/book/login/l_socp_soc.html%29%20%20%0A4.%20%5BSecond-Order%20Cone%20Programming%5D%28https%3A//inst.eecs.berkeley.edu/%7Eee127a/book/login/l_socp_main.html%29%20%20%20%0A5.%20%5Bconvex%20optimization%5D%28http%3A//www.convexoptimization.com/dattorro/semidefinite_programming.html%29%20%u8FD9%u91CC%u5F88%u591A%u5217%u51FA%u4E86%u5F88%u591A%u51F8%u4F18%u5316%u7684%u4E66%u7C4D%20%20%0A6.%20%5BIntroduction%20to%20Semide%uFB01nite%20Programming%5D%28http%3A//www.math.msu.edu/%7Emarkiwen/Teaching/MTH995/Papers/SDP_notes_Marina_Epelman_UM.pdf%29%0A7.%20%5BSEMIDEFINITE%20PROGRAMMING%5D%28http%3A//www.stanford.edu/%7Eboyd/papers/pdf/semidef_prog.pdf%29%20by%20tephen%20Boyd%20and%20Lieven%20Vandenberghe%2C%201996.%20%20%0A8.%20%5BCS%208292%3A%20Advanced%20Topics%20in%20Convex%20Optimization%20and%20its%20Applications%5D%28http%3A//www.cs.cityu.edu.hk/%7Echeewtan/CS8292Class/%29%0A%0A%0A


comments powered by Disqus