You are on page 1of 15

UNIVERSIDAD DE ANTIOQUIA FACULTAD DE INGENIERA DEPARTAMENTO DE INGENIERA INDUSTRIAL

APUNTES DEL CURSO DE PROGRAMACIN LINEAL Profesor: Hugo Garca Jimnez

ALGUNOS FUNDAMENTOS TERICOS DEL MTODO SIMPLEX

Octubre de 2003

Introduccin Este captulo tiene el propsito de proporcionar al estudiante una explicacin de los fundamentos tericos y la lgica del ms eficiente mtodo analtico para la solucin de modelos de Programacin Lineal. Cuando se conocen y se comprenden los fundamentos del mtodo simplex y la manera como opera, estamos en capacidad de usarlo eficientemente, obteniendo ventajas de sus potencialidades y entendiendo mejor el significado e implicaciones de sus resultados. Fundamentos tericos El mtodo simplex fue concebido a partir de muchas bases matemticas ya existentes en el momento de su aparicin. Con el objetivo de buscar una comprensin integral del mtodo vamos a estudiar los principales conceptos relacionados con su fundamentacin matemtica. Formatos de presentacin del modelo de Programacin Lineal. Hemos observado que el modelo matemtico de un problema puede presentar algunas restricciones de la forma , otra de la forma = y otras de la forma . Un modelo escrito as, se dice que est en formato general. Pero sabemos que es ms fcil hacer operaciones con igualdades que con desigualdades, por lo cual es deseable transformar todas las restricciones que tengan desigualdades a restricciones en forma de igualdades. Lo anterior da lugar a un formato especial de presentacin del modelo de Programacin Lineal, que se conoce como formato estndar; el cual puede definirse exactamente como aquel en el cual, ya sea para un objetivo de maximizacin o de minimizacin, todas las restricciones estn expresadas como igualdades y adems todas variables son mayores o iguales a cero. Este formato es el adecuado para obtener la solucin analtica del modelo, pero hay otra manera de presentarlo que se conoce como formato cannico, y es til para interpretarlo y realizar anlisis de la solucin obtenida. Un modelo esta expresado en formato cannico cuando, adems de que todas las variables son no negativas, se tiene que para un objetivo de maximizacin, todas las restricciones son del tipo menor o igual (), o para un objetivo de minimizacin, todas las restricciones son del tipo mayor o igual (). Como transformar el Modelo General

Para convertir un modelo de un formato de presentacin a otro, es necesario efectuar algunas transformaciones ya sea en la funcin objetivo, en las restricciones o en las variables de decisin. El modelo que resulta ser equivalente al original, pero ms fcil de comprender, solucionar o analizar. Las transformaciones de mayor utilidad que podemos llevar a cabo son: 1. Convertir en igualdad una desigualdad de tipo

La igualdad se obtiene al adicionar en el lado izquierdo de la desigualdad una variable no negativa, que representa el valor que le hace falta al lado izquierdo para ser igual al lado derecho. Esta se conoce como variable de holgura, y en el caso particular en el que las restricciones de tipo se refieren al consumo mximo de un recurso, la variable adicionada cuantifica la cantidad sobrante de recurso (cantidad no utilizada) al poner en ejecucin la solucin ptima. As, cuando la restriccin 1 de un modelo es 5X1 + 4X2 + 9X3 15 Puede convertirse en la ecuacin 5X1 + 4X2 + 9X3 + H1 = 15 Donde H1 es la variable que indica la holgura de la restriccin 1. Si por ejemplo X1 = 1, X2 = 2, X3 = 0 obtendramos que 5(1) + 5(2) + 9(0) + H1 = 15 de donde 13 + H1 = 15 por lo cual H1 = 2 2. Convertir en igualdad una desigualdad del tipo

Se realiza al restar en el lado izquierdo de la desigualdad, una variable no negativa, que representa el valor en el cual el valor del lado izquierdo excede al derecho. A esta variable la llamaremos variable de exceso y en el caso particular en el que las restricciones de tipo se refieran al contenido mnimo de un ingrediente en una mezcla, la variable adicionada indica cunto ingrediente en exceso sobre el mnimo exigido contendr la mezcla. Si la restriccin 2 de un modelo es 5X1 + 7X2 + 14X3 200, puede transformarse a la igualdad 5X1 + 7X2 + 14X3 - E2 = 200, en donde E2 es una variable que indica el exceso de la restriccin numero 2. Es necesario indicar en este punto que cuando se agrega una variable de holgura o de exceso en una restriccin, se debe agregar tambin la misma variable en la funcin objetivo. Usualmente se pone un cero como coeficiente, salvo en casos especiales. Esto lo analizaremos con ms detalle al interpretar la solucin de los modelos.

