/* Maximum Flow Problem */ param N integer, > 0; /* # nodes */ param s integer, > 0; /* ID source */ param t integer, > 0; /* ID terminal */ set V := 1..N; set E within {V, V}; param u{E}; /* capacity of edge */ /* decision variables */ var x{E}, >= 0; /* Objective function */ maximize z: sum{j in V} (x[s, j]); s.t. INTERNAL{i in V: i != s && i != t}: sum{j in V} (x[i, j]) - sum{j in V} (x[j, i]) = 0; s.t. CAPACITY{i in V, j in V}: x[i, j] <= u[i, j]; end;