miércoles, 30 de marzo de 2011

metodo simplex

Método Simplex.
Variables de holgura: Siempre positivas, hacen que una restricción que sea desigualdad se transforme
en igualdad, y sus coeficientes en la función objetivo son ceros.
Variables ficticias o artificiales: Sirven para hallar fácilmente una solución básica inicial, sus
coeficientes en la función objetivo son w si es minimización o -w si es maximización; w es un número
mucho mayor que todos los participantes.
Luego de sumar las variables de holgura y/o artificiales necesarias para convertir las desigualdades en
igualdades y para obtener los vectores unitarios (de la matriz identidad) para la base inicial se procede a
ordenar los datos en una tabla Simples; después se prueba la solución para ver si es óptima, si no es
óptima se realiza el siguiente procedimiento:
- Se calculan los valores de zj multiplicando los coeficientes de la base por cada columna, uno a
uno, y sumando esos resultados.
- Luego se calculan los valores de zj- cj; si es minimización el valor más grande de zj- cjdesigna
a la columna clave, y si es maximización el valor más pequeño de zj - cj designa a la columna
clave.
- Se calculan las razones entre la cantidad solución y sus correspondientes de la columna clave, para los valores positivos de la cantidad solución; el valor mínimo de estas razones designa a la fila clave.
- El elemento que se encuentra en la intersección de la columna clave con la fila clave se llama
pivote.
- El vector de la fila clave se reemplaza por el de la columna clave en la base, luego se
transforma la matriz ampliada (A | B) para que el pivote sea igual a 1 y los demás elementos de
ese vector sean ceros; y se ordenan nuevamente estos datos en una tabla Simples.
La solución óptima se reconoce cuando la cantidad solución tiene sólo cantidades no negativas; si es
minimización los valores de zj - cj son todos no positivos, y si es maximización los valores de zj - cj son
todos no negativos.

metodo simplex

Resolver mediante el método gráfico el siguiente problema:
MaximizarZ = f(x,y) = 3x + 2y
sujeto a:2x + y ≤ 18
 2x + 3y ≤ 42
 3x + y ≤ 24
 x ≥ 0 , y ≥ 0


  1. Inicialmente dibujamos el sistema de coordenadas asociando a un eje la variable x, y al otro la y, como se puede ver en la figura.
  2. Marcamos en ellos una escala numérica apropiada de acuerdo con los recorridos de las variables en relación con las restricciones del problema. A continuación dibujamos las restricciones. Comenzando con la primera, dibujamos la recta que se obtiene al considerar la restricción como igualdad. Aparece representada como el segmento que une A con B y la región que delimita ésta restricción viene indicada por el color AMARILLO. Se repite el proceso de la misma forma con la segunda y tercera restricción, y delimitan la región de color AZUL y ROJO respectivamente. La región factible es la intersección de las regiones delimitadas por la terna de restricciones y por las condiciones de no negatividad de las variables, es decir, por la región de valores admisibles limitada por ambos ejes coordenados. La región factible está representada por el polígono convexo O-F-H-G-C, que aparece de color VIOLETA.
    Gráficas y región factible
  3. Ya que la región factible es no vacía (problema factible), procedemos a determinar sus puntos extremos, candidatos a soluciones óptimas, que son los puntos O-F-H-G-C de la figura. Finalmente, evaluamos la función objetivo (3x + 2y) en esos puntos, resultado que se recoge en la tabla siguiente. Como el punto G proporciona el mayor valor al objetivo Z, tal punto constituye la solución óptima, que indicaremos x = 3 y = 12, con valor óptimo Z = 33.
Punto extremoCoordenadas (x,y)Valor bjetivo (Z)
O(0,0)0
C(0,14)28
G(3,12)33
H(6,6)30
F(8,0)24


COMPARACION DEL MÉTODO GRÁFICO CON EL MÉTODO SIMPLEX
Las sucesivas tablas que hemos construido durante el método simplex van proporcionando el valor de la función objetivo en los distintos vértices, ajustándose, a la vez, los coeficientes de las variables iniciales y de holgura.
En la primera iteración (Tabla I) han permanecido todos los coeficientes iguales, se ha calculado el valor de la función objetivo en el vértice (0,0) que es el valor que contienen las variables básicas, siendo el resultado 0.
Tabla I . Iteración nº 1
   32000
