sistemas soluciones factibles

25
1.- min Z= 2x1+3x2 4x1+8x2≤800 4x1+3x2≤600 6x1+2x2≤600 X1,x2≥ø 4x1+8x2+h1=800 4x1+3x2 + h2= 600 6x1+2x2 +h3=600 m=3 ecuaciones n=5incognitas N = ( n-m)= n! m! ( nm ) ! = 5 ! 3 ! ( 53 ) ! = 10 Vértices que se aran cero son 2 variab les 1 2 3 4 5 6 7 8 9 10 X1 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 - 0 200 400 0 0 - 400 H2 600 300 0 - 200 0 200 0 100 0 H3 600 400 0 - 300 0 - 200 0 0 Z 0 300 x x x x 200 x 160 x Solución optima 160

description

sistemas

Transcript of sistemas soluciones factibles

1.- min Z= 2x1+3x24x1+8x28004x1+3x26006x1+2x2600X1,x2

4x1+8x2+h1=8004x1+3x2 + h2= 6006x1+2x2 +h3=600m=3 ecuacionesn=5incognitas

N = ( n-m)= == 10

Vrtices que se aran cero son 2variables12345678910

X100002001501001208060

X201002003000004060120

H18000-800-020040000-400

H26003000-200020001000

H36004000-3000-20000

Z0300 x x x x200 x160 x

Solucin optima 160

2.- max Z= 3x1+5x23x1+86x27003x1+8x25004x1+3x2500X1,x23x1+86x2+h1=7003x1+8x2 +h2=5004x1+3x2 +h3=500

m=3 ecuacionesn=5incognitas

N = ( n-m)= == 10

Vrtices que se aran cero son 2variables12345678910

X100002331661254336021

X2011662116000-10086108

H170003284020232500250

H2500-4800-428-19901250-3680

H35003140-164000

Z0 x 310 x x x375 x x 608

Solucin optima 608

3.- min Z=2x1+6x23x1+3x21005x1+4x2100X1,x2

3x1+3x2+h1=1005x1+4x2 +h2=100

M= 2 ecuacionesn=4 incognitas

N = ( n-m)= == 6

variables123456

X100033.3320-32

X2033.332500

H11000250400

H2100-330-00

z0 x150 x40 x

Solucin optima es 40

4.- max Z=3x1+4x22x1+3x250x1+2x280X1,x2

2x1+3x2+h1=50x1+2x2 +h2=80

M= 2 ecuacionesn=4 incognitas

N = ( n-m)= == 6

variables123456

X10002580-140

X2016.64000

H1500-700-1100

H28046.805500

z0 66.4 X 75 x x

Solucin optima es 75

5.- min Z=x1+2x22x1+2x220x1+3x230X1,x2

2x1+2x2+h1=20x1+3x2 +h2=30

M= 2 ecuacionesn=4 incognitas

N = ( n-m)= == 6

variables123456

X10001030-

X20101000

H120000-400

H230002000

z0 20 20 10 x x

Solucin optima es 10

Mtodo Simplex

El mtodo Simplex es un procedimiento iterativo que permite mejorar la solucin de la funcin objetivo en cada paso. El proceso concluye cuando no es posible continuar mejorando dicho valor, es decir, se ha alcanzado la solucin ptima (el mayor o menor valor posible, segn el caso, para el que se satisfacen todas las restricciones).Partiendo del valor de la funcin objetivo en un punto cualquiera, el procedimiento consiste en buscar otro punto que mejore el valor anterior. Como se ver en elmtodo grafico, dichos puntos son los vrtices del polgono (o poliedro o polcoro, si el nmero de variables es mayor de 2) que constituye la regin determinada por las restricciones a las que se encuentra sujeto el problema (llamada regin factible). La bsqueda se realiza mediante desplazamientos por las aristas del polgono, desde el vrtice actual hasta uno adyacente que mejore el valor de la funcin objetivo. Siempre que exista regin factible, como su nmero de vrtices y de aristas es finito, ser posible encontrar la solucin.El mtodo Simplex se basa en la siguiente propiedad: si la funcin objetivo Z no toma su valor mximo en el vrtice A, entonces existe una arista que parte de A y a lo largo de la cual el valor de Z aumenta.Ser necesario tener en cuenta que el mtodo Simplex nicamente trabaja con restricciones del problema cuyas inecuaciones sean del tipo "" (menor o igual) y sus coeficientes independientes sean mayores o iguales a 0. Por tanto habr que estandarizar las restricciones para que cumplan estos requisitos antes de iniciar el algoritmo del Simplex. En caso de que despus de ste proceso aparezcan restricciones del tipo "" (mayor o igual) o "=" (igualdad), o no se puedan cambiar, ser necesario emplear otros mtodos de resolucin, siendo el ms comn el mtodo de las Dos Fases.

