2017-09-08 9 views
0

最小化しようとする線形計画問題です。多くの例を見ましたが、これに似たものはありません。範囲にinf()zero()を使用する方法について特に混乱します。私はすでに制約の多くを持っているMATLAB - リニアプログラミング

が好き:

c = [6, 8, -6, -1] 
A = []; 
B = []; 
Aeq = [9, 3, -1, -1; 17, 1, 0, -2; 4, -5, 6, 1]; 
beq = [30, -20, 6.7] 

それの残りの部分に非常に混乱!そこ

+0

[docs](https://de.mathworks.com/help/optim/ug/linprog.html)の何が問題になっていますか?あなたは '' lb''と '' 'ub''を見た? A_eqが本当にA_eqに使用されていれば、現在の方法も間違っています。 – sascha

+0

A = [9、3、-1、-1; 17,1,0、-2; 4、-5,6,1]; B = [30、-20、6.7]; Aeq = []; beq = [];私はまだ境界をどのように使用するのかわかりません。申し訳ありませんが、私は線形プログラミングとmatlabの初心者です – GeorgeB22

+0

これは、例を含むドキュメントに記述されています。 ????? [inf](https://de.mathworks.com/help/matlab/matlab_prog/infinity-and-nan.html)(これも無効にすることができる)を除いてすべてが対象となります。 – sascha

答えて

0

あなたが行く:

vC = [6; 8; -6; -1]; 
mA = [9, 3, -1, -1; -17, -1, 0, 2]; 
vB = [30; 20]; 
mAEq = [4, -5, 6, 1]; 
vBEq = [6.7]; 
vL = [-3; 6.5; -inf; -inf]; 
vU = [15; inf; -2; inf]; 

vX = linprog(vC , mA, vB, mAEq, vBEq, vL, vU); 
disp(['Optimal Solution - ', num2str(vX.')]); 
disp(['Objective Value - ', num2str(vC.' * vX)]); 

Optimal solution found. 

Optimal Solution - 3.036   6.5   -2  39.056 
Objective Value - 43.16 

フォーム<=に第二不平等をしなければなりません。
残りはまっすぐです。

+1

私は、明らかに宿題である質問を完全に解決することは良い考えではないと思います。インターネット上ではすでに多くの例があります。 – m7913d

+0

私は道徳的な警察ではありません。誰かが私が助けようとする質問をしました。私はそれが「-1」に値するとは思わない。 – Royi