BaseCbP0P1P2P3P4P5
P301821100
P404223010
P502431001
Z 0-3-2000

Paso inicial del Método Gráfico
A continuación se desplaza por la arista (0,0) F, calculando el valor de la función Z, hasta llegar a F. éste paso se traduce como la segunda iteración en el Método Simplex, aportando la Tabla II, en la que se ha calculado el valor que corresponde al vértice F(8,0): Z = f(8,0) = 24.
Tabla II . Iteración nº 2
   32000
BaseCbP0P1P2P3P4P5
P30201/310-2/3
P402607/301-2/3
P13811/3001/3
Z 240-1001

Segundo paso del Método Gráfico
Sigue por la arista FH, hasta llegar a H, donde se para y despliega los datos de la Tabla III. En ésta tercera iteración se ha calculado el valor que corresponde al vértice H(6,6): Z = f(6,6) = 30.
Tabla III . Iteración nº 3
   32000
BaseCbP0P1P2P3P4P5
P2260130-2
P401200-714
P13610-101
Z 300030-1

Tercer paso del Método Gráfico
Se Continúa haciendo cálculos a través de la arista HG, hasta llegar al vértice G. Los datos que se reflejan son los de la Tabla IV, concluyendo con la misma y advirtiendo que ha terminado (comprobando antes que la solución no mejora al desplazarse por la arista GC).
Tabla IV . Iteración nº 4
   32000
BaseCbP0P1P2P3P4P5
P221201-1/200
P50300-7/401
P13310-3/400
Z 33005/400

Cuarto paso del Método Gráfico
El valor máximo de la función objetivo es 33, y corresponde a x = 3 e y = 12 (vértice G). Además, se puede comprobar que el valor de la función en el vértice C (0,14), no supera el valor 33.

metodo simplex

método del simplex fue creado en 1947 por el matemático George Dantzig .
El método del simplex se utiliza, sobre todo, para resolver problemas de programación lineal en los que intervienen tres o más variables.
El álgebra matricial y el proceso de eliminación de Gauss-Jordan para resolver un sistema de ecuaciones lineales constituyen la base del método simplex.


solcion grafica, sin solucion, infinitas soluciones,, unica

SOLUCION FACTIBLE
La elaboración de una mesa de centro requiere 6 horas de trabajo del artesano y los materiales cuestan 200 dólares, la fabricación de una mesa de  esquina requiere 5 horas y los materiales cuestan 100 dólares;  el artesano no piensa trabajar  mas de 40 horas semanales y sus recursos financieros le permiten pagar  hasta 2000 dólares de materiales semanalmente, si vende la misma cantidad de mesas que fabrica, y si la utilidad es de 240 dólares por mesa de centro y 160 dólares por mesa de esquina, cuantas mesas de centro y cuantas mesas de esquina debería fabricar y vender semanalmente para obtener el máximo e utilidad a la semana.
                                                  


Mesas de centro
Mesas de esquina

Horas de trabajo
6
5
valor
200
100
beneficio
240
160


VARIABLES
X1= numero de mesas de centro
X2=numero de mesas de esquina

FUNCION OBJETIVO
Z Max= 240 X1 + 160 X2

RESTRICCIONES
R.HORAS
6 x1 + 5 x2  < 40
R. US
200 X1 + 100 X2 < 1000
R. DE NO NEGATIVIDAD
X1; X2 > 0



SOLUCION GRAFICA
1.  6X1 + 5X2 <=  40
     6X1 + 5X2 = 40
X2= 40-6X1 /5           

X2= 8 – 6   X1
              5         0

2.  200X1 + 100X2 < 1000
     200X1 + 100 X2 = 1000
Para graficar tenemos que
SI X1 = 0                    100 X2 = 1000                       X2 = 10
SI X2 = 0                    200 X1 = 1000                       X1 = 5


3.  la restricción de no negatividad en el grafico es donde las dos vértices son positivas.

X2 = 1000 – 200 X1 /100
X2 = 10 – 2   X1 (E3)

