Está en la página 1de 32

Análisis de Sensibilidad Formulas Importantes

Universidad Católica Andrés Bello Facultad de Ingeniería


Asignatura: Programación Lineal Profesor: Ing. Luz E. Medina C.

Análisis de Sensibilidad
El análisis de sensibilidad es muy útil por varias razones, por ejemplo, los valores de los parámetros de un PPL podrían
cambiar en varias aplicaciones. En el problema de Giapetto, los precios a los cuales se venden los soldados y los trenes
podrían cambiar, así como la disponibilidad de las horas de carpintería y de acabado.
Si cambia un parámetro, no es necesario resolver el problema de nuevo. Por ejemplo, si la contribución a la utilidad por
parte de un soldado se incrementó a 3.50 dólares, ya no tendríamos que resolver de nuevo el problema de Giapetto porque
la solución actual sigue siendo óptima. Resolver otra vez el problema de Giapetto no representaría mucho trabajo, pero
resolver un PL con miles de variables y restricciones es otra cosa. Conocer el análisis de sensibilidad posibilita a menudo al
analista a determinar, a partir de la solución original, cuál es el cambio que sufre la solución óptima cuando se modifican
los parámetros de un PPL.

Algunas Formulas Importantes


Un PPL puede ser expresado en términos de los parámetros del mismo, para ello se debe expresar la tabla simplex en forma
matricial.
Sí se está resolviendo un problema de PL de maximización con m restricciones y n variables. Algunas de estas variables
podrían ser del problema original, de holgura, de excedente o artificiales, denominadas 𝑥1 , 𝑥2 , … 𝑥𝑛 Entonces, el PPL se
podría expresar como

𝐦𝐚𝐱 𝒛 = 𝑐1 𝑥1 + 𝑐2 𝑥2 + ⋯ + 𝑐𝑛 𝑥𝑛
𝑠. 𝑎.
𝑎11 𝑥1 + 𝑎12 𝑥2 + ⋯ + 𝑎1𝑛 𝑥𝑛 ≤ 𝑏1
Programación Lineal Profesor: Luz E. Medina C. − Página 1
Análisis de Sensibilidad Formulas Importantes

𝑎21 𝑥1 + 𝑎22 𝑥2 + ⋯ + 𝑎2𝑛 𝑥𝑛 ≤ 𝑏2


.
.
.
𝑎𝑚1 𝑥1 + 𝑎𝑚2 𝑥2 + ⋯ + 𝑎𝑚𝑛 𝑥𝑛 ≤ 𝑏𝑚
𝑥𝑖 ≥ 0; ∀𝑖 = 1. . 𝑚
Si se define
𝑎11 𝑎12 … 𝑎1𝑛 𝑥1 𝑏1
𝑎21 𝑎22 … 𝑎2𝑛 𝑥2 𝑏
𝐴=[ ] 𝑥=[ ] 𝑏= 2
⋮ ⋮ ⋮
𝑎𝑚1 𝑎𝑚2 … 𝑎𝑚𝑛 𝑥𝑛 [𝑏𝑚 ]
Las restricciones se pueden escribir como el sistema de ecuaciones Ax = b

Ejemplo
Dakota Furniture Company fabrica escritorios, mesas y sillas. Para la manufactura de cada tipo de mueble se requiere
madera y dos tipos de mano de obra calificada: acabado y carpintería. La cantidad de recursos necesarios para elaborar
cada tipo de muebles se proporciona en la tabla.
Se cuenta en la actualidad con 48 pies tablón de madera, 20 horas de acabado y 8 horas de carpintería por semana. Un
escritorio se vende en 60 dólares, una mesa, en 30 dólares y una silla en 20 dólares. Dakota opina que la demanda de
escritorios y sillas es ilimitada, pero cuando mucho se pueden vender 5 mesas. Puesto que los recursos disponibles ya se
compraron, Dakota quiere maximizar el ingreso total.
Temporalmente no se tomará en cuenta la restricción: “cuando mucho se pueden vender 5 mesas.”

Programación Lineal Profesor: Luz E. Medina C. − Página 2


Análisis de Sensibilidad Formulas Importantes

Tabla: Recursos necesarios para los muebles de Dakota


Recurso escritorio mesa silla
madera (pie tablón) 8 6 1
horas de acabado 4 2 1,5
horas de carpintería 2 1,5 0,5

𝐹𝑜𝑟𝑚𝑢𝑙𝑎𝑐𝑖ó𝑛
𝑥1 = 𝑐𝑎𝑛𝑡𝑖𝑑𝑎𝑑 𝑑𝑒 𝑒𝑠𝑐𝑟𝑖𝑡𝑜𝑟𝑖𝑜𝑠 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑑𝑜𝑠 𝑐𝑎𝑑𝑎 𝑠𝑒𝑚𝑎𝑛𝑎
𝑥2 = 𝑐𝑎𝑛𝑡𝑖𝑑𝑎𝑑 𝑑𝑒 𝑚𝑒𝑠𝑎𝑠 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑑𝑎𝑠 𝑐𝑎𝑑𝑎 𝑠𝑒𝑚𝑎𝑛𝑎
𝑥3 = 𝑐𝑎𝑛𝑡𝑖𝑑𝑎𝑑 𝑑𝑒 𝑠𝑖𝑙𝑙𝑎𝑠 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑑𝑎𝑠 𝑐𝑎𝑑𝑎 𝑠𝑒𝑚𝑎𝑛𝑎
𝐹𝑢𝑛𝑐𝑖ó𝑛 𝑜𝑏𝑗𝑒𝑡𝑖𝑣𝑜
𝐦𝐚𝐱 𝒛 = 60𝑥1 + 30𝑥2 + 20𝑥3 + 0𝑠1 + 0𝑠2 + 0𝑠3
𝑠. 𝑎.
8𝑥1 + 6𝑥2 + 𝑥3 ≤ 48 (𝑚𝑎𝑑𝑒𝑟𝑎)
4𝑥1 + 2𝑥2 + 1.5𝑥3 ≤ 20 (𝐴𝑐𝑎𝑏𝑎𝑑𝑜)
2𝑥1 + 1.5𝑥2 + 0.5𝑥3 ≤ 8 (𝐶𝑎𝑟𝑝𝑖𝑛𝑡𝑒𝑟í𝑎)
𝑥1 , 𝑥2 , 𝑥3 ≥ 0 (𝑅𝑒𝑠𝑡𝑟𝑖𝑐𝑐𝑖ó𝑛 𝑑𝑒 𝑠𝑖𝑔𝑛𝑜)

PPL a forma estándar.


𝒛 − 60𝑥1 − 30𝑥2 − 20𝑥3 = 0
𝑠. 𝑎.
8𝑥1 + 6𝑥2 + 𝑥3 + 𝑠1 = 48 (1)
4𝑥1 + 2𝑥2 + 1.5𝑥3 + 𝑠2 = 20 (2)
2𝑥1 + 1.5𝑥2 + 0.5𝑥3 +𝑠3 = 8 (3)
𝑥1 , 𝑥2 , 𝑥3 , 𝑠1 , 𝑠2 , 𝑠3 , 𝑠4 ≥ 0 (5)
Programación Lineal Profesor: Luz E. Medina C. − Página 3
Análisis de Sensibilidad Formulas Importantes

Tabla Inicial
𝑉𝐵 = {𝑧, 𝑠1 , 𝑠2 , 𝑠3 , 𝑠4 } 𝑦 𝑉𝑁𝐵 = {𝑥1 , 𝑥2 , 𝑥3 }
𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑉𝐵
0 1 −60 −30 −20 0 0 0 𝑧=0
1 0 8 6 1 1 0 0 𝑠1 = 48
2 0 4 2 1.5 0 1 0 𝑠2 = 20
3 0 2 1.5 0.5 0 0 1 𝑠3 = 8

Tabla Óptima
𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑉𝐵
0 1 0 5 0 0 10 10 𝑧 = 280
1 0 0 −1 0 1 2 −8 𝑠1 = 24
2 0 0 −2 1 0 2 −4 𝑥3 = 8
3 0 1 1.25 0 0 −0.5 1.5 𝑥1 = 2

𝑆𝑜𝑙𝑢𝑐𝑖ó𝑛 ó𝑝𝑡𝑖𝑚𝑎:
𝑽𝑩 = {𝒛, 𝒔𝟏 , 𝒙𝟑 , 𝒙𝟏 } 𝑧 = 280, 𝑠1 = 24, 𝑥3 = 8, 𝑥1 = 2, 𝑦
𝑽𝑵𝑩 = {𝑠3 , 𝑥2 , 𝑠2 } 𝑠3 = 𝑥2 = 𝑠2 = 0

Programación Lineal Profesor: Luz E. Medina C. − Página 4


Análisis de Sensibilidad Variables básicas y no básicas

Variables básicas y no básicas


Considere un sistema Ax = b de m ecuaciones lineales y n variables (suponga n > m).
Una solución básica para Ax = b se obtiene haciendo n—m variables iguales a cero, y luego se determinan los valores de las
m variables restantes. Así se asume que al hacer las n—m variables iguales a cero se llega a valores únicos para las m
variables restantes, o que, en forma equivalente, las columnas para las m variables restantes son linealmente
Independientes.
Con el objeto de hallar una solución básica para Ax = b, primero se escoge un conjunto de n — m variables (las variables no
básicas, VNB) y se iguala cada una de las variables a cero. Luego se encuentran los valores de las n — (n — m) = m variables
restantes (las variables básicas, VB) que satisfacen a Ax = b.
Las elecciones distintas de variables no básicas ocasionan diferentes soluciones básicas.
En la solución óptima para Dakota. Sea BVi variable básica para el renglón i de la tabla óptima. También definamos BV =
(BV1, BV2,--- ,Bm) como el conjunto de variables básicas en la tabla óptima, y XBV el vector mx1.
XNBV= vector (n—m)x1 que lista las variables no básicas (en cualquier orden deseado)

𝐵𝑉1 𝑁𝐵𝑉1 𝑥2
𝑠1
𝑋𝐵𝑉 =
𝐵𝑉 2 𝑥
= [ 3 ] ; 𝑋𝑁𝐵𝑉 =
𝑁𝐵𝑉 2 = [ 𝑠2 ]
⋮ 𝑥1 ⋮ 𝑠3
[𝐵𝑉𝑚 ] [𝑁𝐵𝑉𝑛−𝑚 ]
Aplicando álgebra de matrices, se expresa la tabla óptima en términos de BV y el PPL original.

Programación Lineal Profesor: Luz E. Medina C. − Página 5


Análisis de Sensibilidad Coeficientes de la función objetivo

Coeficientes de la función objetivo:


Están conformados por coeficientes de variables básicas y coeficientes de variables No básicas 𝐶𝐵𝑉 𝑦 𝐶𝑁𝐵𝑉
𝐶𝐵𝑉 es el vector renglón 1Xm = [𝐶𝐵𝑉1 , 𝐶𝐵𝑉2 … 𝐶𝐵𝑉𝑚 ] y
𝐶𝑁𝐵𝑉 es el vector renglón 1X(n–m) = [𝐶𝑁𝐵𝑉1 , 𝐶𝑁𝐵𝑉2 … 𝐶𝑁𝐵𝑉(𝑁−𝑚) ]

En el problema de Dakota: 𝐶𝐵𝑉 = [0 20 60] 𝑦 𝐶𝑁𝐵𝑉 = [30 0 0]

Matriz B de Variables Básicas BV y Matriz N de Variables No Básicas NBV


La matriz B de Variables Básicas BV, de orden mxm, es aquella cuya j-ésima columna es la columna de BVi. En el problema
de Dakota, la primera columna de B es la columna 𝒔𝟏 en la tabla original del problema, la segunda la columna 𝒙𝟑 , y la
tercera, la columna 𝒙𝟏 . 𝐵𝑉 = {𝒔𝟏 , 𝒙𝟑 , 𝒙𝟏 }
La matriz N de Variables No Básicas NBV, de orden mx(n—m), es aquella cuya j-ésima columna es la columna de NBVi
En el problema de Dakota, 𝑁𝐵𝑉 = {𝒙𝟐 , 𝒔𝟐 , 𝒔𝟑 }

La columna 𝒂𝒋 en la tabla original es la correspondiente a 𝒙𝒋

1 1 8 6 0 0 6 1
𝑩 = [0 1.5 4] ; 𝑵 = [ 2 1 0] ; 𝒂𝟐 = [ 2 ] ; 𝑦 𝒂𝒋 𝑝𝑎𝑟𝑎 𝒔𝟏 = [0]
0 0.5 2 1.5 0 1 1.5 0

Programación Lineal Profesor: Luz E. Medina C. − Página 6


Análisis de Sensibilidad Vector columna b: lado derecho de las restricciones

Vector columna b: lado derecho de las restricciones


El vector columna b, de orden mx1 es el lado derecho de las restricciones. En el problema de Dakota es:
48
𝒃 = [20] ; 𝑦 𝒃𝟐 = 𝟐𝟎
8
Expresión del PPL en forma de algebra de matrices:

𝑧 = 𝑐𝐵𝑉 𝑥𝐵𝑉 + 𝑐𝑁𝐵𝑉 𝑥𝑁𝐵𝑉


s.a. 𝐵𝑥𝐵𝑉 + 𝑁𝑥𝑁𝐵𝑉 = 𝑏
𝑥𝐵𝑉 , 𝑥𝑁𝐵𝑉 ≥ 0

Programación Lineal Profesor: Luz E. Medina C. − Página 7


Análisis de Sensibilidad Expresión de la tabla óptima del PPL en términos de B-1 y el problema original

Expresión de la tabla óptima del PPL en términos de 𝑩−𝟏 y el problema original


a) Restricciones
Para obtener el óptimo a partir del problema original se multiplica por 𝑩−𝟏

𝑩−𝟏 𝐵𝑥𝐵𝑉 + 𝑩−𝟏 𝑁𝑥𝑁𝐵𝑉 = 𝑩−𝟏 𝑏; 𝑥𝐵𝑉 + 𝑩−𝟏 𝑁𝑥𝑁𝐵𝑉 = 𝑩−𝟏 𝑏


Así cada columna de una variable (en particular NBV) en la tabla optima está dada por 𝑩−𝟏 𝑎𝑗 y el lado derecho
de las restricciones está dada por: 𝑩−𝟏 𝑏
b) Renglón 0
Para obtener el nuevo Renglón 0 y hacer cero los coeficientes de las variables básicas de la tabla óptima, se suma el
renglón 0 con el producto del renglón 0 por 𝑐𝐵𝑉 𝑩−𝟏 , obteniéndose

𝒛 + (𝑐𝐵𝑉 𝑩−𝟏 𝑁 − 𝑐𝑁𝐵𝑉 )𝑥𝑁𝐵𝑉 = 𝑐𝐵𝑉 𝑩−𝟏 𝒃


Así el coeficiente 𝑐̅𝑗 en el Renglón 0 está dada por: 𝑐𝐵𝑉 𝑩−𝟏 𝒂𝒋 − 𝒄𝒋 y z está dada por: 𝑐𝐵𝑉 𝑩−𝟏 𝒃

Por ejemplo, el coeficiente en la tabla óptima de la variable no básica 𝒙𝟐 es:

1 2 −8 6
−𝟏
𝒄̅̅̅𝟐 = 𝑐𝐵𝑉 𝑩 𝒂𝟐 − 𝒄𝟐 ; 𝑐̅2 = [0 20 60] [0 2 −4] [ 2 ] − 30 = 5;
0 −0.5 1.5 1.5
Los coeficientes en la tabla óptima de las variables básicas 𝐵𝑉c{𝒔𝟏 , 𝒙𝟑 , 𝒙𝟏 } son por supuesto 𝟎. A manera de confirmación,
sea
1 2 −8 1
−𝟏
𝑐̅3 = 𝑐𝐵𝑉 𝑩 𝒂𝟑 ; 𝑐̅3 = [0 20 60] [0 2 −4] [1.5] − 20 = 𝟎;
0 −0.5 1.5 0.5

Programación Lineal Profesor: Luz E. Medina C. − Página 8


Análisis de Sensibilidad Expresión de la tabla óptima del PPL en términos de B-1 y el problema original

Variables de holgura y excedente


Si 𝑥𝑗 es una variable de holgura, de excedente o artificial Es posible simplificar su expresión en la tabla óptima

Si 𝑥𝑗 es la variable de holgura 𝑠𝑗 , el coeficiente de 𝑠𝑗 en la función objetivo es 0 y la columna para 𝑠𝑗 , tiene 1 en el renglón


j y 0 en todos los otros renglones en la tabla original. Entonces se obtiene

Coeficiente de 𝑠𝑗 en el renglón O óptimo = (j_ésimo elemento de 𝑐𝐵𝑉 𝑩−𝟏 ) — 0 = (j_ésimo elemento de 𝑐𝐵𝑉 𝑩−𝟏 )

De igual manera, si 𝑥𝑗 es la variable de excedente 𝑒𝑗 , entonces el coeficiente de 𝑒𝑗 en la función objetivo es 0 y la columna


para 𝑒𝑗 en la tabla original posee un —1 en el reglón j y 0 en los otros renglones. Entonces

Coeficiente de 𝑒𝑗 en el renglón 0 óptimo = —(j_ésimo elemento de 𝑐𝐵𝑉 𝑩−𝟏 ) — 0 = —(j_ésimo elemento de 𝑐𝐵𝑉 𝑩−𝟏 )

En resumen, en la tabla óptima:


𝒂̅𝒋 = 𝐵−1 𝑎𝑗
̅ = 𝐵−1 𝑏
𝒃
𝒄̅𝒋 = 𝑐𝐵𝑉 𝐵−1 𝑎𝑗 − 𝑐𝑗 y
𝒛̅ = 𝑐𝐵𝑉 𝐵−1 𝑏

Programación Lineal Profesor: Luz E. Medina C. − Página 9


Análisis de Sensibilidad Casos de Análisis de Sensibilidad

Análisis de Sensibilidad
El estudio de la manera en que la solución óptima de un PL depende de sus parámetros se llama análisis de sensibilidad:
cómo afecta a la solución óptima las modificaciones en los parámetros de un PL (coeficientes de la función objetivo, lados
derechos y coeficientes tecnológicos).
Sea BV el conjunto de variables básicas en la tabla óptima. Dado un cambio (o cambios) en un PL, queremos determinar si
BV sigue siendo óptima. La mecánica del análisis de sensibilidad depende de la siguiente observación importante:
Se sabe que una tabla simplex (en el caso de un problema de maximización) para un conjunto de variables básicas BV es
óptima si y sólo si el lado derecho de cada restricción es no negativo y cada variable tiene un coeficiente no negativo en el
renglón O. Esto se infiere porque si cada restricción tiene un lado derecho no negativo, entonces la solución básica de la BV
es factible, y si cada variable en el renglón O tiene un coeficiente no negativo, entonces no puede haber solución factible
básica con un valor z superior a BV.
La observación indica que el hecho de que una tabla sea factible y óptima depende sólo del lado derecho de las
restricciones y de los coeficientes de cada variable en el renglón 0.
Sí ya se resolvió un PL y se encontró que BV es una base óptima. Se puede aplicar el siguiente procedimiento para determinar
si al haber algún cambio en el PL, la BV ya no será óptima.
Paso 1
Determinar mediante las fórmulas del aparte anterior los cambios que sufren el lado derecho y el renglón 0 de la tabla
óptima (la tabla cuyo conjunto de variables básicas es BV) al ser modificados los parámetros de la PL.
Paso 2
Si todas las variables del renglón 0 tienen coeficiente no negativo y cada restricción tiene un lado derecho no negativo,
entonces la BV sigue siendo óptima. Si sucede lo contrario, la BV ya no es óptima.
Si la BV ya no es óptima, entonces se puede encontrar la nueva solución óptima mediante las fórmulas de la sección anterior
para generar la tabla completa para la BV, y luego continuar el algoritmo simplex con la tabla de BV como la tabla inicial.
Puede haber dos razones de por qué un cambio en los parámetros del PL ocasiona que la BV ya no sea óptima.

Programación Lineal Profesor: Luz E. Medina C. − Página 10


Análisis de Sensibilidad Casos de Análisis de Sensibilidad

Primera, una variable (o variables) en el renglón 0 podría tener un coeficiente negativo. En este caso es posible obtener
una solución mejor (mayor valor z) mediante el pivoteo de una variable no básica con coeficiente negativo en el renglón
0. Si así sucede, se dice que la BV es ahora una base subóptima.
Segunda, una restricción (o restricciones) podría tener ahora un lado derecho negativo. En este caso, por lo menos un
miembro de la BV será negativo y BV ya no generará una solución básica factible(sfb). Si esto ocurre, se dice que esa BV
es ahora una base no factible

Cómo afectan la solución óptima siete tipos de cambios en los parámetros de un PL:
Cambio 1: Adición de una nueva restricción.
Cambio 2: Modificación del coeficiente de una variable no básica de la función objetivo.
Cambio 3: Modificación del coeficiente de una variable básica de la función objetivo.
Cambio 4: Modificación del lado derecho de una restricción.
Cambio 5: Modificación de la columna de una variable no básica.
Cambio 6: Modificación de la columna de una variable básica.
Cambio 7: Suma de una nueva variable o actividad.

Ejemplo Dakota

𝐹𝑜𝑟𝑚𝑢𝑙𝑎𝑐𝑖ó𝑛
𝑥1 = 𝑐𝑎𝑛𝑡𝑖𝑑𝑎𝑑 𝑑𝑒 𝑒𝑠𝑐𝑟𝑖𝑡𝑜𝑟𝑖𝑜𝑠 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑑𝑜𝑠 𝑐𝑎𝑑𝑎 𝑠𝑒𝑚𝑎𝑛𝑎
𝑥2 = 𝑐𝑎𝑛𝑡𝑖𝑑𝑎𝑑 𝑑𝑒 𝑚𝑒𝑠𝑎𝑠 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑑𝑎𝑠 𝑐𝑎𝑑𝑎 𝑠𝑒𝑚𝑎𝑛𝑎
𝑥3 = 𝑐𝑎𝑛𝑡𝑖𝑑𝑎𝑑 𝑑𝑒 𝑠𝑖𝑙𝑙𝑎𝑠 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑑𝑎𝑠 𝑐𝑎𝑑𝑎 𝑠𝑒𝑚𝑎𝑛𝑎

Programación Lineal Profesor: Luz E. Medina C. − Página 11


Análisis de Sensibilidad Casos de Análisis de Sensibilidad

𝐹𝑢𝑛𝑐𝑖ó𝑛 𝑜𝑏𝑗𝑒𝑡𝑖𝑣𝑜
𝐦𝐚𝐱 𝒛 = 60𝑥1 + 30𝑥2 + 20𝑥3
𝑠. 𝑎.
8𝑥1 + 6𝑥2 + 𝑥3 ≤ 48 (𝑚𝑎𝑑𝑒𝑟𝑎)
4𝑥1 + 2𝑥2 + 1.5𝑥3 ≤ 20 (𝐴𝑐𝑎𝑏𝑎𝑑𝑜)
2𝑥1 + 1.5𝑥2 + 0.5𝑥3 ≤ 8 (𝐶𝑎𝑟𝑝𝑖𝑛𝑡𝑒𝑟í𝑎)
𝑥1 , 𝑥2 , 𝑥3 ≥ 0 (𝑅𝑒𝑠𝑡𝑟𝑖𝑐𝑐𝑖ó𝑛 𝑑𝑒 𝑠𝑖𝑔𝑛𝑜)

PPL a forma estándar.


𝒛 − 60𝑥1 − 30𝑥2 − 20𝑥3 = 0
𝑠. 𝑎.
8𝑥1 + 6𝑥2 + 𝑥3 + 𝑠1 = 48 (1)
4𝑥1 + 2𝑥2 + 1.5𝑥3 + 𝑠2 = 20 (2)
2𝑥1 + 1.5𝑥2 + 0.5𝑥3 +𝑠3 = 8 (3)
𝑥1 , 𝑥2 , 𝑥3 , 𝑠1 , 𝑠2 , 𝑠3 , 𝑠4 ≥ 0 (5)
Tabla Inicial
𝑉𝐵 = {𝑧, 𝑠1 , 𝑠2 , 𝑠3 , 𝑠4 } 𝑦 𝑉𝑁𝐵 = {𝑥1 , 𝑥2 , 𝑥3 }
𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑉𝐵
0 1 −60 −30 −20 0 0 0 𝑧=0
1 0 8 6 1 1 0 0 𝑠1 = 48
2 0 4 2 1.5 0 1 0 𝑠2 = 20
3 0 2 1.5 0.5 0 0 1 𝑠3 = 8

Programación Lineal Profesor: Luz E. Medina C. − Página 12


Análisis de Sensibilidad Casos de Análisis de Sensibilidad

Tabla Óptima
𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑉𝐵
0 1 0 5 0 0 10 10 𝑧 = 280
1 0 0 −1 0 1 2 −8 𝑠1 = 24
2 0 0 −2 1 0 2 −4 𝑥3 = 8
3 0 1 1.25 0 0 −0.5 1.5 𝑥1 = 2
𝑆𝑜𝑙𝑢𝑐𝑖ó𝑛 ó𝑝𝑡𝑖𝑚𝑎:
𝑽𝑩 = {𝒛, 𝒔𝟏 , 𝒙𝟑 , 𝒙𝟏 } 𝑧 = 280, 𝑠1 = 24, 𝑥3 = 8, 𝑥1 = 2, 𝑦
𝑽𝑵𝑩 = {𝑠3 , 𝑥2 , 𝑠2 } 𝑠3 = 𝑥2 = 𝑠2 = 0

Programación Lineal Profesor: Luz E. Medina C. − Página 13


Análisis de Sensibilidad Adición de una nueva restricción

Adición de una nueva restricción


Determinar mediante las fórmulas respectivas los cambios que sufren el lado derecho y el renglón 0 de la tabla óptima (la
tabla cuyo conjunto de variables básicas es BV) al agregar una nueva restricción.

𝒄̅𝒋 = 𝑐𝐵𝑉 𝐵−1 𝑎𝑗 − 𝑐𝑗 por consiguiente, el renglón 0 de la tabla óptima no cambia.


̅ = 𝐵−1 𝑏
𝒃 el cambio puede afectar el lado derecho de la tabla óptima (factibilidad)

Al agregar una nueva restricción se pueden presentar los siguientes casos:


Caso 1: La solución óptima actual satisface la nueva restricción
Caso 2: La solución óptima actual NO satisface la nueva restricción, pero el PL tiene una solución factible
Caso 3: La solución óptima actual NO satisface la nueva restricción y el PL NO tiene una solución factible

Caso 1: La solución óptima actual satisface la nueva restricción

Sí en el problema de Dakota, se agrega la restricción: 𝑥1 + 𝑥2 + 𝑥3 ≤ 15

La Solución óptima actual: 𝑧 = 280, 𝑠1 = 24, 𝑥3 = 8, 𝑥1 = 2,,

2 + 0 + 8 ≤ 15 ; 10 ≤ 15 √ satisface la restricción

Caso 2: La solución óptima actual NO satisface la nueva restricción, pero el PL tiene una solución factible
Sí en el problema de Dakota, el mercado indica que por lo menos se debe fabricar una mesa, se agrega la restricción:

𝒙𝟐 ≥ 𝟏. La Solución óptima actual: 𝑧 = 280, 𝑠1 = 24, 𝑥3 = 8, 𝑥1 = 2


2 + 0 + 8 ≥ 1 ; 10 ≥ 1 𝐗 No satisface la restricción
Programación Lineal Profesor: Luz E. Medina C. − Página 14
Análisis de Sensibilidad Adición de una nueva restricción

Por lo cual se agrega la restricción al problema, al agregar la variable de excedente se obtiene: 𝑥2 − 𝑒4 = 1. Si se multiplica
por −1, se puede utilizar 𝑒4 como una variable básica para esta restricción: −𝒙𝟐 + 𝒆𝟒 = −𝟏
Dado que se está utilizando la tabla óptima renglón 0 con coeficientes no negativos, se puede utilizar el Simplex dual. La
tabla óptima para el problema de Dakota es

𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑒4 𝑉𝐵
0 1 0 5 0 0 10 10 0 𝑧 = 280
1 0 0 −1 0 1 2 −8 0 𝑠1 = 24
2 0 0 −2 1 0 2 −4 0 𝑥3 = 8
3 0 1 1.25 0 0 −0.5 1.5 0 𝑥1 = 2
4 0 0 −1 0 0 0 0 1 𝑒4 = −1

𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑒4 𝑉𝐵
0 1 0 0 0 0 10 10 5 𝑧 = 275
1 0 0 0 0 1 2 −8 −2 𝑠1 = 26
2 0 0 0 1 0 2 −4 −2 𝑥3 = 10
3 0 1 0 0 0 − 1⁄2 3⁄4 5⁄4 𝑥1 = 3⁄4
4 0 0 1 0 0 0 0 −1 𝑥2 = 1

La nueva Solución óptima es: 𝑧 = 275, 𝑠1 = 26, 𝑥3 = 10, 𝑥1 = 3⁄4 , 𝑥2 = 1


La cual reduce el ingreso de Dakota en 5 dólares (costo reducido de las mesas)

Programación Lineal Profesor: Luz E. Medina C. − Página 15


Análisis de Sensibilidad Adición de una nueva restricción

Caso 3: La solución óptima actual NO satisface la nueva restricción y el PPL NO tiene una solución factible
Sí en el problema de Dakota, se agrega la restricción:

𝒙𝟏 + 𝒙𝟐 ≥ 𝟏𝟐. La Solución óptima actual: 𝑧 = 280, 𝑠1 = 24, 𝑥3 = 8, 𝑥1 = 2


2 + 0 + 8 ≥ 12 ; 10 ≥ 12 𝐗 No satisface la restricción
Por lo cual se agrega la restricción al problema, al agregar la variable de excedente se obtiene 𝑥1 + 𝑥2 − 𝑒4 = 12. Si se
multiplica por —1, se puede utilizar 𝑒4 como una variable básica para esta restricción:

−𝒙𝟏 − 𝒙𝟐 + 𝒆𝟒 = −𝟏𝟐
Dado que 𝑥1 está en la nueva restricción, se hace 0 el coeficiente de 𝑥1 (y en general el de todas las variables básicas) de
la nueva restricción con: R4 = R3+R4

𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑒4 𝑉𝐵
0 1 0 5 0 0 10 10 0 𝑧 = 280
1 0 0 −1 0 1 2 −8 0 𝑠1 = 24
2 0 0 −2 1 0 2 −4 0 𝑥3 = 8
3 0 1 1.25 0 0 −0.5 1.5 0 𝑥1 = 2
4 0 −1 −1 0 0 0 0 1 𝑒4 = −12

𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑒4 𝑉𝐵
0 1 0 5 0 0 10 10 0 𝑧 = 280
1 0 0 −1 0 1 2 −8 0 𝑠1 = 24
2 0 0 −2 1 0 2 −4 0 𝑥3 = 8
3 0 1 1.25 0 0 −0.5 1.5 0 𝑥1 = 2
4 0 0 1⁄4 0 0 − 1⁄2 3⁄2 1 𝑒4 = −10
𝑐𝑜𝑐𝑖𝑒𝑛𝑡𝑒 |𝟏𝟎⁄− 𝟏⁄𝟐|

Programación Lineal Profesor: Luz E. Medina C. − Página 16


Análisis de Sensibilidad Adición de una nueva restricción

𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑒4 𝑉𝐵
0 1 0 10 0 0 0 40 20 𝑧 = 80
1 0 0 −1 0 1 0 −2 4 𝑠1 = −16
2 0 0 −1 1 0 0 2 4 𝑥3 = −32 ∗
3 0 1 1 0 0 0 0 −1 𝑥2 = 12
4 0 0 − 1⁄2 0 0 1 −3 −2 𝑠2 = 20
𝑐𝑜𝑐𝑖𝑒𝑛𝑡𝑒 |𝟏𝟎⁄−𝟏|

𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑒4 𝑉𝐵
0 1 0 0 10 0 0 60 60 𝑧 = −240
1 0 0 0 −1 1 0 4 0 𝑠1 = 16
2 0 0 1 −1 0 0 −2 −4 𝑥2 = 32
3 0 1 0 1 0 0 2 3 𝑥1 = −20
4 0 0 0 − 1⁄2 0 1 −4 −4 𝑠2 = 36

𝐷𝑎𝑑𝑜 𝑞𝑢𝑒 𝒙𝟏 = −𝟐𝟎 𝑦


𝑒𝑛 𝑒𝑙 𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑡𝑜𝑑𝑎𝑠 𝑙𝑎𝑠 𝑣𝑎𝑟𝑖𝑎𝑏𝑙𝑒𝑠 𝑠𝑜𝑛 𝒏𝒐 𝒏𝒆𝒈𝒂𝒕𝒊𝒗𝒂𝒔, 𝑒𝑙 𝑝𝑟𝑜𝑏𝑙𝑒𝑚𝑎 𝑐𝑜𝑛 𝑙𝑎 𝑟𝑒𝑠𝑡𝑟𝑖𝑐𝑐𝑖ó𝑛 𝑎𝑑𝑖𝑐𝑖𝑜𝑛𝑎𝑙 𝑛𝑜 𝑡𝑖𝑒𝑛𝑒 𝑠𝑜𝑙𝑢𝑐𝑖ó𝑛 𝑓𝑎𝑐𝑡𝑖𝑏𝑙𝑒

Programación Lineal Profesor: Luz E. Medina C. − Página 17


Análisis de Sensibilidad Modificación del coeficiente de una variable no básica de la función objetivo

Modificación del coeficiente de una variable no básica de la función objetivo


En el problema de Dakota, la única variable de decisión no básica es 𝑥2 (mesas). En la tabla inicial, el coeficiente de 𝑥2 de
la función objetivo es 𝑐2 = 30 ¿Qué tanto afectaría un cambio en 𝑐2 a la solución óptima para el problema de Dakota? Más

Específicamente ¿para qué valores de 𝑐2 seguiría siendo óptima 𝑽𝑩 = {𝒔𝟏 , 𝒙𝟑 , 𝒙𝟏 }?

Si se modifica el coeficiente de 𝑥2 de la función objetivo de 𝑐2 = 30 a 𝑐2 = 30 + ∆. Entonces, ∆ representa la cantidad


que 𝑐2 cambió con respecto a su valor actual. ¿Para cuáles valores de ∆ del conjunto actual de variables básicas (la base
actual) sigue siendo óptima?

Lo primero es determinar cómo cambiará la tabla de BV al modificar 𝑐2 = 30 a 𝑐2 = 30 + ∆.


−1
Se observa que 𝐵 −1 𝑦 𝑏 no cambian y, por tanto, el lado derecho de la tabla, de 𝐶𝐵𝑉 𝐵 𝑏 no varía, así que BV todavía es
factible. Como 𝑥2 es una variable no básica, 𝐶𝐵𝑉 no ha cambiado.

La única variable cuyo coeficiente del renglón 0 se modificará al cambiar 𝑐2 𝑒𝑠 𝑥2 , por lo tanto, BV continuará siendo
̅̅̅𝟐 > 0, y BV será subóptima si -𝒄̅̅̅𝟐 < 0, en este caso, z podría mejorar al entrar 𝑥2 a la base.
óptima si 𝒄

1 2 −8 6
−𝟏
𝑐𝐵𝑉 = [0 20 60]; 𝑩 [0 2 −4] ; 𝒂𝟐 = [ 2 ] ; 𝒄𝟐 = 30 + ∆
0 −0.5 1.5 1.5
1 2 −8 6
𝑐̅2 = 𝑐𝐵𝑉 𝑩−𝟏 𝒂𝟐 − 𝒄𝟐 ; 𝑐̅2 = [0 20 60] [0 2 −4] [ 2 ] − (30 + ∆) = 35 − 30 − ∆ = 5 − ∆
0 −0.5 1.5 1.5
6
−𝟏
𝑐̅2 = 𝑐𝐵𝑉 𝑩 𝒂𝟐 − 𝒄𝟐 ; 𝑐̅2 = [0 10 10] [ 2 ] − (30 + ∆) = 35 − 30 − ∆ = 𝟓 − ∆
1.5
Si 𝒄̅̅̅𝟐 > 0 BV continuará siendo óptima: 𝒄̅̅̅𝟐 = 5 − ∆ > 0 = −5 + ∆ ≤ 0; ∆ ≤ 5
De igual manera, si -𝒄
̅̅̅𝟐 < 0; ∆ > 5 y BV ya no es óptima.
Programación Lineal Profesor: Luz E. Medina C. − Página 18
Análisis de Sensibilidad Modificación del coeficiente de una variable no básica de la función objetivo

Esto quiere decir que si el precio de las mesas se reduce o se incrementa en 5 dólares o menos. BV continúa siendo
óptima. Por lo tanto, para 𝒄
̅̅̅𝟐 ≤ 30 + 5 = 35, BV aún es óptima.
Si BV aún es óptima después de un cambio en el coeficiente de la función objetivo de la variable no básica, los valores de
las variables de decisión y el valor óptimo de z se mantienen sin modificación. Esto se debe a que un cambio en el coeficiente
de la función objetivo de una variable no básica deja el lado derecho del renglón 0 y las restricciones no cambian.

Por ejemplo, si el precio de las mesas aumentara a 33 dólares ( 𝒄𝟐 = 𝟑𝟑), no se modificaría la solución óptima para el
problema de Dakota (Dakota todavía fabricaría 2 escritorios y 8 sillas, y z = 280).

Por otro lado, si 𝒄𝟐 > 𝟑𝟓, BV ya no será óptima porque 𝒄 ̅̅̅𝟐 < 0. En este caso se determina la nueva solución óptima al
generar la tabla de BV y luego usar el algoritmo simplex.

Por ejemplo, si 𝒄𝟐 = 𝟒𝟎, la única parte de la tabla de la BV que cambiará es el coeficiente de 𝑥2 en el renglón 0.

1 2 −8 6
−𝟏
𝑐̅2 = 𝑐𝐵𝑉 𝑩 𝒂𝟐 − 𝒄𝟐 ; 𝑐̅2 = [0 20 60] [0 2 −4] [ 2 ] − (𝟒𝟎) = 35 − 40 = −𝟓
0 −0.5 1.5 1.5
Ahora la tabla final no es óptima (es subóptima), y es posible incrementar z si se hace 𝑥2 una variable básica en el renglón3.

𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑉𝐵 𝑐𝑜𝑐𝑖𝑒𝑛𝑡𝑒
0 1 0 −5 0 0 10 10 𝑧 = 280
1 0 0 −1 0 1 2 −8 𝑠1 = 24 x
2 0 0 −2 1 0 2 −4 𝑥3 = 8 x
3 0 1 1.25 0 0 −0.5 1.5 𝑥1 = 2 2/1.25

Programación Lineal Profesor: Luz E. Medina C. − Página 19


Análisis de Sensibilidad Modificación del coeficiente de una variable no básica de la función objetivo

𝑟𝑒𝑛𝑔𝑙ó𝑛 𝑧 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 𝑠3 𝑉𝐵
0 1 4 0 0 0 8 16 𝑧 = 288
1 0 1.6 0 0 1 1.2 −5 𝑠1 = 27.2
2 0 1.6 0 1 0 1.2 −1.6 𝑥3 = 11.2
3 0 0.8 1 0 0 −0.4 1.2 𝑥2 = 1.6

Por lo tanto, si 𝒄𝟐 = 40 la solución óptima para el problema de Dakota es ahora

𝒛 = 𝟐𝟖𝟖, 𝒔𝟏 = 𝟐𝟕. 𝟐 𝒙𝟑 = 𝟏𝟏. 𝟐, 𝒙𝟐 = 𝟏. 𝟔 𝒙𝟏 = 𝒔𝟐 = 𝒔𝟑 = 𝟎

En este caso, el incremento en el precio de las mesas las ha hecho más atractivas como para inducir a Dakota a fabricarlas
Esto indica que cada mesa que fabrica Dakota reducirá el ingreso en 5 dólares (en otras palabras, el costo reducido para las
mesas es 5). Si aumenta el precio de las mesas más de 5 dólares, cada mesa incrementaría el ingreso de Dakota. Por ejemplo,
si 𝒄𝟐 = 36, cada mesa incrementaría los ingresos en 6 − 5 = 1 dólar, por lo cual Dakota debería fabricar mesas.

Por lo tanto, como antes, vemos que si ∆ > 5, la base actual ya no es óptima.
Este análisis favorece otra interpretación del costo reducido de una variable no básica: El costo reducido para una variable
no básica (en un problema de maximización) es la cantidad máxima que puede aumentar el coeficiente de la variable de la
función objetivo antes de que la base actual se vuelva subóptíma, y se vuelva óptima para la variable no básica que entra
a la base.

En resumen, si el coeficiente de la función objetivo para una variable no básica 𝒙𝒋 cambia, la base actual continúa siendo
óptima si si 𝒄̅𝒋 ≥ 0, y BV la base actual ya no es óptima, será subóptima si -𝒄̅𝒋 < 0 y 𝒙𝒋 será una variable básica en la nueva
solución óptima.

Programación Lineal Profesor: Luz E. Medina C. − Página 20


Análisis de Sensibilidad Modificación del coeficiente de una variable básica de la función objetivo

Modificación del coeficiente de una variable básica de la función objetivo


En el problema de Dakota, las variables de decisión 𝑥1 (escritorios) y 𝑥2 (sillas) son variables básicas. Al ser modificado el
coeficiente de una variable básica de la función objetivo se afecta la solución óptima de un PL.

Primero se analiza cómo afecta este cambio a la tabla de la BV. Puesto que no estamos modificando 𝑩 (o, por lo
̅ = 𝐵−1 𝑏 muestra que el lado derecho de cada restricción se mantendrá sin cambio, y BV
tanto, 𝑩−𝟏 ) 𝒐 𝒃, la ecuación 𝒃
seguirá siendo factible.

Como lo que se modifica es 𝒄𝑩𝑽 , entonces cambiará 𝒄̅𝒋 . En 𝒄̅𝒋 = 𝑐𝐵𝑉 𝐵 −1 𝑎𝑗 − 𝑐𝑗 se observa que un cambio en podría
cambiar más de un coeficiente en el renglón 0.

Para determinar si BV sigue siendo óptima se tiene que usar 𝒄̅𝒋 = 𝑐𝐵𝑉 𝐵 −1 𝑎𝑗 − 𝑐𝑗 (para recalcular el renglón 0) para la tabla
de BV. Si todas las variables en el renglón 0 tienen todavía un coeficiente no negativo, entonces BV sigue siendo óptima. Si
sucede lo contrario, BV deja de ser óptima. 𝑽𝑩 = {𝒔𝟏 , 𝒙𝟑 , 𝒙𝟏 }; 𝑽𝑵𝑩 = {𝑠3 , 𝑥2 , 𝑠2 }

Cómo se afecta la solución óptima del problema de Dakota al modificarse el coeficiente de 𝑥1 (escritorios) de la función
objetivo con respecto a su valor actual de 𝑐1 = 60 𝑎 𝒄𝟏 = 𝟔𝟎 + ∆

1 2 −8
−1
𝑐𝐵𝑉 = [0 20 (60 + ∆)]; 𝐵 [0 2 −4] ;
0 −0.5 1.5
1 2 −8
−𝟏
𝑐𝐵𝑉 𝑩 = [0 20 (60 + ∆)] [0 2 −4] = [0 (10 − 0.5∆) (10 + 1.5∆)]
0 −0.5 1.5
Para calcular el renglón 0 de la tabla óptima se utiliza 𝒄̅𝒋 = 𝑐𝐵𝑉 𝐵 −1 𝑎𝑗 − 𝑐𝑗 , recordar que en la tabla óptima los
coeficientes de las variables básicas son cero: 𝑽𝑩 = {𝒔𝟏 , 𝒙𝟑 , 𝒙𝟏 }; 𝒄
̅̅̅̅ ̅̅̅𝟑 = 𝒄̅̅̅𝟏 = 𝟎 así los coeficientes de cada una de
𝒔𝟏 = 𝒄
las variables No básicas 𝑽𝑵𝑩 = {𝑥2 , 𝑠2 , 𝑠3 } cambiarían de la siguiente forma.

Para que la BV actual siga siendo optima cada uno de ellos debe ser mayor o igual a cero 𝒄̅𝒋 ≥ 0 ∀ 𝑉𝑁𝐵
Programación Lineal Profesor: Luz E. Medina C. − Página 21
Análisis de Sensibilidad Modificación del coeficiente de una variable básica de la función objetivo

𝒄̅𝒋 = 𝑐𝐵𝑉 𝐵−1 𝑎𝑗 − 𝑐𝑗


6 0 0
𝒂𝟐 = [ 2 ] 𝒂𝒔𝟐 = [1] ; 𝒂𝒔𝟑 = [0] ; 𝒄𝟐 = 𝟑𝟎; 𝒄𝒔𝟐 = 𝟎; 𝒄𝒔𝟑 = 𝟎
1.5 0 1
6 −𝟓
𝒄̅̅̅𝟐 = [0 (10 − 0.5∆) (10 + 1.5∆)] [ 2 ] − 30 = 𝟓 + 𝟏. 𝟐𝟓∆ ≥ 𝟎; ∆ ≥ ; ∆ ≥ −𝟒
𝟏. 𝟐𝟓
1.5
0 𝟏𝟎
𝒄𝑺𝟐 = [0 (10 − 0.5∆) (10 + 1.5∆)] [1] − 0 = 𝟏𝟎 − 𝟎. 𝟓∆ ≥ 𝟎; ∆ <
̅̅̅̅ ; ∆ < 𝟐𝟎
𝟎. 𝟓
0
0 −𝟏𝟎 𝟐𝟎
𝒄𝑺𝟑 = [0 (10 − 0.5∆) (10 + 1.5∆)] [0] − 0 = 𝟏𝟎 + 𝟏. 𝟓∆ ≥ 𝟎; ∆ ≥
̅̅̅̅ ; ∆≥ −
𝟏. 𝟓 𝟑
1

En la figura se observa que la base actual sigue siendo óptima si y sólo 𝒄𝟏 si −𝟒 ≤ ∆ < 𝟐𝟎: si 𝒄𝟏 disminuye 4 dólares o menos,
o bien, aumenta hasta 20 dólares, la base actual sigue siendo óptima.

Así: 𝒄𝟏 = 60 − 4 = 56 y 𝒄𝟏 = 60 + 20 = 80

Por lo tanto, siempre que 𝒄𝟏 ≥ 56 y 𝒄𝟏 ≤ 80, la base actual sigue siendo óptima. Si 𝒄𝟏 < 56 o 𝒄𝟏 > 80, la base actual ya
no es óptima. Si la base actual se conserva óptima, entonces los valores de las variables de decisión no cambian porque
𝐵−1 𝑏 se mantiene sin cambio. Pero sí cambia el valor óptimo de z.
Programación Lineal Profesor: Luz E. Medina C. − Página 22
Análisis de Sensibilidad Modificación del coeficiente de una variable básica de la función objetivo

Si 𝒄𝟏 = 70. Como 56 ≤ 70 ≤ 80 la base actual sigue siendo óptima. Por lo tanto, Dakota debe fabricar todavía 2 escritorios

𝒙𝟏 = 𝟐 y 8 sillas 𝒙𝟑 = 𝟖 y al cambiar 𝒄𝟏 = 70 se modifica 𝒛̅.


1 2 −8 48
−1 −𝟏
𝒛̅ = 𝑐𝐵𝑉 𝐵 𝑏 = 𝑐𝐵𝑉 𝑩 𝑏 = [0 20 𝟕𝟎] [0 2 −4] [20] = 300 𝒐
0 −0.5 1.5 8
24
̅ = [0 20 𝟕𝟎] [ 8 ] = 300
̅𝒛 = 𝑐𝐵𝑉 𝐵−1 𝑏 = 𝒛̅ = 𝑐𝐵𝑉 𝒃
2
𝒛̅ = 𝟕𝟎𝒙𝟏 + 𝟑𝟎𝒙𝟐 + 𝟐𝟎𝒙𝟑 = 𝟑𝟎𝟎$
Otro modo de darse cuenta de que 𝒛 es ahora igual a 300 dólares es observar que ha aumentado el ingreso a partir de cada
escritorio en 70 — 60 = 10$. Dakota está fabricando 2 escritorios, así que el ingreso debe aumentar a 2 * 10 = 20, y el nuevo
ingreso será z = 280 + 20 = 300$.

Cuando la base actual ya no es óptima


Si 𝒄𝟏 < 56 o 𝒄𝟏 > 80, la base actual ya no es óptima. De manera intuitiva si el precio de los escritorios disminuye en
forma suficiente (y todos los otros precios se mantienen constantes), ya no vale la pena fabricar escritorios. El análisis
muestra que esto ocurre si el precio de los escritorios disminuye más de 4 dólares. Sí 𝒄𝟏 < 56, 𝒙𝟏 ya no es una variable
básica en la nueva solución óptima. Por lo contrario, si 𝒄𝟏 > 80, los escritorios originan ganancias suficientes como para
hacer subóptima la base actual; los escritorios son tan atractivos que se deben fabricar más. Para hacerlo, otra variable
debe salir de la base.

Si 𝒄𝟏 = 100 > 80, entonces la base actual ya no es óptima. Para determinar la nueva solución óptima, se crea la tabla
óptima para 𝒄𝟏 = 100 y se procede con el simplex.

Si 𝒄𝟏 = 100 → ∆ = 100 — 60 = 40 el nuevo renglón 0 será

Programación Lineal Profesor: Luz E. Medina C. − Página 23


Análisis de Sensibilidad Modificación del coeficiente de una variable básica de la función objetivo

12 −8
−𝟏
𝑐𝐵𝑉 𝑩 = [0 20 𝟏𝟎𝟎] [02 −4] = [0 − 10 70]
0
−0.5 1.5
48
−1 −𝟏
𝒛̅ = 𝑐𝐵𝑉 𝐵 𝑏 = 𝑐𝐵𝑉 𝑩 𝑏 = [0 − 10 70] [20] = 360 𝒐
8
24
−1 ̅
𝒛̅ = 𝑐𝐵𝑉 𝐵 𝑏 = 𝒛̅ = 𝑐𝐵𝑉 𝒃 = [0 20 𝟏𝟎𝟎] [ 8 ] = 360
2
𝒓𝒆𝒏𝒈𝒍ó𝒏 𝒛 𝒙𝟏 𝒙𝟐 𝒙𝟑 𝒔𝟏 𝒔𝟐 𝒔𝟑 𝑽𝑩
0 1 0 5 + 𝟏. 𝟐𝟓∆ 0 0 𝟏𝟎 − 𝟎. 𝟓∆ 𝟏𝟎 + 𝟏. 𝟓∆ 𝑧=
0 1 0 5 + 𝟏. 𝟐𝟓(𝟒𝟎) 0 0 𝟏𝟎 − 𝟎. 𝟓(𝟒𝟎) 𝟏𝟎 + 𝟏. 𝟓(𝟒𝟎) 𝑧 = 360
0 0 0 55 0 1 −10 70 𝑧 = 360

𝒓𝒆𝒏𝒈𝒍ó𝒏 𝒛 𝒙𝟏 𝒙𝟐 𝒙𝟑 𝒔𝟏 𝒔𝟐 𝒔𝟑 𝑽𝑩 𝒄𝒐𝒄𝒊𝒆𝒏𝒕𝒆
0 1 0 55 0 0 −10 70 𝑧 = 360
1 0 0 −1 0 1 2 −8 𝑠1 = 24 24⁄2 = 12
2 0 0 −2 1 0 2 −4 𝑥3 = 8 8⁄2 = 4 ∗
3 0 1 1.25 0 0 −0.5 1.5 𝑥1 = 2

𝒓𝒆𝒏𝒈𝒍ó𝒏 𝒛 𝒙𝟏 𝒙𝟐 𝒙𝟑 𝒔𝟏 𝒔𝟐 𝒔𝟑 𝑽𝑩
0 1 0 45 5 0 0 50 𝑧 = 400
1 0 0 0 1 1 0 4 𝑠1 = 16
2 0 0 −2 0.5 0 1 2 𝑠2 = 4
3 0 1 0.75 0.25 0 0 0.5 𝑥1 = 4

Programación Lineal Profesor: Luz E. Medina C. − Página 24


Análisis de Sensibilidad Modificación del coeficiente de una variable básica de la función objetivo

Si 𝒄𝟏 = 100 la nueva Solución óptima es: 𝒛 = 𝟒𝟎𝟎, 𝒔𝟏 = 𝟏𝟔, 𝒔𝟐 = 𝟒 𝒙𝟏 = 𝟒, 𝒙𝟐 = 𝒙𝟑 = 𝒔𝟑 = 𝟎


Al aumentar la utilidad de los escritorios Dakota ha dejado de hacer sillas. Los recursos que se usaban antes para producir
las sillas, se utilizan ahora para hacer 4 − 2 = 2 (solución óptima anterior) 2 escritorios adicionales.

En resumen, si cambia el coeficiente de una variable básica 𝒙𝒋 de la función objetivo, entonces la base actual sigue siendo
óptima si se mantiene no negativo el coeficiente de todas las variables del renglón 0 de la tabla de BV. Si alguna variable
del renglón 0 tiene coeficiente negativo, entonces la base actual ya no es óptima.

Programación Lineal Profesor: Luz E. Medina C. − Página 25


Análisis de Sensibilidad Modificación del lado derecho de una restricción

Modificación del lado derecho de una restricción


Efecto en la base actual

