Вы находитесь на странице: 1из 17

COSULTA INVESTIGACION DE OPERACIONES

STEFANY AGUDELO

PAOLA CARVAJAL

UNIVERSIDAD FRANCISCO DE PAULA SANTANDER

SAN JOSE DE CUCUTA

2018
CONSULTA INVESTIGACION DE OPERACIONES

PAOLA CARVAJAL

11

STEFANY AGUDELO

1192109

PRESENTADO A:

DCTE: FANNY YURLEY

UNIVERSIDAD FRANCISCO DE PAULA SANTANDER

SAN JOSE DE CUCUTA

2018

1. METODO SIMPLEX
El método Simplex es un procedimiento iterativo que permite mejorar la solución de la función
objetivo en cada paso. El proceso concluye cuando no es posible continuar mejorando dicho valor, es
decir, se ha alcanzado la solución óptima (el mayor o menor valor posible, según el caso, para el que se
satisfacen todas las restricciones).

Partiendo del valor de la función objetivo en un punto cualquiera, el procedimiento consiste en


buscar otro punto que mejore el valor anterior. Como se verá en el método Gráfico, dichos puntos son
los vértices del polígono (o poliedro o polícoro, si el número de variables es mayor de 2) que constituye
la región determinada por las restricciones a las que se encuentra sujeto el problema (llamada región
factible). La búsqueda se realiza mediante desplazamientos por las aristas del polígono, desde el
vértice actual hasta uno adyacente que mejore el valor de la función objetivo. Siempre que exista
región factible, como su número de vértices y de aristas es finito, será posible encontrar la solución.

El método Simplex se basa en la siguiente propiedad: si la función objetivo Z no toma su valor


máximo en el vértice A, entonces existe una arista que parte de A y a lo largo de la cual el valor de Z
aumenta. Será necesario tener en cuenta que el método Simplex únicamente trabaja con restricciones
del problema cuyas inecuaciones sean del tipo "≤" (menor o igual) y sus coeficientes independientes
sean mayores o iguales a 0. Por tanto, habrá que estandarizar las restricciones para que cumplan estos
requisitos antes de iniciar el algoritmo del Simplex. En caso de que después de éste proceso aparezcan
restricciones del tipo "≥" (mayor o igual) o "=" (igualdad), o no se puedan cambiar, será necesario
emplear otros métodos de resolución, siendo el más común el método de las Dos Fases.

Preparando el modelo para adaptarlo al método Simplex

La forma estándar del modelo de problema consta de una función objetivo sujeta a determinadas
restricciones:

Función objetivo: c1·x1 + c2·x2 + ... + cn·xn

Sujeto a: a11·x1 + a12·x2 + ... + a1n·xn = b1


a21·x1 + a22·x2 + ... + a2n·xn = b2
...
am1·x1 + am2·x2 + ... + amn·xn = bm
x1,..., xn ≥ 0

El modelo debe cumplir las siguientes condiciones:

1. El objetivo consistirá en maximizar o minimizar el valor de la función objetivo (por ejemplo,


incrementar ganancias o reducir pérdidas, respectivamente).

2. Todas las restricciones deben ser ecuaciones de igualdad (identidades matemáticas).

3. Todas las variables (xi) deben tener valor positivo o nulo (condición de no negatividad).

4. Los términos independientes (bi) de cada ecuación deben ser no negativos.


Hay que adaptar el problema modelado a la forma estándar para poder aplicar el algoritmo del
Simplex.

Tipo de optimización.

Como se ha comentado, el objetivo del método consistirá en optimizar el valor de la función objetivo.
Sin embargo, se presentan dos opciones: obtener el valor óptimo mayor (maximizar) u obtener el valor
óptimo menor (minimizar).

Además, existen diferencias en el algoritmo entre el objetivo de maximización y el de minimización en


cuanto al criterio de condición de parada para finalizar las iteraciones y a las condiciones de entrada y
salida de la base. Así:

 Objetivo de maximización

Condición de parada: cuando en la fila Z no aparece ningún valor negativo.

Condición de entrada a la base: el menor valor negativo en la fila Z (o el de mayor valor


absoluto entre los negativos) indica la variable Pj que entra a la base.

Condición de salida de la base: una vez obtenida la variable entrante, la variable que sale
se determina mediante el menor cociente P0/Pj de los estrictamente positivos.

 Objetivo de minimización

Condición de parada: cuando en la fila Z no aparece ningún valor positivo.

Condición de entrada a la base: el mayor valor positivo en la fila Z indica la variable Pj que entra
a la base.

Condición de salida de la base: una vez obtenida la variable entrante, la variable que sale se
determina mediante el menor cociente P0/Pj de los estrictamente negativos.

No obstante, es posible normalizar el objetivo del problema con el fin de aplicar siempre los mismos
criterios en lo referente a la condición de parada del algoritmo y a las condiciones de entrada y salida
de las variables de la base. De esta forma, si el objetivo es minimizar la solución, se puede cambiar el
problema a otro equivalente de maximización simplemente multiplicando la función objetivo por "-1".
Es decir, el problema de minimizar Z es equivalente al problema de maximizar (-1)·Z. Una vez obtenida
la solución será necesario multiplicarla también por (-1).

Ventajas: No hay que preocuparse por nuevos criterios de parada, condición de entrada y salida de la
base ya que se mantienen.

Inconvenientes: En el caso de que la función tenga todos los coeficientes de sus variables básicas
positivos, y además las restricciones sean del tipo de desigualdad "≤", al hacer el cambio dichos
coeficientes quedan negativos cumpliéndose la condición de parada en la primera iteración (en la fila
del valor de la función objetivo todos los valores son positivos o cero). Obteniéndose en este caso por
defecto un valor óptimo para la función igual a 0.

Solución: Realmente no existe este problema dado que para que la solución sea superior a 0 es
necesario que alguna restricción tenga impuesta la condición "≥" (y se trataría de un modelo para
el método de las Dos Fases). En el caso planteado, la solución real debe ser cero.

Cambio de signo de los términos independientes

También se ha dicho que los términos independientes (bi) de cada ecuación deben ser no
negativos para poder emplear el método Simplex. A tal fin, si alguna de las restricciones presenta un
término independiente menor que 0 habrá que multiplicar por "-1" ambos lados de la inecuación
(teniendo en cuenta que esta operación también afecta al tipo de restricción).

Ventajas: Con ésta simple modificación de signos en las restricciones correspondientes se


posibilita la aplicación del método Simplex al problema modelado.

Inconvenientes: Puede resultar que en las restricciones donde tengamos que modificar los signos
de las constantes, los tipos de desigualdad fueran "≤" (quedando tras la operación del tipo "≥") siendo
necesario desarrollar el método de las Dos Fases. Este inconveniente no es controlable, aunque podría
ocurrir el caso contrario y resultar beneficioso si los términos independientes negativos se presentan
en todas aquellas restricciones con desigualdad de tipo "≥". Si existe alguna restricción del tipo "=" no
supondría ninguna ventaja ni desventaja puesto que siempre sería de necesaria aplicación el método
de las Dos Fases.

Normalización de las restricciones

Otra de las condiciones del modelo estándar del problema es que todas las restricciones sean
ecuaciones de igualdad (también llamadas restricciones de igualdad), por lo que hay que convertir las
restricciones de desigualdad o inecuaciones en dichas identidades matemáticas.

La condición de no negatividad de las variables (x1,..., xn ≥ 0) es la única excepción y se mantiene tal


cual.

 Restricción de tipo "≤"

Para normalizar una restricción con una desigualdad del tipo "≤", hay que añadir una nueva
variable, llamada variable de holgura xs (con la condición de no negatividad: xs ≥ 0). Esta nueva
variable aparece con coeficiente cero en la función objetivo, y sumando en la ecuación
correspondiente (que ahora sí será una identidad matemática o ecuación de igualdad).

a11·x1 + a12·x2 ≤ b1 a11·x1 + a12·x2 + 1·xs = b1

 Restricción de tipo "≥"

En caso de una desigualdad del tipo "≥", también hay que añadir una nueva variable llamada
variable de exceso xs (con la condición de no negatividad: xs ≥ 0). Esta nueva variable aparece
con coeficiente cero en la función objetivo, y restando en la ecuación correspondiente.
Surge ahora un problema con la condición de no negatividad con esta nueva variable del
problema. Las inecuaciones que
Tipo de contengan una desigualdad de
Tipo de variable que aparece
desigualdad tipo "≥" quedarían:

≥ - exceso + artificial a11·x1 + a12·x2 ≥


b1 a11·x1 + a12·x2 -
= + artificial 1·xs = b1

Al realizar la primera
≤ + holgura
iteración con el método Simplex,
las variables básicas no estarán en
la base y tomarán valor cero. En este caso la nueva variable xs, tras hacer cero a x1 y x2, tomará
el valor -b1 y no cumpliría la condición de no negatividad. Es necesario añadir otra nueva
variable xr, llamada variable artificial, que también aparecerá con coeficiente cero en la función
objetivo y sumando en la restricción correspondiente. Quedando entonces de la siguiente
manera:

a11·x1 + a12·x2 ≥ b1 a11·x1 + a12·x2 - 1·xs + 1·xr = b1

 Restricción de tipo "=" Al contrario de lo que cabría pensar, para las restricciones de tipo "="
(aunque ya son identidades) también es necesario agregar variables artificiales xr. Como en el
caso anterior, su coeficiente será cero en la función objetivo y aparecerá sumando en la
restricción correspondiente.

a11·x1 + a12·x2 = b1 a11·x1 + a12·x2 + 1·xr = b1

En el último caso se hace patente que las variables artificiales suponen una violación

de las leyes del álgebra, por lo que será necesario asegurar que dichas variables artificiales tengan un
valor 0 en la solución final. De esto se encarga el método de las Dos Fases y por ello siempre que
aparezcan este tipo de variables habrá que realizarlo.

En la siguiente tabla se resume según la desigualdad el tipo de variable que aparece en la ecuación
normalizada, así como su signo:

Desarrollo del Método Simplex

 Construcción de la primera tabla:

Las columnas de la tabla están dispuestas de la siguiente forma: la primera columna de la tabla
contiene las variables que se encuentran en la base (o variables básicas), esto es, aquellas que
toman valor para proporcionar una solución; la segunda columna recoge los coeficientes que
dichas variables básicas tienen en la función objetivo (esta columna es llamada Cb); la tercera
muestra el término independiente de cada restricción (P0); a partir de ésta aparece una
columna por cada una de las variables de decisión y holgura presentes en la función objetivo
(Pj). Para tener una visión más clara de la tabla, se incluye una fila que contiene los títulos de
cada una de las columnas.

Sobre esta tabla se agregan dos nuevas filas: una de ellas, que lidera la tabla, donde
aparecen los coeficientes de las variables de la función objetivo, y una última fila que recoge el
valor la función objetivo y los costes reducidos Zj - Cj.

Los costes reducidos muestran la posibilidad de mejora en la solución Z0. Por este motivo
también son llamados valores indicadores.

Se muestra a continuación el aspecto


general de la tabla del método Simplex:
Tabla

C1 C2 ... Cn
Todos los valores incluidos en la tabla vendrán
Base Cb P0 P1 P2 ... Pn dados por el modelo del problema salvo los
valores de la fila Z (o fila indicadora). Estos se
P1 Cb1 b1 a11 a12 ... a1n obtienen de la siguiente forma: Zj = Σ(Cbi·Pj)
para i = 1..m, donde si j = 0, P0 = bi y C0 = 0, y en
P2 Cb2 b2 a21 a22 ... a2n caso contrario Pj = aij.

Se observa, al realizar el método Simplex,


... ... ... ... ... ... ... que en esta primera tabla ocupan la base todas
las variables de holgura y por ello (todos los
Pm Cbm bm am1 am2 ... amn coeficientes de las variables de holgura son 0 en
la función objetivo) el valor inicial de Z es cero.
Z Z0 Z1-C1 Z2-C2 ... Zn-Cn
Por este mismo motivo tampoco es
necesario realizar los cálculos de los costes
reducidos en la primera tabla, pudiéndose determinar directamente como el cambio de signo
de los coeficientes de cada variable en la función objetivo, esto es, -Cj.

 Condición de parada:

Se cumple la condición de parada cuando la fila indicadora no contiene ningún valor negativo
entre los costes reducidos (cuando el objetivo es la maximización), esto es, no existe posibilidad
de mejora.

Una vez cumplida la condición de parada, el valor de cada variable que logra la solución óptima
se encuentra en la columna P0, indicándose en la base a qué variable correnponde dicho valor.
Si una variable no aparece en la base, significa que su valor es cero. De la misma forma el valor
óptimo de la función objetivo (Z) se encuentra en la columna P0, fila Z.

Si no se cumple la condición de parada es necesario realizar una iteración más del algoritmo,
esto es, determinar la variable que se vuelve básica y la que deja de serlo, encontrar el
elemento pivote, actualizar los valores de la tabla y comprobar si se cumple nuevamente la
condición de parada.
Es también posible determinar que el problema no se encuentra acotado y su solución siempre
resultará mejorable. En tal caso no es necesario continuar iterando indefinidamente y se puede
finalizar el algoritmo. Esta situación ocurre cuando en la columna de la variable entrante a la
base todos los valores son negativos o nulos.

 ELECCIÓN DE LA VARIABLE QUE ENTRA A LA BASE:

Cuando una variable se vuelve básica, es decir, entra en la base, comienza a formar parte de la
solución. Observando los costes reducidos en la fila Z, se decide que entra a la base la variable
de la columna en la que éste sea el de menor valor (o de mayor valor absoluto) entre los
negativos.

 ELECCIÓN DE LA VARIABLE QUE SALE DE LA BASE:

Una vez obtenida la variable entrante, se determina que sale de la base la variable que se
encuentre en aquella fila cuyo cociente P0/Pjsea el menor de los estrictamente positivos
(teniendo en cuenta que esta operación se hará únicamente cuando Pj sea superior a 0).

 ELEMENTO PIVOTE:

El elemento pivote de la tabla queda marcado por la intersección entre la columna de la


variable entrante y la fila de la variable saliente.

 Actualización de la tabla:

Las filas correspondientes a la función objetivo y a los títulos permanecerán inalteradas en la


nueva tabla. El resto de valores deberán calcularse como se explica a continuación:

 En la fila del elemento pivote cada nuevo elemento se calcula como:

Nuevo Elemento Fila Pivote = Anterior Elemento Fila Pivote / Pivote.

 En el resto de las filas cada elemento se calcula:

Nuevo Elemento Fila = Anterior Elemento Fila - (Anterior Elemento Fila en Columna
Pivote * Nuevo Elemento Fila Pivote).

Método de la Gran M

Aquí detallaremos el Método de la Gran M.


Definimos la letra M como un número muy grande pero finito para usarlo como coeficiente de las
variables artificiales en la función objetivo y con sentido contrario a la misma para penalizar de
manera muy grande la existencia de las mismas en la solución. Si el objetivo es minimizar las variables
artificiales entraran con M positivo y si es maximizar las variables artificiales se usaran como -M.

Ejemplo:
Min Z = 2X1 + X2 + 3X3
Sujeto a:
3X1 + X2 + 2X3 <= 10
X1 - 2X2 + 3X3 >= 6
2X1 + 3X2 - X3 <= 9
X1 + X2 +2X3 = 7
C.N.N

1. Convertir al Modelo Estándar:

Cada restricción debe ser convertida de inecuación a una igualdad, agregando variables como se
requiera. Con las restricciones de tipo <=, es supremamente fácil. Simplemente se agrega una en cada
restricción con coeficiente 1 en la misma restricción y con coeficiente cero en la función objetivo. Por
ejemplo:

3X1 + X2 + 2X3 <= 10 queda:


3X1 + X2 + 2X3 + S1 = 10

Se puede leer así: el uso de la primera restricción no puede superar la disponibilidad de 10 unidades,
lo que equivale a decir que lo usado mas lo que sobre (s1) es igual a 10. Para las restricciones de tipo
mayor o igual, la lógica es la misma, de esta manera decir:

X1 - 2X2 + 3X3 >= 6

Se puede leer como: el uso de la restricción 2 debe ser como mínimo 6 unidades. Eso significa que el
uso podría ser 6.1 o tal vez 7 u 8... etc. Podríamos escribirlo también como 6+0.1 o 6+1 o 6+2 ... o en
términos generales:

X1 - 2X2 + 3X3 = 6 + S2 que es equivalente a decir: lo usado en la restricción2es igual al


mínimo requerido que es 6 mas el adicional que esta en S2. Esto lo podemos reescribir como:

X1 - 2X2 + 3X3 - S2 = 6

Sin embargo para el método simplex, cuando aparece esta restricción tipo >= es necesario adicionar
una variable comodín, llamada Variable Artificial, sin ningún significado físico, sólo como artificio
matemático. Lo sumamos al lado izquierdo de la restricción como se muestra a continuación:

