Advertisement
Guest User

Untitled

a guest
Oct 29th, 2019
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.03 KB | None | 0 0
  1. ### PARAMETER ###
  2. param n;
  3.  
  4. ### VARIABLE ###
  5. var y {1..n, 1..n, 1..n*n} binary;
  6. var constant integer;
  7.  
  8. ### CONSTRAINT ###
  9. subject to OneEach {i in 1..n, j in 1..n}: sum {k in 1..n*n} y[i,j,k] = 1;
  10. subject to AllDifferent {k in 1..n*n}: sum {i in 1..n, j in 1..n} y[i,j,k] <= 1;
  11.  
  12. s.t. Row1Sum {k in 1..n * n}: sum {j in 1..n} k * y [1, j, k] = constant;
  13. s.t. Row2Sum {k in 1..n * n}: sum {j in 1..n} k * y [2, j, k] = constant;
  14. s.t. Row3Sum {k in 1..n * n}: sum {j in 1..n} k * y [3, j, k] = constant;
  15. s.t. Col1Sum {k in 1..n * n}: sum {i in 1..n} k * y [i, 1, k] = constant;
  16. s.t. Col2Sum {k in 1..n * n}: sum {i in 1..n} k * y [i, 2, k] = constant;
  17. s.t. Col3Sum {k in 1..n * n}: sum {i in 1..n} k * y [i, 3, k] = constant;
  18.  
  19. s.t. q1: ((k*k)/2)*(k*k+1) = constant*n;
  20.  
  21. ### OBJECTIVE ###
  22. minimize Magic_Constant: constant;
  23.  
  24. data;
  25. param n:= 3;
  26. option solver cplex;
  27. solve;
  28.  
  29. display Magic_Constant;
  30.  
  31. for{i in 1..n}
  32. {
  33. for {j in 1..n}
  34. {
  35. printf "%3d ", sum {k in 1..n*n} k * y[j,i,k];
  36. }
  37. printf "\n";
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement