本文源於知乎問題“
目前最佳化界中,能對最高多少次的目標函式進行最佳化
?”的回答。問題裡的“次數”指的是多項式的次數。事實上,這個問題的本質是大衛·希爾伯特當年著名的23個問題的第17個的特殊版:
給定一個多維多項式,在實數域上非負,是否可以寫成有限個多項式的平方和?
當然上面的問題乍看下好像跟最佳化沒關係,我馬上會解釋。回開頭的問題,
次數
確實很關鍵,不過
維數
也同樣關鍵。
一、一維多項式最佳化:凸最佳化(半正定規劃)問題
先說結論。
如果目標函式是一維的,那麼多少次的最佳化問題,都沒什麼問題(多項式時間可解)。
考慮我們的目標函式為
次一維實多項式:
其中所有係數
都是實數,因為
的取值是實數所以我們也可以寫作
。那麼我們要
證明一個這樣的結論:
和
是SOS(sum of squares)等價
。這個
是SOS呢就是說多項式可以寫成有限個多項式的平方和。具體來說,存在
,使得
好了我們現在就是要證明
是SOS和
非負等價。一邊是顯然的,如果
是SOS的話根據定義顯然是非負的。那麼反過來,我們就要證明
是SOS的。
根據代數學基本定理,我們可以將
分解為:
,
其中
和
就是
對應的實根和復根(
是根的重複度,加起來自然是
)。由於
非負,所以
且實根的重複度(multiplicities)都是偶數,因此我們記
。再由
,得到
因為顯然SOS的乘積也是SOS,我們就得到了
是SOS的。更進一步,我們可以利用
,把關於復根的所有乘積展開成只包含兩項的SOS。即,存在一種分解
。
接下來我們就要說明可以用半正定規劃(semidefinite programming, SDP)來判斷
是否成立。注意
是偶數次多項式才有意義(記次數
),不然顯然是不可能的。那麼考慮
,這時候所有
的次數顯然不能超過
。我們則可以有表示式:(對某個矩陣
)
記
,我們就有:
注意按照定義矩陣
是半正定(positive semidefinite)的。反過來,如果我們假設存在一個半正定矩陣
,使得
,那麼利用半正定矩陣的對稱分解,就有存在矩陣
使得
,這樣就說明
是SOS的。
那麼實際上我就證明了這個結論
:
非負(SOS)當且僅當存在
(d+1維半正定矩陣)使得
!
把
的行列用
來標記,我們有
這樣子,帶回到
的定義,我們就知道多項式係數和矩陣的關係:
這就給了我們半正定規劃的具體計算公式了(也就是說,我們要找到一個半正定矩陣
,其係數滿足上面的關係式)!
具體來說,對任意實數
,判斷
也就是求解一個SDP問題。那麼比如說如果我們知道
的最小值有界,最佳化
就可以用個二分查詢,每次查詢判斷就是解一個SDP,這顯然是多項式時間的(近似)演算法。
上面講的都是
在整個實數域上的無約束最佳化。如果我們要限定
在某段閉區間(或者半開半閉區間)上求最小值,也是沒問題的,還是可以變成SDP最佳化問題。這裡我就不具體寫式子了,有興趣的可以看文章
[1]
的proposition 3。1。
二、高維多項式最佳化與希爾伯特第十七問題
事實上,希爾伯特在100多年前就證明了,除了我們前面討論的一維情況,更一般的來講只要一個
個變數(維數),次數
在實數域上的齊次多項式
是SOS等價其非負——那麼一定滿足下面三種情況之一。不過,希爾伯特的證明完全基於代數學,是存在性證明而對計算沒有幫助。
對於其他情況,希爾伯特猜想不成立。Motzkin在幾十年後給出過一個絕妙的反例,如下非齊次多項式(
)是實數域上非負但不是SOS的:
我們這裡不討論這個絕妙反例的證明(牽涉到一點抽象代數定義)。不過可以給張圖說明其確實非負:
事實上,我們指出判斷一個多元四次(及以上)偶多項式是否在實數域非負的是NP-hard的
[2]
。也就是說,除非NP=P,不存在通用的多項式演算法可以最佳化一個多元四次(及以上)偶多項式。
最後,我們指出希爾伯特證明可解的三種情況,是仍然可以用前一節的方法透過SDP來求解的。因為事實上我們前面一節的方法對判斷任意
個變數次數
的多項式是SOS的SDP是可以直接推廣的。具體來說,透過同樣的步驟我們可以得到一個
的SDP條件:
注意,這些希爾伯特欽定的多項式本身都可以高度非凸,但是我們還是可以很有效的最佳化他們(除此之外其它的多項式一般來講就不行了)。
對SDP不熟悉的同學,也可以看看我之前的一個回答:
參考
^
Bertsimas, Dimitris, and Ioana Popescu。 “Optimal inequalities in probability theory: A convex optimization approach。” SIAM Journal on Optimization 15。3 (2005): 780-804。
^
Nesterov, Yurii。 “Squared functional systems and optimization problems。” High performance optimization。 Springer, Boston, MA, 2000。 405-440。