幾何規劃(Geometric Program)問題其實是最佳化問題中很常見的問題,如果直接解決該問題的標準形式,是比較困難的,因為幾何規劃一般不是凸最佳化問題,比較難解決。那麼如何把GP問題轉化成凸最佳化問題然後對其進行求解?
目錄:
1。 GP 問題定義
2。 GP問題求解
3。一般問題轉化為GP問題
4。例項
一。 GP問題定義
我們先回顧一下最佳化問題的標準形:
也就是說,最小化某個函式,這個函式的定義域滿足上面的
個條件。
那麼
GP的標準型
是這樣的:
其中:
目標函式
及約束條件
為
正項式函式(posynomial function)
, 約束條件
為
單項式函式(monomial function)
。
A。 單項式函式(monomial function)的形式:(
)
其中,
。 也就是說常數倍為正數;冪可正可負,為實數即可。
monomial舉例:
、
、
、
等,常數也是monomial。 但是,
不是monomial。因為
。
因此 monomial 在
乘除運算中閉包
。
B。 正項式函式(posynomial function)的形式 :
同樣,
且
, 這個posynomial就是monomial的加和形式,一共有
項單項式函式
相加
。
注意monomial
相減
不是 posynomial
是不是posynomial呢? 也就是說
monomial加和的a次冪
是不是posynomial?當a是
整數
的時候,括號次冪可以展開,因此是posynomial;反之,如果是非整數,那麼這就不是posynomial。
這個
等於1時,那麼posynomial等於monomial,也就是說monomial是posynomial的真子集。
這個形式看起來有點兒複雜,為什麼有這個問題的存在呢? 其實現實場景中GP問題非常常見,舉個簡單的例子:用一塊紙板設計一個長方體,要求長方體的體積最大,但是對面積和長寬高以及其比例有所約束。這個時候就是一個GP問題了。(很多時候在多維空間中,加上一定的約束條件,最大化面積、體積等,大多都是幾何規劃問題)
二、GP問題求解
已知了標準的幾何規劃問題的形式,那麼如何將它轉化為凸最佳化問題,但是不影響結果?
目標函式轉化:
其中,
,
,
。
同樣,約束條件
轉化為:
=
其中,
,
,
。
因此,
GP問題可以轉化為
:
這時候對我們想到
是凸函式,且對上面問題取對數不會影響結果,因此
GP最佳化問題變成
:
上述式子則變成一個凸最佳化問題,其中
是未知的向量變數,透過最最佳化
則可以反推出原問題的最優解
:
證明
是凸函式。
是線性變換,是凸函式,那麼如果我們證明了
也是凸函式,根據保凸運算規則,就可以得證。
證明
為凸函式,即證
即可。
三、一般問題轉化為GP問題
有很多時候,根據場景描述寫的最佳化問題並不是標準的GP問題,這個時候如何將這些形式轉化為GP問題呢?
取相反數將大於號變成小於號,用乘除法將右邊化成1。
例子略
2. 變數替換,並且將替換方式加入約束條件。
例子:
,
,
令
;
;
;則,問題轉化為:
,
;
。
但是他們是等號的正項式,問題改寫成:
取大於等於和取等於是等價的,相當於把該值放大了,但是由於其他的約束條件,這個值只能取邊界值,也就是取等於。簡單的證明下面兩約束條件等價:
A。
B。
顯然
A是B的充分條件;
則:
則:
;則
3. max函式則進行變數替換,並且修改成大於等於max內每個元素,形成新的約束條件。
令
問題轉化為:
令
再轉化為:
四、例項
最優功率分配問題
考慮最大最小功率分配問題
這是一個擬凸最佳化問題,定義域為:
,該問題可以採用迭代二分法求解。現在考慮採用GP得到最優解。該問題重構為:
其中目標函式
是一個單項式函式,對於任意約束條件是正項不等式和單項不等式。因此該問題是一個定義域為
的GP問題,因此,該非凸幾何規劃可以轉化為凸最佳化問題。
參考文獻
1。
2。最佳化問題-GP(幾何規劃,Geometric Program)
以上就是我的學習或回顧記錄,有部分參考其他的部落格;能力有限如有錯誤歡迎指出。
好記性不如爛筆頭,希望自己多寫多記錄,無論是簡單知識的還是複雜未解決的問題,都記錄一下總是好的。