Upload
leugim-jimenez
View
5
Download
0
Embed Size (px)
DESCRIPTION
programación lineal
Citation preview
Programación LinealCorporación
Investigación de Operaciones
Evaluación 2, Actividad 7.
Rogelio González Velázquez
Autores:Angélica Karina Corona FloresMiguel Ángel Rosales JiménezEnrique Díaz Romero
Programación lineal: Corporación
Angélica Karina Corona Flores,Miguel Ángel Rosales Jiménez,
Enrique Díaz Romero
Investigación de Operaciones, Benemérita Universidad Autónoma de Puebla,[email protected], [email protected], [email protected]
Resumen. La programación Lineal (PL) es una técnica de modelado matemático, diseñada para optimizar el empleo de recursos limitados. La utilidad de esta técnica se incrementa mediante el uso y disponibilidad de programas de computadora altamente eficientes. En el siguiente problema lineal nos muestra un consorcio el cual para el próximo año tiene un capital de 30 millones, los cuales quiere repartirlos de una manera óptima a 8 diferentes proyectos, Cada filial tiene la oportunidad de realizar diversos proyectos con los fondos que recibe. Una tasa de rendimiento (como porcentaje de la inversión) se ha establecido para cada proyecto. Además, algunos de los proyectos permiten inversión sólo limitada.
Palabras Clave: Programación lineal, modelado, programas, computadora, algoritmos, proyectos, maximizar, inversión.
1 Introducción
Programación lineal es una técnica matemática que permite asignar recursos limitados. La programación lineal es una técnica matemática empleada durante la segunda guerra mundial. Su valía para la administración de la producción radica en que a menudo se puede operar para resolver problemas de asignación complicados que incluye una gran cantidad de variables. Antes del desarrollo de la programación lineal solo se conseguía solucionar mediante modelos gráficos y esquemáticos. Las soluciones se hallaban por medio de aproximaciones sucesivas y ninguno estaba seguro de haber logrado la mejor solución.
Para comprender lo que es la Programación Lineal es importante entender los siguientes conceptos básicos:
Variables de Decisión: Con las variables de decisión nos referimos al conjunto de variables cuya magnitud deseamos determinar resolviendo el modelo de programación lineal.
Restricciones: Están constituidas por el conjunto de desigualdades que limitan los valores que puedan tomar las variables de decisión en la solución.
Función Objetivo: Es la función matemática que relaciona las variables de decisión.
Linealidad: Se refiere a que las relaciones entre las variables, tanto en la función objetivo como en las restricciones deben ser lineales.
Desigualdades: Las desigualdades utilizadas para representar las restricciones deben ser cerradas o flexibles, es decir, menor - igual (<=) o mayor – igual (>=). No se permiten desigualdades de los tipos menor- estrictamente o mayor – estrictamente, o abiertas.
Condición de no – negatividad: En la programación lineal las variables de decisión sólo pueden tomar valores de cero a positivos. No se permiten valores negativos.
El problema de programación al que se enfrenta es: ¿Cuál es mi máxima optimización si tengo 30 millones para invertirlos en diferentes filiales? Cada filial tiene la oportunidad de realizar diversos proyectos con los fondos que recibe. Una tasa de rendimiento (como porcentaje de la inversión) se ha establecido para cada proyecto. Además, algunos de los proyectos permiten inversión sólo limitada.
2 Modelado
En el presente documento se creara un modelo para el siguiente problema:
“Una corporación tiene $ 30 millones disponibles para el próximo año para asignar a sus tres filiales. Debido a compromisos de estabilidad en el empleo de personal y por otras razones, la corporación ha establecido un nivel mínimo de financiación para cada filial. Estos niveles de financiación son de $ 3 millones, $ 5 millones, $ 8 millones, respectivamente. Debido a la naturaleza de su operación, subsidiaria 2 no puede utilizar más de $ 17 millones sin ocasionar una nueva expansión del capital. La sociedad no está dispuesta emprender tal expansión en este momento. Cada filial tiene la oportunidad de llevar a cabo varios proyectos con los fondos que recibe. Una tasa de rendimiento (como porcentaje de la inversión) se ha establecido para cada proyecto. Además, algunos de los proyectos permiten inversión sólo limitada. Se presentan los datos de cada proyecto en la tabla 1”.
Tabla 1. Datos de las filiales y sus correspondientes proyectos.
Filial Proyecto Tasa de Retorno límite superior inversión
1 8% $ 6 millones1 2 6% $ 5 millones
3 7% $ 9 millones4 5% $ 7 millones
2 5 8% $ 10 millones6 9% $ 4 millones
37 10% $ 6 millones8 6% $ 3 millones
Sea Xj = inversión en el proyecto jLa función objetivo que da de la siguiente forma:
Z Max= 0.08X1+ 0.06X2+0.07X3+0.05X4+0.08X5+0.09X6+0.1X7+0.06X8 (1)
Con las siguientes restricciones:
X1+ X2+X3 >= 3 (2)
X4+X5+X6 >=5 (3)
X7+X8 >=3 (4)
X1+X2+X3+X4+X5+X6+X7+X8 <= 30 (5)
Las expresiones 2, 3 y 4 representan cada una de la filiales, y las literales X i los proyectos a de cada una, y los números después del signo de igualdad el financiamiento de cada filial en millones de dólares.
La expresión 5 hace referencia al total disponible de $ 30 millones y que tendrá que ser repartido entre los 8 proyectos de las 3 filiales.
A continuación las restricciones que acotan el límite superior de cada inversión, mostrado en la tabla 1.
0 ≤ X1 ≤ 6 (6)
0 ≤ X2 ≤ 5 (7)
0 ≤ X3 ≤ 9 (8)
0 ≤ X4 ≤ 7 (9)
0 ≤ X5 ≤ 10 (10)
0 ≤ X6 ≤ 4 (11)
0 ≤ X7 ≤ 6 (12)
0 ≤ X8 ≤ 3 (13)
Las expresiones 6, 7, 8, 9, 10, 11, 12 y 13 indican que las inversiones X i son valores positivos y cada una limitada como se especificó en la tabla 1.
3 Metodología
Una vez modelada la solución del problema se procederá a utilizar el un software para calcular los resultados. Para ello utilizaremos el programa LINGO en su versión 10.0.
Para ello se desarrolló el siguiente código:
MODEL:SETS:Proyecto/1..8/:x,retorno,limiteSuperior; ! x: Fondos de inversion;ENDSETS
DATA:retorno = 0.08 0.06 0.07 0.05 0.08 0.09 0.10 0.06; !Porcentaje de retorno por cada proyecto;limiteSuperior = 6 5 9 7 10 4 6 3; !Inversion máxima por cada proyecto;ENDDATA
SUBMODEL Inversiones:[OBJETIVO]MAX= @SUM(Proyecto(i):retorno(i)*x(i)); !Ganancia por proyecto;@SUM(Proyecto(i)|i#LE#3:x(i))>=3; !LÃmite inferior para la subsidiaria 1;@SUM(Proyecto(i)|i#GE#4 #AND# i#LE#6: x(i))>=5; !LÃmite inferior para la subsidiaria 2;@SUM(Proyecto(i)|i#GE#4 #AND# i#LE#6: x(i))<=17; !LÃmite superior para la subsidiaria 2;@SUM(Proyecto(i)|i#GE#7 #AND# i#LE#8: x(i))>=8; !LÃmite inferior para la subsidiaria 3;@SUM(Proyecto: x)<=30; !Inversión total de 30 millones;@FOR(Proyecto: x<=limiteSuperior); !LÃmite superior por cada proyecto;ENDSUBMODEL
CALC:@SET('terseo',3);@SOLVE(Inversiones);@WRITE('Materia: INVESTIGACION DE OPERACIONES',@NEWLINE(1),'Periodo: OTONO 2015',@NEWLINE(1),'Profesor: ROGELIO',@NEWLINE(2));@WRITE('Integrantes del equipo:',@NEWLINE(1),10*' ','CORONA FLORES ANGELICA KARINA ', @NEWLINE(1),10*' ','DIAZ ROMERO ENRIQUE',@NEWLINE(1),10*' ','ROSALES JIMENEZ MIGUEL ANGEL',@NEWLINE(2));
@WRITE('Problema 1.17: Una corporacion tiene $30 millones disponibles',@NEWLINE(1),'durante el siguiente ano para asignar a sus tres subsidiarias.',@NEWLINE(1));@WRITE('Por el compromiso con la estabilidad del personal empleado y',@NEWLINE(1),'por otras razones, la corporacion ha establecido un nivel minimo',@NEWLINE(1));@WRITE('de fondos para cada subsidiaria. Estos niveles son $3 millones,',@NEWLINE(1),'$5 millones y $8 millones respectivamente. Debido a la naturaleza',@NEWLINE(1));@WRITE('de su operacion, la subsidiaria 2 no puede utilizar mas de $17',@NEWLINE(1),'millones sin una nueva expansion de capital. La corporacion esta',@NEWLINE(1));@WRITE('poco dispuesta para llevar a cabo dicha expansion proximamente.',@NEWLINE(1),'Cada subsidiaria tiene la oportunidad de llevar varios proyectos',@NEWLINE(1));
@WRITE('proyectos con los fondos que reciba. Una tasa de retorno (un',@NEWLINE(1),'porcentaje de la inversion) ha sido establecido para cada proyecto.',@NEWLINE(1));@WRITE('Ademas, ciertos proyectos admiten una inversion limitada. La',@NEWLINE(1),'informacion de cada proyecto es la siguiente:',@NEWLINE(2));
@WRITE(67*'-',@NEWLINE(1));@WRITE(15*' ','|',14*' ','|',6*' ','TASA DE',6*' ','|',' LIMITE MAXIMO',@NEWLINE(1));@WRITE(' SUBSIDIARIA | PROYECTO | RETORNO | DE INVERSION',@NEWLINE(1));@WRITE(67*'-',@NEWLINE(1));@WRITE(15*' ','|',7*' ','1',6*' ','|',9*' ','8%',8*' ','| $6 millones',@NEWLINE(1));@WRITE(7*' ','1',7*' ','|',7*' ','2',6*' ','|',9*' ','6%',8*' ','| $5 millones',@NEWLINE(1));@WRITE(15*' ','|',7*' ','3',6*' ','|',9*' ','7%',8*' ','| $9 millones',@NEWLINE(1));@WRITE(67*'-',@NEWLINE(1));@WRITE(15*' ','|',7*' ','4',6*' ','|',9*' ','5%',8*' ','| $7 millones',@NEWLINE(1));@WRITE(7*' ','2',7*' ','|',7*' ','5',6*' ','|',9*' ','8%',8*' ','| $10 millones',@NEWLINE(1));@WRITE(15*' ','|',7*' ','6',6*' ','|',9*' ','9%',8*' ','| $4 millones',@NEWLINE(1));@WRITE(67*'-',@NEWLINE(1));@WRITE(7*' ','3',7*' ','|',7*' ','7',6*' ','|',8*' ','10%',8*' ','| $6 millones',@NEWLINE(1));@WRITE(15*' ','|',7*' ','8',6*' ','|',9*' ','6%',8*' ','| $3 millones',@NEWLINE(1));@WRITE(67*'-',@NEWLINE(2));
@WRITE('La siguiente tabla indica como debe ser realizada la inversion para',@NEWLINE(1) ,'obtener el mayor rendimiento en base a las tasas de retorno:');
@WRITE(@NEWLINE(2));@WRITE(20*' ',10*'-','SUBSIDIARIA 1',10*'-', @NEWLINE(1));@WRITEFOR(Proyecto(i)|i#LE#3: 20*' ','| Proyecto ',i,': ', @FORMAT(x(i),"#8.3f"), ' millones |',@NEWLINE(1));
@WRITE(20*' ',10*'-','SUBSIDIARIA 2',10*'-', @NEWLINE(1));@WRITEFOR(Proyecto(i)|i#GE#4 #AND# i#LE#6: 20*' ','| Proyecto ',i,': ', @FORMAT(x(i),"#8.3f"), ' millones |',@NEWLINE(1));
@WRITE(20*' ',10*'-','SUBSIDIARIA 3',10*'-', @NEWLINE(1));@WRITEFOR(Proyecto(i)|i#GE#7: 20*' ','| Proyecto ',i,': ', @FORMAT(x(i),"#8.3f"), ' millones |',@NEWLINE(1));@WRITE(20*' ',33*'-',@NEWLINE(1));@WRITE(13*' ','EL MÁXIMO RENDIMIENTO OBTENIDO $', @FORMAT(OBJETIVO,'#6.3f'),' millones');
ENDCALC
END
SETS:
4 Resultados
Una vez transcrito el código anterior en el software antes mencionado obtenemos un resultado óptimo (véase la fig. 1 y Tabla 2).
Fig. 1. Se muestra el resultado arrojado por el software
Tabla 2. Datos de las filiales y sus correspondientes proyectos.
Filial Proyecto Tasa de Retorno Límite superior inversión
Cantidad a invertir
1 8% $ 6 millones $ 6 millones1 2 6% $ 5 millones 0
3 7% $ 9 millones $ 2 millones4 5% $ 7 millones 0
2 5 8% $ 10 millones $ 10 millones6 9% $ 4 millones $ 4 millones
37 10% $ 6 millones $ 6 millones8 6% $ 3 millones $ 2 millones
Total $ 30 millones
De estos resultados se desprende que el máximo rendimiento obtenido es de 2.5 millones.
5 Conclusiones y perspectivas
Durante el desarrollo del presente documento se ha presentado la solución a un problema de asignación de recursos, del cual podemos hacer las siguientes reflexiones:
Es de suma importancia tener muy claro el presente cuan es el objetivo o solución que se busca. Interpretar a adecuadamente las restricciones para que puedan ser expresadas de una forma
correcta. El uso el software pero sobre todo su adecuada manipulación para expresar los resultados,
facilita, la comprensión. Los modelos matemáticos una vez desarrollados simplifican la obtención de resultados, es muy
relativamente fácil adecuarlos a nuevas restricciones y por lo mismo resultarían más baratos.
Así también podemos hacernos un panorama sobre los modelos matemáticos:
Usados adecuadamente pueden reducir significativamente el desperdicio de recursos en diferentes áreas y procesos.
Mejorar los tiempos en que los productos o personas se desplazan, abaratando así los costos de transporte.
Sincronizar entregas y traslados de productos de una manera óptima.
Referencias
Erica Canizo, P. L. (2012). Investigación Operativa 2002, Software Para Programación Lineal. Buenos Aires, Arg.: UTN.
Ivorra, C. (23 de 10 de 2015). Universidad de Valencia. Obtenido de http://www.uv.es/~ivorra/docencia/LINGOav.pdf
Pearson. (s.f.). Investigación de Operaciones en la Ciencia Administrativa. Prentice Hall.Taha, H. A. (2012). Investigacion de Operaciones. Mexico: PEARSON.