Un problema de programación lineal
Un problema de programación lineal consta de una función objetivo lineal por maximizar o minimizar, sujeta a ciertas restricciones en la forma de igualdades o desigualdades lineales.
Como ejemplo de un problema de programación lineal en que la función objetivo debe maximizarse, considérese el siguiente problema de producción con dos variables El gran jero L op ez tiene 480 hectáreas en la q ue se p uede s emb rar ya sea tri go o maíz. El calcula que tiene 800 horas de trabajo dispon ible durante la estación crucial del verano. Dados márgenes de utilid ad y los requerimientos laborales mostr ados a la derecha, ¿Cu án t as he c t áre as de cad a u n o deb e p la n t ar pa ra ma x im iz ar su ut il id ad ? ¿C u ál es é s ta utili dad máxim a?
Maiz: Utilidad: $40 por hrs. Trabajo: 2hs por hrs. Trigo: Utilidad: $30 por por hrs. Trabajo: 1hs por hrs.
Solución: Como primer paso para la formulación matemática de este problema, se tabula la información dada (Tabla 1). Si llamamos hectáreas de maíz e y a las hectáreas de trigo. Entonces la ganancia total P , en dólares, está dada por :
x a las
P=40x+30y Que es la función objetivo por maximizar.
Maíz
Elementos disponibles
Trigo
Horas
2
1
Hectáreas
1
1
800
$40
$30
480
Utilidad por unidad
La cantidad total de tiempo par hectáreas para sembrar maíz y trigo está dada por 2x+y horas que no debe exceder las 800 horas disponibles para el trabajo. Así se tiene la desigualdad: 2x+y <800 En forma análoga, la cantidad de hectáreas disponibles está dada por x+y, y ésta no puede exceder las hectáreas disponibles para el trabajo, lo que conduce a la desigualdad.
Por último, si no queremos tener pérdidas, x y y no pueden ser negativa, de modo que x >0 y >0 En resumen, el problema en cuestión consiste en maximizar la función objetivo P=40x+30y sujeta a las desigualdades 2x+y <800 x+y <480 x >0 y >0
Sol uc ión Gr áfic a
Los problemas de programación lineal en dos variables tienen interpretaciones geométricas relativamente sencillas; por ejemplo, el sistema de restricciones lineales asociado con un problema de programación lineal bidimensional- si no es inconsistente- define una región plana cuya frontera está formada por segmentos de recta o semirrectas, por lo tanto es posible analizar tales problemas en forma gráfica. Si consideremos el problema del granjero López, es decir, de maximizar P = 40x+ 30y sujeta a 2x+y <800 x+y <480 x >0, y >0
(7)
El sistema de desigualdades (7) define la región plana S que aparece en la figura 5. Cada punto de S es un candidato para resolver este problema y se conoce
como solución factible. El conjunto S se conoce como conjunto factible. El objetivo es encontrar – entre todos los puntos del conjunto S- el punto o los puntos que optimicen la función objetivo P . Tal solución factible es una solución óptima y constituyen la solución del problema de programación lineal en cuestión. Como ya se ha observado, cada punto P(x,y) en S es un candidato para la solución óptima del problema en cuestión, por ejemplo, es fácil ver que el punto (200, 150) está en S y, por lo tanto, entra en la competencia. El valor de la función objetivo P en el punto (200,150) está dado por P=40(200)+30(150)=12.500 . Ahora si se pudiera calcular el valor de P correspondiente a cada punto de S, entonces el punto (o los puntos) en S que proporcione el valor máximo de P formará el conjunto solución buscado. Por desgracia, en la mayoría de los problemas, la cantidad de candidatos es demasiado grande o, como en este problema, es infinita. Así este método no es adecuado. Es mejor cambiar de punto de vista: en vez de buscar el valor de la función objetivo P en un punto factible, se asignará un valor a la función P y se buscarán los puntos factibles que correspondieran a un valor dado de P . Para esto supóngase que se asigna a P el valor 6000. Entonces la función objetivo se convierte en 40x+ 30y = 6.000, una ecuación lineal en x e y ; por lo tanto, tiene como gráfica una línea r ecta L1 en el plano. Está claro que a cada punto del segmento de recta dado por la intersección de la línea recta L1 y el conjunto factible S corresponde el valor dado 6000 de P . Al repetir el proceso, pero ahora asignando a P el valor de 12.000, se obtiene la ecuación 40x+ 30y =12.000 y la recta L2 lo cual sugiere que existen puntos factibles que corresponden a un valor mayor de P . Obsérvese que la recta L2 es paralela a L1, pues ambas tienen una pendiente igual a –4/3. Esto se comprueba con facilidad escribiendo las ecuaciones en explícita de la recta. En general, al asignar diversos valores a la función objetivo, se obtiene una familia de rectas paralelas, cada una con pendiente igual a – 4/3. Además, una recta correspondiente a un valor mayor de P está más alejada del origen que una recta con un valor menor de P . El significado es claro. Para obtener las soluciones óptimas de este problema, se encuentra la recta perteneciente a esta familia que se encuentra más lejos del
origen y que interseque al conjunto factible S. La recta requerida es aquella que pasa por el punto P(320,160) (Fig. 6), de modo que la solución de este problema está dado por x=320, y=160 ( es decir que el granjero López deberá sembrar 320 hectáreas de maíz y 160 hectáreas de trigo), lo que produce el valor máximo P=40(320)+30(160)=17.600 . No es casualidad que la solución óptima de este problema aparezca como vértice del conjunto factible S. De hecho, el resultado es consecuencia del siguiente teorema básico de la programación lineal, que se enuncia sin demostración. Teorema 1
Si en problema de programación lineal tiene una solución, entonces ésta debe aparecer en un vértice, o esquina, del conjunto factible S asociado con el problema. Además, si la función objetivo P se optimiza en dos vértices adyacente de S, entonces se optimiza en todos los puntos del segmento de recta que une estos vértices, en cuyo caso existe una infinidad de soluciones al problema
En nuestro ejemplo los únicos vértice del conjunto factible S son los puntos coordenados: (0,0); (400,0); (320,160); (0,480 ), llamados también puntos esquinas (Fig. 6) . Un ejemplo en el que tendríamos infinitas soluciones, es: VERTICE P=40x+40y (0,0)
0
(0,480)
19.200
(320,160)
19.200
(400,0)
16.000
Supóngase que la utilidad por hectáreas es de $40 para ambos, maíz y trigo. La tabla para este caso muestra la misma utilidad total en los vértices(0,480) y (320,160). Esto significa que la línea de utilidad en movimiento abandona la región sombreada por el lado determinado por esos vértices (adyacentes) , así todo punto en ese lado da una utilidad máxima. Todavía es válido, sin embargo, que la utilidad máxima ocurre en un vértice.
El teorema 1 dice que la búsqueda de las soluciones a un problema de programación lineal se puede restringir al examen del conjunto de vértices del conjunto factible S relacionado con el problema. Como un conjunto factible S tiene un número finito de vértices, el teorema sugiere que las soluciones a un problema de programación lineal se puedan hallar inspeccionando los valores de la función objetivo P en los vértices. Aunque el teorema 1 arroja un poco de luz acerca de la naturaleza de la solución de un problema de programación lineal, no indica cuándo tiene solución. El siguiente teorema establece ciertas condiciones que garantizan la existencia de la solución de un problema de programación lineal. Supóngase un problema de programación lineal con un conjunto factible S y una función objetivo P = ax + by. Teorema 2: Existencia de una 1. Si S está acotado, entonces P tiene u valor máximo y n valor mínimo en S. 2. Si S no está acotado y tanto a como b son no negativos, entonces P tiene un valor mínimo en S, si las restricciones que solución
definen a S incluyen las desigualdades x ³ 0 e y ³ 0. 3. Si S es el conjunto vacío, entonces el problema de programación lineal no tiene solución; es decir, P no tiene un valor máximo ni uno mínimo
El método utilizado para resolver el problema del granjero López recibe el nombre de método de las esquinas . Este método sigue un procedimiento muy sencillo para resolver los problemas de programación lineal basado en el teorema1. Mé to d o d e l as esquinas
1. Se grafica el conjunto factible. 2. Se encuentran las coordenadas de todas las esquinas (vértices) del conjunto factible. 3. Se evalúa la función objetivo en cada esquina. 4. Se halla el vértice que proporcione el máximo (mínimo) de la función objetivo. Si sólo existe un vértice con esta propiedad, entonces constituye una solución única del problema. Si la función objetivo se maximiza (minimiza) en dos esquinas adyacentes de S, entonces existe una inf inidad de soluciones óptimas dadas por los puntos del segmento de recta determinado por estos dos vértices.
Aplicaremos los conceptos antes emitidos al siguiente problema de nutrición, basado en los requerimientos, en el cual hay que minimizar la función objetivo.