3.

Invertir el sentido de una desigualdad:

Multiplicar ambos lados de una desigualdad por (-1), o lo que es lo mismo cambiarle el signo a todos los trminos de la inecuacin, produce que esta cambie de sentido. Por ejemplo, la desigualdad 3X1 9X2 + 2X3 -8

Se invierte de sentido al cambiarle el signo a todos los trminos, por lo cual quedar escrita como; -3X1 + 9 X2 2X3 8, que lgicamente equivale a la primera. 4. Reemplazar una desigualdad por dos desigualdades:

Si una expresin es igual a un valor, esta igualdad tambin puede indicarse escribiendo para la misma expresin dos desigualdades de sentido opuesto. Por ejemplo la ecuacin: 4X1+ 6X2 10X3 = 20, se puede reemplazar por las dos desigualdades: 4X1+ 6X2 10X3 20 y 4X1+ 6X2 10X3 20 es lgico que la nica forma en que ambas desigualdades se cumplen simultneamente, es cuando el valor del trmino del lado izquierdo sea igual al valor del lado derecho. 5. Reemplazar una desigualdad del tipo de un valor absoluto, por dos desigualdades.

Una desigualdad del tipo a1X1 + a2X2 +... + anXn P

define un hiperespacio cerrado y por ello puede interpretarse como equivalente a dos desigualdades de sentidos opuestos que limitan dicho hiperespacio: v.gr. la restriccin: 4X1 5X2 25 que matemticamente se puede expresar tambin como

-25 4X1 5X2 25 es equivalente a las dos restricciones: 4X1 5X2 25 o sea 4X1 5X2 25 y -(4X1 - 5X2) 25 y -25 4X1 5X2

Este tipo de restricciones se utilizan para describir limitantes especiales, como por ejemplo la que condiciona que el desfase entre los tiempos utilizados por dos procesos para fabricar unos artculos que luego se van a ensamblar, no excedan de cierto valor establecido. Advirtase que una desigualdad del tipo con valor absoluto, no es de inters en la programacin lineal, puesto que ella no define un espacio cerrado, sino dos semiespacios, situacin que no sigue un comportamiento lineal. 6. Redefinir una variable irrestricta en trminos de dos variables no negativas.

La mayora de los modelos de problemas reales suponen que todas las variables son no negativas, pero en ciertos problemas se pueden tener variables irrestrictas, o sea que pueden tomar un valor negativo, cero o positivo. Ejemplos de esas variables, son las que cuantifican efectivo en caja, temperaturas, niveles de inventario, y otras. Una variable libre, como tambin se conoce a las variables irrestrictas, debe reemplazarse por la diferencia de dos variables no negativas. Lo anterior debe realizarse antes de iniciar la solucin del modelo, pues el algoritmo de solucin, supone que las variables no pueden tomar valores negativos. Por ejemplo, si en un modelo tenemos que la variable X4 es irrestricta, debemos expresarlo en funcin de otras dos, as: X4 = X41 - X42, con X41, X42 0

Los nombres asignados a las variables son arbitrarios, pudiendo elegirse otros diferentes, pero es recomendable que sean nemotcnicos. Veamos las situaciones que se pueden presentar al obtener la solucin del modelo: Si X41 > X42, tendremos que X4 > 0. Si X41 = X42, se tendr que X4 = 0, y por ltimo si se presenta que X41 < X42 entonces X4 < 0.

7) Cambiar el objetivo de un modelo. Muchas veces resulta ventajoso cambiar el objetivo de optimizacin de un problema. Lo anterior puede efectuarse aprovechando la propiedad matemtica de que la minimizacin de una funcin Z=f(x) es equivalente a la maximizacin del negativo de tal funcin, que se expresa como -Z= -f(x) Z= f (-x). tambin maximizar Z= g (x) es igual a minimizar Z=g(x) Z= g (-x). Por ejemplo: Maximizar: Z = f (X1, X2, X3) = 5X1 + 9X2 3X3 Es matemticamente igual a: Minimizar:- Z = -f (X1, X2, X3) = -5X1 - 9X2 + 3X3 Debe aclararse que al efectuar la transformacin el valor de la funcin no cambia de valor absoluto, sino de signo, de tal forma que si por ejemplo en un problema de maximizacin la funcin objetivo da 20, en minimizacin dara -Z = -20. De la misma manera, si el objetivo de un modelo es minimizar y su valor es 40, cuando lo pasamos a maximizar dara Z = -40, pero la< solucin del modelo o sea el valor ptimo de las variables ser el mismo en ambos casos. Ejemplos de Transformacin de modelos Ejemplo completo de transformacin de un modelo a formato estndar Dado el siguiente modelo de un problema: Maximizar: Sujeto a: 7X1 + 5X2 100 (1) -6X1 +9X2 80 (2) 3X1 7X2 = 30 (3) con X1, X2, 0 Se puede verificar que al efectuar el cambio de signo a todos los coeficiente objetivo con su resultante cambio de signo en el valor de Z lo que ocurre es que se conservan los gradientes para todos los Xi, sea, Z/Xi = (-Z)/Xi Lo transformaremos a formato estndar mediante los siguientes pasos: Z = 4X1 + 6X2

