Está en la página 1de 62

TRABAJO COLABORATIVO GRUPAL

PROGRAMACION LINEAL

ESTUDIANTES
KEISA KARINA ROJAS VENCE
DORENIS JOHANA GARCIA MUÑOZ
DIEGO ARMANDO CANTILLO VIZCAINO
JORGE ANTONIO VALBUENA COTES
OSNAIDER BOTELLO RUEDAS

PROFESOR
HAROLD VALLE

UNIVERSIDAD POPULAR DEL CESAR


VALLEDUPAR
2020-2
TEORÍA DE LA DUALIDAD Y ANÁLISIS DE LA SENSIBILIDAD

Son aplicaciones que se la hacen al método simplex con el objetivo de garantizar la


optimización de un problema y a su vez para un mejor manejo del mismo método.

DUALIDAD

Es el resultado de buscar relaciones que permitan obtener información adicional de un


problema de optimización general. Esto en programación lineal nos conduce a relaciones
primal-dual. Esta relación consiste en que todo problema de optimización primal tiene un
problema asociado dual. La teoría de la dualidad es importante, tanto desde el punto de
vista teórico como del práctico. Para cada modelo lineal se puede escribir el modelo dual
asociado.

A cada problema de programación lineal se le asocia otro problema de programación lineal,


llamado el problema de programación dual. La solución óptima del problema de
programación dual, proporciona la siguiente información respecto del problema de
programación original:

1. La solución óptima del problema dual proporciona los precios en el mercado o los
beneficios de los recursos escasos asignados en el problema original.

2. La solución óptima del problema dual aporta la solución óptima del problema original y
viceversa.

IMPORTANCIA DE DUALIDAD DE PROGRAMACIÓN LINEAL

La dualidad es importante por el hecho de que es equivalente resolver un problema a


resolver su dual. Ello es debido a que los precios sombra de dual son las soluciones de
problemas y viceversa. Así, en ocasiones, puede resultar conveniente obtener las
soluciones de problemas a partir de los precios sombra de dual en vez de resolver
problemas directamente.

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.

CARACTERISTICAS

1. Si es problema de minimización el dual seria de maximización y viceversa.

2. En el dual habrá tantas variables como restricciones en el primal.

3. En el dual habrá tantas restricciones como variables en el primal.

4. Los coeficientes de la función objetivo del dual vendrán dados por los coeficientes del
lado derecho de las restricciones del primal.
5. Los coeficientes del lado derecho del dual vendrán dados por los coeficientes de la
función objetivo del primal.

6. Los coeficientes que acompañaran a las variables en una restricción del dual
corresponderán a aquellos coeficientes que acompañan a la variable primal
correspondiente a la restricción dual.

7. Para saber si las restricciones duales son de ≤, = ´o ≥, se recurre a la tabla de relaciones


primal-dual.

8. Para saber si las variables duales son ≤ 0, = 0 ´o ≥ 0, se recurre a tabla de relaciones


primal dual.

ANÁLISIS DE SENSIBILIDAD Consiste en determinar cuál es el rango de variación de los


parámetros del problema de modo que la base optima encontrada siga siendo óptimo.
Buscar el intervalo en que estos parámetros son permisibles en su variación sin que se
afecte la solución óptima del problema.

El objetivo fundamental del análisis de sensibilidad es identificar los parámetros sensibles.


Por ejemplo los parámetros cuyos valores no pueden cambiar sin que cambie la solución
óptima.

Es una herramienta útil cuando no tenemos una certeza absoluta sobre los valores que se
han dado a los términos independientes de las restricciones o los coeficientes de la función
objetivo, en este sentido el análisis de sensibilidad consiste en estudiar cómo evoluciona el
óptimo y el valor de la función objetivo del optimo ante variaciones de dichos términos
independientes y coeficientes.

IMPORTANCIA DEL ANÁLISIS DE SENSIBILIDAD Es importante porque nos permite


investigar el efecto que tendría la solución óptima proporcionada por el método simplex en
el hecho de que los parámetros (datos de entrada) tomaran otros valores posibles.

El análisis de sensibilidad es una de las partes más importantes en la programación lineal,


sobre todo para la toma de decisiones; pues permite determinar cuándo una solución sigue
siendo óptima, dados algunos cambios ya sea en el entorno del problema, en la empresa o
en los datos del problema mismo.

Este análisis consiste en determinar que tan sensible es la respuesta óptima del Método
Simplex, al cambio de algunos datos como las ganancias o costos unitarios coeficientes de
la función objetivo, o la disponibilidad de los recursos términos independientes de las
restricciones.
CARACTERÍSTICAS DEL ANÁLISIS DE SENSIBILIDAD

El análisis de sensibilidad es una herramienta efectiva por dos razones fundamentales.

 Los modelos de programación lineal son frecuencias grandes y costosas por lo tanto
no es recomendable para usarlos en un solo caso.

 Los elementos que se dan como datos para un problema de programación lineal la
mayoría de las veces son estimaciones; por lo tanto es necesario investigar o tener
en cuenta más de un conjunto de casos posibles.

Relación entre el modelo primal y el dual

Los problemas primales, dado que tienen una relación directa con la necesidad del
planteamiento, y sus resultados responden a la formulación del problema original; sin
embargo, cada vez que se plantea y resuelve un problema lineal, existe otro problema
ínsitamente planteado y que puede ser resuelto, es el considerado problema dual, el cual
tiene unas importantes relaciones y propiedades respecto al problema primal que pueden
ser de gran beneficio para la toma de decisiones.

Los problemas primales y duales se encuentran ligados por una serie de relaciones, saber
la existencia de estas puede ser considerado de gran utilidad para la resolución de
problemas que parecen no factibles, o que no pueden ser resueltos mediante un método
en particular.

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.
 Si el programa primal es un problema de maximización, el programa dual es un
