資源簡介
BENDERS分解算法,用來求解MIPS,即混合整數線性規劃問題。我已經做了注釋。
代碼片段和文件信息
function?[OptXOptYOptValue]=BendersDecomposition(CDABb)
%?應用Benders分解算法解決混合整數規劃問題
%?調用格式:[OptXOptYOptValue]=BendersDecomposition(CDABb)
%?用來解決如下形式的規劃問題:
%?????????min??C*x+D*y
%?????????s.t.?A*x+B*y>=b;?x0-1變量y>=0
%迭代停止的判斷閾值:LB/UB大于epsilon時停止迭代。可以根據問題復雜程度靈活調節
epsilon?=?0.99;
[nRowAnColA]?=?size(A);
[nRowBnColB]?=?size(B);
%step?1:初值化
x0?=?zeros(nColA1);%初始值
LB?=?-1e10;
UB?=?inf;
p?=?0;
q?=?0;
U?=?zeros(100nRowA);
V?=?zeros(100nRowA);
options?=?optimset(‘LargeScale‘?‘off‘?‘Simplex‘?‘on‘);
OptionsBint?=?optimset(‘MaxRLPIter‘100000‘NodeSearchStrategy‘‘bn‘...
????‘MaxTime‘50000);
while?LB/UB ????%step?2:求解子問題
????[UorVfvalexitflag]?=?linprog((A*x0-b)B‘D‘[][]zeros(nRowB1)...
????????inf(nRowB1)[]options);
????if?exitflag?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????1974??2010-02-08?18:20??BendersDecomposition.m
- 上一篇:檢測前跟蹤(TBD)程序
- 下一篇:ViBe背景建模
評論
共有 條評論