SlideShare una empresa de Scribd logo
1 de 7
Descargar para leer sin conexión
UNIDAD 3
MÉTODO SIMPLEX
Fundamentos del método simplex
Teoría
Este método busca la solución, en cada paso, de forma mejorada hasta que no pueda
seguir mejorando dicha solución. Al comienzo el vértice principal es un vértice cualquiera,
hasta que va 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 valor má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 tipo de desigualdad "≤" y coeficientes independientes mayores o iguales a 0,
y habrá que estandarizar 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.
Resumen del método simplex.
Paso 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 =<se
pueden 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 bfs
actuales optima. Si hay variables en la 0 con coeficientes negativos, se debe escoger la que
acompañe al coeficiente más negativo en la 0 para entrar a la base. Esta variable se
denomina la variable entrante.
Paso 4 Emplear el pivoteo para hacer que la variable entrante ingrese a la base en la que
restringido su valor. Una vez obtenida la base, volver al paso 3, empleando la forma
canoníca actual.
Solución factible
Una solución basal de (2.3) en el cual todas las variables son no negativas es una
Solución basal factible o bfs. Los siguientes dos teoremas explican la importancia de
concepto de solución basal factible en LP.
Teorema 1 La región factible para cualquier problema de programación lineal es un
conjunto convexo. Además, si un LP tiene solución óptima, el óptimo debe ser un punto
extremo de la región factible. La justificación del Teorema 1 fue discutida intuitivamente
cuando se estudio la resolució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 factible
correspondiente a cada solución basal factible. Además, existe a los menos una bfs
correspondiente a cada punto extremo de la región factible.
Solución básica factible
Siempre se debe incorporar una variable entrante en la que controla su valor
máximo. En el ejemplo, para hacer que x1 sea la variable basal en la 3 se debe emplear
operaciones las elementales para conseguir que x1 tenga coeficiente 1 en dicha la y 0 en las
otras las. El procedimiento se denomina pivoteo en la 3. El resultado es que x1 reemplace a
s3 como variable 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
resultante de la operación es:
x1 + 0;75x2 + 0;25x3 + 0;5s3 = 4
Paso 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 = 240
Paso 3 Para fabricar un coeficiente 0 para la variables x1 en la 1 se multiplica por ¡8 (3.12)
y se suma a la 1 actual:
¡x3 + s1 ¡ 4s3 = 16
Paso 4 Creamos un coeficiente 0 para la variables x1 en la ¯la 2 multiplicando por ¡4 (3.12)
y sumándosela a la ¯la 2 actual:
¡x2 + 0;5x3 + s2 ¡ 2s3 = 4
Debido a que en la 4 no aparece la variable x1, no es necesario aplicar operaciones las para
eliminar x1 de la. Luego, la 4 queda igual que antes:
x2 + s4 = 5
Efectuando 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; x3g
Variable entrante:
Se puede comenzar a desarrollar con cualquier variable solo que según la que tome
se realizaran más o menos iteraciones. Se recomienda usar las variables básicas, ya que
estas será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.
Método de las dos faces
Trata, en diferencia del método simplex, en que primero hay que resolver el
problema auxiliar tratando de minimizar la suma las variables artificiales. Una vez
resolvido el problema se ordena la tabla final y comenzamos con el método simplex
normal.
Fase 1
En esta primera fase, se realiza todo de igual manera que en el método Simplex
normal, excepto la construcción de la primera tabla, la condición de parada y la preparación
de la tabla que pasará a la fase 2
- Construcción de la primera tabla: Se hace de la misma forma que la tabla inicial
del método Simplex, pero con algunas diferencias. La fila de la función objetivo cambia
para la primera fase, ya que cambia la función objetivo, por lo tanto aparecerán todos los
términos a cero excepto aquellos que sean variables artificiales, que tendrán valor "-1"
debido a que se está minimizando la suma de dichas variables (recuerde que minimizar F es
igual que maximizar F·(-1)).
La otra diferencia para la primera tabla radica en la forma de calcular la fila Z. Ahora
tendremos que hacer el cálculo de la siguiente forma: Se sumarán los productos Cb·Pj para
todas las filas y al resultado se le restará el valor que aparezca (según la columna que se
éste haciendo) en la fila de la función objetivo.
- Condición de parada: La condición de parada es la misma que en el método
Simplex normal. La diferencia estriba en que pueden ocurrir dos casos cuando se produce
la parada: la función toma un valor 0, que significa que el problema original tiene solución,
o que tome un valor distinto, indicando que nuestro modelo no tiene solución.
- Eliminar Columna de variables artificiales: Si hemos llegado a la conclusión de
que el problema original tiene solución, debemos preparar nuestra tabla para la segunda
fase. Deberemos eliminar las columnas de las variables artificiales, modificar la fila de la
función objetivo por la original, y calcular la fila Z de la misma forma que en la primera
tabla de la fase 1.
Método simplex revisado
Procedimiento de cálculo
Resolver el siguiente problema mediante el método simplex revisado.
max z = −2x2 + x3
s/a
x1 − 2x2 + x3 >= −4
x1 + x2 + x3 <= 9
2x1 − x2 − x3 <= 5
x1, x2, x3 >= 0
Preliminares. Lo primero que debemos hacer es convertir el problema a su forma estándar.
En nuestro caso,
max z = −2x2 + x3
s/a
−x1 + 2x2 − x3 + x4 = 4
x1 + x2 + x3 + x5 = 9
2x1 − x2 − x3 + x6 = 5
x1, x2, x3 >= 0
Matricialmente,
max z = c.x
s/a
A.x = b
x >= 0
Donde,
y c = (0,−2, 1, 0, 0, 0). Estos vectores/matrices van a permanecer constantes a lo largo del
ejercicio. No obstante, cuando introduzcamos B, N, xB, xN, cB y cN, estos últimos van a
variar según la base establecida en cada iteración. Búsqueda primer solución factible. El
problema es origen factible, así que no tenemos necesidad de utilizar el método de las dos
fases. Simplemente, Podemos comenzar con la base B = (a4, a5, a6). Obviamente,
N = (a1, a2, a3).
Test de optimalidad. Recordemos la forma general del diccionario,
xB = B−1.b − B−1.N.xN
z = cB.B−1.b + (cN − cB.B−1.N).xN
Debemos investigar los coeficientes de la función objetivo (i.e.cN−cB.B−1.N).
Llamemos w al vector que resulta del producto cB.B−1. Utilizando la primera solución
factible hallada, cB resulta ser el vector nulo, as´ı que también
w = (0, 0, 0).
Lo siguiente es evaluar los coeficientes de la función objetivo (correspondientes a
las variables no básicas) hasta encontrar uno que sea estrictamente positivo:
c1 − w.a1 = 0,
c2 − w.a2 = −2,
c3 − w.a3 = 1, por lo tanto entra x3 a la base.
Test de factibilidad. Ahora tenemos que hallar la variable saliente que más restricción
impone, cuando x3 comienza a crecer. De la forma general del diccionario, veamos que
xB = B−1.b − B−1.N.xN = b − N.xN = b − a3.x3,
Pues B−1 = I y x3 dejara de ser cero, pero no así las otras variables no básicas (x1 = x2 = 0).
En resumen,
x4 = 4 + x3, que no impone restricción,
x5 = 9 − x3, que impone la restricción x3 _ 9,
x6 = 5 + x3, que no impone restricción.
La variable que más restricción impone es x5 y, por lo tanto, sale de la base.
Actualización. Para poder pasar a la próxima iteración (la cual comienza con el test de
optimalidad) debemos actualizar la base, y con ella, los vectores/matrices B, N, xB, xN, cB y
cN. Todas ellas se hallan mediante un reordenamiento de sus componentes (donde estaba
antes la columna/valor correspondiente a la variable entrante, ahora estará la de la variable
saliente y viceversa). Es decir,
B = (a4, a3, a6), N = (a1, a2, a5), xB = (x4, x3, x6)T , xN = (x1, x2, x5)T , cB = (0, 1, 0) y cN
= (0,−2, 0).
Cabe destacar que también podemos aprovechar a calcular la nueva B−1 de una manera
eficiente, a partir de la B−1 previa. Llamemos B1 a la matriz B antes de iterar y B2 a la matriz
luego de iterar. Observemos que B2 = (a4, a3, a6) = (a4, a5, a6).T = B1.T,
T es una identidad modificada, en donde se ha cambiado su columna del medio por la
columna correspondiente a x3 en el resultado B−1.N ya calculado en el paso anterior (dicha
columna había resultado ser simplemente a3).
Luego,
B−12 = (B1.T )−1 = T−1.B−11 = T−1.I = T−1
En general, T−1 es también una identidad, salvo que la columna cambiada k (en nuestro
caso, es la del medio, k = 2) está formada por la columna (−t1k/tkk,−t2k/tkk, · · · , 1/tkk, · · · )T
Obsérvese que la fila k de esta columna se calcula de una manera diferente al resto.
Test de optimalidad. Nuevamente, volvemos a calcular los coeficientes de la función
objetivo correspondiente a las nuevas variables no básicas. En primer lugar, w = cB.B−1 =
(0, 1, 0).
c1 − w.a1 = −1,
c2 − w.a2 = −3,
c5 − w.a5 = −1.
Como todos los coeficientes no son estrictamente positivos, hemos alcanzado el óptimo.
Resultado. Para conocer los valores de x_ y z_, volvemos a recordar la forma general del
diccionario, y hacemos
x*B = B−1.b, x* N = 0, z* = cB.B*1.b = w.b.
Nos queda x*B = (13, 9, 14) y z_ = 9. En particular, las slacks no nos interesan y podemos
descartarlas, dejando
X1 = x_
x2 = 0 y x_
x3 = 9.
Realizado por los creadores del sitio:
http://www.unefa-io.webnode.es
Correspondiente a la unidad 3.
Investigación de Operaciones

Más contenido relacionado

La actualidad más candente

Actividad3.5 equipo4completa
Actividad3.5 equipo4completaActividad3.5 equipo4completa
Actividad3.5 equipo4completaviovazquez1780
 
Investigacion de Operaciones No. 2 - R. Campillo
Investigacion de Operaciones No. 2 - R. CampilloInvestigacion de Operaciones No. 2 - R. Campillo
Investigacion de Operaciones No. 2 - R. CampilloRafael Campillo Rodriguez
 
PROGRAMACION LINEAL - METODO SIMPLEX
PROGRAMACION LINEAL - METODO SIMPLEXPROGRAMACION LINEAL - METODO SIMPLEX
PROGRAMACION LINEAL - METODO SIMPLEXjjsch01
 
El Metodo Simplex
El Metodo SimplexEl Metodo Simplex
El Metodo Simplexguestb9bf58
 
1.método simplex para la solución de problemas de operaciones de investigaciones
1.método simplex para la solución de problemas de operaciones de investigaciones1.método simplex para la solución de problemas de operaciones de investigaciones
1.método simplex para la solución de problemas de operaciones de investigacionesCarlos Quintero
 
Método Simplex Mercadotecnia Análisis de Decisiones Equipo 2
Método Simplex Mercadotecnia Análisis de Decisiones Equipo 2 Método Simplex Mercadotecnia Análisis de Decisiones Equipo 2
Método Simplex Mercadotecnia Análisis de Decisiones Equipo 2 MarketingAD
 
Unmsm fisi - método dual simplex - io1 cl10-dual_simplex
Unmsm   fisi - método dual simplex - io1 cl10-dual_simplexUnmsm   fisi - método dual simplex - io1 cl10-dual_simplex
Unmsm fisi - método dual simplex - io1 cl10-dual_simplexJulio Pari
 
Act. 3.5 método simplex equipo 2
Act. 3.5 método simplex equipo 2Act. 3.5 método simplex equipo 2
Act. 3.5 método simplex equipo 2lesote
 

La actualidad más candente (17)

Actividad3.5 equipo4completa
Actividad3.5 equipo4completaActividad3.5 equipo4completa
Actividad3.5 equipo4completa
 
Método simplex.
Método simplex. Método simplex.
Método simplex.
 
Metodo Simplex
Metodo SimplexMetodo Simplex
Metodo Simplex
 
Método simplex m
Método simplex mMétodo simplex m
Método simplex m
 
Investigacion de Operaciones No. 2 - R. Campillo
Investigacion de Operaciones No. 2 - R. CampilloInvestigacion de Operaciones No. 2 - R. Campillo
Investigacion de Operaciones No. 2 - R. Campillo
 
PROGRAMACION LINEAL - METODO SIMPLEX
PROGRAMACION LINEAL - METODO SIMPLEXPROGRAMACION LINEAL - METODO SIMPLEX
PROGRAMACION LINEAL - METODO SIMPLEX
 
