Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de...

223
Investigación Operativa Programación lineal continua

Transcript of Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de...

Page 1: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Investigación OperativaProgramación lineal continua

Page 2: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Investigación Operativa

Índice

1. Conceptos básicos de programación lineal2. Dualidad en programación lineal3. Análisis de sensibilidad

Programación lineal continua

2Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Page 3: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

3

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Un modelo matemático o problema se dice que es de programación linealsi la función objetivo y las restricciones del problema son una funciónlineal de las variables de decisión y, además, éstas últimas pueden tomarcualquier valor real.

Page 4: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

4

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

La forma estándar de un problema lineal es la siguiente:

x ∈ Rn es el vector de variables de decisión,c ∈ Rn es el vector de coeficientes de la función objetivo,A ∈ M(R, m×n) es la matriz de restricciones del problema,b ∈ es el vector de términos independientes de las restricciones,0n es el vector n–dimensional con todas las coordenadas 0.

El rango de la matriz A se considerará que es siempre m ≤ n. Con esto se pretendeevitar la posibilidad de restricciones contradictorias o redundantes.

Nota: En general entenderemos que los vectores son vectores columna

n

T

xbAx:asujeto

xcminmax

0

)(

≥=

m+R

Page 5: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

5

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1.Todas las restricciones son igualdades con segundo miembro no negativo.

2.Todas las variables son no negativas.

¿Cómo transformar una restricción de desigualdad en una de igualdad?

1 1 2 2 1 1 2 2

1 1 2 2 1 1 2 2

... ... , 0

... ... , 0n n n n

n n n n

a x a x a x b a x a x a x h b ha x a x a x b a x a x a x e b e

+ + + ≤ → + + + + = ≥+ + + ≥ → + + + − = ≥

h se denomina variable de holgurae se denomina variable de exceso

REDUCCIÓN A LA FORMA ESTÁNDAR:

La forma estándar cumple que:

4x1 + 3x2 ≤ 240 → 4x1 + 3x2 + h = 2402x1 + x2 ≥ 100 → 2x1 + x2 − e = 100

Page 6: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

6Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Conceptos básicos de programación lineal

¿Cómo transformar una variable real en una no negativa?

, 0x u vx u v

= −∈ → ≥R

1 2

1 2

1 2

3. : 5

, 0

Max x xs a x x

x x

+ + ≤ ∈ ≥ R

2

2

2

3 3. : 5

, , 0

Max u v xs a u v x

u v x

− + − + ≤ ≥

1, 0

x u vu v

= −≥

Page 7: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

7Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Conceptos básicos de programación lineal

¿Cómo transformar una variable real no positiva en una no negativa?

0 0x yx y

= −≤ → ≥

1 2

1 2

1 2

3. : 5

0, 0

Max x xs a x x

x x

+ + ≤ ≤ ≥

2

2

2

3. : 5

, 0

Max y xs a y x

y x

− + − + ≤ ≥

10

y xy= −≥

Page 8: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

8Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Conceptos básicos de programación lineal

EJEMPLO:Escribir la forma estándar del siguiente problema lineal:

1 2

1 2

1 2

1 2

2530

Max x xs.a : x x

x xx ,x

++ ≥ −

− ≥∈ ≥R

Page 9: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

9Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Conceptos básicos de programación lineal

EJEMPLO:Escribir la forma estándar del siguiente problema lineal:

1 2

1 2

1 2

1 2

2530

Max x xs.a : x x

x xx ,x

++ ≥ −

− ≥∈ ≥R

Paso 1: Conseguir que los términos independientes sean ≥ 0

Paso 2: Conseguir que todas las variables sean ≥ 0

Paso 3: Conseguir que todas las restricciones sean de igualdad

Page 10: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

10Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Conceptos básicos de programación lineal

EJEMPLO:Escribir la forma estándar del siguiente problema lineal:

1 2

1 2

1 2

1 2

2530

Max x xs.a : x x

x xx ,x

++ ≥ −

− ≥∈ ≥R

1 2 5x x− − ≤

Paso 1

Page 11: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

11Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Conceptos básicos de programación lineal

EJEMPLO:Escribir la forma estándar del siguiente problema lineal:

1 2

1 2

1 2

1 2

2530

Max x xs.a : x x

x xx ,x

++ ≥ −

− ≥∈ ≥R

1 1 2

1 1 2

1 1 2

1 1 2

2 25

30

Max u v xs.a : u v x

u v xu ,v ,x .

− +− + − ≤

− − ≥≥

1 2 5x x− − ≤

Paso 2

Page 12: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

12Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Conceptos básicos de programación lineal

EJEMPLO:Escribir la forma estándar del siguiente problema lineal:

1 2

1 2

1 2

1 2

2530

Max x xs.a : x x

x xx ,x

++ ≥ −

− ≥∈ ≥R

1 1 2

1 1 2 1

1 1 2 2

1 1 2 1 2

2 253

0

Max u v xs.a : u v x h

u v x eu ,v ,x ,h ,e .

− +− + − + =

− − − =≥

1 2 5x x− − ≤

Paso 3

Page 13: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

13

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Al conjunto de todas las posibles alternativas que satisfacen las restricciones delproblema se le denomina conjunto factible, y a sus elementos solucionesfactibles. Además, a aquellas alternativas de entre las factibles que son las mejorespara el objetivo que se persigue se les denomina soluciones óptimas. En unproblema lineal el conjunto factible es un poliedro convexo.

El número de alternativas a evaluar para buscar una solución óptima puede sermuy grande (infinitas alternativas). Sin embargo, la estructura lineal de losproblemas conduce al siguiente resultado:

TEOREMA FUNDAMENTAL DE LA PROGRAMACIÓN LINEAL (TFPL)Dado un problema lineal se satisface lo siguiente:

1) Si el conjunto factible es no vacío entonces este tiene al menos un vértice.

2) Si el problema tiene solución óptima (finita) entonces al menos un vértice essolución óptima del problema.

Page 14: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

14

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

El TFPL implica que la búsqueda de la solución óptima se reduce a buscar enun número finito de puntos que son los vértices de un poliedro.

Si el conjunto factible es vacío, es decir, no existen alternativas que satisfacentodas las restricciones del problema lineal, entonces se dice que el problema esinfactible.

El conjunto de soluciones óptimas puede ser un único punto, diciéndose entoncesque el problema tiene solución única.

El conjunto de soluciones óptimas puede contener infinitas soluciones (cuyaestructura geométrica también es un poliedro).

El problema lineal puede no tener solución finita, es decir, existe una dirección enel conjunto factible a lo largo de la cual se puede mejorar indefinidamente el valorde la función objetivo, en ese caso decimos que tiene solución no acotada.

Page 15: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

15

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Un productor que tiene una disponibilidad semanal de 180, 150 y 160 horasde tres recursos diferentes que usa para producir 2 productos, A y B, cuyasnecesidades y beneficios por kg vienen dados por la siguiente tabla:

Producto A B

R1 (h/kg) 4 3

R2 (h/kg) 2 3

R3 (h/kg) 4 2

Beneficio (€/kg) 9 12

¿Cuál es la producción que le proporcionaría el máximo beneficio?

Page 16: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

16

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1. Representar gráficamente el problema y comprobar que el único puntoóptimo es el vértice (punto extremo) del conjunto factible (15,40).

2. Supongamos que el beneficio unitario del producto A pasa a ser 8 €/kg.Resolver de nuevo el problema y comprobar que existen infinitos óptimoscomprendidos en el segmento cuyos extremos son (0,50) y (15,40).

3. En el problema del apartado 1, cambiar el signo de las inecuaciones de ≤ a ≥y comprobar que el problema es no acotado.

4. Añadir al problema del apartado 1 la restricción x1 ≥ 45 y comprobar que elproblema es infactible.

EJERCICIO:1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

Page 17: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche17

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

Conceptos básicos de programación lineal

Page 18: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche18

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Conceptos básicos de programación lineal

Page 19: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche19

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Conceptos básicos de programación lineal

Page 20: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche20

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

2x1+3x2<=150

Conceptos básicos de programación lineal

Page 21: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche21

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

2x1+3x2<=150

Conceptos básicos de programación lineal

Page 22: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche22

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+2x2<= 160

Conceptos básicos de programación lineal

Page 23: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche23

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+2x2<= 160

Conceptos básicos de programación lineal

Page 24: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche24

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

Conceptos básicos de programación lineal

1 2, 0x x ≥

Page 25: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche25

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

2x1+3x2<=150

4x1+2x2<= 160

Conceptos básicos de programación lineal

Page 26: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche26

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

2x1+3x2<=150

4x1+2x2<= 160

Conceptos básicos de programación lineal

Page 27: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche27

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

2x1+3x2<=150

4x1+2x2<= 160

Conceptos básicos de programación lineal

Page 28: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche28

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

2x1+3x2<=150

4x1+2x2<= 160

59 4512 60

∇ =

1 29 12max x x+

Conceptos básicos de programación lineal

Page 29: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche29

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

59 4512 60

∇ =

1 29 12max x x+

Conceptos básicos de programación lineal

Page 30: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche30

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

59 4512 60

∇ =

1 29 12max x x+

Conceptos básicos de programación lineal

Page 31: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche31

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

59 4512 60

∇ =

1 29 12max x x+

Conceptos básicos de programación lineal

Page 32: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche32

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

59 4512 60

∇ =

1 29 12max x x+

1540

x* =

Conceptos básicos de programación lineal

Page 33: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche33

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

1 28 12max x x+

Conceptos básicos de programación lineal

Page 34: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche34

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

58 4012 60

∇ =

1 28 12max x x+

Conceptos básicos de programación lineal

Page 35: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche35

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

58 4012 60

∇ =

1 28 12max x x+

Conceptos básicos de programación lineal

Page 36: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche36

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

58 4012 60

∇ =

1 28 12max x x+

Conceptos básicos de programación lineal

Page 37: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche37

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

58 4012 60

∇ =

1 28 12max x x+

Conceptos básicos de programación lineal

Page 38: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche38

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

58 4012 60

∇ =

1 28 12max x x+

Conceptos básicos de programación lineal

Page 39: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche39

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

58 4012 60

∇ =

1 28 12max x x+

15 0 y

40 50x* x*

= =

y todos los puntos del segmento entre ambas soluciones

Conceptos básicos de programación lineal

Page 40: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche40

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

58 4012 60

∇ =

1 28 12max x x+

8 15 12 40 6008 0 12 50 600

z*z*

= × + × == × + × =

y todos los puntos del segmento entre ambas soluciones

Conceptos básicos de programación lineal

15 0 y

40 50x* x*

= =

Page 41: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche41

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≥+ ≥+ ≥

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

2x1+3x2<=150

4x1+2x2<= 160

