How to avoid unnecessary optimvar variable declarations in Problem Based Optimization Models?
11 ビュー (過去 30 日間)
古いコメントを表示
Hi, I have the following piece of code:
X = optimvar('X',{Nodes,Nodes,Trees},'LowerBound',0,'UpperBound',1,'Type','integer');
Y = optimvar('Y',{Nodes,Trees},'LowerBound',0,'UpperBound',1,'Type','integer');
for k = 1:K
for i = 1:n
X(i,i,k).UpperBound = 0;
for j = i + 1:n
X(j,i,k).UpperBound = 0;
end
end
end
I want the decision variable X(i,j,k) be created only for i < j for example. Or some parameter C(i,j) > 0. What is the best way to do that in order to avoid loops.
Best Regards Ramiro
1 件のコメント
Matt J
2018 年 2 月 23 日
I would hope that you don't have to care. There's a chance that the problem-based optimization engine is smart enough to pre-detect extra variables for which LowerBound=UpperBound and do the appropriate problem simplification for you internally.
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!