[최적화] Semi-definite program

이우준·2021년 10월 28일

Optimization

목록 보기
3/6

Convex_diagram

이번 포스팅에서는 semi-definite program (SDP)에 대해 알아보자.

여기서 다룰 내용은 크게 세 가지 이다.

  1. SDP가 무엇이고, 이는 convex problem이 맞는지
  2. SDP가 LP, LS, QP, SOCP를 포함하는 개념이 맞는지
  3. Schur complement lemma란 무엇인지

Semi-definite program (SDP)

Standard form

먼저, SDP의 standard form은 아래와 같다.

min⁡x∈Rd w⊺x:G+x1F1+⋯+xdFd⪰0Cx−e=0G,Fi∈Rm×mC∈Rp×d,e∈Rp\begin{aligned} \min_{x \in \mathbf{R}^d}& \textrm{ } w^{\intercal}x: \\ &\quad G + x_1F_1 + \cdots + x_dF_d \succeq 0 \\ &\quad Cx-e = 0 \\ &\quad G, F_i \in \mathbf{R}^{m \times m} \\ &\quad C \in \mathbf{R}^{p \times d}, e\in \mathbf{R}^p \end{aligned}

참고로 GG 와 FiF_i 는 symmetric matrices 이다. 여기서 주목할 점은 inequality constraint 인데, 식을 보면 여러개의 행렬이 x:=(x1,x2,⋯ ,xd)x:=(x_1,x_2,\cdots,x_d)의 성분들과 linear 하게 연산되어 있는 것을 알 수 있다. 따라서 이를 Linear matrix inequality 즉, LMI 라고 부른다.

Convexity

다음으로 SDP의 convexity를 증명해보자. Standard form을 보면 w⊺xw^{\intercal}x 와 Cx=eCx=e는 모두 affine 이므로, 우리는 inequality constraint에 의해 유도되는 set SS가 convex 임을 보이기만 하면 된다.

S:={x:G+x1F1+⋯+xdFd⪰0}\begin{aligned} S := \{x: G + x_1F_1 + \cdots + x_dF_d \succeq 0 \} \end{aligned}

증명은 x,y∈Sx, y\in S 와 λ∈[0,1]\lambda \in [0,1]에 대한 convex combination λx+(1−λ)y\lambda x + (1-\lambda) y가 SS 안에 있는지 확인하는 방식으로 할 수 있다.

G+(λx1+(1−λ)y1)F1+⋯+(λxd+(1−λ)yd)Fd= λ[G+x1F1+⋯+xdFd]+(1−λ)[G+y1F1+⋯+ydFd]⪰0\begin{aligned} & G + \left( \lambda x_1 + (1-\lambda) y_1 \right) F_1 + \cdots + \left( \lambda x_d + (1-\lambda) y_d \right) F_d \\ = \textrm{ }& \lambda \left[ G+x_1F_1+\cdots+x_dF_d \right] + (1-\lambda) \left[ G+y_1F_1+\cdots+y_dF_d \right] \succeq 0 \end{aligned}

즉, 'x,y∈Sx, y \in S' 라는 가정과 'PSD matrix 2개의 convex combination 또한 PSD' 라는 사실로 인해 SS 는 convex set 이다.
⇒\Rightarrow 따라서, SDP는 convex problem 이다.

참고로, 두 PSD의 convex combination이 PSD 인 이유는 다음과 같다.
Proof: Let A,B∈Rm×m⪰0A, B \in \mathbf{R}^{m\times m} \succeq 0 and v∈Rm⇒λA+(1−λ)B⪰0 ?v \in \mathbf{R}^m \Rightarrow \lambda A + (1-\lambda) B \succeq 0 \textrm{ ?}
λA+(1−λ)B\lambda A + (1-\lambda) B 의 양 옆에 vv를 곱하면 다음과 같다.
v⊺(λA+(1−λ)B)v=λv⊺Av+(1−λ)v⊺Bv⪰0(∵A,B⪰0,λ∈[0,1])v^{\intercal} (\lambda A + (1-\lambda) B) v = \lambda v^{\intercal} A v + (1-\lambda)v^{\intercal} B v \succeq 0 \quad (\because A,B \succeq 0, \lambda \in [0,1])

Relation with other methods

이제 SDP가 다른 방법들을 포함할 수 있는지 알아보자. 이에 앞서 SDP의 standard form을 다시 remind 해보면 다음과 같다.