Conceptos básicos de programación lineal

Page 42: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche42

59 4512 60

∇ =

1 29 12max x x+

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≥+ ≥+ ≥

Conceptos básicos de programación lineal

Page 43: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche43

59 4512 60

∇ =

1 29 12max x x+

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≥+ ≥+ ≥

Conceptos básicos de programación lineal

Page 44: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche44

59 4512 60

∇ =

1 29 12max x x+

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≥+ ≥+ ≥

Conceptos básicos de programación lineal

Page 45: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche45

59 4512 60

∇ =

1 29 12max x x+

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≥+ ≥+ ≥

No acotado!!!

Conceptos básicos de programación lineal

Page 46: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche46

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

2x1+3x2<=150

4x1+2x2<= 160

Conceptos básicos de programación lineal

1 45x ≥

Page 47: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche47

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

2x1+3x2<=150

4x1+2x2<= 160

Conceptos básicos de programación lineal

1 45x ≥

Page 48: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche48

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

2x1+3x2<=150

4x1+2x2<= 160

1 45x ≥

Conceptos básicos de programación lineal

Page 49: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche49

1 2

1 2

1 2

1 2

1 2

max 9 12. : 4 3 180

2 3 1504 2 160

, 0

x xs a x x

x xx xx x

++ ≤+ ≤+ ≤

0

10

20

30

40

50

60

70

80

-10 0 10 20 30 40 50 60 70 80

x2

x1

4x1+3x2<=180

2x1+3x2<=150

4x1+2x2<= 160

1 45x ≥

Infactible!!!

Conceptos básicos de programación lineal

Page 50: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

50

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

La tarea de hallar todos los vértices de un poliedro en más de dos o tresdimensiones es complicado → Método algebraico que los identifique.

Consideremos un problema lineal en forma estándar:

n

T

xbAx:asujeto

xcminmax

