Programación Lineal
Programación Lineal
Programación Lineal
PROGRAMACION LINEAL
12
Con más precisión, este problema incluye elegir el nivel de ciertas actividades
que compiten por recursos escasos necesarios para realizarlos. Y la variedad de
situaciones a las que se pueden aplicar esta descripción es sin duda muy grande,
y va desde la asignación de instalaciones de producción a los productos, hasta la
asignación de los recursos nacionales a las necesidades de un país; desde la
selección de una cartera de inversiones, hasta la selección de los patrones de
envió; desde la plantación agrícola, hasta el diseño de una terapia de radiaciones,
etc.
13
EJEMPLO PROTOTIPO
14
PASO 2. Tenemos que definir el objetivo o meta de la WYNDOR GLASS CO
en términos de sus variables de decisión. Para hacer esto introduciremos el
concepto de función objetivo. Esta función muestra la relación existente entre la
producción total x1 y x 2 , y la utilidad. Sea Z = utilidad, entonces:
$3x1 = utilidad (ganancia) total por la venta de las puertas de vidrio con marco
de aluminio.
$5 x 2 = utilidad (ganancia) total por la venta de ventanas de vidrio, doble con
marco de madera.
Así el producto 1 tiene que ser menor o igual que, la capacidad disponible, es
decir, ésta restricción se expresa mediante x1 4 .
PASO 4. Restricción de las variables para que sean no negativas. Esto implica
como las tasas de producción no pueden ser negativas, es necesario restringir las
variables de decisión a valores no negativos: x1 0 y x2 0 .
15
2.2.1 METODO GRAFICO (problemas de
maximización)
Usualmente las gráficas no son el mejor método para resolver problemas de
programación lineal del mundo real, ya que no podemos dibujar en más de tres
dimensiones. No obstante, una solución gráfica para un problema de tres (o
menos) dimensiones es efectiva para entender mejor la estructura de los modelos
de programación lineal. Los gráficos sirven para el entendimiento de la solución
óptima de los modelos de programación lineal.
FUNDAMENTOS MATEMATICOS
DEFINICION
Sea S el conjunto de todas las soluciones factibles de un problema lineal en su
forma estándar (Ax = b), S es un conjunto convexo.
a
j 1
ij x j bi i=1, 2, …, m
COROLARIO
Dado un programa lineal
CT x
Ax b
x0
TEOREMA
La función objetivo Z=f(x) tiene su óptimo en un punto extremo de S siempre y
cuando exista y S esté acotado.
16
DEMOSTRACION
Supongamos que el mínimo existe, digamos x 0 que pertenece a S, entonces
f ( x0 ) f ( x) para toda x que pertenece a S.
SOLUCION GRAFICA
Con los fundamentos matemáticos anteriores podemos deducir que la solución
de un modelo de programación lineal se encuentra en cualquiera de los vértices
del poliedro, que forman las restricciones.
17
Para resolver éste modelo sigamos paso a paso el procedimiento para llegar a la
solución.
La figura 2.1 muestra el trazo de la ecuación (1) como solo tiene una variable la
recta que resulte es paralela al eje de x 2 y pasa en el eje x1 con valores de (4,0).
El área sombreada en la figura 2.2 muestra todas las soluciones que satisfacen la
restricción 1 ( x1 4 ), ya que el signo de menor o igual ( ).
18
Figura 2.2 Soluciones que satisfacen la restricción 1 ( x1 4 )
El área sombreada en la figura 2.4 muestra todas las soluciones que satisfacen la
restricción 2 ( 2 x 2 12 ), ya que el signo de menor o igual ( ).
19
Figura 2.4 Soluciones que satisfacen la restricción 2 ( 2 x 2 12 )
Para trazar la ecuación (3) podemos darle valores a una variable para conocer la
otra: por ejemplo si le damos el valor de cero a x1 , es decir: 3(0) 2 x 2 18 ,
18
quedaría 2 x 2 18 , que despejando la variable se tiene que x 2 9 , así el
2
punto que ubicaríamos en el plano será: (0, 9), ahora si le damos el valor de cero
a x 2 , es decir: 3x1 2(0) 18 , quedaría 3x1 18 , que despejando la variable se
18
tiene que x1 6 , así el punto que ubicaríamos en el plano será: (0, 6). (Ver
3
la figura 2.5).
20
El área sombreada en la figura 2.6 muestra todas las soluciones que satisfacen la
restricción 3 ( 3x1 2 x2 18 ), ya que el signo de menor o igual ( ).
Trazamos por separado cada una de las restricciones, pero debemos trazar todas
en un solo plano cartesiano. Ahora, las gráficas 2.2, 2.4 y 2.6 pueden
superponerse para obtener una gráfica con las tres restricciones.
La figura 2.7 muestra la gráfica donde se superponen las tres restricciones. Las
líneas punteadas representan el área de cada una de las ecuaciones. Para
identificar la región factible de la figura 2.7, es la intersección de las áreas de las
3 rectas, (la intersección de las 3 rectas punteadas), la figura 2.8 presenta la
región sombreada la cual incluye todo punto de solución que satisface
simultáneamente todas las restricciones. Debido a que estas soluciones se
denominan soluciones factibles, la región sombreada se llama región de
soluciones factibles, o tan sólo región factible. Cualquier punto en el límite de la
región factible, o dentro de la región factible, es un punto de solución factible
para el problema, es decir, cada punto contenido o situado en la frontera del
espacio de soluciones ABCDE satisface todas las restricciones y por consiguiente
representa un punto factible.
21
Figura 2.7 Grafica que presenta las tres rectas en un
mismo plano y la región de cada una de ellas.
Una vez que se identifico la región factible, buscamos el punto óptimo el cual va
proporcionar el mejor valor posible de la función objetivo. Para encontrar dicho
punto se requiere conocer la dirección en la cual incrementa la función objetivo
(z).
22
Para describir como localizar el punto óptimo el cual proporciona los valores
para la solución óptima, como mencionamos anteriormente se necesita conocer la
dirección en la cual incremente z (la función objetivo), darle valores a z, por
ejemplo si a z le damos el valor de 15; la función objetivo queda así
15 3x1 5 x2 y se traza la línea recta que pasa por los puntos (0, 3) y (5,0).
(Ver figura 2.9). Como la función objetivo, z es maximizar, si le damos un
valor más grande que 15, digamos 20, quedaría entonces como 20 3x1 5 x2 y
trazamos la recta (cambiando el valor de z todas las rectas son paralelas). (Ver
figura 2.10).
23
Para identificar el punto de solución óptima (es cualquier punto de la frontera de
la región factible ABCDE), como la función objetivo es maximizar y las rectas
de ésta son paralelas (ver figura 2.10), siguiendo la trayectoria de esas paralelas,
usando una regla y moverla paralelamente a éstas rectas, el punto óptimo es el
último punto en la región factible (frontera ABCDE). Este punto identifica la
solución óptima. Los valores óptimos para las variables de decisión son los
valores de x1 y x 2 en ese punto. (Ver figura 2.11).
24
Por lo tanto la solución óptima es
x2 6
x1 2
z 36
EJEMPLO
25
x E = toneladas de pintura para exteriores producidas diariamente
x I = toneladas de pintura para interiores producidas diariamente
Así el ingreso bruto total se convierte en la suma de los dos ingresos, si hacemos
que z represente el ingreso bruto total, la función objetivo se puede escribir
matemáticamente como z 3x E 2 x I La meta consiste en determinar los
valores (factibles) de x E y x I que maximizarán este criterio.
El objetivo es elegir los valores que maximicen a la función objetivo, sujeta a las
restricciones impuestas sobre sus valores por las capacidades disponibles
limitadas.
Esto nos lleva a las restricciones que siguen (utilizando los datos del problema
que estamos analizando)
x E 2 x I 6 (Materia prima X)
2 x E x I 8 (Materia prima Y)
26
Matemáticamente, se presenta como:
PASO 4. Restricción de las variables para que sean no negativas. Esto implica
como las tasas de producción no pueden ser negativas, es necesario restringir las
variables de decisión a valores no negativos: x E 0 y x I 0 .
Una vez que se tiene el modelo matemático, seguir los pasos del
método gráfico para encontrar la solución óptima, como sigue:
27
Figura 2.12 Trazo de la recta x E 2 x I 6
El área sombreada de la gráfica (figura 2.13) muestra todas las soluciones que
satisfacen la restricción 1 ( x E 2 x I 6 ), ya que el signo de menor o igual ( ).
28
Figura 2.14 Trazo de la recta 2 x E x I 8
El área sombreada de la gráfica (figura 2.15) muestra todas las soluciones que
satisfacen la restricción 2 ( 2 x E x I 8 ), ya que el signo es menor o igual ( ).
29
La figura 2.16 muestra el trazo de las cuatro ecuaciones en el plano.
En la figura 2.17 muestra la gráfica que representa la región de cada una de las
restricciones (ecuaciones), es como si colorearas de color rojo la región de la
ecuación 2, de color verde la región de la ecuación 3, de color amarillo la región
de la recta 1 y de color azul la región de la ecuación 4; donde se intersecan los
cuatro colores ésa es la región factible como lo muestra la figura 2.18.
30
Figura 2.18. Gráfica que muestra la región factible
31
Figura 2.19. Gráfica que muestra la dos rectas de Z=6 y Z=9
32
Figura 2.21. Gráfica que muestra el punto óptimo
33
8
Multiplicando el entero por la fracción se tiene que: x E 6
3
8 18 8 10
Despejando xE 6
3 3 3
Por lo tanto a solución al sistema de ecuaciones es:
10 4
xE y xI
3 3
10
Así ésta solución indica que la producción diaria debe ser de toneladas de
3
4
pintura para exteriores y de toneladas de pintura para interiores. El ingreso
3
respectivo es
10 4 38
z 3 2 (Miles de $).
3 3 3
34
A continuación consideremos las restricciones impuestas al problema. Para
satisfacer la demanda del cliente importante de 125 galones del producto A,
sabemos que A debe ser al menos 125. Por lo tanto, la restricción queda como
x1 125
Debido a que la producción combinada para ambos productos debe ser en total al
menos 350 galones, por lo que la restricción es
x1 x 2 350
Minimizar z 2 x1 3x2
sujeta a
x1 125
x1 x 2 350
2 x1 x2 600
x1 , x2 0
35
Para encontrar la solución de costo mínimo, ahora tracemos la línea de la función
objetivo (z) correspondiente a un valor de costo total particular. Por ejemplo,
podríamos comenzar trazando la línea dándole un valor a z=1100, la línea será
2 x1 3x2 1100 . Esta línea se la que se muestra en la figura 2.23.
( x1 x 2 350 )(-1)
2 x1 x2 600
-1 x1 - x 2 =-350
2 x1 x2 600
x1 250
Por lo que las coordenadas del punto óptimo son (250, 100), éstos valores
proporcionan la solución de costo mínimo con un valor de función objetivo de
z 2(250) 3(100) 500 300 800
36
2.3 METODO SIMPLEX
INTRODUCCION
Z c1 x1 c 2 x 2 c n x n
Hallar entre las soluciones del sistema (1), aquellas soluciones no negativas para
las cuales la forma Z toma su valor mínimo o máximo. Tal solución es una
solución óptima del sistema dado.
Donde las bi , ci y a ij son constantes reales fijas, y las x i son variables reales
a determinar.
37
2.3.1 FUNDAMENTO MATEMATICO
En el espacio de dos dimensiones, si se tienen dos vectores P1 y P2 que
parten del origen y que no se encuentran en la misma recta, es decir, dos vectores
linealmente independientes, entonces cualquier tercer vector P0 en este espacio
se puede expresar como una combinación lineal de ellos.
38
Figura 2.25 Área del paralelogramo con los lados P1 y P2
Entonces el determinante
39
a11 a12 a1 j a1m
a21 a22 a2 j a2 m
0
ai1 ai 2 aij aim
am1 am 2 amj amm
40
2. Segundo se suele dar por supuesto que las filas de A son linealmente
independientes, lo que corresponde a la independencia lineal de las m
ecuaciones. Una dependencia lineal entre las filas de A daría lugar a restricciones
contradictorias y, por tanto, no se produciría ninguna solución para (3), o
resultaría una redundancia que podría eliminarse. A si pues la hipótesis será que
la matriz A de mxn tiene m<n y las m filas de A son linealmente independientes.
Según ésta hipótesis el sistema (3) tendrá solución y de hecho, siempre tendrá
como mínimo una solución básica.
DEFINICION
Dado un programa lineal
Minimizar c T x
Sujeto a Ax=b (4)
x0
Una solución factible de (4) es un punto X ( x1 , x 2 , , x n ) que
satisface Ax=b y x 0 .
Una solución factible básica es una solución factible que se obtiene al
hacer n-m variables igual a cero y resolver para las n restantes, siempre
que su determinante sea no cero.
Una solución factible para las restricciones que alcance el valor mínimo
de la función objetivo sujeta a esas restricciones, se denomina solución
factible óptima. Si esta solución es básica, es una solución factible
básica óptima.
La adición de las variables de holgura crea la primera base, que resulta ser la
matriz identidad.
41
PASO 4. Constrúyase una tabla con los coeficientes del programa lineal. Esta
tabla tendrá la siguiente estructura.
Variables básicas
(Originales) Variables de Holgura
x1 x 2 ……… xn x n 1 x n 2 ……… xnm solución
Z x1 x 2 ……… xn x n 1 x n 2 ……… xnm
C C TERMINOS
x n 1 O O
E E
xn2 F F
I I
INDEPEN-
. DIENTES
C C
. I I
. E E
N N
xnm T T
E E
S S
42
2.4 ILUSTRACION DEL METODO SIMPLEX
Este procedimiento algebraico se basa en la solución de sistemas de ecuaciones
lineales. Así, el primer paso para preparar el método simplex es convertir las
restricciones de desigualdad en restricciones de igualdad equivalentes. Esta
conversión se logra con la introducción de variables de holgura. Es decir cuando
una restricción se tenga el signo , éste se convierte en igualdad sumando una
variable positiva que recibe el nombre de variable de holgura.
Maximizar z 3x1 5 x2
sujeta a
x1 4
2 x 2 12
3 x1 2 x 2 18
x1 , x 2 0
43
con un punto extremo del espacio de soluciones
La idea general del método lo ilustraremos con el espacio de soluciones
representado en la figura 2.26.
El algoritmo simplex da inicio en el origen (punto E de la figura 2.26, que suele
denominarse solución inicial. Después se desplaza a un punto extremo
adyacente, que pudiera ser A o D). La elección específica de uno u otro punto
depende de los coeficientes de la función objetivo. Como se realiza un proceso
de maximización, la solución se desplazará en la dirección en la cual crezca x1
hasta que se llegue al punto extremo A. En A, el proceso se repite para ver si hay
otro punto extremo que pueda mejorar el valor de la función objetivo. Una vez
más, mediante el uso de la información de la función objetivo podemos decir si
existe o no este punto. Finalmente, la solución se detendrá en B, el punto
extremo óptimo.
Existen dos reglas que rigen la selección del siguiente punto extremo del método
simplex:
1. el siguiente punto extremo debe ser adyacente al actual. Por ejemplo en
la figura 2.26 la solución no se puede desplazar de E a A en forma
directa. En cambio, debe seguir los bordes del espacio de soluciones: E
a A y después A a B.
2. la solución no puede regresar nunca a un punto extremo considerado con
anterioridad. Por ejemplo, en la figura 2.20 la solución no puede regresar
de A a E.
44
Así, se aumentan variables de holgura en todas las restricciones del modelo
matemático que tengan el signo pero distinguiéndolas entre sí, es decir, que
no sea la misma variable de holgura que se agregue a cada una de las
restricciones del modelo. Al introducir variables de holgura en las otras
restricciones, el modelo de programación lineal original para este ejemplo queda
de la siguiente manera.
x1 S1 4
2 x 2 S 2 12
3x1 2 x 2 S 3 18
x1 , x 2 , S1, S 2 , S 3 0
Así el modelo listo para llevarlo a la tabla del método sipmlex es:
La forma tabular del método simplex utiliza una tabla simplex para desplegar de
manera compacta el sistema de ecuaciones que lleva a la solución.
var iables originales var iables de ho lg ura
x1 x2 S1 S2 S3 Solución
Z -3 -5 0 0 0 0
S1 1 0 1 0 0 4
S2 0 2 0 1 0 12
3 2 0 0 1 18
S3
Tabla 2.3 Tabla inicial del método simplex para el problema de la Wyndor
Glass Co.
45
La adición de las variables de holgura ha generado el primer punto extremo de la
región factibilidad, o sea la primera base formada por las columnas S 1 , S 2 y
S 3 . Este punto extremo está identificado por las siguientes coordenadas en el
espacio de 5 dimensiones:
x1 0 , x2 0 , S1 4 , S 2 12 , S 3 18
En éste punto extremo, es factible porque satisface las restricciones AX≤b, X≥0.
Para elegir o determinar la variable que sale se debe tomar en cuenta los
siguientes pasos:
Elija los coeficientes de la columna que entra que son estrictamente
positivos (>0)
Divida la solución entre los coeficientes de la columna que sale
Identifique el renglón de menor valor de estas razones
La variable básica es la que sale de ese renglón, y sustitúyala por la
variable básica es entrante de la columna en la tabla 2.4
46
Siguiendo los pasos para elegir la variable que va a salir se divide la
solución entre los coeficientes de la columna que sale y se elige la del valor
menor, como lo muestra la tabla 2.5.
Señalamos la variable que sale y la que entra como lo muestra la tabla 2.6
47
Tabla 2.7 Tabla simplex que muestra el renglón pivote
Este nuevo renglón que se muestra en la tabla 2.7, va a ser el pivote para
completar toda la tabla, para esto se realizan las siguientes operaciones:
1. Para llenar el renglón de Z 1 , al coeficiente de Z 0 de la variable que entró
se le antepone un signo negativo y se multiplica por el renglón pivote (de
la misma columna) y se suma con el valor de Z 0 (de la misma columna),
es decir:
-(-5)(0)+ (-3)=0-3=-3 (es el primer valor del renglón de Z 1 )
-(-5)(1)+ (-5)=+5-5=0 (es el segundo valor del renglón de Z 1 )
-(-5)(0)+ (0)=0 (es el tercer valor del renglón de Z 1 )
1 5
-(-5) + (0)= (es el cuarto valor del renglón de Z 1 )
2 2
-(-5)(0) + (0)= 0 (es el quinto valor del renglón de Z 1 )
-(-5)(6) + (0)= 30 (es el valor de la solución del renglón de Z 1 )
Ahora se puede llenar el renglón de Z 1 , como lo muestra la tabla 2.8
48
Tabla 2.8 Presentando los valores del renglón de Z1
49
Tabla 2.9 Presentando los valores del renglón de Z 1 y de S 1
Ahora se puede llenar todos los renglones de la segunda tabla, tal como lo
muestra la tabla 2.10.
50
Tabla 2.10 Primera iteración completa del método simplex.
Sin embargo, falta una variable original que entre a la base y como el valor del
renglón Z 1 es negativo (-3), el valor de la función objetivo puede aún mejorar.
Repitiendo otra iteración del método simplex, se tiene que x1 entra a la nueva
base y la que sale es S 1 y realizando las operaciones correspondientes se realiza
el llenado de la última iteración (la ultima tabla que correspondiente a Z 2 ) como
lo muestra la tabla 2.11.
51
Tabla 2.11 Tabla simplex completa para el problema de Wyndor Glass Co.
52
2.5 VARIABLES ARTIFICIALES
En la presentación del método simplex hemos utilizado las variables de holgura
como la solución básica inicial. Sin embargo, si la restricción original es una
ecuación o es del tipo (≥), ya no tenemos una solución factible básica inicial
preparada.
Minimizar z 4 x1 x 2
Sujeta a
3 x1 x 2 3
4 x1 3 x 2 x3 6
x1 2 x 2 S1 4
x1 , x 2 , x3 , S1 0
53
2.6 LA TECNICA DE LA GRAN M
Consideremos la forma estándar del ejemplo anterior
Minimizar z 4 x1 x 2
Sujeta a
3 x1 x 2 3
4 x1 3 x 2 x3 6
x1 2 x 2 S1 4
x1 , x 2 , x3 , S1 0
3x1 x2 R1 3
4 x1 3x2 x3 R2 6
54
Habiendo construido una solución factible inicial, se debe condicionar el
problema de modo que cuando lo pongamos en forma tabular, la columna del
lado derecho producirá la solución inicial en forma directa. Esto se hace
mediante el uso de las ecuaciones de restricciones para sustituir R1 y R2 en la
función objetivo. De manera que
R1 3 3x1 x2
R2 6 4 x1 3x2 x3
z 4 x1 x2 M (3 3x1 x2 ) M (6 4 x1 3x2 x3 )
(4 7M ) x1 (1 4M ) x2 Mx3 9M
z (4 7 M ) x1 (1 4M ) x 2 Mx 3 9M
55
Para elegir la variable que va a salir se divide la solución entre los
coeficientes de la columna que sale y se elige la del valor menor, como lo
muestra la tabla 2.13.
56
Tabla 2.15 Ilustración del renglón pivote en la primer iteración
57
Tabla 2.16 Ilustración del renglón de Z1
58
Tabla 2.17 Tabla final del método simplex utilizando la técnica M
2 9 17
La solución óptima es x1 , x2 y z
5 5 5
59
2.7 LA TECNICA DE DOS FASES
Una desventaja de la técnica M es el posible error de cálculo que pudiera
generarse de la asignación de un valor muy grande a la constante M. Para ilustrar
esto, supóngase que M=100000 en el ejemplo de la técnica M del ejemplo
anterior. Después en la tabla inicial, los coeficientes de x1 y x2 en la función z se
transforman en (-4+700000) y (-1+400000). El efecto de los coeficientes
originales (4 y 1) es ahora demasiado pequeño en relación con los números
grandes generados por los múltiplos de M. El resultado peligroso es que x 1 y x2
puede tratarse como variables con coeficientes cero en la función objetivo.
El método de dos fases está diseñado para remediar esta dificultad. Aunque las
variables artificiales se suman en la misma forma que se emplea en la técnica M,
se elimina el uso de la constante M mediante la solución del problema en dos
fases.
FASE I
Auméntese las variables artificiales según se necesite para asegurar una solución
inicial. Fórmese una nueva función objetivo que busque la minimización de la
suma de las variables artificiales sujeta a las restricciones del problema original
modificado por las variables artificiales. Si el valor mínimo de la nueva función
objetivo es cero (lo que quiere decir que todas las artificiales son cero), el
problema tiene un espacio de soluciones factible. Pase a la fase II de lo contrario,
si el mínimo es positivo, el problema no tiene solución factible. Deténgase.
FASE II
Utilícese la solución básica óptima de la fase I como solución inicial para el
problema original.
Minimizar r R1 R2
Sujeta a
3 x1 x 2 R1 3
4 x1 3 x 2 x3 R2 6
x1 2 x 2 S1 4
x1 , x 2 , x3 , R1 , R2 , S1 0
60
Como R1 y R2 están en la solución inicial, deben sustituirse en la función
objetivo, esto es:
r R1 R2 (3 3x1 x 2 ) (6 4 x1 3x 2 x3 ) 7 x1 4 x 2 x3 9
Básica x1 x2 x3 R1 R2 S1 Solución
R 7 4 -1 0 0 0 9
R1 3 1 0 1 0 0 3
R2 4 3 -1 0 1 0 6
S1 1 2 0 0 0 1 4
Básica x1 x2 x3 R1 R2 S1 Solución
R 0 0 0 -1 -1 0 0
x1 1 0 1/5 3/5 -1/5 0 3/5
x2 0 1 -3/5 -4/5 3/5 0 6/5
S1 0 0 1 1 -1 1 1
61
Para resolver el problema, necesitamos sustituir las variables básicas x1 y x2 en la
función objetivo como se hizo en la técnica M. Usando las ecuaciones de las
restricciones entonces resulta:
3 1 6 3 1 18
z 4 x1 x2 4( x3 ) ( x3 ) x3
5 5 5 5 5 5
Básica x1 x2 x3 S1 Solución
Z 0 0 1/5 0 18/5
x1 1 0 1/5 0 3/5
x2 0 1 -3/5 0 6/5
S1 0 0 1 1 1
Básica x1 x2 x3 S1 Solución
z 0 0 0 -1/5 17/5
x1 1 0 0 -1/5 2/5
x2 0 1 0 3/5 9/5
x3 0 0 1 1 1
2 9 17
x1 , x2 y z
5 5 5
62