min⁡x∈Rd w⊺x:G+x1F1+⋯+xdFd⪰0Cx−e=0\begin{aligned} \min_{x \in \mathbf{R}^d}& \textrm{ } w^{\intercal}x: \\ &\quad G + x_1F_1 + \cdots + x_dF_d \succeq 0 \\ &\quad Cx-e = 0 \end{aligned}

편의를 위해 위의 식을 (∗)(*) 로 하자.

LP

(∗)(*) 에서 GG 와 FiF_i 를 diagonal matrix (대각 행렬) 이라 하자. 그렇다면 우리는 식을 아래와 같이 표현할 수 있다.

[G]ii+[F1]ii⋅x1+⋯+[Fd]ii⋅xd≥0  (i=1,⋯ ,m)[G]_{ii} + [F_1]_{ii}\cdot x_1 + \cdots +[F_d]_{ii}\cdot x_d \geq 0 \textrm{ }\textrm{ }(i=1,\cdots,m)

이때 [A]ii[A]_{ii} 는 AA의 (i,i)(i,i) 성분을 의미한다.

여기서 우리는 diagonal PSD가 non-negative 한 성분들로 이루어진다는 성질을 이용했다. 즉 위의 과정을 통해 우리는 LP가 SDP의 특정 case 임을 알 수 있다. (LP의 inequality constraints로 바뀌었기 때문이다.)

LS and QP

LS와 QP에 대한 포함 관계를 보이는 것은 SOCP를 보이는 것만큼이나 어렵다. (포스팅에서 다루지는 못했지만) 앞선 강의에서 SOCP가 LS 및 QP를 포함한다는 것을 보였기 때문에, 여기서는 SDP가 SOCP를 포함하는지에 초점을 맞춰볼 것이다. (이를 보이면 LS와 QP도 SDP에 포함된다는 것이기 때문)

SOCP

SOCP의 standard form을 생각해보자.

min⁡x∈Rd w⊺x:∣∣Aix−bi∣∣≤ci⊺x+ei  (i=1,⋯ ,m)Fx=gw,x∈RdAi∈Rki×d,b∈Rki,ci∈Rd,ei∈RF∈Rp×d,g∈Rp\begin{aligned} \min_{x \in \mathbf{R}^d}& \textrm{ } w^{\intercal}x: \\ &\quad \vert\vert A_i x-b_i \vert\vert \leq c_i^{\intercal}x + e_i \textrm{ }\textrm{ }(i=1,\cdots,m) \\ &\quad Fx = g \\ &\quad w, x \in \mathbf{R}^d\\ &\quad A_i \in \mathbf{R}^{k_i \times d}, b \in \mathbf{R}^{k_i}, c_i \in \mathbf{R}^d, e_i \in \mathbf{R} \\ &\quad F \in \mathbf{R}^{p \times d}, g \in \mathbf{R}^{p}\\ \end{aligned}

우리가 보여야 할 것은 SOC constraint에서 LMI로의 변환이 항상 가능하다는 것이다. 위의 식에서 SOC constraint를 다음의 형태로 바꿔보자.
(To be feasible →ci⊺x+ei≥0\rightarrow c^{\intercal}_i x + e_i \geq 0)

(ci⊺x+ei)2≥∣∣Aix−bi∣∣2\begin{aligned} (c_i^{\intercal}x + e_i)^2 \geq \vert\vert A_ix-b_i \vert\vert^2 \\ \end{aligned}

(Remind LMI: G+x1F1+⋯+xdFd⪰0G + x_1F_1 + \cdots + x_dF_d \succeq 0)

여기서 WLOG (without loss of generality), ci⊺x+ei>0c^{\intercal}_i x + e_i >0 라 둘 수 있다. 만약 ci⊺x+ei=0c^{\intercal}_i x + e_i=0 이면 Aix−bi=0A_ix-b_i =0 인데, 이때 두 식은 Fx=gFx = g (equality constraint)에 합쳐질 수 있고, 이는 LP와 같기 때문이다.

이제 식을 마저 정리해보자. ci⊺x+ei>0c_i^{\intercal}x + e_i >0 이므로, 이를 양변에 나누면 다음과 같다.

(ci⊺x+ei)≥∣∣Aix−bi∣∣2ci⊺x+ei⋯ (∗∗)\begin{aligned} (c_i^{\intercal}x + e_i) \geq \frac{\vert\vert A_ix-b_i \vert\vert^2}{c_i^{\intercal}x + e_i} \\ \end{aligned} \quad \quad \cdots \textrm{ } (**)

(∗∗)(**)는 아래와 같이 표현할 수 있다. (Iki×ki:ki×ki identity matrix)(I_{k_i \times k_i}: k_i \times k_i \textrm{ identity matrix})

(ci⊺x+ei)−(Aix−bi)⊺{(ci⊺x+ei)Iki×ki}−1(Aix−bi)≥0\begin{aligned} (c_i^{\intercal}x + e_i) - (A_ix-b_i)^{\intercal} \left\{ (c_i^{\intercal}x + e_i) I_{k_i \times k_i} \right\}^{-1} (A_ix-b_i)\geq 0 \end{aligned}

이때, 위의 식에서 좌변을 행렬 (ci⊺x+ei)Iki×ki(c_i^{\intercal}x + e_i) I_{k_i \times k_i}의 Schur complement 라고 한다. Formal 한 definition은 아래와 같다.

Schur complement

Definition: Suppose that pp and qq are non-negative integers. And A∈Rp×p,B∈Rp×q,C∈Rq×qA\in\mathbf{R}^{p\times p}, B\in\mathbf{R}^{p\times q}, C\in\mathbf{R}^{q\times q}.
Let X:=[ABB⊺C]∈R(p+q)×(p+q)X := \begin{bmatrix} A&B\\ B^{\intercal}&C\\ \end{bmatrix} \in \mathbf{R}^{(p+q) \times (p+q)}. Then if AA is invertible, the Schur complement SS of the block AA in matrix XX is defined as S:=C−B⊺A−1B.S := C-B^{\intercal}A^{-1}B.

이제 정의를 알았으니 앞선 계산식에 대응시켜보면, formal definition을 기준으로 C=ci⊺x+eiC=c_i^{\intercal}x + e_i, B=Aix−biB=A_ix-b_i 그리고 A=(ci⊺x+ei)Iki×kiA=(c_i^{\intercal}x + e_i) I_{k_i \times k_i} 인 상황임을 알 수 있다.

한편 Schur complement와 관련된 매우 유명한 lemma를 하나 사용하면, 우리는 SDP의 standard form에 있는 inequality constraints를 유도해낼 수 있다. 해당 lemma는 다음과 같다: Schur complement lemma

Schur complement lemma
Suppose A∈Rp×p≻0A \in \mathbf{R}^{p \times p} \succ 0 and CC is symmetric. Then,
X:=[ABB⊺C]⪰0⇔S:=C−B⊺A−1B⪰0X := \begin{bmatrix} A&B\\ B^{\intercal}&C\\ \end{bmatrix} \succeq 0 \Leftrightarrow S:= C-B^{\intercal}A^{-1}B \succeq 0

이제 앞서 대응시킨 변수들을 대입하면, SOC constraint를 다음의 형태로 바꿀 수 있다.

Fi(x):=[(ci⊺x+ei)Iki×kiAix−bi(Aix−bi)⊺ci⊺x+ei]⪰0F_{i}(x) := \begin{bmatrix} (c_{i}^{\intercal}x+e_{i}) I_{k_i \times k_i}& A_ix-b_i \\ (A_ix-b_i)^{\intercal}&c_{i}^{\intercal}x+e_{i}\\ \end{bmatrix} \succeq 0

여기서 Fi(x)∈R(ki+1)×(ki+1)F_{i}(x) \in \mathbf{R}^{(k_i+1) \times (k_i+1)} 는 symmetric 이고 PSD이며, 각 원소들은 xx에 대해 affine 이다. 그렇다면 이는 LMI 일까? 이에 대한 대답은 Yes 이다. 증명은 다음과 같다.

Proof: (Subscript index ii는 생략)
F(x):=[(c⊺x+e)Ik×kAx−b(Ax−b)⊺c⊺x+e]⪰0F(x) := \begin{bmatrix} (c^{\intercal}x+e) I_{k \times k}& Ax-b \\ (Ax-b)^{\intercal}&c^{\intercal}x+e\\ \end{bmatrix} \succeq 0 is an LMI?
(LMI: G+x1F1+⋯+xdFd⪰0G + x_1F_1 + \cdots + x_dF_d \succeq 0)

LMI는 xx와 관련이 있느냐 없느냐에 따라 크게 두 부분으로 나눠볼 수 있다. (e.g., 행렬 GG는 xx 와 관련이 없는 부분)

따라서 F(x)F(x)도 두 부분으로 나눠보면 다음과 같이 전개할 수 있다.