0

)(

≥=

TFPL → La búsqueda de la solución óptima se reduce a buscar en un númerofinito de puntos que son los vértices de un poliedro.

Soluciones = {x∈Rn / Ax = b}

=

Soluciones factibles = {x∈Rn / Ax = b, x ≥ 0n}

Page 51: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

51

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3

1 2 3

1 2 3

1 2 3

max 2. : 3 60

2 10, , 0

x x xs a x x x

x x xx x x

+ + + + ≤ − + ≤ ≥

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

Page 52: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

52

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3

1 2 3

1 2 3

1 2 3

max 2. : 3 60

2 10, , 0

x x xs a x x x

x x xx x x

+ + + + ≤ − + ≤ ≥

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1

2

3

1

2

xx

x xhh

=

3 1 1 1 01 1 2 0 1

A = −

6010

b =

21100

c

=

max. :

0

T

n

c xs a Ax b

x=

Page 53: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

53

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Como rango(A) = m = nº de filas ≤ n = nº de variables → Sistema compatible.

donde B es una matriz con m columnas linealmente independientes y D son lasrestantes columnas de la matriz A, y xB ∈ Rm y xD ∈ Rn−m son los vectores de lasvariables asociadas a B y D respectivamente.

Soluciones = {x∈Rn / Ax = b}

B DBx Dx b+ =

• Si m = n → Sistema compatible determinado → La solución única es óptima.• Si m < n → Sistema compatible indeterminado → Podemos expresar las infinitas

soluciones despejando m variables en función de las m−n restantes.

Matricialmente: Si tomamos m columnas linealmente independientes de la matrizA, entonces, reordenando las columnas si fuese necesario, se puede escribir elsistema Ax = b de la siguiente forma:

Page 54: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

54

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3 1

1 2 3 2

3 602 10

x x x hx x x h

+ + + =− + + =

3 1 1 1 01 1 2 0 1

A = −

1

2

3

1

2

xx

x xhh

=

Page 55: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

55

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3 1

1 2 3 2

3 602 10

x x x hx x x h

+ + + =− + + =

3 1 1 1 01 1 2 0 1

A = −

B D1

2

3

1

2

xx

x xhh

=

Bx

Dx

Page 56: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

56

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3 1

1 2 3 2

3 602 10

x x x hx x x h

+ + + =− + + =

31

12

2

3 1 1 1 0 601 1 2 0 1 10

xx

hx

h

+ = −

B DBx Dxb

3 1 1 1 01 1 2 0 1

A = −

B D1

2

3

1

2

xx

x xhh

=

Bx

Dx

B DBx Dx b+ =

Page 57: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

57

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Como rango(B) = m → ∃ B−1. Por lo tanto, las soluciones del sistema Ax = b seobtienen:

1 1 ,

B D

B D

n mB D D

Bx Dx b

Bx b Dx

x B b B Dx x R− − −

+ =

= −

= − ∈

Y las soluciones factibles serán:

1 1 ,

0 , 0

B D

D n m B m

x B b B Dx

x x

− −

= −

≥ ≥ Factibles

Soluciones+

Page 58: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

58

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3 1

1 2 3 2

3 602 10

x x x hx x x h

+ + + =− + + =

31

12

2

3 1 1 1 0 601 1 2 0 1 10

xx

hx

h

+ = −

B DBx Dxb

B DBx Dx b+ =

Page 59: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

59

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3 1

1 2 3 2

3 6010 2

x x x hx x x h

+ = − −− = − −

31

12

2

3 1 60 1 1 01 1 10 2 0 1

xx

hx

h

= − −

1 2 3 1

1 2 3 2

3 602 10

x x x hx x x h

+ + + =− + + =

31

12

2

3 1 1 1 0 601 1 2 0 1 10

xx

hx

h

+ = −

B DBx Dxb

B DBx b Dx= −

B DBx Dx b+ =

Page 60: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

60

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3 1

1 2 3 2

3 6010 2

x x x hx x x h

+ = − −− = − −

31

12

2

3 1 60 1 1 01 1 10 2 0 1

xx

hx

h

= − −

1

1 14 41 34 4

B−

= −

1 2 3 1

1 2 3 2

3 602 10

x x x hx x x h

+ + + =− + + =

31

12

2

3 1 1 1 0 601 1 2 0 1 10

xx

hx

h

+ = −

31 1 1

12

2

60 1 1 010 2 0 1

xx

B B hx

h

− −

= −

B DBx Dxb

1 1B Dx B b B Dx− −= −

B DBx b Dx= −

B DBx Dx b+ =

Page 61: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

61

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

31

12

2

1 1 1 160 1 1 04 4 4 4

1 3 10 1 3 2 0 14 4 4 4

xx

hx

h

= − − −

31

12

2

70 3 1 14 4 4 4

30 5 314 4 4 4

xx

hx

h

= − − −

Las soluciones del sistema Ax=b son todoslos valores x1 , x2 , x3 , h1 , h2 que satisfacenestas relaciones.

1 3 1 2

2 3 1 2

70 3 1 14 4 4 4

30 5 1 34 4 4 4

x x h h

x x h h

= − − − = + − +

1 1B Dx B b B Dx− −= −

Soluciones del sistema Ax=b

Page 62: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

62

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

31

12

2

1 2 3 1 2

70 3 1 14 4 4 4

30 5 314 4 4 4

, , , , 0

xx

hx

h

x x x h h

= − − − +

Las soluciones factibles son todos losvalores x1 , x2 , x3 , h1 , h2 ≥ 0 quesatisfacen estas relaciones.

1 3 1 2

2 3 1 2

70 3 1 14 4 4 4

30 5 1 34 4 4 4

x x h h

x x h h

= − − − = + − +

Soluciones factibles

Page 63: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

63

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

A las soluciones del tipo xB = B–1b, xD = 0n–m, se les denomina solucionesbásicas y si, además, son factibles, esto es, verifican xB ≥ 0m, entonces se lesllama soluciones básicas factibles.

Page 64: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

64

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:3

11

22

70 3 1 14 4 4 4

30 5 314 4 4 4

xx

hx

h

= − − −

Haciendo x3=h1=h2=0, obtenemos una solución básica:

A las soluciones del tipo xB = B–1b, xD = 0n–m, se les denomina solucionesbásicas y si, además, son factibles, esto es, verifican xB ≥ 0m, entonces se lesllama soluciones básicas factibles.

Page 65: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

65

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:3

11

22

70 3 1 14 4 4 4

30 5 314 4 4 4

xx

hx

h

= − − −

Haciendo x3=h1=h2=0, obtenemos una solución básica:

A las soluciones del tipo xB = B–1b, xD = 0n–m, se les denomina solucionesbásicas y si, además, son factibles, esto es, verifican xB ≥ 0m, entonces se lesllama soluciones básicas factibles.

000

Page 66: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

66

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:3

11

22

70 3 1 14 4 4 4

30 5 314 4 4 4

xx

hx

h

= − − −

Haciendo x3=h1=h2=0, obtenemos una solución básica:

A las soluciones del tipo xB = B–1b, xD = 0n–m, se les denomina solucionesbásicas y si, además, son factibles, esto es, verifican xB ≥ 0m, entonces se lesllama soluciones básicas factibles.

000

704

304

=

Page 67: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

67

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:3

11

22

70 3 1 14 4 4 4

30 5 314 4 4 4

xx

hx

h

= − − −

Haciendo x3=h1=h2=0, obtenemos una solución básica:

1

2

704

304

xx

=

3

1

2

000

xhh

=

En este caso, además, como x1 , x2 ≥ 0, la solución básica es factible.

A las soluciones del tipo xB = B–1b, xD = 0n–m, se les denomina solucionesbásicas y si, además, son factibles, esto es, verifican xB ≥ 0m, entonces se lesllama soluciones básicas factibles.

Page 68: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dada una solución básica factible diremos que es NO degenerada, si todos losvalores de las variables básicas son estrictamente positivos. En caso contrario,diremos que es degenerada.

68

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Page 69: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dada una solución básica factible diremos que es NO degenerada, si todos losvalores de las variables básicas son estrictamente positivos. En caso contrario,diremos que es degenerada.

69

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1

2

704

304

xx

=

3

1

2

000

xhh

=

Como x1 , x2 > 0, la solución esno degenerada

Page 70: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

70

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

TEOREMA (RELACIÓN ENTRE LAS SOLUCIONES BÁSICAS FACTIBLES Y LOS VÉRTICES DEL CONJUNTO FACTIBLE)

Dado un problema lineal en forma estándar se satisface que toda soluciónbásica factible es un vértice del conjunto factible y viceversa.

¿Cuál es el interés de las soluciones básicas factibles?

Importancia de este resultado:1. Proporciona una versión algebraica del T. Fundamental de la PL.2. Proporciona un método de búsqueda de una solución óptima: evaluar la f.o. en

las soluciones básicas factibles.

Page 71: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

71

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2

1 2

2

1 2

2. : 6

3, 0

Max x xs a x x

xx x

+ + ≤ ≤ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

Page 72: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

72

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

Page 73: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

73

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 1 1 00 1 0 1

A =

1

2

1

2

xx

xhh

=

1 2 1 2x x h h2100

c

=

63

b =

Page 74: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

74

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 1 1 00 1 0 1

A =

1

2

1

2

xx

xhh

=

1 2 1 2x x h h2100

c

=

63

b =

A tiene 4 columnas → 6 descomposiciones posibles A=(B | D)

Page 75: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

75

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 1 1 00 1 0 1

A =

B D

1

2

1

2

xx

xhh

=

Bx

Dx

1 2 1 2x x h h

1 1 1 00 1 0 1

A =

1 2 1 2x x h h

Page 76: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

76

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 1 1 00 1 0 1

A =

B D

1

2

1

2

xx

xhh

=

Bx

Dx

1Bx B b−=

1 2 1 2x x h h

Page 77: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

77

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 1 1 00 1 0 1

A =

B D

1

2

1

2

xx

xhh

=

Bx

Dx1 1

2

6 1 1 6 33 0 1 3 3

xB

x− −

= = =

1Bx B b−=

1 2 1 2x x h h

Page 78: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

78

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 1 1 00 1 0 1

A =

B D

1

2

1

2

xx

xhh

=

Bx

Dx1 1

2

6 1 1 6 33 0 1 3 3

xB

x− −

= = =

1Bx B b−=

1 2 1 23, 3, 0, 0x x h h= = = =

Page 79: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

79

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 1 1 00 1 0 1

A =

B D

1

2

1

2

xx

xhh

=

Bx

Dx1 1

2

6 1 1 6 33 0 1 3 3

xB

x− −

= = =

1Bx B b−=

1 2 1 23, 3, 0, 0x x h h= = = = Vértice A

Page 80: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

80

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 1 1 00 0 1 1

A =

B D

1

1

2

2

xh

xxh

=

Bx

Dx

1 1 2 2x h x h

1 1 1 00 1 0 1

A =

1 2 1 2x x h h

Page 81: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

81

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 1 1 00 0 1 1

A =

B D

1

1

2

2

xh

xxh

=

Bx

Dx

1Bx B b−=

1 1 2 2x h x h

Page 82: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

82

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 1 1 00 0 1 1

A =

B D

1

1

2

2

xh

xxh

=

Bx

Dx

1Bx B b−=

No da lugar a una solución básica

1 1 2 2x h x h

Page 83: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

83

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 0 1 11 1 0 0

A =

B D

2

2

1

1

xh

xxh

=

Bx

Dx

2 2 1 1x h x h

1 1 1 00 1 0 1

A =

1 2 1 2x x h h

Page 84: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

84

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 0 1 11 1 0 0

A =

B D

2

2

1

1

xh

xxh

=

Bx

Dx2 1

2

6 1 0 6 63 1 1 3 3

xB

h−

= = = − −

1Bx B b−=

2 2 1 1x h x h

Page 85: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

85

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

1 0 1 11 1 0 0

A =

B D

2

2

1

1

xh

xxh

=

Bx

Dx2 1

2

6 1 0 6 63 1 1 3 3

xB

h−

= = = − −

1Bx B b−=

No da lugar a una solución básica FACTIBLE

2 2 1 1x h x h

Page 86: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

x1, x2 x1, h1 x1, h2 x2, h1 x2, h2 h1, h2

B 1 10 1

1 10 0

1 00 1

1 11 0

1 01 1

1 00 1

B-1 1 10 1

No 1 00 1

0 11 1

1 01 1

1 00 1

B-1b 33

No 63

33

63

63

Factible? Sí Sí Sí No Sí

Solución (3,3,0,0) A (6,0,0,3)

B (0,3,3,0)

C (0,0,6,3) D

Func. obj. 9 -- 12 3 -- 0

86

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

Page 87: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

x1, x2 x1, h1 x1, h2 x2, h1 x2, h2 h1, h2

B 1 10 1

1 10 0

1 00 1

1 11 0

1 01 1

1 00 1

B-1 1 10 1

No 1 00 1

0 11 1

1 01 1

1 00 1

B-1b 33

No 63

33

63

63

Factible? Sí Sí Sí No Sí

Solución (3,3,0,0) A (6,0,0,3)

B (0,3,3,0)

C (0,0,6,3) D

Func. obj. 9 -- 12 3 -- 0

87

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1 2 1 2

1 2 1 2 1

2 2 2

1 2 1 2 1 2

2 2. : 6 . : 6

3 3, 0 , , , 0

Max x x Max x xs a x x s a x x h

x x hx x x x h h

+ + + ≤ + + = → ≤ + = ≥ ≥

EJEMPLO:

x1 + x2 ≤ 6

B

A

D

Cx2 ≤ 3

*1*2*1*2

6003

xxhh

=

=

=

=

Page 88: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

88

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO: Halla la solución óptima del siguiente problema si la base óptima la forman x2 y h2

1 2 3

1 2 3

1 2 3

1 2 3

max 2. : 3 60

2 10, , 0

x x xs a x x x

x x xx x x

+ + + + ≤ − + ≤ ≥

Page 89: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

89

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO: Halla la solución óptima del siguiente problema si la base óptima la forman x2 y h2

1 2 3

1 2 3

1 2 3

1 2 3

max 2. : 3 60

2 10, , 0

x x xs a x x x

x x xx x x

+ + + + ≤ − + ≤ ≥

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

Page 90: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

90

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3

1 2 3

1 2 3

1 2 3

max 2. : 3 60

2 10, , 0

x x xs a x x x

x x xx x x

+ + + + ≤ − + ≤ ≥

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1 2 3 1 2x x x h h3 1 1 1 01 1 2 0 1

A = −

Base = {x2 , h2}

Page 91: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

91

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3

1 2 3

1 2 3

1 2 3

max 2. : 3 60

2 10, , 0

x x xs a x x x

x x xx x x

+ + + + ≤ − + ≤ ≥

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1 2 3 1 2x x x h h3 1 1 1 01 1 2 0 1

A = −

Base = {x2 , h2}

Page 92: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

92

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3

1 2 3

1 2 3

1 2 3

max 2. : 3 60

2 10, , 0

x x xs a x x x

x x xx x x

+ + + + ≤ − + ≤ ≥

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1 0 3 1 11 1 1 2 0

A = −

B D

2

2

1

3

1

xh

x xxh

=

Bx

Dx

2 2 1 3 1x h x x h

1 2 3 1 2x x x h h3 1 1 1 01 1 2 0 1

A = −

Base = {x2 , h2}

Page 93: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

93

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3

1 2 3

1 2 3

1 2 3

max 2. : 3 60

2 10, , 0

x x xs a x x x

x x xx x x

+ + + + ≤ − + ≤ ≥

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1 0 3 1 11 1 1 2 0

A = −

B D

2

2

1

3

1

xh

x xxh

=

Bx

Dx

2 2 1 3 1x h x x h

Base = {x2 , h2}

2 1

2

60 1 0 60 6010 1 1 10 70

xB

h−

= = =

1Bx B b−=

Page 94: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

94

Conceptos básicos de programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

1 2 3

1 2 3

1 2 3

1 2 3

max 2. : 3 60

2 10, , 0

x x xs a x x x

x x xx x x

+ + + + ≤ − + ≤ ≥

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1 0 3 1 11 1 1 2 0

A = −

B D

2

2

1

3

1

xh

x xxh

=

Bx

Dx

2 2 1 3 1x h x x h

Base = {x2 , h2}

2 1

2

60 1 0 60 6010 1 1 10 70

xB

h−

= = =

1Bx B b−=

1

3

1

000

D

xx x

h

= =

Page 95: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

95

El algoritmo del simplex

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Solución básica factible

Soluciónóptima

Generación de una nueva solución

básica factible

NO

Test deoptimalidad

El algoritmo del simplex es un método para solucionar problemas deprogramación lineal que consiste en: partiendo de una solución básica factiblebuscar una nueva solución básica factible que mejore el valor de la funciónobjetivo. Su estructura es la siguiente:

En resumen, el algoritmo de simplex es un proceso de sustitución de columnasque nos permite explorar los vértices de un poliedro siguiendo cada vez unadirección de mejora hasta alcanzar la solución óptima.

Page 96: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal: Motivación

Una petroquímica de la cuenca mediterránea se dedica a producir plástico parabotellas (PET-botella) y fibra textil (PET-fibra) a partir de PTA (ácido tereftálticopuro) y de EtG (etilen-Glicol). Las cantidades de cada producto (en Tm.) que sonnecesarias para producir una tonelada de cada uno de estos derivados vienendadas por:

PET-botella PET-fibraPTA 0.966 0.912EtG 0.365 0.344

La venta en el mercado de plástico da un beneficio de 60 € por Tm., mientras que laventa de fibra textil da un beneficio de 50 €/Tm.

Teniendo en cuenta que la petrolera dispone de 260.000 Tm. de PTA y 150.000 Tm.de EtG, ¿cuáles serían sus niveles óptimos de producción de fibra textil y deplástico?

EJEMPLO: La producción de PET

30

Page 97: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal: Motivación

Si definimos las variables: x1 = Tm fabricadas de plástico para botellasx2 = Tm fabricadas de fibra textil

la respuesta a la pregunta anterior vendría dada por la solución del siguiente PL:

1 21

1 22

1 2

1 2

60 50* 269151.139

. : 0.966 0.912 260000* 0

0.365 0.344 150000* 16149068.32

, 0

Max x xx

s a x xx

x xz

x x

+=

+ ≤→ =

+ ≤=

EJEMPLO: La producción de PET

31

Page 98: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

La industria petroquímica en la cuenca Mediterránea está controlada por unagran compañía que necesita PTA y EtG para su proceso de producción. Elgerente quiere persuadir a la pequeña petroquímica para que abandone suproceso productivo y le venda directamente sus existencias.

Al gerente se le plantea el problema de determinar el precio de compra quedebe ofrecer a la pequeña de manera que no sólo esa compra le salga lo másbarata posible, sino que a la pequeña le interese vender: lo que recibe por dejarde producir una unidad de cada uno de sus productos no sea inferior a lo queobtendría con su venta directa en el mercado.

¿Qué problema debe resolver el gerente para determinar dichos precios?

Dualidad en programación lineal: Motivación

EJEMPLO: La producción de PET

32

Page 99: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal: Motivación

Si definimos las variables: y1 = precio de PTA (en € por Tm)y2 = precio de EtG (en € por Tm)

1 21

1 22

1 2

1 2

260000 150000* 62.111801

. : 0.966 0.365 60* 0

0.912 0.344 50* 16149068.32

, 0

Min y yy

s a y yy

y yz

y y

+=

+ ≥→ =

+ ≥=

EJEMPLO: La producción de PET

33

Page 100: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal: Motivación

1 21

1 22

1 2

1 2

260000 150000* 62.111801

. : 0.966 0.365 60* 0

0.912 0.344 50* 16149068.32

, 0

Min y yy

s a y yy

y yz

y y

+=

+ ≥→ =

+ ≥=

EJEMPLO: La producción de PET

33

1 21

1 22

1 2

1 2

60 50* 269151.139

. : 0.966 0.912 260000* 0

0.365 0.344 150000* 16149068.32

, 0

Max x xx

s a x xx

x xz

x x

+=

+ ≤→ =

+ ≤=

Page 101: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

101

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

1. Por cada restricción del PP, se define una variable del PD y por cada variabledel PP se define una restricción del PD.

2. Los coeficientes de la función objetivo del PP pasan a ser los términosindependientes de las restricciones del PD.

3. Los términos independientes del PP pasan a jugar el papel de coeficientes dela función objetivo del PD.

4. La matriz de restricciones para el dual es la traspuesta del primal.

La dualidad consiste en asociar a un problema lineal, que denominamosproblema primal (PP), un problema lineal auxiliar, que denominamosproblema dual (PD), que se define directa y sistemáticamente a partir delproblema primal.

El problema dual viene a ser el problema “traspuesto” del problema primal:

¿Qué es la dualidad?

Page 102: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

102

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Las reglas para construir el problema dual se resumen en la siguiente tabla:

PROBLEMA PRIMAL → PROBLEMA DUAL

Objetivo Minimizar ↔ Maximizar Objetivo

Restricción ≥ = ≤

↔ ≥0

libre ≤0

Variable

Variable ≥0

libre ≤0

≤ = ≥

Restricción

PROBLEMA DUAL ← PROBLEMA PRIMAL

Page 103: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

103

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

052

15210

2

21

21

21

21

21

≥∈=+≤−≥+

+

x,Rxxxxxxx:a.sxxmaxEJEMPLO:

Ry,y,yyyyyyy:a.syyymin

∈≥≤≥+−=++

++

321

321

321

321

001222

51510

Problema dual

Problema primal

Page 104: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

104

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

La dualidad tiene gran importancia por las siguientes razones:

• Por las posibilidades que abre en el desarrollo teórico de la programación lineal.

• La dualidad es fundamental para el análisis de sensibilidad.

• Permite en ciertas ocasiones ventajas computacionales para la obtención desoluciones óptimas.

• Es útil para el desarrollo de métodos de optimización matemática.

• Origina interesantes interpretaciones económicas e información relevante para latoma de decisiones.

Page 105: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

105Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

EJEMPLO:

1 2 3

1 3

2 3

1 2 3

min 4 3 8. : 2

2 5

, , 0

x x xs a x x

x x

x x x

+ + + ≥ + ≥ ≥

TEOREMAEl problema dual del problema dual coincide con el problema primal.

Page 106: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

106Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

EJEMPLO:

1 2 3

1 3

2 3

1 2 3

min 4 3 8. : 2

2 5

, , 0

x x xs a x x

x x

x x x

+ + + ≥ + ≥ ≥

TEOREMAEl problema dual del problema dual coincide con el problema primal.

→ y1

→ y2

Page 107: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

107Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

EJEMPLO:

1 2 3

1 3

2 3

1 2 3

min 4 3 8. : 2

2 5

, , 0

x x xs a x x

x x

x x x

+ + + ≥ + ≥ ≥

1 2

1

2

1 2

1 2

max 2 5. :

2

,

y ys a y

yy y

y y

+ +

TEOREMAEl problema dual del problema dual coincide con el problema primal.

Page 108: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

108Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

EJEMPLO:

1 2 3

1 3

2 3

1 2 3

min 4 3 8. : 2

2 5

, , 0

x x xs a x x

x x

x x x

+ + + ≥ + ≥ ≥

1 2

1

2

1 2

1 2

max 2 5. : 4

32 8

,

y ys a y

yy y

y y

+ +

TEOREMAEl problema dual del problema dual coincide con el problema primal.

Page 109: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

109Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

EJEMPLO:

1 2 3

1 3

2 3

1 2 3

min 4 3 8. : 2

2 5

, , 0

x x xs a x x

x x

x x x

+ + + ≥ + ≥ ≥

1 2

1

2

1 2

1 2

max 2 5. : 4

32 8

,

y ys a y

yy y

y y

+ +

TEOREMAEl problema dual del problema dual coincide con el problema primal.

???

??

Page 110: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

110

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Las reglas para construir el problema dual se resumen en la siguiente tabla:

PROBLEMA PRIMAL → PROBLEMA DUAL

Objetivo Minimizar ↔ Maximizar Objetivo

Restricción ≥ = ≤

↔ ≥0

libre ≤0

Variable

Variable ≥0

libre ≤0

≤ = ≥

Restricción

PROBLEMA DUAL ← PROBLEMA PRIMAL

Page 111: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

111

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Las reglas para construir el problema dual se resumen en la siguiente tabla:

PROBLEMA PRIMAL → PROBLEMA DUAL

Objetivo Minimizar ↔ Maximizar Objetivo

Restricción ≥ = ≤

↔ ≥0

libre ≤0

Variable

Variable ≥0

libre ≤0

≤ = ≥

Restricción

PROBLEMA DUAL ← PROBLEMA PRIMAL

Page 112: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

112

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Las reglas para construir el problema dual se resumen en la siguiente tabla:

PROBLEMA PRIMAL → PROBLEMA DUAL

Objetivo Minimizar ↔ Maximizar Objetivo

Restricción ≥ = ≤

↔ ≥0

libre ≤0

Variable

Variable ≥0

libre ≤0

≤ = ≥

Restricción

PROBLEMA DUAL ← PROBLEMA PRIMAL

Page 113: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

113Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

EJEMPLO:

1 2 3

1 3

2 3

1 2 3

min 4 3 8. : 2

2 5

, , 0

x x xs a x x

x x

x x x

+ + + ≥ + ≥ ≥

1 2

1

2

1 2

1 2

max 2 5. : 4

32 8

0 ,

y ys a y

yy y

y y

+ + ≥

TEOREMAEl problema dual del problema dual coincide con el problema primal.

Page 114: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

114Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

EJEMPLO:

1 2 3

1 3

2 3

1 2 3

min 4 3 8. : 2

2 5

, , 0

x x xs a x x

x x

x x x

+ + + ≥ + ≥ ≥

1 2

1

2

1 2

1 2

max 2 5. : 4

32 8

0 , 0

y ys a y

yy y

y y

+ + ≥ ≥

TEOREMAEl problema dual del problema dual coincide con el problema primal.

Page 115: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

PROBLEMA PRIMAL → PROBLEMA DUAL

Objetivo Minimizar ↔ Maximizar Objetivo

Restricción ≥ = ≤

↔ ≥0

libre ≤0

Variable

Variable ≥0

libre ≤0

≤ = ≥

Restricción

PROBLEMA DUAL ← PROBLEMA PRIMAL

115

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Las reglas para construir el problema dual se resumen en la siguiente tabla:

Page 116: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

116Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

EJEMPLO:

1 2 3

1 3

2 3

1 2 3

min 4 3 8. : 2

2 5

, , 0

x x xs a x x

x x

x x x

+ + + ≥ + ≥ ≥

1 2

1

2

1 2

1 2

max 2 5. : 4

32 8

0, 0

y ys a y

yy y

y y

+ ≤ ≤ + ≤ ≥ ≥

TEOREMAEl problema dual del problema dual coincide con el problema primal.

Page 117: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

117Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

EJEMPLO:

1 2 3

1 3

2 3

1 2 3

min 4 3 8. : 2

2 5

, , 0

x x xs a x x

x x

x x x

+ + + ≥ + ≥ ≥

1 2

1

2

1 2

1 2

max 2 5. : 4

32 8

, 0

y ys a y

yy y

y y

+ ≤ ≤ + ≤ ≥

TEOREMAEl problema dual del problema dual coincide con el problema primal.

Page 118: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

118Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

EJEMPLO:

1 2

1

2

1 2

1 2

max 2 5. : 4

32 8

, 0

y ys a y

yy y

y y

+ ≤ ≤ + ≤ ≥

TEOREMAEl problema dual del problema dual coincide con el problema primal.

Page 119: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

119

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Las reglas para construir el problema dual se resumen en la siguiente tabla:

PROBLEMA PRIMAL → PROBLEMA DUAL

Objetivo Minimizar ↔ Maximizar Objetivo

Restricción ≥ = ≤

↔ ≥0

libre ≤0

Variable

Variable ≥0

libre ≤0

≤ = ≥

Restricción

PROBLEMA DUAL ← PROBLEMA PRIMAL

Page 120: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

120Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

EJEMPLO:

1 2 3

1 3

2 3

1 2 3

min 4 3 8. : 2

2 5

, , 0

x x xs a x x

x x

x x x

+ + + ≥ + ≥ ≥

1 2

1

2

1 2

1 2

max 2 5. : 4

32 8

, 0

y ys a y

yy y

y y

+ ≤ ≤ + ≤ ≥

TEOREMAEl problema dual del problema dual coincide con el problema primal.

Page 121: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

121Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Relaciones entre los problemas primal y dual:

Dualidad en programación lineal

TEOREMA DE LA DUALIDAD DÉBILDado un problema lineal y su dual, sea x una solución factible del problemaprimal e y una solución factible del problema dual, entonces se verifica losiguiente:

Si el objetivo del problema primal es maximizar entonces se tiene que:

yTb ≥ cTx.

Si el objetivo del problema primal es minimizar entonces se tiene que:

yTb ≤ cTx.

Page 122: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche122

Dualidad en programación lineal

Probl. minimizarProbl. maximizar

Valor f.o.

Solución x Solución y

f.o.(x) f.o.(y)

f.o.(x) ≤ f.o.(y)

Page 123: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

123Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

0729

23

321

21

321

321

≥≤+≤++

++

x,x,xxx

xxx:a.sxxxmax

EJEMPLO:

Dualidad en programación lineal

01223

79

21

1

21

21

21

≥≥≥+≥+

+

y,yy

yyyy:a.syymin

Page 124: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

124Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

0729

23

321

21

321

321

≥≤+≤++

++

x,x,xxx

xxx:a.sxxxmax

EJEMPLO:

Dualidad en programación lineal

01223

79

21

1

21

21

21

≥≥≥+≥+

+

y,yy

yyyy:a.syymin

xT = (5, 1, 3)

f.o. = cTx = 3×5 + 2×1 + 1×3 = 20

Page 125: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

125Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

0729

23

321

21

321

321

≥≤+≤++

++

x,x,xxx

xxx:a.sxxxmax

EJEMPLO:

Dualidad en programación lineal

01223

79

21

1

21

21

21

≥≥≥+≥+

+

y,yy

yyyy:a.syymin

yT = (1, 2)

f.o. = yTb = 9×1 + 7×2 = 23

Page 126: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

126Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

0729

23

321

21

321

321

≥≤+≤++

++

x,x,xxx

xxx:a.sxxxmax

EJEMPLO:

Dualidad en programación lineal

01223

79

21

1

21

21

21

≥≥≥+≥+

+

y,yy

yyyy:a.syymin

xT = (5, 1, 3) yT = (1, 2)

f.o. = cTx = 3×5 + 2×1 + 1×3 = 20 f.o. = yTb = 9×1 + 7×2 = 23≤

Page 127: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

127Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Dualidad en programación lineal

TEOREMA DE LA DUALIDAD FUERTESean un problema lineal y su dual. Entonces se satisface lo siguiente:

• Si uno de los dos problemas tiene valor óptimo no acotado, entonces el otro esinfactible.

• El problema primal tiene valor óptimo finito si, y sólo si, el problema dual tienevalor óptimo finito. Además, ambos valores óptimos coinciden.

Page 128: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche128

Dualidad en programación lineal

Probl. minimizarProbl. maximizar

Valor f.o.

No acotado

Si uno de los dos problemas tiene valor óptimo no acotado, entonces el otro es infactible

Page 129: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche129

Dualidad en programación lineal

Probl. minimizarProbl. maximizar

Valor f.o.

No acotado

Si uno de los dos problemas tiene valor óptimo no acotado, entonces el otro es infactible

Si ∃ una solución

Page 130: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche130

Dualidad en programación lineal

Probl. minimizarProbl. maximizar

Valor f.o.

No acotado

Si uno de los dos problemas tiene valor óptimo no acotado, entonces el otro es infactible

Imposible !!!

Page 131: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche131

Dualidad en programación lineal

Probl. minimizarProbl. maximizar

Si uno de los dos problemas tiene valor óptimo no acotado, entonces el otro es infactible

Valor f.o.

No acotado Infactible

Page 132: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Unidad - Sección - Departamento Nombre del Departamento - Universidad Miguel

Hernández de Elche132

Dualidad en programación lineal

z*

Probl. minimizarProbl. maximizar

Valor f.o.

El problema primal tiene valor óptimo finito si, y sólo si, el problema dual tiene valor óptimo finito. Además, ambos valores óptimos coinciden.

Page 133: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

133Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Dualidad en programación lineal

TEOREMA DE LA DUALIDAD FUERTESean un problema lineal y su dual. Entonces se satisface lo siguiente:

• Si uno de los dos problemas tiene valor óptimo no acotado, entonces el otro esinfactible.

• El problema primal tiene valor óptimo finito si, y sólo si, el problema dual tienevalor óptimo finito. Además, ambos valores óptimos coinciden.

COROLARIOSean un problema lineal y su dual. Si [BD] es una descomposición de la matriz Aque da una solución óptima para el problema primal, entonces se verifica que unasolución óptima para el dual viene dada por

1*T TBy c B−=

Page 134: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

134Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Observación: Si disponemos de una solución (básica) óptima nodegenerada, la matriz B-1 se puede obtener calculando la inversa de lascolumnas asociadas a las variables básicas.

Dualidad en programación lineal

1*T TBy c B−=

Page 135: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

135Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

Dado el siguiente problema con solución óptima 110 70* (0, , ) :3 3

Tx =

1 2 3

1 2 3

1 2 3

1 2 3

max 2. : 3 60

2 10, , 0

x x xs a x x x

x x xx x x

+ + + + ≤ − + ≤ ≥

Calcula la solución óptima del problema dual

Page 136: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

136Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

110 70* (0, , )3 3

Tx =

Page 137: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

137Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1 1 2 3110 70 18060 3 60 3 0 60 0

3 3 3h x x x= − − − = − × − − = − =

110 70* (0, , )3 3

Tx =

Page 138: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

138Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

2 1 2 3110 70 3010 2 10 0 2 10 0

3 3 3h x x x= − + − = − + − = − =

110 70* (0, , )3 3

Tx =

1 1 2 3110 70 18060 3 60 3 0 60 0

3 3 3h x x x= − − − = − × − − = − =

Page 139: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

139Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

* *1 2

110 70* (0, , ) 03 3

Tx h h= → = =

2 1 2 3110 70 3010 2 10 0 2 10 0

3 3 3h x x x= − + − = − + − = − =

1 1 2 3110 70 18060 3 60 3 0 60 0

3 3 3h x x x= − − − = − × − − = − =

Page 140: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

140Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

* *1 2

110 70* (0, , ) 03 3

Tx h h= → = =

Base = {x2, x3}

Page 141: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

141Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

* *1 2

110 70* (0, , ) 03 3

Tx h h= → = =

1*T TBy c B−=

Base = {x2, x3}

Page 142: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

142Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

* *1 2

110 70* (0, , ) 03 3

Tx h h= → = =

1*T TBy c B−=

Base = {x2, x3}

1 11 2

B = −

(1,1)TBc =

Page 143: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

143Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

* *1 2

110 70* (0, , ) 03 3

Tx h h= → = =

1*T TBy c B−=

Base = {x2, x3}

2 13 31

1 13 3

1 11 2

B B−

− = → = −

(1,1)TBc =

Page 144: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

144Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

( ) ( ) ( )2 1

3 3* *1 2 1 1

3 3* , 1 1 1 0Ty y y

− = = =

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

2 13 31

1 13 3

1 11 2

B B−

− = → = −

* *1 2

110 70* (0, , ) 03 3

Tx h h= → = =

(1,1)TBc =

1*T TBy c B−=

Base = {x2, x3}

Page 145: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

145Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

( ) ( ) ( )2 1

3 3* *1 2 1 1

3 3* , 1 1 1 0Ty y y

− = = =

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1*T TBy c B−=

2 13 31

1 13 3

1 11 2

B B−

− = → = −

* *1 2

110 70* (0, , ) 03 3

Tx h h= → = =

(1,1)TBc =

Base = {x2, x3}

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

Page 146: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

146Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

z* = 60

z* = 60( ) ( ) ( )

2 13 3* *

1 2 1 13 3

* , 1 1 1 0Ty y y−

= = =

2 13 31

1 13 3

1 11 2

B B−

− = → = −

* *1 2

110 70* (0, , ) 03 3

Tx h h= → = =

(1,1)TBc =

Base = {x2, x3}

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

Page 147: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

147Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

Dado el siguiente problema con solución óptima * (1,0)Ty =

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

Calcula la solución óptima del problema dual

Page 148: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

148Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

* (1,0)Ty =

Page 149: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

149Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

* (1,0)Ty =

Page 150: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

150Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

* (1,0)Ty =1 2

1 2 3

* 1, * 0* 1, * * 0D D D

y ye e e

= =

= = =

Page 151: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

151Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

1 2

1 2 3

* 1, * 0* 1, * * 0D D D

y ye e e

= =

= = =

Base = ?

Page 152: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

152Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

1 2

1 2 3

* 1, * 0* 1, * * 0D D D

y ye e e

= =

= = =

3 restricciones → 3 variables básicas

Base = ?

Page 153: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

153Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

1 2

1 2 3

* 1, * 0* 1, * * 0D D D

y ye e e

= =

= = =

3 restricciones → 3 variables básicas

Base = ?

Base = {y1 , , ? }𝑒𝑒1𝐷𝐷

Page 154: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

154Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

1 2

1 2 3

* 1, * 0* 1, * * 0D D D

y ye e e

= =

= = =

3 restricciones → 3 variables básicas

Base = ?

Base = {y1 , , ? }𝑒𝑒1𝐷𝐷

Solucióndegenerada

Page 155: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

155Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Dualidad en programación lineal

• Si en el óptimo una variable de holgura (o exceso) en uno de los problemas es nonula, la correspondiente variable (asociada a través de la restricción) es nula enel óptimo del otro problema.

• Por el contrario, si una variable es no nula en el óptimo, la correspondientevariable de holgura (o exceso) en el óptimo del otro problema es nula.

TEOREMA DE LAS HOLGURAS COMPLEMENTARIASSean los problemas primal y dual que tienen solución óptima, entonces se verificaque:

Page 156: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

156Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Dualidad en programación lineal

• Si en el óptimo una variable de holgura (o exceso) en uno de los problemas es nonula, la correspondiente variable (asociada a través de la restricción) es nula enel óptimo del otro problema.

• Por el contrario, si una variable es no nula en el óptimo, la correspondientevariable de holgura (o exceso) en el óptimo del otro problema es nula.

TEOREMA DE LAS HOLGURAS COMPLEMENTARIASSean los problemas primal y dual que tienen solución óptima, entonces se verificaque:

NOTA: Para utilizar este teorema no hace falta que los problemas estén en formato estándar. Sólo que las restricciones sean de igualdad!!!

Page 157: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

157Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Dualidad en programación lineal

1

n

x

x

1 1

m m

h / e

h / e

variables

restricciones

PP

TEOREMA DE LAS HOLGURAS COMPLEMENTARIAS

Page 158: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

158Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Dualidad en programación lineal

1

n

x

x

1 1

n n

h / e

h / e

1 1

m m

h / e

h / e

1

m

y

y

variables

restricciones

PP PD

TEOREMA DE LAS HOLGURAS COMPLEMENTARIAS

Page 159: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

159Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Dualidad en programación lineal

1

n

x

x

1 1

n n

h / e

h / e

1 1

m m

h / e

h / e

1

m

y

y

variables

restricciones

PP PD

TEOREMA DE LAS HOLGURAS COMPLEMENTARIAS

0

0

0

0

Producto

Page 160: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

160Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Dualidad en programación lineal

EJEMPLO:

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

Page 161: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

161Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1

2

00

hh

==

variables

restricciones

PP

1

2

3

0110

3703

x

x

x

=

=

=

Page 162: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

162Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1 1

2 2

0 10 0

h yh y

= == =

variables

restricciones

PP PD

1 1

2 2

3 3

0 1110 0

370 03

x e

x e

x e

= =

= =

= =

Page 163: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

163Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥ 1 1

2 2

3 3

0 1110 0

370 03

x e

x e

x e

= =

= =

= =

1 1

2 2

0 10 0

h yh y

= == =

variables

restricciones

PP PD

0

0

0

00

×

×

×

××

Page 164: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

164Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

Dado el siguiente problema con solución óptima 110 70* (0, , ) :3 3

Tx =

1 2 3

1 2 3

1 2 3

1 2 3

max 2. : 3 60

2 10, , 0

x x xs a x x x

x x xx x x

+ + + + ≤ − + ≤ ≥

Calcula la solución óptima del problema dual (incluidas las holguras y/o variables de exceso) aplicando el Teorema de las holguras complementarias.

Page 165: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

165Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1

11032

7033

1

2

* 0

*

*

* 0

* 0

x

x

x

h

h

=

=

=

=

=

Page 166: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

166Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1

11032

7033

1

2

* 0

*

*

* 0

* 0

x

x

x

h

h

=

=

=

=

=

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

Page 167: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

1 1

11032 2

7033 3

1 1

2 2

* 0 * 0

* * 0

* * 0

* 0 * 0

* 0 * 0

D

D

D

x e

x e

x e

h y

h y

= =

= =

= =

= =

= =

167Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

THC

Page 168: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

1 1

11032 2

7033 3

1 1

2 2

* 0 * 0

* * 0 0

* * 0 0

* 0 * 0

* 0 * 0

D

D

D

x e

x e

x e

h y

h y

= =

= =

= =

= =

= =

168Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

THC

Page 169: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

1 1

11032 2

7033 3

1 1

2 2

* 0 * ? 0

* * 0 0

* * 0 0

* 0 * ? 0

* 0 * ? 0

D

D

D

x e

x e

x e

h y

h y

= =

= =

= =

= =

= =

169Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

THC

Page 170: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

170Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

THC

00

1 1

11032 2

7033 3

1 1

2 2

* 0 * ? 0

* * 0 0

* * 0 0

* 0 * ? 0

* 0 * ? 0

D

D

D

x e

x e

x e

h y

h y

= =

= =

= =

= =

= =

Page 171: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

171Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

THC

1 2 1

1 2 2

* * 1 * 1* 2 * 1 * 0

y y yy y y

− = =→+ = =

1 1 2 1* 3 * * 2 * 1D De y y e= + − → =

00

1 1

11032 2

7033 3

1 1

2 2

* 0 * ? 0

* * 0 0

* * 0 0

* 0 * ? 0

* 0 * ? 0

D

D

D

x e

x e

x e

h y

h y

= =

= =

= =

= =

= =

Page 172: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

172Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

THC

1 2

1 2 3

* 1, * 0* 1, * * 0D D D

y ye e e

= =

= = =

1 1

11032 2

7033 3

1 1

2 2

* 0 * ? 0

* * 0 0

* * 0 0

* 0 * ? 0

* 0 * ? 0

D

D

D

x e

x e

x e

h y

h y

= =

= =

= =

= =

= =

1 2 1

1 2 2

* * 1 * 1* 2 * 1 * 0

y y yy y y

− = =→+ = =

1 1 2 1* 3 * * 2 * 1D De y y e= + − → =

00

Page 173: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

173Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

Dado el siguiente problema con solución óptima * (1,0)Ty =

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

Calcula la solución óptima del problema dual (incluidas las holguras y/o variables de exceso) aplicando el Teorema de las holguras complementarias.

Page 174: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

174Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

* (1,0)Ty =

Page 175: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

175Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

* (1,0)Ty =

Page 176: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

176Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2

1 2

1 2

1 2

1 2

min 60 10. : 3 2

12 1

, 0

y ys a y y

y yy yy y

+ + ≥ − ≥ + ≥

* (1,0)Ty =1

2

1

2

3

* 1* 0* 1* 0* 0

D

D

D

yyeee

==

=

=

=

Page 177: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

177Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1

2

1

2

3

* 1* 0* 1* 0* 0

D

D

D

yyeee

==

=

=

=

Page 178: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

178Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1

2

1

2

3

* 1* 0* 1* 0* 0

D

D

D

yyeee

==

=

=

=

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1

2

1

2

3

*****

hhxxx

=====

00

0

00

Page 179: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

179Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1

2

1

2

3

* 1* 0* 1* 0* 0

D

D

D

yyeee

==

=

=

=

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1

2

1

2

3

*****

hhxxx

=====

00

0

00

0

0

Page 180: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

180Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1

2

1

2

3

* 1* 0* 1* 0* 0

D

D

D

yyeee

==

=

=

=

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1

2

1

2

3

*****

hhxxx

=====

00

0

00

0

0?

??

Page 181: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

181Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1

2

1

2

3

* 1* 0* 1* 0* 0

D

D

D

yyeee

==

=

=

=

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1

2

1

2

3

*****

hhxxx

=====

00

0

00

0

0?

??

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

0 00

Page 182: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

182Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1

2

1

2

3

* 1* 0* 1* 0* 0

D

D

D

yyeee

==

=

=

=

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1

2

1

2

3

*****

hhxxx

=====

00

0

00

0

0?

??

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

0 00

2 ecuaciones y 3 incógnitas → Infinitas soluciones

Page 183: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

183Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJERCICIO:

Dualidad en programación lineal

1 2

1 2 1

1 2 2

1 2 3

1 2 1 2 3

min 60 10. : 3 2

12 1

, , , , 0

y ys a y y e

y y ey y ey y e e e

+ + − = − − = + − =

1

2

1

2

3

* 1* 0* 1* 0* 0

D

D

D

yyeee

==

=

=

=

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

1

2

1

2

3

*****

hhxxx

=====

00

0

00

0

0?

??

1 2 3

1 2 3 1

1 2 3 2

1 2 3 1 2

max 2. : 3 60

2 10, , , , 0

x x xs a x x x h

x x x hx x x h h

+ + + + + = − + + = ≥

0 00

2 ecuaciones y 3 incógnitas → Infinitas soluciones

Solucióndegenerada

Page 184: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

184

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

SIGNIFICADO DE LAS VARIABLES DUALES

Cuando la solución óptima de un problema es no degenerada, el valor de la variabledual óptima yi* coincide con la variación experimentada por el valor del problemacuando el coeficiente bi se incrementa en una unidad.

1 2

1 2

1 2

1 2

1 2

max 3 5. : 3 2 3

2 56 9

, 0

x xs a x x

x xx x

x x

+− + ≤− + ≤

+ ≤≥

1Variación de * 19.8 18 1.8 *z y= − = =

1 2 2* ( , , ) (1, 3, 4) (0, 0, 0)* 18Bx x x h

z= = >

=

1* 1.8y =En el dual:

1 2

1 2

1 2

1 2

1 2

max 3 5. : 3 2 4

2 56 9

, 0

x xs a x x

x xx x

x x

+− + ≤− + ≤

+ ≤≥

* 19.8z =

Page 185: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

185

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

SIGNIFICADO DE LAS VARIABLES DUALES

En general, y dentro de ciertos límites de variación para bi , podemos afirmar quecuando la solución óptima de un problema es no degenerada, la variaciónexperimentada por el valor del problema cuando el coeficiente bi se incrementa enla cantidad ∆bi es yi*× ∆bi.

Variación de * 30.6 18 12.6z = − =1 2

1 2

1 2

1 2

1 2

max 3 5. : 3 2 10

2 56 9

, 0

x xs a x x

x xx x

x x

+− + ≤− + ≤

+ ≤≥

* 30.6z =

Variación de * 13.5 18 4.5z = − = −1 2

1 2

1 2

1 2

1 2

max 3 5. : 3 2 0.5

2 56 9

, 0

x xs a x x

x xx x

x x

+− + ≤− + ≤

+ ≤≥

* 13.5z =

* 18 1.8(10 3) 18 1.8 718 12.6 30.6

z = + − = + × =+ =

* 18 1.8(0.5 3) 18 1.8 ( 2.5)18 4.5 13.5

z = + − = + × − =− =

Page 186: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

186

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

INTERPRETACIÓN DE LAS VARIABLES DUALES

Dada la información que proporcionan las variables duales óptimas acerca de lavariación experimentada en el valor óptimo de un problema cuando variamos eltérmino independiente de la restricción asociada, dichas variables suelen recibir elnombre de precios sombra o precios duales o costes de oportunidad.

Las variables duales nos permiten determinar bien el precio que estamosdispuestos a pagar por aumentar el conjunto factible variando en una unidad elcorrespondiente término independiente, o bien el precio que estamos dispuestosa recibir por disminuir el conjunto factible variando en una unidad elcorrespondiente término independiente.

Page 187: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal

En ausencia de degeneración se verifica lo siguiente:• Restricción tipo (≤): Si aumentamos de bi a bi+1, el conjunto factible es mayor

o igual que antes → El valor de la f.o. mejorará o permanecerá igual.El precio (dual) Pi que estamos dispuestos a pagar por dicha mejora es mayor oigual que cero. Por tanto:

Problema de maximización: Pi := yi*Problema de minimización: Pi := −yi*

• Restricción tipo (≥): Si aumentamos de bi a bi+1, el conjunto factible es menoro igual que antes → El valor de la f.o. empeorará o permanecerá igual.El precio (dual) Pi que estamos dispuestos a pagar por empeorar es menor oigual que cero. Por tanto:

Problema de maximización: Pi := yi*Problema de minimización: Pi := −yi*

187

Page 188: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal

¿Cuánto aumentaría el beneficio de la pequeña empresa petroquímica si seincrementaran sus recursos de PTA y EtG en una unidad, respectivamente?

EJEMPLO: La producción de PET (cont.)

Le interesaría comprar 1 Tm adicional de PTA si su coste fuera no superior a62.11 €, mientras que no le interesaría comprar más EtG.

1 2

1 21

1 21

1 2

EtG: 60 50* 16149068.32

. : 0.966 0.912 260000* 16149068.32

0.365 0.344 150001* * 0

, 0

Max x xz

s a x xz

x xz z

x x

+=

+ ≤→ =

+ ≤− =

1 2

1 21

1 21

1 2

PTA: 60 50* 16149068.32

. : 0.966 0.912 260001* 16149130.43

0.365 0.344 150000* * 62.11

, 0

Max x xz

s a x xz

x xz z

x x

+=

+ ≤→ =

+ ≤− =

188

Page 189: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal

¿Qué precio de compra de PTA y EtG debe ofrecer la compañía grande a lapequeña de manera que no sólo esa compra le salga lo más barata posible, sinoque a la pequeña le interese vender?

EJEMPLO: La producción de PET (cont.)

Se cumple que el precio al que venderían un recurso (significado de lavariable correspondiente en el problema dual) coincide con el precio decompra de dicho recurso (lo analizado en la transparencia anterior einterpretación habitual de variable dual como coste de oportunidad).

189

1 21

1 22

1 2

1 2

260000 150000* 62.111801

. : 0.966 0.365 60* 0

0.912 0.344 50* 16149068.32

, 0

Min y yy

s a y yy

y yz

y y

+=

+ ≥→ =

+ ≥=

Debe ofrecer un precio de 62.11 € por cada Tm de PTA y 0 € por cada Tm deEtG.

Page 190: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal

EJEMPLO:

190

Una empresa manufactura dos productos A y B en dos factorías F1 y F2. El costede fabricación, así como el tiempo necesario para obtener un kilogramo de cadaproducto aparecen en la siguiente tabla (coste en euros, tiempo en horas):

A cambio de cierto canon, la empresa debe proporcionar a cierto clientesemanalmente al menos 1500 kg de A y 2000 kg de B. Para ello, dispone de 450horas de trabajo semanales en F1 y de 500 horas en F2. ¿Cuál es la planificaciónde la producción que minimiza el coste de producción ?

F1 F2 A B A B

Coste unitario 4.1 4 4.5 5.2 Tiempo de producción 0. 2 0.24 0.3 0.25

Page 191: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal

Si definimos las variables:x1A = Kg fabricados en F1 de A x2A = Kg fabricados en F2 de Ax1B = Kg fabricados en F1 de B x2B = Kg fabricados en F2 de B

EJEMPLO:

191

1 1 2 2

1 2

1 2

1 1

2 2

1 1 2 2

min 4.1 4 4.5 5.2. : 1500

20000.2 0.24 4500.3 0.25 500

, , , 0

A B A B

A A

B B

A B

A B

A B A B

x x x xs a x x

x xx xx x

x x x x

+ + ++ ≥+ ≥

+ ≤+ ≤

1 1

1 2

2 3

2 4

* 0 * 0* 1875 * 0* 1500 * 0* 125 * 18.75

* 14900

A

B

A

B

x ex ex hx hz

= == == == =

=

Page 192: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal

EJEMPLO:

192

• ¿Merecería la pena aumentar las horas de trabajo en alguna factoría?

• El cliente necesita semanalmente 10 Kg adicionales de B. ¿Qué acuerdodebería proponer a la empresa para que esta aceptara fabricarlos?

Page 193: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal

EJEMPLO:

193

1 1 2 2

1 2

1 2

1 1

2 2

1 1 2 2

min 4.1 4 4.5 5.2. : 1500

20000.2 0.24 4500.3 0.25 500

, , , 0

A B A B

A A

B B

A B

A B

A B A B

x x x xs a x x

x xx xx x

x x x x

+ + ++ ≥+ ≥

+ ≤+ ≤

Solución nodegenerada

nº restricciones = 4ll

nº variables positivas =4

1 1

1 2

2 3

2 4

* 0 * 0* 1875 * 0* 1500 * 0* 125 * 18.75

* 14900

A

B

A

B

x ex ex hx hz

= == == == =

=

Pueden interpretarse las variables duales

Page 194: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal

EJEMPLO:

194

1 1 2 2

1 2

1 2

1 1

2 2

1 1 2 2

min 4.1 4 4.5 5.2. : 1500

20000.2 0.24 4500.3 0.25 500

, , , 0

A B A B

A A

B B

A B

A B

A B A B

x x x xs a x x

x xx xx x

x x x x

+ + ++ ≥+ ≥

+ ≤+ ≤

1

2

3

4

* 4.5* 5.2* 5* 0

yyyy

=== −=

• ¿Merecería la pena aumentar las horas de trabajo en alguna factoría?

F1 aumenta 1 hora * 14900 ( 5) 1 14895

F2 aumenta 1 hora * 14900 0 1 14900

z

z

→ = + − × =

→ = + × =

Solo tendría sentido aumentarlas en la Factoría 1

F1 →F2 →

Page 195: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Dualidad en programación lineal

EJEMPLO:

195

1 1 2 2

1 2

1 2

1 1

2 2

1 1 2 2

min 4.1 4 4.5 5.2. : 1500

20000.2 0.24 4500.3 0.25 500

, , , 0

A B A B

A A

B B

A B

A B

A B A B

x x x xs a x x

x xx xx x

x x x x

+ + ++ ≥+ ≥

+ ≤+ ≤

1

2

3

4

* 4.5* 5.2* 5* 0

yyyy

=== −=

• El cliente necesita semanalmente 10 Kg adicionales de B. ¿Qué acuerdodebería proponer a la empresa para que esta aceptara fabricarlos?

2 10 * 14900 5.2 10 14952b z∆ = → = + × =

Pagarle al menos 52 euros adicionales

B →

Page 196: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

196

Dualidad en programación lineal

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

RANGO DE VALIDEZ DE LA INTERPRETACIÓN DE LAS VARIABLESDUALES

1 2

1 2

1 2

1 2

1 2

max 3 5. : 3 2 3

2 56 9

, 0

x xs a x x

x xx x

x x

+− + ≤− + ≤

+ ≤≥

Variación de * 31.5 18 13.5 (30 3)1.8 48.6z = − = ≠ − =

1 2 2* ( , , ) (1, 3, 4) (0, 0, 0)* 18Bx x x h

z= = >

=

1* 1.8y =

1 2

1 2

1 2

1 2

1 2

max 3 5. : 3 2 30

2 56 9

, 0

x xs a x x

x xx x

x x

+− + ≤− + ≤

+ ≤≥

* 31.5z = ∆z* = yi*× ∆bies válido solo para cierto rango de variación de bi

Page 197: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

197

Análisis de sensibilidad

Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

• ¿Cómo varía la solución óptima del problema si cambian los coeficientes de lafunción objetivo?

• ¿Cómo varía la solución óptima del problema si cambian los valores de lostérminos independientes de las restricciones?

• ¿Cómo varía la solución óptima de un problema si se añaden nuevasrestricciones al problema?

• ¿Cómo varía la solución óptima si se añade una nueva variable?• ¿Cómo varía la solución óptima si cambia la tecnología, es decir, alguno de los

coeficientes de las restricciones?

Con frecuencia, en la vida real, los modelos matemáticos contienen datos oinformaciones que pueden variar, e incluso pueden tener coeficientes que no seconozcan con exactitud. Analizar cómo varía una solución óptima con las posiblesvariaciones en los datos es muy importante, puesto que nos ofrece informaciónacerca de la estabilidad de la solución. Este tipo de análisis recibe el nombre deanálisis de sensibilidad. Algunas de las cuestiones que se pueden plantear son:

Page 198: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

198Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

ANÁLISIS DE SENSIBILIDAD DE LOS COEFICIENTES DE LAFUNCIÓN OBJETIVO

FÓPTIMO x1* = 4, x2* = 0.5

1 2max 3 2= +z x x

0,0

52

32

22:suj.a

23max

21

21

21

21

21

≥≥

≤+

≤−

≤+−

+

xx

xx

xx

xx

xx

Page 199: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

199Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

Análisis de sensibilidad de c1

FÓPTIMO x1* = 4, x2* = 0.5

¿Cuánto puede variar c1 para que la solución x1* = 4, x2* = 0.5

siga siendo óptima?

1 1 22= +z c x x

1 2max 3 2= +z x x

Page 200: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

200Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

ANÁLISIS DE SENSIBILIDAD DE LOS TÉRMINOSINDEPENDIENTES

ÓPTIMO

x1* = 4, x2* = 0.5F

1 23 5 ( 3)+ = Rx x

1 22 3 ( 2)− = Rx x

1 2max 3 2= +z x x

Page 201: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

201Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

¿Cuánto puede variar b3 para que la solución óptima siga

siendo R2 ∩ R3?

ÓPTIMO

x1* = 4, x2* = 0.5F

1 23 5 ( 3)+ = Rx x

1 22 3 ( 2)− = Rx x 1 2 33 ( 3)+ = Rx x b

1 2max 3 2= +z x x

Análisis de sensibilidad de b3

Page 202: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

202Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

EJEMPLO:

Análisis de sensibilidad

Cualquier programa informático de PL incluye la respuesta a estas dospreguntas.

0,0

52

32

22:s.a

23max

21

21

21

21

21

≥≥

≤+

≤−

≤+−

+

xx

xx

xx

xx

xx

Page 203: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Celda objetivo (Máximo)Celda Nombre Valor original Valor final$D$3 f.o. 0 13

Celdas cambiantesCelda Nombre Valor original Valor final Entero$B$2 x1 0 4 Continuar$C$2 x2 0 0,5 Continuar

RestriccionesCelda Nombre Valor de la celda Fórmula Estado Demora$D$5 R1) -7,5 $D$5<=$F$5 No vinculante 9,5$D$6 R2) 3 $D$6<=$F$6 Vinculante 0$D$7 R3) 5 $D$7<=$F$7 Vinculante 0

203Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

z* = 13

x1* = 4x2* = 0.5

h1* = 9.5h2* = h2* = 0

Holgura/exceso

Page 204: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Celdas cambiantesFinal Reducido Objetivo Permisible Permisible

Celda Nombre Valor Coste Coeficiente Aumentar Reducir$B$2 x1 4 0 3 1E+30 2$C$2 x2 0,5 0 2 4 8

Microsoft Excel 14.0 Informe de confidencialidadHoja de cálculo: [Ejemplo.xls]Hoja1Informe creado: 30/04/2013 16:48:04

204Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

• La solución óptima seguirá siendo x1* = 4, x2* = 0.5.

• El valor del problema será 1 1* (3 ) 4 2 0.5 13 4z c c= + ∆ × + × = + ∆ ×

Análisis de sensibilidad para c1:Siempre que c1 aumente cualquier cantidad o disminuya como máximo 2unidades:

Page 205: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

Celdas cambiantesFinal Reducido Objetivo Permisible Permisible

Celda Nombre Valor Coste Coeficiente Aumentar Reducir$B$2 x1 4 0 3 1E+30 2$C$2 x2 0,5 0 2 4 8

Microsoft Excel 14.0 Informe de confidencialidadHoja de cálculo: [Ejemplo.xls]Hoja1Informe creado: 30/04/2013 16:48:04

205Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

• La solución óptima seguirá siendo x1* = 4, x2* = 0.5.

• El valor del problema será 2 2* 3 4 (2 ) 0.5 13 0.5z c c= × + + ∆ × = + ∆ ×

Análisis de sensibilidad para c2:Siempre que c2 aumente como máximo 4 unidades o disminuya comomáximo 8 unidades:

Page 206: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

RestriccionesFinal Sombra Restricción Permisible Permisible

Celda Nombre Valor Precio Lado derecho Aumentar Reducir$D$5 R1) -7,5 0 2 1E+30 9,5$D$6 R2) 3 1 3 2 7,6$D$7 R3) 5 2 5 1E+30 2

206Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

¡¡¡Variable dual!!!

• Variables duales: y1* = 0, y2* = 1 , y3* = 2.

Page 207: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

RestriccionesFinal Sombra Restricción Permisible Permisible

Celda Nombre Valor Precio Lado derecho Aumentar Reducir$D$5 R1) -7,5 0 2 1E+30 9,5$D$6 R2) 3 1 3 2 7,6$D$7 R3) 5 2 5 1E+30 2

207Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

¡¡¡Variable dual!!!

• Variables duales: y1* = 0, y2* = 1 , y3* = 2.

Interpretación en términos de precios sombrasolo si la solución x* es no degenerada

Page 208: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

208Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

Holgura/exceso

h1* = 9.5h2* = 0h3* = 0

Base = {x1, x2 , h1}Celda objetivo (Máximo)

Celda Nombre Valor original Valor final$D$3 f.o. 0 13

Celdas cambiantesCelda Nombre Valor original Valor final Entero$B$2 x1 0 4 Continuar$C$2 x2 0 0,5 Continuar

RestriccionesCelda Nombre Valor de la celda Fórmula Estado Demora$D$5 R1) -7,5 $D$5<=$F$5 No vinculante 9,5$D$6 R2) 3 $D$6<=$F$6 Vinculante 0$D$7 R3) 5 $D$7<=$F$7 Vinculante 0

x1* = 4x2* = 0.5

Page 209: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

209Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

Solución nodegenerada

Pueden interpretarse las variables duales

nº restricciones = 3ll

nº variables positivas = 3

h1* = 9.5h2* = 0h3* = 0

Base = {x1, x2 , h1}

x1* = 4x2* = 0.5

Page 210: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

210Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

RestriccionesFinal Sombra Restricción Permisible Permisible

Celda Nombre Valor Precio Lado derecho Aumentar Reducir$D$5 R1) -7,5 0 2 1E+30 9,5$D$6 R2) 3 1 3 2 7,6$D$7 R3) 5 2 5 1E+30 2

