• Like
Unmsm   fisi - programación lineal - io1 cl03
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Unmsm fisi - programación lineal - io1 cl03

  • 1,769 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,769
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
60
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Universidad Nacional Mayor de San Marcos Facultad de Ingeniería de Sistemas e Informáticag Investigación de Operaciones I óProgramación Lineal Docente : Lic. Gabriel Solari Carbajal
  • 2. Programación Lineal INTRODUCCION Programación Lineal INTRODUCCION.- Es considerado uno de los avances científicos más importante de mediados del siglo XX S impacto haimportante de mediados del siglo XX. Su impacto ha sido extraordinario. L ió li l (PL) h i tLa programación lineal (PL) es una herramienta para resolver problemas de optimización utilizando modelos matemáticos donde las restricciones y función objetivomatemáticos donde las restricciones y función objetivo son funciones lineales. Los problemas que se ajustan al modelo de la PL seLos problemas que se ajustan al modelo de la PL se conocen como problemas de programación lineal (PPL). La PL es una técnica poderosa para resolver 2 ( ) p p PPL.
  • 3. Programación Lineal DEFINICION Programación Lineal DEFINICION.- La PL es una técnica que consiste en optimizar (ma imi ar o minimi ar) na f nción lineal llamada(maximizar o minimizar) una función lineal llamada función objetivo. E tié d ti i l bú d dEntiéndase por optimizar como la búsqueda de una solución (un valor máximo o mínimo) dentro de una región factible (conjunto de soluciones) delimitada porregión factible (conjunto de soluciones) delimitada por un conjunto de restricciones también lineales. 3
  • 4. Programación Lineal RESTRICCIONES Programación Lineal RESTRICCIONES.- 1) Son funciones lineales de la forma: inin22i11i b),,(xaxaxa ≥=≤+++ L por ejemplo:por ejemplo: 800x48x40 21 ≤+ 2) Conforman el conjunto de soluciones factibles. 4
  • 5. Programación Lineal FUNCION OBJETIVO Programación Lineal FUNCION OBJETIVO.- 1) Es una función lineal de la forma: por ejemplo: nn2211 xcxcxcZOptimizar +++= L por ejemplo: 21 x480x400ZMax += 2) Permite localizar en el conjunto de soluciones factibles, la solución óptima. 5
  • 6. Programación Lineal DEFINICION Programación Lineal DEFINICION.- SOLUCION REGION FACTIBLE SOLUCION OPTIMA FACTIBLE 6
  • 7. Programación Lineal PRINCIPIOS BÁSICOS DE LA PL Programación Lineal PRINCIPIOS BÁSICOS DE LA PL.- 1) Proporcionalidad.- Cada variable de decisión participa en forma proporcional sobre la función objetivo y las t i irestricciones. a) Si un producto A ocupa 3 m3 de espacio de almacenamiento entonces x productos ocupanalmacenamiento, entonces x productos ocupan 3x m3. (Proporcionalidad). 7
  • 8. Programación Lineal PRINCIPIOS BÁSICOS DE LA PL Programación Lineal b) Si un producto A ocupa 3 m3 de espacio de almacenamiento entonces prod ctos oc pan PRINCIPIOS BÁSICOS DE LA PL.- almacenamiento, entonces x productos ocupan 3x m3, pero para cada 10 productos almacenados se debe dejar un espacio de 0.5almacenados se debe dejar un espacio de 0.5 m. (No hay proporcionalidad). 8
  • 9. Programación Lineal PRINCIPIOS BÁSICOS DE LA PL Programación Lineal 2) Aditividad.- PRINCIPIOS BÁSICOS DE LA PL.- Las variables de decisión en forma conjunta, participan aditivamente sobre la función objetivo y l t i ilas restricciones. a) Si un producto A ocupa 3 m3 de espacio de almacenamiento y un producto B ocupa 5 m3almacenamiento y un producto B ocupa 5 m3, entonces x productos de A y y productos de B ocupan 3x + 5y m3. (Aditividad).p y ( ) 9
  • 10. Programación Lineal PRINCIPIOS BÁSICOS DE LA PL Programación Lineal b) La combinación de 3 m3 de un producto A y 5 m3 de n prod cto B reaccionan q ímicamente PRINCIPIOS BÁSICOS DE LA PL.- de un producto B reaccionan químicamente obteniéndose 4 m3 de un producto C. (No es aditivo)aditivo). 10
  • 11. Programación Lineal PRINCIPIOS BÁSICOS DE LA PL Programación Lineal 3) Divisibilidad.- PRINCIPIOS BÁSICOS DE LA PL.- Los valores de las variables de decisión pueden dividirse en cualquier fracción tomando cualquier l l tivalor real no negativo. a) X = cantidad de galones a producir de gasolina. (Valor real ≥ 0) (Divisibilidad)(Valor real ≥ 0). (Divisibilidad). 11
  • 12. Programación Lineal PRINCIPIOS BÁSICOS DE LA PL Programación Lineal b) Y = número de camiones que se utilizan para transportar gasolina (Programación entera) (La PRINCIPIOS BÁSICOS DE LA PL.- transportar gasolina. (Programación entera). (La variable no es divisible). 12
  • 13. Programación Lineal PRINCIPIOS BÁSICOS DE LA PL Programación Lineal 4) Certidumbre.- PRINCIPIOS BÁSICOS DE LA PL.- Los valores de los parámetros del modelo son constantes conocidas. Los parámetros permanecen t l l d lcomo tal en el modelo. a) El precio unitario de un producto es c u.m. El valor de c es constante para este modelovalor de c es constante para este modelo. (Certidumbre). 13
  • 14. Programación Lineal PRINCIPIOS BÁSICOS DE LA PL Programación Lineal b) El precio unitario de un producto no es un valor conocido ni predecible (Condición de PRINCIPIOS BÁSICOS DE LA PL.- conocido ni predecible. (Condición de incertidumbre o riesgo). 14
  • 15. Programación Lineal REPRESENTACIÓN MATEMÁTICA DE UN PPL Programación Lineal REPRESENTACIÓN MATEMÁTICA DE UN P.P.L..- 1) Representación algebraica desarrollada.- nn2211 xcxcxcZOptimizar +++= L sujeto asujeto a 1nn1212111 b),,(xaxaxa ≥=≤+++ L M 2nn2222121 b),,(xaxaxa ≥=≤+++ L mnmn22m11m b),,(xaxaxa ≥=≤+++ L M 15 i0xi ∀≥
  • 16. Programación Lineal REPRESENTACIÓN MATEMÁTICA DE UN PPL Programación Lineal REPRESENTACIÓN MATEMÁTICA DE UN P.P.L..- 2) Representación algebraica compacta.- n ∑= = n 1i iixcZOptimizar sujeto asujeto a j m n iji b),,(xa ≥=≤∑∑ j 1j 1i iji ),,(∑∑= = i0xi ∀≥ 0i 16
  • 17. Programación Lineal REPRESENTACIÓN MATEMÁTICA DE UN PPL Programación Lineal REPRESENTACIÓN MATEMÁTICA DE UN P.P.L..- 3) Representación matricial desarrollada.- [ ] ⎥ ⎤ ⎢ ⎡ 1 x x [ ] ⎥ ⎥ ⎥ ⎦ ⎢ ⎢ ⎢ ⎣ = n 2 n21 x xcccZOptimizar M L ⎦⎣ nx 17
  • 18. Programación Lineal REPRESENTACIÓN MATEMÁTICA DE UN PPL Programación Lineal REPRESENTACIÓN MATEMÁTICA DE UN P.P.L..- sujeto a ⎥ ⎥ ⎤ ⎢ ⎢ ⎡ ≥≤⎥ ⎥ ⎤ ⎢ ⎢ ⎡ ⎥ ⎥ ⎤ ⎢ ⎢ ⎡ 2 1 2 1 n22221 n11211 b b )(x x aaa aaa L L ⎥ ⎥ ⎦ ⎢ ⎢ ⎣ ≥=≤ ⎥ ⎥ ⎦ ⎢ ⎢ ⎣ ⎥ ⎥ ⎦ ⎢ ⎢ ⎣ m 2 n 2 mn2m1m n22221 b ),,( xaaa MM L MMM ⎦⎣ ⎥ ⎤ ⎢ ⎡ ⎥ ⎤ ⎢ ⎡ 0x1 ⎥ ⎥ ⎥ ⎦⎢ ⎢ ⎢ ⎣ ≥ ⎥ ⎥ ⎥ ⎦ ⎢ ⎢ ⎢ ⎣ 0 0x2 MM 18 ⎥⎦⎢⎣⎥ ⎦ ⎢ ⎣ 0xn
  • 19. Programación Lineal REPRESENTACIÓN MATEMÁTICA DE UN PPL Programación Lineal REPRESENTACIÓN MATEMÁTICA DE UN P.P.L..- 4) Representación matricial compacta.- XcZOptimizar = sujeto asujeto a b),,(XA ≥=≤ 0X ≥ 19
  • 20. Programación Lineal FORMAS DE UN PPL Programación Lineal FORMAS DE UN P.P.L..- 1) Forma canónica de maximización.- XcZMax = sujeto asujeto a bXA ≤ 0X ≥ 20
  • 21. Programación Lineal FORMAS DE UN PPL Programación Lineal FORMAS DE UN P.P.L..- 2) Forma estándar de maximización.- XcZMax = sujeto asujeto a bXA = 0X ≥ 21
  • 22. Programación Lineal FORMAS DE UN PPL Programación Lineal FORMAS DE UN P.P.L..- 3) Forma canónica de minimización.- XcZMin = sujeto asujeto a bXA ≤ 0X ≥ 22
  • 23. Programación Lineal FORMAS DE UN PPL Programación Lineal FORMAS DE UN P.P.L..- 4) Forma estándar de minimización.- XcZMin = sujeto asujeto a bXA = 0X ≥ 23
  • 24. Programación Lineal REGLAS DE EQUIVALENCIA Programación Lineal REGLAS DE EQUIVALENCIA.- Regla 1.- a) Max Z = cX es equivalente a Min -Z = -cX. ejemplo xx3x2ZMax +−=ejemplo 321 xx3x2ZMax += 321 xx3x2ZMin −+−=−es equivalente a b) Min Z = cX es equivalente a Max -Z = -cX. iejemplo es equivalente a 321 x6x5x4ZMin −+= 321 x6x5x4ZMax +−−=− 24 q 321
  • 25. Programación Lineal REGLAS DE EQUIVALENCIA Programación Lineal REGLAS DE EQUIVALENCIA.- Regla 2.- a) La restricción j-ésima de la forma ∑cjixi ≤ bj es equivalente a la restricción -∑cjixi ≥ -bj. ejemplo es equivalente a 55x3x6x4 321 ≤−+ 55x3x6x4 −≥+−−es equivalente a b) La restricción j-ésima de la forma ∑cjixi ≥ bj es equivalente a la restricción -∑cjixi ≤ -bj 55x3x6x4 321 ≥+ equivalente a la restricción ∑cjixi ≤ -bj. ejemplo 31x7x2x3 321 ≥+− 25 es equivalente a 31x7x2x3 321 −≤−+−
  • 26. Programación Lineal REGLAS DE EQUIVALENCIA Programación Lineal REGLAS DE EQUIVALENCIA.- Regla 3.- La restricción j-ésima de la forma ∑cjixi = bj puede descomponerse como la intersección de dos restricciones ∑cjixi ≤ bj y ∑cjixi ≥ bj. ejemplo 65119 j p es equivalente a 6x5x11x9 321 =+− q 6x5x11x9 321 ≤+− 6x5x11x9 ≥+ 26 6x5x11x9 321 ≥+−
  • 27. Programación Lineal REGLAS DE EQUIVALENCIA Programación Lineal REGLAS DE EQUIVALENCIA.- Regla 4.- a) Si se tiene m restricciones de la forma AX ≤ b, pueden convertirse en igualdad mediante la adición de un vector Y, llamado vector de variables de holgura. El vector Y tiene m componentes no negativasnegativas. ejemplo 15x5x6 21 ≤+ 19x7x3 ≤ se convierte a 19x7x3 21 ≤− 15xx5x6 321 =++ 27 321 19xx7x3 421 =+−
  • 28. Programación Lineal REGLAS DE EQUIVALENCIA Programación Lineal REGLAS DE EQUIVALENCIA.- b) Si se tiene m restricciones de la forma AX ≥ b, p eden con ertirse en ig aldad mediante la resta depueden convertirse en igualdad mediante la resta de un vector Y’, llamado vector de variables de exceso. El vector Y’ tiene m componentes no negativasEl vector Y tiene m componentes no negativas. ejemplo 35x2x7 21 ≥+ se convierte a 21 21x9x8 21 ≥+ se convierte a 35xx2x7 321 =−+ 21xx9x8 421 =−+ 28 421
  • 29. Programación Lineal REGLAS DE EQUIVALENCIA Programación Lineal REGLAS DE EQUIVALENCIA.- Regla 5.- Una variable no restringida xi, (xi ∈ 〈-∞, +∞〉), puede escribirse como la diferencia de dos variables no negativas. Sea xi una variable no restringida, luego kji xxx −= donde xj ≥ 0 y xk ≥ 0. Se cumple que: Si xi > 0 entonces xj > xki j k Si xi = 0 entonces xj = xk Si 0 t 29 Si xi < 0 entonces xj < xk
  • 30. Programación LinealProgramación Lineal FORMULACION DE PROBLEMAS DEPROBLEMAS DE PROGRAMACION LINEALLINEAL 30
  • 31. Programación Lineal PROBLEMA 01 Programación Lineal PROBLEMA 01.- Se tiene que abastecer urgentemente una zona declarada en emergencia se disponen de dos tipos dedeclarada en emergencia, se disponen de dos tipos de aviones, el A y el B. C t í ti f t l d b tiblCaracterísticas referente al consumo de combustible, aceite, carga útil y tiempo que demora de ida y vuelta están en la tabla adjunta igualmente están en ella laestán en la tabla adjunta, igualmente están en ella la disponibilidad de aceite y combustible de la base, plantear el problema con miras a que se transporte la máxima carga posible con la gasolina y el aceite disponible. 31
  • 32. Programación LinealProgramación Lineal A B Disponibilidad TIPO DE AVION A B Disponibilidad Gasolina/hora 8 12 800 galones Aceite/hora 0.25 0.2 40 galonesg Horas de viaje 5 4 Carga útil (kg) 400 480 32
  • 33. Programación Lineal SOLUCION Programación Lineal SOLUCION.- Variables de decisión A : número de viajes del avión tipo A a la zona en emergencia. B : número de viajes del avión tipo B a la zona en emergencia. 33
  • 34. Programación Lineal Restricciones Programación Lineal Restricción por disponibilidad de gasolina: Restricciones 800B)12()4(A)8()5( ≤+ 800B48A40 ≤+ Restricción por disponibilidad de aceite: 40B)200()4(A)250()5( 40B)20.0()4(A)25.0()5( ≤+ 40B80.0A25.1 ≤+ Restricciones de no negatividad: 0BA ≥ 34 0B,A ≥
  • 35. Programación Lineal Función objetivo Programación Lineal B480A400ZMax += Función objetivo B480A400ZMax + 35
  • 36. Programación Lineal El programa queda: Programación Lineal B480A400ZMax += El programa queda: B480A400ZMax + sujeto a 800B48A40 ≤ 800B48A40 ≤+ 40B80.0A25.1 ≤+ 0B,A ≥ 36
  • 37. Programación Lineal PROBLEMA 02 Programación Lineal PROBLEMA 02.- Se desea averiguar las cantidades de ciertos alimentos q e deben comerse para satisfacer ciertosque deben comerse para satisfacer ciertos requerimientos nutritivos a un costo mínimo. Supongamos que las consideraciones se limitan aSupongamos que las consideraciones se limitan a leche, carne, huevos y a las vitaminas A, C y D. Supongamos que el número de miligramos deSupongamos que el número de miligramos de vitaminas contenidas en cada unidad de alimentos se da en la tabla siguiente: 37
  • 38. Programación LinealProgramación Lineal VITAMINA Mínimo requerido a Galón de l h Libra de Docena de h A 1 1 10 1 C 100 10 10 50 q diario (mg) leche carne huevos C 100 10 10 50 D 10 100 10 10 Costo en soles 40 44 20 38
  • 39. Programación Lineal SOLUCION Programación Lineal SOLUCION.- Variables de decisión L : cantidad de leche en galones C : cantidad de carne en libras H : cantidad de huevos por docena 39
  • 40. Programación Lineal Restricciones Programación Lineal Restricción por requerimiento mínimo de vitamina A: Restricciones 1H10CL ≥++ Restricción por requerimiento mínimo de vitamina C:Restricción por requerimiento mínimo de vitamina C: 50H10C10L100 ≥++ Restricción por requerimiento mínimo de vitamina D: 10H10C100L10 ≥++ Restricciones de no negatividad: 0HCL ≥ 40 0H,C,L ≥
  • 41. Programación Lineal Función objetivo Programación Lineal H20C44L40ZMin ++= Función objetivo H20C44L40ZMin ++ 41
  • 42. Programación Lineal El programa queda: Programación Lineal El programa queda: H20C44L40ZMin ++= sujeto a H20C44L40ZMin ++ 110C 1H10CL ≥++ 50H10C10L100 ≥++ 0HCL ≥ 10H10C100L10 ≥++ 0H,C,L ≥ 42
  • 43. Programación Lineal PROBLEMA 03 Programación Lineal PROBLEMA 03.- La compañía Mauser, fabricante de fusiles automáticos, ti 3 d t t l l f ttiene 3 departamentos en los cuales se manufacturan sus modelos S-1000 y S-2000, las capacidades mensuales son las siguientes: Requerimientos unitarios de tiempo (en horas) mensuales son las siguientes: de tiempo (en horas) Departamentos Horas disponibles en el siguiente mes Modelo S-2000 Modelo S-1000 Departamento 1 4 2 1,600 Departamento 2 2.5 1 1,200 43 Departamento 3 4.5 1.5 1,600
  • 44. Programación Lineal La utilidad del modelo S 1000 es de 40 dólares por Programación Lineal La utilidad del modelo S-1000 es de 40 dólares por unidad y la del modelo S-2000 es de 10 dólares por unidad; suponiendo que la compañía puede venderunidad; suponiendo que la compañía puede vender cualquier cantidad de estos productos, debido a condiciones favorables de mercado. Determinar el número de unidades de cada modelo que se debe de fabricar de manera que se maximice la utilidad total. 44
  • 45. Programación Lineal PROBLEMA 04 Programación Lineal Un barco tiene tres bodegas: en la proa, en el centro y en la popa Los límites de capacidad son: PROBLEMA 04.- en la popa. Los límites de capacidad son: C id dCapacidad Peso Volumen (Ton) (Pi 3 ) Bodega (Ton) (Pies 3 ) Proa 2,000 100,000 Centro 3 000 135 000Centro 3,000 135,000 Popa 1,500 30,000 45
  • 46. Programación Lineal Se ofrecen los siguientes cargamentos y los dueños de Programación Lineal Se ofrecen los siguientes cargamentos y los dueños de los barcos pueden aceptar el total o una porción cualquiera de cada artículo.cualquiera de cada artículo. Cantidad Ganacia Peso Vol/Ton por Ton (Ton) (Pies 3 ) ($) Artículo ( ) A 6,000 60 6 B 4,000 50 8 C 2,000 25 5 46
  • 47. Programación Lineal Para preservar el equilibrio de barco el peso en cada Programación Lineal Para preservar el equilibrio de barco, el peso en cada bodega debe ser proporcional a la capacidad en toneladas.toneladas. ¿Cómo debe distribuirse la carga para hacer máxima la ganancia?ganancia? 47
  • 48. Programación Lineal La siguiente gráfica permite visualizar el problema e Programación Lineal La siguiente gráfica permite visualizar el problema e identificar las variables de decisión. PROA A xA1 xA2 xA3 PROA B A2A3 xB1 xB2 CENTRO B xB2 xB3 xC1 x C C1 xC2 xC3 48 POPA
  • 49. Programación Lineal SOLUCION Programación Lineal SOLUCION.- Variables de decisión xij : cantidad en toneladas del artículo i que se transporta en la bodega j. i = A, B y C j = 1 (Proa), 2 (Centro) y 3 (Popa) Ejemplo xC2 : cantidad de toneladas del artículo C que sexC2 : cantidad de toneladas del artículo C que se transporta en la bodega 2 (Centro) 49
  • 50. Programación Lineal Restricciones Programación Lineal Restricciones por límite de cantidad de artículos: 0006 Restricciones 000,6xxx 3A2A1A ≤++ 000,4xxx 3B2B1B ≤++ 3B2B1B 000,2xxx 3C2C1C ≤++ Restricciones por límite de capacidad de peso del barco: 000,2xxx 1C1B1A ≤++ 000,2xxx 1C1B1A ≤++ 000,3xxx 2C2B2A ≤++ 5001 50 500,1xxx 3C3B3A ≤++
  • 51. Programación Lineal Restricciones por límite de capacidad de volumen del Programación Lineal Restricciones por límite de capacidad de volumen del barco: 000,100x25x50x60 1C1B1A ≤++ ,1C1B1A 000,135x25x50x60 2C2B2A ≤++ 00030255060 ≤++ 000,30x25x50x60 3C3B3A ≤++ Restricción para preservar el equilibrio del barco: 500,1 xxx 000,3 xxx 000,2 xxx 3C3B3A2C2B2A1C1B1A ++ = ++ = ++ ,,, Restricciones de no negatividad: 0≥ i∀ j∀ 51 0xij ≥ i∀ j∀
  • 52. Programación Lineal Función objetivo Programación Lineal )xxx(6ZMax +++= Función objetivo )(5 )xxx(8 )xxx(6ZMax 3B2B1B 3A2A1A +++ +++= )xxx(5 3C2C1C ++ 52