tema 6 Álgebra lineal: programación lineal
Post on 13-Jan-2017
203 Views
Preview:
TRANSCRIPT
IntroduccionProgramacion lineal
El metodo del sımplex
Programacion linealEstudios de Ingenierıa
Juan Gabriel Gomila
Frogames
juangabriel@frogames.es
10 de febrero de 2016
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Indice
1 Introduccion
2 Programacion linealForma estandar de un PPLSoluciones basicas de un PPL
3 El metodo del sımplexUn ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
1 Introduccion2 Programacion lineal
Forma estandar de un PPLSoluciones basicas de unPPL
3 El metodo del sımplexUn ejemplo para comenzarEl metodo del sımplex enproblemas de minimizacionObservaciones finales
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Introduccion
Se comenzara el tema mostrando diversos ejemplos que se puedenmodelizar mediante tecnicas de programacion lineal.El objetivo de la programacion lineal es optimizar (minimizar omaximizar) una funcion lineal de n variables sujetas a restriccionesde igualdad o desigualdad, tambien lineales.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Introduccion
La programacion lineal se aplica en diversos campos, como porejemplo:
Logıstica: problema del transporte.
Mezclas: problema de la dieta.
Finanzas.
Mercadotecnia.
Asignacion de tareas.
Produccion.
Otras decisiones.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Introduccion
Cualquier problema de programacion lineal requiere cuatrocomponentes basicos:
1 El conjunto de datos del problema.
2 El conjunto de variables que intervienen en el problema, juntocon sus dominios de definicion.
3 El conjunto de restricciones del problema que definen elconjunto de soluciones admisibles.
4 La funcion que se ha de optimizar.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
El problema del transporte
El problema del transporte se refiere al proceso de determinar elnumero de mercancıas que se han de llevar desde cada uno de losorıgenes a cada uno de los destino posibles.El objetivo suele ser minimizar el coste del transporte y lasrestricciones vienen dadas por las capacidades de produccion decada origen y las necesidades de cada destinacion.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
El problema del transporte
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
El problema del transporte
Supongase que un determinado producto se ha de llevar encantidades u1, u2, · · · , um desde m puntos de origen y se ha derecibir en n destinos en cantidades v1, v2, · · · , vn.El problema consiste en determinar las cantidades xij que se han dellevar desde el origen i al destino j para minimizar el coste deltransporte.Los cuatros elementos principales del problema son:
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
El problema del transporte
1 Datos:
m: numero de orıgenes.n: numero de destinos.ui : cantidad de producto que se ha de llevar desde el origen ivj : cantidad de producto que se ha de recibir en el destino jcij : coste de llevar una unidad de producto desde i hasta j
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
El problema del transporte
2 Variables:
xij : cantidad de producto que se lleva desde i hasta j , conxij ≥ 0 para todo i = 1, · · · ,m y para todo j = 1 · · · , n(dominio de definicion de las variables)
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
El problema del transporte
3 Restricciones:
La cantidad total del producto que surge de i (ui ) ha decoincidir con la suma de las cantidades que surgen de i a cadadestino j = 1, · · · , n:
n∑j=1
xij = ui
La cantidad total de producto que recibe j (vi ) ha de coincidircon la suma de cantidades que lleguen a j desde todos losorıgenes i = 1, · · · ,m:
m∑i=1
xij = vj
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
El problema del transporte
4 Objetivo:En este caso, se va a minimizar el coste del envıo.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
El problema del transporte
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
El problema del transporte - Ejemplo
Una companıa de ambito nacional produce y distribuye una lıneade neveras de alta eficiencia energetica. La empresa tiene lıneas deproduccion y montaje en dos ciudades, Pamplona y Bilbao, y trescadenas de distribucion localizadas en Madrid, Barcelona y Sevilla.La oficina de Madrid presenta una demanda anual de 10000neveras, la de Sevilla 8000 y la de Barcelona 15000.La planta de Bilbao puede producir hasta 20.000 neveras anuales yla de Pamplona 15000.Los costes de transporte por unidad (en euros) son los siguientes:
Costes de transporte por unidad (en euros)
Origen/Destino Madrid Barcelona Sevilla
Pamplona 3 1 5Bilbao 2 2 4
Se plantea un problema de programacion lineal que minimiza loscostes anuales de la companıa.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Mezclas. El problema de la dieta
El problema de la dieta representa una de las primeras aplicacionesde la programacion lineal que se utiliza en hospitales. Se usa paradeterminar la dieta de los pacientes que satisfaciendo unasespecificaciones nutritivas mınimas de la forma mas barata posible.Actualmente tambien se aplica en el sector de la ganaderıa con lamisma idea; encontrar la combinacion optima de alimentos queconsiguen una aportacion nutritiva mınima suponiendo el menorcoste posible. Una aplicacion de este problema se muestra en elsiguiente ejemplo:
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Mezclas. El problema de la dieta - Ejemplo
Un ganadero se quiere asegurar de que sus animales ingierendiariamente al menos 14 unidades de hierro, doce de vitamina A y18 de vitamina C.Un kilogramo de harina tiene un coste de dos euros y cuenta conuna unidad de hierro, una de vitamina A y tres de vitamina C. Unkilogramo de maız tiene un coste de dos euros y contiene dosunidades de hierro, una de vitamina A y una de vitamina C.Determınense las posibles maneras de alimentar al ganado quesatisfagan las necesidades mınimas alimenticias diarias con elmınimo coste posible.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Produccion - Ejemplo
Una empresa fabrica cuatro tipos de corbata. Una de seda, otra depoliester y dos de poliester y algodon. La tabla siguiente muestra elcoste en euros de los materiales y de su disponibilidad:
Costes y disponibilidad de los materiales
Material Coste por metro Metros disponibles/mes
Seda 21 800Poliester 6 3000Algodon 9 1600
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Produccion - Ejemplos
La tabla siguiente muestra todos los datos relativos a laproduccion, la demanda mensual y la composicion de cada tipo decorbata:
Propiedades
Tipos Prendasvendidas
Demandamin/max
Metrosnecesarios
Composicion
Seda 6.70 6000 - 7000 0.125 100 % sedaPoliester 3.55 10000 - 14000 0.08 100 % polPol/Alg 4.31 13000 - 16000 0.10 50 %pol -
50 %cotı¿ 12
Pol/Alg 4.81 6000 - 8500 0.1. 30 %pol -70 %cotı¿ 1
2Planteese un problema de programacion lineal para determinar elplan de produccion que maximiza los beneficios de la empresa.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Planificacion de horarios
La planificacion de horarios intenta dar respuesta efectiva a lasnecesidades de personal durante un periodo de tiempo concreto.Sectores tıpicos donde se hace esta programacion lineal para tomardecisiones sobre la planificacion de horarios son las entidadesbancarias y los grandes almacenes.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Planificacion de horarios- Ejemplos
Supongase que una entidad bancaria necesita diariamente entre 10y 18 cajeros en funcion de la hora del dıa. Las necesidades diariasse especifican en la tabla siguiente:
Disponibilidad
Franja horaria Num. Cajeros
9a.m. - 10a.m. 1010a.m. - 11a.m. 1211a.m. - 12a.m. 1412a.m. - 1p.m. 161p.m. - 2p.m. 182p.m. - 3p.m. 173p.m. - 4p.m. 154p.m. - 5p.m. 10
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Planificacion de horarios- Ejemplos
La oficina tiene 12 trabajadores a jornada completa y dispone depersonal suficiente para trabajar a media jornada. Un cajero quetrabaja a media jornada debe estar operativo 4 horas al dıa y estardisponible para comenzar a trabajar a cualquier hora entre lasnueve de la manana y la una de la tarde. Los trabajadores a jornadacompleta deben estar operativos desde las nueve de la mananahasta las cinco de la tarde y tienen una hora libre para comer (lamitad come de once a doce y la otra mitad lo hace de doce a una).Las normas de la entidad limitan el numero de horas realizadas porlos trabajadores a tiempo parcial a, como mucho, el 50 % de lashoras diarias que se realicen. (Notese que se realizan 112 horasdiarias). Estos trabajadores ganan 16 euros al dıa y lostrabajadores a jornada completa 50 euros al dıa.Se plantea un problema de programacion lineal que establece unhorario que minimiza los costes salariales del banco.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Finanzas. Seleccion de una cartera de valores - Ejemplos
Un banco invierte en credito al consumo, bonos corporativos,depositos de oro y prestamos a la construcci.on. Actualmentedispone de cinco millones de euros para invertir y pretende, por unlado maximizar el interes esperado para los proximos seis meses ypor el otro cumplir con la diversificacion propugnada por la JuntaDirectiva segun se especifica en la tabla siguiente:
Finanzas
Tipos de inversion Interes esperado Lımite de inversion(millones de euros)
Creditos al consumo 7 % 1Bonos corporativos 11 % 2.5Depositos de oro 19 % 1.5Prestamos constr. 15 % 1.8
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Finanzas. Seleccion de una cartera de valores - Ejemplos
La Directiva tambien exige que como mınimo un 55 % de losfondos se dediquen a depositos de oro y prestamos a laconstruccion, mientras que el porcentaje dedicado a los creditos alconsumidor no han de superar el 15 % de los fondos.Se plantea un problema de programacion lineal que optimice elobjetivo del banco.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Mercadotecnia
La programacion lineal se utiliza en el campo de la mercadotecniay la publicidad como una herramienta que permite determinar cuales la combinacion mas efectiva de medios para anunciar losproductos de una empresa.Muchas veces la empresa dispone de un presupuesto fijo parapublicidad y el objetivo es distribuir este presupuesto entre diversasopciones (TV, radio, diarios, revistas, Google, Facebook...) demanera que los productos de una empresa tengan la maximadifusion. En otros casos, las restricciones vienen dadas por ladisponibilidad de medios y de las polıticas publicitarias de laempresa. Se vera una aplicacion con el siguiente ejemplo:
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Mercadotecnia - Ejemplo
Una cadena nacional de locales de ocio dispone de 8000 eurossemanales para publicidad. Este dinero se ha de destinar a publicaranuncios en TV, diarios y dos emisoras de radio.El objetivo final es conseguir la mayor audiencia posible.La tabla siguiente recoge toda la informacion referente a laaudiencia esperada por anuncio, el coste (en euros) de cadaanuncio y el numero maximo de anuncios semanales posibles encada medio.
Mercadotecnia
Medio Audiencia Coste Numero maximo
TV 5000 800 12Diario 8500 925 5Radio 1 2400 290 25Radio 2 2800 380 20
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Mercadotecnia - Ejemplo
La empresa tambien exige la contratacion de un mınimo de 5anuncios por radio semanales y no se puede destinar a este mediomas de 1800 euros por semana. Planteese un problema deprogramacion lineal que optimice el objetivo de la empresa.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Investigacion de mercados
La programacion lineal tambien se aplica al estudio de mercados.Mediante el siguiente ejemplo se puede ver como las estadısticaspueden emplear la programacion lineal para el diseno de encuestas.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Investigacion de mercados - Ejemplo
Se va a realizar una encuesta para determianar la opinion de losciudadanos de Baleares sobre la inmigracion. La encuesta ha desatisfacer lo siguiente:
1 Entrevistar un mınimo de 2300 familias baleares.
2 En al menos 1000 familias entrevistadas, la persona de masedad no debe superar los 30 anos.
3 En al menos 600 familias entrevistadas, la edad de la personamayor ha de estar comprendida entre los 31 y los 50 anos.
4 El porcentaje de familias entrevistadas que pertenecen a zonascon alta tasa de inmigracion no ha de ser inferior al 15 % deltotal.
Todas las encuentas se han de hacer personalmente y ha deresponder la persona mas mayor de cada familia.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Investigacion de mercados - Ejemplo
La tabla siguiente indica el coste (en euros) de cada encuestasegun la edad del encuestado y si pertenece o no a una zona contasa elevada de inmigracion.
Inmigracion
Zona <30 anos 31-50 anos >50 anos
Inmigracion baja 6.90 7.25 6.10Inmigracion alta 7.50 6.80 5.50
Planteese el problema de programacion lineal que satisface todaslas condiciones de la encuesta y minimice su coste.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
1 Introduccion2 Programacion lineal
Forma estandar de un PPLSoluciones basicas de unPPL
3 El metodo del sımplexUn ejemplo para comenzarEl metodo del sımplex enproblemas de minimizacionObservaciones finales
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Programacion lineal
Ya se han visto en los ejemplos del apartado anterior que laprogramacion lineal se presenta en muchas aplicaciones en lascuales es necesaria la toma de decisiones.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Programacion lineal
Definicion
La forma mas general de un problema de programacion lineal(PPL) consiste en minimizar o maximizar una funcion:
Z = f (x) =n∑
j=1
cjxj
...
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Programacion lineal
Definicion
Bajo las restricciones:
n∑j=1
aijxj = bi , i = 1, 2, · · · , p − 1
n∑j=1
aijxj ≥ bi , i = p, p + 1, · · · , q − 1
n∑j=1
aijxj ≤ bi , i = q, q + 1, · · · ,m
Donde p, q y m son numeros positivos tales que 1 ≤ p ≤ q ≤ m,normalmente n ≥ m.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Programacion lineal
Solucion factible
Un punto (x1, x2, · · · , xn) ∈ R que satisface todas las restriccionesdel PPL, se denomina solucion factible. El conjunto de todas lassoluciones factibles se denomina region factible o region defactibilidad.
Solucion optima
Un punto factible x se denomina solucion optima del PPL demaximizacion (o minimizacion) cuando:
f (x) ≥ f (x) ( o f (x) ≤ f (x))
Para cualquier otro punto factible x .
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Programacion lineal
El objetivo de los problemas de optimizacion es encontrar unoptimo global. En general solo se encuentran locales (problemas deoptimizacion, estudiados en bachillerato, en los que se calculaba eloptimo local y solo bajo ciertas condiciones los optimos eranglobales).Los problemas de PL presentan propiedades que hacen posibleencontrar el optimo global.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Propiedades
1 Si la region factible esta acotada, entonces el problemasiempre tiene solucion.
2 El optimo de un PPL es siempre un optimo global.
3 Si x e y son soluciones de un PPL, entonces cualquiera quesea la combinacion lineal convexa de ellos tambien es unasolucion optima:
λx + (1− λ)y , λ ∈ [0, 1]
4 La solucion optima alcanza siempre, al menos, un puntoextremo de la region factible.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
Se vera a continuacion ejemplos de PPL con solucion unica,solucion multiple, solucion no acotada y solucion infactible (o loque es lo mismo, sin solucion).
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
Ejemplo 1
Maximıcese la funcion Z = 3x1 + x2 bajo las restricciones:
−x1 + x2 ≤ 2x1 + x2 ≤ 6x1 ≤ 32x1 − x2 ≤ 4−x2 ≤ 0−x1 − x2 ≤ −1−x1 ≤ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
Representese graficamente la region factible. La region factible serala interseccion de todos los semiplanos que determinen cada unade las restricciones. Considerense las rectas:
r1 : −x1 + x2 = 2, que pasa por los puntos (0, 2), (−2, 0).
r2 : x1 + x2, que pasa por los puntos (0, 6), (6, 0).
r3 : x1 = 3, que es paralela al eje Y .
r4 : −2x1 − x2 = 4, que pasa por los puntos (0,−4), (2, 0).
r5 : x2 = 0, que es paralela al eje X .
r6 : x1 + x2 = 1, que pasa por los puntos (0, 1), (1, 0).
r7 : x1 = 0, que es paralela al eje Y
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
Si ahora se hacen las interacciones r1 ∩ r2, se obtiene el punto(2, 4), r2 ∩ r3 el punto (3, 3), y r3 ∩ r4 el punto (3, 2).
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
R en este caso es un polıgono cerrado. Las soluciones siempre seencuentran en los extremos de la region factible, por tanto seevaluara la funcion objetivo Z = 3x1 + x2 en los vertices de R:
Z (0, 1) = 1; Z (0, 2) = 2; Z (2, 4) = 10; Z (3, 3) = 12;
Z (3, 2) = 11; Z (2, 0) = 6; Z (1, 0) = 3.
Por tanto el maximo se alcanza en el punto (3, 3) y vale Z = 12.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
Ejemplo 2
Maximıcese la funcion Z = x1 + x2 bajo las restricciones:
−x1 + x2 ≤ 2x1 + x2 ≤ 6x1 ≤ 32x1 − x2 ≤ 4−x2 ≤ 0−x1 − x2 ≤ −1−x1 ≤ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
Observese que el conjunto de restricciones es el mismo que el delejemplo anterior, por tanto la region factible sera la misma.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
El maximo se alcanza en los puntos (2, 4) y (3, 3), entonces todoslos puntos del segmento que une estos dos puntos son maximosglobales.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
Ejemplo 3
Maximıcese la funcion Z = 3x1 + x2 bajo las restricciones:−x1 + x2 ≤ 2−x2 ≤ 0−x1 − x2 ≤ −1−x1 ≤ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
En este caso se puede observar que la region factible no estaacotada en la direccion de crecimiento de la funcion objetivo.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
Ejemplo 4
Minimıcese la funcion Z = 0,6x1 + x2 bajo las restricciones:10x1 + 4x2 ≥ 205x1 + 5x2 ≥ 202x1 + 6x2 ≥ 12x1 ≥ 0x2 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
En este caso la region factible no esta acotada pero la funcionalcanza el mınimo en el punto (3, 1) y vale Z = 2,8.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplos de PL
Ejemplo 5
Minimıcese la funcion Z = 2x1 − 3x2 bajo las restricciones:x1 − 2x2 ≥ 42x1 − 4x2 ≤ −6x1 ≥ 0x2 ≥ 0
En este caso, la region factible es R = ∅; es decir, el problema notiene solucion.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
1 Introduccion2 Programacion lineal
Forma estandar de un PPLSoluciones basicas de unPPL
3 El metodo del sımplexUn ejemplo para comenzarEl metodo del sımplex enproblemas de minimizacionObservaciones finales
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
El PPL
Forma estandar
Para describir un PPL, se necesita:
1 Un vector c = (c1, c2, · · · , cn) ∈ Rn.
2 Un vector b = (b1, b2, · · · , bn) ∈ Rn con bi ≥ 0 para todoi = 1, · · · ,m.
3 Una matriz A = (aij)m×n.
Con estos elementos, el problema lineal asociado en forma estandartiene la forma siguiente:
Min(Max) Z = cX
Bajo las restricciones AX = B, donde:
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
El PPL
Forma estandar
X =
x1
x2...xn
Con xj ≥ 0 para todo j = i · · · , n y:
B =
b1
b2...bm
Con bi ≥ 0 para todo i = 1 · · · ,m. Normalmente n ≥ m.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
El PPL
Definicion
Dıcese que un PPL esta en forma estandar si:
1 Es de minimizacion o de maximizacion.
2 Solo incluye restricciones de igualdad.
3 bi ≥ 0 para todo i = 1, · · · ,m.
4 xj ≥ 0 para todo j = i , · · · , n.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Cualquiera que sea el PPl se puede transformar a la formaestandar. Vease como:
Paso 1: transformar las variables en no negativas
Las variables no restringidas en signo se pueden expresar comodiferencia de dos variables no negativas. Se define:
x+i = max{0, xi}
x−i = max{0,−xi}
Se satisface que x+i , x
−i ≥ 0 i xi = x+
i − x−i .
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Paso 2: transformar las restricciones de desigualdad en igualdades
Las restricciones de desigualdad se pueden transformar enrestricciones de igualdad equivalentes introduciendo nuevasvariables denominadas variables compensatorias: Siai1x1 + ai2x2 + · · ·+ ainxn ≤ bi , entonces existe una variablexn+1 ≥ 0 tal que:
ai1x1 + ai2x2 + · · ·+ ainxn + xn+1 = bi
Si ai1x1 + ai2x2 + · · ·+ ainxn ≥ bi , entonces existe una variablexn+1 ≥ 0 tal que:
ai1x1 + ai2x2 + · · ·+ ainxn − xn+1 = bi
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Paso 3: maximizar es lo mismo que minimizar
Un problema de maximizacion Zmax = cX es equivalente aminimizar Zmin = −cX (y viceversa) si ambos problemas verificanel mismo conjunto de restricciones.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Paso 4: no negatividad de los terminos independientes
Toda restriccion con termino independiente bi < 0 se puedetransformar en otra con termino independiente no negativomultiplicando toda la restriccion por −1.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Ejemplo 1
Encuentrese max Z = 2x1 − 3x2 + 5x3 bajo las restricciones:x1 + x2 ≤ 23x1 + x2 − x3 ≥ 3x1, x2, x3 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Para resolverlo se escribira en forma de maximo. Observese quetodas las variables son no negativas. Se tendran que transformarlas restricciones de desigualdad en igualdades, ası habra que anadirvariables compensatorias. En forma estandar sera:
max Z = 2x1 − 3x2 + 5x3 + 0x4 + 0x5
Bajo las restricciones:x1 + x2 + x4 = 23x1 + x2 − x3 − x5 = 3x1, x2, x3, x4, x5 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Si se quisiese el mismo problema en forma estandar de mınimo,serıa:
min Z = −2x1 + 3x2 − 5x3 + 0x4 + 0x5
Bajo las restricciones:x1 + x2 + x4 = 23x1 + x2 − x3 − x5 = 3x1, x2, x3, x4, x5 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Ejemplo 2
Encuentrese max Z = 2x1 − 3x2 + 5x3 bajo las restricciones:x1 + x2 ≤ 23x1 + x2 − x3 ≥ 3x1, x2 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Observese que esta vez la variable x3 no esta restringida en signo.Habra que escribir x3 = x6 − x7 con x6 = x+
3 ≥ 0 y x7 = x−3 ≥ 0.Ası el problema en forma estandar sera:
max Z = 2x1 − 3x2 + 5(x6 − x7) + 0x4 + 0x5
Bajo las restricciones:x1 + x2 + x4 = 23x1 + x2 − (x6 − x7)− x5 = 3x1, x2, x4, x5, x6, x7 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Ejemplo 3
Encuentrese max Z = 3x1 − x3 bajo las restricciones:x1 + x2 + x3 = 1x1 − x2 − x3 ≤ 1x1 + x3 ≥ −1x1 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Como todas las variables han de ser no negativas habra que pasara:
x2 = y2 − z2; y2 = x+2 , z2 = x−2
x3 = y3 − z3; y3 = x+3 , z3 = x−3
Con y2, z2, y3, z3 ≥ 0. Notese que el termino independiente de latercera restriccion es negativo, entonces se multiplica por −1. Elproblema inicial sera:
max Z = max Z = 3x1 − y3 + z3
Bajo las restricciones:x1 + y2 − z2 + y3 − z3 = 1x1 − y2 + z2 − y3 + z3 ≤ 1−x1 − y3 + z3 ≤ 1x1, y2, z2, y3, z3 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Transformacion de un PPL a forma estandar
Ahora solo falta transformar las restricciones de desigualdad enrestricciones de igualdad:
x1 + y2 − z2 + y3 − z3 = 1x1 − y2 + z2 − y3 + z3 + u1 = 1−x1 − y3 + z3 + u2 = 1x1, y2, z2, y3, z3, u1, u2 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
1 Introduccion2 Programacion lineal
Forma estandar de un PPLSoluciones basicas de unPPL
3 El metodo del sımplexUn ejemplo para comenzarEl metodo del sımplex enproblemas de minimizacionObservaciones finales
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Soluciones basicas de un PPL
Supongase que un PPL viene dado en forma estandarmin(max) Z = cX bajo las restricciones AX = B donde:
X = (x1, x2, · · · , xn)t , xj ≥ 0 ∀i = i , · · · , n
B = (b1, b2, · · · , bm)t , bi ≥ 0 ∀i = 1, · · · ,m
A = (aij)m×n
Se puede suponer sin perdida de generalidad que rang(A) = m, yaque m ≤ n y que el sistema AX = B tiene solucion. En cualquierotro caso, o bien el sistema es equivalente a otro sistemacompatible con menos ecuaciones o bien el sistema esincompatible.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Soluciones basicas de un PPL
Sea A la matriz anterior, entonces:
Definicion
Se denomina basica de A a toda matriz de orden m, Mb derango m extraıda de A.
Mb es basica factible si es basica y satisface M−1b B ≥ 0.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Soluciones basicas de un PPL
Definicion
Sea Xb el vector de las variables asociadas a las columnas de Mb,estas variables se denominan basicas y las demas variables nobasicas. Si se asigna el valor cero a las variables no basicas XN , elsistema AX = B se puede escribir como:
(Mb | XN)
(Xb
0
)= B
Donde MbXb = B y, como Mb es invertible, Xb = M−1b B es la
solucion basica asociada a Mb. Si ademas Mb es una matriz basicafactible, su solucion basica es factible.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Soluciones basicas de un PPL
Ejemplo 1
Encuentrense las soluciones basicas del sistema.{x1 + 2x2 + x3 = 8x1 + 3x2 − x3 = 12
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplo 1
Las matrices A y B son:
A =
(1 2 11 3 −1
)
B =
(8
12
)
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplo 1.1
Si se considera:
Mb =
(1 21 3
)Las variables son x1, x2 y la variable no basica x3 = 0, entonces:
Xb = M−1b B =
(3 −2−1 1
)(8
12
)=
(04
)Ası (x1, x2) = (0, 4) es una solucion basica factible.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplo 1.2
Si tomamos como matriz basica:
Mb =
(1 11 −1
)Las variables son x1, x3 y la variable no basica x2 = 0, entonces:
Xb = M−1b B =
(1/2 1/21/2 −1/2
)(8
12
)=
(10−2
)En este caso se obtiene una solucion basica no factible (x3 < 0)
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplo 1.3
Si se toma como matriz basica:
Mb =
(2 13 −1
)Las variables son x2, x3 y la variable no basica x1 = 0, entonces:
Xb = M−1b B =
(1/5 1/53/5 −2/5
)(8
12
)=
(40
)Ası (x2, x3) = (4, 0) es una solucion basica factible.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Ejemplo 1
El numero de soluciones basicas factibles de un PPL acotado conun numero finito de restricciones es siempre finito y a cada una lecorresponde un punto extremo de la region factible.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Soluciones basicas de un PPL
Teorema
Sea:
R = {x = (x1, x2, · · · , xn) : AX = B, xj ≥ 0 j = 1 · · · , n}
Con A = (aij)m×n y rang(A) = m, entonces x ∈ Rn es un puntoextremo de R si y solo si A se puede descomponer comoA = (Mb | XN) tal que:
X =
(Xb
XN
)(M−1
b B0
)Donde Mb es una matriz de orden m invertible, extraıda de A quesatisface M−1B ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Soluciones basicas de un PPL
Observacion
Recuerdese que si Mb es una matriz de orden m invertible, esequivalente por filas a la matriz identidad Im o a cualquier otramatriz de orden m, las columnas de la cual son los vectoresunitarios:e1 = (1, 0, · · · , 0), e2 = (0, 1, · · · , 0), · · · , em = (0, 0, · · · , 1) nonecesariamente en este orden:
Im ∼
1 0 00 1 00 0 1
∼ 0 1 0
1 0 00 0 1
∼ 0 1 0
0 0 11 0 0
∼ · · ·
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Forma estandar de un PPLSoluciones basicas de un PPL
Soluciones basicas de un PPL
Teorema. Propiedad fundamental de la programacion lineal
Si un PPL tiene una solucion optima, esta es una solucion basicafactible.
Por tanto, para hallar el optimo de un PPL se encontrara en elconjunto de soluciones factibles.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
1 Introduccion2 Programacion lineal
Forma estandar de un PPLSoluciones basicas de unPPL
3 El metodo del sımplexUn ejemplo para comenzarEl metodo del sımplex enproblemas de minimizacionObservaciones finales
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex
Es un procedimiento algebraico (no geometrico) mediante el cualse pasa de una solucion basica factible inicial (o cualquier otra) auna solucion basica factible adyacente, mejorando, o al menos, noempeorando el valor de la funcion objetivo.Existen muchas versiones del metodo sımplex y todas pretenden lomismo: encontrar la solucion optima de un PPL.Para encontrar este optimo se emplean unas tablas. Se parte deuna tabla inicial y se van transformando los valores de la tablahasta llegar a la solucion optima.En este curso se aplicara el metodo revisado del sımplex queincluye la funcion objetivo en las tablas. En el metodo del sımplexse toma como matriz basica factible inicial la matriz identidad ycualquier otra matriz basica factible obtenida a partir de la matrizidentidad haciendo intercambios de filas.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
1 Introduccion2 Programacion lineal
Forma estandar de un PPLSoluciones basicas de unPPL
3 El metodo del sımplexUn ejemplo para comenzarEl metodo del sımplex enproblemas de minimizacionObservaciones finales
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex
Ejemplo del sımplex
Encuentrese max Z = 40x1 + 30x2 bajo las restricciones:x1 ≤ 16x2 ≤ 8
x1 + 2x2 ≤ 24x1, x2 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex
Si se resuleve graficamente obteniendo la region factible convertices (0, 0), (16, 0), (16, 4), (8, 8), (0, 8) y se evalua Z en estosvertices se obtiene que el maximo se alcanza en el punto (16, 4) yvale 760.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex
Para aplicar el metodo del sımplex se han de hacer una serie depasos:
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex - Paso 1
Se ha de escribir el problema de forma estandar de maximo, quesera el mismo que denota el sistema:
Z −40x1 −30x2 +0s1 +0s2 +0s3 = 0x1 +s1 = 16
x2 +s2 = 8x1 +2x2 +s3 = 24
Con x1, x2, s1, s2, s3 ≥ 0.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex - Paso 1
Se puede construir la tabla:Z x1 x2 s1 s2 s3 Constantes
fila 1 1 -40 -30 0 0 0 0fila 2 0 1 0 1 0 0 16fila 3 0 0 1 0 1 0 8fila 4 0 1 2 0 0 1 24
La matriz basica factible inicial (matriz identidad) corresponde alas variables basicas, en este caso a las variables compensatoriass1, s2, s3 y las variables no basicas son x1 = x2 = 0.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex - Paso 1
Teniendo en cuenta tambien la fila 1 de la tabla, se puede expresarel sistema:
1 0 0 00 1 0 00 0 1 00 0 0 1
Zs1
s2
s3
=
0
168
24
Que corresponde a s1 = 16, s2 = 8, s3 = 24 y Z = 0 (con(x1, x2) = (0, 0). Notese que el punto (0, 0) es un vertice de laregion factible.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex - Paso 2
Se busca la columna que en la fila 1 tiene la entrada negativacon mayor valor absoluto (columna pivote).
Se dividen las constantes por los valores positivos de lacolumna pivote y se elige el mınimo, la fila correspondiente aeste mınimo sera la fila pivote.
El elemento que este en la insterseccion de la fila y la columnapivotes debe corresponderse con la nueva variable basica.Notese que en nuestro caso la columna pivote es la segundafila y la fila pivote es la que correspondra a la nueva almınimo entre 16/1 y 24/1, es decir, la fila 2. Por lo tanto elpivote es 1 y le corresponde la variable x1.
Se transforma la tabla inicial de manera que la columna pivotesea un vector unitario (todos los elementos de la columna hande ser nulos salvo el pivote que debe ser 1).
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex - Paso 2
Por tanto, si se hace f1 + 40f2, f4 − f2 se obtiene la nueva tabla:Z x1 x2 s1 s2 s3 Constantes
fila 1 1 0 -30 40 0 0 640fila 2 0 1 0 1 0 0 16fila 3 0 0 1 0 1 0 8fila 4 0 0 2 -1 0 1 8
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex - Paso 2
De la tabla se puede extraer el sistema basico:1 0 0 00 1 0 00 0 1 00 0 0 1
Zx1
s2
s3
=
6401688
Que corresponde a x1 = 16, s2 = 8, s3 = 8 y Z = 640 (conx2 = 0, s2 = 0). Notese que el punto (16, 0) es otro vertice de laregion factible.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex - Paso 3
Como en la fila 1 todavıa hay un numero negativo, la solucion sepuede mejorar. Iterando el paso 2 anterior:
La nueva variable basica es x2.
Si se hace el mınimo entre 8/1 y 8/2, se obtiene que el pivoteesta en la fila 4.
El pivote es 2 y por tanto se dividira la fila pivote por 2 paraobtener el pivote 1.
Finalmente, se hacen ceros mediante la resta de elementos dela columna pivote.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex - Paso 3
Por tanto, si se hace f1 + 30f4, f3 − f4 se obtiene la nueva tabla:Z x1 x2 s1 s2 s3 Constantes
fila 1 1 0 0 25 0 15 760fila 2 0 1 0 1 0 0 16fila 3 0 0 0 1/2 1 -1/2 4fila 4 0 0 1 -1/2 0 1/2 4
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex - Paso 3
De la tabla se puede extraer el sistema basico:1 0 0 00 1 0 00 0 1 00 0 0 1
Zx1
s2
x2
=
7601644
Que se corresponde con x1 = 16, x2 = 4, s2 = 4 y Z = 760 (dondes1 = 0, s3 = 0). Notese que el punto (16, 4) es otro vertice de laregion factible.En la fila 1 ya no quedan numeros negativos, por tanto la solucionno se puede mejorar.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
1 Introduccion2 Programacion lineal
Forma estandar de un PPLSoluciones basicas de unPPL
3 El metodo del sımplexUn ejemplo para comenzarEl metodo del sımplex enproblemas de minimizacionObservaciones finales
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
En problemas de minimizacion no se puede aplicar directamente elmetodo que se ha descrito en el apartado anterior. Vease comoproceder en este caso con el siguiente ejemplo:
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Ejemplo 2 del sımplex
Encuentrese min Z = x1 + 4x2 bajo las restricciones:x1 + 2x2 ≥ 8
3x1 + 2x2 ≥ 12x1, x2 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Si se escribe en forma estandar de mınimo, queda:
min Z = x1 + 4x2 + 0s1 + 0s2
Bajo las restricciones:
(1 2 −1 03 2 0 −1
)x1
x2
s1
s2
=
(8
12
)
Con x1, x2, s1, s2 ≥ 0
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Se puede observar que de la matriz de coeficientes no se puedeextraer la matiz identidad como matriz basica factible inicial. Sepodrıa extraer la matriz: (
−1 00 −1
)Que corresponden a las variables basicas s1, s2. La solucions1 = −8, s2 = −12, que resulta una solucion basica no factible.Consecuentemente se ha de buscar una manera de obtener unasolucion basica factible inicial. Esta se obtiene anadiendo unavariable artificial no negativa a cada una de las restricciones. Estasvariables artificiales apareceran en la funcion objetivo concoeficientes grandes respecto a los coeficientes de las variables delproblema dado.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Una vez se anaden las variables compensatorias y artificiales alproblema de minimizacion se aplicara el metodo del sımplexaplicando los paso siguientes:
1 Se escribe la tabla inicial del sımplex.
2 Se transforman las columnas de las variables artificiales envectores unitarios.
3 Se busca el pivote: de entre todas las columnas de lasvariables se elige la columna con la entrada positiva mayor.Para determinar la fila pivote se hace lo mismo que en el casode la maximizacion.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Si se considera el problema de minimizacion del ejemplo anterior,una vez anadidas las variables artificiales se tiene:
Z −x1 −4x2 +0s1 +0s2 −100v1 −100v2 = 0x1 +2x2 −s1 +v1 = 8
3x1 +2x2 −s2 +v2 = 12
Con x1, x2, s1, s2, v1, v2 ≥ 0.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Se escribe la tabla inicial del problema:Z x1 x2 s1 s2 v1 v2 Constantes
1 -1 -4 0 0 -100 -100 00 1 2 -1 0 1 0 80 3 2 0 -1 0 1 12
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Si se hace f1 + 100f2 + 100f3, los vectores columna de las variablesartificiales se transforma en unitarios y se obtiene la tabla:
Z x1 x2 s1 s2 v1 v2 Constantes
1 399 396 -100 -100 0 0 20000 1 2 -1 0 1 0 80 3 2 0 -1 0 1 12
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
La columna pivote corresponde a la columna de la variable x1 y lafila pivote es la tercera. Se dividira la fila pivote por 3 para tener elpivote igual a 1 y se obtiene
Z x1 x2 s1 s2 v1 v2 Constantes
1 399 396 -100 -100 0 0 20000 1 2 -1 0 1 0 80 1 2/3 0 -1/3 0 1/3 4
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Si ahora se hace f1 − 399f3 y f2 − f3 se transformala columna pivote en un vector unitario y se obtiene una nueva tabla:
Z x1 x2 s1 s2 v1 v2 Constantes
1 0 130 -100 33 0 -133 4040 0 4/3 -1 1/3 1 -1/3 40 1 2/3 0 -1/3 0 1/3 4
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Ası se puede extraer el sistema: 1 0 00 1 00 0 1
Zv1
x1
=
40444
Que corresponde a la solucionx1 = 4, v1 = 4, s1 = s2 = x2 = v2 = 0 y Z = 404. Notese que en lasolucion aparece la variable artificial v1 = 4, lo cual no interesa. Lasolucion no es optima, todavıa queda en la fila 1 entradaspositivas. La entrada positiva mas grande corresponde a la variablex2, por tanto la columna correspondente a x2 es la columna pivotey la fila pivote es la 2, con pivote 4/3.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Si se divide la fila pivote por 4/3 se tiene que:Z x1 x2 s1 s2 v1 v2 Constantes
1 0 130 -100 33 0 -133 4040 0 1 -3/4 1/4 3/4 -1/4 30 1 2/3 0 -1/3 0 1/3 4
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Se hara f1 − 130f2 y f3 − 2/3f2, transformando la columna pivoteen un vector unitario quedarıa esta nueva tabla:
Z x1 x2 s1 s2 v1 v2 Constantes
1 0 0 -5/2 1/2 -195/2 -201/2 140 0 1 -3/4 1/4 3/4 -1/4 30 1 0 1/2 -1/2 -1/2 1/2 2
La solucion todavıa no es optima. Si se itera el proceso se obtieneque la columna pivote corresponde a la columna de la variable s2 yla fila 2 es la fila pivote, con pivote 1/4.Nota: la fila 3 no puede ser pivote, ya que es un nombre negativo,y si dividiesemos por −1/2, el valor de b3 se covertirıa en negativotambien...
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Si se divide la fila pivote por 1/4, queda:Z x1 x2 s1 s2 v1 v2 Constantes
1 0 0 -5/2 1/2 -195/2 -201/2 140 0 4 -3 1 3 -1 120 1 0 1/2 -1/2 -1/2 1/2 2
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Si ahora se hace f1 − 1/2f2 y f3 + 1/2f2 se transformala columna pivote en un vector unitario y se obtiene una nueva tabla:
Z x1 x2 s1 s2 v1 v2 Constantes
1 0 -2 -1 0 -99 -100 80 0 4 -3 1 3 -1 120 1 2 -1 0 1 0 8
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
El metodo del sımplex en problemas de minimizacion
Ası es posible extraer el sistema: 1 0 00 1 00 0 1
Zs2
x1
=
8128
Que corresponde a la solucionx1 = 8, s2 = 12, x2 = s1 = v1 = v2 = 0 i Z = 8. Por tanto, lasolucion optima es (x1, x2) = (8, 0) y Z = 8.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
1 Introduccion2 Programacion lineal
Forma estandar de un PPLSoluciones basicas de unPPL
3 El metodo del sımplexUn ejemplo para comenzarEl metodo del sımplex enproblemas de minimizacionObservaciones finales
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
Observacion 1
Las variables artificiales no son exclusivas de programas deminimizacion. En algunos programas de maximizacion tambien sepueden emplear beneficiosamente. Cuando en el contexto demaximizacion una de las restricciones es de igualdad no esnecesario anadir una variable compensatoria. En este caso harafalta un vector unitario en la tabla del sımplex para poder tener lasolucion basica factible inicial. Se anade a la restriccion deigualdad una variable artificial que intervendra en la funcionobjetivo con coeficiente negativo para asegurar que no forma partede la solucion optima.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
Observacion 2
Cuando en la tabla del sımplex, dos o mas cocientes comparten lacaracterıstica de ser los menores, dos o mas filas seran candidatasa ser la fila pivote. Se ha de adoptar un criterio, arbitrario, paradecidir cual sera la fila pivote.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
Observacion 3
A veces un paso del pivote no provoca una mejora de la solucion yseran necesarios diversos pasos de pivote con mejora nula antes deque el proceso iterativo trunque el cırculo vicioso.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
IntroduccionProgramacion lineal
El metodo del sımplex
Un ejemplo para comenzarEl metodo del sımplex en problemas de minimizacionObservaciones finales
Observacion 4
Se ha dado una introduccion al algoritmo sımplex. El proceso no esdifıcil pero en programas lineales de dimensiones considerables latarea de computar es larga y aburrida.Afortunadamente hay programas informaticos que desarrollan todoel proceso: SOLVER de Excel, GAMS (General Algebraic ModelingSystem) y cualquier otro programa de sımplex que se puedaencontrar en internet.
Juan Gabriel Gomila Tema 6 - Programacion Lineal
top related