69
Optimización lineal: Resolución gráfica y el Simplex

MAXIMIZACION DE FUNCIONES.pdf

Embed Size (px)

Citation preview

Optimización lineal: Resolución gráfica y el Simplex

OPTIMIZACIÓN LINEAL. 2Universidad Pontificia Comillas de Madrid

Contenidos

• Solución gráfica

• Método Simplex

• Inicialización del método Simplex

– Método de las dos fases– Método de las penalización (o de la M mayúscula)

OPTIMIZACIÓN LINEAL. 3Universidad Pontificia Comillas de Madrid

Solución gráfica (i)

Ejemplo:• Un artesano fabrica trenes y camiones de juguete

• Utilizando tornillos, bloques y ruedas como componentes

• En la semana próxima dispone de 8000, 6000 y 6300 componentes respectivas

• Los beneficios por tren y camión son 1.6 euros/unidad y 1.4 euros/unidad

61020Camión

181510Tren

RuedasBloquesTornillos

OPTIMIZACIÓN LINEAL. 4Universidad Pontificia Comillas de Madrid

Solución gráfica (ii)

Formulación matemática:

1 2

1 2

1 2

1 2

1 2

1.6 1.4:

10 20 800015 10 600018 6 6300

, 0

Max Z x xsujeto a

x xx xx x

x x

= ⋅ + ⋅

⋅ + ⋅ ≤⋅ + ⋅ ≤⋅ + ⋅ ≤

Maximización delbeneficio total

Existencias TORNILLOS

Existencias BLOQUES

Existencias RUEDAS

Número de trenes a fabricar1 :xNúmero de camiones a fabricar2 :x

Se consideran variables realesen primera aproximación

OPTIMIZACIÓN LINEAL. 5Universidad Pontificia Comillas de Madrid

Solución gráfica (iii)

Representación gráfica de restricciones

r1: 10x1 + 20x2 <= 8000

r2: 15x1 + 10x2 <= 6000

r3: 18x1 + 6x2 <= 6300

TORNILLOS

BLOQUES

RUEDAS100

200

300

400

100 400300200

x2

x1(0, 0)

(0, 400)

(200, 300)

(300, 150)

(350, 0)

Regiónfactible

OPTIMIZACIÓN LINEAL. 6Universidad Pontificia Comillas de Madrid

Solución gráfica (iv)

Rectas de isobeneficio:

100

200

300

400

100 400300200

x2

x1(0, 0)

(0, 400)

(200, 300)

(300, 150)

Z = 740

Z = 560 = 1.6x1 +1.4x2

(350, 0)

Z = 690

Z = 0

TORNILLOSr1: 10x1 + 20x2 <= 8000

r2: 15x1 + 10x2 <= 6000

r3: 18x1 + 6x2 <= 6300

SOLUCIÓNÓPTIMA

BLOQUES

RUEDAS

Gradiente: (1.6,1.4)

OPTIMIZACIÓN LINEAL. 7Universidad Pontificia Comillas de Madrid

Solución gráfica (v)

Solución óptima:

• La solución óptima es fabricar 200 trenes y 300 camiones

• Se utilizan todas las existencias de tornillos (8000)

• Se utilizan todas las existencias de bloques (6000)

• Se utilizan 5400 ruedas sobrando 900 de las existencias

• El beneficio resultante es de 740 euros

OPTIMIZACIÓN LINEAL. 8Universidad Pontificia Comillas de Madrid

Método Simplex (i)

• Poliedro: Región definida por la intersección de un conjunto finito de hiperespacios

ij j ij

ij j ij

a x b

a x b

⋅ ≤

⋅ ≥

∑hiperespacios

• La región factible de un problema de programación lineal es un poliedro

• Vértice de un poliedro: punto que no se expresa como combinación lineal convexade dos puntos distintos de un poliedro

Si existe un único óptimo en un problemade programación lineal, éste seencuentra en un VÉRTICE

Geometría de la programación lineal

OPTIMIZACIÓN LINEAL. 9Universidad Pontificia Comillas de Madrid

Método Simplex (ii)

Forma estándarmin max

0; ; ;

T

n m xn n m

ó Z c xA x bx

x A c b

= ⋅⋅ =≥

∈ ∈ ∈ ∈

1 2 1 2 3

1 2 1

1 2 2

1 2 3

1 2 1 2 3

1.6 1.4 0 0 0:

10 20 800015 10 600018 6 6300

, , , , 0

Max Z x x h h hsujeto a

x x hx x hx x h

x x h h h

= ⋅ + ⋅ + ⋅ + ⋅ + ⋅

⋅ + ⋅ + =⋅ + ⋅ + =⋅ + ⋅ + =

Problema del artesano

( )( )1 2 1 2 3

1.6, 1.4,0,0,0

, , , ,

10 20 1 0 0 800015 10 0 1 0 600018 6 0 0 1 6300

T

T

c

x x x h h h

A b

= − −

=

⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥= =⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦

0b ≥

OPTIMIZACIÓN LINEAL. 10Universidad Pontificia Comillas de Madrid

Método Simplex (iii)

Métodos para transformar a la forma estándar

• Restricciones : Se introduce una variable de defecto ≤ij j i ij j i i

j j

a x b a x u b⋅ ≤ → ⋅ + =∑ ∑0iu ≥

• Restricciones : Se introduce una variable de exceso ≥ij j i ij j i i

j j

a x b a x v b⋅ ≥ → ⋅ − =∑ ∑0iv ≥

• Variables negativas : 0jx−∞ ≤ ≤ ; 0j j jx y y= − ≤ ≤ +∞

• Variables libres : Se sustituye por 2 variables j j jx x x+ −= −

0 jx+≤ ≤ ∞ 0 jx−≤ ≤ ∞

• Parámetro bi<0: Multiplicar por -1 la i-ésima restricción

( ) ( )ij j i ij j ij j

a x b a x b≤ ⇒ − ≥ −∑ ∑

OPTIMIZACIÓN LINEAL. 11Universidad Pontificia Comillas de Madrid

Método Simplex (iv)

Tipos de Soluciones

• Solución Factible: Satisface todas las restriccionesPertenece a la región factible

• Solución Infactible: Viola al menos una restricciónNo pertenece a la región factible

• Solución Básica Factible: Es factibleTiene m variables básicas asociadas a unamatriz B no singular de restricciones en A,de rango m, que toman valor<>0 y el resto=0

• Solución Óptima : Solución factible con mejor valor de la f.o.

Número de restricciones

OPTIMIZACIÓN LINEAL. 12Universidad Pontificia Comillas de Madrid

Método Simplex (v)

[ ]vector de variables BASICAS

,vector de variables NO BASICAS

mT BT

B N n mN

xx x x

x −

⎧ ∈⎪= ⎨∈⎪⎩

[ ] ( )

matriz BASE,

matriz NO BASICA

mxm

mx n m

BA B N

N −

⎧ ∈⎪= ⎨∈⎪⎩

Descomposición en componentes BASICAS y NO BASICAS (notación)

[ ]coeficientes de variables BASICAS

,coeficientes de variables NO BASICAS

mT BT

B N n mN

cc c c

c −

⎧ ∈⎪= ⎨∈⎪⎩

El simplex se mueve por soluciones básicas factibles (vértices)que van mejorando la f.o., sustituyendo una variable básica por una no básica