problema de minimización.
 El problema dual de un problema dual es el programa, primal original.
 El sentido de las igualdades y desigualdades se comporta según la tabla de Tucker,
presentada a continuación.
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.

Relación entre la solución del modelo primal y el dual

De lo anteriormente expuesto se puede deducir que existe una estrecha relación entre el
problema primal y dual que puede expresarse en lo siguiente:

● El dual tiene la matriz D transpuesta, es decir, si suponemos que D es de orden s x


r, entonces Dt es de orden r x s. Además las variables del primal y el dual son
diferentes, ya que X será un vector de r-componentes mientras que el vector Y
tendrá s-componentes.

● Los términos independientes del conjunto de las restricciones del problema primal
forman los coeficientes de la función objetivo del dual.

● Los coeficientes de la función objetivo del primal forman los términos independientes
de las restricciones del dual.

● Las restricciones del dual cambian su sentido al igual que el criterio de optimización
en términos de mínimo o máximo.

● A cada restricción del problema primal le corresponde una variable dual y


análogamente a cada restricción del dual le corresponde una variable del primal.

● Si se halla el dual del problema dual, obtendremos el problema primal.

● El sentido de las igualdades y desigualdades se comporta según la tabla de Tucker,


presentada a continuación.
Interpretación económica del problema dual

El problema primal y dual explica dos aspectos económicos distintos de un mismo


problema. Las variables duales nos vienen a medir el valor de los recursos imputados a la
producción, pero esta valoración tiene unas características peculiares, está realizada en
términos de costos de oportunidad. Esto quiere decir que aquellos factores (o restricciones)
cuyas existencias no quedan agotadas en el programa óptimo establecido, tienen un costo
nulo desde el anterior punto de vista, pues bajo el prisma exclusivo del sistema empresarial
es un bien libre al estar en exceso.

En consecuencia, la función objetivo, medirá el costo total de los factores imputados a la


producción, valor que ha de igualarse al rendimiento total hallado en la función económica
del primal para que se produzca el equilibrio. Explicaremos con más detalle la interpretación
económica del problema dual.

Para la realización de este análisis vamos a partir del supuesto que se tiene un problema
de programación lineal donde se maximiza el valor de la función objetivo, por ejemplo la
ganancia.

EL DUAL SIMPLEX

Como sabemos, el método simplex es un algoritmo iterativo que iniciando en una solución
básica factible pero no óptima, genera soluciones básicas factibles cada vez mejores hasta
encontrar la solución óptima (sí esta existe). Nótese que la base de su lógica es mantener
la factibilidad, mientras busca la optimalidad. Pero surge la posibilidad de usar otro
esquema igualmente iterativo, que, como contraparte del simplex, comienza en una
solución básica óptima, pero no factible y mantiene la inmejorabilidad mientras busca la
factibilidad. Con este procedimiento se llega igualmente a la solución óptima.

El nuevo algoritmo fue desarrollo en 1954 por C. E. Lemke y se conoce con el nombre de
Método Dual-Simplex. A continuación, se presenta su estructura y un ejemplo para ilustrar
su aplicación.

El método simplex dual resulta ser una estrategia algorítmica eficiente cuando luego de
llevar un modelo de programación lineal a su forma estándar, la aplicación del método
simplex no es inmediata o más bien compleja, por ejemplo, puede requerir la utilización del
método simplex de 2 fases.

Una aplicación típica del método simplex dual es en la resolución de problemas con una
función objetivo de minimización, con restricciones del tipo mayor o igual y donde las
variables de decisión son mayores o iguales a cero.

Características de la solución del dual y del primal.

Existen algunas de las propiedades de interés a cerca de las soluciones del dual y el primal.

 Si el primal tiene solución óptima acotada x*, el dual también tendrá solución óptima
acotada u*, ambas soluciones darán el mismo valor de la función objetivo. c´. x* =
b´. u*

 Si uno de los dos problemas tiene óptimo no acotado, el otro solo tendrá solución,
la región factible será un conjunto vacío.

 Si uno de los dos problemas no tiene solución, el otro puede obtener óptimo no
acotado, o tampoco tener solución.

Importancia

La dualidad es importante por el hecho de que es equivalente resolver un problema a


resolver su dual. Ello es debido a que los precios sombra de dual son las soluciones de
problemas y viceversa. Así, en ocasiones, puede resultar conveniente obtener las
soluciones de problemas a partir de los precios sombra de dual en vez de resolver
problemas directamente.

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.

Ventajas y desventajas de la dualidad.

Una de las ventajas de la existencia del programa dual es la posibilidad de reducir el


esfuerzo computacional al resolver ciertos modelos de programación lineal.

 Permite resolver problemas de programación lineal de forma más rápida y sencilla.

 Es otra vía para resolver un problema de programación lineal.

 Facilita profundizar en el contenido económico del problema original (primal).


 Puede ser utilizada para resolver el caso en que se debe considerar la introducción
de una nueva variable en el primal una vez que ha de sido obtenida la solución
óptima, sin tener que resolver completamente el 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.

 Una desventaja de este método, es que se requiere para empezar a iterar la


condición de factibilidad dual.

Ejemplo Simplex Dual

Considere el siguiente modelo de Programación Lineal:

Paso 1: Se lleva el modelo a su forma estándar. En nuestro ejemplo esto se logra


agregando variables de exceso en cada una de las restricciones (3 primeras: S1, S2, S3,
respectivamente). Luego, se multiplica cada fila de las restricciones por -1 de modo de
disponer una solución básica inicial (infactible) en las variables de exceso S1, S2 y S3. De
esta forma se obtiene la siguiente tabla inicial.

A B C S1 S2 S3