Preparando el modelo para adaptarlo al mtodo SimplexLa forma estndar del modelo de problema consta de una funcin objetivo sujeta a determinadas restricciones:Funcin objetivo:c1x1+ c2x2+ ... + cnxn

Sujeto a:a11x1+ a12x2+ ... + a1nxn= b1a21x1+ a22x2+ ... + a2nxn= b2...am1x1+ am2x2+ ... + amnxn= bmx1,..., xn 0

El modelo debe cumplir las siguientes condiciones:1. El objetivo consistir en maximizar o minimizar el valor de la funcin objetivo (por ejemplo, incrementar ganancias o reducir prdidas, respectivamente).2. Todas las restricciones deben ser ecuaciones de igualdad (identidades matemticas).3. Todas las variables (xi) deben tener valor positivo o nulo (condicin de no negatividad).4. Los trminos independientes (bi) de cada ecuacin deben ser no negativos.Hay que adaptar el problema modelado a la forma estndar para poder aplicar el algoritmo del Simplex.Tipo de optimizacin.Como se ha comentado, el objetivo del mtodo consistir en optimizar el valor de la funcin objetivo. Sin embargo se presentan dos opciones: obtener el valor ptimo mayor (maximizar) u obtener el valor ptimo menor (minimizar).Adems existen diferencias en el algoritmo entre el objetivo de maximizacin y el de minimizacin en cuanto al criterio de condicin de parada para finalizar las iteraciones y a las condiciones de entrada y salida de la base. As:

Objetivo de maximizacinCondicin de parada: cuando en la fila Z no aparece ningn valor negativo.Condicin de entrada a la base: el menor valor negativo en la fila Z (o el de mayor valor absoluto entre los negativos) indica la variable Pjque entra a la base.Condicin de salida de la base: una vez obtenida la variable entrante, la variable que sale se determina mediante el menor cociente P0/Pjde los estrictamente positivos. Objetivo de minimizacinCondicin de parada: cuando en la fila Z no aparece ningn valor positivo.Condicin de entrada a la base: el mayor valor positivo en la fila Z indica la variable Pjque entra a la base.Condicin de salida de la base: una vez obtenida la variable entrante, la variable que sale se determina mediante el menor cociente P0/Pjde los estrictamente negativos.No obstante, es posible normalizar el objetivo del problema con el fin de aplicar siempre los mismos criterios en lo referente a la condicin de parada del algoritmo y a las condiciones de entrada y salida de las variables de la base. De esta forma, si el objetivo es minimizar la solucin, se puede cambiar el problema a otro equivalente de maximizacin simplemente multiplicando la funcin objetivo por "1". Es decir, el problema de minimizar Z es equivalente al problema de maximizar (-1)Z. Una vez obtenida la solucin ser necesario multiplicarla tambin por (-1).Ventajas:No hay que preocuparse por nuevos criterios de parada, condicin de entrada y salida de la base ya que se mantienen.Inconvenientes:En el caso de que la funcin tenga todos los coeficientes de sus variables bsicas positivos, y adems las restricciones sean del tipo de desigualdad "", al hacer el cambio dichos coeficientes quedan negativos cumplindose la condicin de parada en la primera iteracin (en la fila del valor de la funcin objetivo todos los valores son positivos o cero). Obtenindose en este caso por defecto un valor ptimo para la funcin igual a 0.Solucin:Realmente no existe este problema dado que para que la solucin sea superior a 0 es necesario que alguna restriccin tenga impuesta la condicin "" (y se tratara de un modelo para elmtodo de las dos fases). En el caso planteado, la solucin real debe ser cero.

Cambio de signo de los trminos independientesTambin se ha dicho que los trminos independientes (bi) de cada ecuacin deben ser no negativos para poder emplear el mtodo Simplex. A tal fin, si alguna de las restricciones presenta un trmino independiente menor que 0 habr que multiplicar por "-1" ambos lados de la inecuacin (teniendo en cuenta que esta operacin tambin afecta al tipo de restriccin).Ventajas:Con sta simple modificacin de signos en las restricciones correspondientes se posibilita la aplicacin del mtodo Simplex al problema modelado.Inconvenientes:Puede resultar que en las restricciones donde tengamos que modificar los signos de las constantes, los tipos de desigualdad fueran "" (quedando tras la operacin del tipo "") siendo necesario desarrollar el mtodo de las Dos Fases. Este inconveniente no es controlable, aunque podra ocurrir el caso contrario y resultar beneficioso si los trminos independientes negativos se presentan en todas aquellas restricciones con desigualdad de tipo "". Si existe alguna restriccin del tipo "=" no supondra ninguna ventaja ni desventaja puesto que siempre sera de necesaria aplicacin elmtodo de las dos fases..Normalizacin de las restriccionesOtra de las condiciones del modelo estndar del problema es que todas las restricciones sean ecuaciones de igualdad (tambin llamadas restricciones de igualdad), por lo que hay que convertir las restricciones de desigualdad o inecuaciones en dichas identidades matemticas.La condicin de no negatividad de las variables (x1,..., xn 0) es la nica excepcin y se mantiene tal cual. Restriccin de tipo ""Para normalizar una restriccin con una desigualdad del tipo "", hay que aadir una nueva variable, llamada variable de holguraxs(con la condicin de no negatividad: xs 0). Esta nueva variable aparece con coeficiente cero en la funcin objetivo, y sumando en la ecuacin correspondiente (que ahora s ser una identidad matemtica o ecuacin de igualdad).a11x1+ a12x2 b1a11x1+ a12x2+ 1xs= b1 Restriccin de tipo ""En caso de una desigualdad del tipo "", tambin hay que aadir una nueva variable llamada variable de excesoxs(con la condicin de no negatividad: xs 0). Esta nueva variable aparece con coeficiente cero en la funcin objetivo, y restando en la ecuacin correspondiente.Surge ahora un problema con la condicin de no negatividad con esta nueva variable del problema. Las inecuaciones que contengan una desigualdad de tipo "" quedaran:a11x1+ a12x2 b1a11x1+ a12x2- 1xs= b1Al realizar la primera iteracin con el mtodo Simplex, las variables bsicas no estarn en la base y tomarn valor cero. En este caso la nueva variable xs, tras hacer cero a x1y x2, tomar el valor -b1y no cumplira la condicin de no negatividad. Es necesario aadir otra nueva variable xr, llamada variable artificial, que tambin aparecer con coeficiente cero en la funcin objetivo y sumando en la restriccin correspondiente. Quedando entonces de la siguiente manera:a11x1+ a12x2 b1a11x1+ a12x2- 1xs+ 1xr= b1 Restriccin de tipo "="Al contrario de lo que cabra pensar, para las restricciones de tipo "=" (aunque ya son identidades) tambin es necesario agregar variables artificiales xr. Como en el caso anterior, su coeficiente ser cero en la funcin objetivo y aparecer sumando en la restriccin correspondiente.a11x1+ a12x2= b1a11x1+ a12x2+ 1xr= b1En el ltimo caso se hace patente que las variables artificiales suponen una violacin de las leyes del lgebra, por lo que ser necesario asegurar que dichas variables artificiales tengan un valor 0 en la solucin final. De esto se encarga elmtodo de las dos fasesy por ello siempre que aparezcan este tipo de variables habr que realizarlo.En la siguiente tabla se resume segn la desigualdad el tipo de variable que aparece en la ecuacin normalizada, as como su signo:Tipo de desigualdadTipo de variable que aparece

- exceso + artificial

=+ artificial

+ holgura

Desarrollando el mtodo SimplexUna vez estandarizado el modelo puede ocurrir que sea necesario aplicar el mtodo Simplex o elmtodo de las dos fases. Vase en la figura la forma de actuacin para llegar a la solucin del problema modelado.

A continuacin se explican paso a paso los puntos de cada mtodo, concretando los aspectos a tener en cuenta.Mtodo Simplex Construccin de la primera tabla:Las columnas de la tabla estn dispuestas de la siguiente forma: la primera columna de la tabla contiene las variables que se encuentran en la base (o variables bsicas), esto es, aquellas que toman valor para proporcionar una solucin; la segunda columna recoge los coeficientes que dichas variables bsicas tienen en la funcin objetivo (esta columna es llamada Cb); la tercera muestra el trmino independiente de cada restriccin (P0); a partir de sta aparece una columna por cada una de las variables de decisin y holgura presentes en la funcin objetivo (Pj). Para tener una visin ms clara de la tabla, se incluye una fila que contiene los ttulos de cada una de las columnas.Sobre esta tabla se agregan dos nuevas filas: una de ellas, que lidera la tabla, donde aparecen los coeficientes de las variables de la funcin objetivo, y una ltima fila que recoge el valor la funcin objetivo y los costes reducidos Zj- Cj.Los costes reducidos muestran la posibilidad de mejora en la solucin Z0. Por este motivo tambin son llamados valores indicadores.Se muestra a continuacin el aspecto general de la tabla del mtodo Simplex:Tabla

C1C2...Cn

BaseCbP0P1P2...Pn

P1Cb1b1a11a12...a1n

P2Cb2b2a21a22...a2n

.....................

PmCbmbmam1am2...amn

ZZ0Z1-C1Z2-C2...Zn-Cn

Todos los valores incluidos en la tabla vendrn dados por el modelo del problema salvo los valores de la fila Z (o fila indicadora). Estos se obtienen de la siguiente forma: Zj= (CbiPj) para i = 1..m, donde si j = 0, P0= biy C0= 0, y en caso contrario Pj= aij.Se observa, al realizar el mtodo Simplex, que en esta primera tabla ocupan la base todas las variables de holgura y por ello (todos los coeficientes de las variables de holgura son 0 en la funcin objetivo) el valor inicial de Z es cero.Por este mismo motivo tampoco es necesario realizar los clculos de los costes reducidos en la primera tabla, pudindose determinar directamente como el cambio de signo de los coeficientes de cada variable en la funcin objetivo, esto es, -Cj. Condicin de parada:Se cumple la condicin de parada cuando la fila indicadora no contiene ningn valor negativo entre los costes reducidos (cuando el objetivo es la maximizacin), esto es, no existe posibilidad de mejora.Si no se cumple la condicin de parada es necesario realizar una iteracin ms del algoritmo, esto es, determinar la variable que se vuelve bsica y la que deja de serlo, encontrar el elemento pivote, actualizar los valores de la tabla y comprobar si se cumple nuevamente la condicin de parada.Es tambin posible determinar que el problema no se encuentra acotado y su solucin siempre resultar mejorable. En tal caso no es necesario continuar iterando indefinidamente y se puede finalizar el algoritmo. Esta situacin ocurre cuando en la columna de la variable entrante a la base todos los valores son negativos o nulos. Eleccin de la variable que entra a la base:Cuando una variable se vuelve bsica, es decir, entra en la base, comienza a formar parte de la solucin. Observando los costes reducidos en la fila Z, se decide que entra a la base la variable de la columna en la que ste sea el de menor valor (o de mayor valor absoluto) entre los negativos. Eleccin de la variable que sale de la base:Una vez obtenida la variable entrante, se determina que sale de la base la variable que se encuentre en aquella fila cuyo cociente P0/Pjsea el menor de los estrictamente positivos (teniendo en cuenta que esta operacin se har nicamente cuando Pjsea superior a 0). Elemento pivote:El elemento pivote de la tabla queda marcado por la interseccin entre la columna de la variable entrante y la fila de la variable saliente.

Actualizacin de la tabla:Las filas correspondientes a la funcin objetivo y a los ttulos permanecern inalteradas en la nueva tabla. El resto de valores debern calcularse como se explica a continuacin:. En la fila del elemento pivote cada nuevo elemento se calcula como:Nuevo Elemento Fila Pivote = Anterior Elemento Fila Pivote / Pivote.. En el resto de las filas cada elemento se calcula:Nuevo Elemento Fila = Anterior Elemento Fila - (Anterior Elemento Fila en Columna Pivote * Nuevo Elemento Fila Pivote).De esta forma se consigue que todos los elementos de la columna de la variable entrante sean nulos salvo el de la fila de la variable saliente cuyo valor ser 1. (Es anlogo a utilizar el mtodo de Gauss-Jordan para resolver sistemas de ecuaciones lineales). Ejemplo del mtodo simplexResolver mediante el mtodo simplex el siguiente problema:MaximizarZ = f(x,y) = 3x + 2y

sujeto a:2x + y 18

2x + 3y 42

3x + y 24

x 0 , y 0

Se consideran las siguientes fases:1. Realizar un cambio de variables y normalizar el signo de los trminos independientes.Se realiza un cambio en la nomenclatura de las variables. Establecindose la correspondencia siguiente:. x pasa a ser X1. y pasa a ser X2Como los trminos independientes de todas las restricciones son positivos no es necesario hacer nada. En caso contrario habra que multiplicar por "-1" en ambos lados de la inecuacin (teniendo en cuenta que esta operacin tambin afecta al tipo de restriccin). Normalizar las restricciones.Se convierten las inecuaciones en ecuaciones agregandovariables de holgura,excesoyartificialessegn la tabla siguiente:Tipo de desigualdadTipo de variable que aparece

- exceso + artificial

=+ artificial

+ holgura

En este caso se introduce una variable de holgura (X3, X4y X5) en cada una de las restricciones del tipo , para convertirlas en igualdades, resultando el sistema de ecuaciones lineales:2X1+ X2+ X3= 18

2X1+ 3X2+ X4= 42

3X1+ X2+ X5= 24

Igualar la funcin objetivo a cero.Z - 3X1- X2- 0X3- 0X4- 0X5= 0 Escribir la tabla inicial del mtodo Simplex.La tabla inicial del mtodo Simplex est compuesta por todos los coeficientes de las variables de decisin del problema original y las de holgura, exceso y artificiales agregadas en el paso 2 (en las columnas, siendo P0el trmino independiente y el resto de variables Picoinciden con Xi), y las restricciones (en las filas). La columna Cbcontiene los coeficientes de las variables que se encuentran en la base.La primera fila est formada por los coeficientes de la funcin objetivo, mientras que la ltima fila contiene el valor la funcin objetivo y loscostes reducidosZj- Cj.La ltima fila se calcula como sigue: Zj= (CbiPj) para i = 1..m, donde si j = 0, P0= biy C0= 0, y en caso contrario Pj= aij. Aunque al tratarse de la primera tabla del mtodo Simplex y ser todos los Cbnulos se puede simplificar el clculo, y por esta vez disponer Zj= -Cj.Tabla I . Iteracin n 1

32000

BaseCbP0P1P2P3P4P5

P301821100

P404223010

P502431001

Z0-3-2000

Condicin de parada.Si el objetivo es la maximizacin, cuando en la ltima fila (fila indicadora) no existe ningn valor negativo entre los costes reducidos (columnas P1en adelante) se alcanza la condicin de parada.En tal caso se llega al final del algoritmo ya que no existe posibilidad de mejora. El valor de Z (columna P0) es la solucin ptima del problema.Otro caso posible es que en la columna de la variable entrante a la base todos los valores son negativos o nulos. Esto indica que el problema no se encuentra acotado y su solucin siempre resultar mejorable. Ante esta situacin no es necesario continuar iterando indefinidamente y tambin se puede dar por finalizado el algoritmo.De no ser as, se ejecutan los siguientes pasos de forma iterativa. Eleccin de la variable entrante y saliente de la base.Se determina en primer lugar la variable que entra en la base. Para ello se escoge la columna cuyo valor en la fila Z sea el menor de entre todos los negativos. En este caso sera la variable X1(P1) de coeficiente -3.Si existiesen dos o ms coeficientes iguales que cumplan la condicin anterior (caso de empate), entonces se optar por aquella variable que sea bsica.La columna de la variable que entra en la base se llamacolumna pivote(en colorverde).Una vez obtenida la variable que entra en la base, se procede a determina cual ser la variable que sale de la misma. La decisin se toma en base a un sencillo clculo: dividir cada trmino independiente (columna P0) entre el elemento correspondiente de la columna pivote, siempre que ambos elementos sean estrictamente positivos (mayores que cero). Se escoge la fila cuyo resultado haya resultado mnimo.Si hubiera algn elemento menor o igual a cero no se realiza dicho cociente. En caso de que todos los elementos de la columna pivote fueran de sta condicin se habra cumplido la condicin de parada y el problema tendra una solucin no acotada.En este ejemplo: 18/2 [=9] , 42/2 [=21] y 24/3 [=8]El trmino de la columna pivote que en la divisin anterior dio lugar al menor cociente positivo indica la fila de la variable de holgura que sale de la base. En este caso resulta ser X5(P5), de coeficiente 3. Esta fila se llamafila pivote(en colorverde).Si al calcular los cocientes, dos o ms resultados cumplen la condicin para elegir el elemento saliente de la base (caso de empate), se escoge aquella que no sea variable bsica (siempre que sea es posible).La interseccin de lafila pivoteycolumna pivotemarca elelementopivote, en este caso el 3. Actualizar la tabla.Los nuevos coeficientes de la tabla se calculan de la siguiente manera:. En la fila del elemento pivote cada nuevo elemento se calcula como:Nuevo Elemento Fila Pivote = Anterior Elemento Fila Pivote / Pivote. En el resto de las filas cada elemento se calcula:Nuevo Elemento Fila = Anterior Elemento Fila - (Anterior Elemento Fila en Columna Pivote * Nuevo Elemento Fila Pivote)Con esto se normaliza el elemento pivote y su valor pasa a ser 1, mientras que el resto de elementos de la columna pivote se anulan (anlogo al mtodo de Gauss-Jordan).Se muestran a continuacin los clculos para la fila P4:Anterior fila P44223010

------

Anterior Elemento Fila en Columna Pivote222222

xxxxxx

Nueva fila pivote811/3001/3

======

Nueva fila P42607/301-2/3

La tabla correspondiente a esta segunda iteracin es:Tabla II . Iteracin n 2

32000

BaseCbP0P1P2P3P4P5

P30201/310-2/3

P402607/301-2/3

P13811/3001/3

Z240-1001

Al comprobar la condicin de parada se observa que no se cumple ya que entre los elementos de la ltima fila hay uno negativo, -1. Se contina iterando nuevamente los pasos 6 y 7.. 6.1. La variable que entra en la base es X2(P2), por ser la variable que corresponde a la columna donde se encuentra el coeficiente -1.. 6.2. Para calcular la variable que sale, se dividen los trminos de la columna P0entre los trminos correspondientes de la nueva columna pivote: 2 / 1/3 [=6] , 26 / 7/3 [=78/7] y 8 / 1/3 [=24]. Como el menor cociente positivo es 6, la variable que sale de la base es X3(P3).. 6.3. El elemento pivote es 1/3.. 7. Actualizando nuevamente los valores de la tabla se obtiene:Tabla III . Iteracin n 3

32000

BaseCbP0P1P2P3P4P5

P2260130-2

P401200-714

P13610-101

Z300030-1

Una nueva comprobacin de la condicin de parada revela que entre los elementos de la fila indicadora vuelve a haber uno negativo, -1. Significa que aun no se ha llegado a la solucin ptima y hay que seguir iterando (pasos 6 y 7):. 6.1. La variable que entra en la base es X5(P5), por ser la variable que corresponde al coeficiente -1.. 6.2. Se escoge la variable que sale calculando el cociente entre los trminos de la columna de trminos independientes y los trminos correspondientes de la nueva columna pivote: 6/(-2) [=-3] , 12/4 [=3], y 6/1 [=6]. En esta ocacin es X4(P4).. 6.3. El elemento pivote es 4.. 7. Despus de actualizar todas las filas, se obtiene la tabla siguiente:Tabla IV . Iteracin n 4

32000

BaseCbP0P1P2P3P4P5

P221201-1/21/20

P50300-7/41/41

P133103/4-1/40

Z33005/41/40

Fin del algoritmo.Se observa que en la ltima fila todos los coeficientes son positivos cumplindose, por tanto la condicin de parada.La solucin ptima viene dada por el valor de Z en la columna de los trminos independientes (P0), en este ejemplo: 33. En la misma columna se puede ver el punto donde se alcanza, observando las filas correspondientes a las variables de decisin que han entrado en la base: X1= 3 y X2= 12.Deshaciendo el cambio de variables se obtiene x = 3 e y = 12.