IGUALAMOS (1) = (3)

8- 6/5 X1 = 10- 2 X1
2XI  - 6/5 = 10 – 8
0.8 X1 = 2



REMPLAZAMOS X1 EN CUALQUIERA DE LAS DOS ECUACIONES
X2 = 10 – 2 (2.5) = 5

REMPLAZANDO 1 EN LA FUNCION OBJETIVO
240 (0) + 160 (8) = 1280
REMPLANDO 2 EN LA FUNCION OBJETIVO
240 (2.5) + 160 (0 = 1400            ESTA ES LA SOLUCION OPTIMA
REMPLAZAQNDO 3 EN LA FUNCION OBJETIVO
240 (5) + 160 (0) = 1200
SIN SOLUCION

DE ACUERDO AL EJEMPLO ANTERIOR TOMAMOS LOS SIGUIENTES DATOS PARA OBTENER UN MODELO SIN SOLUCION.
Zmax=  10X+12Y
SUJETO A
RESTRICCIONES
R1= 2X+3Y<=1
R2=4X+6Y<=7
R.NO NEGATIVIDAD
X;Y>=0
R1=2X+3Y<=1
R1 =2X+3Y=1
Y=1/3-2X/3           SI X=0        Y=1/3
                               SI Y=0        X=1/2

R2=4X+6Y<=7
R2=4X+6Y=7
Y=7/6-2X/3          SI X=0         Y=7/6
                               SI Y=0         X=7/4


*de acuerdo al grafico que obtuvimos  ningún valor de las variables satisface las dos restricciones simultáneamente, es decir no existe ninguna solución factible, para este caso no es necesario buscar una solución optima, por q no podremos encontrar una solución factible.







(Y)
10
9
8
8
7          4X+6Y=7
6
5
4
3
2
1
       1      2       3       4       5       6       7       8       9       10           (X)

                        2X+3Y=1


       






miércoles, 9 de marzo de 2011

PROGRAMACION LINEAL

La Programación Lineal (PL) es una de las principales ramas de la Investigación Operativa. En esta categoría se consideran todos aquellos modelos de optimización donde las funciones que lo componen, es decir, función objetivo y restricciones, son funciones lineales en las variables de decisión.
Los modelos de Programación Lineal por su sencillez son frecuentemente usados para abordar una gran variedad de problemas de naturaleza real en ingeniería y ciencias sociales, lo que ha permitido a empresas y organizaciones importantes beneficios y ahorros asociados a su utilización.

MODELOS

Un modelo de Programación Lineal (PL) considera que las variables de decisión tienen un comportamiento lineal, tanto en la función objetivo como restricciones del problema. En este sentido, la Programación Lineal es una de las herramientas más utilizadas en la Investigación Operativa debido a que por su naturaleza se facilitan los cálculos y en general permite una buena aproximación de la realidad.
Los Modelos Matemáticos se dividen básicamente en Modelos Determistas (MD) o Modelos Estocásticos (ME). En el primer caso (MD) se considera que los parámetros asociados al modelo son conocidos con certeza absoluta, a diferencia de los Modelos Estocásticos, donde la totalidad o un subconjunto de los parámetros tienen una distribución de probabilidad asociada. Los cursos introductorios a la Investigación Operativa generalmente se enfocan sólo en Modelos Determistas.
Supuestos Básicos de la Programación Lineal: Linealidad, Modelos Deterministas, Variables reales, No Negatividad.
APLICACIONES
1. Problema de la Dieta: (Stigler, 1945). Consiste en determinar una dieta de manera eficiente, a partir de un conjunto dado de alimentos, de modo de satisfacer requerimientos nutricionales. La cantidad de alimentos a considerar, sus características nutricionales y los costos de éstos, permiten obtener diferentes variantes de este tipo de modelos. Por ejemplo:


Leche
(lt)
Legumbre
(1 porción)
Naranjas
(unidad)
Requerimientos
Nutricionales
Niacina
3,2
4,9
0,8
13
Tiamina
1,12
1,3
0,19
15
Vitamina C
32
0
93
45
Costo
2
0,2
0,25


  • Variables de Decisión:
  • X1: Litros de Leche utilizados en la Dieta
  • X2: Porciones de Legumbres utilizadas en la Dieta
  • X3: Unidades de Naranjas utilizadas en la Dieta
Función Objetivo: (Minimizar los Costos de la Dieta) Min 2X1 + 0,2X2 + 0,25X3
Restricciones: Satisfacer los requerimientos nutricionales
  • Niacina: 3,2X1 + 4,9X2 + 0,8X3 >= 13
  • Tiamina: 1,12X1 + 1,3X2 + 0,19X3 >=15
  • Vitamina C: 32X1 + 0X2 + 93X3 >= 45
  • No Negatividad: X1>=0; X2>=0; X3>=0
2. Problema de Dimensionamiento de Lotes: (Wagner y Whitin, 1958). Consiste en hallar una polìtica óptima de producción para satisfacer demandas fluctuantes en el tiempo, de modo de minimizar los costos de producción e inventario, considerando la disponibilidad de recursos escasos.
Considere que una fabrica puede elaborar hasta 150 unidades en cada uno de los 4 periodos en que se ha subdividido el horizonte de planificación y se tiene adicionalmente la siguiente información:

Periodos
Demandas
(unidades)
Costo Prod.
(US$/unidad)
Costo de Inventario
(US$/unidad)
1
130
6
2
2
80
4
1
3
125
8
2.5
4
195
9
3

Adicionalmente considere que se dispone de un Inventario Inicial de 15 unidades y no se acepta demanda pendiente o faltante, es decir, se debe satisfacer toda la demanda del período.
    Variables de Decisión:
  • Xt: Unidades elaboradas en el período t (Con t =1,2,3,4)
  • It: Unidades en inventario al final del período t (Con t =1,2,3,4)
Función Objetivo: (Minimizar los Costos de Producción e Inventarios) Min 6X1 + 4X2 + 8X3 + 9X4 + 2I1 + 1I2 + 2,5I3+ 3I4
Restricciones:
  • Capacidad de Producción por Período: Xt <= 150 (Con t =1,2,3,4)
  • Satisfacer Demanda Período 1: X1 + I0 - I1 = 130 (I0 = 15)
  • Satisfacer Demanda Período 2: X2 + I1 - I2 = 80
  • Satisfacer Demanda Período 3: X3 + I2 - I3 = 125
  • Satisfacer Demanda Período 4: X4 + I3 - I4 = 195
  • No Negatividad: Xt >=0, It >=0
Solución Óptima utilizando Solver de MS Excel : X1=115, X2=150, X3=100, X4=150, I1=0, I2=70, I3=45, I4=0. Valor Óptimo V(P)=3.622,5


SOLUCION GRAFICA
El análisis gráfico es una alternativa eficiente para enfrentar la resolución de modelos de Programación Lineal en 2 variables, donde el dominio de puntos factibles (en caso de existir) se encontrará en el primer cuadrante, como producto de la intersección de las distintas restricciones del problema lineal.
Una de las propiedades básicas de un modelo de Programación Lineal que admite solución, es que ésta se encontrará en el vértice o frontera (tramo) del dominio de puntos factibles. Es decir, si luego de gráficar el dominio y evaluar los distintos vértices de modo de elegir "el mejor" candidato según sea nuestro caso (el valor de la función objetivo será la que nos permitirá discriminar cual es el mejor candidato dependiendo si estamos maximizando o minimizando).
Consideremos un Ejemplo Introductorio en 2 variables:
  • D) MIN 8X + 6Y
  • S.A. 2X + Y >= 10
  • ...... .2X + 2Y >= 16
  • ..... ..X>= 0, Y>= 0
Comentario: Nótese que corresponde al Problema Dual de P) cuya resolución se presenta en nuestro sitio como ejemplo introductorio en la utilización de Solver de MS Excel. Para ver el detalle de la resolución gráfica de P) Para resolver el problema D) graficamos el dominio de puntos factibles y las curvas de nivel asociadas a la función objetivo:
El área achurada en color verde representa el dominio de puntos factibles del problema D), es decir, son las distintas combinaciones de valores que pueden adoptar las variables de decisión que satisfacen las restricciones del problema. Cabe destacar que esto corresponde a un dominio no acotado, lo que no implica que el problema no tenga solución.
Por otra parte sabemos que el óptimo de un problema lineal se encuentra en un vértice o frontera del dominio de puntos factibles. En este caso tenemos 3 vértices candidatos al óptimo los cuales se señalan con flecha blanca y azul. El vértice (X,Y)= (0,10) con V(P)=60; (X,Y)=(2,6) con V(P)=52 y (X,Y)=(8,0) con V(P)=64. El mínimo valor para la función objetivo se alcanza en (X,Y)=(2,6) con V(P)=52, el cual resulta ser la Solución Óptima de D). Sin embargo, una forma más eficiente para obtener el óptimo que no implique evaluar cada vértice en la función objetivo, es desplazando las curvas de nivel de la función objetivo en la dirección del máximo decrecimiento (en el caso de un problema de minimización). Para un problema de minimización, el mayor decrecimiento se alcanza en la dirección del vector " - Gradiente F(X,Y)", en nuestro caso el vector con dirección (-8,-6) (dirección representada por flecha roja). Luego, el óptimo se alcanza en el último punto donde las curvas de nivel intersectan al dominio de puntos factibles en la dirección del máximo decrecimiento, cuya solución obviamente corresponde a (X,Y)=(2,6) con V(P)=52.