-15 -2 -1 1 0 0 -200

-7,5 -3 -1 0 1 0 -150

-5 -2 -1 0 0 1 -120

315 110 50 0 0 0 0
Paso 2: Se selecciona el lado derecho "más negativo" lo cual indicará cuál de las actuales
variables básicas deberá abandonar la base. En el ejemplo el lado derecho más negativo
se encuentra en la primera fila, por tanto, S1 deja la base. Para determinar cuál de las
actuales variables no básicas (A, B, C) entrará a la base se busca el mínimo de {-Yj/aij}
donde aij es el coeficiente de la respectiva variable no básica en la fija i (del lado derecho
más negativo, marcado en verde) y donde Yj es el costo reducido de la respectiva variable
no básica. De esta forma se obtiene: Min {-315/-15, -110/-2, -50/-1} = 21, donde el pivote
(marcado en rojo) se encuentra al hacer el primer cociente, por tanto, A entra a la base.

Paso 3: Se actualiza la tabla anterior siguiendo un procedimiento similar al utilizado en


el Método Simplex. En el ejemplo se debe dejar a la variable A como básica y S1 como no
básica. La tabla que resulta es la siguiente:

A B C S1 S2 S3

-
1 2/15 1/15 0 0 40/3
1/15

0 -2 -1/2 -1/2 1 0 -50

-
0 -4/3 -2/3 -1/3 0 1
160/3

-
0 68 29 21 0 0
4.200

Paso 4: Continuar las iteraciones y siguiendo el mismo procedimiento hasta disponer de


una solución básica factible. Luego de unas iteraciones se obtiene la siguiente tabla final:

A B C S1 S2 S3

-
1 0 0 0 1/10 8
1/10

0 1 0 1/4 -1 3/4 10

0 0 1 0 2 -3 60
-
0 0 0 4 10 36
6.620

La solución óptima es A=8, B=10, C=60 (marcado en verde) con valor


óptimo V(P)=6.620 (marcado en rojo - se obtiene con signo cambiado).

ANALISIS DE SENSIBILIDAD POR CAMBIOS EN LOS PARAMETROS DEL MODELO

El Análisis de Sensibilidad se relaciona con la cuantificación de los efectos en la solución


óptima de cambios en los parámetros del modelo matemático.

Cuando escribimos un modelo, damos por aceptado que los valores de los parámetros se
conocen con certidumbre; pero en la realidad no siempre se cumple que los valores sean
verídicos, ya que por ejemplo las variaciones en los costos de los materiales, en la mano
de obra o en el precio de un producto, ocasionan cambios en los coeficientes de la función
objetivo. Así mismo las demoras en los envíos de los proveedores, las huelgas, los
deterioros no previstos y otros factores imponderables generaran cambios en la
disponibilidad de los recursos.

Los cambios en el modelo matemático, que pueden cuantificarse a veces sin necesidad de
volver a resolver el modelo, se relacionan con:

 Cambios en los coeficientes de las variables de decisión en la función objetivo


(Ganancias por unidad de variable de decisión) o

 Cambios en los lados derechos de las restricciones que definen el modelo.


(Cantidad de recursos disponibles)

Los efectos de cambios en los coeficientes dentro de la matriz A son muy difíciles de
cuantificar, y por tanto en estos casos se aconseja correr de nuevo el modelo con los
cambios. En primera instancia veremos cuando solo un coeficiente cambia; después
veremos cuando varios coeficientes cambian simultáneamente.

A modo general, cuando se realiza un análisis de sensibilidad a una solución óptima se


debe verificar cada parámetro de forma individual, dígase los coeficientes de la función
objetivo y los límites de cada una de las restricciones. En ese sentido se plantea el siguiente
procedimiento:

1. Revisión del modelo: se realizan los cambios que se desean investigar en el modelo.

2. Revisión de la tabla final Símplex: se aplica el criterio adecuado para determinar los
cambios que resultan en la tabla final Símplex.
3. Conversión a la forma apropiada de eliminación Gauss: se convierta la tabla en la
forma apropiada para identificar y evaluar la solución básica actual, para lo cual se
aplica la metodología de eliminación Gauss si es necesario.

4. Prueba de factibilidad: se prueba la factibilidad de esta solución mediante la


verificación de que todas las variables básicas de la columna del lado derecho aun
tengan valores no negativos.

5. Prueba de optimalidad: se verifica si esta solución es óptima y factible, mediante la


comprobación de que todos los coeficientes de las variables no básicas del reglón
Z permanecen no negativos.

6. Reoptimización: si esta solución no pasa una de las pruebas indicadas en los puntos
4 y 5 anteriores, se procede a buscar la nueva solución óptima a partir de la tabla
actual como tabla Simplex inicial, luego de aplicadas las conversiones de lugar, ya
sea con el método Símplex o el Símplex Dual.

MODELO DE TRANSPORTE.

 DEFINICIÓN.

El Modelo de transporte es una clase especial de problema de programación lineal; el cuál


trata la situación en la cual se envía un bien de los puntos de origen (fábricas), a los puntos
de destino (almacenes, bodegas, depósitos).

Se considera también como una técnica cuantitativa, la cual es utilizada para minimizar los
costos asociados a la distribución de un bien o un servicio desde diferentes orígenes hasta
diferentes destinos, sin embargo, las condiciones de linealidad están presentes, como en
cualquier técnica de programación lineal.

 OBJETIVO.

El objetivo general es encontrar el mejor plan de distribución, es decir, determinar las


cantidades a enviar desde cada punto de origen hasta cada punto de destino, en donde “el
mejor plan” es aquél que minimice el costo total de envío y produzca la mayor ganancia, al
mismo tiempo que satisfagan tanto los límites de la oferta como los requerimientos de la
demanda.