[(c⊺x+e)Ik×kAx−b(Ax−b)⊺c⊺x+e]=[eIk×k−b−b⊺e]+[c⊺xIk×kAxx⊺A⊺c⊺x]\begin{bmatrix} (c^{\intercal}x+e) I_{k \times k}& Ax-b \\ (Ax-b)^{\intercal}&c^{\intercal}x+e\\ \end{bmatrix} = \begin{bmatrix} e I_{k \times k}& -b \\ -b^{\intercal}&e\\ \end{bmatrix} + \begin{bmatrix} c^{\intercal}x I_{k \times k}& Ax \\ x^{\intercal}A^{\intercal}&c^{\intercal}x\\ \end{bmatrix}

이때 G=[eIk×k−b−b⊺e]G=\begin{bmatrix} e I_{k \times k}& -b \\ -b^{\intercal}&e\\ \end{bmatrix} 임을 알 수 있고, 이는 symmetric 이다.

다음으로 남은 한 부분을 보자. 이는 xx에 대한 함수인데, 우리의 목적은 이를 ∑i=1dxiFi\sum^d_{i=1} x_iF_i 꼴로 표현하는 것이다.

각각을 보면 먼저 c⊺xc^{\intercal}x 는 ∑i=1dcixi\sum^d_{i=1} c_ix_i 로 표현할 수 있다. 다음으로 AxAx는 ∑i=1d□\sum^d_{i=1} \square 의 형태로 어떻게 표현할 수 있을까.

현재 AA의 크기는 Rk×d\mathbf{R}^{k \times d} 이므로 column은 총 dd 개다. 각 column을 ai∈Rka_i \in \mathbf{R}^{k} 로 두면 AA는 [a1,a2,⋯ ,ad][a_1, a_2, \cdots,a_d] 로 나타낼 수 있고, Ax=∑i=1daixiAx=\sum^d_{i=1} a_ix_i 와 같다. 마찬가지로 나머지 원소에 대해서도 같은 방식을 적용하면, xix_i는 scalar 값이므로 transpose에 영향을 받지 않기 때문에 다음과 같이 표현할 수 있다.

[c⊺xIk×kAxx⊺A⊺c⊺x]=[∑i=1dcixiIk×k∑i=1daixi∑i=1dai⊺xi∑i=1dcixi]=∑i=1dxi[ciIk×kaiai⊺ci]\begin{aligned} \begin{bmatrix} c^{\intercal}x I_{k \times k}& Ax \\ x^{\intercal}A^{\intercal}&c^{\intercal}x\\ \end{bmatrix} &= \begin{bmatrix} \sum^d_{i=1} c_ix_iI_{k \times k}& \sum^d_{i=1} a_ix_i \\ \sum^d_{i=1} a^{\intercal}_ix_i&\sum^d_{i=1} c_ix_i\\ \end{bmatrix} \\ &=\sum^{d}_{i=1} x_i \begin{bmatrix} c_iI_{k \times k}& a_i \\ a^{\intercal}_i& c_i\\ \end{bmatrix} \end{aligned}

우리는 마지막 식에서 [ciIk×kaiai⊺ci]\begin{bmatrix} c_iI_{k \times k}& a_i \\ a^{\intercal}_i& c_i\\ \end{bmatrix} 를 FiF_i 로 볼 수 있다. 그렇다면 마지막으로 확인할 것은 FiF_i의 symmetric 여부인데, 행렬 꼴을 보았을 때 이는 symmetric 이다.

따라서 F(x):=[(c⊺x+e)Ik×kAx−b(Ax−b)⊺c⊺x+e]⪰0F(x) := \begin{bmatrix} (c^{\intercal}x+e) I_{k \times k}& Ax-b \\ (Ax-b)^{\intercal}&c^{\intercal}x+e\\ \end{bmatrix} \succeq 0 는 LMI 이다.

(Remind SOCP)