ANÁLISIS DE SENSIBILIDAD GRÁFICO PARA 2 RESTRICCIONES
Una vez resuelto un modelo de Programación Lineal resulta útil hacer un análisis de sensibilidad que permita identificar cómo afecta en los resultados del problema variaciaciones en los parametros de éste, sin que esto pase por resolver el problema nuevamente.

1. Variación en los Coeficientes de la Función Objetivo: La pregunta que buscamos responder es cuál es el intervalo de variación para los coeficientes de la función objetivo (cada coeficiente se analiza por separado) que mantiene la actual Solución Óptima.
Un primer acercamiento es considerar las pendientes de las restricciones activas en el óptimo, es decir, aquellas restricciones que se cumplen en igualdad (en nuestro caso restricción 1 y 2). La restricción 1 (2X + Y >=10) tiene pendiente -2. La restricción 2 (2X + 2Y >=16) tiene pendiente -1. Por otra parte la pendiente de la función objetivo dado C1=8 y C2=6 es -4/3.
En consecuencia, se mantiene la actual Solución Óptima si la pendiente de la función objetivo (curvas de nivel) varían en el intervalo de las pendientes de las actuales restricciones activas. Esto es:
-2 <= -C1/C2 <= -1 (Multiplicamos por -1)
2 >= C1/C2 >= 1
Si fijamos C2=6.
2 >= C1/6 >= 1
12 >= C1 >= 6 (Garantiza la actual Solución Óptima con C2 fijo)
Si fijamos C1=8.
2 >= 8/C2 >= 1
8 >= C2 >= 4 (Garantiza la actual Solución Óptima con C1 fijo)
Nótese que en los extremos de los intervalos además de incluir la actual Solución Óptima se consideran nuevas combinaciones del dominio que mantienen el Valor Óptimo y también son Solución Óptima de D). Esta situación determina que el problema tiene infinitas soluciones óptimas.

