Sie sind auf Seite 1von 134

ESCUELA TCNICA SUPERIOR DE INGENIERA

DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal
Andrs Ramos
Universidad Pontificia Comillas
http://www.iit.upcomillas.es/aramos/
Andres.Ramos@upcomillas.es

CONTENIDO
 INTRODUCCIN
MTODO SIMPLEX
ADDITIONAL DEVELOPMENTS (master)
DUALIDAD
ANLISIS DE SENSIBILIDAD
INTERIOR POINT METHOD (master)
COMPARISON AMONG CPLEX ALGORITHMS
(master)

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 1

Programacin lineal. Linear programming LP


 Es la aplicacin por excelencia de la IO, en particular de la
optimizacin. En cada momento se estn ejecutando miles de
aplicaciones basadas en LP. stas utilizan en cada instante
ms tiempo de ordenador que los dems tipos de problemas de
optimizacin simultneamente.
 (LP) L de Lineal: todas las ecuaciones involucradas en el
problema matemtico son lineales.
 Ejemplo caracterstico: Asignacin de recursos limitados, es
decir, seleccin de las decisiones (niveles) ptimas que son
necesarias para realizar las actividades.
 Explotacin de la generacin elctrica: seleccin de las potencias
producidas por cada grupo para que el coste variable de la operacin
sea mnimo.
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 2

Ejemplo: planificacin de la produccin


Vidriera S.A. fabrica productos de vidrio de alta calidad,
incluyendo ventanas y puertas. Tiene tres fbricas. La fbrica
1 produce marcos de aluminio y piezas metlicas, la 2 marcos
de madera y la 3 produce el vidrio y ensambla los productos.
A causa de la prdida de ingresos, la Direccin ha decidido
cambiar la lnea de productos. Se van a suprimir los no
rentables y a lanzar otros dos nuevos que tienen gran potencial
de venta:
 Producto nm. 1: puerta de vidrio con marco de aluminio
 Producto nm. 2: ventana de vidrio con marco de madera

El primer producto requiere ser procesado en las fbricas 1 y


3, mientras que el segundo necesita de la 2 y la 3. La Divisin
Comercial estima que se pueden vender tantas puertas y
ventanas como se puedan producir. Pero, dado que ambos
productos compiten por los recursos de la fbrica 3, se desea
saber la mezcla que maximiza los beneficios de la empresa.
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 3

Planificacin de la produccin (i)


 Identificacin del problema:
 Determinar las tasas de produccin para los dos productos que
maximicen el beneficio total de la empresa dadas las capacidades de
produccin de las fbricas. (Cada producto se fabrica en lotes de 20
unidades y se define la tasa de produccin como el nmero de lotes por
semana). Puede no producirse nada de un producto y lo mximo
posible de otro.

 Datos necesarios:
 Nmero de horas de tiempo de produccin disponibles por semana en
cada fbrica para los nuevos productos (el resto de tiempo estn
ocupadas en la fabricacin de los productos actuales)
 Nmero de horas de tiempo de produccin de cada fbrica necesarias
para fabricar cada lote de cada producto
 Beneficio neto por lote de cada nuevo producto fabricado. El beneficio
por lote se mantiene constante independientemente del nmero de lotes
fabricados.
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 4

Planificacin de la produccin (ii)

Fbrica
1
2
3
Beneficio por lote ()

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

HORAS DE TIEMPO DE
PRODUCCIN POR LOTE
Producto 1
Producto 2
1
2
3
2
300
500

HORAS DISPONIBLES
POR SEMANA

4
12
18

Optimizacin lineal - 5

Planificacin de la produccin (iii)


 Formulacin
x1 = nmero de lotes por semana del producto 1
x2 = nmero de lotes por semana del producto 2
z = beneficios por semana (en cientos de )
max z = 3x1 + 5 x2
x1

3x1

2 x2
+2 x2

4
12
18

x1 , x2 0

 Solucin ptima:

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

(x1,x2) = (2, 6)

z = 36

Optimizacin lineal - 6

Formulacin genrica
Funci
Funcin objetivo lineal

max z = c1 x1 + c2 x2 + + cn xn

a11 x1 + a12 x2 + + a1n xn b1


a21 x1 + a22 x2 + + a2 n xn b2

cantidad de recurso i
consumido por cada
unidad de actividad j

am1 x1 + am 2 x2 + + amn xn bm

incremento en z resultante de
un incremento en el nivel de
actividad j

max z = cT x
Ax b
x0

Matriz de restricciones

x1 , x2 ,, xn 0

Variables continuas
ACTIVIDADES

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Restricciones lineales
RECURSOS

Optimizacin lineal - 7

Nomenclatura
 Funcin objetivo lineal: medida cuantitativa de
funcionamiento (bondad) del sistema z
 Beneficios, costes, flujo de mercancas

 RECURSOS m (restricciones lineales, filas) bi i = 1, ..., m


(RHS)
 Dinero, mquinas, equipos, vehculos, personal

 ACTIVIDADES n (variables de decisin continuas reales,


columnas) xj j=1 , ..., n
 Inversiones en proyectos, anuncios en peridicos, mercancas
transportadas entre cada pareja origen destino, producciones de los
grupos
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 8

Hiptesis
 Proporcionalidad, linealidad
 La contribucin de cada actividad xj al valor de la funcin objetivo
z es proporcional al nivel de la actividad, cj xj. La contribucin de
cada actividad xj al valor de la parte izquierda de cada restriccin
es proporcional al nivel de la actividad, aij xj.

 Aditividad
 Cada ecuacin en un problema LP es la suma de las contribuciones
individuales de las respectivas actividades.

 Divisibilidad, continuidad
 Cualquier variable puede tomar cualquier valor, no necesariamente
entero, que satisfaga las restricciones incluyendo las de no
negatividad.

 Certidumbre
 Los parmetros (constantes) de un problema LP se suponen
conocidos con certidumbre.
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 9

Geometra
 Hiperplano
 Cada ecuacin del problema. Un hiperplano divide el espacio en
dos semiespacios

 Poliedro

ai1 x1 + ai 2 x2 + + ain xn = bi

 Regin definida por la interseccin de un conjunto finito de


semiespacios. Un poliedro es un conjunto convexo

 Politopo
 Poliedro no vaco y acotado

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 10

Qu tienen en comn estos vehculos?

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 11

Convexidad (regin)
S
T

x
y

T no es convexo

S es convexo
x2

x = i i xi

x1

x3

x5
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

x4

=1

1 ,, k 0
Optimizacin lineal - 12

Convexidad (funcin)
 Una funcin es convexa si cumple
f ( x + (1 ) y ) f ( x) + (1 ) f ( y )

x
y

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 13

Geometra
 Vrtice o punto extremo
 Interseccin de n hiperplanos.
 No puede ponerse como combinacin lineal convexa de dos puntos
diferentes del conjunto.
 Cualquier punto de un politopo se puede expresar como
combinacin lineal convexa de los vrtices del mismo

 Arista
 Segmento obtenido por solucin de n-1 hiperplanos, siendo sus
extremos soluciones factibles vrtices

 Contorno
 Contiene las soluciones factibles que estn en uno o ms
hiperplanos

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 14

Propiedades de las soluciones factibles vrtices


 Si admite una solucin factible, admite al menos una solucin ptima
factible. Si la regin factible es un politopo, tiene al menos un vrtice.
 Si hay slo una solucin ptima sta debe ser una solucin factible
vrtice. Si hay mltiples (en una regin factible acotada) al menos dos
deben ser soluciones factibles vrtices adyacentes.
 Si admite una solucin ptima finita, admite al menos vrtice ptimo
 El ptimo est en un vrtice del politopo.
 Nmero finito de soluciones factibles vrtices
 Nmero total de ecuaciones m (de =), nmero de variables n, m < n
 Nmero de vrtices
Cn , m

n
n!
= =
m m !( n m)!

 Si m=20 n=50 nmero mximo = 520 106, mtodo simplex examina


20 vrtices
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 15

Optimizacin lineal
 Forma estndar

min c x
x

Ax = b
x0
b0
x n , c n , A mn , b m
 Mtodos de resolucin
 simplex (primal y dual)
 punto interior (primal-dual predictivo-correctivo, proyectivo,
escalado afn)
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 16

Caso ejemplo
x2

max z = 3x1 + 5 x2
x1

3x1

2 x2
+2 x 2

(0,6)

4
12
18

x1 , x2 0

(2,6)

PI
(4,3)

SX
(0,0)

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Rectas de
isofuncin
objetivo

(4,0)

x1

Optimizacin lineal - 17

CONTENIDO
INTRODUCCIN
 MTODO SIMPLEX
ADDITIONAL DEVELOPMENTS (master)
DUALIDAD
ANLISIS DE SENSIBILIDAD
INTERIOR POINT METHOD (master)
COMPARISON AMONG CPLEX ALGORITHMS
(master)

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 18

