15.- Proyectos laguneros (examen 16 de Febrero 2001) El Ayuntamiento de La Laguna tiene la posibilidad de llevar a cabo dos proyectos denominados J y C el año próximo. El proyecto J consiste en adecentar parques y jardines, y el C en arreglar calles. Ambos proyectos se dividen en módulos o unidades iguales que se pueden realizar total o parcialmente. Cada modulo de J cuesta 60 millones de ptas., emplea a 2 funcionarios, genera 1 nuevo puesto de trabajo y se estima una rentabilidad indirecta de 30 millones. Cada modulo de C cuesta 90 millones de ptas., emplea a 1 funcionario, genera 3 nuevos puestos de trabajo y se estima su rentabilidad indirecta en 60 millones. En un primer estudio el patronato se propone como objetivos minimizar la inversión y maximizar los puestos de trabajo generados, sabiendo que se debe: Mantener la inversión por debajo del presupuesto disponible, que es de 2.700 millones de ptas. Emplear al menos a 20 funcionarios que se encuentran disponibles Generar como mínimo 15 nuevos puestos de trabajo En un segundo estudio solicitado, nos indica que incorporemos también como objetivo maximizar la renta indirecta al final de año en las condiciones anteriores señaladas. Como vemos nos encontramos en un caso de Programación Multiobjetivo, ya que la Decisión a tomar esta definida por una serie de atributos a optimizar que deben verificar una serie de restricciones. Como existe un conflicto real entre los objetivos se busca el conjunto de soluciones optimas eficientes sin incluir ninguna información sobre las preferencias del que tome la decisión. Los Objetivos son 1. Maximizar los puestos de trabajo generados. 2. Minimizar la inversión. La estructura matemática de nuestro ejercicio es: Eff f(x) = (f1(x), f2(x)) Con: F1(x) = X1 + 3(X2) (Maximización P. Trabajo) F2(x) = 60.000.000(X1) + 90.000.000(X2) (Minimización Inversión) Siendo: X1: Nº de módulos J X2: Nº de módulos C Sujeto a las siguientes restricciones: 60.000.000 (X1) + 90.000.000(X2)<= 2.700.000.000 2(X1) + X2 >= 20 X1 + 3(X2)>= 15 1.- Análisis Gráfico. Tal como hemos representado las restricciones hemos obtenido estos puntos. A (0,30) B (45,0) C (15,0) D (9,2) E (0,20) Descartamos los puntos A y B, por ser puntos extremos, es decir, coloquialmente hablando estos puntos no se pueden encuadrar en una decisión política adecuada ya que ningún patronato establecería un plan por el cual se destina todo el presupuesto de 2.700.000.000 ptas. a 45 módulos J o todo el presupuesto a 30 módulos C. Estamos buscando un punto que sea eficiente como solución paretiana, es decir que ninguno de los dos proyectos puedan mejorar más sin verse afectados entre si. El punto D es el mínimo por el cual se cumplen las restricciones mínimas, es decir, emplear a 20 funcionarios, generar como mínimo 15 nuevos puestos de trabajo y estar por debajo de lo presupuestado. Pero este punto no es eficiente ya que se podría mejorar por estar todavía con un margen de presupuesto sin aplicar de 1.980.000.000 ptas. y se pueden dedicar más funcionarios a los proyectos y crear mas puestos de trabajo. Por tanto no elegiremos este punto. Dibujaremos unas rectas de Isobeneficio hacia arriba hasta que veamos que no se puede mejorar y nos encontramos con los puntos C y E, que vemos es la mejor elección ya que esta en el limite de lo presupuestado y se crean más puestos de trabajo de lo mínimo deseado. Por tanto no es una solución de esquina. Puntos Extremos Adecentar Parques y Jardines (X1) Arreglar Calles Inversión (X2) Puestos de Trabajo A 0 30 2.700.000.000 90 B D C E C+E 45 9 15 0 15 0 2 0 20 20 2.700.000.000 720.000.000 900.000.000 1.800.000.000 2.700.000.000 45 15 15 60 75 Por tanto, la solución seria: X1: 15 módulos J (adecentar parques y jardines) X2: 20 módulos C (arreglar calles) Que cumpliría con las siguientes restricciones: El presupuesto estaría entre los 2.700.000.000 ptas. Los módulos emplearían a 50 funcionarios. Y se crearían 75 nuevos puestos de trabajo. 2.- Segundo Método. Este método seria poner las dos funciones del problema como una única función Max F (x) = X1 + 3(X2) – (60.000.000 (X1) + 90.000.000 (X2)) Sujeto a 60.000.000 X1 + 90.000.000 X2 <= 2.700.000.000 2 X1 + X2 >= 20 X1 + 3 X2 >= 15 Ahora lo resolveremos por el LINDO: Tal como muestra la resolución del Lindo las variables nos da el mismo punto minimo que en el sistema gráfico, es decir, 9 y 2 pero se puede incrementar hasta 20 y 15 como se refleja en el sistema grafico. 3. Ponderación. Este método lo único que establece es que entre dos proyectos diferentes (como puede ser los módulos J y C) se deberían realizar unas ponderaciones para así reflejar la importancia de un proyecto sobre otro. En mi opinión el objetivo de minimizar los costes debe ser el más importante ya que estamos hablando de un ayuntamiento que tiene que controlar sus cuentas, por tanto, seria una ponderación de: W1 = 1 y W2 = 3 Max F(x) = X1 + 3X2 – 3(60.000.000 X1 + 90.000.000 X2) Sujeto a 60.000.000 X1 + 90.000.000 X2 <= 2.700.000.000 2 X1 + X2 >= 20 X1 + 3X2 >= 15 He creido que una proporción de 1 a 3 nos da el valor de X2 con un valor de 30 modulos que nos da 60 nuevos puestos de trabajo y 30 funcionarios. Asi mismo el optimo se refleja en analisis de sensibilidad, 20 modulos de X1 y 15 modulos de X2. 4.- Método de las restricciones. Este método introduce una de las funciones, más exactamente la función a maximizar, como una nueva restricción por lo que establecemos una nueva identidad matemática: Min F(x) = 60.000.000 X1 + 90.000.000 X2 Sujeto a 60.000.000 X1 + 90.000.000 X2 <= 2.700.000.000 2 X1 + X2 >= 20 X1 + 3X2 >= 40 Al introducir como restricción la variable a maximizar, he creido oportuno aumentar la restricción de 15 a 40 lo que nos da un valor de 4 y 12, aunque el óptimo del segundo modulo asciende a 40). 5.- Método Multiobjetivo NISE. Es un modelo parecido al método de las ponderaciones pero donde los pesos se eligen de la forma W1 / W2, por lo que nos da un valor de 1/3. Max (W1/W2) = 1/3 (X1 + 3 X2)- 1/3 (60.000.000 X1 + 90.000.000 X2) Sujeto a 60.000.000 X1 + 90.000.000 X2 <=2.700.000.000 2 X1 + X2 >= 20 X1 + 3X2 >=15 Nos da los mismos resultados, es decir, refleja el punto D de la resolución gráfica que es el minimo para llegar a las restricciones pero tambien nos refleja que X1 se puede incrementar de 9 a 20 y X2 se puede incrementar de 2 a 15. 6.- Programación por Metas. El decisor establece unas metas para los objetivos y la solución optima será aquella que minimiza la desviación a las metas propuestas. Como metas establecemos, 1.- No invertir más de 1.500.000.000 ptas. 2.- Contratar 20 trabajadores. 60.000.000 X1 + 90.000.000 X2 + n1 – p1 = 1.500.000.000 X1 + 3 X2 + n2 – p2 = 20 60.000.000 X1 + 90.000.000 X2 + n3 – p3 = 2.700.000.000 2 X1 + X2 + n4 – p4 = 20 X1 + 3 X2 + n5 – p5 = 15 Min. Z = n1 + p2 + p3 + p4 + p5 En la resolución por Lindo las variables nos da, N1 = 0 P2 = 5 P3 = 0 P4 = 30 P5 = 10 X1 = 25 Y nos da la capacidad de crecimiento de 20 y 15. 7ª Resolución por Metas y Ponderación. Es como el anterior pero valoramos las variables y las valoramos de la siguiente forma: Min Z = 4n1 + 5p2 + 2p3 + p4 + p5 Sujeto a 60.000.000X1 + 90.000.000X2 + n1 – p1 = 1.500.000.000 X1 + 3X2 + n2 – p2 = 20 60.000.000X1 + 90.000.000X2 + n3 – p3 = 2.700.000.000 2X1 + X2 + n4 – p4 = 20 X1 + 3X2 + n5 – p5 = 15 Nos da los siguientes valores, N1 = 0 P2 = 5 P3 = 0 P4 = 30 P5 = 10 X1 = 25 Y aun así nos da los valores óptimos de 20 y 15 para los módulos X1 y X2. 8ª Resolución por Metas y Ponderación (bis) Arisbel Padilla Guerra, Macarena Díaz Díaz y Yovanna Hernández Álvarez (Curso 2002-2003) Proyecto lagunero: X1= nª módulos J X2= nª módulos C Lo resolvemos con en Lindo: El primero de los objetivos es maximizar los puestos de trabajo: max x1+3x2 ST 60000000X1+90000000X2<=2700000000 2X1+X2>=20 X1+3X2>=15 end LP OPTIMUM FOUND AT STEP 1 OBJECTIVE FUNCTION VALUE 1) 90.00000 VARIABLE VALUE REDUCED COST X1 0.000000 1.000000 X2 30.000000 0.000000 ROW 2) 3) 4) SLACK OR SURPLUS DUAL PRICES 0.000000 0.000000 10.000000 0.000000 75.000000 0.000000 NO. ITERATIONS= 1 * Por tanto X1=0 y X2=30. El segundo de los objetivos es minimizar la inversión realizada: Resolvemos la segunda función con el Lindo: min 60000000x1+90000000x2 ST 60000000X1+90000000X2<=2700000000 2X1+X2>=20 X1+3X2>=15 end LP OPTIMUM FOUND AT STEP 2 OBJECTIVE FUNCTION VALUE 1) 0.7200000E+09 VARIABLE VALUE X1 9.000000 X2 2.000000 REDUCED COST 0.000000 0.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) **************** 0.000000 3) 0.000000 -18000000.000000 4) 0.000000 -24000000.000000 NO. ITERATIONS= 2 * Obtenemos que X1= 9 y X2= 6 * Por tanto la matriz de pagos será: F1 F2 F1 90 15 F2 2.700.000.000 720.000.000 * El IDEAL es por tanto (90, 720.000.000) y el ANTIIDEAL es (15, 2.700.000.000) * Para la programación por metas vamos a establecer que las metas a lograr sean que la inversión no supere los 1.500 millones y que los puestos de trabajo sean 20. Por tanto habrá una nueva función a minimizar, y nuevas restricciones, que la resolveremos con el LINDO, dando como resultado: Objetivos: V.D. Indeseadas 60000000x1+90000000x2+n1-p1=1500000000 ( inversión:<=) x1+3x2+n2-p2=20 (empleo: =) p1 n2+p2 Restricciones: 60000000x1+90000000x2+n3-p3=2700000000 (inversión: <=) 2x1+x2+n4-p4=20 ( empleo >= ) x1+3x2+n5-p5=15 (puestos de trabajo creados >=) p3 n4 n5 Determinamos a continuación las variables de desviación no deseadas y en consecuencia nuestro problema se reduce a : min p1+n2+p2+p3+n4+n5 ST 60000000x1+90000000x2+n1-p1=1500000000 x1+3x2+n2-p2=20 60000000x1+90000000x2+n3-p3=2700000000 2x1+x2+n4-p4=20 x1+3x2+n5-p5=15 end LP OPTIMUM FOUND AT STEP 4 OBJECTIVE FUNCTION VALUE 1) 0.0000000E+00 VARIABLE VALUE P1 0.000000 N2 0.000000 P2 0.000000 P3 0.000000 N4 0.000000 N5 0.000000 X1 8.000000 X2 4.000000 N1 660000000.000000 N3 **************** P4 0.000000 P5 5.000000 ROW 2) 3) 4) 5) 6) REDUCED COST 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 SLACK OR SURPLUS 0.000000 0.000000 0.000000 0.000000 0.000000 DUAL PRICES 0.000000 0.000000 0.000000 0.000000 0.000000 Las variables indeseadas toman un valor = 0, y n1=660.000.000 y p5= 5. Por tanto la inversión mínima nos queda con un valor de 840.000.000 ( 1500.000.000 – 660.000.000). En cuanto a la meta de creación de puestos de trabajo estaríamos creando 20 puestos (15 +5). Si normalizamos la función objetivo quedaría así: min p1/1500000000+(n2+p2)/20+p3/2700000000+n4/20+n5/15 ST 60000000x1+90000000x2+n1-p1=1500000000 x1+3x2+n2-p2=20 60000000x1+90000000x2+n3-p3=2700000000 2x1+x2+n4-p4=20 x1+3x2+n5-p5=15 Para poderlo resolver con el LINDO, pondremos la función de la forma: min 0.00000000067p1+0.05(n2+p2)+0.00000000037037p3+0.005n4+0.066666n5 ST 60000000x1+90000000x2+n1-p1=1500000000 x1+3x2+n2-p2=20 60000000x1+90000000x2+n3-p3=2700000000 2x1+x2+n4-p4=20 x1+3x2+n5-p5=15 end LP OPTIMUM FOUND AT STEP 4 OBJECTIVE FUNCTION VALUE 1) 0.0000000E+00 VARIABLE VALUE P1 0.000000 N2 0.000000 P2 0.000000 P3 0.000000 N4 0.000000 N5 0.000000 X1 8.000000 X2 4.000000 N1 660000000.000000 N3 **************** P4 0.000000 P5 5.000000 ROW 2) 3) 4) 5) 6) REDUCED COST 0.000000 0.050000 0.050000 0.000000 0.005000 0.066666 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 SLACK OR SURPLUS DUAL PRICES 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 Con la normalización nos dan los mismos resultados. * Ahora vamos a establecer ponderaciones: - Consideramos que la primera meta: no invertir mas de 1.500.000.000 es el más importante, ponderándolo con un 9, al igual que la tercera. - La segunda meta: contratar 20 trabajadores, la ponderamos con un 1. - A la cuata meta también la ponderamos con un 1. - Y la última con un 7, ya que consideramos que la creación de empleo es otra de las metas importantes desde el punto de vista del gerente. Por tanto la nueva función objetivo será: Min 9* 0.00000000067p1+1* 0.05n2+1*0.05p2+9* 0.00000000037037p3+1*0.005p4+7*0.066666p5 ST 60000000x1+90000000x2+n1-p1=1500000000 x1+3x2+n2-p2=20 60000000x1+90000000x2+n3-p3=2700000000 2x1+x2+n4-p4=20 x1+3x2+n5-p5=15 end Para poderla resolver en el LINDO, la pondremos de la forma: Min 0.00000000603 p1+ 0.05n2+0.05 p2+ 0.00000000333 p3+ 0.005 n4+ 0.466662n5 ST 60000000x1+90000000x2+n1-p1=1500000000 x1+3x2+n2-p2=20 60000000x1+90000000x2+n3-p3=2700000000 2x1+x2+n4-p4=20 x1+3x2+n5-p5=15 end LP OPTIMUM FOUND AT STEP 4 OBJECTIVE FUNCTION VALUE 1) 0.0000000E+00 VARIABLE VALUE P1 0.000000 N2 0.000000 P2 0.000000 P3 0.000000 N4 0.000000 N5 0.000000 X1 8.000000 X2 4.000000 N1 660000000.000000 N3 **************** P4 0.000000 P5 5.000000 ROW 2) 3) 4) 5) 6) REDUCED COST 0.000000 0.050000 0.050000 0.000000 0.005000 0.466662 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 SLACK OR SURPLUS 0.000000 0.000000 0.000000 0.000000 0.000000 NO. ITERATIONS= DUAL PRICES 0.000000 0.000000 0.000000 0.000000 0.000000 4 Después de ponderar, llegamos a los mismos resultados calculados con anterioridad. Por ello, podemos decir que este método resulta eficiente, ya que hemos minimizado al máximo el valor de las variables indeseadas. 2ª Propuesta Efff f(x) = (F1(x), F2(x), F3(x)) Con Max F1(x) = X1 + 3 X2 Min. F2(x) = 60.000.000 X1 + 90.000.000 X2 Max F3(x) = 30.000.000 X1 + 60.000.000 X2 Restricciones: 60.000.000 X1 + 90.000.000 X2 <= 2.700.000.000 2 X1 + X2 >= 20 X1 + 3X2 >= 15 X1, X2 > 0 RESOLUCIÓN. Max (x) =X1 + 3 X2 – (30.000.000 X1 + 30.000.000 X2) Sujeto a 60.000.000 X1 + 90.000.000 X2 <= 2.700.000.000 2 X1 + X2 >= 20 X1 + 3 X2 >= 15 X1, X2 >0 En el Lindo nos refleja que el único módulo que se puede realizar es el módulo X2 ya que es el que mayor rentabilidad indirecta nos da con 60.000.000 ptas. Por encima de los 30.000.000 ptas. Que refleja el problema que satisface el modulo X1