Para esto se debe contar con un nivel de oferta en cada fuente y la cantidad de demanda
en cada destino; y también, un costo de transporte unitario de mercancía desde cada punto
fuente hasta cada destino. También es necesario satisfacer ciertas restricciones; primero
no enviar más de la capacidad especificada desde cada punto de suministro (oferta),
segundo enviar bienes solamente por las rutas válidas y por último, cumplir o exceder los
requerimientos de bienes en los puntos de demanda.
Debido al éxito alcanzado en los diferentes sistemas de transporte, esta técnica o método
empezó a ser empleado en otros sistemas, en ellos el problema no implica transporte físico
de bienes, pero existen relaciones lineales y el modelo formulado contiene las
características de un modelo de transporte, teniendo en cuenta que el modelo supone que
el costo de envío de una ruta determinada es directamente proporcional al número de
unidades enviadas en esa ruta. Sin embargo, algunas de sus aplicaciones importantes
(como la programación de la producción) de hecho no tienen nada que ver con el transporte.

 CARACTERÍSTICAS.

Alguna de las características que convierten el modelo lineal de transporte en un modelo


de programación lineal especial son las siguientes:

1. Los coeficientes en las variables, en las restricciones, son uno o cero.

2. Como se menciona anteriormente, las cantidades demandadas deben ser iguales a


las cantidades ofrecidas para poder darle una solución al modelo.

3. El producto que se va a transportar debe ser único y homogéneo.

4. Cada modelo tiene tantas restricciones de oferta como el número de orígenes (m)
que existan y tantas restricciones de demanda como el número de destinos (n) que
existan.

5. Las restricciones de oferta garantizan que no se transportará más de la cantidad


disponible en los orígenes, las restricciones de demanda garantizan que las
cantidades demandadas serán satisfechas.

 REPRESENTACIÓN DE RED DEL MODELO DE TRANSPORTE.


FUENTES DESTINOS

1
1
a1

b1

2 2

Unidades n
de oferta. Unidades de
m demanda.
b2
a2

bn

m3
Cmn Xmn

Como podemos analizar en la anterior representación de red de transporte, cualquier


modelo de transporte se compone de unidades de un bien a distribuir, m orígenes, n
destinos, recursos en el origen, demandas en los destinos y costos de distribución por
unidad, adicionalmente se tienen varios supuestos.

1. Supuesto de requerimientos: Cada origen tiene un suministro fijo de unidades


que se deben distribuir por completo entre los destinos.

2. Supuesto de costo: El costo de distribuir unidades de un origen a un destino


cualquiera es directamente proporcional al número de unidades distribuidas.
3. Propiedad de soluciones factibles: Un problema de transporte tiene
soluciones factibles si y solo si la sumatoria de recursos en (m) orígenes es igual
a la sumatoria de demandas en los destinos.

4. Propiedad de soluciones enteras: En los casos en los que tanto los recursos
como las demandas toman un valor entero, todas las variables básicas
(asignaciones), de cualquiera de las soluciones básicas factibles, incluyendo la
solución óptima.

 FORMA TABULAR:

DESTINOS OFERTA

BARRANQUILLA SANTA MARTA

(1) (2)

MONTERÍA (1) 80 215


1000

FUENTES BOGOTÁ (2)


X11
1500
X12

100 108 1200

CALI (3)

X21 X22

102 68

X31 X32

DEMANDA 2300 1400

De la tabla anterior se puede explicar qué; en los renglones se ubican los orígenes
indicando en la columna de la derecha los recursos (oferta disponible).
En las columnas se ubican los dos destinos indicando en el último renglón los
totales demandados, y en el pequeño recuadro ubicado en la margen superior derecha se
indica el costo de distribuir una unidad desde el origen hasta ese destino y en la parte
inferior de cada recuadro se registran las asignaciones Xi para cada variable. En los casos
donde la sumatoria de los recursos y la demanda no sean las mismas, se agrega un origen
o destino ficticio con la cantidad que permita cumplir la propiedad de soluciones factibles.

PROCEDIMIENTO PARA GENERAR UNA SOLUCION INICIAL: METODO ESQUINA


NOROESTE, METODO DE COSTO MINIMO, METODO DE APROXIMACION VOGEL.

Método de la esquina noroeste

Problema de transporte

El método de la esquina Noroeste es un algoritmo heurístico capaz de solucionar problemas


de transporte o distribución, mediante la consecución de una solución básica inicial que
satisfaga todas las restricciones existentes, sin que esto implique que se alcance el costo
óptimo total.

Este método tiene como ventaja frente a sus similares, la rapidez de su ejecución, y es
utilizado con mayor frecuencia en ejercicios donde el número de fuentes y destinos sea muy
elevado.

Su nombre se debe al génesis del algoritmo, el cual inicia en la ruta, celda o esquina
Noroeste. Es común encontrar gran variedad de métodos que se basen en la misma
metodología de la esquina Noroeste, dado que podemos encontrar de igual manera el
método e la esquina Noreste, Sureste o Suroeste.

Algoritmo de resolución de la Esquina Noroeste

Se parte por esbozar en forma matricial el problema, es decir, filas que representen fuentes
y columnas que representen destinos, luego el algoritmo debe de iniciar en la celda, ruta o
esquina Noroeste de la tabla (esquina superior izquierda).
Paso 1

En la celda seleccionada como esquina Noroeste se debe asignar la máxima cantidad de


unidades posibles, cantidad que se ve restringida ya sea por las restricciones de oferta o
de demanda. En este mismo paso se procede a ajustar la oferta y demanda de la fila y
columna afectada, restándole la cantidad asignada a la celda.

Paso 2