X1 - 2X2 + 3X3 - S2 + A1 = 6

Al usar una variable artificial debemos penalizar la función objetivo allí la vamos a incluir con un
coeficiente muy grande, llamado M, al estar minimizando la sumamos + .MA1.

La tercera restricción es de tipo <=, por lo que no tenemos ningún problema con ella:

2X1 + 3X2 - X3 <= 9 queda


2X1 + 3X2 - X3 + S3 = 9

La cuarta restricción es de tipo =. Para este tipo de restricción simplemente adicionamos una variable
artificial al lado izquierdo:

X1 + X2 +2X3 = 7 queda:
X1 + X2 +2X3 + A2 = 7
Recordemos: las variables de holgura quedan con coeficiente 0 en la función objetivo y las variables
artificiales con coeficiente M. Positiva si es minimizando o negativa si es maximizando.

En resumen el modelo queda de la siguiente manera:

Min Z = 2X1 + X2 + 3X3 + 0S1 + 0S2 + MA1 + 0S3 + MA2


Sujeto a:
3X1 + X2 + 2X3 + S1 = 10
X1 - 2X2 + 3X3 - S2 + A1 = 6
2X1 + 3X2 - X3 + S3 = 9
X1 + X2 + 2X3 + A2 = 7
C.N.N (Condición de No Negatividad)

2. Escribir en formato de Tabla Simplex.

Si lo escribimos como una matriz, indicando los nombres de las variables en negro queda asi:

Fig 1
X1 X2 X3 S1 S2 A1 S3 A2
Min Z 2 1 3 0 0 M 0 M RHS
R1 3 1 2 1 0 0 0 0 10
R2 1 -2 3 0 -1 1 0 0 6
R3 2 3 -1 0 0 0 1 0 9
R4 1 1 2 0 0 0 0 1 7

Dónde X1, X2, X3 son las variables de decisión, S1, S2 y S3 son las variables de Holgura. R1, R2, R3, R4
son las restricciones y RHS son las disponibilidades o Requerimientos de las restricciones, (RHS= Right
Hand Side: "el lado derecho" es decir los valores numéricos).

3. Definir la Variable que entra


Recordemos que tenemos un grupo de variables que llamamos base a las que tenemos en cuenta en
cada iteración para dar la solución, las demás variables las llamamos No Básicas y se se toman con
valor cero (de manera análoga a cuando resolvemos un sistema de ecuaciones que tiene más variables
que ecuaciones, tenemos que hacer cierta cantidad de estas variables iguales a cero).
En la primera iteración la regla para escoger las variables que estarán en la base es la siguiente:
-Si hay variables de decisión y de holgura, se toma la de holgura.
-Si hay variables de decisión, de holgura y artificiales se toma la variable artificial.
-Si hay variables de decisión y artificiales se toma la variable artificial.

