35
Tema 5: An´alisis de Sensibilidad y Param´ etrico 5.1 Introducci´on 5.2 Cambios en los coeficientes de la funci´on objetivo 5.3 Cambios en el rhs 5.4 An´ alisis de Sensibilidad y Dualidad 5.4.1 Cambios en el coeficiente en la funci´on objetivo de una variable nob´asica 5.4.2 Cambios en la columna de una variable no b´asica 5.4.3 nadir una nueva variable 5.5 An´ alisis Param´ etrico con WinQSB 1

Tema 5: An¶alisis de Sensibilidad y Param¶etrico · Tema 5: An¶alisis de Sensibilidad y Param¶etrico 5.1 Introducci¶on 5.2 Cambios en los coeflcientes de la funci¶on objetivo

  • Upload
    lyduong

  • View
    225

  • Download
    0

Embed Size (px)

Citation preview

Tema 5: Analisis de Sensibilidad

y Parametrico

5.1 Introduccion

5.2 Cambios en los coeficientes de la funcion objetivo

5.3 Cambios en el rhs

5.4 Analisis de Sensibilidad y Dualidad

5.4.1 Cambios en el coeficiente en la funcion objetivo de una variable

no basica

5.4.2 Cambios en la columna de una variable no basica

5.4.3 Anadir una nueva variable

5.5 Analisis Parametrico con WinQSB

1

5.1 Introduccion

Hipotesis en PL: parametros deterministas (conocidos y fijos).

Realidad: los parametros son estimaciones de los valores reales.

Analisis de Sensibilidad: ¿como afecta a la solucion optima los cambiosen los parametros del modelo? Obtener de forma eficiente la nuevasolucion optima (si existe) sin resolver de nuevo el modelo.

Supongamos resuelto el ppl en forma estandar:

Min ctx

s.a: Ax = b

x ≥ 0n

En la tabla optima del Simplex tenemos:

zj − cj ≤ 0 ∀j = 1, . . . , n bi ≥ 0 ∀i = 1, . . . ,m

2

¿Como afectan los cambios en:

los coeficientes de la funcion objetivo (cj)?

Posible perdida de la posibilidad dual

Reoptimizar con el algoritmo Simplex

los terminos de la derecha de las restricciones (bi)?

Posible perdida de la posibilidad primal

Reoptimizar con el Dual del Simplex

una fila y/o columna de A (aij)?

Posible perdida de la posibilidad primal

Posible perdida de la posibilidad dual

Posible perdida de ambas

Reoptimizar con dos Fases

3

5.2 Cambios en los coeficientes de la funcion objetivo

Pueden provocar la perdida de la optimalidad primal

¿Para que rango de valores de ck sigue siendo optima la solucion actual?

Coeficiente de una variable no basica: solo afecta al coste re-ducido de la variable cuyo coeficiente se ha cambiado.

zk − c′k = (zk − ck) + (ck − c′k)

Si zk − c′k ≤ 0 −→ La solucion sigue siendo optima.

Si zk − c′k > 0 −→ Reoptimizamos con el algoritmo del Simplex,haciendo basica xk.

4

Ejemplo 1

Min −2x1 + x2 − x3

s.a.: x1 + x2 + x3 ≤ 6

−x1 + 2x2 ≤ 4

x1, x2, x3 ≥ 0

x∗ =

6

0

0

z∗ = −12

Tabla optima:

x1 x2 x3 x4 x5 rhs

z 0 -3 -1 -2 0 -12

x1 1 1 1 1 0 6

x5 0 3 1 1 1 10

5

Ejemplo: Cambio en el Coeficiente de una Variable no Basica

z = −2x1

c2︷︸︸︷+1 x2 − x3 → z = −2x1

c′2︷︸︸︷−3 x2 − x3

z2 − c′2 = (z2 − c2) + (c2 − c′2) = −3 + (1− (−3)) = 1 > 0

x1 x2 x3 x4 x5 rhs

z 0 1 -1 -2 0 -12

x1 1 1 1 1 0 6

x5 0 3 1 1 1 10

Reoptimizamos con el Simplex, x2 se hace basica y x5 deja de serlo.

x1 x2 x3 x4 x5 rhs

z 0 0 −43

−73

−13

−463

x1 1 0 23

23

−13

83

x2 0 1 13

13

13

103

x∗ =

83

103

0

z∗ = −46

3

6

¿Para que rango de valores del coeficiente de una variable no basica

sigue siendo optima la solucion actual?

La solucion actual sigue siendo optima sii:

zk − c′k ≤ 0 sii (zk − ck) + (ck − c′k) ≤ 0 sii c′k ≥ ck + (zk − ck)

c′k ∈ [ck + (zk − ck),∞[

Ejemplo, continuacion . . .

En el Ejemplo 1, c2 = 1 y z2 − c2 = −3, luego la solucion actual

seguira siendo optima sii:

c′2 ∈ [1 + (−3),∞[ = [−2,∞[

x∗ =

6

0

0

z∗ = −12

7

Coeficiente de una variable basica: cambiara toda la fila aso-ciada a la funcion objetivo (Fila 0), excepto los costes reducidos delas variables basicas, que seguiran siendo iguales a cero.

Nueva Fila 0 = (Fila 0 actual) + (c′k − ck) (Fila actual de xk)

Si algun coste reducido se hace positivo reoptimizamos con el algoritmodel Simplex. Para determinar el rango de valores para los cuales siguesiendo optima la solucion actual se resuelve el sistema de inecuacionesdado por:

z′j − cj ≤ 0 ∀j ∈ N

En dicho rango, la solucion optima sera la misma y el valor optimo:

z∗ = cBB−1b + (c′k − ck)x∗k

8

Ejemplo: Cambio en el Coeficiente de una Variable Basica

z =

c1︷︸︸︷−2 x1 + x2 − x3 → z =

c′1︷︸︸︷0 x1 + x2 − x3 → z = x2 − x3

x1 x2 x3 x4 x5 rhs

z 0 -3 -1 -2 0 -12

x1 1 1 1 1 0 6

x5 0 3 1 1 1 10

Nueva Fila 0 = (Fila 0 actual) + (c′1 − c1) (Fila actual de x1)

x1 x2 x3 x4 x5 rhs

z 0 -1 1 0 0 0

x1 1 1 1 1 0 6

x5 0 3 1 1 1 10

9

x1 x2 x3 x4 x5 rhs

z 0 -1 1 0 0 0

x1 1 1 1 1 0 6

x5 0 3 1 1 1 10

Reoptimizamos con el Simplex, x3 se hace basica y x1 deja de serlo.

x1 x2 x3 x4 x5 rhs

z -1 -2 0 -1 0 -6

x3 1 1 1 1 0 6

x5 -1 2 0 0 1 4

x∗ =

0

0

6

z∗ = −6

10

Ejemplo, continuacion . . .

¿Para que rango de valores del coeficiente de x1 sigue siendo optima la

solucion actual?

x1 x2 x3 x4 x5 rhs

z 0 -3 -1 -2 0 -12

x1 1 1 1 1 0 6

x5 0 3 1 1 1 10

x∗ =

6

0

0

z∗ = −12

Nueva Fila 0 = (Fila 0 actual) + (c′1 − c1) (Fila actual de x1)

z′2 − c2 = −3 + (c′1 − c1)1 ≤ 0 ↔ (c′1 − c1) ≤ 3

z′3 − c3 = −1 + (c′1 − c1)1 ≤ 0 ↔ (c′1 − c1) ≤ 1

z′4 − c4 = −2 + (c′1 − c1)1 ≤ 0 ↔ (c′1 − c1) ≤ 2

↔ c′1 ≤ 1 + c1

En el ejemplo, c1 = −2, si c′1 ∈]−∞,−1] la solucion optima sigue siendo la

misma pero el valor optimo sera:

z∗ =− 12 + (c′1 − c1)6 = −12 + 6c′1 + 12 = 6c′1

11

5.3 Cambios en el termino de la derecha de una restriccion

Pueden provocar la perdida de la optimalidad dual ≡ perdida de laposibilidad primal

Si xB = B−1b′ = b′ tiene alguna componente negativa sera necesario reop-

timizar con el algoritmo Dual del Simplex.

¿Para que rango de valores de bi sigue siendo optima la base actual?

Aquel que se obtiene al resolver el sistema de inecuaciones:

b′ = b + (columna i-esima de B−1) (b′i − bi)︸ ︷︷ ︸4i

≥ 0

En dicho rango, la solucion optima sera:

x∗B = b + (columna i-esima de B−1)(4i), x∗N = 0

El valor optimo:

z∗ = ctB b + ωi4i

12

Ejemplo, cambio en el termino de la derecha de una restriccion

(no hay perdida de posibilidad primal)

b =

6

4

→ Cambiamos b1 → b′ =

3

4

La nueva solucion sera:

b′ = B−1b′ =

1 0

1 1

3

4

=

3

7

0

0

La base B = {a1, a5} sigue siendo optima, la nueva solucion es:

x∗ =

3

0

0

→ z∗ = ct

B b′ = (−2, 0)

3

7

= −6

13

Ejemplo, Continuacion . . ., sı hay perdida de posibilidad primal

Cambiamos b1 = 6 por b′1 = −2. La nueva solucion y el nuevo coste seran:

b′ = B−1b′ =

1 0

1 1

−2

4

=

−2

2

z = ctB b′ = (−2, 0)

−2

2

= 4

x1 x2 x3 x4 x5 rhs Nuevo

z 0 -3 -1 -2 0 -12 4

x1 1 1 1 1 0 6 → -2

x5 0 3 1 1 1 10 2

Perdemos la posibilidad primal, reoptimizamos con el Dual del Simpex:

Dual no acotado → Primal Imposible

14

Ejemplo

¿En cuanto podemos incrementar b1 sin que cambie la base optima?

Si cambiamos b =

6

4

por b′ =

6 +4

4

xB = B−1

6 +4

4

=

1 0

1 1

6 +4

4

=

6 +4

10 +4

proporcionara una solucion optima sii proporciona una solucion posible:

6 +4 ≥ 0

10 +4 ≥ 0→ 4 ≥ −6 → b1 ∈ [0,∞[

La solucion optima y el valor optimo seran, respectivamente:

x∗B =

6 +4

10 +4

x∗N = 0 z∗ = (−2, 0)

6 +4

10 +4

= −12− 24

15

¿Para que rango de valores de b2 sigue siendo optima la base actual?

xB = B−1

6

b2

=

1 0

1 1

6

b2

=

6

6 + b2

proporcionara una solucion optima sii proporciona una solucion posible:

6 ≥ 0

6 + b2 ≥ 0→ b2 ≥ −6 → b2 ∈ [−6,∞[

La solucion optima y el valor optimo seran, respectivamente:

x∗B =

6

6 + b2

x∗N = 0 z∗ = (−2, 0)

6

6 + b2

= −12

Notar que el precio sombra para esta restriccion sera 0.

16

5.4 Analisis de Sensibilidad y Dualidad

Dada una solucion posible basica del problema primal,

(xB = B−1b, xN = 0),

dicha solucion es optima si y solo si la solucion obtenida a partir deB, ω = ct

BB−1, es solucion posible del dual.

Cambios en la funcion objetivo del coeficiente de una variable nobasica

Cambios en la columna de A de una variable no basica

Adicion al problema de una nueva variable

17

La empresa Dakota Furniture Company fabrica escritorios, mesas y sillas.

La fabricacion de cada tipo de mueble requiere madera y dos tipos de

procesos: carpinterıa y acabado. La cantidad de recursos que necesita cada

tipo de mueble vienen dados en la siguiente tabla, en la que tambien se

incluyen los precios de venta de los muebles:

Recurso Escritorios Mesas Sillas

Madera (en pies de tablero) 8 6 1

Carpinterıa (en horas) 2 1.5 0.5

Acabado (en horas) 4 2 1.5

Precio de Venta (en euros) 60 30 20

En la actualidad se dispone de 48 pies de tableros de madera, 20 horas de

acabado y 8 de carpinterıa. Puesto que los recursos ya han sido adquiridos

y se supone que la demanda de cualquiera de los productos es ilimitada, la

empresa esta interesada en planificar la produccion de forma que se

maximicen los beneficios obtenidos.

18

x1 = escritorios x2 = mesas x3 = sillas

Max 60x1 + 30x2 + 20x3

s.a.: 8x1 + 6x2 + x3 ≤ 48

4x1 + 2x2 + 1,5x3 ≤ 20

2x1 + 1,5x2 + 0,5x3 ≤ 8

x1, x2, x3 ≥ 0

x1 = 2, x2 = 0, x3 = 8

19

ω1 = precio madera, ω2 = precio acabado, ω3 = precio carpint.

Min 48ω1 + 20ω2 + 8ω3

s.a.: 8ω1 + 4ω2 + 2ω3 ≥ 60

6ω1 + 2ω2 + 1,5ω3 ≥ 30

ω1 + 1,5ω2 + 0,5ω3 ≥ 20

ω1, ω2, ω3 ≥ 0

ω1 = 0, ω2 = 10, ω3 = 10 z = 280

20

5.4.1 Cambios en la funcion objetivo del coeficiente de

una variable no basica

¿Para que valores de c2 seguira siendo optima la solucion actual?

Una mesa consume,

6 pies de madera, a ω1 = 0 euros el pie

2 horas de acabado, a ω2 = 10 euros la hora, y

1.5 horas de carpinterıa, a ω3 = 10 euros la hora

En total:6× 0 + 2× 10 + 1,5× 10 = 35

Mientras el precio de venta de las mesas c2 ≤ 35 euros seguira sininteresar fabricar mesas, x2 = 0.

La solucion actual seguira siendo optima.

21

Los cambios en el coeficiente no afectan a la factibilidad de lasolucion del primal.

Min 48ω1 + 20ω2 + 8ω3

s.a.: 8ω1 + 4ω2 + 2ω3 ≥ 60

6ω1 + 2ω2 + 1,5ω3 ≥ c2

ω1 + 1,5ω2 + 0,5ω3 ≥ 20

ω1, ω2, ω3, ≥ 0

6ω1 + 2ω2 + 1,5ω3 ≥ c2

6× 0 + 2× 10 + 1,5× 10 ≥ c2

35 ≥ c2

22

5.4.2 Cambios en la columna de una variable no basica

Supongamos que cambia el vector de coeficientes de las mesas y tambien su

precio de venta.

c2 = 30 c′2 = 43 a2 =

6

2

1,5

a

′2 =

5

2

2

La nueva restriccion del dual serıa:

5ω1 + 2ω2 + 2ω3 ≥ 43

Que es violada por la solucion del dual actual:

5× 0 + 2× 10 + 2× 10 ≥ 43

40 ≥ 43

Fabricar una mesa consume 40 euros, si se vende por 43, interesara fabricar

mesas. El coste reducido cambiarıa de signo.

23

5.4.3 Anadir una nueva variable

Dakota esta considerando fabricar zapateros. Podrıan venderse por 15 euros

y consumirıan 1 pie de madera, 1 hora de acabado y 1 hora de carpinterıa.

¿Seguirıa siendo optima la solucion actual?, ¿Interesa fabricar zapateros?

Introducir una nueva variable, x4, con, c4 = 15 a4 =

1

1

1

Equivale a anadir una restriccion al dual:

ω1 + ω2 + ω3 ≥ 15

Como la solucion actual del dual, sı que cumple la restriccion:

1× 0 + 1× 10 + 1× 10 ≥ 15

No interesara fabricar zapateros.

z4 − c4 = ω1 + ω2 + ω3 − c4 = 20− 15 = 5

24

5.5 Analisis Parametrico

El analisis parametrico es una extension del analisis de sensibilidad.

Consiste en investigar como cambia la solucion optima y el valor opti-mo de un PPL cuando se efectuan cambios continuos en uno o masparametros, de la funcion objetivo:

z(µ) = c + µc′, c y c

′conocidos, µ escalar

o del rhs:

b(µ) = b + µb′, b y b

′conocidos, µ escalar

25

Procedimiento

1. Calcular la solucion optima para µ = 0.

2. Determinar el rango de valores para µ, [0, µ1], para los que lasolucion sigue siendo optima.

3. Para µ = µ1 se produce un cambio de base optima. Realizar elcambio. Obtener la nueva solucion optima.

4. Determinar el nuevo rango de valores de µ para los que es optimala solucion actual. Sea [µ1, µ2].

5. Repetir el proceso hasta que se detecta un µr tal que:

el problema es imposible ∀µ ≥ µr, o

la solucion optima actual sigue siendo optima ∀µ ≥ µr.

26

Min − x1 − 3x2

s.a.: x1 + x2 ≤ 6

− x1 + 2x2 ≤ 6

x1, x2 ≥ 0

z(µ) =

−1

−3

+ µ

2

1

x1

x2

z(µ) = (−1 + 2µ)x1 + (−3 + 1µ)x2

b(µ) =

6

6

+ µ

−1

1

=

6− µ

6 + µ

27

5.5.1 Analisis Parametrico de la Funcion Objetivo

µ = 0 → µ ∈ [0, 1]

Solucion Optima: x∗ =

2

4

Valor Optimo: z∗ = −14

z ∈ [−14,−6] con pendiente 8 → z∗(µ) = −14 + 8µ

Notar que la misma conclusion se obtiene para:

µ ∈ [−2, 0]

pero aquı z ∈ [−30,−14]

28

µ = 1 → µ ∈ [1, 3]

Cambio de base: x1 deja de ser basica, h1 se hace basica.

x2 + h1 = 6

2x2 = 6→ x2 = 3

h1 = 3

Solucion Optima: x∗ =

0

3

Valor Optimo: z∗ = −6

z ∈ [−6, 0] con pendiente 3 → z∗(µ) = −9 + 3µ

29

µ = 3 → µ ∈ [3,∞[

Cambio de base: x2 deja de ser basica, h2 se hace basica.

h1 = 6

h2 = 6

Solucion Optima: x∗ =

0

0

Valor Optimo: z∗ = 0

z ∈ [0, 0] con pendiente 0 → z∗(µ) = 0

30

µ = −2 → µ ∈]−∞,−2]

Cambio de base: x2 deja de ser basica, h2 se hace basica.

x1 = 6

−x1 + h2 = 6→ x1 = 6

h2 = 12

Solucion Optima: x∗ =

6

0

Valor Optimo: z∗ = −30

z ∈ ]−∞,−30] con pendiente 12 → z∗(µ) = −6 + 12µ

31

Resumiendo:

µ ∈]−∞,−2] → x∗ =

6

0

→ z∗(µ) = −6 + 12µ

µ ∈ [−2, 1] → x∗ =

2

4

→ z∗(µ) = −14 + 8µ

µ ∈ [1, 3] → x∗ =

0

3

→ z∗(µ) = −9 + 3µ

µ ∈ [3,∞[ → x∗ =

0

0

→ z∗(µ) = 0

32

5.5.2 Analisis Parametrico del rhs

µ ∈ ]−∞, 2]

Las variables basicas optimas son x1 y x2.

x1 + x2 = 6− µ

−x1 + 2x2 = 6 + µ→ x1 = 2− µ

x2 = 4

Solucion Optima: x∗ =

2− µ

4

Valor Optimo: z∗ = −14 + µ

33

µ = 2 → µ ∈ [2, 6]

Cambio de base: x1 deja de ser basica, h2 se hace basica.

x2 = 6− µ

2x2 + h2 = 6 + µ→ x2 = 6− µ

h2 = −6 + 3µ

Solucion Optima: x∗ =

0

6− µ

Valor Optimo: z∗ = −18 + 3µ

34

µ = 6 → µ ∈]6,∞[

Cambio de base: x2 deja de ser basica, No es posible determinar lavariable que se hace basica: Dual no Acotado −→ Primal Imposible

Resumiendo:

µ ∈]−∞, 2] → x∗ =

2− µ

4

→ z∗(µ) = −14 + µ

µ ∈ [2, 6] → x∗ =

0

6− µ

→ z∗(µ) = −18 + 3µ

µ ∈ [6,∞[ → Problema Imposible

35