El Metodo Simplex
El Metodo SimplexEl Metodo Simplex
El Metodo Simplex
 
1.método simplex para la solución de problemas de operaciones de investigaciones
1.método simplex para la solución de problemas de operaciones de investigaciones1.método simplex para la solución de problemas de operaciones de investigaciones
1.método simplex para la solución de problemas de operaciones de investigaciones
 
Diapositivas
DiapositivasDiapositivas
Diapositivas
 
Método Simplex Mercadotecnia Análisis de Decisiones Equipo 2
Método Simplex Mercadotecnia Análisis de Decisiones Equipo 2 Método Simplex Mercadotecnia Análisis de Decisiones Equipo 2
Método Simplex Mercadotecnia Análisis de Decisiones Equipo 2
 
Programación lineal
Programación linealProgramación lineal
Programación lineal
 
Metodo simplex
Metodo simplexMetodo simplex
Metodo simplex
 
Método simplex. Teoria
Método simplex. TeoriaMétodo simplex. Teoria
Método simplex. Teoria
 
Metodosimplex
MetodosimplexMetodosimplex
Metodosimplex
 
Método simplex
Método simplexMétodo simplex
Método simplex
 
Unmsm fisi - método dual simplex - io1 cl10-dual_simplex
Unmsm   fisi - método dual simplex - io1 cl10-dual_simplexUnmsm   fisi - método dual simplex - io1 cl10-dual_simplex
Unmsm fisi - método dual simplex - io1 cl10-dual_simplex
 
Act. 3.5 método simplex equipo 2
Act. 3.5 método simplex equipo 2Act. 3.5 método simplex equipo 2
Act. 3.5 método simplex equipo 2
 

Destacado

38635375 tp-2-y-3-diseno-de-engranajes-rectos-y-helicoidales
38635375 tp-2-y-3-diseno-de-engranajes-rectos-y-helicoidales38635375 tp-2-y-3-diseno-de-engranajes-rectos-y-helicoidales
38635375 tp-2-y-3-diseno-de-engranajes-rectos-y-helicoidalesGregory Nick Toledo Veliz
 
190731605 factores-de-utilizacion-de-lamparas-luminarias
190731605 factores-de-utilizacion-de-lamparas-luminarias190731605 factores-de-utilizacion-de-lamparas-luminarias
190731605 factores-de-utilizacion-de-lamparas-luminariasGregory Nick Toledo Veliz
 

Destacado (20)

Manual io simplex (3)
Manual io simplex (3)Manual io simplex (3)
Manual io simplex (3)
 
7130815 ingenieria-calculo-engranajes
7130815 ingenieria-calculo-engranajes7130815 ingenieria-calculo-engranajes
7130815 ingenieria-calculo-engranajes
 
Manual io simplex
Manual io simplexManual io simplex
Manual io simplex
 
49667953 esfuerzos-sobre-engranajes
49667953 esfuerzos-sobre-engranajes49667953 esfuerzos-sobre-engranajes
49667953 esfuerzos-sobre-engranajes
 
Método de solución simplex 2015
Método de solución simplex 2015Método de solución simplex 2015
Método de solución simplex 2015
 
Unidad3
Unidad3Unidad3
Unidad3
 
Manual io simplex (2)
Manual io simplex (2)Manual io simplex (2)
Manual io simplex (2)
 
2. simplex ejercicios
2. simplex   ejercicios2. simplex   ejercicios
2. simplex ejercicios
 
49218254 calculo-de-engranajes
49218254 calculo-de-engranajes49218254 calculo-de-engranajes
49218254 calculo-de-engranajes
 
Colas
ColasColas
Colas
 
Manual io simplex (1)
Manual io simplex (1)Manual io simplex (1)
Manual io simplex (1)
 
14827760 calculo-de-engranajes-rectos
14827760 calculo-de-engranajes-rectos14827760 calculo-de-engranajes-rectos
14827760 calculo-de-engranajes-rectos
 
Practica de teoria de colas (1)
Practica de teoria de colas (1)Practica de teoria de colas (1)
Practica de teoria de colas (1)
 
La celula tema 2
La celula tema 2La celula tema 2
La celula tema 2
 
3+problemas+metodo+simplex
3+problemas+metodo+simplex3+problemas+metodo+simplex
3+problemas+metodo+simplex
 
38635375 tp-2-y-3-diseno-de-engranajes-rectos-y-helicoidales
38635375 tp-2-y-3-diseno-de-engranajes-rectos-y-helicoidales38635375 tp-2-y-3-diseno-de-engranajes-rectos-y-helicoidales
38635375 tp-2-y-3-diseno-de-engranajes-rectos-y-helicoidales
 
75613726 fgm
75613726 fgm75613726 fgm
75613726 fgm
 
50879359 problemas-resueltos
50879359 problemas-resueltos50879359 problemas-resueltos
50879359 problemas-resueltos
 
148713792 diseno-criba-vibratoria
148713792 diseno-criba-vibratoria148713792 diseno-criba-vibratoria
148713792 diseno-criba-vibratoria
 
190731605 factores-de-utilizacion-de-lamparas-luminarias
190731605 factores-de-utilizacion-de-lamparas-luminarias190731605 factores-de-utilizacion-de-lamparas-luminarias
190731605 factores-de-utilizacion-de-lamparas-luminarias
 

Similar a Unidad3 (1)

Similar a Unidad3 (1) (20)

PROGRAMACION LINEAL METODO SIMPLEX
PROGRAMACION LINEAL METODO SIMPLEXPROGRAMACION LINEAL METODO SIMPLEX
PROGRAMACION LINEAL METODO SIMPLEX
 
Metodosimplex
MetodosimplexMetodosimplex
Metodosimplex
 
Método de dos fases M.ppt
Método de dos fases M.pptMétodo de dos fases M.ppt
Método de dos fases M.ppt
 
Método simplex
Método simplexMétodo simplex
Método simplex
 
Método simple
Método simpleMétodo simple
Método simple
 
Operativa 1
Operativa  1Operativa  1
Operativa 1
 
Método Simplex
Método SimplexMétodo Simplex
Método Simplex
 
3 Metodo Simplex.pdf
3 Metodo Simplex.pdf3 Metodo Simplex.pdf
3 Metodo Simplex.pdf
 
Mas ejercicios para la resolución de modelos aplicando el método simplex
Mas ejercicios para la resolución de modelos aplicando el método simplexMas ejercicios para la resolución de modelos aplicando el método simplex
Mas ejercicios para la resolución de modelos aplicando el método simplex
 
Beba
BebaBeba
Beba
 
Ejemplo práctico en clase
Ejemplo práctico en claseEjemplo práctico en clase
Ejemplo práctico en clase
 
Un ejemplo práctico en clase
Un ejemplo práctico en claseUn ejemplo práctico en clase
Un ejemplo práctico en clase
 
Plantillabasicas
PlantillabasicasPlantillabasicas
Plantillabasicas
 
Método algebraico
Método algebraicoMétodo algebraico
Método algebraico
 
Oviedo mco nolineales
Oviedo mco nolinealesOviedo mco nolineales
Oviedo mco nolineales
 
ECUACIONES NO LINEALES
ECUACIONES NO LINEALESECUACIONES NO LINEALES
ECUACIONES NO LINEALES
 
CLASE+4+IO1+Simplex.pptx
CLASE+4+IO1+Simplex.pptxCLASE+4+IO1+Simplex.pptx
CLASE+4+IO1+Simplex.pptx
 
PRÁCTICA IO.pdf
PRÁCTICA IO.pdfPRÁCTICA IO.pdf
PRÁCTICA IO.pdf
 
110105553 programacion-lineal
110105553 programacion-lineal110105553 programacion-lineal
110105553 programacion-lineal
 
Método Simplex
Método SimplexMétodo Simplex
Método Simplex
 

Más de Gregory Nick Toledo Veliz

Más de Gregory Nick Toledo Veliz (12)

Uai io-pl bitmap
Uai io-pl bitmapUai io-pl bitmap
Uai io-pl bitmap
 
Uai io-pl bitmap (1)
Uai io-pl bitmap (1)Uai io-pl bitmap (1)
Uai io-pl bitmap (1)
 
Teoría de líneas de espera otoño 2015
Teoría de líneas de espera   otoño 2015Teoría de líneas de espera   otoño 2015
Teoría de líneas de espera otoño 2015
 
Practica de teoria de colas
Practica de teoria de colasPractica de teoria de colas
Practica de teoria de colas
 
153099458 calculo-y-diseno-de-engranajes
153099458 calculo-y-diseno-de-engranajes153099458 calculo-y-diseno-de-engranajes
153099458 calculo-y-diseno-de-engranajes
 
98596881 engranajes-helicodales-y-conicos
98596881 engranajes-helicodales-y-conicos98596881 engranajes-helicodales-y-conicos
98596881 engranajes-helicodales-y-conicos
 
47557900 engranajes-esfuerzos-trenes
47557900 engranajes-esfuerzos-trenes47557900 engranajes-esfuerzos-trenes
47557900 engranajes-esfuerzos-trenes
 
Clculodepioneshelicoidales 111109100615-phpapp01
Clculodepioneshelicoidales 111109100615-phpapp01Clculodepioneshelicoidales 111109100615-phpapp01
Clculodepioneshelicoidales 111109100615-phpapp01
 
Engranesrectosyhelicoidales 111023113603-phpapp01
Engranesrectosyhelicoidales 111023113603-phpapp01Engranesrectosyhelicoidales 111023113603-phpapp01
Engranesrectosyhelicoidales 111023113603-phpapp01
 
Problemaengranajehelicoidal 120104084124-phpapp02
Problemaengranajehelicoidal 120104084124-phpapp02Problemaengranajehelicoidal 120104084124-phpapp02
Problemaengranajehelicoidal 120104084124-phpapp02
 
Problemaengranajehelicoidal 120104084124-phpapp02 (1)
Problemaengranajehelicoidal 120104084124-phpapp02 (1)Problemaengranajehelicoidal 120104084124-phpapp02 (1)
Problemaengranajehelicoidal 120104084124-phpapp02 (1)
 
190788306 libro-d-transportadores
190788306 libro-d-transportadores190788306 libro-d-transportadores
190788306 libro-d-transportadores
 

