mirror of
https://github.com/KevinMidboe/linguist.git
synced 2026-01-07 09:55:32 +00:00
Add support for the AMPL modeling and script language
This commit is contained in:
27
samples/AMPL/diet.mod
Normal file
27
samples/AMPL/diet.mod
Normal file
@@ -0,0 +1,27 @@
|
||||
|
||||
set NUTR ordered;
|
||||
set FOOD ordered;
|
||||
|
||||
param cost {FOOD} >= 0;
|
||||
param f_min {FOOD} >= 0, default 0;
|
||||
param f_max {j in FOOD} >= f_min[j], default Infinity;
|
||||
|
||||
param n_min {NUTR} >= 0, default 0;
|
||||
param n_max {i in NUTR} >= n_min[i], default Infinity;
|
||||
|
||||
param amt {NUTR,FOOD} >= 0;
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
var Buy {j in FOOD} integer >= f_min[j], <= f_max[j];
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
minimize Total_Cost: sum {j in FOOD} cost[j] * Buy[j];
|
||||
|
||||
minimize Nutr_Amt {i in NUTR}: sum {j in FOOD} amt[i,j] * Buy[j];
|
||||
|
||||
# --------------------------------------------------------
|
||||
|
||||
subject to Diet {i in NUTR}:
|
||||
n_min[i] <= sum {j in FOOD} amt[i,j] * Buy[j] <= n_max[i];
|
||||
Reference in New Issue
Block a user