Documentos de Académico
Documentos de Profesional
Documentos de Cultura
TEPIC
MODELOS DE OPTIMIZACION
DE RECURSOS CIVIL
GAMEZ RODRIGUEZ JOSE ANGEL
2020
INTEGRANTES:
Una vez se llega a este punto es indispensable saber que las soluciones óptimas
se alojan en los vértices del polígono solución (color gris) y que identificar a la
solución óptima es cuestión de elegir la mejor alternativa dependiendo de las
herramientas disponibles (tecnológicas y conocimientos matemáticos).
La primera opción es la geométrica, esta depende de trazar la ecuación que
representa a la función objetivo (este paso consiste en realizar el mismo
procedimiento de las restricciones).
Función objetivo : Z MAX =4000 x +5000 y
Luego igualamos a 0.
4000 x +5000 y=0
Luego tabulamos para obtener las coordenadas necesarias para esbozar la gráfica
correspondientes a la ecuación (en esta ocasión es recomendable más de dos
coordenadas, incluyendo la coordenada (x=0, y=0).
EJEMPLO:
La ebanistería "SALAZAR LTDA" ha recibido una gran cantidad de partes
prefabricadas para la elaboración de mesas, sin embargo no ha podido iniciar un
plan de producción enfocado a estas por la alta demanda que tiene de sus
productos restantes. Las mesas que pueden elaborarse de las partes
prefabricadas son de dos modelos, modelo A y B, y estas no requieren más que
ser ensambladas y pintadas. Esta semana se ha determinado dedicar 10 horas de
ensamble y 8 de pintura para elaborar la mayor cantidad de mesas posibles
teniendo en cuenta que cada mesa modelo A requiere de 2 horas de ensamble y 1
de pintura respectivamente, y que cada mesa modelo B requiere de 1 hora de
ensamble y 2 de pintura respectivamente. Si el margen de utilidad es de $20000
por cada mesa modelo A y $10000 por cada mesa modelo B. Determine el modelo
adecuado de producción para esta semana.
1. Variables
X =Cantidad de mesas modelo ¨A¨ a fabricar esta semana
Y =Cantidad de mesas modelo ¨B¨ a fabricar esta semana
2. Restricciones
2 X +Y ≤1 0 Horas de ensamble
X +2 Y ≤ 8 Horas de pintura
X , Y ≥0 De no negatividad
3. Función objetivo
Z MAX =20 000 X +10 000 Y
La gráfica resultante sería:
Como nos podemos dar cuenta mediante la geometría en dos vértices la línea
imaginaria perpendicular a la función objetivo no atraviesa el conjunto solución,
por ende en dos puntos se presentan soluciones óptimas, que son los puntos B y
C.
Observemos la solución óptima múltiple:
Z ( 0 ) =20000 ( 0 ) +10000 ( 0 )=0
Z ( A ) =20000 ( 0 ) +10000 ( 4 ) =$ 40000
Z ( B )=20000 ( 4 ) +1000 ( 2 )=$ 100000
Z ( C )=20000 ( 5 ) +10000 ( 0 )=$ 100000
Existen entonces dos soluciones óptimas
Solución óptima 1
X =4 Y =2
Solución óptima 2
X =5 Y =0
La pregunta siguiente es ¿cuál decisión tomar?, pues depende de factores tales
como una análisis de sensibilidad donde se tenga en cuenta el consumo distinto
de determinados recursos (horas ensamble vs. horas pintura) y factores extras al
modelo como lo puede llegar a ser en este caso una necesidad de espacio de
almacenamiento, dado que existe una alternativa en la que se elaboran más
mesas que en la otra, de todas formas es interesante el paso posterior a esbozar
los resultados pues requerirá de la capacidad de quien toma las decisiones.
EJEMPLO:
La compañía comercializadora de bebidas energéticas "CILANTRO SALVAJE" se
encuentra promocionando dos nuevas bebidas, la tipo A y la tipo B, dado que se
encuentran en promoción se puede asegurar el cubrimiento de cualquier cantidad
de demanda, sin embargo existen 2 políticas que la empresa debe tener en
cuenta. Una de ellas es que la cantidad de bebidas tipo A que se vendan no puede
ser menor que las de tipo B, y la segunda es que se deben de vender por lo
menos 1500 bebidas de cualquier tipo.
Dado que se encuentran en promoción el precio de venta de ambas bebidas
equivale a $1800 pesos. Determine la cantidad de unidades que deben venderse.
1. Variables
X =Cantidad de bebidas tipo ¨ A ¨ a vender
Y =Cantidad de bebidas tipo¨ B ¨ a vender
2. Restricciones
X ≥Y
X +Y ≥ 1500
3. Función Objetivo
Z MAX =18 00 X +18 00 Y
La gráfica resultante sería:
Solución factible
El caso de la solución in-factible es más típico de lo pensado, y corresponde a los
casos en los cuales no existen soluciones que cumplen con todas las
restricciones. Es muy común ver este fenómeno producto de inviables
proporciones de oferta y demanda.
EJEMPLO:
La compañía de galletas "CAROLA" desea planificar la producción de galletas que
tendrá que entregar a su cliente en dos semanas, el contrato indica que la
compañía "CAROLA" se compromete a entregar por lo menos 300 cajas de
galletas cualquiera sea su tipo (presentación D, presentación N o una combinación
de ambas presentaciones), cada caja de galletas presentación D tiene un tiempo
de elaboración de 2 horas, y un tiempo de horneado de 3 horas, mientras cada
caja de presentación N tiene un tiempo de elaboración de 3 horas y un tiempo de
horneado de 1 hora. La compañía cuenta estas dos semanas con 550 horas para
elaboración y con 480 horas de horneado.
Teniendo en cuenta que el margen de utilidad de cada caja de galletas
presentación D y N es de $8500 y $8100 respectivamente, determine mediante un
modelo de programación lineal el plan de producción que maximice las utilidades.
1. Variables
X =Cantidd de cajas de galletas presentación D a producir en 2 semanas
Y =Cantidd de cajas de galletas presentación N a producir en 2 semanas
2. Restricciones
2 X +3 Y ≤55 0
3 X +Y ≤ 480
X +Y ≥ 300
3. Función Objetivo
Z MAX =8 5 00 X +81 00 Y
La gráfica resultante es la siguiente:
Evidentemente no existe forma alguna de satisfacer todas las restricciones, por
ende se concluye que no existe solución factible.
Redundantes o sobrantes
Existen en los modelos de programación lineal un tipo de restricciones que no
juegan rol alguno en la determinación del conjunto solución (de igual manera en la
solución óptima), lo que lleva a deducir que estas son redundantes.
EJEMPLO:
La compañía "CONGELADORES MAJO" pretende fabricar dos tipos de
congeladores denominados A y B. Cada uno de ellos debe pasar por tres
operaciones antes de su comercialización: Ensamblaje, pintura y control de
calidad. Los congeladores tipo A requieren 2 horas de ensamblaje, 3 kg de pintura
y 4 horas de control de calidad; los congeladores tipo B requieren 3 horas de
ensamblaje, 6 kg de pintura y 5 horas de control de calidad. El margen contributivo
por cada congelador tipo A y B es de $102000 y $98000 respectivamente.
La compañía dispone como máximo semanalmente 300 horas de ensamblaje, 840
kg de pintura y 450 horas de control de calidad. Con base en la información
suministrada determine las unidades a producir semanalmente de cada referencia
para maximizar las utilidades.
1. Las variables:
X =Cantidad de congeladores tipo A a producir semanalmente
Y =Cantidad de congeladores tipo B a producir semanalmente
2. Las restricciones:
2 X +3 Y ≤30 0
3 X +5 Y ≤ 84 0
4 X +5 Y ≤ 45 0
3. Función Objetivo:
Z MAX =102 00 X +98 0 0 0 Y
La gráfica resultante es la siguiente:
METODO 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
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.
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 P j 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 / P j 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 P j 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 / P j 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).
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.
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 ( x 1 ,… .., x n ≥ 0 ) es la única excepción
y se mantiene tal cual.
Para normalizar una restricción con una desigualdad del tipo ≤, hay que añadir una
nueva variable, llamada variable de holgura x s (con la condición de no negatividad:
x s ≥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).
En caso de una desigualdad del tipo ≥, también hay que añadir una nueva variable
llamada variable de exceso x s (con la condición de no negatividad: x s ≥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 contengan una desigualdad de tipo ≥
quedarían:
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
Una vez estandarizado el modelo puede ocurrir que sea necesario aplicar el
método Simplex o el método de las Dos Fases. Véase en la figura la forma de
actuación para llegar a la solución del problema modelado.
2. Las restricciones:
2 X 1 +1 X 2+ 1 X 3+ 2 X 4 ≤24
2 X 1 +2 X 2 +1 X 3 ≤ 2 0
2 X 3 +2 X 4 ≤ 20
4 X 4 ≤ 16
3. La función Objetivo:
Z MAX =20000 X 1 +20000 X 2 +20000 X 3 +20000 X 4
PASO 2: CONVERTIR LAS INECUACIONES EN ECUACIONES
En este paso el objetivo es asignar a cada recurso una variable de Holgura, dado
que todas las restricciones son ≤ .
2 X 1 +1 X 2+ 1 X 3+ 2 X 4 +1 S 1+ 0 S 2+ 0 S3 + 0 S 4=2 4
2 X 1 +2 X 2 +1 X 3+ 0 X 4 + 0 S1 +1 S 2 +0 S 3 +0 S 4 =20
0 X 1 +0 X 2+2 X 3 +2 X 4 +0 S 1+ 0 S 2+ 1 S3 +0 S 4=20
0 X 1 +0 X 2+ 0 X 3 +4 X 4 +0 S1 +0 S2 +0 S3 +1 S 4=16
De esta manera podemos apreciar una matriz identidad (n = 4), formado por las
variables de holgura las cuales solo tienen coeficiente 1 en su respectivo recurso,
por el ejemplo la variable de holgura {S} rsub {1} solo tiene coeficiente 1 en la
restricción correspondiente a el recurso 1.
La función objetivo no sufre variaciones:
ZMAX = 20000X1 + 20000X2 + 20000X3 + 20000X4
1 S 1=2 4
1 S 2=20
1 S 3=20
1 S 4=16
Solución inicial:
2. El hecho de que una variable distinta forme parte de las variables solución
implica una serie de cambios en el tabulado Simplex, cambios que se
explicarán a continuación.
Lo primero es no olvidar el valor del "a" correspondiente a la variables a
entrar, en este caso el "a=4".
Sin embargo una vez finalizado el Método Simplex se debe observar una matriz
identidad en el rectángulo determinado por las variables de decisión, el hecho de
que en este caso no se muestre la matriz identidad significa que existe una
solución óptima alterna.
La manera de llegar a la otra solución consiste en alterar el orden en que cada una
de las variables entro a la solución básica, recordemos que el proceso fue
decidido al azar debido a la igualdad en elCj−Zj del tabulado inicial. Aquí les
presentamos una de las maneras de llegar a la otra solución.
Tabla
C1 C2 ... Cn
Base Cb P0 P1 P2 ... Pn
P1 Cb1 b1 a11 a12 ... a1n
P2 Cb2 b2 a21 a22 ... a2n
... ... ... ... ... ... ...
Pm Cbm bm am1 am2 ... amn
Z Z0 Z1-C1 Z2-C2 ... Zn-Cn
Todos los valores incluidos en la tabla vendrán dados por el modelo del problema
salvo los valores de la fila Z (o fila indicadora). Estos se obtienen de la siguiente
forma: Z j=∑ C bi∗Pi para i = 1..m, donde si j = 0, P0=biy C 0=0, y en caso contrario
P j=a ij .
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 coeficientes de las
variables de holgura son 0 en la función objetivo) el valor inicial de Z es cero.
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, −C j .
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.
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.
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).
De esta forma se consigue que todos los elementos de la columna de la variable
entrante sean nulos salvo el de la fila de la variable saliente cuyo valor será 1. (Es
análogo a utilizar el método de Gauss-Jordan para resolver sistemas de
ecuaciones lineales).
FASE 1
Esta primera fase es muy similar al método Simplex, con la excepción de la
construcción de la primera tabla, además de la necesidad de estudiar el resultado
obtenido para determinar si se desarrolla la segunda fase.
En tal caso, la última tabla de esta fase será, con algunas modificaciones, la
utilizada como tabla inicial para la segunda fase.
Tabla
Siendo:
Z j=∑ C bi∗Pi para i = 1..m, donde si j = 0, P0=biy C 0=0, y en caso contrario P j=a ij .
FASE 2
La segunda fase del método de las Dos Fases se desarrolla exactamente igual
que el método Simplex, con la salvedad de que antes de iniciar las iteraciones hay
que eliminar las columnas correspondientes a las variables artificiales, y
reconstruir la tabla inicial.
EJEMPLO:
FASE 1: Se considera un problema auxiliar que resulta de agregar tantas variables
auxiliares a las restricciones del problema, de modo de obtener una solución
básica factible. Resolver por Simplex un problema que considera como función
objetivo la suma de las variables auxiliares. Si el valor óptimo es cero, seguir a la
Fase II, en caso contrario, no existe solución factible.
FASE 2: Resolver por Simplex el problema original a partir de la solución básica
factible inicial hallada en la Fase I.
1)
Max 2 X 1+ x 2
S . a 10 X 1+10 X 2 ≤ 9
10 X 1 +5 x 2 ≤ 1
X 1 , X 2 ≥0
Se escoge X 1 , como variable que entra a la base al tener el costo reducido más
negativo. Posteriormente, mediante el criterio del mínimo cociente se selecciona la
variable que sale de la base: Min {9/10; 1/10} = 1/10, X 5 sale de la base:
X1 X2 X3 X4 X5
0 5 1 1 -1 8
1 1/2 0 -1/10 1/10 1/10
0 0 0 0 1 0
Donde la solución óptima es: X 1 =9/10 X 2 =0Con valor óptimo V (P)=9 /5.
CASOS ESPECIALES.
Y1 Y2 Y3 S1 S2 S3
0 1 2 1 0 0 60
1 1 1 0 1 0 180
2 1 1 0 0 1 40
-2 -2 -4 0 0 0 0
Compruebe que
Y 1=5 (X 1=105)=; Y 2 =0 ( X 2=60 ) ;Y 3=30( X 3=90)con V (P)=690.
b) PROBLEMA INFACTIBLE
Esta situación se detecta cuando el valor óptimo del problema de la fase 1 es
distinto de cero.
Max 3 X 1+ 2 X 2
S . a 2 X 1+Y 2 ≤ 2
3 X 1 + 4 X 2 +≥ 12
X 1 , X 2 ≥0
c) NO ACOTADO:
Esta situación se detecta cuando al realizar el cálculo de la variable que deja la
base, todos los elementos y kj de la columna j en la tabla, son negativos para j el
índice de una variable no básica con costo reducido negativo.
Max 2 X 1+ x 2
S . a X 1−X 2 ≤ 10
2 X 1 ≤ 40
X 1 , X 2 ≥0
Donde la tabla inicial del método simplex luego de agregar X 3 y X 4 como variables
de holgura para las restricciones 1 y 2 respectivamente es:
X1 X2 X3 X4
1 -1 1 0 10
2 0 0 1 40
-2 -1 0 0 0
Cabe destacar que en esta instancia ya se puede constatar que el problema es no
acotado. X 2 siendo variable no básica los elementos de la respectiva columna son
negativos o cero. Sin embargo, si el usuario no se percata inmediatamente de
esto, de todos modos llegará a la misma conclusión en la iteración posterior, luego
de hacer entrar X 1 a la base como aquella variable no básica con costo reducido
más negativo.
d) MÚLTIPLES SOLUCIONES ÓPTIMAS
Esta situación se detecta cuando existen costos reducidos iguales a cero en una o
más de las variables no básicas óptimas.
Max 3 X 1+ 2 x 2
S . a 5 X 1+ 2 X 2 ≤ 140
3 X 1 +2 x2 ≤120
X 1 , X 2 ≥0
Esto debido a que la variable no básica X 3 tiene costo reducido igual a cero en el
óptimo. ¿Cómo se puede obtener otro vértice con similar valor óptimo?. Se debe
forzar la entrada entonces de X 3 a la base y sacar de la base una de las variables
básicas actuales (si sigue el cálculo notará que esta corresponde a X1).
Finalmente, el nuevo vértice óptimo es X 1 =10 , X 2=45 , V ( P )=120. El resto de las
infinitas soluciones óptimas está contenida en tramo que une los 2 vértices tal
como se muestra en la figura:
e) METODO DE LA GRAN M
En el contexto de la aplicación del Método Simplex no siempre es inmediata la
obtención de una solución básica factible inicial, en las variables originales del
modelo. Para conseguir esto existen varios procedimientos como son el Método
Simplex de 2 Fases y el Método de la M Grande (o Gran M) el cual abordaremos
en este artículo. Para ello consideremos el siguiente modelo de Programación
Lineal en 2 variables: