
Una restricción en programación lineal es una limitación. Imagina que estás planeando algo y no puedes hacer todo lo que quieres. Tienes reglas que debes seguir. Eso es básicamente una restricción.
¿Qué limita una restricción?
Limita los valores que pueden tomar las variables de tu problema. Las variables son los elementos que puedes controlar, como la cantidad de productos que fabricas o el tiempo que dedicas a una tarea. Las restricciones aseguran que estas variables se mantengan dentro de un rango lógico y realista.
Ejemplo sencillo
Piensa en una panadería. Quieres hacer pasteles y galletas. Tienes 10 kg de harina. La harina es tu recurso limitado. Cada pastel necesita 2 kg de harina y cada galleta necesita 1 kg. Esta disponibilidad de harina es una restricción. No puedes usar más harina de la que tienes.
Must Read
Matemáticamente, esto se puede expresar como: 2x + y ≤ 10 (donde x es la cantidad de pasteles e y es la cantidad de galletas). Esta desigualdad es la restricción.
Tipos de restricciones
Las restricciones pueden ser de varios tipos:

- Desigualdades: Como en el ejemplo anterior (≤, ≥). Representan límites máximos o mínimos. Por ejemplo, "no puedes gastar más de $100" (≤ $100). O "debes producir al menos 50 unidades" (≥ 50).
- Igualdades: (=). Indican una condición que debe cumplirse exactamente. Por ejemplo, "debes usar exactamente 5 horas de trabajo".
- Restricciones de no negatividad: Las variables no pueden ser negativas. Por ejemplo, no puedes producir -5 pasteles. Se expresa como x ≥ 0, y ≥ 0, etc. Esto es común porque en muchos problemas las cantidades negativas no tienen sentido.
¿Por qué son importantes?
Las restricciones definen el conjunto factible, que es el conjunto de todas las soluciones posibles que cumplen con todas las reglas. Sin restricciones, el problema podría no tener una solución realista o significativa. La programación lineal busca la mejor solución (optimización) dentro de este conjunto factible.
En resumen, las restricciones son como las líneas dentro de las cuales debes colorear para resolver un problema de programación lineal. Aseguran que la solución sea viable y tenga sentido en el mundo real. Son esenciales para modelar situaciones reales de manera precisa.