Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Unidad de Aprendizaje N° 2
Parte III
Programación Lineal
2020
Introducción
En los siglos XVII y XVIII, grandes matemáticos como Newton, Leibnitz, Bernoulli y Lagrange se
ocuparon de obtener máximos y mínimos condicionados a determinadas funciones.
Alrededor de 1800, el matemático francés Fourier fue el primero en intuir los métodos que actualmente
se denominan de “programación lineal”.
Durante el siglo XX (en la década de 1940), aparecieron nuevos estudios relacionados con los métodos
de la actual programación lineal. Los economistas Koopmans y Kantarovitch contribuyeron a la teoría
de la óptima distribución de recursos (organización y planificación de la producción, problemas de
transporte, etc.)
En paralelo a tales avances, se desarrollaron técnicas que emplean la computación y los ordenadores
para resolver y simplificar los problemas que se estaban gestando. En 1947, George B. Dantzig,
matemático estadounidense, formaliza el enunciado estándar de un problema de programación lineal.
Estos problemas involucran la optimización (maximizar o minimizar) de una función llamada función
objetivo, cuyas variables se encuentran sujetas a determinadas limitaciones denominadas restricciones.
Si tanto las restricciones como la función objetivo son lineales, el problema se denomina de
programación lineal.
Nos centraremos en este tema en aquellos problemas simples de programación lineal, los que tienen
solamente 2 variables, problemas bidimensionales.
Para sistemas de más variables, el procedimiento no es tan sencillo y se resuelven por el llamado
método Simplex (ideado por G. B. Dantzig, en 1951). Los problemas de este tipo, en el que intervienen
gran número de variables, y se resuelven usando ordenadores no serán tratados en ésta asignatura.
La recta divide al plano en dos regiones, llamadas semiplanos, una de las cuales es la solución de la
inecuación. Para saber qué parte es, hay dos procedimientos:
Observando el dibujo vemos que la recta corta, en la ordenada al origen, al eje “y” en dos partes.
La solución de la inecuación será aquel semiplano que contenga los puntos del eje “y”, en los cuales la
componente y sea mayor que la ordenada al origen, es decir, la parte superior.
2. Se toma un punto cualquiera que no pertenezca a la recta, por ejemplo el punto P= (1,2).
Para que dicho punto sea solución, se tendría que cumplir la desigualdad, por lo que sustituimos en la
inecuación inicial el (1,2):
2.1 + 3.2 ≥ −3, 𝑒𝑠 𝑑𝑒𝑐𝑖𝑟, 8 ≥ −3
Como esta última desigualdad es evidentemente cierta, concluimos que el punto P= (1,2) es solución y
por lo tanto el semiplano que contiene al punto P es la solución, es decir el semiplano superior, como
habíamos obtenido antes.
Cualquiera de los procedimientos es válido si se realiza con corrección.
Recuerda: La representación geométrica del conjunto solución de una inecuación lineal en dos variables
es un semiplano.
2𝑥 + 3𝑦 ≥ −3
{ 2𝑥 −𝑦−9≤0
2𝑥 − 5𝑦 − 5 ≥ 0
2𝑥 + 3𝑦 = −3 (𝑟𝑒𝑐𝑡𝑎 𝑟)
{2𝑥 − 𝑦 − 9 = 0 (𝑟𝑒𝑐𝑡𝑎 𝑠)
2𝑥 − 5𝑦 − 5 = 0 (𝑟𝑒𝑐𝑡𝑎 𝑡)
2𝑥 + 3𝑦 = −3 2𝑥 + 3𝑦 = −3
{ → {
2𝑥 − 𝑦 − 9 = 0 −4𝑦 = 12
Ejercicio 2: Resolver los sistemas de inecuaciones lineales siguientes encontrando los vértices de las
regiones que sean solución:
𝑥+𝑦 >2
a) {
−2𝑥 + 𝑦 ≥ 0
Solución: La solución en forma gráfica, resulta de la intersección del semiplano 𝑥 + 𝑦 > 2 con el
semiplano −2𝑥 + 𝑦 ≥ 0. En la Figura 4, los puntos del conjunto solución están representados por la
región sombreada con puntitos naranja. Se puede ver que el conjunto solución no es acotado.
Figura 6: x ≤ −2 Figura 7: y ≤ 1
Lo mismo ocurre con y ≤ 1, que sería en este caso la parte inferior a la recta horizontal y = 1, ver Figura
7.
En el caso particular de que sea x ≥ 0 o y ≥ 0, las rectas coincidirán con los ejes de coordenadas.
Ejercicio 3: Resolver los sistemas de inecuaciones lineales siguientes, encontrando los vértices de las
regiones que sean solución:
La programación lineal es una herramienta aplicable a diversos campos; en la actualidad, las empresas
enfrentan problemas de todo tipo, mucho de los cuales ponen en riesgo su estabilidad económica y
permanencia en el mercado, por lo que los empresarios buscan soluciones factibles, eficientes y rápidas,
dichos procesos son manejados mediante la programación lineal, que plantea actividades para lograr
mejores resultados entre las alternativas de solución. (Marín y Maya, 2016)
La programación lineal es una técnica de optimización matemática. Por técnica de optimización, se
concibe la idea de un método que intenta maximizar o minimizar un objetivo establecido, como por
ejemplo la maximización de utilidades o la reducción de los costos. La programación lineal constituye
un subconjunto de un área mayor denominada programación matemática (Budnick.2007)
A la programación lineal, se la considera como una herramienta de fundamental importancia, pues,
mediante su aplicación, se obtienen soluciones cuantitativas a problemas de todo tipo, buscando
mejorar el resultado y una óptima toma de decisiones.
En cualquier problema de programación lineal es puntual tomar ciertas decisiones, las cuales se
representan mediante variables de decisión xj utilizadas en el modelo de programación lineal. La
función objetivo es el objetivo que en varios casos puede ser considerado el rendimiento total, el nivel
de utilidades, los costos generados, niveles de contaminación, participación en el mercado, la
rentabilidad sobre una inversión. Al conjunto de restricciones, se les considera como las condiciones
que debe cumplir o satisfacer los diferentes niveles de las variables de decisión. La resolución de
problemas de programación lineal se lleva a cabo mediante el desarrollo de tres fases:
• Planteamiento del modelo
• Resolución del problema
• Análisis económico de los resultados.
En un problema de programación lineal con dos variables x e y, se trata de optimizar (hacer máxima o
mínima, según el caso) una función llamada función objetivo, de la forma:
𝐹(𝑥, 𝑦) = 𝐴. 𝑥 + 𝐵. 𝑦 + 𝐶
Sujeta a una serie de restricciones dadas mediante un sistema de inecuaciones lineales del tipo:
𝑎1 𝑥 + 𝑏1 𝑦 ≤ 𝑐1
𝑎 𝑥 + 𝑏1 𝑦 ≤ 𝑐2
{ 2
⋮
𝑎𝑚 𝑥 + 𝑏𝑚 𝑦 ≤ 𝑐𝑚
Si existe una solución única que optimice la función objetivo F(x, y), ésta se encuentra en un punto
extremo (vértice), de la región factible acotada (región convexa), nunca en el interior de dicha región.
Si la función objetivo toma el mismo valor óptimo en dos vértices, también toma idéntico valor en todos
los puntos del segmento que determinan.
En el caso de que la región factible no sea acotada, la función objetivo no alcanza necesariamente un
valor óptimo concreto, pero si lo hace, éste se encuentra en uno de los vértices de la región.
Los puntos del plano que cumplen el sistema de desigualdades forman un recinto convexo acotado
(poligonal) o no acotado, llamado región factible del problema.
Propiedad:
Si hay una única solución óptima, ésta se encuentra en un vértice de la región factible, y si hay infinitas
soluciones óptimas, se encontrarán en un lado de la región factible.
Es posible que no haya solución óptima, pues cuando el recinto es no acotado, la función objetivo puede
crecer o decrecer indefinidamente.
Así como los sistemas de ecuaciones lineales se pueden caracterizar de acuerdo con el tipo de
soluciones, los problemas de programación lineal también.
Se puede mostrar que siempre es posible, matemáticamente, arribar a alguno de los cuatro tipos de
solución siguiente:
𝐶𝑜𝑛 𝑠𝑜𝑙𝑢𝑐𝑖ó𝑛 ú𝑛𝑖𝑐𝑎
𝐹𝑎𝑐𝑡𝑖𝑏𝑙𝑒𝑠 { 𝐶𝑜𝑛 𝑠𝑜𝑙𝑢𝑐𝑖ó𝑛 𝑚ú𝑙𝑡𝑖𝑝𝑙𝑒
𝑇𝑖𝑝𝑜𝑠 𝑑𝑒 𝑠𝑜𝑙𝑢𝑐𝑖𝑜𝑛𝑒𝑠 𝑑𝑒 𝑢𝑛 𝑝𝑟𝑜𝑏𝑙𝑒𝑚𝑎 𝑑𝑒 𝑝𝑟𝑜𝑔𝑟𝑎𝑚𝑎𝑐𝑖ó𝑛 𝑙𝑖𝑛𝑒𝑎𝑙 {
𝐶𝑜𝑛 𝑠𝑜𝑙𝑢𝑐𝑖ó𝑛 𝑛𝑜 𝑎𝑐𝑜𝑡𝑎𝑑𝑎
𝑁𝑜 𝑓𝑎𝑐𝑡𝑖𝑏𝑙𝑒𝑠
Forma geométrica
En este caso se representa el vector director de la recta que viene dada por la ecuación de la función
objetivo, F(x, y) = A · x + B · y+ C, que hay que maximizar o minimizar.
El vector director de la recta k= A· x + B · y + C viene dado por 𝑣⃗ = (−B, A). Además, como lo único que nos
importa es la dirección del vector y no su módulo (longitud), podemos dividir a las coordenadas del
vector si los números son muy grandes, puesto que vectores con coordenadas proporcionales tienen la
misma dirección.
Posteriormente, se trazan rectas paralelas a este vector que pasen por los vértices de la región factible
(si es acotada), o por todo el borde de la región factible (cuándo no es acotada) y se observa en qué
vértice la función F se hace máxima (o mínima) sin más que tener en cuenta cuál de las rectas tiene
mayor (o menor) ordenada en el origen, es decir, qué recta corta en un punto mayor o menor al eje y.
2𝑥 + 3𝑦 ≥ −3
{ 2𝑥 − 𝑦 − 9 ≤ 0
2𝑥 − 5𝑦 − 5 ≥ 0
Se trata ahora de trazar paralelas al vector que pasen por los vértices anteriores, es decir:
Figura 12: Región factible y vector de la función objetivo y rectas paralelas que pasan por los vértices.
Se observa gráficamente que, de las tres paralelas trazadas, la que corta al eje y en un punto mayor es la
que pasa por el punto (5,1), que por tanto será la solución óptima al problema de máximos planteado.
Forma algebraica
Consiste, simplemente, en sustituir cada uno de los vértices de la región en la función objetivo. La
solución óptima vendrá dada por aquel que tome el mayor (o menor) valor.
Trabajando con la misma región factible que en el caso anterior.
Los vértices eran los puntos (0,-1), (5,1) y (3,-3).
De esta forma sustituyendo cada uno de los vértices de la región factible en la función objetivo, resulta:
F (5, 1) = 2000 · 5 + 5000 · 1 = 10000 + 5000 = 15000
F (0, −1) = 2000 · 0 + 5000 · (−1) = 0 − 5000 = −5000
F (3, −3) = 2000 · 3 + 5000 · (−3) = 6000 − 15000 = −9000
3𝑥 + 2𝑦 ≥ 12
4𝑥 + 5𝑦 ≥ 29
b. 𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝐹(𝑥, 𝑦) = 12𝑥 + 10 𝑦 𝑠𝑢𝑗𝑒𝑡𝑜 𝑎: {
𝑥≥0
𝑦≥0
4𝑥 + 2𝑦 ≤ 6
7𝑥 + 8𝑦 ≤ 28
c. 𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝐹(𝑥, 𝑦) = 120𝑥 + 80 𝑦 𝑠𝑢𝑗𝑒𝑡𝑜 𝑎: {
𝑥≥0
𝑦≥0
4𝑥 + 5𝑦 ≥ 20
d. 𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝐹(𝑥, 𝑦) = 12𝑥 + 8 𝑦 𝑠𝑢𝑗𝑒𝑡𝑜 𝑎: {7𝑥 + 2𝑦 ≥ 14
𝑥≤𝑦
Puede ocurrir que la solución óptima no sea única, e incluso que no exista, como en los ejemplos
siguientes:
𝑥 + 𝑦 ≥ 14
2𝑥 + 3𝑦 ≥ 36
Ejemplo 3: Maximizar G(x, y)=3x+4y sujeta a las restricciones: {
4𝑥 + 𝑦 ≥ 16
𝑥 − 3𝑦 ≤ 0
Si representamos la región factible:
2 40
Los vértices serán: 𝐴 = (3 , 3
), 𝐵 = (6,8) y 𝐶 = (12,4)
𝑥+𝑦 ≥5
𝑦 ≤𝑥+3
Ejemplo 4: Minimizar G(x, y)=3x+3y sujeta a las restricciones: 3𝑦 − 𝑥 ≥ −1
𝑦 + 2𝑥 ≤ 16
{ 4𝑦 + 𝑥 ≤ 22
La región factible, en este caso es:
A =G (1, 4) = 3 + 12 = 15
B = G (2, 5) = 6 + 15 = 21
C =G (6, 4) = 18 + 12 = 30
D = G (7, 2) = 21 + 6 = 27
E = G (4, 1) = 12 + 3 = 15
Observamos que el valor mínimo se toma en A y en E, y por tanto en todos los puntos comprendidos
entre ellos, es decir, hay infinitas soluciones.
Ejemplo 5:
Una fábrica de muebles fabrica dos tipos de sillones, S1 y S2. La fábrica cuenta con dos secciones;
carpintería y tapicería.
Hacer un sillón de tipo S1 requiere 1 hora de carpintería y 2 de tapicería, mientras que uno de tipo S2
requiere 3 horas de carpintería y 1 de tapicería.
El personal de tapicería trabaja un total de 80 horas, y el de carpintería 90.
Las ganancias por las ventas de S1 y S2 (unidad) son, respectivamente 600 y 300 pesos. Calcular
cuántos sillones de cada tipo hay que hacer para maximizar las ganancias.
Este es un problema típico en el que hay que usar las técnicas de programación lineal. Intentaremos
seguir el siguiente esquema:
La función beneficio a maximizar será: B(x, y) = 600 · x + 300 · y, que es la función objetivo.
y además:
𝑥≥0
𝑦≥0
Encontramos por tanto sólo 11 soluciones que son las de la tabla. En cualquiera de estas soluciones el
beneficio es de 24000 pesos, que es el máximo bajo las condiciones del problema.
Es uno de los problemas que dieron lugar a la programación lineal. Un ejemplo típico sería el siguiente:
Ejemplo 6: Una empresa tiene 2 plantas de producción (P1 y P2) de cierto artículo que vende en 3
ciudades (C1, C2 y C3). En P1 produce 5000 unidades, y en P2, 7000 unidades. De estas 12000 unidades
las vende así: 3500 es C1, 4000 en C2 y 4500 en C3. Los costes de transporte, en pesos por unidad de
producto, desde las plantas de producción a las ciudades son:
Determina el número de artículos que debe enviar la empresa desde cada planta a cada ciudad para que
los costes de transporte sean mínimos. Para problemas de este tipo necesitamos una nueva variable.
Sea x: unidades de P1 a C1, y: unidades de P1 a C2 y z: unidades de P1 a C3.
Tiene que verificarse entonces que x + y + z = 5000.
Si desde P1 a C1 se envían x unidades, como en C1 necesitan 3500, desde P2 se mandarían a C1: 3500 −
x. Razonando del mismo modo con y y z, se obtiene la tabla:
Hemos sustituido z por 5000 − y − x, porque x + y + z = 5000 y así transformamos las 3 incógnitas en sólo
2.
Para obtener las restricciones imponemos que cada cantidad ha de ser mayor o igual que cero, es decir:
𝑥≥0
3500 − 𝑥 ≥ 0
𝑦≥0
4000 − 𝑦 ≥ 0
5000 − 𝑥 − 𝑦 ≥ 0
−500 + 𝑥 + 𝑦 ≥ 0
Ejercicio 5:
Una empresa fabrica dos productos X e Y. Para cada uno es necesario emplear tres máquinas: A, B y C.
Para fabricar una unidad del producto X, se debe usar 3 horas la máquina A, 1 hora la máquina B y una
hora la C. Para fabricar una unidad del producto Y se necesitan 2 horas en A, 2 horas en B y 1 hora en C.
La utilidad del producto X es $500 por unidad, y del producto Y es $350 por unidad;
La máquina A esta disponible 24 horas diarias, sin embargo B se puede usar sólo 16 horas y la C tan solo
9 horas.
Suponiendo que las máquinas están disponibles cuando sea necesario, sujetas a las restricciones
mencionadas y al tiempo total de trabajo, calcule el número de unidades de cada producto que se deben
fabricar cada día para maximizar las utilidades.
Solución: En la tabla siguiente se resumen los datos que aparecen en el enunciado del problema.
3𝑥 + 2𝑦 ≤ 24
𝑥 + 2𝑦 ≤ 16
𝑥+𝑦 ≤9
𝑥≥0
{ 𝑦 ≥0
Como la producción de cada unidad del producto X proporciona una ganancia $500 y cada unidad del
producto Y de $350, la utilidad que se obtiene produciendo x unidades de X e y unidades de Y es:
La función objetivo del problema es: P = 500 x + 350 y. El vector director de la recta que viene dada por
función objetivo es k=500. x +350. y, es 𝑣⃗= (-3.5, 5) que es proporcional al vector (-350, 500).
El máximo debe encontrarse en uno de los vértices de la región factible, se observa en la gráfica que el
máximo se logra en el vértice D= (6,3)
La utilidad máxima es de $4.050 y se obtiene con una producción diaria de 6 unidades del producto X y
3 del producto Y.
2) Calcule el valor máximo y el valor mínimo de la función objetivo en los siguientes sistemas de
inecuaciones.
𝑥 − 2𝑦 ≤ 10
2𝑥 + 𝑦 ≤ 10
a) F(x, y)= 7x+3 y; {
𝑥≥0
𝑦≥0
Respuesta: Vértices: A = (0, 0), B = (5, 0) y C = (0, 10); Valor mínimo: 0; Valor máximo: 35
2𝑥 + 3𝑦 ≥ 12
𝑥 + 3𝑦 ≥ 9
b) F(x, y)= 2x+6y; {
𝑥≥0
𝑦≥0
Respuesta: Valor mínimo: 18, en todos los segmentos de la recta que une los puntos P= (3,2) y Q= (9,0)
3) Trace la región factible determinada por las restricciones dadas e identifique sus vértices. Calcule los
valores máximo y mínimo de la función objetivo.
3x − 4y ≥ −12
2x + 3y ≥ 12
3x + 2y ≤ 24
2x + 5y ≥ 18
a) F(x, y)=3x+y; 3x − y ≤ 15 b) F(x, y)=3x+6y; {
x≥ 0
x≥0
y≥0
{y ≥ 0
x − 2y ≥ −8 3x + y ≥ 3
c) F(x, y)=4x-2y; {7x − 2y ≤ 28 d) F(x, y)=6x+y; {x + 5y ≤ 15
x+y≥4 2x + y ≤ 2
Respuestas:
a) Vértices: A = (0, 0), B = (5, 0), C = (6, 3), D = (4, 6), E = (0, 3); Valor mínimo: 0; Valor máximo: 21
b) Región abierta. Vértices que puede encontrar: A = (9, 0), B = (1.5, 3), C = (0, 4); Valor mínimo: 22.5
4) Trace la región factible determinada por las restricciones dadas e identifique sus vértices. Calcule los
valores máximo y mínimo de la función objetivo.
y≤3
5x + 4y ≤ 30 −2x + 3y ≤ 12
4x + 3y ≤ 24
x≤2 x+y ≥ 6
x≤5
a) F(x, y)=x+2y; 5x − 2y ≥ 0 b) F(x, y)=6x+y; c) F(x, y)=3x+2y; x ≤ 3
𝑥 + 2𝑦 ≥ 2
x≥0 x≥0
x≥0
{y ≥ 0 {y ≥ 0
{y ≥ 0
Respuestas:
a) Vértices: A = (0, 0), B = (2, 0), C = (2, 5); Valor mínimo: 0; Valor máximo: 12
4 15
b) Vértices: A = (2, 0), B = (2, 5), C = (5, 3), D = ( 4 , 3), E = (0, 3) y F = (0, 1); Valor mínimo: 1; Valor
máximo: 31.33
6 24
c) Vértices: A = (3, 3), B = (3, 6), C = ( , ); Valor mínimo: 6; Valor máximo: 9
5 5