1)

7X1 + 5X2 100 es equivalente a: 7X1 + 5X2 + H1 = 100 H1 0 *

2)

-6X1 + 9X2 80 es equivalente a: -6X1 +9X2 E2 = 80 E2 0 * *

3X1 7X2 = 30 ya es igualdad con lo cual el modelo en formato estndar queda: Maximizar: Z = 3X1 + 2X2 + OH1 + OE2 Sujeta a: 7X1 + 5X2 + H1 -6X1 +9X2 E2 3X1 7X2 = 100 = 80 = 30

con : X1, X2 0; H1, E2 0 Ejemplo de transformacin de un modelo a formato cannico: Dado el siguiente modelo: Minimizar: Sujeto a: Z = 4X1 + 5X2 + 7X3 1X1 + 1X2 + 2X3 9X1 + 4X2 2X3 5X1 + 3X2 - 2X3 2X1 + 6X2 + 5X3 70 25 100 = 40

con X1, X3 0, X2 irrestricta Como el objetivo es minimizar, todas las restricciones deben ser del tipo , por lo cual las transformaciones necesarias son: 1) 9X1 + 4X2 2X3 -9X1 - 4X2 + 2X3 2) 2X1 + 6X2 + 5X3 25 -25 = 40 es equivalente a la pareja: es equivalente a:

2X1 + 6X2 + 5X3 2X1 + 6X2 + 5X3 y a su vez es equivalente a 3)

40 40 40 -40 es equivalente a la pareja: y 5X1 + 3X2 - 2X3 100 -100 -100

2X1 + 6X2 + 5X3 -2X1 - 6X2 - 5X3 100 100

5X1 + 3X2 - 2X3 5X1 + 3X2 - 2X3

y a su vez es equivalente

5X1 + 3X2 - 2X3 -5X1 - 3X2 + 2X3

4) Como X2 es libre la debemos reemplazar en funcin de dos variables no negativas. Escogiendo arbitrariamente las variables X4 y X5, expresaremos que: X2 = X4 X5 con X4, X5 0

De esta manera el modelo en formato cannico es: Minimizar: Sujeta a: Z = 4X1 + 5(X4 X5)+ 7X3 1X1 + 1(X4 X5) + 2X3 -9X1 - 4(X4 X5) + 2X3 5X1 + 3(X4 X5) - 2X3 -5X1 - 3(X4 X5) + 2X3 -2X1 - 6(X4 X5) - 5X3 con X1, X2, X4, X5 0 70 -25 -100 -100 -40

Representacin matricial del modelo de programacin lineal Para simplificar la discusin inicial de este tema, supongamos que todas las restricciones de un modelo son de la forma ; por lo cual cuando expresamos el modelo de P. L. en formato estndar, obtenemos en general un modelo con la siguiente estructura:

Optimizar: Z = C1X1 + C2X2 + ... Sujeta a: + CnXn + oH1 + oH2 + + oHm = b1 = b2

a11X1 + a12X2 + .... + a1nXn + 1H1 a12X2 + a22X2 + .... + a2nXn . . . am1X2 + am2X2 + .... + amnXn + 1H2

+ 1Hm

= bm

con Xj 0, para todo j y Hi 0, para todo i. En el modelo podemos definir los siguientes arreglos de nmeros: C: Vector de coeficientes objetivo (vector fila de n + m = k elementos). C: ( C1, C2, ... , Cn, Cn+1, Cn+2, ..., Cn+m) Ntese que los elementos Cn+1, Cn+2, ..., Cn+m valen cero, pues son los coeficientes asociados a las variables de holgura. X: vector de variables de decisin (vector columna de n + m = k elementos) X = (X1, X2, ..., Xn, H1, H2, , Hm)t Ntese que las variables H1, H2, ... , Hm corresponderan a las variables X n+1, Xn+2, ... , Xn+m respectivamente. b: Vector de coeficientes recurso (vector columna de m elementos). Tambin se conoce como vector del lado derecho, vector de trminos independientes y RHS vector(Righ Hand Side vector). b = ( b1, b2, , bm)t A: matriz de coeficientes tecnolgicos (matriz de tamao ( m, (m+n)).

A=

a11 a12 ... a1n a21 a22 ... a2n . . . . . .

1 0

0 1

0... 0

0 0

. . . am1 am2 ... amn

Ahora es posible expresar el modelo en forma matricial as: Optimizar: Sujeta a: Z = CX AX = b Con X 0 La representacin matricial del modelo que se resolvi por el Mtodo Grfico es la siguiente: Max: Z = (10, 6, 0, 0, 0 ) ( X1, X2, H1, H2, H3)t S. a =

con ( X1, X2, H1, H2, H3)t > ( 0, 0, 0, 0, 0)

Solucin de un sistema de ecuaciones lineales: Recordemos que al solucionar un sistema de ecuaciones lineales podemos encontrar que tiene alguno de los tres siguientes tipos de solucin: Una sola solucin Infinito nmero de soluciones Ninguna solucin Para determinar cul tipo de situacin tiene un sistema, se debe conocer el rango de su matriz de coeficientes, el cual nos permite clasificar la solucin as: No hay solucin En trminos amplios un sistema AX = b no tiene solucin cuando el nmero m de ecuaciones es mayor que el nmero k de variables. Siendo ms estrictos conceptualmente, debemos considerar la posibilidad de que algunas ecuaciones sean combinacin lineal de otras, por lo cual esas restricciones no son actuantes en el sistema y se disminuye el nmero total de ecuaciones.

Estrictamente para definir el tipo de solucin debemos considerar es el rango r (A) de la matriz A de coeficientes, que como recordamos es el nmero de filas o de columnas linealmente independientes que tiene una matriz. Si el rango r(A), es menor que el rango r (A / b), de la matriz de coeficientes ampliada con el vector de recursos, entonces el sistema no tiene solucin. En estos casos se dice que el sistema es inconsistente. Ejemplo: Este sistema tiene solucin inconsistente (comprubalo) X1 + 3X2 + X3 2X1 + 4X2 + 2X3 X1 + 3X2 + X3 Solucin nica En trminos igualmente amplios un sistema tiene solucin nica cuando el nmero de ecuaciones m es igual al nmero de variables k. Para usar criterios mas estrictos conceptualmente, recordemos estos dos conceptos: Si el rango r (A) de la matriz de coeficientes de un sistema AX = b, es igual al rango r (A / b) de la matriz aumentada, de dice que el sistema es consistente, y cuando el determinante de una matriz( cuadrada ) es diferente de cero, se dice que la matriz es singular. A partir de estas definiciones se dice que un sistema tiene solucin nica cuando el sistema es consistente y adems la matriz A es singular, o sea si es cuadrada de tamao k y r(A) = r (A/b) = k = m Ejemplo: El siguiente sistema tiene solucin nica. (verifcalo) 2X1 + 3X2 X1 + 2X2 = = 6 8 = 6 = 5 = 1

Hay varios mtodos para encontrar la solucin de un sistema como el anterior. El que usaremos en el texto, aunque indirectamente, es el mtodo que utiliza la inversa de la matriz de coeficientes. Si AX = b entonces X = A -1b Infinito Nmero de Soluciones El ltimo caso que puede presentarse, es precisamente el que ms nos interesa en este curso, pues refleja la clase de sistemas de ecuaciones que se forman cuando expresamos los modelos de programacin lineal en formato estndar.

Un sistema de ecuaciones lineales que tenga ms incgnitas que ecuaciones, tiene infinito nmero de soluciones. Refirindonos al rango de la matriz de coeficientes, se dice que un sistema en el cual el rango de A sea igual al rango de A ampliada con b (consistente) y que adems tenga ms incgnitas que ecuaciones linealmente independientes, tiene infinito nmero de soluciones. Por ejemplo el sistema: 3X1 + X2 X3 X1 + X2 + X3 =8 =4 3 r(A) = r 1 1 1 sabes como calcular el rango? (Verifica este resultado) y adems 3 r (A/B) = r 1 1 1 4 1 -1 8 = 2 (verifcalo tambin) 1 -1 = 2

Es consistente pues

Observamos tambin que del nmero de variables (k=3) es superior al nmero de ecuaciones linealmente independientes (r(A) = 2). Por lo tanto, el sistema tiene infinito nmero de soluciones. Lo podemos verificar si modificamos el sistema seleccionando arbitrariamente n variables para expresarlas en trminos de las k-n restantes. Por ejemplo, en este caso en el cual k=3 y n=2, si seleccionamos a X1 y X2 ; los podemos expresar en trminos de X3, despejando mediante los siguientes pasos: 3X1 + X2 = 8 + X3 X1 + X2 = 4 X3 O finalmente que: X1 = 2 + X3 X2 = 2 - 2 X3 Puesto que podemos asignar cualquier valor real a X3, el nmero de valores de X1 y X2 es infinito. Soluciones bsicas y base de una solucin

Cuando tenemos un sistema AX = b, de m ecuaciones lineales con m + n = k incgnitas, podemos seleccionar de la matriz A una submatriz B no singular de tamao (m,m), y darle el valor de cero a las n variables no asociadas a la columnas de la submatriz B. La solucin al subsistema elegido (que consta de m ecuaciones y m incgnitas), se llama solucin bsica y se denota como el vector XB Las m variables asociadas a las columnas de B, se llaman variables bsicas. Estas integran al vector XB y pueden tomar valores positivos, negativos o cero. Cuando el sistema corresponde a un modelo de P.L., se dice que la solucin bsica es factible, si todos sus componentes son mayores o iguales que cero y por el contrario se llaman soluciones bsicas infactibles a aquellas que tienen al menos una componente negativa. Las n variables a las cuales se les asign valor de cero, se llaman variables no bsicas. A la matriz B se le llama Base o matriz bsica y puesto que es no singular, se compone de un conjunto de m columnas (o vectores) linealmente independientes. ***DETERMINACIN DE LAS SOLUCIONES BSICAS Ilustremos un poco lo dicho hasta el momento, calculando todas las soluciones bsicas del sistema de ecuaciones correspondiente al modelo que resolvimos inicialmente por el mtodo grfico. El sistema expresado ya en formato estndar es: 4X1 + 8X2 + H1 4X1 + 3X2 + H2 6X1 + 2X2 + H3 = 800 = 600 = 600

Tenemos m = 3 ecuaciones; n = 2 variables de decisin ; m + n = 5 total de variables

A=

4 4 6

8 3 2

1 0 0

0 1 0

0 0 1

b=

800 600 600

X=

X1 X2 H1 H2 H3

En este caso una solucin bsica se obtiene al seleccionar como variables no bsicas a 2 (= n) de las 5 (= k ) variables. A las seleccionadas se les dar el valor cero y luego se despejara el valor de las otras 3 (= m ) variables que se llamarn variables no bsicas. Todas las maneras como podemos escoger dos variables no bsicas de un total de cinco posibles y los correspondientes valores de las otras variables (solucin bsica), se muestran en la tabla siguiente.

Solucin X1 Numero 1 2 3 4 5 6 7 8 9 10 0 0 0 0 200 150 100 120 80 60

X2 0 100 200 300 0 0 0 40 60 120

H1 800 0 -800 -1600 0 200 400 0 0 -400

H2 600 300 0 -300 -200 0 200 0 100 0

H3 600 400 200 0 -600 -300 0 -200 0 0

Z 0 600 1200 1800 2000 1500 1000 1440 1160 1320

Tipo de Intersecto solucin de la grfica factible factible infactible infactible infactible infactible factible infactible factible infactible

Podemos constatar que efectivamente el nmero de soluciones bsicas que tiene este sistema de ecuaciones es el nmero de combinaciones de dos que es posible obtener con un total de cinco variables. Este clculo se indica y se efecta as:

= 5! 2! 3!

= 10

Si comparamos las soluciones bsicas que acabamos de obtener con los intersectos de cada pareja de rectas de la solucin grfica ( realiza esta comparacin a partir de la figura 3.5), notamos que cada solucin bsica del sistema de ecuaciones corresponde a un intersecto de la grfica. Notamos tambin que las soluciones bsicas factibles corresponden a los puntos extremos del polgono de factibilidad del mtodo grfico, aseveracin que habamos formulado antes.

Igualmente verificamos que de todas las soluciones factibles la mejor es la solucin bsica X1 = 80, X2 = 60, H2 = 100; que representa una ganancia de Z = 1160. Cuando estudiamos el mtodo grfico aprendimos que para hallar la solucin ptima bastaba con examinar los puntos extremos, los que ahora conocemos como soluciones bsicas factibles del sistema de ecuaciones. En la prxima seccin aprenderemos que es posible ahorrar an mas trabajo computacional ya que el mtodo simplex examina solo algunas de las soluciones bsicas factibles.

You might also like