5. el método simplex en lo que sigue consideremos un problema de programación lineal en su forma...

24
5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar. 0 . . ........ 2 2 1 1 2 2 ........ 2 22 1 21 1 1 ......... 2 12 1 11 . . ......... 1 2 1 1 x b Ax a s x c T Min n. m donde . ,...., 2 , 1 ; 0 n i i x m b n x mn a x m a x m a b n x n a x a x a b n x n a x a x a a s n x n c x c x c Min Matricialmente escrito como:

Upload: benito-suarez-gonzalez

Post on 31-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

5. El Método Simplex

En lo que sigue consideremos un problema de programación lineal en su forma estándar.

0

..

........2211

22........222121

11.........212111..

.........1211

x

bAxas

x cTMin

n.mdonde.,....,2,1;0 niix

mbnxmnaxmaxma

bnxnaxaxa

bnxnaxaxaas

nxncxcxcMin

Matricialmente escrito como:

Page 2: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

No existe pérdida de la generalidad al suponer que un problema viene dado en la forma estándar. En efecto,si tuviésemos el siguiente problema:

P) Máx 9u + 2v + 5z s.a. 4u + 3v + 6z 50

u + 2v + 3z 82u – 4v + z = 5

u 0 ; v 0z IR

Es posible reformular de manera equivalente el problema anterior usando que:

Page 3: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

1.-Siempre es posible llevar un problema de maximización a uno de minimización. Si f(x) es la función objetivo a maximizar y x* es la solución óptima:

2.- Cada restricción del tipo puede ser llevada a una ecuación de igualdad usando una (nueva) variable de holgura no negativa, con un coeficiente nulo en la función objetivo.

).(*

),()*(

),()*(

xfdemínimo eltambién esx

factiblexxfxf

factiblexxfxf

Page 4: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

3.- De igual modo, cada restricción del tipo puede ser llevada a una ecuación de igualdad usando una variable de exceso no negativa.

4.- Siempre es posible escribir una variable libre de signo como la diferencia de dos variables no negativas.

En resumen el problema P) puede ser escrito de manera equivalente como:

Page 5: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Min –9x1 –2x2 –5x3 +5x4 +0x5 +0x6

4x1+ 3x2+ 6x3- 6x4+ x5 =50

x1+ 2x2 - 3x3+ 3x4 -x6 = 8

2x1 - 4x2 + x3 - x4 = 5

xi 0, i=1,2,3,4,5,6.

Con u = x1

v = x2

z = x3 - x4

s1 = x5 (HOLGURA)

s2 = x6 (EXCESO)

Page 6: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

La búsqueda de la solución óptima se restringe a encontrar un vértice óptimo y cada vértice del conjunto de las restricciones del problema, llamado región de puntos factibles, corresponde a una solución básica factible del sistema Ax=b.Esta corresponde a su vez a aquellas soluciones que resultan de resolver el sistema para exactamente m variables, fijando las restantes n-m en cero, llamadas respectivamente variables básicas y no-básicas, que además deben satisfacer condiciones de no-negatividad.

Page 7: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Teorema Fundamental de la Programación Lineal:

si un problema tiene solución óptima, tiene una solución básica factible óptima.

Dada una matriz B de mxm invertible, esta induce una partición de las variables y parámetros del modelo como lo muestra la siguiente diapositiva

Page 8: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

m

n-m

DC

BC

C

DX

BX

nX

X

X

X

.

.2

1

n-m

m

XB:variables básicas.

XD:variables no básicas.

CB:costos básicos.

CD:costos no básicos.

B DA= m

n

m n-m

B : es llamada una matriz de base

Page 9: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Criterio de Optimalidad:

DxDB

T

Bc

T

DcbB

T

Bc

DxT

DcD xDBbBT

Bc

DxD

DcB

xT

Bcx cT

11

11

valor actual de la función obj.

vector de costos

reducidos.Ecuación que define cada uno de los costos reducidos: , j= índice de variable

no-básica y Aj la respectiva columna en A de esa var.

Actual solución básica factible es óptima ssi rj j

jABTBcjcjr 1

Page 10: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Si existe una variable no básica xp con costo reducido negativo, esta entra a la nueva base. Para decidir quién deja la base, es necesario calcular el mayor valor que puede tomar la variable entrante que garantiza la factibilidad de la nueva solución básica, con

se debe calcular:

k

m py

py

py

ApB

my

y

y10

bB2

1

1

0

.

.201

,

0/00

base.la dejax

ipyipyiy

MinK p

yk

y

Page 11: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Ejemplo. Resolver el siguiente problema de P.L.

0,90340702..

6040

y xy xyxyxas

yxMáx

Se deben agregar 3 variables de holgura ( x1 , x2 , x3

var.básicas), y llevar a forma estándar (x4=x y x5=y).

.5,4,3,2,1,0

905343

40542

705421..

560440

ixi

xxx

xxx

xxxas

xxMin

Page 12: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

1 0 0 2 1 700 1 0 1 1 400 0 1 1 3 900 0 0 -40 -60 0

Usamos como variable entrante a la base x5 ( pues r5<0).

x1 x2 x3 x4 x5

1 0 0 2 1 700 1 0 1 1 400 0 1 1 3 900 0 0 -40 -60 0

Tabla inicial x1 x2 x3 x4 x5

Se calcula Min{ 70/1, 40/1, 90/3 }=30, por lo tanto sale x3.

Page 13: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Actualizando, queda la siguiente tabla (no óptima)

x1 x2 x3 x4 x5

1 0 - 1/3 1 2/3 0 400 1 - 1/3 2/3 0 100 0 1/3 1/3 1 300 0 20 -20 0 1800

1 0 - 1/3 1 2/3 0 400 1 - 1/3 2/3 0 100 0 1/3 1/3 1 300 0 20 -20 0 1800

Luego la variable entrante a la base es x4 ( pues r4<0).

x1 x2 x3 x4 x5

Se calcula Min{ 40/(5/3), 10/(2/3), 30/(1/3) }= 15, por lo tanto x2 deja la base actual.

Page 14: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Actualizando, queda la siguiente tabla final

x1 x2 x3 x4 x5

1 -2 1/2 1/2 0 0 150 1 1/2 - 1/2 1 0 150 - 1/2 1/2 0 1 250 30 10 0 0 2100

Como todos los costos reducidos son mayores o iguales que cero nos encontramos en la solución óptima.

En la formulación inicial, tenemos como solución óptima x*=15, y *=25, con valor óptimo 2.100

.100.-225*6015*-40 Z*

00

3

2,251515

5

4

1

xx

DXxxx

Bx

Page 15: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Paso 0 : Escribir el problema de programación lineal en su forma estándar.

Paso 1 : Escoger una solución básica factible inicial.

Paso 2 : Escoger una variable no-básica con costo reducido negativo que determina la variable entrante, seguir al paso tres. Si todos los costos reducidos son mayores que cero , parar, la actual solución es óptima.

Paso 3 : Calcular el criterio de factibilidad que determina que variable deja la base. Si todos los cuocientes son negativos: problema no-acotado, parar.

Resumen del Método Simplex

Page 16: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Paso 4 :Actualizar la tabla de modo de despejar el valor de las nuevas variables básicas, los costos reducidos y el valor de la función objetivo. Volver al Paso 2.

- No siempre es fácil obtener una solución básica factible inicial, en las variables originales del modelo. Para conseguir esto existen varios procedimientos:

Metodo Simplex de dos fases Método de la M- grande

Page 17: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Método Simplex de dos Fases

Fase 1: Se considera un problema auxiliar que resulta agregar tantas variables auxiliares a las restricciones del problema de modo de tener una sol. básica factible. Resolver por Simplex un nuevo problema que considera como función objetivo la suma de las variables auxiliares. Si el valor óptimo es cero ir a la Fase 2. En caso contrario, no existe solución factible.

Fase 2: Resolver por Simplex el problema original a partir de la solución básica factible hallada en Fase1.

Page 18: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

.4,3,2,1,0

142

51

10

932

101

10..21

2

ix i

xxx

xxxas

xxMin

..21

2 +

.2,1,0

12

51

10

92

101

10

=

+

+

ix i

xx

xxas

xxMáx

Ejemplo:

Se debe agregar una variable de holgura y una variable de exceso (x3 , x4 ), y llevarlo a su forma estándar.

Page 19: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Aplicamos Simplex de dos Fases :

Fase 1:

.5,4,3,2,1,0

1542

51

10

932

101

10..5

ixi

xxxx

xxxas

xMin

Así queda la siguiente tabla:

x1 x2 x3 x4 x5

10 10 1 0 0 910 5 0 -1 1 10 0 0 0 1 0

Page 20: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

000

42

1,19

5

3 xxx

D

xxx

B

x

Luego se hace cero el costo reducido de la variable x5 de la tabla anterior, y queda la siguiente tabla inicial.

x1 x2 x3 x4 x5

10 10 1 0 0 910 5 0 -1 1 1

-10 -5 0 1 0 -1

Luego la variable entrante a la base es x1 ( pues r1<0).

x1 x2 x3 x4 x5

10 10 1 0 0 910 5 0 -1 1 1

-10 -5 0 1 0 -1

Page 21: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Calculamos Min{ 9/10, 1/10}= 1/10, por lo tanto sale x5.

x1 x2 x3 x4 x5

0 5 1 1 -1 81 1/2 0 - 1/10 1/10 1/100 0 0 0 0 0

0

0

0

5

4

2

,8

10/1

3

1

x

x

x

Dx

x

x

B

x

Que corresponde a la solución óptima del problema en la Fase 1, con valor óptimo 0. De aquí entonces tomamos x1 y x3 como variables básicas para fase 2.

Page 22: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Fase 2:

x1 x2 x3 x4

0 5 1 1 81 1/2 0 - 1/10 1/10

-2 -1 0 0 0

En la tabla hacemos 0 los costos reducidos de var.básicas

x1 x2 x3 x4

0 5 1 1 81 1/2 0 - 1/10 1/100 0 0 - 1/5 1/5

Luego la variable entrante a la base es x4 ( pues r4<0).

Page 23: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

calculamos Min{ 8/1, (-1/10)/(1/10)}= 8, por lo tanto sale x3.

x1 x2 x3 x4

0 5 1 1 81 1 0 1/10 9/100 1 1/5 0 1 4/5

0

0

3

2,8

10/9

4

1

x

x

Dx

x

x

B

x

Que resulta ser la solución óptima del problema.

Page 24: 5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar.  0.......... 2211 22 222121 11......... 212111

Algunos casos especiales

1.- Problema Infactible. Esta situación se detecta cuando el valor óptimo del problema de la fase 1 da mayor que cero.

2.- Múltiples soluciones óptimas. Esta situación se detecta cuando existen costos reducidos iguales a cero en una o más de las variables básicas óptima

3.- Problema no acotado. Esta situación se detecta cuando al realizar el cálculo de la variable que deja la base todos los elementos ykj de la columna j en la tabla son negativos, para j el índice de una variable no básica con costo reducido negativo.