min⁡x∈Rd w⊺x:[(ci⊺x+ei)Iki×kiAix−bi(Aix−bi)⊺ci⊺x+ei]⪰0Fx=gw,x∈RdAi∈Rki×d,b∈Rki,ci∈Rd,ei∈RF∈Rp×d,g∈Rp\begin{aligned} \min_{x \in \mathbf{R}^d}& \textrm{ } w^{\intercal}x: \\ &\quad \begin{bmatrix} (c_{i}^{\intercal}x+e_{i}) I_{k_i \times k_i}& A_ix-b_i \\ (A_ix-b_i)^{\intercal}&c_{i}^{\intercal}x+e_{i}\\ \end{bmatrix} \succeq 0 \\ &\quad Fx = g \\ &\quad w, x \in \mathbf{R}^d\\ &\quad A_i \in \mathbf{R}^{k_i \times d}, b \in \mathbf{R}^{k_i}, c_i \in \mathbf{R}^d, e_i \in \mathbf{R} \\ &\quad F \in \mathbf{R}^{p \times d}, g \in \mathbf{R}^{p}\\ \end{aligned}

지금까지 우리는 Fi(x)⪰0F_i(x) \succeq 0 이 LMI 라는 것을 확인했다. 그런데 생각해보면 SOCP에서 ii 의 범위는 1≤i≤m1 \leq i \leq m 이기 때문에, SDP에서 하나의 LMI를 다뤘던 것과는 달리 여기서는 총 mm 개의 multiple LMIs 를 다룬다.

따라서 SDP의 form을 맞춰주기 위해서는 multiple LMIs를 single LMI로 바꾸는 추가적인 연산이 필요하다.

각각의 LMI를 보자. F1(x)⪰0F_1(x) \succeq 0 이고, F2(x)⪰0,⋯ ,Fm(x)⪰0F_2(x) \succeq 0, \cdots, F_m(x) \succeq 0 이다. 그렇다면 우리는 다음의 large matrix를 생각해볼 수 있다.

[F1(x)0⋯00F2(x)⋯⋮⋮⋮⋱00⋯0Fm(x)]⋯ (∗∗∗)\begin{bmatrix} F_1(x)& 0& \cdots &0 \\ 0& F_2(x) & \cdots & \vdots \\ \vdots& \vdots & \ddots & 0 \\ 0& \cdots & 0 & F_m(x) \\ \end{bmatrix} \quad \quad \cdots \textrm{ } (***)

한편, 위의 행렬에 대해 다음과 같은 관계식이 성립한다. 증명은 PSD의 definition을 통해 쉽게 할 수 있다.

F1(x),⋯ ,Fm(x)⪰0⇔F(x):=[F1(x)0⋯00F2(x)⋯⋮⋮⋮⋱00⋯0Fm(x)]⪰0\begin{aligned} F_1(x), \cdots, F_m(x) \succeq 0 \Leftrightarrow F(x) := \begin{bmatrix} F_1(x)& 0& \cdots &0 \\ 0& F_2(x) & \cdots & \vdots \\ \vdots& \vdots & \ddots & 0 \\ 0& \cdots & 0 & F_m(x) \\ \end{bmatrix} \succeq 0 \end{aligned}

참고로 (∗∗∗)(***) 은 symmetric 이기 때문에 G+∑i=1dxiFiG + \sum_{i=1}^d x_iF_i 의 형식으로 표현할 수 있고, 또한 (∗∗∗)(***) 은 PSD 이므로 이는 LMI 이다.

SDP:

min⁡x∈Rd w⊺x:[F1(x)0⋯00F2(x)⋯⋮⋮⋮⋱00⋯0Fm(x)]⪰0Fi(x):=[(ci⊺x+ei)Iki×kiAix−bi(Aix−bi)⊺ci⊺x+ei]Fx=g\begin{aligned} \min_{x \in \mathbf{R}^d}& \textrm{ } w^{\intercal}x: \\ &\quad \begin{bmatrix} F_1(x)& 0& \cdots &0 \\ 0& F_2(x) & \cdots & \vdots \\ \vdots& \vdots & \ddots & 0 \\ 0& \cdots & 0 & F_m(x) \\ \end{bmatrix} \succeq 0\\ &\quad F_i(x) :=\begin{bmatrix} (c_{i}^{\intercal}x+e_{i}) I_{k_i \times k_i}& A_ix-b_i \\ (A_ix-b_i)^{\intercal}&c_{i}^{\intercal}x+e_{i}\\ \end{bmatrix} \\ &\quad Fx = g \\ \end{aligned}

Proof of Schur complement lemma

Schur complement lemma
Suppose A≻0A\succ0 (PD) and CC is symmetric. Then,
X=[ABB⊺C]⪰0⇔S:=C−B⊺A−1B⪰0X = \begin{bmatrix} A&B\\ B^{\intercal}&C\\ \end{bmatrix} \succeq 0 \Leftrightarrow S:= C-B^{\intercal}A^{-1}B \succeq 0
(SS 는 block AA 의 Schur complement)