Mtodo simplex. Conceptos bsicos


 Procedimiento algebraico con conceptos geomtricos
subyacentes. Genera una secuencia de iteraciones
factibles movindose de un vrtice a otro adyacente con
mejor funcin objetivo.
 Se centra nicamente en las soluciones factibles vrtices.
 Cuando es posible la inicializacin se elige el origen
como primer vrtice.
 Dado un vrtice es rpido moverse a uno adyacente. Para
alcanzar la solucin el simplex se mueve por las aristas de
la regin factible.

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 19

Mtodo simplex. Algoritmo grfico


1. Inicializacin
Eleccin de un vrtice como solucin inicial

2. Prueba de optimalidad con la solucin actual


 Si es ptima (las tasas de mejora de la f.o. en las aristas del vrtice
actual son negativas) se acaba.
 Si no es ptima se sigue a 3.

3. Iteracin
 Movimiento hacia un vrtice adyacente que sea una solucin
mejor
 Se elige entre las aristas del vrtice la que lleva a una mejora
mayor en la f.o.
 Se mueve hasta encontrar una nueva restriccin
 Se determina el nuevo vrtice

4. Ir a 2.
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 20

Transformacin a forma estndar


 Se supone un problema formulado en su forma estndar
 Existen transformaciones para convertir un problema cualquiera a su forma
estndar
max z = 3x1 + 5 x2
4
12
18

3x1

2 x2
+2 x2

x1 , x2 0

x1 ,

x2 ,

x1

3x1

min z = 3x1 5 x2

2 x2
+2 x2

+ x3

x1

=4
+ x4

x3 ,

x4 ,

+ x5

= 12
= 18

x5

 En cada restriccin de tipo se aade una variable de holgura.


 En cada restriccin de tipo = se aade una variable artificial.
 En cada restriccin de tipo se aade una variable de exceso y una
artificial.
 Sistema de m ecuaciones (3) con n incgnitas (5), donde m < n
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 21

Transformacin a forma estndar (i)


 Funcin objetivo
 Direccin de maximizacin se trata como una minimizacin del valor negativo.
max z = min z

 Restricciones

 En las restricciones de tipo se introduce una variable de holgura ui 0

a x
ij

bi aij x j + ui = bi

 En las restricciones de tipo = se introduce una variable artificial yi 0

a x
ij

= bi aij x j + yi = bi

 En las restricciones de tipo se introduce una variable de exceso vi 0


y una variable artificial yi 0

a x
ij

bi aij x j vi + yi = bi

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 22

Transformacin a forma estndar (ii)


 Variables
 Si una variable es negativa y no acotada inferiormente x j 0
simplemente se utiliza su valor opuesto x j = y j siendo 0 y j
 Si la variable negativa est acotada inferiormente por un valor L j < 0
L j x j 0 se desplaza en dicha cantidad x j = y j + L j siendo 0 y j L j
 Si la variable es libre (no acotada inferior ni superiormente, x j )
se sustituye por dos variables que correspondern a su componente
positiva y negativa. x j = x +j x j Siendo 0 x +j 0 x j

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 23

Caso ejemplo
min z = 3x1 5 x2
+ x3

x1

3
5

c=


3x1

2 x2
+2 x 2

x1 ,

x2 ,

=4
+ x4

x3 ,

x4 ,

1 1
A = 2 1

3 2 1

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

+ x5

= 12
= 18

x5

4
b = 12

18

Optimizacin lineal - 24

Variables de holgura, exceso y artificiales


 Significado: distancia a la restriccin correspondiente
 Variable holgura = 0 restriccin activa
x2
(2,6)

(0,6)
min z = 3x1 5 x2
+ x3

x1

3x1

2 x2
+2 x 2

x1 ,

x2 ,

x3 ,

x4 ,

+ x5

= 12
= 18

x5

2 x2 = 12

x4

=4
+ x4

x1 = 4

x5

(4,3)
3x1 + 2 x2 = 18

x3
(0,0)
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

(4,0)

x1

Optimizacin lineal - 25

Solucin bsica
 Si se fijan n-m variables a 0, el resto (m) quedan determinadas por el
sistema de ecuaciones

x3 = 4 x1
x1 = x2 = 0

x4 = 12 2 x2

x5 = 18 3x1 2 x2
 Variables con valor = 0, no bsicas x1 , x2
x3 , x4 , x5
 Variables con valor 0, bsicas
 Esto es un vrtice del poliedro
 Particin: separacin entre variables bsicas y no bsicas

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 26

Particin
x T = [ xB
A = [B
c T = [ cB

xN ]

N]
cN ]

xB m
x N n m

B m m

N m( n m )
cB m

Ax = b

cN n m

BxB + Nx N = b x B = B 1 (b Nx N ) = B 1b B 1 Nx N
xN 0
x = b = B 1b
B

z = cBT xB + cNT xN = cBT B 1b cBT B 1 Nx N + cNT x N = cBT B 1b + cNT cBT B 1 N xN


z = cBT B 1b = cBT xB
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 27

Particin
 Dada una base (particin) se puede calcular:
 el valor de las variables bsicas y no bsicas y
 el valor de la funcin objetivo

 Columnas de la matriz base son los vectores ortogonal a


los planos correspondientes
 Calcular el valor de las variables bsicas:
 Resolver un sistema de ecuaciones lineales
 Invertir una matriz

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 28

Efecto de incremento de variable no bsica


 Qu pasa si se aumenta el valor de una variable no bsica, por ejemplo, x2?
 Restricciones:
 Las variables bsicas pueden cambiar
x3 = 4 x1
x4 = 12 2 x2

x5 = 18 3x1 2 x2

 Mantener factibilidad: interesa que siempre se cumpla la restriccin de x j 0

 Funcin objetivo
 La funcin objetivo puede cambiar
z = 3x1 5 x2

 Mejorara la f.o.: Interesa que mejore

 Qu significa aumentar una variable no bsica?


 Moverse por una arista del poliedro
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 29

Adyacencia
 Dos soluciones factibles vrtices son adyacentes si la lnea que
los conecta es una arista, es decir, si todas excepto una de sus
variables no bsicas son iguales. Cada solucin factible vrtice
tiene n-m soluciones factibles vrtices adyacentes.
 Moverse de una solucin bsica factible a otra adyacente es
cambiar de una variable no bsica a bsica y al contrario para
otra variable

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 30

Iteracin del simplex


1. Determinar en cunto mejora la f.o. si se aumenta marginalmente cada
variable no bsica
2. Elegir la variable no bsica que ms mejora la f.o.
3. Incrementarla al mximo sin violar la condicin x j 0 , es decir hasta que
alguna variable bsica se haga 0.
4. Intercambiar la variable no bsica por la variable bsica

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 31

Coste reducido
 Definimos:
wT cBT B 1

Y B 1 N
cTN cNT cBT B 1 N = cNT wT N = cNT cBT Y

 Particularizando para una variable no bsica concreta


c j c j cBT B 1a j = c j wT a j = c j cBT y j = c j z j

 Coste reducido c j = c j z j : derivada direccional de una variable no bsica.


Es decir, cunto aumenta la f.o. si aumenta marginalmente la variable no
bsica
z = z +

c x

jI N

= z +

(c

jI N

z j )x j

 Criterio de seleccin: variable no bsica con coste reducido negativo de


mayor valor absoluto, variable bsica entrante.
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 32

Costes reducidos
 Si el coste reducido de una variable no bsica es cero en la
solucin ptima entonces pueden existir mltiples soluciones
ptimas, siendo al menos dos de ellas soluciones vrtices.
 En el ptimo de un problema de minimizacin todos los costes
reducidos de las variables no bsicas son positivos o nulos.
 Los costes reducidos de las variables bsicas son cero.

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 33

Pivotamiento
 Intercambio entre variables en la particin
 Incremento de la variable no bsica, variable bsica entrante xt
 Modificacin de las variables bsicas
 Determinacin de variable bsica que se hace 0, variable bsica saliente
1

x3 = 4 x1

xB = B (b NxN ) = B b B NxN

x4 = 12 2 x2

x5 = 18 3x1 2 x2

 Sea at la columna de la matriz A asociada a la VBE xt


 Sea yt = B 1at
( xB )i = bi yit xt

xt = bi / yit

yit > 0

bi > 0

bi

y
:
>
0
 La variable xt puede aumentar su valor hasta xt = 1min

it
i m y

it
z = z + c x

 Nueva funcin objetivo


t t
 Nuevos valores de las variables bsicas xB = b y t xt
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 34

Mtodo simplex (i)


1. Inicializacin
 Se supone que se dispone de una matriz base B correspondiente a una solucin
bsica factible inicial xB = b = B 1b 0 y una funcin objetivo
z = cTB B 1b = cBT xB

2. Prueba de optimalidad
T
T
T 1
T
T
 Clculo de costes reducidos cN = cN cB B N = cN cBY . Si todos los costes
reducidos son no negativos la base actual es ptima. En caso contrario, se
selecciona como variable bsica entrante VBE xt una variable con coste
reducido estrictamente negativo.
 La prueba de optimalidad es local pero como los problemas de programacin
lineal son convexos, la solucin ptima ser global.

3. Iteracin
 Sea yt = B 1at , la columna pivote t correspondiente a la variable bsica entrante.
Se busca la fila pivote s que verifica
bi

bs
= min : yit > 0
yst 1i m yit

y determina la variable bsica saliente VBS xs y el elemento pivote yst .


 Si yit 0 para toda fila i entonces el problema es no acotado.
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 35

Mtodo simplex (ii)


4. Pivotamiento
 Actualizacin de la matriz B 1 y del vector de variables bsicas y
volver al paso 2.

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 36

Paralelismo entre interpretacin geomtrica y


algebraica

1. Vrtice factible inicial


2. Seleccin de arista
3. Movimiento a lo largo de la arista
4. Alcanzar un nuevo vrtice
adyacente
5. Nuevo vrtice factible

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

1. Solucin bsica factible inicial


2. Seleccin de variable bsica
entrante
3. Incremento de la variable bsica
entrante
4. La variable bsica saliente se
hace cero
5. Nueva solucin bsica factible

Optimizacin lineal - 37

Maximizacin, mltiples ptimos, convergencia


 El mtodo simplex maneja direccin de maximizacin
cambiando criterio de optimalidad ( cTN 0 ) y criterio de
entrada en la base (aqulla con coste reducido estrictamente
positivo de mayor valor).
 Mltiples ptimos (SOLUCIONES ALTERNATIVAS)
 Cuando existe al menos variable no bsica con coste reducido 0 y entra
en la base con valor diferente de 0. Estas soluciones se pueden
identificar eligiendo stas como variables bsicas entrantes.
 Cada solucin ptima es combinacin lineal convexa de soluciones
factibles vrtices (soluciones bsicas factibles ptimas).

 Convergencia asegurada si no hay degeneracin.

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 38

Casos especiales
 Conflicto entre variables bsicas entrantes
 Variables con el mismo coste reducido en la ecuacin de la f.o., se puede elegir
cualquiera

 Conflicto entre variables bsicas salientes, DEGENERACIN


 Variables bsicas que se hacen simultneamente 0 al incrementar la variable
bsica entrante. Las variables bsicas no salientes toman valor 0 (degeneradas).
 Si estas variables bsicas degeneradas siguen con valor 0 en otra iteracin la
variable bsica entrante no puede incrementar su valor y tampoco la f.o.
 Si la f.o. no se incrementa se puede producir un CICLO (moverse por una
secuencia de bases que definen el mismo punto extremo). Resoluble mediante
procedimientos especiales (mtodo lexicogrfico).

 Inexistencia de variable bsica saliente, SOLUCIN NO ACOTADA


 Variable bsica entrante puede incrementarse indefinidamente sin anular
ninguna variable bsica actual. Los coeficientes de la columna pivote son
negativos o cero.

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 39

Degeneracin
 La variable x6 es degenerada (variable bsica con valor 0)
x1 = 4

x2
(2,6)

(0,6)
min z = 3x1 5 x2

+ x3

x1

3x1
x1
x1 ,

2 x2
+2 x 2
+ x2
x2 ,

+ x4
+ x5
x3 ,

x4

=4

x4 ,

x5 ,

+ x6
x6

= 12
= 18
=8
0

2 x2 = 12

x1 + x2 = 8

x6
x5

(4,3)
3x1 + 2 x2 = 18

x3
(0,0)

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

(4,0)

x1

Optimizacin lineal - 40

Caracterizacin de soluciones
 Solucin factible
 Solucin que satisface todas las restricciones. Puntos del interior y contorno de la regin
factible.

 Solucin infactible
 Solucin que viola al menos una restriccin. Puntos exteriores a la regin factible.

 Solucin bsica factible (VRTICE)


 Solucin factible localizada en un vrtice de la regin factible, no se puede expresar
como combinacin lineal de otras dos soluciones factibles
 Base matriz cuadrada no singular de rango mximo en A. Las variables de las columnas
que forman la matriz base son bsicas, el resto no bsicas.
 Cada variable slo puede ser bsica o no bsica
 Nmero de variables bsicas = m Variables bsicas > 0,
 Nmero de variables no bsicas = n-m Variables no bsicas = 0
 El valor de las variables bsicas (vrtice) se obtiene resolviendo el sistema de ecuaciones
lineales m x m.

 Solucin bsica factible DEGENERADA


 Alguna de las m variables bsicas = 0

 Solucin ptima
 Solucin factible vrtice con el valor ms favorable de la funcin objetivo
 Puede haber mltiples soluciones ptimas. Es una situacin muy frecuente en la realidad.

 Solucin no acotada

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 41

Forma tabular (i)


 Manera sencilla de presentar el mtodo y hacer pequeos ejemplos
 Tabla en la iteracin inicial
xN

xB

Cotas

z
1

cTB
B

xB

cTN
N

Variables bsicas

 Tabla en una iteracin cualquiera


Variables bsicas

z
xB

z
1
0

xN
cTN cBT B 1N

xB
0

Cotas
cTB B 1b

B 1N

B 1b

 Slo se necesita la B-1 para calcular todos los bloques de la tabla.


ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 42

Forma tabular (ii)


 En la iteracin inicial se escogen como variables bsicas las de holgura y
artificiales (tienen coeficiente 0 en la f.o. y 1 en las restricciones). La matriz
base B es la matriz identidad I.
 Tabla en la iteracin inicial
Variables bsicas

z
xB

x N
cNT
N

z
1
0

x B
0

Cotas
0

 Tabla en una iteracin cualquiera


Variables bsicas

z
xB

z
1
0

x N
cNT cTB B 1N
B 1N

x B
cTB B 1

Cotas
cTB B 1b

B 1

B 1b

 La matriz B-1 describe las manipulaciones hechas con las restricciones a


partir de su situacin inicial. Se encuentra bajo las variables bsicas
iniciales.
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 43

Obtencin de solucin bsica factible inicial


 Para poner el problema en forma estndar se introducen
variables de holgura, exceso y artificiales.
 Variables de holgura y artificiales forman la base inicial
 Si las variables artificiales toman valor > 0 la solucin
bsica es infactible
 Fase I del mtodo simplex obtiene una solucin bsica
factible inicial. Su f.o. es la minimizacin de la suma de
variables artificiales.
 Fase II: problema original a partir de solucin bsica
factible de Fase I.
 Si al final de la Fase I alguna variable artificial > 0,
problema infactible
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 44

Mtodo de las dos fases


min z = 0.4x 1 + 0.5x 2
0.3x 1

+0.1x 2

2.7

0.5x 1 +0.5x 2

=6

0.6x 1 +0.4x 2

x 1,

x2

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 45

Recapitulacin mtodo simplex


 Problema matemtico en forma estndar (variables de holgura,
artificiales y de exceso)
 Mtodo simplex
 Algoritmo grfico (movimiento de vrtice a vrtice por aristas del
contorno de la regin factible)
 Algoritmo algebraico (resolucin iterativa de un sistema de ecuaciones
lineales cambiando de base). Solucin bsica formada por variables
bsicas ( 0) y no bsicas (= 0)

 Solucin algoritmo algebraico


 Matricial (expresin de toda la informacin en funcin de B-1 )
 Tabular
 Simplex revisado

 Solucin bsica factible inicial por mtodo de las dos fases si


hay variables artificiales
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 46

Convergencia
 Converge en un nmero finito de iteraciones
 Caso peor
 convergencia exponencial

 Caso medio
 nmero de iteraciones proporcional al nmero de restricciones m
 tiempo de solucin proporcional a m3

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 47

CONTENIDO
INTRODUCCIN
MTODO SIMPLEX
 ADDITIONAL DEVELOPMENTS (master)
DUALIDAD
ANLISIS DE SENSIBILIDAD
INTERIOR POINT METHOD (master)
COMPARISON AMONG CPLEX ALGORITHMS
(master)

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 48

Desarrollos adicionales
 Mtodo simplex revisado
 Forma producto de la inversa
 Factorizacin de la matriz base
 Estrategias de clculo de costes reducidos

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 49

Mtodo simplex revisado


 Calcula en cada iteracin slo la informacin que necesita estrictamente en
dicha iteracin
 Se ahorra en clculo y en memoria
 Tablas anteriores (m+1)x(n+1), tabla simplex revisado (m+1)x(m+1)
x B
wT = cTB B 1

B 1

Valores
z = cTB B 1b
b = B 1b

 En cada iteracin se calculan los costes reducidos de las variables no


bsicas y la columna pivote fuera de la tabla.
 El pivotamiento se hace sobre la tabla actual, suponiendo que existe una
columna adicional (realmente no es aadida) que es la columna pivote

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 50

Forma producto de la inversa


 Esfuerzo computacional del mtodo simplex: clculos
relacionados con la inversa de la matriz base B-1
 Matriz base B es cuasivaca, pero matriz inversa B-1 es
densa.
 Tanto B como B-1 cambian poco en cada iteracin luego se
pueden actualizar sin necesidad de recalcularlas desde cero

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 51

Mtodo simplex
1. Calcular costes reducidos de VNB
2. Seleccionar VBE xt y calcular elementos columna pivote
3. Determinar VBS xs . Elemento pivote yst

yit

 Determinar cotas restricciones bi con elementos de columna pivote yit > 0


bi

 Determinar el mnimo bs
= min : yit > 0
y st 1i m yit

 Actualizacin de la inversa

y
Se suma a la ecuacin i la ecuacin s multiplicada por it para i=1,,m
y st
is
La ecuacin s se divide por el elemento pivote

yit 1
1
(
)
( B ) sj
B

ij

yst

( B 1 )ij =
1 ( B 1 )
sj
yst
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

is
i=s

Optimizacin lineal - 52

Actualizacin de las matrices B y B-1


B = BF

F se obtiene a partir de la matriz identidad reemplazando la


columna s por yt
1

F =
yt

B 1 = EB 1
E = F 1

yt = B 1at

E =

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

y1t yst

= 1 yst

ymt yst
Optimizacin lineal - 53

Actualizacin de la matriz B-1


 La inversa de la base B-1 en cualquier iteracin k se puede
poner como un producto de matrices elementales
Bk1 = Ek 1Ek 2 E2 E1

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 54

Pre y postmultiplicacin de la matriz B-1


 Realmente no se necesita la inversa B-1 sino pre wT = cTB B 1
o postmultiplicar b = B 1b , yt = B 1at sta por vectores
 Postmultiplicacin por un vector. Transformacin hacia
delante (FTRAN)
Bk1a = Ek 1 ( Ek 2 ( Ek 3 ( ( E2 ( E1a )))))

 Premultiplicacin por un vector. Transformacin hacia


atrs (BTRAN)
cT Bk1 = (((((cT Ek 1 ) Ek 2 ) Ek 3 )) E2 ) E1

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 55

Post y premultiplicacin de matriz elemental


 Sea E una matriz elemental con un vector en su columna s
1
1
a1 a1
1




as = 0 + as s
Ea =
s

a a

1
m
m

m
m

 El trmino s es reemplazado por el escalar cT

cT E = ( c1 c2 cs

1
1


cm )

1
m

= ( c1 c2 cs 1 cT
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

cs +1 cm )

Optimizacin lineal - 56

Factorizacin de la matriz base B


 Los clculos se pueden hacer tambin pre wT B = cBT o
postmultiplicando la matriz base por vectores Bb = b Byt = at
 La matriz base se puede factorizar, expresar como producto de
matrices B = LU , siendo L y U matrices triangulares inferior y
superior. Estas matrices son cuasivacas como la matriz A.
 Los sistemas de ecuaciones previos se resuelven en dos etapas
Bb = b

LUb = b

 Si b1 = Ub primero se resuelve el sistema triangular hacia


delante para calcular b1
Lb1 = b

 Y luego se resuelve el sistema triangular hacia atrs para


calcular b
Ub = b1
 Tambin se puede utilizar la factorizacin de Cholesky B = RT R
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 57

Factorizacin de la matriz base B


 Inicialmente la matriz base B es la identidad. De la misma
forma las matrices L y U son tambin la identidad.
 La matriz base cambia (se actualiza) al realizar iteraciones del
simplex. De la misma forma se hace con las matrices
triangulares.
 Despus de un cierto nmero de iteraciones (por ejemplo, 100)
deja de ser eficiente la actualizacin a partir de matrices
elementales. En ese momento se refactoriza la matriz base, es
decir, se calculan de nuevo la matrices triangulares L y U
correspondientes y se empieza de nuevo el proceso de
actualizacin.
 En la iteracin final tambin se suele realizar una
refactorizacin.
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 58

Estrategias de clculo de costes reducidos (pricing)


 Clculo de todos los costes reducidos (full pricing)
 Menor nmero de iteraciones, mayor clculo en cada una

 Clculo de algunos (partial pricing)


 Se calcula slo un subconjunto y se elige la VBE. Si no hay ninguna se
calcula otro subconjunto hasta que se encuentre una VBE o se est en
el ptimo

Coste
reducido

 Mayor mejora por incremento unitario de la VBE por la arista


de mxima pendiente (steepest-edge)

ct = min
jxN

Escala de
la arista

c j
1

B Ne j

+1

= min
jxN

c j
1

B aj

+1

 Mtodo Devex realiza una aproximacin de la escala en lugar


de su clculo exacto

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 59

Manejo de cotas superiores

0 xj uj

 No tratar estas cotas como restricciones tiene ventajas


computacionales. En el mtodo simplex implica no sobrepasar
las cotas cuando la variable bsica entrante se incrementa
hasta alcanzar un nuevo vrtice.
xj = uj yj

 Si
 Si

0 xj uj

xj = 0
xj = uj yj = 0

0 yj uj

xj es no bsica
yj es no bsica

 La variable bsica saliente es la primera que alcanza su cota 0


(se hara negativa) al incrementar la variable bsica entrante.
Ahora esta condicin se extiende a su cota 0 o a su cota uj.
Cuando se alcanza la cota superior se cambia la variable xj a yj
como nueva variable no bsica.
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 60

CONTENIDO
INTRODUCCIN
MTODO SIMPLEX
ADDITIONAL DEVELOPMENTS (master)
 DUALIDAD
ANLISIS DE SENSIBILIDAD
INTERIOR POINT METHOD (master)
COMPARISON AMONG CPLEX ALGORITHMS
(master)

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 61

Two perspectives of the world: Engineers vs.


Economists

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 62

Purchasing decision
 The Purchasing Director of the department store The English
Suit (TES) is interested in the acquisition of a certain amount
of Manchego cheese, called d, from different cheese factories
for the next discount campaign. At the moment he has three
suppliers available, A, B and C. He has contacted with the
Operations Engineers of the factories that have given him the
per unit cost and production capacity of each factory, which
correspond respectively to ci and pi, and are expressed in /kg
and kg.
 Assess the optimization problem to be solved by the TEC
Purchasing Director

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 63

Purchasing decision. Specification


 Parameters/Data:
 d estimated cheese demand [kg]
 ci cheese per unit cost of each factory i [/kg]
 pi production capacity of each factory i [kg]

 Decisions to be made/Variables
 Xi how much cheese to purchase to each factory i [kg]

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 64

Purchasing decision. Graphical representation

Per unit cost


[/kg]

pC

cC
pB

cB
cA

Objective function
is this area

pA
d

XA

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

XB

XC

Demand [kg]

Optimizacin lineal - 65

Purchasing decision. Mathematical formulation


(i)
 Objective function:
 Minimize the acquisition cost by TES []

min cAX A + cB X B + cC XC

 Constraints:

XA ,XB ,XC

 Satisfy the estimated cheese demand [kg]


 Observe the limits of each factory [kg]

X A + X B + XC d
X A pA
X B pB
XC pC

 Make a rational purchase [kg]

XA 0
XB 0

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

XC 0
Optimizacin lineal - 66

Purchasing decision. Mathematical formulation


(ii)
 The whole cost minimization problem is formulated as:

min z = cAX A + cB X B + cC XC

X A ,X B ,XC

X A + X B + XC d
X A pA
X B pB
XC pC

X A, X B , XC 0

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 67

Selling decision
 Three companies devoted to producing Manchego cheese have
constituted an association, the Manchego Cheese Association
(MCA), to join efforts in commercializing their products. The
Economy Director of this association has been contacted by an
important department store interested in purchasing d kg of
cheese for the next month. The Director knows the per unit
cost ci and capacity pi of each factory.
 Assess the optimization problem to be solved by the MCA
Economy Director. Determine the selling price that maximizes
its revenues.

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 68

Selling decision. Specification


 Parameters/Data:
 d estimated cheese demand [kg]
 ci cheese per unit cost of each factory i [/kg]
 pi production capacity of each factory i [kg]

 Decisions to be made/Variables
 Z cheese unit price [/kg]
 Yi penalty by limit in each factory i [/kg]

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 69

Selling decision. Graphical representation

Per unit price


[/kg]

YC
pC

cC

pB

cB
cA

Objective function
is this area

YB

YA
pA
d
Demand [kg]

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 70

Selling decision. Mathematical formulation (i)


 Objective function:
 Maximize the revenues of producers []

max y 0 = dZ pAYA pBYB pCYC

Z ,YA ,YB ,YC

 Constraints:
 Companies want the maximum marginal price below their marginal
(per unit) cost [/kg]
It is a perfect competitive market. If a factory sells above its variable
cost it will be out of the market

Z YA cA
Z YB cB

 Prices/penalties have to be rational [/kg]

Z ,YA,YB ,YC 0
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Z YC cC

Optimizacin lineal - 71

Selling decision. Mathematical formulation (ii)


 The whole revenue maximization problem is formulated as:

max y 0 = dZ pAYA pBYB pCYC

Z ,YA ,YB ,YC

Z YA cA
Z YB cB
Z YC cC

Z ,YA,YB ,YC 0

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 72

Aesthetic relations
 PRIMAL: TES cost minimization DUAL: MCA revenue maximization

min z = cAX A + cB X B + cC XC

max y 0 = dZ pAYA pBYB pCYC

X A ,X B ,XC

Z ,YA ,YB ,YC

X A + X B + XC d

Z YA cA

X A pA

Z YB cB

X B pB

Z YC cC

XC pC

Z ,YA,YB ,YC 0

X A, X B , XC 0
1

1
A =

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL


1 1

T
A = 1
1

Optimizacin lineal - 73

Aesthetic relations
 PRIMAL problem
 Minimization
 RHS
 O.F. coefficients
 Constraint matrix
 # of variables
 # of constraints

 DUAL problem
 Maximization
 O.F. coefficients
 RHS
 Transposed constraint matrix
 # of constraints
 # of variables

 Primal and dual words can be used for any problem (from a
mathematical point of view)
 Usually
 primal problem is called the cost minimization with quantities as variables and
 dual problem is called the revenue maximization with prices as variables
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 74

Two perspectives
 Engineers:
 Decide quantities: how much cheese to produce in each factory [kg]
 Work with primal variables

 Economists:
 Decide prices: what price to ask for a kg of cheese [/kg]
 Work with dual variables

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 75

Behavioral relations
 Objective function at the optimal solution of primal and dual
problems coincide z * = y 0*

 How much does the total cost increase when the expected
cheese demand increases in one unit [/kg]? Z

 How much does the total cost decrease when the production
capacity of factory A increases in one unit [/kg]? YA

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 76

Cost minimization problem. Explicit


formulation
parameters
d estimated cheese demand
cA cheese per unit cost of
cB cheese per unit cost of
cC cheese per unit cost of
pA production capacity of
pB production capacity of
pC production capacity of

factory
factory
factory
factory
factory
factory

A
B
C
A
B
C

[kg]
[ per kg]
[ per kg]
[ per kg]
[kg]
[kg]
[kg]

positive variables
xA how much cheese to purchase to factory A [kg]
XB how much cheese to purchase to factory B [kg]
XC how much cheese to purchase to factory C [kg]
variable
z acquisition cost []
equations
of Minimize the acquisition cost
ecd Satisfy the estimated cheese demand
ecA Observe the limits of factory A
ecB Observe the limits of factory B
ecc Observe the limits of factory C
of
ecd
ecA
ecB
ecC

..
..
..
..
..

z =e= cA*xA + cB*xB + cC*xC ;


xA + xB + xC =g= d ;
xA =l= pA ;
xB =l= pB ;
xC =l= pC ;

model cm / all / ;

* assign values to the parameters


cA
cB
cC
pA
pB
pC
d

=
=
=
=
=
=
=

8
10
12
100
120
150
300

;
;
;
;
;
;
;

solve cm minimizing z using lp

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

[]
[kg]
[kg]
[kg]
[kg] ;

m in z = c A X A + c B X B + cC X C

X A ,X B ,X C

X A + X B + XC d
X A p A
X B p B
X C pC

X A, X B , XC 0

Optimizacin lineal - 77

Revenue maximization problem. Explicit formulation


parameters
d estimated cheese demand
cA cheese per unit cost of
cB cheese per unit cost of
cC cheese per unit cost of
pA production capacity of
pB production capacity of
pC production capacity of

factory
factory
factory
factory
factory
factory

A
B
C
A
B
C

[kg]
[ per kg]
[ per kg]
[ per kg]
[kg]
[kg]
[kg]

positive variables
yA penalty by limit in factory A [ per
yB penalty by limit in factory B [ per
yC penalty by limit in factory C [ per
z cheese unit price
[ per

kg]
kg]
kg]
kg]

variable
y0 revenues []
equations
of Maximize the revenues
ecA Company A want the maximum price below their per unit cost
ecB Company B want the maximum price below their per unit cost
ecC Company C want the maximum price below their per unit cost
of
ecA
ecB
ecC

..
..
..
..

y0 =e=
z - yA
z - yB
z - yC

d*z
=l=
=l=
=l=

- pA*yA - pB*yB - pC*yC ;


cA ;
cB ;
cC ;
Z ,Y A ,Y B ,YC

model rm / all / ;

* assign values to the parameters


cA
cB
cC
pA
pB
pC
d

=
=
=
=
=
=
=

8
10
12
100
120
150
300

[]
[ per kg]
[ per kg]
[ per kg] ;

;
;
;
;
;
;
;

solve rm maximizing y0 using lp

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

m ax y 0 = dZ p AY A p BY B pCYC

Z YA cA
Z YB cB
Z YC cC

Z ,Y A ,Y B ,YC 0

Optimizacin lineal - 78

Cost minimization problem. Algebraic


formulation
sets
i factories / A, B, C/
parameters
d
estimated cheese demand
[kg]
/ 300
/
c(i) cheese per unit cost of each factory i [ per kg] / A
8, B 10,
C 12 /
p(i) production capacity of each factory i [kg]
/ A 100, B 120,
C 150 /
positive variables
x(i) how much cheese to purchase to each factory i [kg]
variable
z
acquisition cost []
equations
of
Minimize the acquisition cost
[]
ecd
Satisfy the estimated cheese demand [kg]
ec(i) Observe the limits of each factory [kg] ;
of
.. z =e= sum[i,
c(i)*x(i)] ;
sum
ecd
.. sum
sum[i, x(i)] =g= d ;
ec(i) .. x(i) =l= p(i) ;
model cm / all /
solve cm minimizing z using lp

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 79

Revenue maximization problem. Algebraic formulation


sets
i factories / A, B, C/
parameters
d
estimated cheese demand
[kg]
/ 300
/
c(i) cheese per unit cost of each factory i [ per kg] / A
8, B 10, C 12
/
p(i) production capacity of each factory i [kg]
/ A 100, B 120, C 150
/
positive variables
y(i) penalty by limit in each factory i [ per kg]
z
cheese unit price
[ per kg]
variable
y0
revenues []
equations
of
Maximize the revenues
[]
ec(i) Company i want the maximum price below their per unit cost [ per kg]
;
of
.. y0 =e= d*z - sum[i,
p(i)*y(i)] ;
sum
ec(i) .. z - y(i) =l= c(i) ;
model rm / all /
solve rm maximizing y0 using lp

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 80

Model results
 Values (levels) of variables
 Values (levels) of constraints
 Dual variables (shadow prices, Lagrange multipliers)
 Marginal values of constraints
o.f. dimension
 Dimension:
constraint dimension

 Its value is only valid in the neighborhood of the optimal solution

 Reduced costs
 Marginal values of variables
o.f. dimension
 Dimension:
variable dimension
 Its value is only valid in the neighborhood of the optimal solution
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 81

Problema dual
 Problema estndar primal (P)
 Cota inferior de este problema

min z = cT x
Ax = b
x0

 Operamos con las filas de la matriz, las multiplicamos por algn valor
y T Ax = y T b las sumamos entre ellas de modo que no se superen los
coeficientes de la funcin objetivo y T A cT , en tal caso el lado derecho
resultante de tales operaciones sera una cota inferior para el valor de la
funcin objetivo y T b cT x .
 Esa cota queremos que sea lo ms alta posible.

 Problema dual (D)

max y0 = bT y
AT y c

son las variables duales

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 82

Interpretacin econmica
 Precio sombra (variable dual, multiplicador simplex, precio de
equilibrio, precio justo) del recurso i (yi) mide el valor
marginal del recurso, es decir, el incremento marginal de z al
aumentar marginalmente el recurso bi.

Fuente: OMEL
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 83

Relaciones primal dual


 Cualquier problema LP denominado primal tiene asociado a l otro
problema tambin LP llamado dual
 Primal mxn, Dual nxm
 Para cualquier problema primal y su dual, todas las relaciones entre ellos
son simtricas porque el dual de su dual es el primal
 Obtencin de uno a partir del otro
min
Variable
0
0
no restringida
Restriccin

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

max
Restriccin

=
Variable
0
0
no restringida

Optimizacin lineal - 84

Ejemplo (i)
Dual

Primal
max z = 3 x1 + 5 x2

x1

3 x1

2 x2
+2 x2

x1 ,

x2

12
18

x
max z = [3 5] 1
x2
1
4
2 x1 12

x2
3 2
18
x1 0
x 0
2
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

min y0 = 4 y1 + 12 y2 + 18 y3
y1

2 y2
y1 , y2 ,

+3 y3
+2 y3
y3

3
5
0

y1
min y0 = [ 4 12 18] y2

y3
y1
1
3

3
2 2 y2 5

y
3
y1 0
y 0
2
y3 0
Optimizacin lineal - 85

Ejemplo (ii)

min c1 x1 + c2 x2 + c3 x3

max y1b1 + y2b2 + y3b3

x1 , x2 , x3

y1 , y2 , y3

a11 x1 + a12 x2 + a13 x3 b1

y1a11 + y2 a21 + y3a31 c1

a21 x1 + a22 x2 + a23 x3 b2

y1a12 + y2 a22 + y3a32 c2

a31 x1 + a32 x2 + a33 x3 = b3

y1a13 + y2 a23 + y3a33 = c3

x1 0, x2 0, x3 libre

y1 0, y2 0, y3 libre

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 86

Ejemplo de sistemas de energa elctrica


 Minimizacin de costes de
explotacin

 Maximizacin de la funcin
de utilidad

min c1P1 + c2P2 + c3P3

P1 ,P2 ,P3

P1

+P2

+P3

P1

: 1

P2

: 2

P3

P3

: 3

P3

P1
P2
P1,

P2 ,

max d + P11 + P2 2 + P3 3

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

,1 ,2 ,3

+1

c1

: P1

c2

: P2

+3 c3

: P3

+2

1,

2 ,

Optimizacin lineal - 87

Propiedades bsicas de la dualidad (max P, min D)


 Propiedad de la simetra
 Para cualquier problema primal y su dual, todas las relaciones entre
ellos son simtricas porque el dual de su dual es el primal.

 Propiedad dbil de la dualidad


 Si x es una solucin factible del primal e y es una solucin factible del
dual, se verifica que cT x bT y

 Propiedad fuerte de la dualidad


 Si x* es una solucin ptima del primal e y* es una solucin ptima del
dual, se verifica que cT x * = bT y *

 Propiedad de soluciones bsicas complementarias


 Propiedad de solucin bsica ptima complementaria
 En la iteracin final se encuentra simultneamente la solucin bsica
ptima x *del primal y la bsica ptima complementaria y * del dual y se
verifica cT x * = bT y * z * = y 0*
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 88

Propiedad soluciones bsicas complementarias


 En cada iteracin del mtodo simplex se encuentra una solucin bsica
(vrtice) factible del primal y una solucin bsica complementaria
infactible del dual tal que cT x = bT y o z = y0
Si no es ptima para el primal no es factible para el dual.
 Solucin dual complementaria y T cBT B 1
 Las variables duales son los coeficientes de las variables bsicas iniciales
en la funcin objetivo cambiados de
signo.
DERIVADAS FO CON
Variables bsicas

z
1
0

z
xB
Variables bsicas

z
1

xB

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

RESPECTO VAR PRIMAL

x N
cNT cTB B 1N
B 1N

x B
cTB B 1

Cotas
cTB B 1b

B 1

B 1b

VARIABLES

x N
x B
DEL DUAL
variables duales de variables duales
exceso y de holgura
originales

B 1N

B 1

VARIABLES
DEL PRIMAL

Cotas
cTB B 1b
B 1b

DERIVADAS FO CON
RESPECTO VAR DUAL
Optimizacin lineal - 89

Propiedad complementariedad de holguras (i)


 Si una solucin ptima del primal tiene una variable de
holgura o exceso > 0 en una restriccin (es decir, es variable
bsica > 0), la variable dual asociada a esa restriccin tiene
valor 0.
 Si una variable de holgura o exceso del primal es 0 en el
ptimo, la variable dual asociada a dicha restriccin puede
tener valor distinto de 0 (positivo o negativo segn
corresponda al tipo de restriccin y de funcin objetivo
maximizacin o minimizacin) en el ptimo del problema
dual.
 Si una variable original del primal (no las de holgura, exceso o
artificiales) en el ptimo tiene valor > 0, su correspondiente
restriccin del dual no tiene holgura (es decir, su variable
asociada del dual es 0).
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 90

Propiedad complementariedad de holguras (ii)


 Primal (P) min z = cT x
Ax = b

x0

 Dual (D)

max y0 = b y
T

A yc
T

max y0 = bT y

AT y + s = c
s0

 Propiedad complementariedad de holguras


 Sean puntos factibles de (P) y (D)

x j s j = 0 j = 1,, n

Ax = b
AT y + s = c

x0
s0

 Intervalo de dualidad (duality gap)


n

c x b y = ( A y + s ) x b y = y Ax + s x b y = x s = x j s j
T

j =1

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 91

Teorema de dualidad
 Las nicas relaciones posibles entre primal y dual son:
 Si un problema tiene soluciones ptimas factibles entonces tambin las
tiene el otro. Se pueden aplicar las propiedades dbil y fuerte de
dualidad.
 Si un problema tiene soluciones factibles y funcin objetivo no
acotada, el otro problema no tiene soluciones factibles.
 Si un problema no tiene soluciones factibles, el otro o no tiene
soluciones factibles o no tiene funcin objetivo acotada.

 Lema de Farkas: exactamente uno de los dos sistemas de


ecuaciones siguientes tiene solucin
 Sistema 1: AT x = b x 0
 Sistema 2: AT y 0 bT y > 0

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 92

Ejemplo 1 (i)
max z =

x, y

x
+ y6
3
2 x + y 12

2x+y=12

3
x+ y
4

z=9

z=6

z=12
4

x/3+y=6
2

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

6
x

10

12

Optimizacin lineal - 93

Tabla del mtodo simplex


VBE

VBS

-0.75

-1

0.33

max z =
u

x, y

x
+ y6
3
2 x + y 12

0
1

12

12

VBE

VBS

: 1
:2

( 1 , 2 ) = (0.75,0.25)

-0.41666

-6

1.67

-1

3.6

0.333

18

Var
dual
R1

3
x+ y
4

Var
dual
R2
z

0.75

0.25

-7.5

-0.6

0.6

3.6

1.2

-0.2

4.8

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 94

Ejemplo 1 (ii)
9

Variable
dual R1

2x+y=12

max z =
x, y

Gradiente
f.o.

z=7.5

x
+ y6
3
2 x + y 12
( 1 , 2 ) = (0.75,0.25)

Variable
dual R2

(3.6,4.8)

3
x+ y
4

x/3+y=6
2

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

6
x

10

12

Optimizacin lineal - 95

Interpretacin geomtrica de las variables duales

 Variables de holgura:
 Distancia por exceso (valor negativo) o defecto (valor positivo) a cada
restriccin de desigualdad

 Variables artificiales:
 Distancia por exceso (valor negativo) o defecto (valor positivo) a cada
restriccin de igualdad

 Costes reducidos:
 Derivadas direccionales de las variables
 Proyeccin del gradiente de la funcin objetivo sobre el eje de la
variable correspondiente

 Variables duales:
 Costes reducidos de las variables de holgura y de las variables
artificiales
 Proyeccin del gradiente de la funcin objetivo sobre el vector
ortogonal
a la restriccin correspondiente
ESCUELA TCNICA
SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 96

Ejemplo 2
 Se introduce una nueva restriccin que pasa por el ptimo
9

max z =

2x+y=12

x, y

3
x+ y
4

x
+ y6
3
2 x + y 12

z=7.5

11
x+ y7
18

(3.6,4.8)
4

x/3+y=6
2

11x/18+y=7

0
2
4
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

6
x

10

12
Optimizacin lineal - 97

Tabla de mtodo simplex


x

-0.75

-1

0.33

0.611

1
1

12

12

A) elijo v como VBS


1

-0.42

0.333

18

1.667

-1

3.6

0.278

-1

3.6

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

0.75

0.25

7.5

1.2

-0.2

4.8

-0.6

0.6

3.6

-0.83

-0.17

B) elijo w como
VBS
z

-0.5

1.5

7.5

2.2

-1.2

4.8

-6

-3.6

3.6

3.6

0.1

0.9

7.5

-0.44

1.44

4.8

0.2

-1.2

0.72

-0.72

3.6

Optimizacin lineal - 98

Degeneracin en primal
 En el problema anterior, el punto (3.6,4.8) queda determinado
por cualquier pareja de las tres restricciones.
 Hay 5 variables (2 originales y 3 de holgura). Como hay 3
restricciones hay 3 variables bsicas con valores x=3.6, y=4.8
y u=0 v=0 w=0, pero slo una. Luego, hay una variable
bsica con valor 0 (solucin degenerada).
 Degeneracin en primal es igual a mltiples ptimos en dual.
Estos valores son soluciones ptimas del dual y, a priori, se
podra obtener cualquiera de ellas.
( 1 , 2 , 3 ) = (0,0.1,0.9)

( 1 , 2 , 3 ) = (0.75,0.25,0)

 El primal tiene una regin factible menor (por tener una


restriccin ms), luego el dual tiene regin factible mayor
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 99

Problema primal o dual: cul de los dos se resuelve?


 Tiempo de solucin por mtodo simplex revisado m3
 Nmero de iteraciones por mtodo simplex revisado 2m
 Si m<<n resolver el problema primal
 Si m>>n resolver el problema dual
1. pasar del primal al dual
2. resolver el dual
3. pasar del dual al primal

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 100

CONTENIDO
INTRODUCCIN
MTODO SIMPLEX
ADDITIONAL DEVELOPMENTS (master)
DUALIDAD
 ANLISIS DE SENSIBILIDAD
INTERIOR POINT METHOD (master)
COMPARISON AMONG CPLEX ALGORITHMS
(master)

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 101

Anlisis de sensibilidad
 Efectos sobre la solucin ptima debidos a cambios en aij, bi
y c j.
 NO se hace aplicando de nuevo el mtodo simplex.
 Procedimiento completo:
 y* , B 1* no cambian aunque cambien b , c y A
 bb c c A A
 se recalcula la tabla final para los nuevos valores b , c y A o de forma
incremental
 slo se efectan los cambios asociados a los cambios en los elementos
correspondientes de b , c y A
 preparacin de la tabla del simplex para resolver por eliminacin de
Gauss
 prueba de factibilidad (todas las variables bsicas no negativas)
 prueba de optimalidad (coeficientes no negativos en ecuacin 0)
ESCUELA TCNICA SUPERIOR DE INGENIERA
 nueva iteracin del simplex
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 102

Cambios en cotas de restricciones (i)


 Nueva funcin objetivo z = yT b
 Nuevos valores de las soluciones ptimas

b = B 1b

 Puede afectar la factibilidad de la solucin

 Caso ejemplo habitual


 Variables duales

y* = 1.5 1

 Inversa de la matriz base

1 0.33 0.33
B1* = 0.5

0.33 0.33

 Cambio de cotas de las restricciones

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

bb

4 4
12 24

18 18
Optimizacin lineal - 103

Cambios en cotas de restricciones (ii)


 Nueva funcin objetivo z = yT b = 1.5

 Nuevos valores de las soluciones ptimas

x3 6
x = 12
2 2
x1

4
1 24 = 54
18

1 0.33 0.33 4 6
b = B1b = 0.5
24 = 12

18 2
0.33 0.33

 INFACTIBLE por variable bsica negativa, se aplica el


mtodo simplex dual
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 104

Intervalo de valores factibles de bi


 Intervalo de valores para los que la solucin bsica factible
ptima se mantiene factible cambiando nicamente el valor de
bi en el problema.

2 0.33
= 6 + 0.5 b2 0
2 0.33

2 + 0.33b2 = 0

b2 = 2 / 0.33 = 6

6 + 0.5b2 = 0

b2 = 6 / 0.5 = 12

2 0.33b2 = 0

b2 = 2 / 0.33 = 6

6 b2 6
b2 = 12 + b2
6 b2 18
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 105

Cambio en coeficiente de una variable no bsica


 Coeficientes de xj:
cj, a1j, a2j, , amj,
 cj cj N j N j
columna j de la matriz A
 NO afectan la factibilidad de la solucin.
 cNT cTB B 1 N
coeficientes de xj en la f.o.
 B 1 N
coeficientes de xj en las restricciones
 ptima?
 En primal y N j c j 0
m

 En dual

a
i =1

ij

yi c j

siendo j conocida

 Si no es ptima xj es la variable bsica entrante nueva y se


sigue con el simplex.
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 106

Intervalo de valores de optimalidad de cj


 Intervalo de valores de cj para que la solucin siga siendo
ptima cambiando nicamente cj.
cNT = cNT cTB B 1 N 0

 Coste reducido de la variable no bsica xj

c j c j z j

 mnima cantidad que tiene que reducirse el coste de xj para que


interese realizar esa actividad (incrementar desde 0).
 mximo incremento permisible de cj para mantener la solucin bsica
factible como ptima.

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 107

Introduccin de una nueva variable


 Se supone que la nueva variable xj a introducir ya estaba en el
problema original y tena todos sus coeficientes = 0 (y todava
los son en la tabla final) y que xj es una variable no bsica.
 Este cambio se convierte en cambio del coeficiente de una
variable no bsica.

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 108

Cambio en coeficiente de variable bsica


 Difiere del caso de variable no bsica porque requiere poner la
tabla del simplex en forma adecuada para eliminacin
gaussiana (coeficientes 1 en fila correspondiente y 0 en el
resto).
 Esto puede causar prdida de factibilidad (mtodo simplex
dual) y/o optimalidad (mtodo simplex).

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 109

Introduccin de nueva restriccin


 Se comprueba si se satisface para la solucin ptima.
1. Si lo hace, sta sigue siendo ptima.
2. Si no, se introduce la restriccin en la tabla final del simplex con la
variable de holgura, por exceso o artificial necesaria que se toma
como variable bsica.
Se prepara la tabla para eliminacin gaussiana y se sigue el mtodo
simplex dual.

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 110

Mtodo simplex dual


 Opera en el primal como si el mtodo simplex se aplicara
simultneamente al dual.
 Se utilizar:
 Cuando se necesita introducir muchas variables artificiales para
construir una solucin bsica factible inicial
 En anlisis de sensibilidad

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 111

Comparacin entre simplex primal y dual


 Mtodo simplex dual: se mueve por fuera de la regin factible con valor de la f.o.
mejores que en el ptimo. Entra en la regin factible y al mismo tiempo consigue
optimalidad.

Mtodo Simplex Primal

Mtodo Simplex Dual

Maneja soluciones bsicas factibles y se Maneja soluciones bsicas que satisfacen la


mueve hacia la solucin ptima (trata de condicin de optimalidad (dual) y se mueve
hacia la solucin ptima tratando de
satisfacer la condicin de optimalidad)
conseguir factibilidad (dual)
Columna derecha >= 0

Ecuacin f.o. >= 0

Ecuacin f.o. < 0 (excepto en el ptimo)

Columna derecha < 0 (excepto en el ptimo)

Variable bsica saliente

Variable bsica entrante del dual

Variable negativa de mayor valor absoluto

Mayor coeficiente negativo en f.o. del dual

Variable bsica entrante

Variable bsica saliente del dual

Coef ecuacin de f.o. que antes alcanza 0

Variable del dual que alcanza 0

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 112

Mtodo simplex dual


1.

Inicializacin
Problema en forma estndar (min, restricciones tipo =, variables )
Solucin bsica inicial cuyas variables bsicas tienen coeficientes 0 en la
ecuacin f.o. y las no bsicas coeficientes 0.

2.

Prueba de optimalidad
Comprobar si variables bsicas 0. S solucin ptima. NO siguiente
iteracin

3.

Siguiente iteracin
 Determinar variable bsica saliente (fila pivote): variable bsica negativa con
mayor valor absoluto
 Determinar variable bsica entrante (columna pivote): variable no bsica cuyo
coeficiente en la ecuacin de f.o. alcanza antes 0.
 Se comprueba entre las variables no bsicas con coeficiente < 0 en fila pivote y
se selecciona el menor cociente entre su coeficiente en la ecuacin de la f.o. y esa
fila.
c j z j

min
: ykj < 0
y
kj

 Si no hay ningn elemento < 0 en la fila pivote el problema dual es no acotado y,


por tanto, el primal es infactible.
ESCUELA
TCNICA
SUPERIOR DE INGENIERA
Determinar
la nueva solucin bsica: preparacin para resolver por eliminacin
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL
Optimizacin lineal - 113
gaussiana.

CONTENIDO
INTRODUCCIN
MTODO SIMPLEX
ADDITIONAL DEVELOPMENTS (master)
DUALIDAD
ANLISIS DE SENSIBILIDAD
 INTERIOR POINT METHOD (master)
COMPARISON AMONG CPLEX ALGORITHMS
(master)

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 114

Propiedad de complementariedad de holguras


 Primal (P)

min z = cT x
Ax = b

x0

 Dual (D)

max y0 = bT y

AT y + s = c
s0

 Propiedad de complementariedad de holguras para la solucin


ptima x j s j = 0 j = 1,, n

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 115

Mtodo de punto interior primal-dual (i)


 Moverse por una secuencia de soluciones estrictamente factibles en
problemas primal y dual tratando de que se verifiquen las condiciones de
complementariedad de holguras.
 Especficamente, se trata de encontrar x ( ) , y ( ) y s( ) para > 0 que