Unidad3 (1)

  • 1. UNIDAD 3 MÉTODO SIMPLEX Fundamentos del método simplex Teoría Este método busca la solución, en cada paso, de forma mejorada hasta que no pueda seguir mejorando dicha solución. Al comienzo el vértice principal es un vértice cualquiera, hasta que va 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 valor má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 tipo de desigualdad "≤" y coeficientes independientes mayores o iguales a 0, y habrá que estandarizar 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. Resumen del método simplex. Paso 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 =<se pueden 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 bfs actuales optima. Si hay variables en la 0 con coeficientes negativos, se debe escoger la que acompañe al coeficiente más negativo en la 0 para entrar a la base. Esta variable se denomina la variable entrante. Paso 4 Emplear el pivoteo para hacer que la variable entrante ingrese a la base en la que restringido su valor. Una vez obtenida la base, volver al paso 3, empleando la forma canoníca actual. Solución factible Una solución basal de (2.3) en el cual todas las variables son no negativas es una Solución basal factible o bfs. Los siguientes dos teoremas explican la importancia de concepto de solución basal factible en LP. Teorema 1 La región factible para cualquier problema de programación lineal es un conjunto convexo. Además, si un LP tiene solución óptima, el óptimo debe ser un punto extremo de la región factible. La justificación del Teorema 1 fue discutida intuitivamente
  • 2. cuando se estudio la resolució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 factible correspondiente a cada solución basal factible. Además, existe a los menos una bfs correspondiente a cada punto extremo de la región factible. Solución básica factible Siempre se debe incorporar una variable entrante en la que controla su valor máximo. En el ejemplo, para hacer que x1 sea la variable basal en la 3 se debe emplear operaciones las elementales para conseguir que x1 tenga coeficiente 1 en dicha la y 0 en las otras las. El procedimiento se denomina pivoteo en la 3. El resultado es que x1 reemplace a s3 como variable 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 resultante de la operación es: x1 + 0;75x2 + 0;25x3 + 0;5s3 = 4 Paso 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 = 240 Paso 3 Para fabricar un coeficiente 0 para la variables x1 en la 1 se multiplica por ¡8 (3.12) y se suma a la 1 actual: ¡x3 + s1 ¡ 4s3 = 16 Paso 4 Creamos un coeficiente 0 para la variables x1 en la ¯la 2 multiplicando por ¡4 (3.12) y sumándosela a la ¯la 2 actual: ¡x2 + 0;5x3 + s2 ¡ 2s3 = 4 Debido a que en la 4 no aparece la variable x1, no es necesario aplicar operaciones las para eliminar x1 de la. Luego, la 4 queda igual que antes: x2 + s4 = 5 Efectuando 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; x3g
  • 3. Variable entrante: Se puede comenzar a desarrollar con cualquier variable solo que según la que tome se realizaran más o menos iteraciones. Se recomienda usar las variables básicas, ya que estas será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. Método de las dos faces Trata, en diferencia del método simplex, en que primero hay que resolver el problema auxiliar tratando de minimizar la suma las variables artificiales. Una vez resolvido el problema se ordena la tabla final y comenzamos con el método simplex normal. Fase 1 En esta primera fase, se realiza todo de igual manera que en el método Simplex normal, excepto la construcción de la primera tabla, la condición de parada y la preparación de la tabla que pasará a la fase 2 - Construcción de la primera tabla: Se hace de la misma forma que la tabla inicial del método Simplex, pero con algunas diferencias. La fila de la función objetivo cambia para la primera fase, ya que cambia la función objetivo, por lo tanto aparecerán todos los términos a cero excepto aquellos que sean variables artificiales, que tendrán valor "-1" debido a que se está minimizando la suma de dichas variables (recuerde que minimizar F es igual que maximizar F·(-1)). La otra diferencia para la primera tabla radica en la forma de calcular la fila Z. Ahora tendremos que hacer el cálculo de la siguiente forma: Se sumarán los productos Cb·Pj para todas las filas y al resultado se le restará el valor que aparezca (según la columna que se éste haciendo) en la fila de la función objetivo. - Condición de parada: La condición de parada es la misma que en el método Simplex normal. La diferencia estriba en que pueden ocurrir dos casos cuando se produce la parada: la función toma un valor 0, que significa que el problema original tiene solución, o que tome un valor distinto, indicando que nuestro modelo no tiene solución.
  • 4. - Eliminar Columna de variables artificiales: Si hemos llegado a la conclusión de que el problema original tiene solución, debemos preparar nuestra tabla para la segunda fase. Deberemos eliminar las columnas de las variables artificiales, modificar la fila de la función objetivo por la original, y calcular la fila Z de la misma forma que en la primera tabla de la fase 1. Método simplex revisado Procedimiento de cálculo Resolver el siguiente problema mediante el método simplex revisado. max z = −2x2 + x3 s/a x1 − 2x2 + x3 >= −4 x1 + x2 + x3 <= 9 2x1 − x2 − x3 <= 5 x1, x2, x3 >= 0 Preliminares. Lo primero que debemos hacer es convertir el problema a su forma estándar. En nuestro caso, max z = −2x2 + x3 s/a −x1 + 2x2 − x3 + x4 = 4 x1 + x2 + x3 + x5 = 9 2x1 − x2 − x3 + x6 = 5 x1, x2, x3 >= 0 Matricialmente, max z = c.x s/a A.x = b x >= 0 Donde, y c = (0,−2, 1, 0, 0, 0). Estos vectores/matrices van a permanecer constantes a lo largo del ejercicio. No obstante, cuando introduzcamos B, N, xB, xN, cB y cN, estos últimos van a variar según la base establecida en cada iteración. Búsqueda primer solución factible. El problema es origen factible, así que no tenemos necesidad de utilizar el método de las dos fases. Simplemente, Podemos comenzar con la base B = (a4, a5, a6). Obviamente, N = (a1, a2, a3). Test de optimalidad. Recordemos la forma general del diccionario,
  • 5. xB = B−1.b − B−1.N.xN z = cB.B−1.b + (cN − cB.B−1.N).xN Debemos investigar los coeficientes de la función objetivo (i.e.cN−cB.B−1.N). Llamemos w al vector que resulta del producto cB.B−1. Utilizando la primera solución factible hallada, cB resulta ser el vector nulo, as´ı que también w = (0, 0, 0). Lo siguiente es evaluar los coeficientes de la función objetivo (correspondientes a las variables no básicas) hasta encontrar uno que sea estrictamente positivo: c1 − w.a1 = 0, c2 − w.a2 = −2, c3 − w.a3 = 1, por lo tanto entra x3 a la base. Test de factibilidad. Ahora tenemos que hallar la variable saliente que más restricción impone, cuando x3 comienza a crecer. De la forma general del diccionario, veamos que xB = B−1.b − B−1.N.xN = b − N.xN = b − a3.x3, Pues B−1 = I y x3 dejara de ser cero, pero no así las otras variables no básicas (x1 = x2 = 0). En resumen, x4 = 4 + x3, que no impone restricción, x5 = 9 − x3, que impone la restricción x3 _ 9, x6 = 5 + x3, que no impone restricción. La variable que más restricción impone es x5 y, por lo tanto, sale de la base. Actualización. Para poder pasar a la próxima iteración (la cual comienza con el test de optimalidad) debemos actualizar la base, y con ella, los vectores/matrices B, N, xB, xN, cB y cN. Todas ellas se hallan mediante un reordenamiento de sus componentes (donde estaba antes la columna/valor correspondiente a la variable entrante, ahora estará la de la variable saliente y viceversa). Es decir, B = (a4, a3, a6), N = (a1, a2, a5), xB = (x4, x3, x6)T , xN = (x1, x2, x5)T , cB = (0, 1, 0) y cN = (0,−2, 0). Cabe destacar que también podemos aprovechar a calcular la nueva B−1 de una manera eficiente, a partir de la B−1 previa. Llamemos B1 a la matriz B antes de iterar y B2 a la matriz luego de iterar. Observemos que B2 = (a4, a3, a6) = (a4, a5, a6).T = B1.T, T es una identidad modificada, en donde se ha cambiado su columna del medio por la columna correspondiente a x3 en el resultado B−1.N ya calculado en el paso anterior (dicha columna había resultado ser simplemente a3). Luego, B−12 = (B1.T )−1 = T−1.B−11 = T−1.I = T−1
  • 6. En general, T−1 es también una identidad, salvo que la columna cambiada k (en nuestro caso, es la del medio, k = 2) está formada por la columna (−t1k/tkk,−t2k/tkk, · · · , 1/tkk, · · · )T Obsérvese que la fila k de esta columna se calcula de una manera diferente al resto. Test de optimalidad. Nuevamente, volvemos a calcular los coeficientes de la función objetivo correspondiente a las nuevas variables no básicas. En primer lugar, w = cB.B−1 = (0, 1, 0). c1 − w.a1 = −1, c2 − w.a2 = −3, c5 − w.a5 = −1. Como todos los coeficientes no son estrictamente positivos, hemos alcanzado el óptimo. Resultado. Para conocer los valores de x_ y z_, volvemos a recordar la forma general del diccionario, y hacemos x*B = B−1.b, x* N = 0, z* = cB.B*1.b = w.b. Nos queda x*B = (13, 9, 14) y z_ = 9. En particular, las slacks no nos interesan y podemos descartarlas, dejando X1 = x_ x2 = 0 y x_ x3 = 9.
  • 7. Realizado por los creadores del sitio: http://www.unefa-io.webnode.es Correspondiente a la unidad 3. Investigación de Operaciones