Está en la página 1de 11

Anexo Tema 8.

Ejemplo Problema de Programaci on Lineal


Una empresa que encuaderna libros de dos formas, en espiral y con encuadernaci on dura pegada. La empresa dispone de una impresora que imprime las p aginas de todos los libros. Adem as hay dos m aquinas de encuadernaci on: la m aquina 1 encuaderna los que van en espiral, y la m aquina 2 los que van con encuadernaci on pegada. Los que van en encuadernaci on pegada son los libros m as nos, y tardan en imprimirse 2 horas cada uno. Los que van en encuadernaci on en espiral tardan 3 horas en imprimir. La impresora puede estar 18 horas al d a imprimiendo. En encuadernar un libro con espiral se tarda una hora, y el personal encargado de la m aquina de encuadernaci on 1 tiene una dedicaci on a esta tarea de 4 horas al d a. En encuadernar un libro pegando la pasta la m aquina de encuadernaci on 2 tarda dos horas por unidad. Esta m aquina est a disponible 12 horas diarias. Por cada libro se obtienen 3 y 5 unidades monetarias de benecio, si es de encuadernaci on en espiral o pegada respectivamente. La empresa desea saber cu antos libros debe de imprimir y encuadernar cada d a de cada tipo para maximizar benecios (si un libro se imprime, se encuaderna ese mismo d a).

Representaci on del modelo


1. Variables: x1 = n umero de libros con encuadernaci on en espiral x2 = n umero de libros con encuadernaci on pegada 2. Funci on objetivo: Se desea maximizar los benecios: 3 u.m. por libro con encuadernaci on en espiral, 5 u.m. por libro con encuadernaci on pegada: Z = 3x1 + 5x2 3. Restricciones Tenemos los siguientes datos dados en horas/dia: 1

Tipo encuadernaci on Espiral Impresora M aquina 1 M aquina 2 3 1 0 Pegada 2 0 2

Disponibilidad m aquinas 18 4 12

Por lo tanto las restricciones del problema son: 3x1 x1 2x2 x1 0; x2 0 4. Modelo de Programaci on Lineal M ax 3x1 + 5x2 s.a. 3x1 x1 2x2 x1 0; x2 0 + 2x2 18 4 12 + 2x2 18 4 12

Notar que el modelo es v alido para valores de x1 , x2 reales, y la soluci on puede estar dada para valores no naturales de las variables, aunque este caso sencillo est a preparado para dar una soluci on con valores naturales como se ver a. El caso de querer resolver el problema para valores enteros de x1 y x2 es m as complicado (aunque aparentemente parezca lo contrario), ya que es un problema de programaci on lineal entera.

Resoluci on gr aca del problema


La resoluci on gr aca s olo puede realizarse de forma sencilla para problemas con dos variables x1 , x2 .

1. Representaci on de regi on de factibilidad: 2

Figura 1: Restricci on x1 4 Vamos a representar cada una de las restricciones. Se har a en el cuadrante positivo del plano, ya que se tiene que x1 0; x2 0. La restricci on x1 4 se muestra en la gura 1. Todos los puntos a la derecha de esta recta no verican dicha restricci on. La restricci on 2x2 12 se muestra en la gura 2. Todos los puntos por encima de esta recta no verican dicha restricci on. La restricci on 3x1 + 5x2 18 se muestra en la gura 3. Todos los puntos por encima de esta recta no verican dicha restricci on.

Figura 2: Restricci on 2x2 6 Todos los puntos dentro del poliedro formado por las rectas dibujadas verican las restricon factible. Siempre ser a convexo ciones del problema (ver gura 4. El poliedro es la regi (para cualesquiera dos puntos, el segmento que los une estar a completamente dentro del 3

Figura 3: Restricci on 3x1 + 2x2 18 poliedro).

Figura 4: Regi on de factibilidad 2. Representaci on de la funci on objetivo: Seg un los valores de x1 y x2 que veriquen las restricciones, la funci on objetivo ser a 3x1 + 5x2 = Z Si para cada valor de k representamos la recta que forma funci on objetivo se observa c omo var a dicha funci on. En la gura 5 se han representado las rectas 3x1 + 5x2 = 10 y 3x1 +5x2 = 20. Todos los puntos de la regi on factible que est an sobre la recta 3x1 +5x2 = 10 tienen como funci on objetivo Z = 10. La funci on objetivo se puede representar como todas las rectas paralelas a 3x1 + 5x2 = Z 3. Optimo 4

Figura 5: Funci on objetivo 3x1 + 5x2 = 10 y 3x1 + 5x2 = 20 A partir de la gura 5 se puede observar que el m aximo de la funci on objetivo se alcanzar a para el punto de la regi on factible donde Z sea mayor (ver gura 6).

Figura 6: Optimo: (2,4) con Z = 36 Este optimo es un v ertice del poliedro. En general, el optimo de un problema de programaci on lineal se alcanzar a en uno de los v ertices de la regi on de factibilidad. En el caso en el que la funci on objetivo se represente mediante rectas paralelas a alguna de las aristas, se tendr a que todos los puntos de dicha arista ser an optimos, por lo que este no es u nico como en nuestro ejemplo. 4. Interpretaci on: El procedimiento optimo para maximizar los benecios de la empresa de encuadernaci on es imprimir y encuadernar en espiral 2 libros diarios, e imprimir y encuadernar con pegamento 5

6 libros diarios, con unos benecios de 36 unidades monetarias diarias.

Resoluci on por el m etodo de exploraci on de aristas


Vamos a resolver el modelo de programaci on lineal dado para este problema sin usar la representaci on gr aca. M ax 3x1 + 5x2 s.a. 3x1 x1 2x2 x1 0; x2 0 + 2x2 18 4 12

Corresponde a un modelo con forma matricial M ax Z = cxt s.a. Axt bt x0 3 2 18 x1 Con A = 1 0; bt = 4 , c = (3, 5), xt = x2 0 2 12 1. Modelo en forma est andar. M in 3x1 5x2 s.a. r1: r2: 3x1 x1 + 2x2 + h1 + h2 + h3 = = = 18 4 12

r3: 2x2 x1 0; x2 0; h1 0; h2 0; h3 0

2. Primera forma can onica del modelo, variables b asicas y variables no b asicas. Coincide con la forma est andar ya que la matriz identidad est a en el modelo anterior, no ha hecho falta hacer ninguna transformaci on para obtenerla. 6

Se observa que el sistema de ecuaciones formado por las restricciones tiene 3 ecuaciones con 6 inc ognitas. Es un sistema compatible indeterminado (innitas soluciones). De todas las soluciones que verican el sistema, buscamos la optima (la que proporcione menor valor de la funci on objetivo, ya que estamos minimizando). Las variables b asicas son aquellas que est an multiplicadas por la matriz identidad, se observa en el modelo que xB = (h1 , h2 , h3 ). las variables no b asicas son las restantes xD = (x1 , x2 ). 3. Ecuaciones param etricas para la forma can onica anterior: Aristas y v ertices. La forma can onica permite despejar las variables b asicas en funci on de las variables no b asicas. De esta forma, para cada valor que se les de a las componentes de xD obtendremos los valores de xB que verican las restricciones de la forma can onica dada. Se despejan h1 , h2 y h3 de la forma can onica anterior:

h1 = 18 3x1 2x2 h2 = 4 x1 h3 = 12 2x2 Para cada par de valores que le demos a (x1 , x2 ) vamos a obtener un punto dentro de la regi on de factibilidad, en este caso, los valores de h1 , h2 y h3 son las cantidades que hay que a nadir a cada una de las restricciones para que se veriquen. Notar que h1 es la cantidad que falta para que se verique r1, h2 para r2 y h3 para r3. Por ejemplo, si (x1 , x2 ) = (1, 4) entonces se tiene que: h1 = 18 3 8 = 7 h2 = 4 1 = 3 h3 = 12 8 = 4 En la gura 7 nos da una idea de por qu e las soluciones b asicas son v ertices. Se ha representado de cierta forma los valores de cada una de las variables (x1 , x2 , h1 , h2 , h3 ) con (x1 , x2 ) = (1, 4), obteni endose el punto (1,4,7,3,4). Las holguras no coinciden exactamente con las distancias del punto a cada una de las rectas, aunque si que son las cantidades necesarias a a nadir a los valores x1 = 1 y x2 = 4 para que se satisfagan cada una de las restricciones. 7

Figura 7: (1,4,7,3,4)

Notar que las holguras no coinciden con las distancias

En el momento en el que se hace x1 = 0 o x2 = 0, se tendr a un punto en la arista correspondiente, por lo que si se hace x1 = x2 = 0, se tendr a un v ertice. La gura 8 muestra todos los vertices del poliedro para los distintos valores de (x1 , x2 , h1 , h2 , h3 ). Notar que siempre hay dos de las variables que son 0.

Figura 8: V ertice En este ejemplo sencillo es posible ver los v ertices en el gr aco, en general, cada v ertice tiene asociada una forma can onica (y unas ecuaciones param etricas) que permiten calcular los v ertices adyacentes para buscar la soluci on optima. 4. Primera iteraci on a partir de la primera forma can onica. Dadas las ecuaciones param etricas anteriores: 8

h1 = 18 3x1 2x2 h2 = 4 x1 h3 = 12 2x2 Haciendo variables no b asicas igual a cero, (x1 , x2 ) = (0, 0), se tiene la primera soluci on b asica factible, es decir, el primer v ertice (0, 0, 18, 4, 12). Se tiene que la funci on objetivo en este v ertice es Z = 0 Los costes relativos asociados a la funci on objetivo son los coecientes de las variables no b asicas: (3, 5), el m nimo se alcanza en 5 que es el coste de aumentar x2 , por lo tanto tomaremos la direcci on de esa arista. Haciendo x2 = > 0 y manteniendo x1 = 0 se tiene: h1 = 18 2 h2 = 4 h3 = 12 2 Se tiene que buscar otro v ertice, para ello, si se aumenta la variable no b asica x2 hay que hacer cero una de las b asicas (h1 , h2 o h3 ), y mantener positiva las dem as. Los posibles valores de son =9 o = 6. Para = 9 se tiene que h1 = 0 pero h3 < 0 por lo que no = 6.

es v alido, por lo tanto tomaremos As , el siguiente v ertice es:

(0, 6, 6, 4, 0) con Z = 3 0 5 6 = 30 5. Iteraciones a partir del nuevo v ertice. (0, 6, 6, 4, 0) con Z = 3 0 5 6 = 30 Con este nuevo v ertice han cambiado las variables b asicas (x2 , h1 , h3 ) y las no b asicas (x1 , h3 ). Ahora hay que buscar la forma can onica asociada a este v ertice, poniendo las nuevas variables b asicas en funci on de las no b asicas (que en el v ertice actual valen 0), para estudiar c omo var a la funci on objetivo si alguna de esas variables no b asicas cambiara de valor. Por lo tanto, obtendremos la nueva forma can onica mediante Gauss-Jordan para que la matriz identidad aparezca asociada a las nuevas variables b asicas (x2 , h1 , h2 ): 9

3 2 1 0 0 18 3 1 0 0 1 0 4 (F3 + F1 ) 1 0 2 0 0 1 12 0 3 0 1 0 (F3 + F1 ) 1 0 0 1 0 1 0 0

0 1 0 1 0 0 1 0 4 12 6

2 0 0 1 1 6 0 4 1/2 6

Por lo tanto, las restricciones de la nueva forma can onica es: 3x1 x1 x2 Despejando las nuevas variables b asicas: h1 = 6 3x1 + h3 h2 = 4 x1 x2 = 6 1 2 h3 En este caso, se tiene que la funci on objetivo en funci on de las variables no b asicas x1 y h3 es:
5 Z = 3x1 5(6 1 2 h2 ) = 30 3x1 + 2 h3

h1 + h2

h3
1 2 h3

= =

6 4 6

Los costes relativos son 3 para x1 y

1 2

para h3 , por lo que si se aumenta h3 empeora la

funci on objetivo (minimizar). As , el pr oximo v ertice vendr a dado por el movimiento por la arista correspondiente a x1 . Aumentamos x1 = > 0 y mantenemos h3 = 0, obteniendo: h1 = 6 3 h2 = 4 x2 = 6 Para = 4 se tendr a que h1 < 0, por lo que no es v alido, habr a que tomar = 2, para el

cual h1 = 0 y h2 = 2. El nuevo v ertice ser a: (2, 6, 0, 2, 0) para el que la funci on objetivo vale Z = 3032 = 36. Empezamos una nueva iteraci on, ya que con el nuevo v ertice han cambiado las variables b asicas (x1 , x2 , h2 ) y las no b asicas (h1 , h3 ). Queremos estudiar la funci on objetivo en 10

funci on de las variables no b asicas h1 y h3 (que el v ertice actual valen cero), para saber si al aumentar alguna de ellas mejora. Las restricciones de la forma can onica anterior es 3x1 x1 x2 La funci on objetivo en funci on de h1 y h3 ser a:
3 Z = 30 (6 h1 + h3 ) + 5 2 h3 = 36 + h1 + 2 h3

h1 + h2

h3
1 2 h3

= =

6 4 6

Por lo tanto aumentar cualquiera de las dos variables no b asicas empeora la funci on objetivo, por lo que el v ertice dado (2, 6, 0, 2, 0) es el optimo, con Z = 36. Para el problema original dado en el enunciado, se tiene que el n umero optimo de libros encuadernados diarios para maximizar los benecios son 2 de espiral y 6 pegados, con unos benecios de 36 unidades monetarias.

11

También podría gustarte