The LINGO code

The calculation results

model:

sets:

P/P1..P4/:price;! Construction cost;

T/T1..T4/:time;! Engineering capacity to meet the demand for water supply;

C/C1..C4/:capacity;! Engineering capacity;

links(P,T):x;

endsets

min=@sum(P(i):price(i)*x(i,1))+

@sum(P(i):price(i)*x(i,2))*(1+0.10)^(-@sum(T(i):time(i)*x(i,1)))+

@sum(P(i):price(i)*x(i,3))*(1+0.10)^(-@sum(T(i):time(i)*(x(i,1)+x(i,2))))+

@sum(P(i):price(i)*x(i,4))*(1+0.10)^(-@sum(T(i):time(i)*(x(i,1)+x(i,2)+x(i,3))));!Objective function;

@sum(T(i):time(i)*(x(i,1)+x(i,2)))>=10;! Constraints of water supply demand time;

@sum(C(i):capacity(i)*(x(i,1)+x(i,2)))>=5;! Constraints of engineering capacity increases water supply;

@for(P(j):@sum(C(i):x(i,j))=1);

@for(P(i):@sum(C(j):x(i,j))=1);

@sum(P(j):@sum(C(i):x(i,j)))=4;! Constraints of project construction;

@for(P(j):@for(C(i):@bin(x(i,j))));!0-1 constraints;

data:

price=6400 10500 16000 4000;

time=2.68 11.58 8.42 2.11;

capacity=1.28 5.50 4.00 1.00;

enddata

end

Local optimal solution found.

Objective value: 16923.85

Objective bound: 16923.85

Infeasibilities: 0.000000

Extended solver steps: 11

Total solver iterations: 448

Elapsed runtime seconds: 0.10

Model Class: PINLP

Total variables: 16

Nonlinear variables: 16

Integer variables: 16

Total constraints: 12

Nonlinear constraints: 1

Total nonzeros: 80

Nonlinear nonzeros: 16

Variable Value Reduced Cost

PRICE(P1) 6400.000 0.000000

PRICE(P2) 10500.00 0.000000

PRICE(P3) 16000.00 0.000000

PRICE(P4) 4000.000 0.000000

TIME(T1) 2.680000 0.000000

TIME(T2) 11.58000 0.000000

TIME(T3) 8.420000 0.000000

TIME(T4) 2.110000 0.000000

CAPACITY(C1) 1.280000 0.000000

CAPACITY(C2) 5.500000 0.000000

CAPACITY(C3) 4.000000 0.000000

CAPACITY(C4) 1.000000 0.000000

X(P1, T1) 0.000000 0.000000

X(P1, T2) 0.000000 1224.752

X(P1, T3) 1.000000 0.000000

X(P1, T4) 0.000000 0.000000

X(P2, T1) 1.000000 390.2178

X(P2, T2) 0.000000 0.000000

X(P2, T3) 0.000000 0.000000

X(P2, T4) 0.000000 2600.677

X(P3, T1) 0.000000 5320.812

X(P3, T2) 0.000000 855.1000

X(P3, T3) 0.000000 0.000000

X(P3, T4) 1.000000 1252.020

X(P4, T1) 0.000000 0.000000

X(P4, T2) 1.000000 2756.736

X(P4, T3) 0.000000 1582.681

X(P4, T4) 0.000000 1546.801