En este paso se procede a eliminar la fila o destino cuya oferta o demanda sea 0 después
del «Paso 1», si dado el caso ambas son cero arbitrariamente se elige cual eliminar y la
restante se deja con demanda u oferta cero (0) según sea el caso.

Paso 3

Una vez en este paso existen dos posibilidades, la primera que quede un solo renglón o
columna, si este es el caso se ha llegado al final el método, «detenerse».

La segunda es que quede más de un renglón o columna, si este es el caso iniciar


nuevamente el «Paso 1».

Ejemplo del Método de la Esquina Noroeste

Por medio de este método resolveremos el problema de transporte propuesto y resuelto en


artículos anteriores mediante programación lineal.

Una empresa energética colombiana dispone de cuatro plantas de generación para


satisfacer la demanda diaria eléctrica en cuatro ciudades, Cali, Bogotá, Medellín y
Barranquilla. Las plantas 1,2,3 y 4 pueden satisfacer 80, 30, 60 y 45 millones de KW al día
respectivamente. Las necesidades de las ciudades de Cali, Bogotá, Medellín y Barranquilla
son de 70, 40, 70 y 35 millones de Kw al día respectivamente. Los costos asociados al
envío de suministro energético por cada millón de KW entre cada planta y cada ciudad son
los registrados en la siguiente tabla.

Formule un modelo de programación lineal que permita satisfacer las necesidades de todas
las ciudades al tiempo que minimice los costos asociados al transporte.
Solución paso a paso

Ahora la cantidad asignada a la esquina noroeste es restada a la demanda de Cali y a la


oferta de la «Planta 1», en un procedimiento muy lógico. Dado que la demanda de Cali una
vez restada la cantidad asignada es cero (0), se procede a eliminar la columna. El proceso
de asignación nuevamente se repite.

Continuamos con las iteraciones.


En este caso nos encontramos frente a la elección de la fila o columna a eliminar (tachar),
sin embargo podemos utilizar un criterio mediante el cual eliminemos la fila o columna que
presente los costos más elevados. En este caso la «Planta 2».

Nueva iteración:

Una vez finalizada esta asignación, se elimina la «Planta 3» que ya ha sido satisfecha con
la asignación de 60 unidades, por ende nos queda una sola fila a la cual le asignamos las
unidades estrictamente requeridas y hemos finalizado el método.
El cuadro de las asignaciones (que debemos desarrollarlo paralelamente) queda así:

Los costos asociados a la distribución son:


El costo total es evidentemente superior al obtenido mediante Programación Lineal y
el Método de Aproximación de Vogel, lo cual demuestra lo enunciado en la descripción del
algoritmo que cita que no obtiene siempre la mejor solución, sin embargo presenta un
cumplimiento de todas las restricciones y una rapidez de elaboración, lo cual es una ventaja
en problemas con innumerables fuentes y destinos en los cuales no nos importe más que
satisfacer las restricciones.

Método del Costo Mínimo

Mínimos costos

El método del costo mínimo o método de los mínimos costos es un algoritmo desarrollado
con el objetivo de resolver problemas de transporte o distribución, arrojando mejores
resultados que métodos como el de la esquina noroeste, dado que se enfoca en las rutas
que presentan menores costos.
Este algoritmo es mucho más sencillo que los anteriores, dado que se trata simplemente
de la asignación de la mayor cantidad de unidades posibles (sujeta a las restricciones de
oferta y/o demanda) a la celda menos costosa de toda la matriz hasta finalizar el método.

Algoritmo del Costo Mínimo

Paso 1

De la matriz se elige la ruta (celda) menos costosa (en caso de un empate, este se rompe
arbitrariamente) y se le asigna la mayor cantidad de unidades posible, cantidad que se ve
restringida ya sea por las restricciones de oferta o de demanda. En este mismo paso se
procede a ajustar la oferta y demanda de la fila y columna afectada, restándole la cantidad
asignada a la celda.

Paso 2

En este paso se procede a eliminar la fila o destino cuya oferta o demanda sea 0 después
del «Paso 1», si dado el caso ambas son cero arbitrariamente se elige cual eliminar y la
restante se deja con demanda u oferta cero (0) según sea el caso.

Paso 3

Una vez en este paso existen dos posibilidades, la primera que quede un solo renglón o
columna, si este es el caso se ha llegado al final el método, «detenerse».

La segunda es que quede más de un renglón o columna, si este es el caso iniciar


nuevamente el «Paso 1».

Ejemplo del Método del Costo Mínimo

Por medio de este método resolveremos el problema de transporte propuesto y resuelto en


artículos anteriores mediante programación lineal.

El problema

Una empresa energética colombiana dispone de cuatro plantas de generación para


satisfacer la demanda diaria eléctrica en cuatro ciudades, Cali, Bogotá, Medellín y
Barranquilla. Las plantas 1,2,3 y 4 pueden satisfacer 80, 30, 60 y 45 millones de KW al día
respectivamente. Las necesidades de las ciudades de Cali, Bogotá, Medellín y Barranquilla
son de 70, 40, 70 y 35 millones de Kw al día respectivamente. Los costos asociados al
envío de suministro energético por cada millón de KW entre cada planta y cada ciudad son
los registrados en la siguiente tabla.
Formule un modelo de programación lineal que permita satisfacer las necesidades de todas
las ciudades al tiempo que minimice los costos asociados al transporte.

Solución paso a paso

Seleccionamos la celda con menor valor, es decir la menos costosa, para asignarle la mayor
cantidad posible.

Luego esa cantidad asignada se resta a la demanda de Bogotá y a la oferta de la «Planta


3», en un proceso muy lógico. Dado que Bogotá se queda sin demanda esta columna
desaparece, y se repite el primer proceso.
Nuevo proceso de asignación

Nuevo proceso de asignación

Nuevo proceso de asignación