Por esta razón para la primera restricción dónde hay variables de decisión (Xi) y la de holgura S1,
tomamos la S1 para la base, en la segunda restricción hay de holgura, de decisión y artificial, tomamos
la artificial A1, en la tercera hay de decisión y de holgura, tomamos la de holgura S3 y por último en la
cuarta restricción hay de decisión y artificial, por lo que tomamos la A2 para la base. Todas las demás
se asumen en la primera iteración con valor cero.
Llenar la tabla inicial. Tal como se ve en la tabla de abajo. Hay muchos formatos de tablas, pero en
esencia son el mismo. Esta el listado de variables que se tienen en la base (en la segunda columna
rotulada como base), en la primera columna están los coeficientes de las variables básicas, luego
vienen las restricciones con sus coeficientes, las disponibilidades/requerimientos de las restricciones
en la columna RHS, una columna vacía llamada Theta que ya llenaremos. Las dos ultimas filas son para
determinar que variable va a entrar a la base. Algunas personas omiten la fila Z. Realmente no es
necesaria, sólo para dar un poco más de claridad a la iteración.
La fila Z es el resultado de la suma del producto de la columna 'coef' y de cada columna en la
restricción, así:
0*3+M*1 + 0*2 + M*1 = 2M
0 * 1 + M * (-2) + 0*3 + M*1 = -M
0 * 2 + M * 3 + 0 *-1 + M*2 = 5M ...de igual manera para las otras 5 columnas.
La fila Cj-Zj es el resultado de restar el coeficiente de la función objetivo (la segunda fila de negro) con
el valor de Z que acabamos de calcular.
2-2M = 2-M (¡evidente!)
1-(-M) = 1+M... etc.
En este momento nos hacemos la siguiente pregunta: ¿cuál variable al entrar a la base hace que la
función objetivo disminuya más (porque estamos minimizando)? O en otras palabras, cuál es el valor
más negativo de Cj-Zj? Recordemos que M representa un número finito, muy, muy
grande. Rápidamente nos damos cuenta que corresponde a 3-5M, puesto que de todas es la que tiene
el valor negativo de M con mayor valor absoluto. Si no lo ve tan rápido, haga lo siguiente: reemplace M
por un valor grande positivo en la fila Cj -Zj, digamos por 1000.000, notará de inmediato que el valor
más negativo está en la columna respectiva a la variable X3. ¿Por lo tanto, ésta variable debe entrar a
reemplazar a otra variable en la base... a cuál??
Fig 2
X1 X2 X3 S1 S2 A1 S3 A2
Coef Base 2 1 3 0 0 M 0 M RHS Theta
0 S1 3 1 2 1 0 0 0 0 10 5.00
M A1 1 -2 3 0 -1 1 0 0 6 2.00 Sale
0 S3 2 3 -1 0 0 0 1 0 9 M
M A2 1 1 2 0 0 0 0 1 7 3.50
Z 2M -M 5M 0 -M M 0 M 13M
Cj- Zj 2-2M 1+M 3-5M 0 M 0 0 0
Entra

3. Definir la Variable que Sale

Para establecer que variable debe salir de la base, hacemos un cociente entre la disponibilidad (RHS) y
la columna de la variable que entra, en nuestro caso, acabamos de decir que es la variable X3. Este
cociente lo vamos a llamar Theta. Algunos libros lo llaman 'ratio'.
10 /2 = 5
6/3 =2
9 / -1 = ... bueno, en caso que dividamos por un valor negativo, no lo vamos a tener en cuenta para
salir, por lo que lo rotulamos como M.
7/2 = 3.5

La variable que más nos restringe, por lo tanto la que el valor de theta es menor (pero positivo) es de 2,
correspondiendo a la variable A1. Por lo tanto sale A1 y entra X3.

A la intersección entre la columna de la variable que entra y de la fila de la variable que sale, la
llamamos pivote. Sobre ella se empleará el método de Gauss-Jordan. Aquí siempre he señalado el
pivote de color verde. En la fig 2 corresponde al valor 3.

4. Iteración: Gauss-Jordan

Luego que se ha encontrado que variable sale de la base, y cual entra y que pr lo tanto ya tenemos una
celda pivote, es necesario realizar la eliminación gaussiana. Ello lo podemos resumir como:

* Convertir la celda pivote en 1, dividiendo toda la fila por ella misma


* Convertir todas las celdas por encima y por debajo de la celda pivote en cero.

Vamos paso por paso: Convertir la celda pivote en 1.

Llenamos un formato vacio simplex, la fila que contiene el pivote la vamos a pasar al nuevo formato
convertida mediante la siguiente operación: dividimos toda la fila por el valor del pivote. (Para
convertir el pivote en 1).
1/3 = 0.33
-2/3 = -0.67
3/3 = 1(Pivote)
0/3= 0
-1/3= -0.33
1/3=0.33
0/3=0
0/3=0
6/3= 2 (En la columna del RHS)

Y la pasamos al nuevo formato (Fig3).


Esta nueva fila que hemos calculado va a servir para convertir las demas celdas por la columna del
pivote en cero, como es el requisito del método. Fijemonos un momento en la fig 2, en el pivote en
verde, que contiene el 3, precisamente el que acabamos de convertir en 1. Por encima encontramos el
2 y por debajo encontramos el -1 y el 2. Estos valores son los que debemos convertir en ceros. Para
ello hacemos operaciones entre filas y columnas de la siguiente manera (s recuerda bien los detalles de
esto, de sus clases de algebra lineal sientase libre de saltar esta explicación): Multiplicamos la fila que
contenia el pivote por el opuesto de cada número que deseamos eliminar y se lo sumamos a la fila que
deseamos convertir. Ej

Para la primera fila que contiene el 2 que deseamos eliminar multiplicamos la fila pivote por -2 y se la
sumamos asi:

La fila pivote que quedó convertida en esto:


0.33 -0.67 1 0 -0.33 0.33 0 0 2
La multiplicamos por -2 y nos da:
-0.67 1.33 -2 0 0.67 -0.67 0 0 -4
El valor anterior lo sumamos componente a componente a la fila en la que queremos hacer la
eliminación: que es la siguiente:
3 1 2 1 0 0 0 0 10
Y el resultado es:
2.33 2.33 0 1 0.67 -0.66 0 0 6

Este valor es el que copiamos en el nuevo formato en la fig 3 en la fila correspondiente, la primera.

Repetimos este procedimiento para la fila 3 y la fila 4. Con ello ya llenamos todo el formato.

5. Prueba de Optimidad:
La prueba de optimidad se debe hacer cada vez que se evalúa si hay una variable que debe entrar a la
base. Y es sencillamente lo siguiente. Se hace la pregunta: ¿Hay alguna variable que al entrar mejora la
solución? Ello lo vemos en la fila Cj-Zj. Si al calcular esta fila aún hay valores negativos y estamos
minimizando, entonces es posible mejorar aún más la solución. Lo mismo para el caso de la
maximización. Si hay valores positivos en la fila Cj-Zj y estamos maximizando, aún no hemos llegado al
óptimo.
En la fig 2 nos damos cuenta que habían todavia valores negativos en Cj-Zj, por lo tanto no se había
terminado, ahora en la fig 3, aún quedan valores negativos, el más negativo de ellos esta en la variable
X2 por lo tanto debe entrar.
Continuando el algoritmo en la fig3 evaluamos que la variable A2 debe salir, la reemplazamos en el
tablero de la figura 4. Hacemos gauss-jordan, luego calculamos Z y calculamos Cj-Zj.
Fig 3.
X1 X2 X3 S1 S2 A1 S3 A2
Coef Base 2 1 3 0 0 M 0 M RHS Theta
0 S1 2.33 2.33 0.00 1.00 0.67 -0.67 0 0 6 2.57
3 X3 0.33 -0.67 1.00 0.00 -0.33 0.33 0 0 2 M
0 S3 2.33 2.33 0.00 0.00 -0.33 0.33 1 0 11 4.71
M A2 0.33 2.33 0.00 0.00 0.67 -0.67 0 1 3 1.29 Sale
Z 1+0.33M -2+2.33M 3 0 -1+0.66M 1-0.66M 0 M 6+3M
Cj- Zj 1-0.33M 3-2.33M 0 0 1-0.66M -1+1.66M 0 0
Entra
Aquí en el tablero de la figura 4, evaluamos si hay algun valor negativo en la fila Cj-Zj, nos damos
cuenta que no, por lo que no hay ninguna variable que al entrar mejore la solución.
Hemos llegado al óptimo: La solución es Z=9.8571 X1=0 (Por que no estaba en la base.) X2= 1.29,
X3=2.86
Fig 4
X1 X2 X3 S1 S2 A1 S3 A2
Coef Base 2 1 3 0 0 M 0 M RHS Theta
0 S1 2.00 0.00 0.00 1.00 0.00 0.00 0.00 -1.00 3.00
3 X3 0.43 0.00 1.00 0.00 -0.14 0.14 0.00 0.29 2.86
0 S3 2.00 0.00 0.00 0.00 -1.00 1.00 1.00 -1.00 8.00
1 X2 0.14 1.00 0.00 0.00 0.29 -0.29 0.00 0.43 1.29
Z 1.43 1.00 3.00 0.00 -0.14 0.14 0.00 1.29 9.8571
Cj- Zj 0.57 0.00 0.00 0.00 0.14 M+0.62 0.00 M+2.43
RELACIONES ENTRE PROBLEMAS PRIMALES Y DUALES:

 El número de variables que presenta el problema dual se ve determinado por el número de


restricciones que presenta el problema primal.
 El número de restricciones que presenta el problema dual se ve determinado por el número de
variables que presenta el problema primal.
 Los coeficientes de la función objetivo en el problema dual corresponden a los términos
independientes de las restricciones (RHS), que se ubican del otro lado de las variables.
 Los términos independientes de las restricciones (RHS) en el problema dual corresponden a los
coeficientes de la función objetivo en el problema primal.
 La matriz que determina los coeficientes técnicos de cada variable en cada restricción
