set ORIG; set DEST; set ROADS = ORIG cross DEST; param supply {ORIG} >= 0; param demand {DEST} >= 0; param cost {ROADS} >= 0; minimize Total_Cost; node origins {k in ORIG}: net_out = supply[k]; node destinations {k in DEST}: net_in = demand[k]; arc X {(i,j) in ROADS} >= 0, from origins[i], to destinations[j], obj Total_Cost cost[i,j];