Una vez finalizado el cuadro anterior nos daremos cuenta que solo quedará una fila, por
ende asignamos las unidades y se ha terminado el método.

El cuadro de las asignaciones (que debemos desarrollarlo paralelamente) queda así:

Los costos asociados a la distribución son:


En este caso el método del costo mínimo presenta un costo total superior al obtenido
mediante Programación Lineal y el Método de Aproximación Vogel, sin embargo
comúnmente no es así, además es simple de desarrollar y tiene un mejor rendimiento en
cuanto a resultados respecto al Método de la Esquina Noroeste.

Método de aproximación de Vogel

Problema de transporte

El método de aproximación de Vogel es un método heurístico de resolución


de problemas de transporte capaz de alcanzar una solución básica no artificial de inicio,
este modelo requiere de la realización de un número generalmente mayor de iteraciones
que los demás métodos heurísticos existentes con este fin, sin embargo produce mejores
resultados iniciales que los mismos.
Algoritmo de Vogel

El método consiste en la realización de un algoritmo que consta de 3 pasos fundamentales


y 1 más que asegura el ciclo hasta la culminación del método.

Paso 1

Determinar para cada fila y columna una medida de penalización restando los dos costos
menores en filas y columnas.

Paso 2

Escoger la fila o columna con la mayor penalización, es decir que de la resta realizada en
el «Paso 1» se debe escoger el número mayor. En caso de haber empate, se debe escoger
arbitrariamente (a juicio personal).

Paso 3

De la fila o columna de mayor penalización determinada en el paso anterior debemos de


escoger la celda con el menor costo, y en esta asignar la mayor cantidad posible de
unidades. Una vez se realiza este paso una oferta o demanda quedará satisfecha por ende
se tachará la fila o columna, en caso de empate solo se tachará 1, la restante quedará con
oferta o demanda igual a cero (0).

Paso 4: De ciclo y excepciones

 Si queda sin tachar exactamente una fila o columna con cero oferta o demanda,
detenerse.

 Si queda sin tachar una fila o columna con oferta o demanda positiva, determine las
variables básicas en la fila o columna con el método de costos mínimos, detenerse.

 Si todas las filas y columnas que no se tacharon tienen cero oferta y demanda,
determine las variables básicas cero por el método del costo mínimo, detenerse.

 Si no se presenta ninguno de los casos anteriores vuelva al paso 1 hasta que las
ofertas y las demandas se hayan agotado.

Ejemplo de Método de aproximación de Vogel

Por medio de este método resolveremos el ejercicio de transporte resuelto en módulos


anteriores mediante programación lineal.

El problema

Una empresa energética colombiana dispone de cuatro plantas de generación para


satisfacer la demanda diaria eléctrica en cuatro ciudades, Cali, Bogotá, Medellín y
Barranquilla. Las plantas 1,2,3 y 4 pueden satisfacer 80, 30, 60 y 45 millones de KW al día
respectivamente. Las necesidades de las ciudades de Cali, Bogotá, Medellín y Barranquilla
son de 70, 40, 70 y 35 millones de Kw al día respectivamente. Los costos asociados al
envío de suministro energético por cada millón de KW entre cada planta y cada ciudad son
los registrados en la siguiente tabla.

Formule un modelo de programación lineal que permita satisfacer las necesidades de todas
las ciudades al tiempo que minimice los costos asociados al transporte.

Solución paso a paso

El primer paso es determinar las medidas de penalización y consignarlas en el tabulado de


costos, tal como se muestra a continuación.

El paso siguiente es escoger la mayor penalización, de esta manera:


El paso siguiente es escoger de esta columna el menor valor, y en una tabla paralela se le
asigna la mayor cantidad posible de unidades, podemos observar como el menor costo es
«2» y que a esa celda se le pueden asignar como máximo 60 unidades «que es la capacidad
de la planta 3».
Dado que la fila de la «Planta 3» ya ha asignado toda su capacidad (60 unidades) esta debe
desaparecer.

Se ha llegado al final del ciclo, por ende se repite el proceso


Iniciamos una nueva iteración
Continuamos con las iteraciones…
Iniciamos otra iteración
Al finalizar esta iteración podemos observar como el tabulado queda una fila sin tachar y
con valores positivos, por ende asignamos las variables básicas y hemos concluido el
método.
Los costos asociados a la distribución son:
De esta manera se ha determinado una solución, la cual también fue obtenida
mediante programación lineal, definitivamente desarrollar la capacidad para modelar
mediante programación lineal y apoyarse de una buena herramienta como WinQSB,
STORM, LINGO, TORA etc. termina siendo mucho más eficiente que la utilización de los
métodos heurísticos para problemas determinísticos.

Sin embargo, cabe recordar que uno de los errores más frecuentes en los que caen los
ingenieros industriales es en tratar de adaptar sus organizaciones a los modelos
establecidos, cabe recordar que son los modelos los que deben adaptarse a las
necesidades, lo cual requiere de determinada habilidad para realizar de forma inmediata
cambios innovadores para sus fines.

METODOS DE SOLUCION ÓPTIMA: CRUCE DEL ARROYO, MODI (METODO


MODIFICADO DE DISTRIBUCION)

Método del Cruce del arroyo

El método del Cruce del Arroyo, Trampolín, o de Salto de Piedra en Piedra (Stepping Stone)
es un método de resolución de problemas de transporte en programación lineal que
consiste en calcular cuál sería la variación del costo del envío a través de las ruta posibles,
es decir asignar cierta cantidad de artículos desde varios orígenes (fábricas/fuentes) a un
conjunto de destinos (clientes/depósitos) de tal manera que se disminuyan los costos, hasta
optimizar el objetivo. Se parte de una solución factible de Costo Mínimo, Vogel, o Esquina
Noroeste.
El Método del Cruce del Arroyo, se basa en una solución inicial y mediante un proceso
repetitivo sobre las celdas vacías (en el que se salta) buscando llegar a una solución óptima
más conveniente que la hallada por los métodos mencionados. Si la solución de partida no
es relativamente favorable en costos, el método requerirá una mayor cantidad de
repeticiones para llegar a la solución óptima.

PASOS DEL MÉTODO DE CRUCE DEL ARROYO:

1. Partir de una solución con cualquiera de los métodos ya mencionados (Costo


Mínimo, Vogel, o Esquina Noroeste).

2. Definir las celdas que son de agua y las que son de piedras, las celdas de agua son
aquellas a los que no le hemos asignado un valor, mientras que las de piedra son
aquellas a las que le hemos asignado un valor de transporte.

3. Calcular los costos relativos de las celdas de agua, mediante el salto de piedra en
piedra en dirección vertical y/o horizontal (no en diagonal) realizando un
procedimiento de sumas y resta de los costos de los nodos de salto.

4. De los costos relativos obtenidos de las celdas de agua se debe seleccionar el más
negativo. En caso de ser todos positivos ya estamos ante una solución óptima.

5. Asignamos los nuevos valores al conjunto de celdas de saltos seleccionadas para


la celda de agua más negativa.

6. Recalculamos los costos relativos para las celdas de agua en función de la nueva
matriz, nuevamente si se presenta algún valor negativo se debe realizar el cálculo
de costos relativos de las celdas de agua y repetir el proceso hasta lograr que todos
sean positivos, una vez logrado esto no hay posibilidades de mejorar el resultado
de la función objetivo.

DESARROLLO DE UN EJERCICIO (CASO PRÁCTICO):

Para explicar el método vamos a partir de un ejercicio de transporte de tres fábricas y cuatro
depósitos en el que se cuenta con una determinada producción y demanda de distribución
resuelta por el método de costo mínimo:
El primer paso es identificar a las celdas de agua (vacías) y las celdas de piedra
(llenas), desde las celdas de agua que están vacías y serán positivas, deberemos
partir, saltando y pisando siempre en celdas de piedra siguiendo una secuencia de
paridad para completar + y - (negativo y positivo) siempre en forma vertical u
horizontal como veremos a lo largo del ejemplo.

Identificación de celdas de agua:

Realizamos el método para la primer celda de agua correspondiente a la Fabrica A,


Departamento 3:
Realizamos el método en la celda Fabrica B, Departamento 2:

Realizamos el método en la celda Fabrica B, Departamento 4:


Realizamos el método en la celda Fabrica C, Departamento 1:

Realizamos el método en la celda Fabrica C, Departamento 2:


Realizamos el método en la celda Fabrica C, Departamento 3:

Como podemos apreciar existe un solo camino o ruta negativa, así que lo seleccionamos,
en caso de que existieran varios se parte de la selección del más negativo.
Por lo tanto, volvemos a la ruta del camino seleccionado:
De las celdas negativas de la ruta que son Fabrica B Deposito 1 y Fabrica A Deposito 2
tomamos la menor en cantidad que es Fabrica B Deposito 1 y realizamos el traslado de
Fabrica B Deposito 1 cuyo valor es 27 a Fabrica B Deposito 2 por lo tanto:

Entonces para cumplir con los 35 de la columna Deposito 2 en Fabrica A Deposito 2


modifico el valor y en Fabrica A Deposito 1 también para cumplir con los 30 del Deposito 1
por lo tanto:
Una vez ajustados los valores, volvemos a definir las celdas en función de la nueva
estructura, y nos quedan las siguientes celdas de piedra y de agua:

Una vez definidas las celdas de agua y de piedra repetimos nuevamente el método para
ubicar una ruta o camino negativo o confirmar que estamos ante una solución óptima:
El método del cruce del arroyo, nos confirma que la solución es óptima puesto que todos
los valores son positivos; 2, 1, 6, 9, 4 y 13 y hemos mejorado de $558 a $531.-

Método MODI

El algoritmo MODI conocido como el método de los costes ficticios, consiste en añadir a la
matriz de costes una fila y una columna que recogen unos costes ficticios determinados
arbitrariamente (los números MODI), tal que permite calcular los índices de mejora para las
celdas (casillas) no utilizadas.

A continuación se explicará con un ejercicio cada uno de los pasos que se deben realizar
para la resolución de problemas de transporte por el método MODI
COMPARACIÓN DEL METODO DE TRANSPORTE Y ALGORITMO SIMPLEX.

La programación lineal se ha constituido en un método ampliamente utilizado para resolver


problemas de optimización y planificación empresarial. En este contexto, se han definido
varios procedimientos operativos avanzados, entre los que cabe citar el método del simplex
y la solución de los llamados “problemas del transporte”.

Se debe tener en cuenta que; mientras que el método de transporte busca determinar un
plan de transporte de una mercancía de varias fuentes a varios destinos, el algoritmo
simplex; se utiliza para hallar las soluciones óptimas de un problema de programación
lineal con tres o más variables. Es un procedimiento iterativo de programación lineal que va
desechando las soluciones no factibles y, en cada paso, evalúa si la solución obtenida es
óptima o no.

A demás de esto, se deben tener en cuenta las etapas del algoritmo las cuales son:

 Planteamiento del problema: identificación de las variables y definición de la función


objetivo y del sistema de inecuaciones lineales para restricciones.

 Conversión de las desigualdades en igualdades; en cada restricción se introduce


una variable de holgura en el miembro menor (o menor o igual) de la desigualdad.

 Igualación a cero de la función objetivo.


 Escritura de una tabla inicial simplex (matriz): en las columnas, las variables del
