24. 大規模規划(三)隨機規划和Benders分解


這一部分我們介紹兩階段的隨機規划問題,並且引入一個新的算法--Benders 分解。

引入問題

假設有一個決策者需要在兩個連續的階段做出決定。在第一階段需要選擇出一個決策向量\(x\),然后緊接着在得到一些新的信息之后需要在第二階段確定另一個新的決策向量\(y\)。我們假設存在K種可能的情形,並且實際出現的情形在\(x\)確定之后才能知道。我們使用\(\omega\)作為不同情形的下標,記\(\alpha_\omega\)為任意情形\(\omega\)出現的概率。由於\(y\)的確定是在第二階段,因此\(y\)是與\(\omega\)相關的,那么此時記為\(y_\omega\)用來表示相關性。

分別記目標函數中與\(x\)\(y_\omega\)對應的cost為\(c\)\(\text{f}\)。在第一階段必須滿足的約束為

\[\begin{align*} Ax &=b \\ x&\geq 0. \end{align*} \]

另外,對於所有\(\omega\) ,在第一階段和第二階段都需要滿足的約束為

\[\begin{align*} B_\omega x+Dy_\omega &=d_\omega \\ y_\omega&\geq 0. \end{align*} \]

目標就是選擇合適的\(x\)\(y_1,\cdots,y_K\)使得下面的期望損失最小

\[c^Tx+\alpha_1\text{f}^Ty_1+\cdots +\alpha_K\text{f}^Ty_K. \]

綜上,我們可以得到問題

稱這個問題為master問題。注意即使\(K\)值並不是特別大,這個問題也有可能是一個很大規模的問題。因此,我們考慮尋找一個分解算法。

問題重寫

考慮滿足\(Ax=b\)\(x\geq 0\)的向量\(x\),假設這個\(x\)就是我們第一階段的選擇。只要\(x\)固定了,第二階段的決策\(y_\omega\)就可以獨立的對每一個\(\omega\)求解如下的問題

\[\begin{align*} \min \quad &f^Ty_\omega \\ \text{s.t.}\quad &B_\omega x+Dy_\omega=d_\omega \\ &y_\omega \geq 0. \end{align*} \]

\(z_\omega (x)\)為上述問題的最優解。若問題不可行,則記\(z_\omega (x)=\infty\)。如果這時候我們回到第一階段,那么將會面對

\[\begin{align*} \min \quad &c^Tx+\sum_{\omega=1}^K \alpha_\omega z_\omega (x)\\ \text{s.t.}\quad &Ax=b \\ &x \geq 0. \end{align*} \]

那么在這里我們僅需要考慮不會使得\(z_\omega (x)\)為無窮大的\(x\)

現在回到這里第一個關於\(y_\omega\)的問題,寫出它的對偶問題

\[\begin{align*} \max\quad & p^T_\omega (d_\omega -B_\omega x) \\ \text{s.t.} \quad & p^T_\omega D\leq \text{f}^T. \end{align*} \]

\(P=\{p\mid p^TD\leq \text{f}^T\}\)。假設\(P\)是非空的並且至少存在一個極點。記\(p^i,\, i=1,\cdots,I\)為所有的極點,\(\text{w}^j,\, j=1,\cdots, J\)\(P\)的極射線的一個完備集。

由於我們假設\(P\)非空,那么對偶問題要么存在有界最優值要么最優值為無窮大(此時原問題不可行)。注意,\(z_\omega (x) < \infty\)當且僅當

\[(\text{w}^j)^T(d_\omega -B_\omega x)\leq 0,\quad\forall j. \]

這是因為目標值不為無窮大必須滿足不存在能夠使目標函數值一直下降的方向。當\(z_\omega (x)\)有界時,最優解必然落在\(P\)的一個極點上,也即

\[z_\omega (x)=\max_{i=1,\cdots,I}(p^i)^T(d_\omega - B_\omega x). \]

等價的,\(z_\omega (x)\)是使得下式成立的最小\(z_\omega\):

\[(p^i)^T(d_\omega - B_\omega x)\leq z_\omega,\quad\forall i. \]

綜上,這節的第二個問題將可以改寫為

顯然,重寫后的問題的變量減少了很多。但是注意約束條件可能非常大。

Delayed constraint generation

考慮上面寫的master問題的一個relaxed形式,它目標函數不變,但是約束僅為原約束的一個子集。假設已知這個relaxed問題的一個最優解,包含\(x^*\)以及\(z^*=(z_1^*,\cdots,z^*_K)\)。在cutting plane method中,我們需要考慮\((x^*,z^*)\)是否仍然是原master 問題的可行解,也即是否滿足所有的約束條件。但是在這里我們換另一種思路,我們通過求解一些輔助子問題進行確定。

對於\(\omega=1,\cdots, K\),考慮子問題

\[\begin{align*} \min\quad & \text{f}^Ty_\omega \\ \text{s.t.}\quad &Dy_\omega=d_\omega-B_\omega x^* \\ & y_\omega \geq 0, \end{align*} \]

注意,對於不同的\(\omega\),上面子問題的區別僅在於等式約束的右邊\(d_\omega -B_\omega x^*\),也即原問題的可行域\(P\)都是相同的。因此,在求解子問題時使用對偶單純形法。

下面可慮可能出現的幾種情形。

  1. 若對偶單純形法的結果表示原子問題是不可行的,那么說明存在對偶可行域\(P\)中一個極射線\(\text{w}^{j(\omega)}\)使得$$(\text{w}{j(\omega)})Td_\omega-B_\omega x^* > 0.$$這說明我們找到了一個不滿足的約束,那么這個約束就可以被添加到relaxed 的master問題中。
  2. 如果原子問題是可行的,那么對偶單純形法提供了一個對偶最優基本可行解\(p^{i(\omega)}\)。如果有 $$(p^{i(\omega )})^T(d_\omega - B_\omega x^* ) > z^*_\omega ,$$這說明我們找到了一個不滿足的約束,那么此時這個約束可以添加到relaxed 的master 問題中。
  3. 如果原子問題存在可行解,且對於所有\(\omega\)都有\((p^{i(\omega )})^T(d_\omega - B_\omega x^* ) \leq z^*_\omega,\)那么由於\(p^{i(\omega )}\)的最優性,可知對於所有的極點\(p^i\)有 $$(p{i})T(d_\omega - B_\omega x^* ) \leq z^*_\omega , $$ 並且有\((\text{w}^{j(\omega)})^Td_\omega-B_\omega x^* \leq 0\),這說明沒有約束不成立,也即找到了master問題的最優解,算法結束。

將上面的步驟總結,可得

兩階段問題的Benders 分解算法步驟:

  1. 從relaxed master 問題開始,已知這個relaxed 問題的最優解\((x^*,z^*)\)
  2. 對於每個\(\omega\),使用對偶單純形法求解子問題

\[\begin{align*} \min\quad & \text{f}^Ty_\omega \\ \text{s.t.}\quad &Dy_\omega=d_\omega-B_\omega x^* \\ & y_\omega \geq 0, \end{align*} \]

  1. 如果對於每個\(\omega\),對應的子問題是可行的並且最優值小於或等於\(z^*_{\omega}\),那么說明找到了master問題的最優解,算法結束。
  2. 如果存在\(\omega\),它的最優值大於\(z^*_\omega\),找到對應的對偶問題的最優基本可行解\(p^{i(\omega)}\),將約束$$(p{i})T(d_\omega - B_\omega x ) \leq z^*_\omega ,$$加入到relaxed master問題中。
  3. 如果對於\(\omega\)子問題是不可行的,則它的對偶問題存在無界解。那么對應的存在正的極射線\(\text{w}^{j(\omega)}\)。將約束$$(\text{w}{j(\omega)})Td_\omega-B_\omega x^* \leq 0$$加入到relaxed master 問題。

參考文獻: Introduction to Linear Optimization by Dimitris Bertsimas & John N. Tsitsiklis.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM