Costo de materia prima por producto
param costo_materia_prima {PRODUCTOS};
Costo de mano de obra por producto
param costo_mano_obra {PRODUCTOS};
Demanda de cada producto en cada periodo
param demanda {PRODUCTOS, PERIODOS};
Presupuesto total disponible
param presupuesto_total;
Conjunto de productos
set PRODUCTOS;
Conjunto de periodos
set PERIODOS;
Producción del producto en cada periodo
var produccion {PRODUCTOS, PERIODOS} >= 0;
Inventario del producto al final de cada periodo
var inventario {PRODUCTOS, PERIODOS} >= 0;
Función objetivo: maximizar la utilidad total
maximize utilidad_total: sum {p in PRODUCTOS, t in PERIODOS} (precio_venta[p] * demanda[p,t] - costo_materia_prima[p] * produccion[p,t] - costo_mano_obra[p] * produccion[p,t]) ;
Restricciones de inventario inicial
s.t. restr_inventario_inicial {p in PRODUCTOS}: inventario[p,1] = 0;
Restricciones de balance de producción e inventario
s.t. restr_balance {p in PRODUCTOS, t in 2…5}:
produccion[p,t] + inventario[p,t-1] - inventario[p,t] = demanda[p,t];
Restricción de presupuesto
s.t. restr_presupuesto: sum {p in PRODUCTOS, t in PERIODOS} (costo_materia_prima[p] * produccion[p,t] + costo_mano_obra[p] * produccion[p,t]) <= presupuesto_total;
Solución
solve;
============================
Conjunto de productos
set PRODUCTOS := Producto1 Producto2 Producto3 Producto4 Producto5 Producto6 Producto7 Producto8;
Conjunto de periodos
set PERIODOS := Periodo1 Periodo2 Periodo3 Periodo4 Periodo5;
Costo de materia prima por producto
param costo_materia_prima :=
Producto1 10
Producto2 20
Producto3 15
Producto4 25
Producto5 30
Producto6 18
Producto7 23
Producto8 28;
Costo de mano de obra por producto
param costo_mano_obra :=
Producto1 5
Producto2 7
Producto3 6
Producto4 8
Producto5 10
Producto6 7
Producto7 9
Producto8 11;
Demanda de cada producto en cada periodo
param demanda :=
Periodo1 Periodo2 Periodo3 Periodo4 Periodo5 :=
Producto1 100 120 80 90 110
Producto2 80 90 100 110 120
Producto3 50 60 70 80 90
Producto4 70 80 90 100 110
Producto5 30 40 50 60 70
Producto6 50 60 70 80 90
Producto7 90 100 110 120 130
Producto8 60 70 80 90 100;
Presupuesto total disponible
param presupuesto_total := 50000;
=================
Cargar el modelo
model modelo.mod;
Cargar los datos
data datos.dat;
Resolver el modelo
solve;
Hi @Ruy_Lopez,
There is a “*” next to each of the file names in the tabs. Did you save the files? If not you may be loading empty files and that would give you the error “no variables declared”.