OPTIMIZACIÓN LINEAL. 13Universidad Pontificia Comillas de Madrid

Método Simplex (vi)

( )1 1 1B N B N N

A x bB x N x b x B b N x B b B N x− − −

⋅ =

⋅ + ⋅ = → = − = −

Detección variables no básicas para entrar en la base

Función objetivo1ˆT T T T T

B B N N B N B Nz c x c x c b c c B N x−⎡ ⎤= + = + −⎣ ⎦

Vector de costes reducidos

1T Tj B j j B j j jc c B a c c y c z−− = − = −

Los costes reducidos para una solución factible arbitraria

Vector de costes reducidos

: columna de correspondiente a la variable j ja A x

1 ˆ; ; ; indices no basicosTj j j B j j j jy B a z c y c c z j−= = = − ≡Notación:

1b B b−=Notación:

OPTIMIZACIÓN LINEAL. 14Universidad Pontificia Comillas de Madrid

Método Simplex (vii)

ˆ TB Bz c x=

Los costes reducidos en la función objetivo:

• El coste reducido indica el cambio en la f.o. debido a un incremento unitario de una variable no básica

• En el óptimo de un problema de minimización todos los costes reducidos de las variables no básicas son ≥ 0 (para maximización, todos ≤0)

• Fuera del mínimo debe existir un coste reducido para una variable no básica < 0 (para el máximo, debe existir uno >0)

• Los costes reducidos de las variables básicas son siempre 0

•Si el coste reducido de una variable no básica en el óptimo es 0 entonces pueden aparecer múltiples óptimos: Para que sean diferentes óptimos, la variable no básica con coste reducido 0 ha de tomar valor ≠0 al entrar en la base

1 1 ˆ ( )T T TB N B N j j j

j

z c B b c c B N x z c z x− −⎡ ⎤= + − = + −⎢ ⎥⎣ ⎦ ∑Notación:

OPTIMIZACIÓN LINEAL. 15Universidad Pontificia Comillas de Madrid

Método Simplex (viii)Las soluciones múltiples son combinación lineal convexa de los distintos vértices óptimos: Ejemplo con dos soluciones óptimas

( ) ( )1 1 2 21 2 1 2, ,x x x x

( )( )

1 21 1 1

1 22 2 2

1

1

x x x

x x x

λ λ

λ λ

⎧ = ⋅ + − ⋅⎪⎨

= ⋅ + − ⋅⎪⎩0 1λ≤ ≤

Incremento de la variable NO BASICA entrante:

Se incrementa desde cero una variable NO BÁSICA t hasta quealguna variable BÁSICA deje de ser positiva y se haga cero

1 1B N N t tx B b B N x b Y x b y x− −= − = − = −$ $

El resto de no básicas Permanecen iguales a cero

B NB x N x b⋅ + ⋅ =

1Y B N−=Notación:

OPTIMIZACIÓN LINEAL. 16Universidad Pontificia Comillas de Madrid

Método Simplex (ix)

( ) ˆB i it ti

x b y x= −

•Si 0ity > ( )B ix Disminuye cuando se incrementa hastatx i

it

by

•Si 0ity ≤ ( )B ix Aumenta o permanece

(hasta que se anula)

Si todas las el problema resulta no acotado0ity ≤ ˆ ( )t t tz z c z x= + − →−∞

Máximo incremento de variable NO BASICA entrante:

La variable NO BÁSICA elegida como variable BÁSICA ENTRANTEse incrementa hasta que la primera variable BÁSICA se anula

La variable BÁSICA SALIENTE es la que primero se anula

1

ˆmin : 0i

t iti mit

bx yy≤ ≤

⎧ ⎫⎪ ⎪= >⎨ ⎬⎪ ⎪⎩ ⎭

OPTIMIZACIÓN LINEAL. 17Universidad Pontificia Comillas de Madrid

Método Simplex (x)

PASOS del método SIMPLEX (i)

Inicialización: Formulación del problema en forma estándar.Se encuentra una solución básica factible inicial, es decir, B tal que:

Prueba de optimalidad: Se calculan los costes reducidos

1 ˆ 0Bx B b b−= = ≥

1ˆ T T TN N Bc c c B N−= −

• Si en minimización todos los costes reducidos son ≥ 0 (en maximización ≤ 0)entonces la base es óptima

• Si en minimización existe algún coste reducido <0 (en maximización >0)se selecciona var. básica entrante xt aquella cuyo coste reducido negativo(positivo en maximización) tenga mayor valor absoluto

OPTIMIZACIÓN LINEAL. 18Universidad Pontificia Comillas de Madrid

Método Simplex (xi)

PASOS del método SIMPLEX (ii)

Iteración

Pivotamiento

• Actualización de la matriz• Actualización del vector de variables básicas• Volver al paso

Bx

1t ty B a−= : columna pivote de tx

1

ˆ ˆmin : 0s i

iti mst it

b b yy y≤ ≤

⎧ ⎫⎪ ⎪= >⎨ ⎬⎪ ⎪⎩ ⎭

: variable básica saliente sx

Si todas las el problema resulta no acotado0ity ≤

1B−

OPTIMIZACIÓN LINEAL. 19Universidad Pontificia Comillas de Madrid

Método Simplex (xii)Forma tabular:

bBNxB

cBTcN

T

Var.básicas xN xB Valores

Se expresa el problema de optimización en una tabla con la siguiente estructura:

Funciónobjetivo

Restricciones

Se resta de la función objetivo las restricciones multiplicadas por cBT B-1

Se multiplican las restricciones por B-1

B-1 bIB-1 NxB

0cNT-cB

TB-1N

Var.básicas xN xB ValoresCostesreducidos

Valoressolución≥0

Dividir valores por Y=B-1N para determinar variable saliente

Tabla inicial del simplex:

OPTIMIZACIÓN LINEAL. 20Universidad Pontificia Comillas de Madrid

Método Simplex (xiii)

Eliminación gaussiana:Sirve para actualizar la tabla (por tanto B-1) de una a otra iteración

´Se pone un 1 en el elemento pivote y un 0 en el resto de la columna’

• Dividir la fila pivote por el elemento pivote • Restar a cada una de las demás filas (incluida la f.o.) la nuevafila pivote multiplicada por el elemento de la fila y la columna pivote

sty

6300/186300100618h3

6000/1560000101015h2

8000/1080000012010h1

0001.41.6

DivisiónVals.h3h2h1x2x1

Variable básica entrante

Variablebásica

saliente

Iteración 1 (problema artesano)

El elemento pivote resulta 31y

/18

-15•-10•

+1.6•

OPTIMIZACIÓN LINEAL. 21Universidad Pontificia Comillas de Madrid

Método Simplex (xiv)

10503501/18001/31x1

150750-5/61050h2

4500010h1

000

RelaciónVals.h3h2h1x2x1

Variable básica entrante

Variablebásica

saliente

Iteración 2

-1/3

/5

El elemento pivote resulta 22y

)16.6

)0.86 −

)0.08

−)

0.5 =)4500

27016.6

− •)

0.86

− •)

16.6

(0,0) (350,0)

f.o.: 560

•Tiene que aparecer la matriz identidad en las variables básicas •Los costes reducidos de las variables básicas tienen que ser 0•El lado derecho de la tabla tiene que seguir siendo ≥0

OPTIMIZACIÓN LINEAL. 22Universidad Pontificia Comillas de Madrid

Método Simplex (xv)

27003001/9-1/15001x1

nulo150-1/61/5010x2

9002000100h1

000

RelaciónVals.h3h2h1x2x1

Variable básica entrante

Variablebásica

saliente

Iteración 3

-1/9

•)

0.05

(0,0) (350,0)

f.o.: 690

−)

0.173)

0.05

−)

3.3)

2.2

(300,150)

)/ 2.2

+1/6

El elemento pivote resulta 12y

OPTIMIZACIÓN LINEAL. 23Universidad Pontificia Comillas de Madrid

Método Simplex (xvi)

20000.1-0.0501x1

3000-0.050.07510x2

9001-1.50.4500h3

0-0.09-0.02500

Vals.h3h2h1x2x1

Iteración 4

Todos los costes reducidos son negativos o nulos por lo que el óptimo ha sido alcanzado

Solución óptima: (200, 300)Función objetivo: 740

OPTIMIZACIÓN LINEAL. 24Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (i)

Métodos para encontrar solución básica factible inicial

• Basados en la incorporación de variables artificiales • En las restricciones ≤ se introducen las variables de defecto • En las restricciones ≥ se introducen variables de exceso y tambiénvariables artificiales (las de exceso tienen coeficiente -1)

• En las restricciones = se introducen directamente variables artificiales

ihie

ia

ij j i ij j i ij j

ij j i ij j i i ij j

ij j i ij j i ij j

a x b a x h b

a x b a x e a b

a x b a x a b

⇒ + =

⇒ − + =

⇒ +

= =

∑ ∑

∑ ∑

∑ ∑

Tabla inicial del simplex:No siempre es posible encontrar la identidad en A con b ≥ 0

OPTIMIZACIÓN LINEAL. 25Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (ii)

Solución básica factible inicial (cont.)

• Las variables artificiales y las variables de holgura de defecto (en restricciones ≤) constituyen la base inicial del Simplex

• Las soluciones con variables artificiales positivas no son factibles,pues estas variables realmente no existen

•Los métodos de las dos fases y de penalización tratande eliminar las variables artificiales, y encontrar la solución óptima

•Si no se pueden eliminar las variables artificiales problema INFACTIBLE

OPTIMIZACIÓN LINEAL. 26Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (iii)

Métodos de anulación de variables artificiales

• Método de las dos fases- La fase I tiene por f.o. la suma de las variables artificiales

- Si la fase I acaba con la f.o. nula, el problema es factible y seobtiene una solución básica factible

- La fase II restablece la f.o. original y parte de la solución básicafactible del final de la fase I (que es la solución básica factible inicial)

•Método de la M mayúscula- Introduce variables artificiales en la f.o. penalizadas (en minimización)

con un coeficiente elevado M (en maximización –M)

OPTIMIZACIÓN LINEAL. 27Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (iv)

Ejemplo del método de las dos fases

En el ejemplo del artesano se introduce la restricción de que el número totalde juguetes fabricados debe ser al menos de 400

r1: 10x1 + 20x2 <= 8000

r2: 15x1 + 10x2 <= 6000

r3: 18x1 + 6x2 <= 6300

TORNILLOS

BLOQUES

RUEDAS100

200

300

400

100 400300200

x2

x1(0, 0)

(0, 400)

(200, 300)

(300, 150)

(350, 0)

(325, 75)

Regiónfactible

r4: x1 + x2 >= 400PRODUCCIÓN MÍNIMA

Solucióninicial

NO VÁLIDA

OPTIMIZACIÓN LINEAL. 28Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (v)

Ejemplo del artesano (cont.i)1

1 2 1

1 2 2

1 2 3

1 2 1 1

1 2 1 2 3 1 1

: 10 20 800015 10 600018 6 6300

400, , , , , , 0

Min asujeto a x x h

x x hx x h

x x e ax x h h h e a

+ + =+ + =+ + =

+ − + =≥

4001-100011a1

630000100618h3

6000000101015h2

8000000012010h1

1000000

Valsa1e1h3h2h1x2x1Var.básicas

-1

Fase I (iteración 0)

No es una tabla inicial del simplex: Debería ser 0!!!. El primer paso de la Fase I siempre es hacerlo 0

OPTIMIZACIÓN LINEAL. 29Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (vi)

4004001-100011a1

350630000100618h3

4006000000101015h2

8008000000012010h1

01000-1-1

RelaciónValsa1e1h3h2h1x2x1Var.básicas

75501-1-1/18002/30a1

1050350001/18001/31x1

15075000-15/181050h2

270450000-5/90150/30h1

011/1800-2/30

RelaciónValsa1e1h3h2h1x2x1Var.básicas

iteración2

iteración1

OPTIMIZACIÓN LINEAL. 30Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (vii)

753/2-3/2-1/120010x2

325-1/21/21/120001x1

375-7.57.5-15/361000h2

3250-25250100h1

1000000

Valsa1e1h3h2h1x2x1Var.básicas

753/2-3/2-1/120010x2

325-1/21/21/120001x1

375-7.57.5-15/361000h2

3250-25250100h1

000001.41.6

Valsa1e1h3h2h1x2x1Var.básicas

iteración1

iteración3

(óptima fase I))

0.83

Fase II

)0.83

+1.6•

+1.4•

No es una tabla inicial del simplex: Debería ser 0!!!. El primer paso de la Fase II siempre es hacerlo 0

OPTIMIZACIÓN LINEAL. 31Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (viii)

650

50

130

Relación

753/2-3/2-1/120010x2

325-1/21/21/120001x1

375-7.57.5-15/361000h2

3250-25250100h1

-1.31.30000

Valsa1e1h3h2h1x2x1Var.básicasiteración

2

Fase II

)0.83

−)

0.016

2700

900

Relación

15000-1/61/5010x2

300001/9-1/15001x1

50-11-1/182/15000e1

200000100h1

00000

Valsa1e1h3h2h1x2x1Var.básicas

)2.2

)0.05

iteración3

−)

0.173

−)

3.3

OPTIMIZACIÓN LINEAL. 32Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (ix)

300000-0.050.07510x2

2000000.1-0.0501x1

100-1100.050.02500e1

900001-3/20.4500h3

000-0.09-0.02500

Valsa1e1h3h2h1x2x1Var.básicasiteración

4

Fase II

(325,75) FASE I

(300,150) FASE II

(200,300) FASE II

(0,0) FASE I (1050,0) FASE I

OPTIMIZACIÓN LINEAL. 33Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (x)

Ejemplo del método de las penalizaciones1 2

1 2

1 2

2

1 2

2: 2

13

, 0

Min x xsujeto a x x

x xxx x

− ⋅+ ≥

− + ≥≤

1 2 1 2

1 2 1 1

1 2 2 2

2 3

1 2 1 2 3 1 2

2: 2

13

, , , , , , 0

Min x x M a M asujeto a x x h a

x x h ax h

x x h h h a a

− ⋅ + ⋅ + ⋅+ − + =

− + − + =+ =

30010010H3

1100-101-1A2

20100-111A1

MM000-21

Valsa2a1h3h2h1x2x1Var.básicas

No es una tabla inicial del simplex: Debería ser 0!!!. El primer paso siempre es hacerlo 0

OPTIMIZACIÓN LINEAL. 34Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (xi)

30010010H3

1100-101-1A2

20100-111A1

000MM-2-2M1

Valsa2a1h3h2h1x2x1Var.básicas

2-1011001H3

1100-101-1x2

1-1101-102A1

2+2M00-2-MM0-1-2M

Valsa2a1h3h2h1x2x1Var.básicas

iteración2

iteración1

OPTIMIZACIÓN LINEAL. 35Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (xii)

3/2-1/2-1/211/21/200H3

3/2½½0-1/2-1/210x2

½-1/2½01/2-1/201X1

3/2+M½+M0-3/2-1/200

Valsa2a1h3h2h1x2x1Var.básicas

10-11010-1H3

20100-111x2

1-1101-102H2

M2+2M00-203

Valsa2a1h3h2h1x2x1Var.básicas

iteración3

iteración4

OPTIMIZACIÓN LINEAL. 36Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (xiii)

10-11010-1H1

30010010x2

2-1011001H2

MM20001

Valsa2a1h3h2h1x2x1Var.básicas

iteración5

(solución óptima)

(0,0)

(1/2,3/2)(0,2)

(0,3) (2,3)

(0,1)

OPTIMIZACIÓN LINEAL. 37Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (xiv)• Algoritmo método dos Fases:

• FASE I: Resolver Simplex con f.o. 1Txa

a)Si 1Txa> 0, ⇒ (P) no es factible

b)1Txa= 0, ⇒ (P) es factible y solución básica factible inicial

b.1) No variables artificiales en la base ⇒ pasar a la fase II.

b.2.) Variables artificiales en la base (valor 0) ⇒ eliminarlas (entra en la base una variable legítima no básica pivoteando en fila de la variable artificial a eliminar; si no hay pivote, fila redundante, eliminarla) y pasar a la fase II.

• FASE II: Retomar f.o. y resolver Simplex

2-2011x2

0-110-2a1

1003

Valsa2a1x2x1Var. básicas

pivote

OPTIMIZACIÓN LINEAL. 38Universidad Pontificia Comillas de Madrid

Inicialización Método Simplex (xv)

• Algoritmo penalizaciones (de la M mayúscula):

• Resolver Simplex con f.o. Penalizando xa con M (min) o –M (max)

a)Si (P) con solución óptima (x,xa)

a.1) xa=0 (P) tiene solución óptima y es x.

a.2.) xa>0 (P) no tiene solución factible.

b) Si (P) con solución no acotada

b.1) xa=0 (P) también tiene solución no acotada.

b.2.) xa>0 (P) no factible ó no acotado.

OPTIMIZACIÓN LINEAL. 39Universidad Pontificia Comillas de Madrid

Resumen: Método Simplex (xvi)

• Resumen identificación de posibles terminaciones:

• Optimalidad: En minimización costes reducidos positivos (≥0). En maximización negativos (≤0). Si hay alguno cero, posibles múltiples óptimos. Incorporar en la base la variable no básica que tiene coste reducido 0.

• Infactibilidad: Sólo cuando haya sido necesario variables artificiales:

Si 2 fases y en la fase 1 hay al menos una variable artificial con valor >0. En fase I solamente puede haber optimalidad (no acotamiento, ni infactibilidad).

Si Penalizaciones y hay una variable artificial con valor >0.

• No acotamiento. Si al menos un coste reducido es negativo y cada uno de los elementos de su columna son ≤0. A esta condición habría que añadir que las variables artificiales sean =0 con penalizaciones.

• Caso dudoso: Infactibilidad o no acotamiento. Si Penalizaciones, el problema penalizado no sea acotado y al menos una variable artificial sea >0.

OPTIMIZACIÓN LINEAL. 40Universidad Pontificia Comillas de Madrid

Optimización lineal: Dualidad y el Simplex Dual

OPTIMIZACIÓN LINEAL. 41Universidad Pontificia Comillas de Madrid

Contenidos

• Definición del problema dual

• Propiedades de dualidad

• Interpretación económica

• Algoritmo Simplex Dual

• Relaciones entre el Simplex Primal y el Dual

OPTIMIZACIÓN LINEAL. 42Universidad Pontificia Comillas de Madrid

Definición del problema dual (i)

Teorema:Teorema: El dual del problema dual es el problema primalEl dual del problema dual es el problema primal

Variable Variable ≥ 00≤ 0

no restringida

⇔⇔⇔

RestricciRestriccióónn≥≤=

≤≥=

⇔⇔⇔

≥≥ 00≤ 0

no restringida

RestricciRestriccióónnVariableVariableMaxMaxMinMin

––Todo problema LP Todo problema LP (primal)(primal) tiene asociado otro problema LP (tiene asociado otro problema LP (dualdual))––Si Si primal es de maximizaciprimal es de maximizacióón, n variables y m restriccionesn, n variables y m restriccionesdual es de minimizacidual es de minimizacióón, m variables y n restriccionesn, m variables y n restricciones

OPTIMIZACIÓN LINEAL. 43Universidad Pontificia Comillas de Madrid

Definición del problema dual (ii)

Dual Dual Primal Primal ( )m n× ( )n m×

max

0

T

xz c x

Ax b

x

=

min

0

T

wT

u b w

A w c

w

=

1

1

max

1, ,

0 1, ,

j

n

j jxj

n

ij j ij

j

z c x

a x b i m

x j n

=

=

=

≤ =

≥ =

∑ …

1

1

min

1, ,

0 1, ,

i

m

i iwi

m

ij i ji

i

u bw

a w c j n

w i m

=

=

=

≥ =

≥ =

∑ …

OPTIMIZACIÓN LINEAL. 44Universidad Pontificia Comillas de Madrid

Definición del problema dual (iii)

Dual .Dual .Primal .Primal .( )m n× ( )n m×

1 2

1

2

1 2

1 2

max 3 5

4

2 12

3 2 18

, 0

z x x

x

x

x x

x x

= +

+ ≤

1 2 3

1 3

2 3

1 2 3

min 4 12 18

3 3

2 2 5

, , , 0

u w w w

w w

w w

w w w

= + +

+ ≥

+ ≥

1

2

1

2

1

2

max 3 5

1 4

2 12

3 2 18

0

0

xz x

xx

xx

⎡ ⎤⎡ ⎤ ⎢ ⎥= ⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦⎡ ⎤ ⎡ ⎤⋅⎢ ⎥ ⎢ ⎥⎡ ⎤⎢ ⎥ ⎢ ⎥⎢ ⎥⋅ ≤⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥⎣ ⎦⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦

⎡ ⎤⎡ ⎤ ⎢ ⎥⎢ ⎥ ≥ ⎢ ⎥⎢ ⎥⎣ ⎦ ⎢ ⎥⎣ ⎦

1

2

3

1

2

3

1

2

3

m in 4 12 18

1 3 352 2

0

0

0

wu w

w

www

www

⎡ ⎤⎢ ⎥⎢ ⎥⎡ ⎤= ⎢ ⎥⎢ ⎥⎣ ⎦ ⎢ ⎥⎢ ⎥⎣ ⎦

⎡ ⎤⎢ ⎥⎡ ⋅ ⎤ ⎡ ⎤⎢ ⎥⎢ ⎥ ⎢ ⎥≥⎢ ⎥⎢ ⎥ ⎢ ⎥⋅ ⎢ ⎥⎢ ⎥ ⎣ ⎦⎣ ⎦ ⎢ ⎥⎣ ⎦

⎡ ⎤⎡ ⎤ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ≥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥⎣ ⎦ ⎢ ⎥⎣ ⎦

OPTIMIZACIÓN LINEAL. 45Universidad Pontificia Comillas de Madrid

Propiedades de Dualidad (i)

•• Propiedad dPropiedad déébil de la dualidadbil de la dualidadx solución factible del primal w solución factible dual

•• Propiedad fuerte de la dualidadPropiedad fuerte de la dualidadx* solución óptima del primal w*solución óptima dual

•• Teorema de dualidadTeorema de dualidadÚÚnicas relaciones posibles entre primal y dual:nicas relaciones posibles entre primal y dual:–– Ambos tienen soluciones Ambos tienen soluciones óóptimas factiblesptimas factibles–– Un problema es no acotado, y el otro problema es no factibleUn problema es no acotado, y el otro problema es no factible–– Si un problema es no factible, el otro Si un problema es no factible, el otro es noes no factible o no acotadofactible o no acotado

T Tw b c x≤

* *T Tc x w b=

OPTIMIZACIÓN LINEAL. 46Universidad Pontificia Comillas de Madrid

Propiedades de Dualidad (ii)

••LemaLema La matriz B-1 son las columnas Y de la última tabla del simplex para las variables xB

0 que inicialmente formaban la matriz identidad (para variables de exceso en xB

0 cambiando el signo a Y)

••Propiedad de soluciPropiedad de solucióón n óóptima complementariaptima complementariaa)La solución dual complementaria es w=cT

BB-1, que son los costes reducidos de la última tabla del simplex para las variables xB

0 cambiados de signo (para variables de exceso en xB

0 sin cambio de signo)

b) x cumple óptimalidad para el primal sí y solo sí w factible para el dual.

Nota: Por tanto, para B-1 o w=cTBB-1, si xB

0 contiene artificiales, conviene no eliminarlas en la fase II. Si penalizaciones, calcular directamente w=cT

BB-1.

B-1 bIB-1B-1 NxB

0-cBTB-1cN

T-cBTB-1N

Var.básicas xN xB ValoresxB0

OPTIMIZACIÓN LINEAL. 47Universidad Pontificia Comillas de Madrid

Propiedades de Dualidad (iii)

•• Propiedad de la complementariedad de holgurasPropiedad de la complementariedad de holguras–– Si restricciSi restriccióón primal no activa (con holgura) n primal no activa (con holgura) ⇒⇒ variable variable

dual asociada a la restriccidual asociada a la restriccióón vale 0 n vale 0

–– Si una variable del primal en el Si una variable del primal en el óóptimo tiene valor > 0 ptimo tiene valor > 0 ⇒⇒la restriccila restriccióón asociada del dual en el n asociada del dual en el óóptimo estptimo estáá activa activa (no tiene holgura)(no tiene holgura)

( )* * 0T Tj j jc w a x− ⋅ =

( )* * 0ii iw a x b⋅ ⋅ − =

Restricción primal

Restricción dual

Variable primal

Variable dual

OPTIMIZACIÓN LINEAL. 48Universidad Pontificia Comillas de Madrid

Interpretación económica

•• InterpretaciInterpretacióón econn econóómica de las variables duales mica de las variables duales (solo caso maximizaci(solo caso maximizacióón con restricciones n con restricciones ≤≤))::–– En el En el óóptimo:ptimo:

ww**ii: variaci: variacióón en la funcin en la funcióón objetivo por tener una unidad n objetivo por tener una unidad

mmáás de s de Valor marginalValor marginal del recurso: del recurso: precio sombra o precio justoprecio sombra o precio justo

(cantidad m(cantidad mááxima a pagar por una unidad mxima a pagar por una unidad máás de recurso)s de recurso)

→→Si hay holgura de un recurso su precio marginal es ceroSi hay holgura de un recurso su precio marginal es cero, , no se estno se estáá dispuesto a pagar por una unidad mdispuesto a pagar por una unidad máás s

Si hay holgura hSi hay holgura h**ii>0 en una restricci>0 en una restriccióón primal n primal ⇒⇒ ww**

ii=0 =0

* *j j i i

j i

Max c x Min bw=∑ ∑

ib

OPTIMIZACIÓN LINEAL. 49Universidad Pontificia Comillas de Madrid

Algoritmo Simplex-Dual (i)

• Método Simplex dual: Alternativa al Simplex para resolver un problema (no necesariamente el dual)–– ¿¿CuCuáándo usarlo?ndo usarlo?

•• Si es fSi es fáácil obtener una cil obtener una solucisolucióón inicial bn inicial báásica no factiblesica no factiblepero cumple criterio pero cumple criterio optimalidadoptimalidad (alguna variable b(alguna variable báásica<0 sica<0 y costes reducidosy costes reducidos≥≥0 en minimizaci0 en minimizacióón)n)

•• Si tras una Si tras una modificacimodificacióón se pierde factibilidadn se pierde factibilidad de la de la solucisolucióón n óóptima (anptima (anáálisis sensibilidad, ver mlisis sensibilidad, ver máás adelante)s adelante)

–– Idea bIdea báásica:sica:•• se mueve por soluciones se mueve por soluciones no factibles para el primalno factibles para el primal•• se mueve por soluciones se mueve por soluciones factibles para el dualfactibles para el dual (la (la

complementaria), es decir, se cumple criterio primal de complementaria), es decir, se cumple criterio primal de optimalidadoptimalidad

•• Al lograr factibilidad primal Al lograr factibilidad primal →→ óóptima primalptima primal..–– Idea geomIdea geoméétrica:trica:

•• opera fuera de la regiopera fuera de la regióón factible, y en la zona mejor que el n factible, y en la zona mejor que el óóptimo.ptimo.

•• entra en la regientra en la regióón sn sóólo cuando alcanza el lo cuando alcanza el óóptimo.ptimo.

OPTIMIZACIÓN LINEAL. 50Universidad Pontificia Comillas de Madrid

Algoritmo Simplex-Dual (ii)

1.1. InicializaciInicializacióónn–– SoluciSolucióón bn báásica inicial sica inicial dual factible:dual factible: cumple criterio cumple criterio

optimalidad primal (costes optimalidad primal (costes reducreduc. . ≥≥ 0 en min)0 en min)–– Si factible (todas las variables bSi factible (todas las variables báásicassicas≥≥0) 0) →→ óóptimaptima, parar. , parar.

Si no, iterar en 2.Si no, iterar en 2.

2.2. IteraciIteracióónn–– Variable bVariable báásica salientesica saliente xxrr: aquella con menor valor : aquella con menor valor << 0 0 –– Variable bVariable báásica entrantesica entrante xxss

criterio de entradacriterio de entrada: raz: razóón mn míínima, mantener factibilidad dualnima, mantener factibilidad dual

Si no hay ySi no hay yrjrj<<0: problema0: problema no factible (porque dual no acotado), no factible (porque dual no acotado), pararparar..

PivoteamientoPivoteamiento. Ir al punto 2 del paso 1.. Ir al punto 2 del paso 1.

: 0j js srj

rs rj

c zc z Min yy y

⎧ ⎫⎪ ⎪−− ⎪ ⎪= <⎨ ⎬⎪ ⎪⎪ ⎪⎩ ⎭(tanto para (tanto para minmin como para como para maxmax))

OPTIMIZACIÓN LINEAL. 51Universidad Pontificia Comillas de Madrid

Ejemplo Algoritmo Simplex-Dual (i)

Valsh5h4h3x2x1Var. básicas

-1/3-1Relación cj-zj/yrj

-4100-2-1h5

-6010-3-4h4

-3001-1-3h3

00014

1 2

1 2

1 2

1 2

1 2

min 4

3 3

4 3 6

2 4

, 0

x x

x x

x x

x x

x x

+

+ ≥

+ ≥

+ ≥

1 2

1 2 3

1 2 4

1 2 5

1 2 3 4 5

min 4

3 3

4 3 6

2 4

, , , , 0

x x

x x h

x x h

x x h

x x h h h

+

− − + = −

− − + = −

− − + = −

primal primal infactibleinfactibledual factibledual factible

Valsh5h4h3x2x1Var. básicas

-1-8/5Relación cj-zj/yrj

01-2/3005/3h5

20-1/3014/3x2

-10-1/310-5/3h3

01/3008/3

OPTIMIZACIÓN LINEAL. 52Universidad Pontificia Comillas de Madrid

Ejemplo Algoritmo Simplex-Dual (ii)

•• SoluciSolucióón n óóptima del primal:ptima del primal:

•• SoluciSolucióón n óóptima del dual:ptima del dual:

•• Ambas funciones objetivo:Ambas funciones objetivo:

1 2 3 4 5( , , , , ) (0, 3, 0, 3,2)x x h h h =

3z =

1 2 3( , , ) (1, 0, 0)y y y = −

Valsh5h4h3x2x1Var. básicas

210-205h5

300-113x2

301-305h4

00101

Costes reducidos variables que Costes reducidos variables que formaban inicialmente la baseformaban inicialmente la base se se

deduce la solucideduce la solucióón dualn dual

OPTIMIZACIÓN LINEAL. 53Universidad Pontificia Comillas de Madrid

Aclaraciones y resumen: Método Simplex-Dual

• En el método dual simplex no deben incorporarse variables artificiales se aplica cuando las restricciones se pongan a ≤.

• Además, los costes reducidos de la primera tabla deben estar en condiciones de optimalidad (≥0 en min, ≤0 en max).

• En el método se pivotea como en el simplex (o simplex-primal).

• Es un método alternativo al simplex para resolver un modelo lineal (no confundir con un método para resolver problemas duales).

• Resumen identificación de posibles terminaciones:

• Optimalidad: Todos los componentes del lado derecho de la última tabla deben ser ≥0.

• Infactibilidad: Si al menos un componente del lado derecho es <0 y todos los componentes de su fila son ≥0.

• No acotamiento. Bajo las condiciones en las que se puede aplicar el dual-simplex, el problema nunca puede ser no acotado.

OPTIMIZACIÓN LINEAL. 54Universidad Pontificia Comillas de Madrid

Relaciones Simplex Primal y el Dual

Columna derecha < 0 (excepto en el óptimo)

En minimización fila costes reducidos < 0 (excepto en el óptimo)

En minimización fila costes reducidos >= 0Columna derecha >= 0

Maneja soluciones que satisfacen la condición de optimalidad primal (fact. dual) y se mueve hacia la solución óptima tratando de conseguir factibilidad primal (opt. dual)

Maneja soluciones básicas factibles y se mueve hacia la solución óptima (trata de satisfacer la condición de optimalidad)

Método Simplex DualMétodo Simplex Primal

OPTIMIZACIÓN LINEAL. 55Universidad Pontificia Comillas de Madrid

Optimización lineal: Sensibilidad y Programación paramétrica

OPTIMIZACIÓN LINEAL. 56Universidad Pontificia Comillas de Madrid

Contenidos

• Análisis sensibilidad

– Procedimiento genérico– En cotas de las restricciones– En coeficientes variables no básicas– Incorporación de variables– En costes y resto de coeficientes variables básicas– Introducción de restricciones

• Programación paramétrica

OPTIMIZACIÓN LINEAL. 57Universidad Pontificia Comillas de Madrid

Análisis de sensibilidad: procedimiento genérico (i)

AnAnáálisis de sensibilidad o lisis de sensibilidad o postoptimizacipostoptimizacióónn:: efectos en efectos en solucisolucióón n óóptima por cambios en problema, partiendo del ptima por cambios en problema, partiendo del óóptimo previoptimo previo

–– Procedimiento genProcedimiento genéérico anrico anáálisis de sensibilidad:lisis de sensibilidad:1.1.Introducir cambiosIntroducir cambios en bloques correspondientes de tabla en bloques correspondientes de tabla del Simplexdel Simplex

2.2.PreparaciPreparacióón tablan tabla para adecuarla a iteracipara adecuarla a iteracióón del Simplex n del Simplex (en variables b(en variables báásicas columna de un 1 en su fila y 0 resto)sicas columna de un 1 en su fila y 0 resto)

B-1 bIB-1 NxB

0cNT-cB

TB-1N

Var.básicas xN xB Sol.

OPTIMIZACIÓN LINEAL. 58Universidad Pontificia Comillas de Madrid

Análisis de sensibilidad: procedimiento genérico (ii)

–– Procedimiento genProcedimiento genéérico anrico anáálisis de sensibilidad (lisis de sensibilidad (contcont):):

3.3. Prueba de factibilidadPrueba de factibilidad (variables b(variables báásicas no negativas)sicas no negativas)4.4. Prueba de optimalidadPrueba de optimalidad (en (en minmin costes reducidos no costes reducidos no

negativos)negativos)5.5. Nueva iteraciNueva iteracióón:n:

•• del mdel méétodo Simplex (si se cumple 3 y no 4)todo Simplex (si se cumple 3 y no 4)•• del mdel méétodo Dual (si se cumple 4 y no 3)todo Dual (si se cumple 4 y no 3)•• introducciintroduccióón variables artificiales para que cumpla 3 y n variables artificiales para que cumpla 3 y

SimplexSimplex

OPTIMIZACIÓN LINEAL. 59Universidad Pontificia Comillas de Madrid

Cambios en cotas de restricciones (i)

•• Cambios en vector de requerimientos bCambios en vector de requerimientos b–– Afectan a: Afectan a: valores de las variables bvalores de las variables báásicas.sicas.

–– Se puede Se puede perder factibilidadperder factibilidad: m: méétodo todo Simplex dual.Simplex dual.

–– GeomGeoméétricamentetricamente:: desplazamientos paralelos restriccionesdesplazamientos paralelos restricciones

Se mueve la regiSe mueve la regióón factible, el n factible, el óóptimo previo puede quedar: ptimo previo puede quedar:

••a) dentro de la regia) dentro de la regióón factible n factible →→ sigue siendo sigue siendo óóptimoptimo

••b) fuera de la regib) fuera de la regióón factible (algoritmo dual para volver a n factible (algoritmo dual para volver a ella)ella)

OPTIMIZACIÓN LINEAL. 60Universidad Pontificia Comillas de Madrid

Cambios en cotas de restricciones (ii)

InfactibleInfactible, usar , usar dual dual (costes reducidos no cambian)(costes reducidos no cambian)

4

12

18

b

⎡ ⎤⎢ ⎥⎢ ⎥

= ⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦

'

4

24 ;

18

b

⎡ ⎤⎢ ⎥⎢ ⎥

= ⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦

1

1 1/3 1/3

0 1/2 0 ;

0 1/3 1/3

B−

=

⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦

'' 1 '

1 1/3 1/3 4 6

0 1/2 0 24 12

18 20 1/3 1/3Bx b B b−

⎡ ⎤ ⎡ ⎤− ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥

= = = =⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥−− ⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦

⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦

1 2

1 3

2 4

51 2

51 2 3 4

min 3 5

4

2 12

3 2 18

, , , , , 0

z x x

x x

x x

x x x

x x x x x

=− −

+ =

+ =

+ + =

Var. Básicas x1 x2 x3 x4 x5 Vals

3/2 1

x3 1 1/3 -1/3 2

x2 1 1/2 6

x1 1 -1/3 1/3 2

–– Ejemplo:Ejemplo:

BB--11

OPTIMIZACIÓN LINEAL. 61Universidad Pontificia Comillas de Madrid

Cambios en coeficientes variables no básicas (i)

•• Cambio en un coeficiente de una variable no Cambio en un coeficiente de una variable no bbáásicasica–– En la tabla afectan a: En la tabla afectan a: la columna de la propia variable.la columna de la propia variable.

Costes reducidos:Costes reducidos:RRestricciones:

–– Se puede Se puede perder optimalidadperder optimalidad: m: méétodo todo SimplexSimplex..Recalcular costes reducidos: Recalcular costes reducidos: a) Si (a) Si (minmin) sigue ) sigue óóptima. ptima. b) Si no, variable bb) Si no, variable báásica entrante y sica entrante y mméétodo Simplex.todo Simplex.

–– Cambio en coeficientes de la funciCambio en coeficientes de la funcióón objetivo:n objetivo:GeomGeoméétricamentetricamente:: cambio direccicambio direccióón optimizacin optimizacióónnÓÓptimo actual puede dejar de serloptimo actual puede dejar de serlo →→ iterar, nuevo iterar, nuevo óóptimo.ptimo.

' ' 1 'ˆT T TN N Bc c c B N−= −

1 'B N−

' ' ' 1 'ˆ 0T T TN N Bc c c B N−= − ≥

OPTIMIZACIÓN LINEAL. 62Universidad Pontificia Comillas de Madrid

Cambios en coeficientes variables no básicas (ii)

–– Ejemplo:Ejemplo:

Var. Básicas x1 x2 x3 x4 x5 Vals

0 3 1 2 0

x1 1 1 1 1 0 6

x5 0 3 1 1 1 10

a) ca) c22=1 se reemplaza por =1 se reemplaza por --33

1 2 3

1 2 3 4

1 2 5

1 2 3 4 5

min 2

6

2 4

, , , , 0

z x x x

x x x x

x x x

x x x x x

=− + −

+ + + =

− + + =

( ) ( )' '2 2 2 2 2 2 4 3 1 0c z c c c z− = − + − =− + =− <

xx22 entra en la base y se aplica el Simplexentra en la base y se aplica el Simplex

b) ab) a22 se cambia de (1,2) a (2,5)se cambia de (1,2) a (2,5)

( )

' 1 '2 2

' 1 '2 2 2 2

1 0 22

51 1 7

21 2,0 5 0

7B

y B a

c z c c B a

⎛ ⎞ ⎛ ⎞⎛ ⎞⎟ ⎟⎟⎜ ⎜⎜⎟ ⎟⎟⎜ ⎜⎜= = =⎟ ⎟⎟⎜ ⎜⎜⎟ ⎟⎟⎜ ⎜⎟⎜⎟ ⎟⎝ ⎠⎝ ⎠ ⎝ ⎠⎛ ⎞⎟⎜ ⎟⎜− = − = − − = ≥⎟⎜ ⎟⎜ ⎟⎝ ⎠

La tabla sigue siendo La tabla sigue siendo óóptima: ptima: reemplazar columna de xreemplazar columna de x22 por (5,2,7)por (5,2,7)TT

OPTIMIZACIÓN LINEAL. 63Universidad Pontificia Comillas de Madrid

Introducción variables

•• IntroducciIntroduccióón de una nueva variable n de una nueva variable –– Calcular su coste reducido.Calcular su coste reducido.1.1. Si Si < 0< 0 interesa, introducir en la base:interesa, introducir en la base:Calcular , aCalcular , aññadir toda la columna. Iterar adir toda la columna. Iterar Simplex.Simplex.2.2. Si Si ≥≥ 00, no interesa. Sigue , no interesa. Sigue óóptima.ptima.

11nB a−

+

1nx +

Ejemplo anterior: Ejemplo anterior: Se introduce xSe introduce x66 con ccon c66=1 y a=1 y a66=(=(--1,2)1,2)TT

( )

16 6

6 6 6 6

1 0 1 1

1 1 2 1

11 2,0 1 0

1TB

y B a

c z c c y

−⎛ ⎞⎛− ⎞ ⎛− ⎞⎟ ⎟ ⎟⎜ ⎜ ⎜⎟ ⎟ ⎟⎜ ⎜ ⎜= = =⎟ ⎟ ⎟⎜ ⎜ ⎜⎟ ⎟ ⎟⎜ ⎜ ⎜⎟ ⎟ ⎟⎜ ⎜ ⎜⎝ ⎠⎝ ⎠ ⎝ ⎠

⎛− ⎞⎟⎜ ⎟⎜− = − ⋅ = − − =− <⎟⎜ ⎟⎜ ⎟⎜⎝ ⎠

Se introduce xSe introduce x66 en la base y se aplica el en la base y se aplica el SimplexSimplex

OPTIMIZACIÓN LINEAL. 64Universidad Pontificia Comillas de Madrid

Cambios costes básicos

•• Cambio en coeficiente de una variable bCambio en coeficiente de una variable báásica en la sica en la funcifuncióón objetivon objetivo–– Afecta a:Afecta a: Todos los costes reducidos de no bTodos los costes reducidos de no báásicas sicas –– Actualizar Actualizar todostodos los los costes reducidoscostes reducidos variables no bvariables no báásicassicas

•• Si Si ≥≥ 00, soluci, solucióón actual n actual óóptimaptima•• Si Si < 0,< 0, no es no es óóptima, iterar mptima, iterar méétodo todo SimplexSimplex ..

Ejemplo anterior: Ejemplo anterior: Se cambia cSe cambia c11==--2 por 02 por 0

Var. Básicas x1 x2 x3 x4 x5 Vals

0 1 -1 0 0

x1 1 1 1 1 0 6

x5 0 3 1 1 1 10

xx33 entra en la base y entra en la base y sale xsale x11 pivote

OPTIMIZACIÓN LINEAL. 65Universidad Pontificia Comillas de Madrid

Cambios resto coeficientes variables básicas (i)

•• Cambio en un coeficiente de una variable bCambio en un coeficiente de una variable báásicasica–– Afecta a: Afecta a: toda la tabla del Simplextoda la tabla del Simplex (cambia B(cambia B--11))–– Calcular yCalcular y’’

jj=B=B--11aa’’jj siendo asiendo a’’

jj la nueva columna variable la nueva columna variable bbáásica:sica:

•• Si ySi y’’jjjj=0 p=0 péérdida de base: rdida de base: v. artificialv. artificial que la sustituya en la que la sustituya en la

base, y base, y SimplexSimplex--Dos fases Dos fases óó PenalizaciPenalizacióónn

•• En otro caso En otro caso pivotearpivotear en yen y’’jjjj. Durante el pivoteo puede . Durante el pivoteo puede

perderse factibilidad:perderse factibilidad:1.1. PPéérdida de factibilidad primal:rdida de factibilidad primal: mméétodo todo DualDual2.2. PPéérdida de optimalidad (de factibilidad dual)rdida de optimalidad (de factibilidad dual): m: méétodo todo

SimplexSimplex3.3. PPéérdida ambas:rdida ambas: v.v. artificialesartificiales recuperar factibilidad y recuperar factibilidad y

SimplexSimplex

OPTIMIZACIÓN LINEAL. 66Universidad Pontificia Comillas de Madrid

Cambios resto coeficientes variables básicas (ii)

Hacer cHacer c66--zz66=0 =0 pivoteandopivoteando y proceder y proceder mméétodo de penalizacionestodo de penalizaciones

Var. Básicas x1 x2 x3 x4 x5 Vals

-2 3 1 2 0

x6 0 1 1 1 0 6

x5 -1 3 1 1 1 10

x6

M

1

0

Ejemplo anterior: Ejemplo anterior: aa11 se cambia de (1,se cambia de (1,--1) a 1) a aa‘‘11=(0,=(0,--1)1)

' 1 '1 1

' '1 1 1 1

0 01 0

1 11 1

2TB

y B a

c z c c y

−⎛ ⎞⎛ ⎞ ⎛ ⎞⎟ ⎟ ⎟⎜ ⎜ ⎜⎟ ⎟ ⎟⎜ ⎜ ⎜= = =⎟ ⎟ ⎟⎜ ⎜ ⎜⎟ ⎟ ⎟− −⎜ ⎜ ⎜⎟ ⎟⎟⎜ ⎜⎜ ⎝ ⎠ ⎝ ⎠⎝ ⎠

− = − =−

=y=y’’1111 las columnas blas columnas báásicas sicas actuales no son una baseactuales no son una base

xx66 artificial sustituye a xartificial sustituye a x11 en en la base, con su mismo valorla base, con su mismo valor

Mismos costes reducidos para el resto de variables

Aplicamos método de

penalizaciones

OPTIMIZACIÓN LINEAL. 67Universidad Pontificia Comillas de Madrid

Incorporación de una restricción

•• IntroducciIntroduccióón de nueva restriccin de nueva restriccióónn1.1. Comprobar si la soluciComprobar si la solucióón n óóptima la satisface. Si lo hace, ptima la satisface. Si lo hace,

óóptima.ptima.2.2. Si no, Si no, aaññadiradir a tabla (a tabla (v. bv. báásica asociadasica asociada=variable holgura =variable holgura

y/o artificial)y/o artificial)•• MMéétodo todo DualDual si asi aññadida holguraadida holgura y y al adaptaral adaptar la tablala tabla valor valor

variable variable bbáásica<0 sica<0 •• MMéétodo simplex 2 fases o penalizacitodo simplex 2 fases o penalizacióón si an si aññadidas artificialesadidas artificiales

Ejemplo anterior: Ejemplo anterior: Se aSe aññade la restricciade la restriccióón n ––xx11+2x+2x33 ≥≥22El punto El punto óóptimo no satisface la restricciptimo no satisface la restriccióónn incorporar holgura xincorporar holgura x66

Var. Básicas x1 x2 x3 x4 x5 Vals

0 3 1 2 0

x1 1 1 1 1 0 6

x5 0 3 1 1 1 10

x6 1 0 -2 0 0 -2

x6

0

0

0

1

Hacer 0 y aplicar Hacer 0 y aplicar dual Simplexdual Simplex

Construir Construir identidad y aplicaridentidad y aplicarDual Dual SimplexSimplex por por

infactibilidadinfactibilidad

OPTIMIZACIÓN LINEAL. 68Universidad Pontificia Comillas de Madrid

Programación paramétrica (i)

Cambios continuos en parCambios continuos en paráámetrosmetros•• Cambios simultCambios simultááneos coeficientes funcineos coeficientes funcióón objetivon objetivo

direccidireccióón de n de parametrizaciparametrizacióónn

–– SSóólo cambia la lo cambia la direccidireccióón de optimizacin de optimizacióónn–– Problema:Problema: Determinar zonas espacio Determinar zonas espacio paramparaméétricotrico θθ con un con un

valor valor óóptimoptimo cada una (diferente valor objetivo)cada una (diferente valor objetivo)

1.1. HacerHacer θθ**=0=02.2. Resolver Resolver con con θθ==θθ**, , siendosiendo lala solucisolucióónn xx((θθ**))3.3. Calcular costes reducidos con Calcular costes reducidos con ccjj((θθ))=c=cjj++ααjjθθ θ≥θθ≥θ**

4.4. Obtener Obtener θθ****≥θ≥θ* * tal que xtal que x((θθ**)) sigue siendo solucisigue siendo solucióón n óóptima en ptima en [[θθ**,,θθ** ** ] ] pero un coste reducido=0: pero un coste reducido=0: variable no bvariable no báásica entrantesica entrante..

5.5. HacerHacer θθ**==θθ**** e ie ir al paso 2 incorporando en la base la r al paso 2 incorporando en la base la variable no bvariable no báásica anterior (aplicar primal sica anterior (aplicar primal simplexsimplex).).

0j j jc c α θ θ+ ⋅ ≥→1

f

n

αα

α

⎡ ⎤⎢ ⎥= ⎢ ⎥⎢ ⎥⎣ ⎦

M

OPTIMIZACIÓN LINEAL. 69Universidad Pontificia Comillas de Madrid

Programación paramétrica (ii)

•• Cambios simultCambios simultááneos en cotas de las restriccionesneos en cotas de las restricciones

direccidireccióón de parametrizacin de parametrizacióónn

–– Cambia regiCambia regióón factible: n factible: zonas espacio zonas espacio paramparaméétricotrico con una con una base base óóptimaptima

–– Son equivalentes a cambios en coeficientes de funciSon equivalentes a cambios en coeficientes de funcióón n objetivo del dualobjetivo del dual

1.1. HacerHacer θθ**=0=02.2. Resolver Resolver con con θθ==θθ**, , siendosiendo la la solucisolucióónn xx((θθ**))3.3. Calcular valores variables bCalcular valores variables báásicas con sicas con bbii((θθ))=b=bii++ααiiθθ θ≥θθ≥θ**

4.4. Obtener Obtener θθ****≥θ≥θ* * tal que xtal que x((θθ)) sigue siendo factible ensigue siendo factible en [[θθ**,,θθ** ** ] ] pero pero con un valor bcon un valor báásico=0: sico=0: variable bvariable báásica salientesica saliente..

5.5. Hacer Hacer θθ**==θθ**** e ie ir al paso 2 sacando de la base la variable br al paso 2 sacando de la base la variable báásica sica anterior (aplicar dual anterior (aplicar dual simplexsimplex).).

i i ib b θα→ + ⋅1

b

m

αα

α

⎡ ⎤⎢ ⎥= ⎢ ⎥⎢ ⎥⎣ ⎦

M