¿Cómo la solución óptima para un PL cambia si se modifica el lado derecho de una restricción? Dado que 𝒃 no aparece en
𝒄̅𝒋 = 𝑐𝐵𝑉 𝐵−1 𝑎𝑗 − 𝑐𝑗 al cambiar el lado derecho de una restricción, el renglón 0 de la tabla óptima de conserva sin cambio
alguno; al modificar un lado derecho, no es posible hacer que la base actual se vuelva subóptima.
̅ = 𝐵−1 𝑏) se observa que un cambio en el lado derecho de una restricción afectará el lado
A partir de la ecuación (𝒃
derecho de las restricciones de la tabla óptima. Sí el lado derecho de cada restricción en la tabla óptima se conserve no
negativo, la base actual se mantiene factible y óptima. Si por lo menos un lado derecho en la tabla óptima se vuelve
negativo, entonces la base actual ya no es factible y, por lo tanto, ya no es óptima.

Sí se desea determinar qué tanto afecta a la solución óptima el cambio de la cantidad de las horas de acabado ( 𝒃𝟐 ) del
problema de Dakota. En el problema original 𝒃𝟐 = 𝟐𝟎 si se cambia a 𝒃𝟐 = 𝟐𝟎 + ∆, el lado derecho de las restricciones en
la tabla óptima se transformará en
48 1 2 −8
−𝟏
𝒃 = [20 + ∆] ; 𝑩 [0 2 −4]
8 0 −0.5 1.5

1 2 −8 48 24 + 2∆
̅ −𝟏
𝒃 = 𝑩 𝒃 = [0 2 −4] [20 + ∆] = [ 8 + 2∆ ]
0 −0.5 1.5 8 2 − 0.5∆

Para que la base actual se conserve óptima se requiere que el lado derecho de cada restricción en la tabla óptima se
̅≥𝟎
mantenga no negativo. Esto quiere decir que la base actual seguirá siendo óptima si y sólo si se cumple: 𝒃

Programación Lineal Profesor: Luz E. Medina C. − Página 26


Análisis de Sensibilidad Modificación del lado derecho de una restricción

24 + 2∆ ≥ 𝟎; ∆ ≥ −𝟏𝟐
8 + 2∆ ≥ 𝟎; ∆ ≥ −𝟒
2 − 0.5∆ ≥ 𝟎; ∆ ≤ 𝟒

Si −𝟒 ≤ ∆ ≤ 𝟒, la base actual es factible y, por lo tanto, óptima. Lo anterior significa que para 20 − 𝟒 ≤ 𝒃𝟐 < 𝟐𝟎 + 𝟒;

16 ≤ 𝒃𝟐 ≤ 𝟐𝟒, la base actual es óptima: si se dispone de entre 16 y 24 horas de acabado, BV es óptima, y Dakota debe
fabricar todavía escritorios y sillas. Si 𝒃𝟐 < 16 𝑜 𝒃𝟐 > 𝟐𝟒, la base actual se vuelve no factible y deja de ser óptima.

Efecto en las variables de decisión y z


Aun cuando la base actual es óptima (16 ≤ 𝒃𝟐 ≤ 𝟐𝟒), se modifican los valores de las variables de decisión y 𝒛. Dado que
̅ = 𝐵−1 𝑏 y que el valor óptimo de 𝒛 está dado
los valores de las variables básicas en la solución óptima están dados por 𝒃
̅ = 𝑐𝐵𝑉 𝐵−1 𝑏. Al modificar 𝒃 cambiarán los valores de las variables básicas y el valor óptimo de 𝒛.
por 𝒛

Sí están disponibles 22 horas de acabado, como 16 ≤ 𝟐𝟐 ≤ 𝟐𝟒 la base actual sigue siendo óptima, así que las variables no
básicas siguen siendo iguales a 0 y los nuevos valores de las variables básicas son:
𝑠1 1 2 −8 48 28
̅ −1 𝑥
𝒃 = 𝐵 𝑏 = [ 3 ] = [0 2 −4] [𝟐𝟐] = [12]
𝑥1 0 −0.5 1.5 8 1
Si estuvieran disponibles 22 horas de acabado, entonces Dakota debería fabricar 12 sillas y sólo 1 escritorio. El nuevo valor
óptimo de 𝒛 si hay 22 horas disponibles, es

Programación Lineal Profesor: Luz E. Medina C. − Página 27


Análisis de Sensibilidad Modificación del lado derecho de una restricción

28
𝒛̅ = 𝑐𝐵𝑉 𝐵 −1 ̅
𝑏 = 𝒛̅ = 𝑐𝐵𝑉 𝒃 = [0 10 10] [12] = 300
1
Cuando la base actual ya no es óptima
Si la modificación de un lado derecho es tal que la base actual ya no es óptima, ¿cómo se puede determinar la nueva base
óptima?

Si 𝒃𝟐 = 𝟑𝟎; 𝒃𝟐 > 𝟐𝟒, la base actual ya no es óptima.


𝑠1 2 1 −8 48 44
̅=𝐵
𝒃 −1
𝑏 = [𝑥3 ] = [0
2 −4] [𝟑𝟎] = [ 28 ]
𝑥1 0
−0.5 1.5 8 −3
44
−1 ̅
𝒛̅ = 𝑐𝐵𝑉 𝐵 𝑏 = 𝒛̅ = 𝑐𝐵𝑉 𝒃 = [0 10 10] [ 28 ] = 380
−3
𝒓𝒆𝒏𝒈𝒍ó𝒏 𝒛 𝒙𝟏 𝒙𝟐 𝒙𝟑 𝒔𝟏 𝒔𝟐 𝒔𝟑 𝑽𝑩
0 1 0 5 0 0 10 10 𝑧 = 380
1 0 0 −1 0 1 2 −8 𝑠1 = 44
2 0 0 −2 1 0 2 −4 𝑥3 = 28
3 0 1 1.25 0 0 −0.5 1.5 𝑥1 = −3

En la tabla para la base óptima, BV ya no es factible. Con el algoritmo Símplex Dual, el cual se usa para resolver PPL cuando
la tabla inicial tiene uno o más lados derechos negativos y el coeficiente de cada variable del renglón 0 es no negativo se
podría hallar una solución.

Programación Lineal Profesor: Luz E. Medina C. − Página 28


Análisis de Sensibilidad Modificación de la columna de una variable no básica

Modificación de la columna de una variable no básica


En el planteamiento inicial de Dakota se requieren 6 pies tablón de madera, 2 horas de acabado y 1.5 horas de carpintería,
para producir una mesa que se vende en 30 dólares, 𝒙𝟐 (la variable para las mesas) es no básica en la solución óptima. Esto
significa que Dakota no debe fabricar ahora ninguna mesa.
Sí el precio de las mesas aumenta a 43 dólares y debido a cambios en los métodos de producción, una mesa requiere 5 pies
tablón de madera, 2 horas de acabado y 2 horas de carpintería ¿Cambiaría la solución óptima para el problema de Dakota?
Se están cambiando elementos de la columna para en el problema original (incluso la función objetivo).

Al cambiar la columna para una variable no básica tal como las mesas Se observa que 𝐵 −1 𝑦 𝑏 no cambian y, por tanto, el
−1
lado derecho de la tabla de 𝐶𝐵𝑉 𝐵 𝑏 no varía, así que BV todavía es factible. Como 𝑥2 es una variable no básica, 𝐶𝐵𝑉 no
ha cambiado.

La única variable cuyo coeficiente del renglón 0 se modificará al cambiar 𝑐2 𝑒𝑠 𝑥2 , por lo tanto, BV continuará siendo
̅̅̅𝟐 > 0, y BV será subóptima si -𝒄̅̅̅𝟐 < 0, en este caso, 𝑧 podría mejorar al entrar 𝑥2 a la base. Mediante el
óptima si 𝒄
proceso que se denomina valorar 𝑥2 el nuevo coeficiente de 𝑥2 en el renglón 0 es:

1 2 −8 5
[0 −𝟏
𝑐𝐵𝑉 = 20 60]; 𝑩 [0 2 −4] ; 𝒂𝟐 = [2] ; 𝒄𝟐 = 43
0 −0.5 1.5 2
5
−𝟏
𝑐̅2 = 𝑐𝐵𝑉 𝑩 𝒂𝟐 − 𝒄𝟐 ; 𝑐̅2 = [0 10 10] [2] − 43 = −𝟑 < 0
2
1 2 −8 5 −7
−𝟏
𝑎2 = 𝑩 𝒂 𝟐 = [ 0
̅̅̅ 2 −4] [2] = [−4]
0 −0.5 1.5 2 2

Programación Lineal Profesor: Luz E. Medina C. − Página 29


Análisis de Sensibilidad Modificación de la columna de una variable no básica

𝒓𝒆𝒏𝒈𝒍ó𝒏 𝒛 𝒙𝟏 𝒙𝟐 𝒙𝟑 𝒔𝟏 𝒔𝟐 𝒔𝟑 𝑽𝑩 𝒄𝒐𝒄𝒊𝒆𝒏𝒕𝒆
0 1 0 −3 0 0 10 10 𝑧 = 280
1 0 0 −7 0 1 2 −8 𝑠1 = 24 x
2 0 0 −4 1 0 2 −4 𝑥3 = 8 x
3 0 1 2 0 0 −0.5 1.5 𝑥1 = 2 2/2 = 1

𝒓𝒆𝒏𝒈𝒍ó𝒏 𝒛 𝒙𝟏 𝒙𝟐 𝒙𝟑 𝒔𝟏 𝒔𝟐 𝒔𝟑 𝑽𝑩
0 1 1.5 0 0 0 9.25 12.25 𝑧 = 283
1 0 3.5 0 0 1 0.25 2.75 𝑠1 = 31
2 0 2 0 1 0 1 −1 𝑥3 = 12
3 0 3.5 1 0 0 0.25 0.75 𝑥2 = 1

La nueva solución óptima para el problema de Dakota es:

𝒛 = 𝟐𝟖𝟑, 𝒔𝟏 = 𝟑𝟏 𝒙𝟑 = 𝟏𝟐, 𝒙𝟐 = 𝟏 𝒙𝟏 = 𝒔𝟐 = 𝒔𝟑 = 𝟎
Después de que se modificó la columna para la variable no básica 𝑥2 (mesas), Dakota debe fabricar 12 sillas y 1 mesa.

En resumen, si la columna de una variable no básica 𝒙𝒋 cambia, la base actual continúa siendo óptima si si 𝒄̅𝒋 ≥ 0, y BV la
base actual ya no es óptima, será subóptima si -𝒄̅𝒋 < 0 y 𝒙𝒋 será una variable básica en la nueva solución óptima.

Modificación de la columna de una variable básica


Si la columna de una variable básica se modifica, entonces esto dificulta, por lo regular, la determinación de si la base
actual aún es óptima. Esto se debe a que el cambio afecta a 𝒄̅𝒋 = 𝑐𝐵𝑉 𝐵 −1 𝑎𝑗 − 𝑐𝑗 y 𝒃 ̅ = 𝐵−1 𝑏, por consiguiente, todo el
renglón 0 y el lado derecho completo de la tabla óptima. Como siempre, la base actual es óptima si y sólo si el coeficiente
de todas las variables es no negativo en el renglón 0 y el lado derecho de todas las restricciones es no negativo.

Programación Lineal Profesor: Luz E. Medina C. − Página 30


Análisis de Sensibilidad Suma de una nueva actividad

Suma de una nueva actividad


En muchas situaciones, las oportunidades surgen para emprender nuevas actividades. Por ejemplo, en el problema de
Dakota, la compañía se podría encontrar con la oportunidad de elaborar otros tipos de muebles, como taburetes. Si surge
una nueva actividad, es posible evaluarla aplicando el método utilizado para determinar si la base actual aún es óptima
después de cambiar la columna de una variable no básica.
Sí Dakota planea fabricar taburetes, un taburete se vende en 15 dólares y requiere 1 pie tablón de madera, 1 hora de
acabado y 1 hora de carpintería. ¿Debería la compañía fabricar taburetes?
Se define

𝒙𝟒 = 𝑐𝑎𝑛𝑡𝑖𝑑𝑎𝑑 𝑑𝑒 𝑡𝑎𝑏𝑢𝑟𝑒𝑡𝑒𝑠 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑑𝑜𝑠 𝑝𝑜𝑟 𝐷𝑎𝑘𝑜𝑡𝑎 𝑐𝑎𝑑𝑎 𝑠𝑒𝑚𝑎𝑛𝑎


La nueva tabla inicial es:

𝒓𝒆𝒏𝒈𝒍ó𝒏 𝒛 𝒙𝟏 𝒙𝟐 𝒙𝟑 𝒙𝟒 𝒔𝟏 𝒔𝟐 𝒔𝟑 𝑽𝑩
0 1 −60 −30 −20 −15 0 0 0 𝑧=0
1 0 8 6 1 1 1 0 0 𝑠1 = 48
2 0 4 2 1.5 1 0 1 0 𝑠2 = 20
3 0 2 1.5 0.5 1 0 0 1 𝑠3 = 8

A la suma de la columna de 𝑥4 al problema se le llama suma de una nueva actividad.

Se debe calcular 𝑐̅4 = 𝑐𝐵𝑉 𝑩−𝟏 𝒂𝟒 − 𝒄𝟒 ; el coeficiente de la nueva actividad en el renglón 0 de la tabla óptima. Se observa
que 𝐵 −1 𝑦 𝑏 no cambian y, por tanto, el lado derecho de la tabla, de 𝐶𝐵𝑉 𝐵 −1 𝑏 no varía, así que BV todavía es factible. Se
ve que el coeficiente de cada una de las variables antiguas en el renglón 0 permanece sin cambio.

La única variable cuyo coeficiente del renglón 0 que puede tener coeficiente negativo al cambiar 𝑥4 𝑒𝑠 𝑐4 , por lo tanto,
̅̅̅𝟒 > 0, y BV será subóptima si -𝒄̅̅̅𝟒 < 0, en este caso, 𝑧 podría mejorar al entrar 𝑥4 a la
BV continuará siendo óptima si 𝒄
base.

Programación Lineal Profesor: Luz E. Medina C. − Página 31


Análisis de Sensibilidad Suma de una nueva actividad

Para determinar si una actividad nueva ocasiona que la base actual deje de ser óptima, se valora la nueva actividad:
1
𝒄𝟒 = 15; 𝒂𝟒 = [1] ;
1
1
−𝟏
𝑐̅4 = 𝑐𝐵𝑉 𝑩 𝒂𝟒 − 𝒄𝟒 ; 𝒄̅̅̅𝟒 = [0 10 10] [1] − 15 = 5 > 0
1
Dado que 𝒄̅̅̅𝟒 > 0 la base actual aún es óptima. De manera equivalente, el costo reducido de los taburetes es 5 dólares.
Esto quiere decir que cada taburete producido reducirá el ingreso en 5 dólares. Por esta razón, la compañía elige no
fabricar taburetes.

En resumen, si una nueva columna que corresponde a una variable 𝒙𝒋 se añade a un PPL, entonces, la base actual continúa
siendo óptima si si 𝒄̅𝒋 ≥ 0, y BV la base actual ya no es óptima, será subóptima si -𝒄̅𝒋 < 0 y 𝒙𝒋 será una variable básica en
la nueva solución óptima.

Programación Lineal Profesor: Luz E. Medina C. − Página 32

También podría gustarte