Desarrollo de la Actividad: Creación y Resolución de un Problema con
Lingo
La evaluación se realizará de forma individual y consiste en lo siguiente: cada estudiante
deberá crear un problema de optimización original, formularlo y resolverlo utilizando la
programación compacta de Lingo. El problema debe cumplir con las siguientes
especificaciones:
● Originalidad: El problema debe ser una creación propia y no un ejemplo visto en clase.
Puedes basarlo en un problema de la vida real, como la planificación de una dieta, la
mezcla de ingredientes, la gestión de inventario, o la asignación de recursos.
● Complejidad: El modelo debe contener al menos tres variables de decisión y al
menos tres restricciones.
● Enfoque: El problema debe ser un caso de Programación Lineal, con una función
objetivo clara (maximizar o minimizar).
● Programación Compacta: Es obligatorio el uso de la sintaxis de programación
compacta en Lingo, incluyendo los bloques SETS y DATA, así como el uso de los bucles
@FOR y @SUM.
Pasos para la Evaluación:
1. Planteamiento del Problema:
○ Escribe un párrafo claro y conciso que describa tu problema. Define el objetivo
(maximizar ganancia, minimizar costo, etc.), los recursos disponibles y las
limitaciones.
○ Ejemplo: "Una fábrica de alimentos para perros necesita crear una nueva
mezcla usando 4 ingredientes diferentes. Cada ingrediente tiene un costo y un
contenido vitamínico específico. La mezcla final debe cumplir con un mínimo de
3 vitaminas diferentes. La fábrica quiere minimizar el costo de la mezcla..."
2. Definición de Variables, Parámetros y Restricciones:
○ Identifica y define las variables de decisión de tu problema (por ejemplo, X_i =
cantidad a producir del producto i).
○ Identifica los parámetros (datos constantes) que usarás y las dimensiones de
estos. Por ejemplo, el costo de cada ingrediente, los requerimientos mínimos de
cada vitamina, etc.
○ Escribe la función objetivo y todas las restricciones del problema de manera
matemática.
3. Formulación en Lingo:
○ Traduce tu modelo al lenguaje de Lingo usando la programación compacta.
○ Define los conjuntos de datos en el bloque SETS (por ejemplo, INGREDIENTES,
VITAMINAS).
○ Asigna los valores a los parámetros en el bloque DATA.
○ Escribe la función objetivo y las restricciones usando los bucles @FOR y la
función @SUM.
4. Resolución y Documentación:
○ Ejecuta el código en Lingo y obtén la solución.
○ Documenta tu trabajo en un informe simple que incluya:
■ El planteamiento del problema.
■ La formulación matemática.
■ El código de Lingo.
■ La solución final (Objective Value y valores de las variables de
decisión).
■ Una breve interpretación de la solución.
Interpretación de la Solución
Una vez que obtengas la solución de Lingo, es crucial ir más allá de los números y entender su
significado en el contexto de tu problema. Tu interpretación debe incluir:
● Valores de las variables: ¿Qué significa la cantidad que obtuviste para cada variable
de decisión? Por ejemplo, si el valor de la variable X_1 es 50, explica que la cantidad
óptima del producto 1 a producir es 50 unidades.
● Valor de la función objetivo: ¿Qué representa el valor final de la función objetivo? Por
ejemplo, si el valor de la función objetivo es 1,200, explica que la máxima utilidad
posible es S/1,200.
● Análisis de holguras (Slacks): ¿Qué restricciones tienen holgura y qué significa esto?
Si un recurso tiene holgura, explica que no se está utilizando por completo y que no es
un factor limitante para la solución óptima.
● Análisis de precios duales (Dual Price): Si las restricciones están agotadas, ¿cuál es
su precio dual? Explica qué representa este valor en términos de la mejora en la función
objetivo por cada unidad adicional del recurso.
PREGUNTA SORPRESA
- Agregar una variable de decisión más y una restricción más. Repita los pasos e
interprete.
Criterio Punto Descripción
s
Planteamiento del 2 Se presenta un problema original, claro y conciso,
Problema que se puede resolver con Programación Lineal.
Casos previos 3 Incluye en su informe los casos previos
presentados en clase (Semana 1, 2, 3, 4 y 5).
Formulación en Lingo 3 El modelo está escrito correctamente en Lingo,
(Compacta) utilizando la sintaxis de programación compacta
con SETS, DATA, @FOR y @SUM.
Resolución y 4 La solución en Lingo es correcta y se presentan los
Solución e valores óptimos de la función objetivo y de las
interpretación variables.
Pregunta sorpresa 8 Se presenta una pregunta sorpresa que reta al
estudiante a conocer su caso. Se explicará en
clase.
Puntuación Total 20 Nota final del estudiante.