,

Ejercicio Resuelto – Método Simplex – Valor Óptimo con Infinitas Soluciones

En este ejercicio resuelto veremos un problema que admite infinitas soluciones para el valor óptimo. Esta situación se presenta cuando nos encontramos en un punto óptimo, pero en el vector de costes reducidos se presentan variables no básicas con coste reducido igual a 0.

Maximizar x1+x2

Sujeto a:
x1 + x2 ≤ 4
-x1 + x2 ≤ 1
x1, x≥ 0

Solución

Para resolver el problema utilizaremos la versión de membresía de nuestra calculadora de programación lineal:

Función Objetivo

Maximizar: Z = 1X1 + 1X2

Sujeto a:

1X1 + 1X2 ≤ 4

-1X1 + 1X2 ≤ 1

X1, X2 ≥ 0

El problema se adecuará al modelo estándar de programación lineal, agregando las variables de holgura, exceso y/o artificiales en cada una de las restricciones:

  • Restricción 1: Tiene signo “≤” (menor igual) por lo que se agregará la variable de holgura S1. En la tabla inicial, S1 estará en la base.
  • Restricción 2: Tiene signo “≤” (menor igual) por lo que se agregará la variable de holgura S2. En la tabla inicial, S2 estará en la base.
  • A continuación se muestra el problema en la forma estándar. Se colocará el coeficiente 0 (cero) donde corresponda para crear nuestra matriz:

Función Objetivo

Maximizar: Z = 1X1 + 1X2 + 0S1 + 0S2

Sujeto a:

1X1 + 1X2 + 1S1 + 0S2 = 4

-1X1 + 1X2 + 0S1 + 1S2 = 1

X1, X2, S1, S2 ≥ 0

Las letras presentes en las tablas corresponden a:

  • Cj: Vector de costes. Contiene los coeficientes de las variables de la función objetivo.
  • Cb: Coeficientes de los variables que conforman el vector solución.
  • Base: Variables que forman el vector solución.
  • Z: En esta fila encontrarás los valores del vector de costes reducidos. Se calcula multiplicando el vector solución por los coeficientes de las restricciones y se resta el vector de costes.
  • Xn, Sn: En cada una de las columnas se encuentran los coefientes de su variable correspondiente.
  • R: En esta columna se encuentra el término independiente de cada ecuación.
  • Se agregará un subíndice numérico adicional en las ecuaciones para identificar su posición en la tabla. Ejemplo: X1,2: Coeficiente de X1 en la fila 2. Para Cj y Z los subíndices indicarán su posición en la columna. Ejemplo: Cj,3: Indicaría el coeficiente de Cj en la columna 3.

Solución

Matriz Inicial

Para esta tabla, el valor de la fila Z se calculará así:

Z1 = (Cb,1*X1,1) + (Cb,2*X1,2) – Cj1 = (0*1) + (0*-1) – (1) = -1

Z2 = (Cb,1*X2,1) + (Cb,2*X2,2) – Cj2 = (0*1) + (0*1) – (1) = -1

Z3 = (Cb,1*S1,1) + (Cb,2*S1,2) – Cj3 = (0*1) + (0*0) – (0) = 0

Z4 = (Cb,1*S2,1) + (Cb,2*S2,2) – Cj4 = (0*0) + (0*1) – (0) = 0

Z5 = (Cb,1*R,1) + (Cb,2*R,2) = (0*4) + (0*1) = 0

Tabla 1 Cj 1 1 0 0
Cb Base X1 X2 S1 S2 R
0 S1 1 1 1 0 4
0 S2 -1 1 0 1 1
Z -1 -1 0 0 0

En el vector de costes reducidos (Z) tenemos valores negativos, por lo que debemos seleccionar el más negativo para la columna pivote (maximización).

El vector solución esta compuesto por los siguientes números: [-1, -1, 0, 0]. El más negativo es = -1 que corresponde a la variable X1. Esta variable ingresará a la base y sus valores en la tabla conformarán nuestra columna pivote.

Se verificará la condición de factibilidad, dividiendo los valores de la columna R entre la columna pivote X1. Para procesar la división, el denominador debe ser estrictamente positivo (Si es cero o negativo se colocará N/A = No aplica). El menor valor positivo definirá la variable que saldrá de la base:

Fila S1 → R1 / X1,1 = 4 / 1 = 4 (Menor Valor Positivo)
Fila S2 → R2 / X1,2 = 1 / -1 = N/A

El menor valor positivo corresponde a la fila de S1. Esta variable saldrá de la base. El elemento pivote corresponde al valor que cruza la columna X1 y la fila S1 = 1.

Ingresa la variable X1 y sale de la base la variable S1. El elemento pivote es 1

Iteración 1

Realizaremos las iteraciones de cada valor en la tabla considerando lo siguiente:

  • Nuevo Valor Fila Pivote = Valor Actual Fila Pivote / Elemento Pivote
  • Nuevo Valor = Valor Actual – (Elemento Fila Columna Pivote*Nuevo Valor Fila Pivote)

Cálculos en fila Pivote (Fila N° 1):

Valor Actual Fila Pivote 1 1 1 0 4
Elemento Pivote 1 1 1 1 1
Nuevo Valor Fila Pivote 1 / 1 = 1 1 / 1 = 1 1 / 1 = 1 0 / 1 = 0 4 / 1 = 4

Ahora calcularemos los nuevos valores para las otras filas de la tabla:

Fila 2:

Valor Actual -1 1 0 1 1
Elemento Fila Columna Pivote -1 -1 -1 -1 -1
Nuevo Valor Fila Pivote 1 1 1 0 4
Nuevo Valor -1 – (-1×1) = 0 1 – (-1×1) = 2 0 – (-1×1) = 1 1 – (-1×0) = 1 1 – (-1×4) = 5

Fila 3:

Valor Actual -1 -1 0 0 0
Elemento Fila Columna Pivote -1 -1 -1 -1 -1
Nuevo Valor Fila Pivote 1 1 1 0 4
Nuevo Valor -1 – (-1×1) = 0 -1 – (-1×1) = 0 0 – (-1×1) = 1 0 – (-1×0) = 0 0 – (-1×4) = 4
Tabla 2 Cj 1 1 0 0
Cb Base X1 X2 S1 S2 R
1 X1 1 1 1 0 4
0 S2 0 2 1 1 5
Z 0 0 1 0 4

Dado que no tenemos valores negativos en el vector de costes reducidos (Z) = [0, 0, 1, 0], significa que nos encontramos en el punto óptimo (maximización).

Se verifica que, en el vector de cortes reducidos (Z), existen variables no básicas con valor cero. Esto nos indica que existe otra solución que genera el mismo valor óptimo para la función objetivo. En este caso, el problema admite infinitas soluciones, estando todas ellas comprendidas dentro de la ecuación: Función Objetivo = Valor Óptimo.

Nos encontramos en un punto óptimo y hay variables no básicas con coste reducido igual a 0, por lo que existen múltiples valores para las variables de decisión que permiten obtener el valor óptimo de Z = 4, los cuáles están contenidos en la ecuación:

1X1 + 1X2 = 4

Una de las soluciones es:

X1= 4, X2= 0, S1= 0, S2= 5

Ver Listado de Problemas Resueltos