¡¡¡Variable dual!!!

• Variables duales: y1* = 0, y2* = 1 , y3* = 2

• Precios duales o precios sombra:Como el problema es de maximización: P1 = y1* = 0

P2 = y2* = 1P3 = y3* = 2

Si el problema fuera de minimización Pi = −yi*

Page 211: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

211Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

• No pagaríamos nada por aumentar el término b1

• Estaríamos dispuestos a pagar 1 u.m. por aumentar 1 unidad el término b2

• Estaríamos dispuestos a pagar 2 u.m. por aumentar 1 unidad el término b3

RestriccionesFinal Sombra Restricción Permisible Permisible

Celda Nombre Valor Precio Lado derecho Aumentar Reducir$D$5 R1) -7,5 0 2 1E+30 9,5$D$6 R2) 3 1 3 2 7,6$D$7 R3) 5 2 5 1E+30 2

¡¡¡Variable dual!!!

• Variables duales: y1* = 0, y2* = 1 , y3* = 2.

• Precios duales o precios sombra: Como el problema es de maximización:

P1 = y1* = 0, P2 = y2* = 1, P3 = y3* = 2

Page 212: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

212Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

¿Cuál es la importancia del análisis de sensibilidad del coeficiente bi?

En ausencia de degeneración, permite determinar el rango de variación deltérmino bi para el que la variación del valor óptimo del problema viene dado porla expresión:

∆ z* = yi*× ∆ bi.

Podemos obtener el rango de validez para los precios sombra

Page 213: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

RestriccionesFinal Sombra Restricción Permisible Permisible

Celda Nombre Valor Precio Lado derecho Aumentar Reducir$D$5 R1) -7,5 0 2 1E+30 9,5$D$6 R2) 3 1 3 2 7,6$D$7 R3) 5 2 5 1E+30 2

213Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

Análisis de sensibilidad para b1:Siempre que b1 aumente cualquier cantidad o disminuya como máximo 9.5unidades:

• Las variables básicas seguirán siendo {x1*, x2*, h1*}. Por lo tanto:

(PP) h2* = h3* = 0 e y1* = 0, y2* = 1, y3* = 2 (PD)

• El valor del problema será

¡¡¡Variable dual!!!

1 1 1* 13 * 13 0 13z b y b= + ∆ × = + ∆ × =

Page 214: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

RestriccionesFinal Sombra Restricción Permisible Permisible

Celda Nombre Valor Precio Lado derecho Aumentar Reducir$D$5 R1) -7,5 0 2 1E+30 9,5$D$6 R2) 3 1 3 2 7,6$D$7 R3) 5 2 5 1E+30 2

214Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

Análisis de sensibilidad para b2:Siempre que b2 aumente como máximo 2 unidades o disminuya como máximo7.6 unidades:

• Las variables básicas seguirán siendo {x1*, x2*, h1*}. Por lo tanto:

(PP) h2* = h3* = 0 e y1* = 0, y2* = 1, y3* = 2 (PD)

• El valor del problema será

¡¡¡Variable dual!!!

2 2 2* 13 * 13 1z b y b= + ∆ × = + ∆ ×

Page 215: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

RestriccionesFinal Sombra Restricción Permisible Permisible

Celda Nombre Valor Precio Lado derecho Aumentar Reducir$D$5 R1) -7,5 0 2 1E+30 9,5$D$6 R2) 3 1 3 2 7,6$D$7 R3) 5 2 5 1E+30 2

215Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

Análisis de sensibilidad para b3:Siempre que b3 aumente cualquier cantidad o disminuya como máximo 2unidades:

• Las variables básicas seguirán siendo {x1*, x2*, h1*}. Por lo tanto:

(PP) h2* = h3* = 0 e y1* = 0, y2* = 1, y3* = 2 (PD)• El valor del problema será

¡¡¡Variable dual!!!

3 3 3* 13 * 13 2z b y b= + ∆ × = + ∆ ×

Page 216: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

216Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

EJEMPLO:

1 2 2* ( , , ) (1, 3, 4) (0, 0, 0)* 18Bx x x h

z= = >

=

1* 1.8y =

Análisis de sensibilidad para b1: ∆b1∈[−7.5, 7.5]

Siempre que b1 aumente o disminuya a lo sumo 7.5 unidades, se verifica: z* = 18 + ∆b1×1.8

Variación de *31.5 18 13.5 (30 3)1.8 48.6

z =− = ≠ − =

1 2

1 2

1 2

1 2

1 2

max 3 5. : 3 2 3

2 56 9

, 0

x xs a x x

x xx x

x x

+− + ≤− + ≤

+ ≤≥

1 2

1 2

1 2

1 2

1 2

max 3 5. : 3 2 30

2 56 9

, 0

x xs a x x

x xx x

x x

+− + ≤− + ≤

+ ≤≥

* 31.5z =

Page 217: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

217Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

Si se añade una nueva restricción al problema, ¿cómo varía la solución óptima?

Para comprobar si la solución óptima varía o no, lo que se hace es comprobar si lasolución actual satisface la nueva restricción. Si la cumple, la solución no varía. Sino la cumple, la solución variará y será necesario calcular la nueva solución con lanueva restricción.

Page 218: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

218Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

Si se añade la restricción 2x1 − 3x2 ≤ 4 al problema, ¿cómo varía la solución óptima?

EJEMPLO:

z* = 13

x1* = 4x2* = 0.5

0,0

52

32

22:suj.a

23max

21

21

21

21

21

≥≥

≤+

≤−

≤+−

+

xx

xx

xx

xx

xx

2 4 3 0.5 6.5 4 * no satisface la resticciónx× − × = > →

No sabemos cúal sería la nueva solución óptima

Page 219: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

219Departamento Estadística, Matemáticas e Informática Universidad Miguel Hernández de Elche

Análisis de sensibilidad

Si se añade la restricción 2x1 − 3x2 ≤ 8 al problema, ¿cómo varía la solución óptima?

EJEMPLO:

z* = 13

x1* = 4x2* = 0.5

0,0

52

32

22:suj.a

23max

21

21

21

21

21

≥≥

≤+

≤−

≤+−

+

xx

xx

xx

xx

xx

2 4 3 0.5 6.5 8 * sí satisface la resticciónx× − × = ≤ →

x*=(4, 0.5) seguiría siendo la solución óptima

Page 220: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

220

El caso de la planta termoeléctrica: Análisis de sensibilidad

• El límite de emisión de partículas pudiera aumentarse hasta 13.5 Kg/h. ¿Y siel límite se redujera 2 Kg/h?

• Si cierta mejora del proceso permitiera incrementar el vapor producido porA hasta 26000 (lb/ton). Lo mismo si, por ciertos problemas, el de B seredujera hasta 15000 (lb/ton).

Determina, si es posible, cuálsería la producción máxima deelectricidad de la planta y concuánto carbón de cada clase seobtendría en las siguientessituaciones:

Max 24 x1 + 20 x2

s.a: 0.5 x1 + x2 ≤ 12 (humo)

x1 + x2 ≤ 20 (carga)

1.5 x1 + x2 ≤ 24 (pulverizador)

1200 x1 – 800 x2 ≥ 0 (azufre)x1 , x2 ≥ 0

Page 221: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

221

El caso de la planta termoeléctrica: Análisis de sensibilidad

• ¿Cuánto estaría dispuesto a pagar el gerente de la planta termoeléctrica porincrementar la capacidad de la carga en 0.5 ton/h?

• Si en el mercado de emisiones le vendieran 1 Kg de partículas a 500 u.m.,¿le interesaría comprar algo? En caso afirmativo, determina cuántos Kg deemisión de partículas compraría y cuál sería el resultado económico dedicha operación.

Si cada 1000lb de vapor producido genera un beneficio de 100 u.m:

Page 222: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

222

El caso de la planta termoeléctrica: Análisis de sensibilidad

Celda objetivo (Máximo)Celda Nombre Valor original Valor final$D$3 0 408

Celdas cambiantesCelda Nombre Valor original Valor final Entero$B$2 x1 0 12 Continuar$C$2 x2 0 6 Continuar

RestriccionesCelda Nombre Valor de la celda Fórmula Estado Demora$D$5 Humo) 12 $D$5<=$F$5 Vinculante 0$D$6 Carga) 18 $D$6<=$F$6 No vinculante 2$D$7 Pulver.) 24 $D$7<=$F$7 Vinculante 0$D$8 Azufre) 9600 $D$8>=$F$8 No Vinculante 9600

Page 223: Investigación Operativa 5_2...Investigación Operativa Índice 1. Conceptos básicos de programación lineal 2. Dualidad en programación lineal 3. Análisis de sensibilidad Programación

223

El caso de la planta termoeléctrica: Análisis de sensibilidad

Celdas cambiantesFinal Reducido Objetivo Permisible Permisible

Celda Nombre Valor Coste Coeficiente Aumentar Reducir$B$2 x1 12 0 24 6 14$C$2 x2 6 0 20 28 4

RestriccionesFinal Sombra Restricción Permisible Permisible

Celda Nombre Valor Precio Lado derecho Aumentar Reducir$D$5 Humo) 12 6 12 4 4$D$6 Carga) 18 0 20 1E+30 2$D$7 Pulver.) 24 14 24 4 6$D$8 Azufre) 9600 0 0 9600 1E+30