WUT_Computer_Science/NotProgramming/MOM/22glpk.mod

28 lines
819 B
Modula-2

set Wyjscie;
set Wezly;
set StartWezly;
set WyjscieWezly;
set StartWyjscieWezly;
set Projekty;
set Zespoly;
param k{z in Zespoly, p in Projekty};
var f{i in StartWyjscieWezly, j in StartWyjscieWezly}, >= 0;
minimize Q: sum {p in Projekty, z in Zespoly} k[z, p] * f[z, p];
Ograniczenie_jeden{i in StartWyjscieWezly, j in StartWyjscieWezly}:
f[i,j] >= 0;
Ograniczenie_dwa{i in StartWyjscieWezly, j in StartWyjscieWezly}:
f[i,j] <= 1;
Ograniczenie_trzy{p in Projekty}:
sum {z in Zespoly} f[z,p] = 1;
Ograniczenie_cztery{z in Zespoly}:
sum {p in Projekty} f[z,p] = 1;
Ograniczenie_piec{n in Wezly}:
sum {i in WyjscieWezly} f[n,i] = sum {j in StartWezly} f[j,n];
solve;
display {i in Wezly, j in Wezly: f[i,j] > 0}: f[i,j];
display: Q;