2. Variación en los lados derechos de las restricciones (cálculo del "precio sombra"): Una pregunta común en el análisis de sensibilidad resulta ver el impacto que tiene en el valor óptimo una variación marginal del lado derecho de alguna de sus restricciones (tanto aumento o decrecimiento). El impacto en el valor óptimo por unidad de variación del lado derecho de una restricción (manteniendo el resto constante) es el precio sombra asociado a dicha restricción. En nuestro ejemplo, considere que el lado derecho de la restricción 1 (actualmente b1=10) corresponde a un recurso escaso (ejemplo: horas hombre, dinero, tiempo, etc). Si sabemos que el actual valor óptimo V(P)=52, quisieramos saber por ejemplo, cuánto aumentaría el valor óptimo se dispusiéramos de una unidad adicional del recurso escaso (es decir, pasando a b1*=11). En forma equivalente frecuentemente se plantea esta inquietud como ¿Cuánto es lo máximo que se estaría dispuesto a pagar por unidad adicional del recurso asociado a la primera restricción?. Este valor corresponde al precio sombra.
Precio Sombra Restricción 1: Primero se considera el desplazamiento paralelo de la Restricción 1 (tanto en el sentido de crecimiento o decrecimiento del lado derecho), de modo que la Solución Óptima se siga encontrando con las actuales restricciones activas (en nuestro caso R1 y R2). Por ejemplo, desplazando R1 en la dirección de su decrecimiento, el último punto donde se intersecta R1 con R2 sería en el par ordenado (X,Y)=(0,8). Se propone al usuario el cálculo de la máxima variación para R1 que se produce en (X,Y)=(8,0).
En consecuencia, el Precio Sombra asociado a la Restricción 1 queda dado por:
Un Precio Sombra igual a 2 indica por ejemplo que si el lado derecho aumenta en 1 unidad, el beneficio adicional (incremento en el Valor Óptimo) es de 2 unidades. Adicionalmente, una pregunta frecuente resulta en identificar el intervalo de variación donde el precio sombra calculado es válido. El máximo valor al que puede adoptar el lado derecho de R1 es b1*, de modo que la nueva solución se siga encontrando con R1 y R2 activas. El valor de b1* se obtiene al evaluar (X,Y)=(8,0) en la Restricción 1: 2*(8) + 1*(0)=16. Siguiendo similar razonamiento el mínimo valor que puede alcanzar el lado derecho de R1 es b1, que evaluado en (X,Y)=(0,8) en R1 se obtiene: 2*(0) + 1*(8)=8.
ANÁLISIS DE SENSIBILIDAD GRÁFICO PARA 3 RESTRICCIONES
La metodología y conceptos presentados para el caso de 2 restricciones no difiere, sin embargo, hay que tener especial cuidado cómo la inclusión de una tercera restricción afecta el análisis. Veamos el siguiente ejemplo:
  • P) MAX 4X + 3Y
  • S.A. 6X + 2Y <= 120
  • ...... .1X + 4Y <= 100
  • ........5X + 5Y <= 150
  • ..... ..X>= 0, Y>= 0
La resolución gráfica de este ejemplo permite obtener la solución óptima X=15, Y=15 con valor óptimo V(P)=105, tal como se observa en el gráfico a continuación:
Antes de proceder con el análisis de sensibilidad es conveniente verificar si las actuales restricciones del problema estan activas en el óptimo, es decir, si se cumplen en igualdad:
  • R1: 6*(15) + 2*(15) = 120 => R1 es una restricción activa
  • R2: 1*(15) + 4*(15) < 100 => R2 no es una restricción activa
  • R3: 5*(15) + 5*(15) = 150 => R3 es una restricción activa
En el caso que el lado derecho de la restricción sea un recurso, resulta lógico tener una disposición a pagar por unidad adicional en la medida que dicho recurso se este ocupando a máxima capacidad. En consecuencia, una restricción no activa tiene por definición un precio sombra igual a cero (caso de R2) ya que un aumento del lado derecho no aumentará el valor óptimo actual V(P)=150. Sin embargo, sólo en casos muy particulares podemos encontrar restricciones activas con precio sombra (o costo reducido) igual a cero, lo que es más la excepción que la regla.
Luego de esta introducción veamos el cálculo del precio sombra o costo reducido para la restricción 1 (R1). Primero, debemos desplazar en forma paralela la restricción 1 hasta el punto máximo donde la solución óptima se siga encontrando con las actuales restricciones activas R1 y R3. Dicho punto es (X,Y)=(30,0). Posteriormente, desplazamos en forma paralela la restricción 1 (R1) hasta el punto mínimo donde la solución óptima se siga encontrando con las actuales restricciones activas R1 y R3. Nótese que este desplazamiento queda acotado hasta el punto donde la restricción 2 (R2) se vuelve activa, que corresponde al punto (X,Y)=(6,666, 23,333) como se muestra en la siguiente gráfica:
Por consiguiente, el precio sombra asociado a la restricción 1 queda dado por: