Escolar Documentos
Profissional Documentos
Cultura Documentos
Método SIMPLEX
MLG521
MLG521
Método SIMPLEX
Programación Lineal
Variables de Holgura
Variables de Holgura
Variables de Holgura
Soluciones Básicas
xB = B −1 b y xB ≥ 0.
Soluciones Básicas
xB = B −1 b y xB ≥ 0.
Soluciones Básicas
xB = B −1 b y xB ≥ 0.
Soluciones Básicas
xB = B −1 b y xB ≥ 0.
Soluciones Básicas
xB = B −1 b y xB ≥ 0.
Soluciones Básicas
xB = B −1 b y xB ≥ 0.
Puntos extremos
Teorema
Sea P = {x ∈ Rn : AX = b, x ≥ 0} un poliedro. Entonces:
Puntos extremos
Teorema
Sea P = {x ∈ Rn : AX = b, x ≥ 0} un poliedro. Entonces:
Puntos extremos
Teorema
Sea P = {x ∈ Rn : AX = b, x ≥ 0} un poliedro. Entonces:
Costos reducidos
Llamemos R a la matriz B −1 R y b a B −1 b. Entonces
xB = b − RxR .
Definimos los costos reducidos como crt = cRt − cBt B −1 R. Luego se tiene
que la función objetivo queda de la forma:
cBt b + crt xR
Costos reducidos
Llamemos R a la matriz B −1 R y b a B −1 b. Entonces
xB = b − RxR .
Definimos los costos reducidos como crt = cRt − cBt B −1 R. Luego se tiene
que la función objetivo queda de la forma:
cBt b + crt xR
Costos reducidos
Llamemos R a la matriz B −1 R y b a B −1 b. Entonces
xB = b − RxR .
Definimos los costos reducidos como crt = cRt − cBt B −1 R. Luego se tiene
que la función objetivo queda de la forma:
cBt b + crt xR
Costos reducidos
Llamemos R a la matriz B −1 R y b a B −1 b. Entonces
xB = b − RxR .
Definimos los costos reducidos como crt = cRt − cBt B −1 R. Luego se tiene
que la función objetivo queda de la forma:
cBt b + crt xR
Costos reducidos
Llamemos R a la matriz B −1 R y b a B −1 b. Entonces
xB = b − RxR .
Definimos los costos reducidos como crt = cRt − cBt B −1 R. Luego se tiene
que la función objetivo queda de la forma:
cBt b + crt xR
Criterio de Optimalidad
Solución óptima
Si una solución básica factible tiene sus costos reducidos positivos
entonces es una solución óptima.
¿Qué ocurre si existe una coordenada negativa?
Método SIMPLEX
Criterio de Optimalidad
Solución óptima
Si una solución básica factible tiene sus costos reducidos positivos
entonces es una solución óptima.
¿Qué ocurre si existe una coordenada negativa?
Método SIMPLEX
Criterio de Optimalidad
Solución óptima
Si una solución básica factible tiene sus costos reducidos positivos
entonces es una solución óptima.
¿Qué ocurre si existe una coordenada negativa?
Método SIMPLEX
Solución Adyacente
xB = b − R ·j
Solución Adyacente
xB = b − R ·j
Solución Adyacente
xB = b − R ·j
Solución Adyacente
Solución adyacente
La solución xB∗ = b − R ·j max es una solución básica factible adyacente a
xB .
Note que la nueva base corresponde a agregar la columna j y eliminar la
columna i donde se alcanza el max .
Método SIMPLEX
SIMPLEX
SIMPLEX
SIMPLEX
SIMPLEX
SIMPLEX
SIMPLEX
SIMPLEX
Ejemplo
(6,0) (2,6)
11111111
00000000
(4,6)
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111 (4,3)
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111 (4,0)
Método SIMPLEX
Ejemplo
(6,0) (2,6)
11111111
00000000
(4,6)
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111 (4,3)
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111 (4,0)
Método SIMPLEX
Ejemplo
11111111
00000000
(4,6) s.a
00000000
11111111
00000000
11111111
x1 ≤ 4
00000000
11111111 x2 ≤ 6
00000000
11111111
00000000
11111111 (4,3)
3x1 + 2x2 ≤ 18
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111 (4,0)
Método SIMPLEX
Ejemplo
11111111
00000000
(4,6) s.a
00000000
11111111
00000000
11111111
x1 + s1 = 4
00000000
11111111 x2 + s2 = 6
00000000
11111111
00000000
11111111 (4,3)
3x1 + 2x2 + s3 = 18
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111 (4,0)
Método SIMPLEX
Ejemplo
(6,0) (2,6)
x1 + s1 = 4
11111111
00000000
(4,6)
x2 + s2 = 6
00000000
11111111
00000000
11111111
3x1 + 2x2 + s3 = 18
00000000
11111111
00000000
11111111
00000000
11111111 (4,3)
1 0 1 0 0
00000000
11111111
00000000
11111111
A = 0 1 0 1 0
00000000
11111111
3 2 0 0 1
00000000
11111111
00000000
11111111 (4,0)
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible Min − 3x1 − 5x2
asociada xB = B −1 b. s.a
3. ¿Es factible?
x1 + s1 = 4
4. Calcular costos reducidos x2 + s2 = 6
cr = cRt − cBt B −1 R. 3x1 + 2x2 + s3 = 18
5. ¿Es óptimo?.
6. Determinar columna que entra
a la base, es decir j, tal que 1 0 0
cj = mini ci . B = 0 1 0
3 2 1
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible Min − 3x1 − 5x2
asociada xB = B −1 b. s.a
3. ¿Es factible?
x1 + s1 = 4
4. Calcular costos reducidos x2 + s2 = 6
cr = cRt − cBt B −1 R. 3x1 + 2x2 + s3 = 18
5. ¿Es óptimo?.
6. Determinar columna que entra
a la base, es decir j, tal que 1 0 0
cj = mini ci . B −1 = 0 1 0
−3 −2 1
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b.
3. ¿Es factible? 1 0 0
4. Calcular costos reducidos B −1 = 0 1 0
cr = cRt − cBt B −1 R. −3 −2 1
5. ¿Es óptimo?.
4
6. Determinar columna que entra xB = B −1 b = 6
a la base, es decir j, tal que −6
cj = mini ci .
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b.
3. ¿Es factible?
4. Calcular costos reducidos
4
cr = cRt − cBt B −1 R.
xB = B −1 b = 6
5. ¿Es óptimo?. −6
6. Determinar columna que entra
a la base, es decir j, tal que
cj = mini ci .
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
(6,0) (2,6)
11111111
00000000
(4,6)
4
00000000
11111111
00000000
11111111
xB = B −1 b = 6
00000000
11111111 −6
00000000
11111111
00000000
11111111 (4,3)
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111
00000000
11111111 (4,0)
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b.
3. ¿Es factible?
4. Calcular costos reducidos
1 0 1 0 0
cr = cRt − cBt B −1 R.
A = 0 1 0 1 0
5. ¿Es óptimo?. 3 2 0 0 1
6. Determinar columna que entra
a la base, es decir j, tal que
cj = mini ci .
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b.
1 0 1 0 0
3. ¿Es factible?
A = 0 1 0 1 0
4. Calcular costos reducidos 3 2 0 0 1
cr = cRt − cBt B −1 R.
5. ¿Es óptimo?.
0 1 0
6. Determinar columna que entra B = 1 0 0
a la base, es decir j, tal que 2 0 1
cj = mini ci .
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b.
3. ¿Es factible? 0 1 0
4. Calcular costos reducidos B = 1 0 0
cr = cRt − cBt B −1 R. 2 0 1
5. ¿Es óptimo?.
0 1 0
6. Determinar columna que entra B −1 = 1 0 0
a la base, es decir j, tal que 0 −2 1
cj = mini ci .
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b.
3. ¿Es factible?
4. Calcular costos reducidos
6
cr = cRt − cBt B −1 R.
xB = B −1 b = 4
5. ¿Es óptimo?. 6
6. Determinar columna que entra
a la base, es decir j, tal que
cj = mini ci .
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
6
1. Determinar B y calcular B −1 . xB = B −1 b = 4
2. Calcular solución básica factible 6
asociada xB = B −1 b.
3. ¿Es factible?
4. Calcular costos reducidos
cr = cRt − cBt B −1 R.
5. ¿Es óptimo?. (6,0) (2,6)
11111111
00000000
(4,6)
Ejemplo
1. Determinar B y calcular B −1 .
1 0 1 0 0
2. Calcular solución básica factible
asociada xB = B −1 b. A = 0 1 0 1 0
3 2 0 0 1
3. ¿Es factible?
4. Calcular costos reducidos
cr = cRt − cBt B −1 R. cr = −3 0
5. ¿Es óptimo?.
0 1 0 1 0
6. Determinar columna que entra − −5 0 0 1 0 0 0 1
a la base, es decir j, tal que 0 −2 1 3 0
cj = mini ci .
7. Determinar la columna que sale. cr = −3 5
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
1 0 1 0 0
2. Calcular solución básica factible
asociada xB = B −1 b. A = 0 1 0 1 0
3 2 0 0 1
3. ¿Es factible?
4. Calcular costos reducidos
cr = cRt − cBt B −1 R. cr = −3 0
5. ¿Es óptimo?.
0 1 0 1 0
6. Determinar columna que entra − −5 0 0 1 0 0 0 1
a la base, es decir j, tal que 0 −2 1 3 0
cj = mini ci .
7. Determinar la columna que sale. cr = −3 5
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
1 0 1 0 0
2. Calcular solución básica factible
A = 0 1 0 1 0
asociada xB = B −1 b.
3 2 0 0 1
3. ¿Es factible?
4. Calcular costos reducidos
cr = cRt − cBt B −1 R. cr = −3 0
5. ¿Es óptimo?.
0 1 0 1 0
6. Determinar columna que entra − −5 0 0 1 0 0 0 1
a la base, es decir j, tal que 0 −2 1 3 0
cj = mini ci .
7. Determinar la columna que sale. cr = −3 5
8. Volver a (1). Entra variable x1
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b. 1 0 1 0 0
3. ¿Es factible? A = 0 1 0 1 0
3 2 0 0 1
4. Calcular costos reducidos
cr = cRt − cBt B −1 R.
5. ¿Es óptimo?. A1 = B −1 A1
6. Determinar columna que entra
0 1 0 1 0
a la base, es decir j, tal que = 1 0 0 0 = 1
cj = mini ci . 0 −2 1 3 3
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
6
2. Calcular solución básica factible xB = B −1
b = 4
asociada xB = B −1 b. 6
3. ¿Es factible?
4. Calcular costos reducidos
cr = cRt − cBt B −1 R. A1 = B −1 A1
5. ¿Es óptimo?. 0 1 0 1 0
= 1 0 0 0 = 1
6. Determinar columna que entra
0 −2 1 3 3
a la base, es decir j, tal que
cj = mini ci .
4 6
min , =2
7. Determinar la columna que sale. 1 3
8. Volver a (1). Luego sale la variable s3 .
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b.
0 1 0
3. ¿Es factible?
B = 1 0 0
4. Calcular costos reducidos 2 0 1
cr = cRt − cBt B −1 R.
5. ¿Es óptimo?.
0 1 1
6. Determinar columna que entra B 0 = 1 0 0
a la base, es decir j, tal que 2 0 3
cj = mini ci .
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b.
3. ¿Es factible? 0 1 1
4. Calcular costos reducidos B 0 = 1 0 0
cr = cRt − cBt B −1 R. 2 0 3
5. ¿Es óptimo?.
0 1 0
6. Determinar columna que entra B 0−1 = 1 2/3 −1/3
a la base, es decir j, tal que 0 −2/3 1/3
cj = mini ci .
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b.
3. ¿Es factible?
4. Calcular costos reducidos
6
cr = cRt − cBt B −1 R.
xB 0 = B 0−1 b = 2
5. ¿Es óptimo?. 2
6. Determinar columna que entra
a la base, es decir j, tal que
cj = mini ci .
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
6
1. Determinar B y calcular B −1 . xB 0 = B 0−1 b = 2
2. Calcular solución básica factible 2
asociada xB = B −1 b.
3. ¿Es factible?
4. Calcular costos reducidos
cr = cRt − cBt B −1 R.
5. ¿Es óptimo?. (6,0) (2,6)
11111111
00000000
(4,6)
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b. 1 0 1 0 0
A = 0 1 0 1 0
3. ¿Es factible?
3 2 0 0 1
4. Calcular costos reducidos
cr = cRt − cBt B −1 R.
5. ¿Es óptimo?. cr = 0 0 −
6. Determinar columna que entra
a la base, es decir j, tal que 0 1
2
0
−1
0 0
−5 0 −3 1 3 3 0 1
cj = mini ci . 0 −2 1
1 0
3 3
7. Determinar la columna que sale.
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
1 0 1 0 0
2. Calcular solución básica factible
A = 0 1 0 1 0
asociada xB = B −1 b.
3 2 0 0 1
3. ¿Es factible?
4. Calcular costos reducidos
cr = cRt − cBt B −1 R. cr = 0 0 −
5. ¿Es óptimo?.
0 1
2
0
−1
0 0
6. Determinar columna que entra −5 0 −3 1 3 3 0 1
a la base, es decir j, tal que −2 1
0 3 3
1 0
cj = mini ci .
7. Determinar la columna que sale. cr = 1 7
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
1 0 1 0 0
2. Calcular solución básica factible
A = 0 1 0 1 0
asociada xB = B −1 b.
3 2 0 0 1
3. ¿Es factible?
4. Calcular costos reducidos
cr = cRt − cBt B −1 R. cr = 0 0 −
5. ¿Es óptimo?.
0 1
2
0
−1
0 0
6. Determinar columna que entra −5 0 −3 1 3 3 0 1
a la base, es decir j, tal que −2 1
0 3 3
1 0
cj = mini ci .
7. Determinar la columna que sale. cr = 1 7
8. Volver a (1).
Método SIMPLEX
Ejemplo
1. Determinar B y calcular B −1 .
2. Calcular solución básica factible
asociada xB = B −1 b.
3. ¿Es factible?
(6,0) (2,6)
11111111
00000000
(4,6)
4. Calcular costos reducidos
cr = cRt − cBt B −1 R.
00000000
11111111
00000000
11111111
00000000
11111111
5. ¿Es óptimo?.
6. Determinar columna que entra
a la base, es decir j, tal que
00000000
11111111
00000000
11111111 (4,3)
cj = mini ci . 00000000
11111111
00000000
11111111
7. Determinar la columna que sale. 00000000
11111111
00000000
11111111
8. Volver a (1).
00000000
11111111 (4,0)
Método SIMPLEX
Interpretación soluciones
Interpretación soluciones
Interpretación soluciones
Eficiencia Computacional
Eficiencia Computacional
Eficiencia Computacional
Eficiencia Computacional
Eficiencia Computacional
Ejemplo
Ejemplo
Ejemplo
Ejemplo
Ejemplo
Ejemplo
I El problema original admite
solución fáctible si y sólo si el
valor óptimo del problema de
Fase I es 0.
I Si la base óptima de Fase I no
contiene variables artificiales Min t1
encontramos una solución s.a
básica factible para el problema
original. x1 + x2 + s1 = 10
2x1 + x2 − s 2 + t1 = 4
I Si la base óptima de Fase I
x1 , x2 , s 1 , s 2 t1 ≥ 0
contiene variables artificiales,
estamos en una solución
degenerada y debemos tratar de
cambiarla por una variable del
problema original.
Método SIMPLEX
Dualidad
s.a
x1 + 4x2 ≤ 1
3x1 − x2 + x3 ≤ 3
x1 , x2 , x3 ≥ 0
Método SIMPLEX
Dualidad
s.a
x1 + 4x2 ≤ 1
3x1 − x2 + x3 ≤ 3
x1 , x2 , x3 ≥ 0
I Se tiene que (1, 0, 0) es una solución fáctible, por lo tanto, si
evaluamos la función objetivo en este punto ( 4 ) obtenemos una
cota inferior del valor óptimo.
I ¿Podemos mejorar la cota?
Método SIMPLEX
Dualidad
s.a
x1 + 4x2 ≤ 1
3x1 − x2 + x3 ≤ 3
x1 , x2 , x3 ≥ 0
I ¿Podemos encontrar cotas superiores de la función objetivo?
Método SIMPLEX
Dualidad
I Dado el siguiente problema:
s.a
x1 + 4x2 ≤ 1
3x1 − x2 + x3 ≤ 3
x1 , x2 , x3 ≥ 0
I ¿Podemos encontrar cotas superiores de la función objetivo?
I Usemos las restricciones. Sean y1 , y2 ≥ 0. Luego:
y1 (x1 + 4x2 ) ≤ y1
y2 (3x1 − x2 + x3 ) ≤ 3y2
Método SIMPLEX
Dualidad
I Dado el siguiente problema:
s.a
x1 + 4x2 ≤ 1
3x1 − x2 + x3 ≤ 3
x1 , x2 , x3 ≥ 0
I Usemos las restricciones. Sean y1 , y2 ≥ 0. Luego:
y1 (x1 + 4x2 ) ≤ y1
y2 (3x1 − x2 + x3 ) ≤ 3y2
Dualidad
I Dado el siguiente problema:
s.a
x1 + 4x2 ≤ 1
3x1 − x2 + x3 ≤ 3
x1 , x2 , x3 ≥ 0
I Sumando obtenemos que:
(y1 + 3y2 ) ≥ 4
(4y1 − y2 ) ≥ 1
y2 ≥ 3
Método SIMPLEX
Dualidad
I Dado el siguiente problema:
Max 4x1 + x2 + 3x3
s.a
x1 + 4x2 ≤ 1
3x1 − x2 + x3 ≤ 3
x1 , x2 , x3 ≥ 0
I Sumando obtenemos que:
(y1 + 3y2 )x1 + (4y1 − y2 )x2 + y2 x3 ≤ y1 + 3y2
I Si imponemos las condiciones:
(y1 + 3y2 ) ≥ 4
(4y1 − y2 ) ≥ 1
y2 ≥ 3
I Se tiene que:
4x1 + x2 + 3x3 ≤ y1 + 3y2
Método SIMPLEX
Dualidad
I Dado el siguiente problema:
Max 4x1 + x2 + 3x3
s.a
x1 + 4x2 ≤ 1
3x1 − x2 + x3 ≤ 3
x1 , x2 , x3 ≥ 0
I Sumando obtenemos que:
(y1 + 3y2 )x1 + (4y1 − y2 )x2 + y2 x3 ≤ y1 + 3y2
I Si imponemos las condiciones:
(y1 + 3y2 ) ≥ 4
(4y1 − y2 ) ≥ 1
y2 ≥ 3
I Se tiene que:
4x1 + x2 + 3x3 ≤ y1 + 3y2
Método SIMPLEX
Dualidad
I Dado el siguiente problema:
Max 4x1 + x2 + 3x3
s.a
x1 + 4x2 ≤ 1
3x1 − x2 + x3 ≤ 3
x1 , x2 , x3 ≥ 0
I Si queremos la mejor cota debemos resolver el problema dual:
Min y1 + 3y2
s.a.
(y1 + 3y2 ) ≥ 4
(4y1 − y2 ) ≥ 1
y2 ≥ 3
y1 , y − 2, y3 ≥ 0
Método SIMPLEX
Transformaciones primal-dual
Transformaciones primal-dual
Transformaciones primal-dual
Transformaciones primal-dual
Transformaciones primal-dual
Transformaciones primal-dual
Transformaciones primal-dual
Transformaciones primal-dual
Teoremas de dualidad
Teorema Debil
Si el problema primal es de maximización, entonces para todo x solución
fáctible del primal y y solución fácrible de dual se tiene que:
z(x) ≤ z 0 (y )
Teorema Fuerte
El primal tiene solución óptima si y sólo si el dual tiene solución óptima.
Mas aún, el valor óptimo es el mismo para ambos problemas.
Método SIMPLEX
Teoremas de dualidad
Teorema Debil
Si el problema primal es de maximización, entonces para todo x solución
fáctible del primal y y solución fácrible de dual se tiene que:
z(x) ≤ z 0 (y )
Teorema Fuerte
El primal tiene solución óptima si y sólo si el dual tiene solución óptima.
Mas aún, el valor óptimo es el mismo para ambos problemas.