problema; una fila para cada conjunto de coeficientes de una restricción y una fila
más para los coeficientes de la función objetivo.

 Determinación de las variables y los coeficientes.

Para determinar las variables de un problema mediante el método del simplex, es preciso
hallar primero la base de resolución, teniendo en cuenta que para esta base se debe tener
en cuenta:

 Se incluye una variable de decisión, la que posee el coeficiente negativo mayor. La


columna a la que corresponde se llama columna pivote.

 Se excluye una variable de holgura. Se divide cada término por el correspondiente


de la columna pivote y se calcula el menor cociente positivo.

Se aplica entonces el método de eliminación gaussiana para anular los términos de la


columna pivote, tantas veces como se precisa hasta que en la última fila sólo haya
coeficientes positivos, luego se obtendrá la solución.

EL PROBLEMA DE ASIGNACION

El problema de asignación es una variación del problema original de transporte, variación


en la cual las variables de decisión X(i,j) sólo pueden tomar valores binarios, es decir ser
cero (0) o uno (1), en la solución óptima, lo que supone que la oferta y la demanda están
perfectamente alineadas, de hecho ambas son iguales a uno (1).

En el modelo de asignación, la idea fundamental de resolución es ¿qué fuente satisface


mejor el destino?, y dado que hemos asociado el modelo a una gran diversidad de
circunstancias esta pregunta puede plantearse en múltiples contextos, como ¿qué
candidato es el idóneo para la vacante?, o ¿qué personal es el indicado para la línea
productiva?, o ¿qué personal es el mejor para ejecutar determinada tarea?. Una
característica particular del modelo de asignación es que para su resolución no se hace
necesario que el número de fuentes sea igual al número de destinos, lo cual es muy común
en la vida real, teniendo en cuenta su aplicación, pues generalmente la cantidad de
aspirantes es superior al número de vacantes (lógicamente haciendo referencia a la
aplicación del modelo al contexto de oferta y demanda laboral)

Para que se ajuste a la definición de un problema de asignación, es necesario que este tipo
de aplicaciones se formule de manera tal que se cumplan los siguientes supuestos:

1. El número de asignados es igual al número de tareas. (Este número se denota por


n.)

2. A cada asignado se le asigna sólo una tarea.

3. Cada tarea debe realizarla sólo un asignado.

4. Existe un costo cij asociado con el asignado i (i 5 1, 2, . . . , n) que realiza la tarea j


( j 1, 2, . . . , n).

5. El objetivo es determinar cómo deben hacerse las n asignaciones para minimizar


los costos totales.

Se puede resolver el modelo de asignación en forma directa como modelo normal de


transporte. Sin embargo, el hecho de que todas las ofertas y las demandas son iguales a
1, condujo al desarrollo de un algoritmo sencillo de solución llamado método húngaro.

El método Húngaro es un método de optimización de problemas de asignación, conocido


como tal gracias a que los primeros aportes al método clásico definitivo fueron de Dénes
König y Jenő Egerváry dos matemáticos húngaros.

RESOLUCIÓN DE UN PROBLEMA DE ASIGNACIÓN MEDIANTE EL MÉTODO


HÚNGARO

EL PROBLEMA

La compañía de manufactura "Jiménez y Asociados" desea realizar una jornada de


mantenimiento preventivo a sus tres máquinas principales A, B y C. El tiempo que demanda
realizar el mantenimiento de cada máquina es de 1 día, sin embargo la jornada de
mantenimiento no puede durar más de un día, teniendo en cuenta que la compañía cuenta
con tres proveedores de servicios de mantenimiento debe de asignarse un equipo de
mantenimiento a cada máquina para poder cumplir con la realización del mantenimiento
preventivo. Teniendo en cuenta que según el grado de especialización de cada equipo
prestador de servicios de mantenimiento el costo de la tarea varía para cada máquina en
particular, debe de asignarse el equipo correcto a la máquina indicada con el objetivo de
minimizar el costo total de la jornada. Los costos asociados se pueden observar en la
siguiente tabla:

PASO 1

Encontramos el menor elemento de cada fila

PASO 2

Construimos una nueva matriz con las diferencias entre los valores de la matriz original y el
elemento menor de la fila a la cual corresponde.

PASO 3
En la matriz construida en el paso anterior se procede a efectuar el paso 1 esta vez en
relación a las columnas, por ende escogemos el elemento menor de cada columna.
Igualmente construimos una nueva matriz con la diferencia entre los valores de la matriz 2
y el elemento menor de la columna a la cual corresponde cada valor.

PASO 4

En este paso trazaremos la menor cantidad de combinaciones de líneas horizontales y


verticales con el objetivo de cubrir todos los ceros de la matriz de costos reducidos.

Como se puede observar el menor número de líneas horizontales y/o verticales necesarias
para cubrir los ceros de la matriz de costos reducidos es igual a 2, por ende al ser menor
que el número de filas o columnas es necesario recurrir al paso 5.

PASO 5
En este paso seleccionamos el menor elemento de los elementos no subrayados.

Luego se procede a restarse de los elementos no subrayados y a adicionarse a los


elementos ubicados en las intersecciones de las líneas, en este caso existe una única
intersección (3).

Ahora ya efectuado este paso pasamos al último paso.


Ahora observamos cómo se hace necesario trazar tres líneas (la misma cantidad de filas o
columnas de la matriz) por ende se ha llegado al tabulado final, en el que por simple
observación se determina las asignaciones óptimas.

Por ende la asignación que representa el menor costo para la jornada de mantenimiento
preventivo determina que el Equipo 1 realice el mantenimiento de la Máquina 1, el Equipo
2 realice el mantenimiento de la Máquina 3 y el Equipo 3 realice el mantenimiento de la
Máquina 2, jornada que tendrá un costo total de 17 unidades monetarias.

También podría gustarte