PROGRAMACION LINEAL METODO SIMPLEX

52,920 views

Published on

Aqui se ve cada uno de los puntos para poder aplicar de forma correcta el método simplex, además trae ejemplos de esto.

Published in: Technology
2 Comments
13 Likes
Statistics
Notes
No Downloads
Views
Total views
52,920
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
1,138
Comments
2
Likes
13
Embeds 0
No embeds

No notes for slide

PROGRAMACION LINEAL METODO SIMPLEX

  1. 1. UNIDAD 3"PROGRAMACIÓN LINEAL MÉTODO SIMPLEX"OBJETIVO:EL ALUMNO APLICARÁ ELMÉTODO SIMPLEX PARARESOLVER PROBLEMAS EN
  2. 2. TODO TIPO DE INDUSTRIASALIMENTARIAS PROGRAMACION LINEAL MÉTODO SIMPLEXLos problemas reales de programación lineal generalmente tienen variables de decisión ymuchas restricciones. Tales problemas no pueden ser resueltos gráficamente. Se usanalgoritmos tales como el simples. El método simplex es un procedimiento iterativo queprogresivamente permite obtener una solución óptima para los problemas deprogramación lineal. Existen numerosos programas tanto para computadoras centralescomo para personales. Aunque el método simples es especialmente útil en problemas degran escala (resueltos con una computadora), en seguida se practicará en el caso delmismo problema que fue resuelto gráficamente en el ejemplo sobre la empresa química“Chemical”.Procedimiento general del simplex 1. Establézcase la tabla inicial de simples. Formular la función objetivo y las restricciones e introducir las variables de decisión, variable en la solución, valor en solución (LD), C (contribución de la variable), Z (costo de introducir la variable), C – Z (contribución neta de la variable). 2. Selecciónese la columna pivote. Ésta es la columna con el número positivo más grande en el renglón inferior (C - Z). Esta se convierte en la nueva variable de la solución. 3. Selecciónese el renglón pivote. Éste es el renglón con la razón más pequeña del valor LD dividido por el valor de la columna pivote. Úsense sólo números positivos. Esto identifica la variable que deja la solución. 4. Enciérrese en un círculo el elemento pivote. Ésta es la intersección del renglón y la columna pivotes. 5. Conviértase al elemento pivote en un 1. Hágase esto dividiendo cada valor del renglón pivote entre el valor pivote. Métase este renglón en una tabla nueva. 6. Genérense los demás renglones de la nueva tabla con ceros en la columna pivote. Esto se hace multiplicando el nuevo renglón (del paso 5) por el negativo del elemento en la columna pivote. El resultado será sumado al antiguo renglón. Introdúzcase este renglón revisado en la nueva tabla, y continúese este procedimiento en cada renglón de la sección central de la tabla. 7. Prueba de optimización. Calcúlense los valores de Z y C – Z. Los valores de Z de cada columna son (elementos de la columna) ( C ). Si todos los valores de C – Z son ≤ 0, la solución es óptima. Léanse los valores de las variables en la solución de la columna de LD y el valor de la función objetivo del renglón de Z en la columna de LD. Si la solución no es óptima, regrese al paso 2.
  3. 3. 3.1 TEORIA Y FUNDAMENTOS DEL MÉTODO SIMPLEX Este método busca la solución, en cada paso, de forma mejorada hasta que no pueda seguirmejorando dicha solución. Al comienzo el vértice principal es un vértice cualquiera, hasta queva mejorando, comparándolo con el vértice anterior, en los pasos de la ecuación.El método Simplex se basa en la siguiente propiedad: si la función objetivo, f, no toma su valormáximo en el vértice A, entonces hay una arista que parte de A, a lo largo de la cual f aumenta.Deberá tenerse en cuenta que este método sólo trabaja para restricciones que tengan un tipode desigualdad "≤" y coeficientes independientes mayores o iguales a 0, y habrá queestandarizar las mismas para el algoritmo. En caso de que después de éste proceso,aparezcan (o no varíen) restricciones del tipo "≥" o "=" habrá que emplear otros métodos,siendo el más común el método de las Dos Fases. Se considera el programa lineal en su forma canónica Máx Z = cX Sujeto a Donde A es de orden m por n; cX son vectores renglón y columna respectivamente con n componentes y b es un vector columna con m componentes. Se denotan a las columnas de A por a1,a2,...,an con m < n. Se considera a la matriz A partida en dos matrices, una B con m vectores linealmente independientes y otra n con n-m vectores linealmente dependientes: Am,n = (Bm,m Nm,n-m) La matriz B se le llamará la base y cualquier vector aj en A que no está en B, puede escribirse como una combinación de los vectores de b. Es decir dado Este puede escribirse como donde i=1,...,m. Se hace
  4. 4. Por lo que y como B tiene inversa B-1, Yj = B-1 aj Considerando las restricciones originales del programa lineal AX = bSe tiene que (B|N) (XB/XN) = bdondeEntonces desarrollando se tiene BXB+NXN = bSi se hace uso de la definición de solución básica factible se tiene queY la desarrollada anteriormente se convierte en Que es una solución básica de . El vector se le denomina vector básico ya , vector no básico. Si se parte el vector de costos o precios unitarios c enSe tiene que la función objetivo puede escribirse
  5. 5. porque 3.1.1 ALGEBRA DEL MÉTODO SIMPLEXPaso 1 Convertir el LP a suma forma estándar.Paso 2 Encontrar una solución básica factible. Si todas las restricciones son de tipo =<sepueden usar las variables de holgura si para cada la i.Paso 3 Si todas las variables no básicas tienen un coeficiente no negativo en la 0, la bfsactuales optima. Si hay variables en la 0 con coeficientes negativos, se debe escoger la queacompañe al coeficiente más negativo en la 0 para entrar a la base. Esta variable se denominala variable entrante.Paso 4 Emplear el pivoteo para hacer que la variable entrante ingrese a la base en la querestringido su valor. Una vez obtenida la base, volver al paso 3, empleando la forma canonícaactual.Solución factibleUna solución basal de (2.3) en el cual todas las variables son no negativas es unaSolución basal factible o bfs. Los siguientes dos teoremas explican la importancia de conceptode solución basal factible en LP.Teorema 1 La región factible para cualquier problema de programación lineal es un conjuntoconvexo. Además, si un LP tiene solución óptima, el óptimo debe ser un punto extremo de laregión factible. La justificación del Teorema 1 fue discutida intuitivamente cuando se estudio laresolución grafica de LP de dos variables, además en dos variables también se vio que el¶optimo corresponde un punto extremo.Teorema 2 Para cualquier LP, existe un único punto extremo de la región factiblecorrespondiente a cada solución basal factible. Además, existe a los menos una bfscorrespondiente a cada punto extremo de la región factible.Solución básica factibleSiempre se debe incorporar una variable entrante en la que controla su valor máximo. En elejemplo, para hacer que x1 sea la variable basal en la 3 se debe emplear operaciones laselementales para conseguir que x1 tenga coeficiente 1 en dicha la y 0 en las otras las. Elprocedimiento se denomina pivoteo en la 3. El resultado es que x1 reemplace a s3 comovariable básica de la 3. Los pasos a seguir son los siguientes:Paso 1 Se crea un coeficiente 1 para x1 en la 3 multiplicando la completa por ½. El resultantede la operación es:x1 + 0;75x2 + 0;25x3 + 0;5s3 = 4Paso 2 Se crea un coeficiente 0 para la variables x1 en la 0. Para ello basta multiplicar por 60(3.12) y sumarla a la 0 actual:z + 15x2 ¡ 5x3 + 30s3 = 240Paso 3 Para fabricar un coeficiente 0 para la variables x1 en la 1 se multiplica por ¡8 (3.12) y sesuma a la 1 actual:¡x3 + s1 ¡ 4s3 = 16
  6. 6. Paso 4 Creamos un coeficiente 0 para la variables x1 en la ¯la 2 multiplicando por ¡4 (3.12) ysumándosela a la ¯la 2 actual:¡x2 + 0;5x3 + s2 ¡ 2s3 = 4Debido a que en la 4 no aparece la variable x1, no es necesario aplicar operaciones las paraeliminar x1 de la. Luego, la 4 queda igual que antes:x2 + s4 = 5Efectuando todas las medicaciones descritas se completa el Cuadro 3.3.Las variables basales y no basales en este caso definen los siguientes conjuntos:BV = fz; s1; s2; x1; s4g NBV = fs3; x2; x3gVariable entrante:Se puede comenzar a desarrollar con cualquier variable solo que según la que tome serealizaran más o menos iteraciones. Se recomienda usar las variables básicas, ya que estasserán la base en la solución en estos métodos.Variable saliente Igualmente se puede comenzar con cualquiera de ellas, aunque se puede dar el caso corrido de caer en un ciclo repetitivo. Para que no ocurran estos casos de repetición no se tomaran en cuenta las variables básicas haciendo que siempre estén en la base. En caso de igualdad de las variables se, en el segundo método, se tomara las variables artificiales. 3.1.2 VARIABLES BÁSICAS, NO BÁSICAS E INDICADORES OBTENCIÓN DE UNA SOLUCIÓN BÁSICA FACTIBLE. Recuérdese que el objetivo general del método símplex es obtener una sucesión de soluciones básicas factibles mejoradas hasta alcanzar la solución optima. La solución básica que resulta es la solución de m ecuaciones X [A , I] = b, XS X en las que n variables no básicas del conjunto de (n + m) elementos de XS se igualan a cero. Cuando se eliminan estas n variables igualadas a cero queda un conjunto de m ecuaciones con m incógnitas ( las variables básicas). Este sistema de ecuaciones se puede denotar por B XB = b, donde el vector de variables básicas
  7. 7. XB1 XB 2 XB =  XBm XSe obtiene al eliminar las variables no básicas de y la matriz básica XS B11 B12  B1 N B 21 B 22  B2N B=    BM 1 BM 2  BMNse obtiene al eliminar las columnas correspondientes a los coeficientes de las variables nobásicas de [A , I]. Para resolver B XB = b , ambos lados se multiplicaran por B-1: B-1 B XB = B-1 bComo B-1 B = 1, la solución deseada para las variables básicas es XB = B-1 b. Sea CB elvector obtenido al eliminar los coeficientes de las variables no básicas de [ C , 0 ] y alreordenar los elementos para que coincidan con los de XB , entonces el valor de la funciónobjetivo para esta solución básica es. Z = CB XB = CB B-1 bEjemplo Wyndor Glass.
  8. 8. 1 0 1 0 0 4C= 3 5 , A I = 0 2 0 1 0 , b= 12 3 2 0 0 1 18 X3 X1X= , XS = X4 X2 X5Iteración 0 X3 1 0 0XB = X4 , B= 0 1 0 = B-1, así X5 0 0 1 X3 1 0 0 4 4 X4 = 0 1 0 12 = 12 X5 0 0 1 18 18 4CB = 0 0 0 así Z = 0 0 0 12 =0 18Iteración 1 X3 1 0 0 1 0 0 1XB = X2 , B= 0 2 0 , B-1 = 0 0 2 X5 0 2 1 0 1 1
  9. 9. X3 1 0 0 4 4 1Así X2 = 0 0 12 = 6 2 X5 0 1 1 18 6 4CB = 0 5 0 así Z = 0 5 0 6 = 30 6Iteración 2 1 1 X3 1 0 0 1 3 3 1XB = X2 , B= 0 2 0 , B-1 = 0 2 0 1 1 X1 0 2 3 0 3 3 1 1 X3 1 3 3 4 2 1Así X2 = 0 2 0 12 = 6 1 1 X1 0 3 3 18 2 2CB = 0 5 3 así Z = 0 5 3 6 = 36 2FORMA MATRICIAL DEL CONJUNTO DE ECUACIONES ACTUALES Para el conjunto original de ecuaciones, la forma matricial es Z 1 c 0 0 X = 0 A I b XS
  10. 10. Después de cualquier iteración, XB = B-1 b y Z = CB B-1 b, por lo que el lado derecho delas ecuaciones se ha convertido en 1 Z 1 C BB 0 CBB b 1 = 1 = XB 0 B b B b 1 Entonces, las operaciones algebraicas en ambos lados del conjunto de ecuacionesoriginal resultaron equivalentes al premultiplicarlos por esta misma matriz. Como la formamatricial que se busca 1 CBB 1 1 c 0 1 CBB 1 A c CBB 1 = 0 B 1 0 A I 0 B 1A B1para el conjunto de ecuaciones después de cualquier iteración es Z 1 1 CBB 1 A c CBB 1 CBB b X = 0 B 1A B1 1 B b XSTabla inicial y final del símplex en forma matricial Variable Ec. Coeficiente de Lado Iteración Variables Variable de básica núm. Z Derecho original holgura Z 0 1 -C 0 0 0 XB 1-m 0 A I b
  11. 11. Z 0 1 CBB-1 A -C CBB-1 CBB-1bCualquiera XB 1-m 0 B-1 A B-1 B-1b 3.1.3 MAXIMIZACIÓN Y MinimizaciónEJEMPLO DE MAXIMIZACIÓN UTILIZANDO EL MÉTODO SIMPLEXContinuando con el problema anterior los pasos para resolver el problema por el métodosimplex son:1. Expresar el problema en forma estándarMax 40F + 30S + S1 + S2 + S30.4F +0.5S + S1 = 200.2S + S2 = 50.6F +0.3S +S3 = 21F,S,S1,S2,S3 >= 02. Obtener el renglón z que consiste en convertir al función objetivo en valores negativos.Max z = 40F+30S+S1+S2+S3z = -40F-30S = O3. Resumir la forma estándar en una tabla simplex4. Se encuentran las intersecciones de la primera variable (la más negativa) paradeterminar el renglón pivote.En este caso se toma la columna donde se encuentra el -40 y cada uno de los valores dela solución se divide dentro de los valores de dicha columna, escogiendo el menor valor ytoda esa fila se convertirá en la fila pivote como se puede observar en la siguiente tabla:
  12. 12. 5. Se hacen los cálculos correspondientesa. La nueva fila pivote es la S3 el objetivo es convertir el valor de 0.6 en 1 para lo cual sedivide toda la fila dentro de 0.6 y se coloca en la nueva tabla.b. El resto de valores que se encuentran arriba o abajo de 0.6 deben convertirse en 0.Para este caso se desea convertir el 0.4 en 0 por lo cual se convierte el 0.4 en negativo semultiplica por el valor correspondiente en la nueva fila pivote que es 1 y se le suma elvalor de esa posición en la tabla antigua que en este caso es 0.4 en resumen (-0.4*1+0.4= 0) y asi sucesivamente con cada una de las filas:6. Como no se tienen todavía las variables de z en positivo, entonces hay que repetir lospasos 4 y 5 hasta que todos los valores de z sean positivos:Como se puede observar en la tabla anterior todos los valores de z son positivos, lo cualquiere decir se ha llegado a encontrar la solución óptima del problema que es producir 20toneladas de aditivo para combustible y 25 toneladas de base para solvente para obteneruna ganancia máxima de $ 1,600*.* Si observa se obtuvieron los mismos resultados que el método gráfico y algebraicoanteriormente descritosEJEMPLO DE UN PROBLEMA DE MINIMIZACIÓNConsideremos un modelo de Programación Lineal en su forma estandar, quedenotaremos en lo que sigue por:Min c1x1 + c2x2 + … + cnxnsa a11x1 + a12x2 + … + a1nxn = b1a21x1 + a22x2 + … + a2nxn = b2………am1x1 + am2x2 + … + amnxn = bmxi >= 0, i = 1, 2, …, n y m <= n
  13. 13. Matricialmente escrito como:Min cTxsa Ax = bx >= 0No existe pérdida de generalidad en asumir que un modelo de PL viene dado en su formaestándar. 3.1.4 FILAS Y COLUMNAS PIVOTANTESEncontrar la variable de decisión que entra en la base y la variable de holgura quesale de la base A. Para escoger la variable de decisión que entra en la base, nos fijamos en la última fila, la de los coeficientes de la función objetivo y escogemos la variable con el coeficiente negativo mayor (en valor absoluto). En nuestro caso, la variable x de coeficiente - 3. Si existiesen dos o más coeficientes iguales que cumplan la condición anterior, entonces se elige uno cualquiera de ellos. Si en la última fila no existiese ningún coeficiente negativo, significa que se ha alcanzado la solución óptima. Por tanto, lo que va a determinar el final del proceso de aplicación del método del simplex, es que en la última fila no haya elementos negativos. La columna de la variable que entra en la base se llama columna pivote (En color azulado). B. Para encontrar la variable de holgura que tiene que salir de la base, se divide cada término de la última columna (valores solución) por el término correspondiente de la columna pivote, siempre que estos últimos sean mayores que cero. En nuestro caso: 18/2 [=9] , 42/2 [=21] y 24/3 [=8] Si hubiese algún elemento menor o igual que cero no se hace dicho cociente. En el caso de que todos los elementos fuesen menores o iguales a cero, entonces tendríamos una solución no acotada y no se puede seguir. El término de la columna pivote que en la división anterior dé lugar al menor cociente positivo, el 3, ya 8 es el menor, indica la fila de la variable de holgura que sale de la base, d. Esta fila se llama fila pivote (En color azulado).
  14. 14. Si al calcular los cocientes, dos o más son iguales, indica que cualquiera de las variables correspondientes pueden salir de la base. C. En la intersección de la fila pivote y columna pivote tenemos el elemento pivote operacional, 3.2 SOLUCIÓN DE PROBLEMAS POR EL MÉTODO SIMPLEXEn la solución gráfica observamos que la solución óptima está asociada siempre con unpunto extremo del espacio de soluciones. El método simplex está basadofundamentalmente en este concepto.Careciendo de la ventaja visual asociada con la representación gráfica del espacio desoluciones, el método simplex emplea un proceso interativo que principia en un puntoextremo factible, normalmente el origen, y se desplaza sistemáticamente de un puntoextremo factible a otro, hasta que se llega por último al punto óptimo.Existen reglas que rigen la selección del siguiente punto extremo del método simplex:1. El siguiente punto extremo debe ser adyacente al actual.2. La solución no puede regresar nunca a un punto extremo considerado con laanterioridad.El algoritmo simplex da inicio en el origen, que suele llamarse solución inicial. Después sedesplaza a un punto extremo adyacente. La elección específica de uno a otro puntodepende de los coeficientes de la función objetivo hasta encontrar el punto óptimo.Al aplicar la condición de optimidad a la tabla inicial seleccionamos a Xi como la variableque entra. En este punto la variable que sale debe ser una de las variables artificiales.Los pasos del algoritmo simplex son ( 10 ) :1. Determinar una solución básica factible inicial.2. Prueba de optimidad: determinar si la solución básica factible inicial es óptima y sólo sitodos los coeficientes de la ecuación son no negativos ( >= 0 ). Si es así, el procesotermina; de otra manera se lleva a cabo otra interacción para obtener la nueva soluciónbásica factible inicial.3. Condición de factibilidad.- Para todos los problemas de maximización y minimización,variable que sale es la variable básica que tiene la razón más pequeña (positiva). Unacoincidencia se anula arbitrariamente.4. Seleccionar las variables de holgura como las variables básicas de inicio.5. Selecciona una variable que entra de entre las variables no básicas actuales que,cuando se incrementan arriba de cero, pueden mejorar el valor de la función objetivo. Sino existe la solución básica es la óptima, si existe pasar al paso siguiente.6. Realizar el paso iterativo.a) Se determina la variable básica entrante mediante la elección de la variable con elcoeficiente negativo que tiene el valor mayor valor absoluto en la ecuación. Se enmarca lacolumna correspondiente a este coeficiente y se le da el nombre de columna pivote.b) Se determina la variable básica que sale; para esta, se toma cada coeficiente positivo(>0) de la columna enmarcada, se divide el lado derecho de cada renglón entre estos
  15. 15. coeficientes, se identifica la ecuación con el menor cociente y se selecciona la variablebásica para esta ecuación.c) Se determina la nueva solución básica factible construyendo una nueva tabla en laforma apropiada de eliminación de Gauss, abajo de la que se tiene. Para cambiar elcoeficiente de la nueva variable básica en el renglón pivote a 1, se divide todo el renglónentre el número pivote, entoncesrenglón pivote nuevo = renglón pivote antiguo número pivotepara completar la primera iteración es necesario seguir usando la eliminación de Gausspara obtener coeficientes de 0 para la nueva variable básica Xj en los otros renglones,para realizar este cambio se utiliza la siguiente fórmula:renglón nuevo = renglón antiguo - ( coeficiente de la columna pivote X renglón pivotenuevo)cuando el coeficiente es negativo se utiliza la fórmula:renglón nuevo = renglón antiguo + (coeficiente de la columna pivote X renglón pivotenuevo) TABLA SIMPLEXcomo se capturaría la solución básica factible inicial en el siguiente ejemplo:sea:Maximizar Z = 2X1+4X2sujeto a:2X1+ X2<= 230 X1+ 2X2<= 250 X2<= 120todas las X1,X2>=0 BASE Z X1 X2 S1 S2 S3 SOLUCIÓN RAZÓN Z 0 -2 -4 0 0 0 0 0 S1 0 2 1 1 0 0 230 230/1 S2 0 1 2 0 1 0 250 250/2 S3 0 0 1 0 0 1 120 120/1Seleccione la variable que entra y la variable que sale de la base:Entra X2 y sale S3, se desarrolla la nueva tabla solución y se continua el proceso iterativohasta encontrar la solución optima si es que está existe.
  16. 16. Tabla Optima: BASE Z X1 X2 S1 S2 S3 SOLUCIÓN RAZÓN Z 0 0 0 0 2 0 500 S1 0 0 0 1 -2 3 90 X1 0 1 0 0 1 -2 10 X2 0 0 1 0 0 1 120Solución: Z = $500fabricandoX1=10X2=120Sobrante deS1 = 90Tipo de solución: Optima Múltiple Solución de problemas en donde la solución continua no sea aplicableInterpretación de los resultados: Veamos la salida de un modelo que involucra laplaneación de la producción, en donde se desean construir mesas y sillas el recursodisponible es 30 m2 de madera por semana, 48 horas por semana; la demanda de lassillas es de 5 unidades y la de mesas de 10 unidades, la utilidad que se obtiene por lasmesas es de $10 y por las sillas de $8, ademas para construir la mesa se ocupa losiguiente: 4.5 m2 de madera por unidad, 6 horas por unidad. Para la silla se ocupan: 1.5m2 de madera por unidad y 3 horas por cada unidad fabricada.Con esta información se desarrolla el modelo siguiente:Max Z = 10X1+8X2s.a.4.5X1+1.5X2 <= 306.0X1+3.0X2 <= 48toda X1,X2 >=0El reporte final de este modelo es el siguiente (por WinQsb)Decision Solution Unit Cost or Total Reduced Basis Allowable AllowableVariable Value Profit cj Contribution Cost Status Min cj Max cj at X1 0 10.0000 0 -6.0000 -M 16.0000 bound
  17. 17. X2 16.0000 8.0000 128.0000 0 basic 5.0000 M Objetive Function (Max) = 128.0000 Left Rigth Hand Slack or Shadow Allowable AllowableConstraint Hand Direction Side Surplas Price Min. RHS Max. RHS Side C1 24.0000 <= 30.0000 6.0000 0 24.0000 M C2 48.0000 <= 48.0000 0 2.6667 0 60.0000INTERPRETACIÓN DE LA SALIDA: Información de la Función Objetivo:Decision Variable (Variable de Decisión): Son las variables que se han definido en laformulación del problema en este caso representan al producto X1 = mesas y X2= sillas.Solution Value (Valor de la solución): Cantidad de mesas y sillas a fabricar, el problema seresuelve y nos indica que para obtener la mejor solución en términos de la utilidad, senecesitan fabricar 16 sillas y no fabricar mesas.Unit Cost or Profit (costo por unidad, Utilidad por unidad): Cantidad de pesos que vamos aganar por cada mesa y por cada silla ($10 y $8 respectivamente.Total Contribution (contribución total): Es la cantidad en pesos que resulta al multiplicar lautilidad de cada producto por la cantidad que se va a fabricar, ejemplo al fabricar 16 sillasy multiplicarlo por $/silla 8, la contribución es de $128.0000, así al sumar la contribuciónpor concepto de las mesas nos arroja una aportación de $0.0000, esto resulta de hacer laoperación de ($/mesa10) (0mesas)= $0.0000, finalmente la suma de 128.0000+0.0000 =$128.0000, esto es lo que se conoce como el valor de Objetive Function Max.Reduced Cost (Costo reducido): esto nos indica el dinero que hemos dejado de ganar porcada unidad no fabricada. en este caso debemos de aumentar a mas de $6.0000 lautilidad de la mesa para que sea atractiva la fabricación de mesas.Basis Status (estado de la base): Indica si la variable es básica o no básica, en esteejemplo la variable X1 (mesas) resulta ser no básica, esto es que no forma parte de lasolución óptima, la variable X2 (sillas) es una variable básica, ya que forma parte de lasolución.Allowed Min cj (rango mínimo del cj): esta es la mínima utilidad que puedo obtener sin quela base actual cambie. (-M)Allowed Max cj (rango mínimo del cj): esta es la máxima utilidad que puedo obtener sinque la base actual cambie. (16.0000)los valores que aparecen son para el producto Mesa.
  18. 18. Interpretación de las Restricciones:Constraint (Restricción): Son las restricciones que forman parte del problema, se tienendos restricciones (C1 y C2) la restricción de la madera y la de horas hombre.Left hand side (valor al lado izquierdo): esto nos indica el consumo de recurso, de 30.000m2 de madera se consumieron 24.000 m2.Direction (dirección): es la dirección de la restricción (<=,>= o =)Rigth hand side (valor lado derecho): es el recurso disponible actualmente 30 m2Slack or Surplas (holguras): nos indican un faltante o bien un sobranteShadow Price (precio sombra): nos indica la solución Dual, esto es que el 2.6667 indicaque cada hra-hombre se debe ofrecer como mínimo en $/hr 2.6667.Allowed Min RHS (rango mínimo del bj): esta es la mínima cantidad de recurso que sedebe de mantener sin que la base actual cambie. (0 hrs-hombre)Allowed Max RHS (rango mínimo del bj): esta es la máxima cantidad de recurso que sedebe de mantener sin que la base actual cambie (60.0000 hrs-hombre)3.2.1 Restricciones ESTÁNDAR: VARIABLES DE HOLGURAPara la aplicación del algoritmo Símplex se transforma el modelode programación original, formado por restricciones funcionales de desigualdad, en unmodelo de forma estándar, integrado por restricciones de igualdad equivalentes.Esta conversión se logra con la introducción de variables de holguras y/o superávit.Variables de holgura. Aplica para las restricciones del tipo (<=), donde el lado derechode la desigualdad representa el limite sobre la disponibilidad de un recurso y el ladoizquierdo representa la utilización de ese recurso limitado que hacen las variables delmodelo. Esto quiere decir que una holgura representa la cantidad disponible del recursoque excede a la utilización que se le da. En la conversión de este tipo de desigualdad seañade una variable de ajuste (Xi o Hi) para convertirla en igualdad. Por ejemplo, tenemosla siguiente restricción: 3X1 + 2X2 <= 6, su equivalente seria, 3X1 + 2X2 + X3 = 6. 3.2.3. RESTRICCIONES NO ESTÁNDAR: VARIABLES ARTIFICIALES Y DE SUPERÁVIT
  19. 19. Variables artificialesEn los problemas anteriores del método simplex hemos utilizado las variables de holguracomo una solución inicial factible. Sin embargo, si la restricción original es una ecuación(“=”) o es del tipo ” , ya “ no tenemos una solución factible inicial preparada.Por lo que es necesario generar una solución inicial. La idea de utilizar VariablesArtificiales es muy simple. Es necesario sumar una variable no negativa a todas laecuaciones que no tengan variables básicas iniciales. Las variables agregadasdesempeñarán la misma función que una variable de holgura. Sin embargo, como estasvariables no tienen un significado físico desde el punto de vista del problema original ( deaquí el nombre de “artificial”), el procedimiento será valido sólo si hacemos que estasvariables sean cero cuando se llegue a la tabla óptima.Variables de superávit.Aplica para las restricciones del tipo (>=), generalmente determinan losrequerimientos mínimos de especificaciones. Es decir, un superávit representa el excesominimo del lado izquierdo sobre el requerimiento mínimo de la restricción. Enla conversión de este tipo de desigualdad se resta una variable de ajuste (Xi o Si) paraconvertirla en igualdad. Por ejemplo, tenemos la siguiente restricción: X1 + 3X2 >= 5, suequivalente seria, X1 + 3X2 - X3 = 5.La solución del algoritmo Símplex se puede realizar de forma algebraica o de formatabular. Para los fines de este apartado se explicará el desarrollo del algoritmo en suforma tabular. Antes de iniciar, se deben plantear algunos conceptos importantes:variables básicas, variables no básicas, solución básica factible, variable de entrada,variable de salida, iteración, condición de optimalidad (criterio de entrada) y condición defactibilidad (criterio de salida).La forma estándar de un problema de programación lineal se compone de m ecuacioneslineales simultaneas en n incógnitas o variables, donde m es menor que n (m < n). Esteconjunto de variables se puede segmentar en dos grupos: (1) m - n variables, a las cualesse le asigna un valor cero y (2) las restantes m variables, cuyos valores se determinanresolviendo las m ecuaciones resultantes. Si la m ecuaciones conducen auna única solución, estas variables se denominan variables básicas y las n - m restantesvariables se les llaman variables no básicas.En el inicio de un algoritmo Símplex, se consideran todas las variables de holguras yficticias adicionadas en la forma estándar, con valores cero, procedimiento que sedenomina solución básica factible inicial. Se denomina una solución básica factible si lasm variables básicas son no negativas (>= 0). Si cualquiera de estas m variables es igual acero se considera un solución BF degenerada. Después se trata de encontrarotra solución básica factible que mejorará el valor del objetivo, proceso denominado
  20. 20. iteraciones. Para que una variable cero actual se convierta en positiva, debe eliminarseuna de las variables basicas actuales, es decir, volver esta última no básica a nivel cero.Esto introduce dos conceptos, la variable cero seleccionada es la variable de entrada y lavariable básica eliminada es la variable de salida. 3.2.3 MÉTODOS DE DOBLE FASE Y DE PENALIZACIÓNEn esencia es igual al método de penalización, en que primero se introducen las variablesartificiales al problema originalSujeto aQuedando comoSujeto aDonde W es el vector de variables artificiales con componentes . En laprimera fase se resuelve el problemaSujeto aLa solución óptima de esta fase debe ser . Si al obtener las condiciones deoptimalidad en esta fase, , el problema original no tiene solución.Supóngase que la primera fase es óptima, y que la base asociada a la tabla es B.En la segunda fase se aplica el método Simplex para resolver el problemaMin cXSujeto a
  21. 21. La solución óptima a esta segunda fase, es la solución óptima al problema original. Esimportante observar que al empezar la segunda fase, todos los vectores de la baseóptima correspondientes a la primera fase permanezcan unitarios. Empléenseoperaciones matriciales elementales para restituir todos aquellos vectores que deben serunitarios.3.2.4 ANÁLISIS DE SENSIBILIDAD: MODIFICACIÓN DEL RHS Y DE LOS COEFICIENTES DEL A FUNCIÓN1. Revisión del modelo: se hacen los cambios deseados en el modelo que se va ainvestigar.2. Revisión de la tabla simplex final: se emplea la idea fundamental para determinar loscambios que resultan en la tabla símplex final.3. Conversión a la forma apropiada: se convierte esta tabla en la forma apropiada paraidentificar y evaluar la solución básica actual aplicando (según sea necesario) eliminaciónde Gauss.4. Prueba de factibilidad: se prueba la factibilidad de esta solución verificando que todaslas variables básicas sigan teniendo valores no negativos en la columna del lado derecho.5. Prueba de optimalidad: se verifica si esta solución es óptima (si es factible),comprobando que todos los coeficientes de las variables no básicas en el renglón 0 sigansiendo no negativos.6. Reoptimización: si esta solución no pasa cualquiera de las pruebas, se puede obtener(si se desea) la nueva solución óptima partiendo de la tabla actual como tabla símplexinicial (haciendo las conversiones necesarias) para el método símplex primal o el símplexdual.La rutina interactiva llamada Sensitivity Analysis (análisis de sensibilidad) en el ORCourseware le permite practicar la aplicación de este procedimiento. Además, seproporcionará una demostración (bajo el mismo nombre) con otro ejemplo.A continuación se presentará e la aplicación de este procedimiento a cada una de lascategorías más importantes de cambios al modelo original. Esto incluye, en parte, laextensión sobre el ejemplo que se introdujo en este trabajo para investigar cambios en elmodelo de la Wyndor Glass Co. De hecho, se comenzará por verificar individualmentecada uno de los cambios anteriores. Al mismo tiempo, se integrarán al análisis desensibilidad algunas de las aplicaciones de la teoría de dualidad.El análisis de sensibilidad o postoptimal para los modelos de Programación Lineal, tienepor objetivo identificar el impacto que resulta en los resultados del problema originalluego de determinadas variaciones en los parámetros, variables o restricciones delmodelo, sin que esto pase por resolver el problema nuevamente.
  22. 22. Es decir, ya sea si resolvemos nuestro modelo gráficamente o utilizando el MétodoSimplex, lo que se busca es que estas variaciones o sensibilidad hagan uso de la solucióny valor óptimo actual, sin tener la necesidad de resolver para cada variación un nuevoproblema. En especial nos concentraremos en el análisis de sensibilidad o postoptimalque hace uso de la tabla final del Método Simplex.TEORÍASiguiendo la notación utilizada en la sección dedicada al Método Simplex en nuestrositio, éste opera para modelos de Programación Lineal en un formato estándar.Min cTxs.a Ax = b x >= 0Donde la tabla final del Método mantiene la siguiente estructura: Donde: I: Matriz Identidad 0: Costos reducidos asociados a las variables básicas B: Matriz de variables básicas D: Matriz de variables no básicas b: Lado derecho Cb: Coeficientes en la función objetivo asociados a las variables básicas Cd: Coeficientes en la función objetivo asociados a las variables no básicas1. Cambio en el "lado derecho" de las restricciones: Lo que se busca identificar si lasactuales variables básicas se mantienen luego de la modificación de uno o másparámetros asociados al "lado derecho" del modelo. Si calculamos: y se cumple , Las mismas variables básicas lo son también de lanueva solución óptima, calculada con el nuevo . Si lo anterior no se cumple, se puedeaplicar el Método Simplex Dual.EJEMPLO: Sin resolver nuevamente el problema, se desea saber si las actualesvariables básicas óptimas del problema también lo son del mismo problema, donde loslados derechos corresponde al vector b=(20,30). (Observación: X4 y X5 son variables deholgura de la restricción 1 y 2 respectivamente)Max 2x1 + 7x2 - 3x3sa: x1 + 3x2 + 4x3 <= 30
  23. 23. x1 + 4x2 - x3 <= 10 x1,x2,x3 >= 0 X1 X2 X3 X4 X5 0 -1 5 1 -1 20 1 4 -1 0 1 10 0 1 1 0 2 20Para analizar este escenario debemos calcular el vector de variables básicas y verificar sitodos sus componentes son positivos definidos. Nótese que para esto necesitamoslamatriz B inversa, la cual fácilmente podemos rescatar identificando los parametrosasociados a X4 y X5 (variables de holgura de la restricción 1 y 2 respectivamente) en latabla final del Método Simplex:Luego, dado que al menos uno de los coeficientes del nuevo lado derecho tiene un valornegativo, cambia la actual base óptima. Cabe destacar que ante esta situación no esnecesario resolver el nuevo escenario partiendo de cero, sino lo que se debe hacer esutilizar la tabla final del simplex del escenario base, actualizando el lado derecho y valorde la función objetivo. X1 X2 X3 X4 X5 0 -1 5 1 -1 -10 1 4 -1 0 1 30 0 1 1 0 2 60Posteriormente, se continua iterando haciendo uso del Método Simplex Dual. (Verreferencia a la derecha).2. Inclusión de una nueva variable: Debemos evaluar si la nueva variable es un aportesignificativo a los resultados del modelo original. Luego, para decir si la actual soluciónbásica es óptima para el nuevo problema, calculamos el costo reducido de la nuevavariable como: donde k es el índice de la nueva variable y Ak su respectivacolumna en la matriz de coeficientes. Si se cumple que rk>=0 se conserva la actualsolución óptima. En caso contrario, se puede seguir con el Simplex agregando a la tablauna nueva columna con entradas B-1Ak y rk y tomando como variable entrante a lanueva base la que acabamos de introducir al problema.EJEMPLO: Se desea estudiar la posibilidad de elaborar un nuevo producto con beneficioneto igual a 8 y que requiere 4, 2 y 5 unidades de los recursos asociados a cadarestricción. Sin resolver nuevamente el problema, ¿Conviene elaborar el producto?
  24. 24. Max 9x1 + 12x2sa: 4x1 + 3x2 <= 180 2x1 + 3x2 <= 150 4x1 + 2x2 <= 160 x1,x2 >= 0 X1 X2 X3 X4 X5 1 0 1/2 -1/2 0 15 0 1 -1/3 2/3 0 40 0 0 -4/3 2/3 1 20 0 0 1/2 7/2 0 615Se debe evaluar rk y determinar si este es >=0.En este ejemplo rk=1>=0, por lo cual no conviene la incorporación de esta nueva variableal modelo, es decir, aun cuándo sea incorporada no obtendremos un valor óptimo quesupere el actual V(P)=615. De todas formas mostraremos como se incluye en la tabla finaldel Simplex esta modificación de modo que el lector pueda entender su incorporacióncuando es necesario: X1 X2 X3 X4 X5 XNew 1 0 1/2 -1/2 0 1 15 0 1 -1/3 2/3 0 0 40 0 0 -4/3 2/3 1 1 20 0 0 1/2 7/2 0 1 615Si el costo reducido de esta nueva variable hubiese sido cero, entonces el nuevoescenario tendría infinitas soluciones.3. Cambio en los Coeficientes Función Objetivo: Se busca identificar qué ocurre con laactual solución óptima del escenario base si se cambian uno o varios de los coeficientesque definen la función objetivo. La solución óptima actual también lo será para el nuevoescenario siempre que los nuevos costos reducidos sean mayores o iguales a cero (notar
  25. 25. que también cambia el valor de la función objetivo en la actual solución óptima). Es decirse debe cumplir que:En caso contrario, se aplica el Simplex a partir de la tabla final del modelo original, con losnuevos costos reducidos y nuevo valor de la actual solución básica.EJEMPLO: Sin resolver nuevamente el problema, se desea saber que sucede si semodifica los parámetros de la función objetivo, quedando éstos de la siguiente forma: Z =x1 + 5x2 - 2x3. (X4 y X5 son las variables de holgura de la restricción 1 y 2respectivamente).Max 2x1 + 7x2 - 3x3sa: x1 + 3x2 + 4x3 <= 30 x1 + 4x2 - x3 <= 10 x1,x2,x3 >= 0 X1 X2 X3 X4 X5 0 -1 5 1 -1 20 1 4 -1 0 1 10 0 1 1 0 2 20 Debido a que los cambios en los parámetros de la función objetivo se producen en másde una variable consideraremos la siguiente fórmula:Debido a que al menos uno de los costos reducidos de las variables no básicas se havuelto negativo, entonces cambia la actual solución y valor óptimo del problema. Para
  26. 26. incorporar esta modificación en la tabla final del Método Simplex se actualiza los costosreducidos asociados a las variables no básicas, además del valor óptimo, quedando comosigue: X2 X3 X4 X5 X1 0 -1 5 1 -1 20 1 4 -1 0 1 10 0 -1 1 0 1 104. Inclusión de una nueva restricción: Para saber si la actual solución y valor óptimo semantendrá luego de incorporar una nueva restricción al problema se debe evaluar lasolución actual y verificar si satisface la nueva restricción. En caso afirmativo, la actualsolución también lo será del problema con la nueva restricción, en caso contrario seincorpora la nueva restricción a la tabla final del Simplex del escenario base.EJEMPLO: Sin resolver nuevamente el problema, se desea saber que sucede si seconsidera una nueva restricción de la forma: 3x1 + 2x2 + 3x3 <= 25. (Observación:Considerar mismo modelo y tabla final del ejemplo anterior)Se evalua la solución actual en la restricción: 3*(10) + 2*(0) + 3*(0) <= 25. No cumple. Portanto se incorpora esta nueva restricción como fila a la tabla final del Simplex.Adicionalmente, se agrega X6 como variable de holgura asociada a esta nuevarestricción: X1 X2 X3 X4 X5 X6 0 -1 5 1 -1 0 20 1 4 -1 0 1 0 10 3 2 3 0 0 1 25 0 1 1 0 2 0 20Una alternativa para encontrar el óptimo a través de esta tabla es formar la identidad(debemos hacer cero el parámetro asociado a X1 en la tercera fila) multiplicando la fila 2por -3 y sumando dicho resultado a la fila 3. De esta forma se obtiene: X1 X2 X3 X4 X5 X6 0 -1 5 1 -1 0 20 1 4 -1 0 1 0 10 0 -10 6 0 -3 1 -5 0 1 1 0 2 0 20
  27. 27. APLICACIONES ( EJEMPLOS)EJEMPLO 1 4 -8 1 0 1/10 -1/100 A-1 = 6 8 0 1 -3/40 1/20 1) R1 1/4 R2 4 -8 1 0 A-1 6 8 0 11/4(4) = 11/4(-8) = -2 1 -2 1/4 0 -1 A1/4(4) = 1/4 6 8 0 11/4(0) = 0 2) R2 R2-6 R1 1 -2 1/4 0 A-1 6 8 0 1
  28. 28. -6(4) = -6 R2-6 R1-6(-8) = 12 - 6 12 -3/2 0 R2-6R1 =-6(1/4) = - 3/2 6 8 0 1-6(0) = 0 0 20 -3/2 1 = R2 1 -2 1/4 0A-1 0 20 -2/3 1 3) R1 1/20 R21/20(0) = 01/20(20) = 1 1 -2 1/4 0 -1 A1/20(-3/2) = -3/40 0 1 -3/40 1/201/20(1) = 1/20 R2 = 0 1 -3/40 1/204) R1 -2 R2 R1 1 -2 1/4 0 -1 A 0 1 -3/40 1/202(0) = 02(1) = 22(-3/40) = -3/202(1/20) = 1/10
  29. 29. R2 R11 -2 1/4 00 2 -3/20 1/101 0 -1/10 1/10RESULTADO 4 -8 1 0 1/10 -1/10 A-1 = 6 8 0 1 -3/40 1/20COMPROBACIÓN1/10 = 0.1 X 40 = 4-1/10 = -0.1 X 80 = -83/40 = 0.075 X 80 = 61/20 = 0.05 X 160 = 8 1/10 -1/10 4 -8 2/5 + 3/5 4/5 - 4/5 1 0 = = -3/40 1/20 6 8 3/10 - 3/10 3/5 + 2/5 0 1EJEMPLO 2 8 -12 1 0 1/18 -1/18 -1 A = 10 12 0 1 -5/108 1/27
  30. 30. 1) R1 1/8 R2 8 -12 1 0 A-1 10 12 0 11/8(8) = 11/8(-12) = -3/2 1 -3/2 1/8 0 -1 A1/8(1) = 1/8 10 12 0 11/8(0) = 0 2) R2 R2-10R1 1 -3/2 1/8 0 A-1 10 12 0 1-10(1) = -10 R2-6 R1-10(-3/2) = 15 - 10 15 -5/4 0 R2-10R1 =-10(1/8) = - 5/4 10 12 0 1-10(0) = 0 0 27 -5/4 1 = R2 1 -3/2 1/8 0 -1A 0 27 -5/4 1
  31. 31. 3) R1 1/27 R21/27(0) = 01/27(27) = 1 1 -3/2 1/8 0 -1 A1/27(-5/4) = -5/108 0 1 -5/108 1/271/27(1) = 1/27 R2 = 0 1 -5/108 1/27 4) R1 3/2R2 R1 1 -3/2 1/8 0 -1A 0 1 -5/108 1/273(0) = 03/2(1) = 3/23/2(-5/108) = -5/723/2(1/27) = 1/18 R2 R11 3/2 -5/72 1/180 -3/2 1/8 01 0 -1/18 1/18RESULTADO 8 -12 1 0 1/18 -1/18 A-1 = 10 12 0 1 -5/108 1/27
  32. 32. COMPROBACIÓN1/18 = 0.05555555556 X 144 = 8-1/18 = -0.05555555556 X 216 = -125/108 = 0.0462962963 X 216 = 101/27 = 0.03703703704 X 324 = 12 1/18 -1/18 8 -12 4/9 + 5/9 2/3 - 2/3 1 0 = = -5/108 1/27 10 12 10/27 -10/27 5/9 + 4/9 0 1
  33. 33. MÉTODO SIMPLEX ( APLICACIONES )*INTERNETUna empresa química “Chemical” produce limpiadores para automóviles X y pulidores Y ygana $10 en cada lote de X, y $30 en Y. Ambos productos requieren procesarse en lasmismas máquinas, A y B, pero X requiere cuatro horas en A y ocho en B, mientras que Yrequiere seis horas en A y cuatro en B. Durante la semana entrante las máquinas A y Btienen 12 y 16 horas de capacidad disponible, respectivamente. Suponiendo que existedemanda de ambos productos, cuántos lotes de cada uno deben producirse para alcanzarla unidad óptima Z?.La función objetivo es: Max Z = $10X + $30YLas restricciones son: h maquina A : 4X + 6Y = 12 h máquina B : 8X + 4Y =16 X,Y ≥ 0Formato simplex C 10 30 0 0 Valores de solución Variables de la solución Variables de decisión X Y S1 S2 (LD) 0 S1 4 6 1 0 12 0 S2 8 4 0 1 16 Z 0 0 0 0 0 C-Z 10 30 0 0 0Elementos de la tabla simplex.
  34. 34. La parte central de la tabla simplex consta de los coeficientes de las restricciones de: 4X + 6Y + 1S1 + 0S2 = 12 8X + 4Y + 0S1 + 1S2 =16Nótese que se ha asignado un uno (1) a la variable de holgura asociada con su propiarestricción, y un cero (0) a la otra variable de holguraLa columna de variables en la solución indica cuáles variables están en la solución (eneste caso, sólo las de hoguera) y la columna de valores solución indica las cantidades desolución. Los números vienen del lado derecho LD de las restricciones (en este caso, 12horas de holgura para la máquina A y 16 horas para la B)La C en la esquina superior izquierda encabeza a la vez un renglón y una columna.Especifican la cantidad de contribución a la función objetivo de cada unidad de lasvariables a que se refiere. Esto es, cada unidad de X (limpiador) contribuye con $10 a lasutilidades y cada unidad de Y (pulidor) lo hace con $30. El tiempo de holgura de lamaquina A y B proporciona $0 de contribución tanto de S1 como de S2.El renglón de Z en la tabla muestra el costo de oportunidad, o la cantidad de contribuciónque debe ser introducida o (producida) por unidad (o por unidad extra) de la variable encada columna. Esto se calcula para cada columna multiplicando los elementos de lacolumna por la contribución en la columna C y sumándolos despuésEsto es, el valor de Z para la columna X es (4 x 0) + (8 x 0) = 0.Esto significa que para introducir una unidad de X (limpiador) en la solución, deben darsecuatro horas de tiempo de holgura en la máquina A, con un costo de $0, y ocho horas deholgura en la máquina B, también con un costo de $0.El valor de Z para la columna LD representa la contribución total de las variables en lasolución, debido a que esta solución (inicial) es “producir” 12 horas de holgura en lamáquina A (con $0 de contribución) y 16 horas de holgura en la máquina B con ($0 decontribución), la utilidad total de esta solución inicial es cero. El renglón de Z en lasolución inicial siempre tiene ceros, pero cambia al progresar la solución.Los valores del renglón inferior (C-Z) representan la contribución neta de introducir unaunidad de la columna variable en la solución. En la tabla inicial aparecen simplemente loscoeficientes de la función objetivo seguidos por ceros en las columnas de las variables deholgura. Es decir, se puede incrementar el valor de la función objetivo en un total de $10por cada unidad de X producida y en $30 por cada unidad de Y producida, y debido a que
  35. 35. la holgura no tiene ningún valor deben introducirse X o Y en esta etapa. Produciendo másholgura obviamente no se incrementan las utilidades.Metodología de cálculo La metodología de solución de los problemas de maximización hace necesarioseleccionar una columna y un renglón pivotes y revisar los valores de la tabla hasta queen el renglón inferior sean menores o iguales que cero.- Úsense los pasos del procedimiento simplex – C 10 30 0 0 Valores de solución Variables de Variables de decisión la solución X Y S1 S2 (LD) 0 S1 4 6 1 0 12 0 S2 8 4 0 1 16 Z 0 0 0 0 0 C-Z 10 30 0 0 0 1. Seleccionar una columna y un renglón pivotes a) La columna pivote es la que tiene el número positivo más grande en el renglón inferior C-Z 10 30 0 0 0 En este ejercicio es 30. b) El renglón pivote es el que tiene la razón más pequeña, del renglón pivote 12 16 2 (mínimo) 4 6 4 C 10 30 0 0 Valores de solución Variables de Variables de decisión
  36. 36. la solución X Y S1 S2 (LD) 0 S1 4 6 1 0 12 0 S2 8 4 0 1 16 Z 0 0 0 0 0 C-Z 10 30 0 0 0Por lo tanto el renglón 1 es el renglón pivote.c) El elemento pivote es encerrado en un círculo 6 C 10 30 0 0 Valores de solución Variables de Variables de decisión la solución X Y S1 S2 (LD) 0 S1 4 6 1 0 12 0 S2 8 4 0 1 16 Z 0 0 0 0 0 C-Z 10 30 0 0 02. Divídase cada valor del renglón pivote 1 entre el elemento pivote (6) y colóquenselos valores en una nueva tabla. C 10 30 0 0 Valores de solución Variables de Variables de decisión la solución X Y S1 S2 (LD) 0 Y 2/3 1 1/6 0 2a) Genérense los otros renglones para la siguiente tabla, de tal manera que los elementos de la columna pivote sean iguales a cero.
  37. 37. Se empieza con el renglón S2, el cual tiene 4 en la columna de Y. Se multiplica elnuevo renglón (del paso 2) por el negativo del valor que se desea convertir (-4), yse suma al anterior renglón de S2. Se multiplica el nuevo renglón por -4. elresultado se muestra en la siguiente tabla. X Y S1 S2 (LD)El renglón del paso 2 se -4(2/3) -4(1) -4(1/6) -4(0) -4(2)multiplica por -4Obtener el resultado -8/3 -4 -2/3 0 -8Sumarlo al renglón de S2 8 4 0 1 16Para obtener el nuevo 16/3 0 .2/3 1 8renglónEl renglón obtenido se introduce a la nueva tabla del paso 2. C 10 30 0 0 Valores de solución Variables de Variables de decisión la solución X Y S1 S2 (LD) 30 Y 2/3 1 1/6 0 2 0 S2 16/3 0 .2/3 1 8 ZSi hay más renglones que convertir, debe repetirse este paso en el siguienterenglón. Dado que ahí no hay más, puede procederse a calcular el renglón Z y C-Z.Los valores en el renglón Z son ∑ (elementos de la columna) (C) Elementos delrenglón ZPara X: Z = 2/3(30) + 16/3(0) = 20Para Y: Z = 1(30) + 0(0) = 30
  38. 38. Para S1: Z = 1/6(30) – 2/3(30) = 5Para S2: Z = 0(30) + 1(0) = 0Para LD: 2(30) + 8(0) = 60Después de que se introducen éste y los valores de C-Z en la siguiente matriz, setiene: C 10 30 0 0 Valores de solución Variables de Variables de decisión la solución X Y S1 S2 (LD) 30 Y 2/3 1 1/6 0 2 0 S2 16/3 0 .2/3 1 8 Z 20 30 5 0 60 C-Z -10 0 -5 0Repetir los pasos anteriores hasta que todos los valores del renglón inferior sean ≤0. Dado que todos los valores son ≤ 0, ha sido alcanzada la solución óptima. Lasvariables en la solución son identificadas por las columnas en la parte central de latabla que tienen un 1, y el resto de los valores son cero. Los valores solución sondatos en la columna del lado derecho, como se ve en la siguiente tabla. X Y S1 S2 (LD) - 1 - 0 2 - 0 - 1 8 Z - - - - 60Por tanto,X = no está en la solución
  39. 39. Y = 2 unidades Z = $60Nótese que la variable de holgura asociada con la restricción 2 también tiene un 1 y ceros,lo cual significa que tiene holgura en la solución y que la restricción no se agotó. Entonceshay sólo una variable de decisión (no holgura) en la solución (Y) y una restricción agotada(número 1). Esto concuerda con el teorema fundamental de programación lineal, queestablece que el número de variables de decisión (no holgura) de la solución siempre seráigual a número de restricciones que son agotadas.*SALÓN DE CLASESMAXIMIZAR Z = 3Xe + 2X2 3 2 0SUJETO A. Xe + 2X1 < 6 2 1 8 -2Xe + X1 < 8 1 2 6 SU INVERSA -Xe + 2X1 < 1 -1 1 1 X1 < 2 1 0 2 -Xe > 0, X1 > 0MAXIMIZAR Z = 3Xe + 2X2 3 2 0 0 0 0SUJETO A. Xe + 2X1 + X2 <6 1 2 1 0 0 0 -2Xe + X1 + X3 <8 2 1 0 1 0 0 -Xe + X1 + X4 <1 -1 1 0 0 1 0 X1 + X5 < 2 0 1 0 0 0 1
  40. 40. MAXIMIZAR Z = 3Xe + 2X2 3 2 0 0 0 0 0 SUJETO A. 1) Xe + 2X1 + X2 <6 1 2 1 0 0 0 0 2) -2Xe + X1 + X3 <8 2 1 0 1 0 0 8RESTRICCIONES 3) -Xe + X1 + X4 <1 -1 1 0 0 1 0 1 4) X1 + X5 < 2 0 1 0 0 0 1 2 FORMA TABULAR TABLA SIMPLEX 1 Variables Ecu. Coeficientes de las Variables Lado Básicas Núm. Z Xe X1 X2 X3 X4 X5 Derecho Z 0 0 -3 -2 0 0 0 0 0 X2 1 0 1 2 1 0 0 0 6 X3 2 0 2 1 0 0 0 0 8 X4 3 0 -1 1 0 0 1 0 1 X5 4 0 0 1 0 0 0 1 2 TABLA SIMPLEX 2 Variables Ecu. Coeficientes de las Variables Lado Básicas Núm. Z Xe X1 X2 X3 X4 X5 Derecho Val. Abs.M. Z 0 0 -3 -2 0 0 0 0 0 C.P. X2 1 0 1 2 1 0 0 0 6 X3 2 0 2 1 0 0 0 0 8 X4 3 0 -1 1 0 0 1 0 1 X5 4 0 0 1 0 0 0 1 2
  41. 41. Val. Abs. M. = Valor Absoluto Mayor C.P. = Columna Pivote Lado Derecho REGLA DE = OPTIMIDAD C.P. 6 8 1 2 =6 =4 = -1 =2 1 2 -1 0El siguente valor abosluto Se toma el val. abs., más pequeñomas pequeño pero como como es negativo (-) se toma el siguente valor más pequeño TABLA SIMPLEX 3 Variables Ecu. Coeficientes de las Variables Lado Básicas Núm. Z Xe X1 X2 X3 X4 X5 Derecho Z 0 0 -3 -2 0 0 0 0 0 X2 1 0 1 2 1 0 0 0 6 X3 2 0 2 1 0 0 0 0 8 RENGLÓN PIVOTE X4 3 0 -1 1 0 0 1 0 1 X5 4 0 0 1 0 0 0 1 2 El RENGLÓN PIVOTE ANTIGUO RENGLÓN = PIVOTE NUEVO NÚM. DE PIVOTE
  42. 42. 2 1 0 0 0 0 8 = = 1 1/2 0 1/2 0 0 4 2 2 2 2 2 2 2 TABLA SIMPLEX 4 Variables Ecu. Coeficientes de las Variables Lado Básicas Núm. Z Xe X1 X2 X3 X4 X5 Derecho Z 0 0 -3 -2 0 0 0 0 0 X2 1 0 1 2 1 0 0 0 6 X3 2 0 1 1/2 0 1/2 0 0 4 X4 3 0 -1 1 0 0 1 0 1 X5 4 0 0 1 0 0 0 1 2 COEFICIENTE DE LA RENGLÓN PIVOTE RENGLÓN O. NUEVO = RENGLÓN ANTIGUO - COLUMNA PIVOTE NUEVO 3( 1 1/2 0 1/2 0 0 4)=3 3/2 0 3/2 0 0 12 -3 -2 0 0 0 0 0ELIMINACIÓN =GAUSSIANA 3 3/2 0 3/2 0 0 12 0 -1/2 0 3/2 0 0 12 -1 ( 1 1/2 0 1/2 0 0 4 ) = -1 -1/2 0 -1/2 0 0 -4
  43. 43. 1 2 1 0 0 0 6ELIMINACIÓN =GAUSSIANA -1 -1/2 0 -1/2 0 0 -4 0 3/2 1 -1/2 0 0 2 -1 ( 1 1/2 0 1/2 0 0 4)=1 1/2 0 1/2 0 0 4 -1 1 0 0 0 1 1ELIMINACIÓN =GAUSSIANA 1 1/2 0 1/2 0 0 4 0 3/2 0 1/2 0 0 5 TABLA SIMPLEX 5 Variables Ecu. Coeficientes de las Variables Lado Básicas Núm. Z Xe X1 X2 X3 X4 X5 Derecho Z 0 0 0 -1/2 0 3/2 0 0 12 X2 1 0 0 3/2 1 -1/2 0 0 2 X3 2 0 1 1/2 0 1/2 0 0 4 X4 3 0 0 3/2 0 1/2 0 1 5 X5 4 0 0 1 0 0 0 1 2 RENGLÓN PIVOTE ANTIGUO RENGLÓN = PIVOTE NUEVO
  44. 44. NÚM. DE PIVOTE 0 3/2 1 -1/2 0 0 2 = = 0 1 2/3 -1/3 0 0 4/3 3/2 3/2 3/2 3/2 3/2 3/2 3/2 1/2 ( 0 1 2/3 -1/3 0 0 4/3 )=0 1/2 1/3 -1/6 0 0 2/3 0 -1/2 0 3/2 0 0 12ELIMINACIÓN =GAUSSIANA 0 1/2 1/3 -1/6 0 0 2/3 0 0 1/3 4/3 0 0 38/3 -3/2 ( 0 1 2/3 -1/3 0 0 4/3 )=0 -3/2 -1 1/2 0 0 -2 0 -3/2 0 1/2 1 0 5ELIMINACIÓN =GAUSSIANA 0 -3/2 -1 1/2 0 0 -2 0 0 -1 1 1 0 3 -1 ( 0 1 2/3 -1/3 0 0 4/3 )=0 -1 - 2/3 1/3 0 0 -4/3 0 1 0 0 0 1 2ELIMINACIÓN =GAUSSIANA 0 -1 - 2/3 1/3 0 0 -4/3 0 0 -2/3 1/3 0 1 2/3
  45. 45. TABLA SIMPLEX 6Variables Ecu. Coeficientes de las Variables LadoBásicas Núm. Z Xe X1 X2 X3 X4 X5 Derecho Z 0 0 0 0 1/3 4/3 0 0 38/3 X2 1 0 0 1 2/3 -1/3 0 0 4/3 X3 2 0 1 1/2 0 1/2 0 0 4 X4 3 0 0 0 -1 1 1 0 3 X5 4 0 0 0 -2/3 1/3 0 1 2/3SOLUCIÓN :Z = 12. 66666667X2 = 1.333333333X4 = 3X5 = 0.6666666667
  46. 46. TIEMPO DE HUEVOS PRECIO COCCIONCONCHA DE 1/3 hora 4 4.00CHOCOLATECONCHA DE VAINILLA 2/3 hora 1 3.50*MI EMPRESA
  47. 47. TOTAL 8 horas 30 X1: Número de tortas de chocolate a preparar. X2: Número de tortas de vainilla a preparar. MAXIMIZAR Z = 4 X1 + 3.5 X2 4 3.5 SU INVERSA SUJETO A 1/3 X1 + 2/3 X2 < = 8 1/3 2/3 4 X1 + 1 X2 < = 30 4 1 MAXIMIZAR Z = 4X1 + 3.5X2 4 3.5 0 0 SUJETO A. 1/3X1 + 2/3X2 +X3 <8 1/3 2 1 0 4X1 + 1X2 +X4 < 30 4 1 0 1 MAXIMIZAR Z = 4X1 - 3.5X2 4 3.5 0 0 0 SUJETO A. 1) 1/3X1 - 2/3X2 +X3 <8 1/3 2 1 0 8RESTRICCIONES 2) 4X1 + 1X2 +X4< 30 4 1 0 1 30 FORMA TABULAR
  48. 48. TABLA SIMPLEX 1Variables Ecu. Coeficientes de las Variables LadoBásicas Núm. Z Xe X1 X2 X3 Derecho Z 0 0 -4 -3.5 0 0 0 X3 2 0 1/3 2 1 0 8 X4 3 0 4 1 0 1 30TABLA SIMPLEX 2Variables Ecu. Coeficientes de las Variables LadoBásicas Núm. Z Xe X1 X2 X3 Derecho Val. Abs.M. Z 0 0 -4 -3.5 0 0 0 C.P. X3 2 0 1/3 2 1 0 8 X4 3 0 4 1 0 1 30Val. Abs. M. = Valor Absoluto MayorC.P. = Columna Pivote Lado Derecho REGLA DE =OPTIMIDAD C.P.8 30 = 24 = 8.5 Se toma el Valor Absoluto., más1/3 4 pequeño
  49. 49. TABLA SIMPLEX 3 Variables Ecu. Coeficientes de las Variables Lado Básicas Núm. Z Xe X1 X2 X3 Derecho Val. Abs.M. Z 0 0 -4 -3.5 0 0 0 C.P. X3 2 0 1/3 2 1 0 8 RENGLÓN PIVOTE X4 3 0 4 1 0 1 30 RENGLÓN PIVOTE ANTIGUO RENGLÓN =PIVOTE NUEVO NÚM. DE PIVOTE 1/3 2 1 0 8= = 1/12 2/4 1/4 0 4 4 4 4 4 4 TABLA SIMPLEX 4 Variables Ecu. Coeficientes de las Variables Lado Básicas Núm. Z Xe X1 X2 X3 Derecho Z 0 0 -4 -3.5 0 0 0 X3 2 0 1/12 2/4 1/4 0 4
  50. 50. X4 3 0 4 1 0 1 30 COEFICIENTE DE LA RENGLÓN PIVOTE RENGLÓN O. NUEVO = RENGLÓN ANTIGUO - COLUMNA PIVOTE NUEVO -4 ( 1/12 2/4 1/4 0 4 ) = -1/3 -2 -1 0 -1 -4 -3.5 0 0 0ELIMINACIÓN =GAUSSIANA -1/3 -2 -1 0 -1 11/3 1.5 -1 0 -1 4 ( 1/12 2/4 1/4 0 4 ) = 1/3 2 1 0 1 -4 1 0 1 30ELIMINACIÓN =GAUSSIANA 1/3 2 1 0 1 -11/3 3 1 0 31 TABLA SIMPLEX 5 Variables Ecu. Coeficientes de las Variables Lado Básicas Núm. Z Xe X1 X2 X3 Derecho Z 0 0 11/3 1.5 -1 0 -1 X3 2 0 1/12 2/4 1/4 0 4 X4 3 0 -11/3 3 1 0 31
  51. 51. RENGLÓN PIVOTE ANTIGUO RENGLÓN = PIVOTE NUEVO NÚM. DE PIVOTE 1/12 2/4 1/4 0 4 = = 1/44 3/22 3/44 0 12/11 11/3 11/3 11/3 11/3 11/3 -11/3 ( 1/44 3/22 3/44 0 12/11 ) = -1/12 -2/4 -1/4 0 -4 11/3 1.5 1 0 -1ELIMINACIÓN =GAUSSIANA -1/12 -2/4 -1/4 0 -4 19/6 1 -5/4 0 5 11/3 ( 1/44 3/22 3/44 0 12/11 ) = 1/12 2/4 1/4 0 4 -11/3 3 1 0 31ELIMINACIÓN =GAUSSIANA 1/12 2/4 1/4 0 4 25/6 6 5/4 0 35 TABLA SIMPLEX 6 Variables Ecu. Coeficientes de las Variables Lado Básicas Núm. Z Xe X1 X2 X3 Derecho
  52. 52. Z 0 0 19/6 1 5/4 0 5 X3 2 0 1/44 3/22 3/44 0 12/11 X4 3 0 25/6 6 5/4 0 35SOLUCIÓN :Z=5X3 = 1.090909091X4 = 35

×