(⇒)\left( \Rightarrow \right)

다음과 같은 f(x,y)f(x,y)를 생각해보자. (→x∈Rp,y∈Rq)(\rightarrow x\in \mathbf{R}^p, y\in \mathbf{R}^q)

f(x,y)=[x⊺y⊺][ABB⊺C][xy]=x⊺Ax+2x⊺By+y⊺Cy\begin{aligned} f(x,y) &= \begin{bmatrix} x^{\intercal}&y^{\intercal} \end{bmatrix} \begin{bmatrix} A&B\\ B^{\intercal}&C\\ \end{bmatrix} \begin{bmatrix} x \\ y \\ \end{bmatrix} \\ &= x^{\intercal} A x + 2x^{\intercal}By + y^{\intercal}Cy \end{aligned}

여기서 f(x,y)f(x,y) 는 xx 에 대한 2차식인 것을 알 수 있다. 가정에 의하면 AA 는 PD 이고, 따라서 AA는 invertible 하다. (또한 AA의 모든 eigen-value가 strictly positive)

그렇다면 f(x,y)f(x,y) 는 xx 에 대한 convex function 이다. 왜냐하면 AA 가 symmetric 하고 PD 이기 때문이다. (엄밀히 말하면, PSD가 아닌 PD 이므로 strictly convex in xx)

이제 아래와 같이 g(y)g(y) 를 설정하고, 그에 해당하는 xx 값 (stationary point)를 넣어 전개해보자.

g(y):= min⁡xf(x,y)← x∗=−A−1By= (A−1By)⊺A(A−1By)−2(A−1By)⊺By+y⊺Cy= y⊺(C−B⊺A−1B)y= y⊺Sy(∵ S  is Schur complement )\begin{aligned} g(y) :=\textrm{ }& \min_x f(x,y) \quad \leftarrow \textrm{ } x^* = -A^{-1}By \\ =\textrm{ }& (A^{-1}By)^{\intercal} A(A^{-1}By) -2(A^{-1}By)^{\intercal}By +y^{\intercal}Cy \\ =\textrm{ }& y^{\intercal}(C-B^{\intercal}A^{-1}B)y\\ =\textrm{ }& y^{\intercal}Sy \quad \quad (\because \textrm{ } S \textrm{ }\textrm{ is Schur complement }) \end{aligned}

정리하면, XX는 PSD 이다. PSD의 정의를 생각해보면, 모든 (x,y)(x,y) 에 대해 f(x,y)=[x⊺y⊺][ABB⊺C][xy]≥0f(x,y) = \begin{bmatrix} x^{\intercal}&y^{\intercal} \end{bmatrix} \begin{bmatrix} A&B\\ B^{\intercal}&C\\ \end{bmatrix} \begin{bmatrix} x \\ y \\ \end{bmatrix} \geq 0 이 성립한다.

그리고 우리가 보이고 싶은 것은 SS 가 PSD 라는 것이다. g(y)g(y) 는 f(x,y)f(x,y)에서 xx 가 x∗x^* 로 고정된 것이기 때문에 S⪰0S \succeq 0 이다.

(⇐)\left( \Leftarrow \right)

PSD의 definition을 사용하자. 즉, 모든 yy 에 대해 다음이 성립한다.

g(y)=f(x∗,y)=y⊺Sy≥0\begin{aligned} g(y) = f(x^*,y) = y^{\intercal}Sy \geq 0 \end{aligned}

또한 앞선 g(y)g(y)의 정의를 생각해보면, g(y)≤f(x,y)g(y) \leq f(x,y) 이다. 따라서 ∀(x,y)\forall (x,y)에 대해 0≤f(x,y)0 \leq f(x,y) 의 관계가 성립한다.

f(x,y)=[x⊺y⊺][ABB⊺C][xy]≥0\begin{aligned} f(x,y) &= \begin{bmatrix} x^{\intercal}&y^{\intercal} \end{bmatrix} \begin{bmatrix} A&B\\ B^{\intercal}&C\\ \end{bmatrix} \begin{bmatrix} x \\ y \\ \end{bmatrix} \end{aligned} \geq 0

즉, XX는 PSD 이다.

Reference

카이스트 서창호 교수님 강의 - EE424: 최적화개론 lecture 12.

1개의 댓글

comment-user-thumbnail
2023년 10월 17일

정말 수준 높은 포스팅입니다. 감사합니다.

답글 달기