satisfagan
Ax = b
x0

(m + n)

A y+s=c
T

s0
x jsj =

ecuaciones lineales de factibilidad

ecuaciones no lineales de complementariedad

 El parmetro se va reduciendo hasta lograr la convergencia. Mientras > 0


la condicin x j s j = implica que x > 0 y s > 0 , es decir, que ambos son
puntos estrictamente factibles. Reduccin del intervalo de dualidad (duality
gap) hasta alcanzar el valor cero en la solucin ptima cT x bT y = xT s = n
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 116

Mtodo de punto interior primal-dual. Mtodo de


Newton (ii)
 Mtodo de Newton de resolucin de sistemas de ecuaciones
no lineales x k +1 x k + x k
y k +1 y k + y k
s k +1 s k + s k

 Encontrar direcciones de movimiento x k , y k y s k que


garantizan estricta factibilidad x k > 0 , s k > 0
A ( x k + x k ) = b

AT ( y k + y k ) + s k + s k = c

Ax k = 0

AT y k + s k = 0

x kj +1s kj +1 = ( x kj + x kj )( s kj + s kj ) = k +1 s kj x kj + x kj s kj + x kj s kj = k +1 x kj s kj

 Linealizacin: si incrementos son pequeos x kj s kj es


despreciable tenemos un sistema de ecuaciones lineales
s kj x kj + x kj s kj = k +1 x kj s kj
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 117

Mtodo de punto interior primal-dual. Sistema de


ecuaciones en incrementos (iii)
 Denominamos X = diag(x ),
x = Xe
s = Se

S x + X s = e XSe
Ax = 0

S = diag(s )

e = (1 1)

XSe = e

(m+2n) sistema de ecuaciones lineales

AT y + s = 0

 El parmetro se elige en cada iteracin

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 118

Mtodo de punto interior primal-dual. Clculo de


incrementos (iv)
 A partir de la tercera ecuacin s = AT y
 Sustituyendo en la primera S x XAT y = e XSe
 Premultiplicando por AS 1 y aprovechando que Ax = 0 se
calcula y
AS 1 XAT y = AS 1 ( e XSe)

 Definiendo D S 1 X y v( ) = e XSe se calculan s e x


ADAT y = AS 1v ( )
s = AT y
x = S 1v ( ) Ds

 Coste computacional asociado a la resolucin del sistema de


ecuaciones de clculo de y , ya que ADAT es ms densa que A
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 119

Mtodo de punto interior primal-dual. Iteracin (v)


1.
2.
3.
4.

Se parte de solucin estrictamente factible x k > 0 y k s k > 0


Se calculan las direcciones de movimiento x k y k s k
Se calculan las nuevas soluciones x k + x k y k + y k s k + s k
Se reduce el valor del parmetro k +1 = k k k [0,1]
 La disminucin puede ser muy rpida siempre que se mantenga
estricta factibilidad
 Hay que garantizar que intervalo de dualidad disminuye
x kj +1s kj +1 = ( x kj + x kj )( s kj + s kj ) = k +1

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 120

Desarrollos adicionales
 Mantenimiento de estricta factibilidad
 Solucin inicial infactible
 Mtodo primal-dual predictivo correctivo

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 121

Mtodo de punto interior primal-dual. Estricta


factibilidad y cotas de variables (vi)
 Garantizar estricta factibilidad: parmetros de longitud de paso
x ( P , ) = x + P x
y ( D , ) = y + D y
s( D , ) = s + D s

P = min ( x j x j )
x j < 0

D = min ( s j s j )
s j < 0

 Estrategia habitual: longitud de paso nica

= min( P , D )

x j + x j 0
s j + s j 0

 Condicin de centralidad (path following)


C k = {( x, s ) : x j s j k , j = 1,, n}

( xk , sk ) C k

(0,1)

 Valores adecuados de parmetros , y imprescindibles


para comportamiento robusto del mtodo
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 122

Mtodo de punto interior primal-dual. Solucin inicial


infactible (vii)
 Hasta ahora se parta de solucin estrictamente factible en
primal y dual
 No vale la solucin bsica factible del mtodo simplex
 Se aaden residuos en las ecuaciones
A ( x k + x k ) = b

Ax k = b Ax k rP

AT ( y k + y k ) + s k + s k = c

AT y k + s k = c ( AT y k + s k ) rD

S x + X s = e XSe v ( )
Ax = b Ax rP
AT y + s = c AT y s rD
y = ( ADAT ) 1 AS 1v ( ) ADrD rP
s = AT y + rD
x = S 1v ( ) Ds

 Hay que dar prioridad a la disminucin de infactibilidades


sobre la disminucin del intervalo de dualidad

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 123

Mtodo de punto interior primal-dual predictivo


correctivo (viii)
 Diseado para no ignorar los trminos de segundo orden x j s j
 Etapa predictiva o afn: se calculan los incrementos segn
ecuaciones anteriores
S x + X s = e XSe v ( )
Ax = b Ax rP

AT y + s = c AT y s rD

 Etapa correctiva: se introducen los valores calculados en la


etapa anterior
S x + X s = e XSe X Se v ( )
Ax = b Ax rP
AT y + s = c AT y s rD

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

X = diag( x )
S = diag( s )

Optimizacin lineal - 124

Mtodo de punto interior primal-dual (ix)


 Los mtodos de punto interior no producen soluciones bsicas
ptimas. Por ello cuando llegan al ptimo se suele realizar un
proceso de permutacin (crossover) para determinar la
solucin bsica ptima.
 En el mtodo de punto interior el tiempo de ejecucin depende
principalmente del nmero de elementos (densidad) de la
matriz de restricciones.

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 125

Caso ejemplo
6

min x1 + x2

2 x1 + x2 2
x1 + 2 x2 6

x1 2 x2 5

x2

x1 + 2 x2 10
3

x1 x2 4
x1 , x2 0

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

3
x1

Optimizacin lineal - 126

Puntos iniciales infactibles


1
4.8
4.72
3.09
1.52
0.49
0.2
0.2
0.2
0.2
0.2
0.2
0.2

4
4.27
4.19
1.53
0.76
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2

(4,4)
4

x2

x2

1
2.19
2.18
1.42
1.77
2.27
2.4
2.4
2.4
2.4
2.4
2.4
2.4

k +1 = k /10

4
1.74
1.74
1.74
2.13
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4

(1,1)
0

3
x1

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

0
0

3
x1

Optimizacin lineal - 127

Puntos iniciales factibles


4
4.29
4.21
2.27
1.03
0.21
0.2
0.2
0.2
0.2
0.2
0.2
0.2

2
4.44
4.36
1.59
0.83
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2

(2,4)
4

x2

x2

2
1.88
1.88
1.59
2.02
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4

k +1 = k /10

4
1.75
1.75
1.7
2.09
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4

(4,2)
2

3
x1

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

3
x1

Optimizacin lineal - 128

Puntos iniciales factibles

(2,4)

x2

3
x1

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

4
1.75
1.85
2.54
2.21
1.6
1.9
2.28
2.33
2.4
2.38
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4
2.4

k +1 = k / 20
2
4.44
4.38
3.29
1.37
0.39
0.21
0.2
0.2
0.2
0.2

(2,4)
4

x2

k +1 = k / 2

2
4.44
4.22
1.35
2.21
2.17
1.75
0.59
0.46
0.24
0.26
0.2
0.22
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2

4
1.75
1.74
1.59
1.94
2.34
2.41
2.4
2.4
2.4
2.4

3
x1

Optimizacin lineal - 129

Convergencia
120

100

k +1 = k /10

Daulity Gap

80

60

40

20

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

6
iteraciones

10

12

Optimizacin lineal - 130

Actualizacin de


es una aproximacin del intervalo de dualidad.

x kj +1s kj +1 = ( x kj + x kj )( s kj + s kj ) = k +1

 Si su valor se decrementa muy rpidamente se puede perder


convergencia. El intervalo de dualidad puede incluso
aumentar.
 Si su valor se decrementa muy lentamente se requieren
muchas iteraciones.
 Factores entre iteraciones sucesivas de 0.7 a 0.9 (en funcin
del nmero de variables del primal) garantizan la
convergencia.

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 131

CONTENIDO
INTRODUCCIN
MTODO SIMPLEX
ADDITIONAL DEVELOPMENTS (master)
DUALIDAD
ANLISIS DE SENSIBILIDAD
INTERIOR POINT METHOD (master)
 COMPARISON AMONG CPLEX ALGORITHMS
(master)

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 132

Cul es el mejor algoritmo?


 CPLEX 10.0
 Simplex primal gana el 15 % de las veces
 Simplex dual gana el 36 % de las veces
 Punto interior gana el 39 % de las veces
 Combinacin de los anteriores gana un 10 % de las veces

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Optimizacin lineal - 133

Das könnte Ihnen auch gefallen