corresponde a la transpuesta de la matriz de coeficientes técnicos del problema primal.
El sentido de las igualdades y desigualdades se comporta según la tabla de TUCKER, presentada a
continuación.

Tabla de TUCKER
IMPORTANCIA DE LA DUALIDAD EN PROGRAMACIÓN LINEAL
La resolución de los problemas duales respecto a los primales se justifica dada la facilidad que se
presenta dados problemas donde el número de restricciones supere al número de variables. Además
de tener gran aplicación en el análisis económico del problema.

Otra de las ventajas que presenta es que dado a que el número de restricciones y variables entre
problema dual y primal es inverso, se pueden resolver gráficamente problemas que presenten dos
restricciones sin importar el número de variables.

VARIABLES DE HOLGURA O EXCEDENTE.


Son variables que se agregan a la restricción para que la relación de la restricción sea de igualdad
(representa el valor que le hace falta al lado izquierdo para ser igual al lado derecho). Ambos tipos de
variables tienen que cumplir con la restricción de no negatividad Variable de holgura.
Se suma al lado izquierdo de la restricción del tipo ≤.

6 x1+4 x2 ≤ 24 6 x1+4 x2 + h = 24
Variable de excedente.
Se resta al lado izquierdo de la restricción del tipo ≥.
2 x1+3x2 ≥ 24 6 x1+4 x2- h = 24
VARIABLE ARTIFICIAL

Hasta este momento se han presentado los detalles del método simplex con la suposición de que el
problema encuentra en nuestra forma estándar (maximizar Z sujeta a las restricciones funcionales
de la forma 0para

y restricciones de no negatividad sobre todas las variables) con bi

toda i = 1, 2, ..., m. En esta sección se establecerá cómo hacer los ajustes requeridos a otras formas
legítimas de modelos de Programación Lineal. Se verá que todos estos ajustes se pueden hacer en el
paso inicial, de manera que el resto del método simplex se aplica justo como se aprendió. Él único
problema) es

serio que introducen las otras formas de restricciones funcionales (= ó identificar una solución inicial
básica factible. Antes, esta solución inicial se encontraba en forma muy conveniente al hacer que las
variables de holgura fueran las variables básicas iniciales, donde cada una era igual a la constante no
negativa del lado derecho de la ecuación correspondiente. Ahora debe hacerse algo más. El enfoque
estándar que se utiliza es estos casos es la técnica de variables artificiales. Ésta construye un problema
artificial más conveniente introduciendo una variable ficticia (llamada variable artificial) en cada
restricción que lo requiera. Esta nueva variable se introduce sólo con el fin de que sea la variable básica
inicial para esa ecuación. Las restricciones usuales de no negatividad también se aplican sobre estas
variables y la función objetivo se modifica para que imponga una

ELEMENTO PIVOTE

Los algoritmos de pivote (o algoritmos de cambio de base) son algoritmos de la optimización


matemática, y en especial de la Programación Lineal. Dado un sistema de ecuaciones lineales cuyas
variables deben adoptar valores no negativos (esencialmente lo mismo que un sistema de inecuaciones
lineales), se busca la mejor de entre muchas soluciones alternativas, es decir, una solución óptima del
sistema. En cada paso de tal búsqueda, el algoritmo transforma el sistema sin alterar su conjunto de
soluciones. Algoritmos de pivote importantes son los diversos algoritmos simplex12 y los algoritmos
criss-cross.3
Los algoritmos de pivote son de gran importancia para el tratamiento de inecuaciones lineales, donde
juegan un papel análogo al de la eliminación de Gauss para ecuaciones lineales. Se encuentran
numerosas aplicaciones2 de sistemas de inecuaciones en áreas tan diversas como la investigación de
operaciones industriales, el transporte y distribución de bienes, en carteras de valores, la ingeniería
estructural, la estadística, y la teoría de juegos. Frecuentemente se abordan sistemas con decenas de
miles de variables.4
QUE ES ITERACION
se refiere al proceso de iteración de una función, es decir, aplicando la función repetidamente, usando
la salida de una iteración como la entrada a la siguiente. La iteración de funciones aparentemente
simples pueden producir comportamientos complejos y problemas difíciles - por ejemplo, ver
la conjetura de Collatz y las secuencias del malabarista.

Вам также может понравиться