Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Malucelli
Una mensa deve pianificare l’acquisto dei seguenti cibi, di cui sono indicati il costo (Euro/hg)
e la massima quantità disponibile (hg).
Cibo Costo Quantità
Pane 0.1 4
Latte 0.5 3
Uova 0.12 1
Carne 0.9 2
Dolce 1.3 2
Si vuole comporre una dieta che soddisfi il fabbisogno delle seguenti sostanze nutritive
# SETS
set I;
set J;
# PARAMS
param c{J};
param q{J};
param b{I};
param a{I,J};
data;
param: c q :=
Pane 0.1 4
Latte 0.5 3
Uova 0.12 1
Carne 0.9 2
Dolce 1.3 2
;
param b :=
Calorie 600
Proteine 50
Calcio 0.7
;
param a (tr):
Calorie Proteine Calcio :=
Pane 30 5 0.02
Latte 50 15 0.15
Uova 150 30 0.05
Carne 180 90 0.08
Dolce 400 70 0.01
;
Soluzione
Formulazione
Insiemi
• I: sostanze nutritive
• J: cibi
Parametri
• aij : quantità di i-esima sostanza nutritiva contenuta in un’unità del j-esimo cibo, con i ∈ I
ej∈J
Variabili decisionali
Modello
X
min cj xj (costo)
j∈J
s.t.
X
aij xj ≥ bi i∈I (fabbisogno)
j∈J
xj ≤ qj j ∈ J (quantità massima)
xj ≥ 0 j ∈ J (var. non negative)
# SETS
set I;
set J;
# PARAMS
param c{J};
param q{J};
param b{I};
param a{I,J};
# VARS
# OBJECTIVE FUNCTION
minimize costo:
sum{j in J} c[j] * x[j];
# CONSTRAINTS
model dieta.mod
data dieta.dat
option solver cplex;
solve;
display x;
Soluzione