2
私はソルバーグロビの問題を解決していますが、次のエラーが表示されます:Gurobi 5.1.0:無制限。 variable.unbddが返されました。AMPL EROR - 無制限の変数
マイコード:
は、私は問題を見ることができない
set nusos:= 1 2 3 4 5 6 7 8 9;
set centr:= 1 2 3 4;
set links:=
(1,5)
(3,8)
(5,6)
(5,8)
(5,9)
(6,7)
(7,2)
(7,9)
(8,5)
(8,6)
(9,4)
(9,7);
set origens:= 1 3;
set destins:= 2 4;
set odpair:=
(1,2)
(3,4);
param g:=
1 2 400
3 4 400;
param t0:=
1 5 0.1
3 8 0.1
5 6 0.2
5 8 0.7
5 9 0.5
6 7 1.0
7 2 0.1
7 9 0.1
8 5 1.0
8 6 1.0
9 4 0.08
9 7 0.7;
example.dat
set nusos;
set centr within nusos;
set links within (nusos cross nusos);
set origens within centr;
set destins within centr;
set odpair within (origens cross destins);
set destperorig { i in origens } :=
setof { (i1, j1) in odpair : i = i1 } j1;
param g{odpair} >0;
param t0{links};
param Tdreta { i in nusos, k in origens }:=
if i in destperorig[k] then -1.0*g[k, i]
else
if i = k then sum {j in destperorig[k]} g[k, j] else 0;
node N {i in nusos, k in origens}: net_out = Tdreta[i, k];
arc v_k { (i, j) in links, k in origens } >= 0,
from N[i, k], to N[j, k] ;
var v { (i, j) in links };
minimize Vg: sum { (i, j) in links } v[i, j]*t0[i, j];
をexample.mod。なにか提案を?説明付きでお願いします。
私はv [i、j] =合計{k in origens} v_k [i、j、k]を試しました。しかし、私はこのエラーが表示されます:vはすでに定義されています –
宣言に 'var v {(i、j)in links} = sum {k in origens} v_k [i、j、k];' – vitaut