凸限制下的凸優化問題 一

2021-07-02 11:38:21 字數 3823 閱讀 5722

本文主要介紹在凸限制下的凸優化問題。我們將這個問題記為pr

oble

m(p)

,描述如下: mi

nf0(

x)滿足

如下條件

⎧⎩⎨f

i(x)

≤0,∀

i∈ig

i(x)

≤0,∀

i∈jg

i(x)

=0,∀

i∈k

其中f0:

rn→r

⋃ 是乙個凸函式,i,

j,k 是有限集,當然也可能是空集。fi

是凸的,非仿射函式,gi

是乙個仿射函式。

1.次微商,

次梯度

在解決這個問題之前我們需要次梯度,次微商的概念。令

f 為rn

上的凸函式,如果向量x^*滿足 f(

z)≥f

(x)+

x∗(z

−x),

∀z∈r

n 那麼x

∗ 為f 的次梯度,所有在

x處的次梯度稱為f 在

x的次微商,記為∂f

(x)

我們需要解釋一下次梯度的概念。如果乙個函式在某個點處是可微的,那麼它在這個點處存在唯一的切平面(原因是梯度的唯一),使得函式影象都是在這個切平面之上的,這裡的在切平面之上的意思就是 f(

z)≥f

(x)+

x∗(z

−x),

∀z∈r

n ,其中左面就是經過這個點的切平面。針對凸函式,有些點是不可微的,但是我們仍然可以通過這個點做乙個平面,使得這個函式的影象在這個平面之上。這樣的平面是不唯一的。我們把所有的符合這樣性質的平面的法向量收集起來,就是次梯度。

2.kkt條件

我們稱x¯

,(λi

)i∈i

,(μi

)i∈j

⋃k滿足pr

oble

m(p)

的kkt條

件 ,如果它們滿足如下四個條件: (1

)∀i∈

i,λi

≥0,f

i(x¯

)≤0,

λifi

(x¯)

=0(2

)∀i∈

j,μ≥

0,gi

(x¯)

≤0,μ

igi(

x¯)=

0(3)

∀i∈k

,gi(

x¯)=

0(4)

0∈∂f

0(x¯

)+∑i

∈iλ∂

fi(x

¯)+∑

i∈j⋃

kμi+

∂δc(

x¯)

kkt 條件的前三個是比較容易理解的,關鍵是第四個f0

,fi 不一定是可微的,所以我們用次微商,但是由於gi

是仿射函式,所以是可微的,用它的梯度表示。最後一項的作用保證x¯

在pro

blem

(p) 的定義域c內,δc

(x)=

0 如果x∈

c ,否則為無窮大。

如果x¯,

(λi)

i∈i,

(μi)

i∈j⋃

k 滿足kk

t 條件,那麼x¯

為pro

blem

(p) 的解。

3.problem(p)的拉格

朗日函式

根據kkt條件的最後一句話,我們只需找到滿足kkt

條件的x¯,

(λi)

i∈i,

(μi)

i∈j⋃

k 便可。接下來我們就用拉格朗日函式來解決這個問題。

(problem(p)的拉格朗日函式)l:

rp+×

rq+×

r(r−

q)×r

n←r⋃

,它的自變數為(λ

,μ,x

)=((

λi)i

∈i,(

μi)i

∈j,(

μi)i

∈k,x

) .l(

λ,μ,

x)=f

0(x)

+∑i∈

i(λi

fi)(

x)+∑

i∈jμ

gi(x

)+∑i

∈kμg

i(x)

我們稱(λ

¯,μ¯

,x¯)

為l的鞍點,如果∀(

λ,μ)

∈rp+

×rq+

×r(r

−q),

∀x∈r

n l(

λ,μ,

x¯)≤

l(λ¯

,μ¯,

x¯)≤

l(λ¯

,μ¯,

x)那麼我們給出拉格朗日函式和pr

oble

m(p)

之間的關係。如果(λ

¯,μ¯

,x¯)

為l的鞍點,那麼x¯

為pro

blem

(p) 的解,(λ

¯,μ¯

) 是kkt引數。

我們通常遇到的凸優化問題並非像pr

oble

m(p)

那樣,它的乙個變形如下,我們稱為pα

,β問題. mi

nf(x

)滿足如

下條件⎧

⎩⎨fi

(x)≥

αi,∀

i∈ig

i(x)

=βi,

∀i∈k

x∈rn

其中f 和f_i為凸函式,gi

為線性函式,fi

也可以是線性函式。

1.值函式

v(α,β)=

inf

其中α=(

αi)i

∈i∈r

p,β=

(βi)

i∈k∈

rr2.拉格朗

日函式

求解方法仍然是拉格朗日乘子法。令x¯

滿足fi

(x¯)

≥αi,

∀i∈i

,gi(

x¯)=

βi,∀i∈

k ,我們稱pα

,β在x

¯處的乘

子是(λ

,μ)∈

rp×r

r 滿足λ≥

0,λi

(fi(

x¯)−

αi)

=0,∀

i∈i

ψ(x)

=f(x

)+∑i

∈iλi

(f(x

)−αi

)+∑i

∈kμi

(gi(

x)−β

i)+δ

c(x)

在x¯處達到最小值。

總結為:如果x¯

滿足fi

(x¯)

≤αi,

gi(x

¯)=β

i ,如果pα

,β在x

¯ 有乙個拉格朗日乘子,那麼x¯

為pα,

β 的解.

同時,我們要明白如果x¯

為pα,

β的解,

那麼在x

¯處的乘

子等於−

∂v(α

,β)

凸優化 python解決凸優化問題

1 安裝cvx包 用pip安裝cvxopt 1.2.1 cp36 cp36m win amd64.whl和cvxpy 1.0.9 cp36 cp36m win amd64.whl 因為我是python3.6所以是cp36 cvxpy cvxopt 參考 2 遇到問題 error microsoft ...

《凸優化》筆記(一) 凸集

筆記是根據 convex optimization 寫的,對應第2章。2 凸集 2.1 凸集 convex sets 如果在集合cc中的任意兩點滿足 x1 1 x2 c x1 1 x2 c 其中0 10 1,則集合cc為凸集 2.2 重要例子 1 超平面與半空間 hyperplanes and ha...

凸優化1 什麼是凸優化問題

去年就想看一下優化和泛函變分相關的內容,但沒有空餘的排期,大部分學習時間花在了強化學習方面。今年,正好近期專案也有需要,凸優化提上了自學日程。全書700頁,計畫用半年的時間完成一刷。數學模型min iniz ef0 x su bjec ttof i x bi,i 1,2,m begin minini...