set k := 2;
set e := 0.1;
set C := 1;
set L:= 42;
set ORIG ordered;
set DEST ordered;
set ODs = {member(i, ORIG), member(j, DEST)};
set PATHS := 0..k;
set LINKS := 0..L;
set INDICATOR = {l in LINKS, p in PATHS, ij in ODs: indicator[l,p,ij]>=0};
set MEAN_DEMAND;
set VARIANCE_DEMAND;
var alpha >= 0;
var x{ij in ODs,p in PATHS} >= 0, <= 1;
var y{ij in ODs,l in LINKS} >= 0, <= 1;
var epsilon{l in LINKS} >= 0 , <= 1;
minimize objective: alpha;
s.t. Flow_Reservation {ij in ODs}:
sum {p in PATHS} x[ij,p] = 1;
s.t. y_ik {l in LINKS, ij in ODs}:
sum {p in PATHS} x[ij,p]*indicator[l,p,ij] = y[ij,l];
s.t. E2E {ij in ODs, p in PATHS}:
sum {l in LINKS} indicator[l,p,ij]*epsilon[l] <= e;
s.t. Allocation {l in LINKS}:
2*log(1/epsilon[l])*(sum {ij in ODs} member(ij,var_demand)*member(ij,var_demand)*y[ij,l]*y[ij,l]) <= (alpha*C-(sum{ij in ODs} member(ij,mu_demand)*y[ij,l]))*(alpha*C-(sum{ij in ODs} member(ij,mu_demand)*y[ij,l]));
I am using amplpy (python API) to solve my model. In python code, I have define a dataframe for ORIG:
Origins is a 1 dimensional simple array of numbers. I get following error, I appreciate any help.
Traceback (most recent call last):
File "myModel.py", line 518, in <module>
main(len(sys.argv), sys.argv)
File "myModel.py", line 437, in main
ampl.setData(df, 'ORIG')
File "C:\Program Files\Python36\lib\site-packages\amplpy\ampl.py", line 629, in setData
self._lock
File "C:\Program Files\Python36\lib\site-packages\amplpy\utils.py", line 14, in lock_and_call
result = call()
File "C:\Program Files\Python36\lib\site-packages\amplpy\ampl.py", line 628, in <lambda>
lambda: self._impl.setData(data._impl, setName),
RuntimeError: file -
line 1 offset 10
ORIG is not a set