Anda di halaman 1dari 14

UNIVERSIDAD NACIONAL DE SAN

AGUSTN DE AREQUIPA
FACULTAD DE INGENIERA DE PRODUCCIN
Y SERVICIOS
Escuela Profesional de Ingeniera Industrial

GUA DE PRCTICAS

INVESTIGACION OPERATIVA 1

Autores:
Ing. Efran Rafael Murillo Quispe

AREQUIPA PERU

2013

Sesin

LINDO
WINQSB

I
OBJETIVOS

Conocer y aplicar el LINDO, como herramienta de solucin de problemas de programacin


lineal.
Conocer y aplicar el WINQSB, como herramienta de solucin de problemas de
programacin lineal.
Conocer los principales conceptos de Investigacin operativa y Programacin lineal.
Plantear problemas de programacin lineal.

II
TEMAS A TRATAR

Concepto LINDO.
Uso del LINDO para solucionar problemas de Programacin Lineal.
Concepto WINQSB.
Uso del WINQSB para solucionar problemas de Programacin Lineal.
Conceptos generales.
Planteamiento de problemas.

III
MARCO TEORICO
INVESTIGACIN OPERATIVA
La investigacin operativa es un conjunto de tcnicas matemticas, que sirven para modelar y
analizar problemas de decisin.

PROGRAMACIN LINEAL
Tcnica de modelado matemtico diseada para optimizar el empleo de recursos limitados.
Todo problema de programacin lineal tiene tres elementos bsicos en su modelado o
planteamiento:
(1)
Variables de decisin, que es lo que se va a determinar.
(2)
Objetivo o meta, lo que se trata de optimizar.
(3)
Las restricciones o limitaciones que se deben satisfacer.

1. Solucin mediante el Software WinQSB.


WinQSB es un sistema interactivo de ayuda a la toma de decisiones que contiene herramientas
muy tiles para resolver distintos tipos de problemas en el campo de la investigacin operativa.
El sistema est formado por distintos mdulos, uno para cada tipo de modelo o problema. Entre
ellos destacaremos los siguientes:

Linear programming (LP) and integer linear programming (ILP): este mdulo incluye
los programas necesarios para resolver el problema de programacin lineal grficamente o
utilizando el algoritmo del Simplex; tambin permite resolver los problemas de
programacin lineal entera utilizando el procedimiento de Ramificacin y Acotacin
(Branch&Bound).

Linear goal programming (GP) and integer linear goal programming (IGP): resuelve
modelos de programacin multiobjetivo con restricciones lineales.

Quadratic programming (QP) and integer quadratic programming (IQP): resuelve el


problema de programacin cuadrtica, es decir, problemas con funcin objetivo cuadrtica y
restricciones lineales. Utiliza un mtodo Simplex adaptado. Los modelos de IQP los
resuelve utilizando algoritmos de ramificacin y acotacin.

Network modeling (NET): incluye programas especficos para resolver el problema del
transbordo, el problema del transporte, el de asignacin, el problema del camino ms corto,
flujo mximo, rbol generador, y problema del agente viajero.

Nonlinear programming (NLP): permite resolver problemas no lineales irrestringidos


utilizando mtodos de bsqueda lineal, y problemas no lineales con restricciones utilizando
el mtodo SUMT (funcin objetivo con penalizaciones sobre el incumplimiento de las
restricciones).

PERT/CPM: mdulo de gestin de proyectos en los que hay que realizar varias actividades
con relaciones de precedencia.

A cada uno de estos mdulos se accede directamente desde la entrada a WinQSB en el men
principal, seleccionando respectivamente la opcin respectiva.
1.1 CREANDO UN NUEVO PROBLEMA DE PROGRAMACIN LINEAL O ENTERA
Para resolver problemas de programacin Lineal o Entera seleccionamos la siguiente opcin:

Luego la opcin Nuevo Problema (New Problem) genera una plantilla en el cual se introducirn
las caractersticas de nuestro problema:

A continuacin se describirn cada una de las casillas de esta ventana:

Ttulo del problema (Problem Title): Se escribe el ttulo con que identificamos el
problema.
Nmero de variables (Number of Variables): Se escribe la cantidad de variables con
que cuenta el sistema en el modelo original.
Nmero de restricciones (Number of Constraints): Se anotan la cantidad de
restricciones con que cuenta el modelo (no se debe contar la restriccin de no
negatividad).
Objetivo (Objective Criterion): Los problemas de programacin lineal y entera se
clasifican en dos: problemas de Maximizacin (Maximization) y Minimizacin
(Minimization).
Formato de entrada de datos (Data Entry Format): Permite elegir entre dos plantillas
distintas para introducir los datos del modelo. La primera alternativa se asemeja a una
hoja de clculo, mientras que la segunda, es una plantilla diseada especialmente para
este fin.
Tipo de variable (Default Variable Type): En esta parte se indica las caractersticas del
modelo:
Continuas no negativas (Nonnegative continuous): Indica que el modelo lo
componen variables continuas no negativas (iguales o mayores a cero).
Enteras no negativas (Nonnegative Integer): Variables enteras no negativas.
Binarias (Binary): Variables cuyo valor solo sern 0 o 1.
Sin asignar / Irrestrictas (Unsigned/unrestricted): Variables irrestrictas.

1.2 UN PROBLEMA EJEMPLO


Mediante un ejemplo demostraremos como se introducen los datos para la creacin de un nuevo
problema de programacin lineal.
ENUNCIADO
Una Empresa industrial produce 4 modelos de Teclados cada uno de los cuales es tratado en los
departamentos de ensamblado y acabado. El nmero de horas hombre de mano de obra
necesaria, por teclado en cada departamento es:
Ensamblado
Acabado

Modelo1 Modelo2 Modelo3 Modelo4


4
10
7
10
1
1
3
4

Se dispone de 6000 horas hombre en el departamento de ensamblado y de 4000 en el de


acabado en los prximos 6 meses. Las utilidades en dlares para cada modelo de teclado son:
2.2, 5, 3 y 4 respectivamente para los teclados 1, 2, 3 y 4.

Existen restricciones de producir al menos 100 unidades del modelo 2, a lo ms 200 unidades
del modelo 3 y a lo ms 250 unidades del modelo 4. La produccin del modelo 1 es irrestricta.
Sea X1, X2, X3 y X4 las variables del problema que representan el nmero de teclados modelo
1, 2, 3 y 4 respectivamente a producir los prximos 6 meses.
Determine la cantidad debe producir el fabricante de cada modelo, de manera que las utilidades
sean las mximas.
Una vez analizado el enunciado el lector proceder a crear el modelo matemtico.
MODELO MATEMTICO
Funcin Objetivo:
Max Z = $2.2X1+$5X2+$3X3+$4X4
Restricciones (St)
4X1+10X2+7X3+10X4<=6000 Hrs. Hombre de Ensamblado
X1+X2+3X3+4X4<=4000 Hrs. Hombre de Acabado
X2>=100 Demanda mnima del producto 2
X3<=200 Demanda Mxima del producto 3
X4<=250 Demanda Mxima del producto 4
X1,X2,X3,X4>=0
Podemos ver claramente que estamos ante un problema de Maximizacin, con cinco
restricciones y cuatro variables (las cuales trabajaremos como variables continuas de tipo No
Negativas).
Teniendo claro esto, se alimenta el programa desde la ventana Nuevo Problema (New
Problem):

Una vez llenados todos los campos pulsamos el botn OK, generando nuevas opciones dentro
del programa.
1.3 INGRESANDO EL MODELO
Si se escogi por la plantilla tipo hoja de calculo (Spreadsheet Matrix Form), se mostrar una
nueva ventana dentro de la ZONA DE TRABAJO, la cual servir para introducir el modelo
matemtico.

La primera fila (Variable -->) corresponde a los encabezados de las variables (en gris) definidas
automticamente por el sistema como X1, X2, X3 y X4 (son las tres variables del ejemplo),
seguido por el operador de relacin (Direction) y la solucin de las restricciones o Lado de la
mano derecha (Right Hand Side -R.H.S.). El nombre de las variables se puede cambiar
accediendo al submen Nombre de variables (Variables Names) del men Editar (Edit).

La segunda fila (Maximize) permite introducir los coeficientes de la funcin objetivo. Luego
aparecen una serie de filas identificadas por la letra C y un consecutivo, las cuales corresponden
a la cantidad de restricciones con que cuenta el modelo:

Por ltimo aparecen tres filas donde definimos el valor mnimo aceptado por cada variable
(Lower Bound), el valor mximo (Upper Bound) y el tipo de variable (Variable Type). En el
caso del valor mximo, M significa que la variable podr recibir valores muy grandes
(tendientes a infinito).
1.4 EL MODELO DE EJEMPLO
Para ingresar nuestro modelo propuesto en el ejemplo, el primer paso es llenar la segunda fila
con los coeficientes de la funcin objetivo:

Se sigue con las restricciones C1, C2, C3, C4 y C5:

Usted podr cambiar los operadores de relacin pulsando dos veces seguidas sobre ellos con el
botn izquierdo del Mouse. Las otras filas se mantienen iguales.
1.5 RESOLVIENDO UN PROBLEMA
Cuando haya terminado de ingresar el modelo en la plantilla, podr utilizar las herramientas que
provee el men Resolver y Analizar (Solve and Analyze).
Este men cuenta con las siguientes opciones:

Resolver el problema (Solve the Problem): Resuelve el problema mediante el mtodo


Simplex Primal. Muestra la solucin final completa.
Resolver y mostrar los pasos (Solve and Display Steps): Muestra cada uno de los pasos
o las interacciones realizadas por el Simplex hasta llegar a la solucin ptima.
Mtodo Grfico (Graphic Method): Resuelve el problema de programacin lineal
mediante el mtodo grfico (para problemas que trabajan con dos variables).

1.6 RESOLVIENDO EL PROBLEMA EJEMPLO


Seleccionamos la primera opcin del men Resolver y Analizar (Solve and Analyze), donde se
mostrar una pequea ventana con el mensaje El problema ha sido resuelto. La solucin
ptima ha sido lograda.

Pulsamos el botn ACEPTAR y automticamente el programa generar la solucin optima.

1.7 ENTENDIENDO LA MATRIZ FINAL


Esta matriz presenta suficiente informacin sobre el modelo resuelto. La primera parte
(Solution Summary) corresponde al anlisis de las variables definidas (X1, X2, X3 y X4).

La columna Valores de la solucin (Solution Value) presenta los valores ptimos encontrados.
En este ejemplo se tiene que X1 es 1250 unidades, X2 es 100 unidades X3 y X4 es 0 unidades.
La columna Costo o Utilidad Unitaria (Unit Cost or Profit) muestra los coeficientes de la
funcin objetivo para cada variable.
La columna Contribucin Total (Total Contribution) representa el costo o utilidad generado por
cada variable. Por ejemplo, si el valor de la variable X2 es 100 unidades y la utilidad unitaria es
$5, el beneficio total resultar de la multiplicacin de ambos valores dando como resultado
$500. Justo debajo de la ltima contribucin aparece el valor de Z ptimo ($3250).
La columna Costo Reducido (Reduced Cost) identifica el costo que genera incrementar una
unidad para cada variable no bsica. La siguiente columna llamada Estatus de la Variable
(Basis Status) muestra si una variable es bsica (Basic) o no (at bound).
La siguiente parte de la matriz final (Constraint Summary), presenta las variables de holgura
del sistema (C1, C2, C3, C4 y C5).

La columna Lado de la mano derecha (Left Hand Side) muestra el valor alcanzado al
reemplazar los valores de X1, X2, X3 y X4 en cada restriccin (recuerde que cada restriccin se
identifica con su variable de holgura).
Las dos columnas siguientes (Direction y Right Hand Side) muestran las especificaciones
dadas a las restricciones en cuanto al operador de relacin ( o ) y los valores originales de las
restricciones (6000, 4000, 100, 200 y 250).
La columna Dficit o Supervit (Slack or Surplus) muestran los valores de las variables de
holgura y la columna Precios Sombras (Shadow Price) corresponde a los precios sombras o
precios duales; cunto se estara dispuesto a pagar por una unidad adicional de cada recurso.
1.8 LA OPCIN IMPRIMIR
Cada ventana mostrada puede ser impresa mediante la opcin Imprimir (Print) que se encuentra
en el men Archivo (File) o mediante el botn

desplegado en la barra de herramientas.

1.9 GUARDANDO UN PROBLEMA


Si quiere acceder a un problema posteriormente simplemente seleccione la opcin Salvar como
(Save As) o pulsando sobre el botn

2. Solucin mediante el Software LINDO 6.0


LINDO (Linear Interactive and Discrete Optimizar)
Es un paquete para computadora de fcil uso, trabaja en entorno WINDOWS, y mediante el cual
se puede resolver problemas de programacin lineal, entera y binaria, fue creada en 1986 por
Linus Schrage.
Programacin lineal en LINDO
Para resolver un problema de programacin lineal en LINDO, asegrese que la pantalla tenga
una ventana, o rea de trabajo, vaca, con Untitled en la parte superior del rea de trabajo. Si
es necesario se abre una nueva ventana mediante la seleccin de New (nuevo) en el men File
(archivo), o presionando el botn de New File (Nuevo archivo).
Utilizamos el editor de texto del LINDO, para editar el modelo matemtico, de la siguiente
manera:

Para resolver el modelo se procede de la siguiente manera:


* Seleccione la opcin Solve en el men Solve (Resolver).
* Cuando pregunte si usted desea el anlisis de sensibilidad, escoja por ahora no. Esto se
explicar ms adelante.
* Cuando este terminada la solucin, aparecer una pantalla que muestra el estado del
comando del Solve. Despus de revisar la informacin mostrada, seleccione Close (Cerrar).
* Ahora debe usted ver la informacin que introdujo en una ventana que se llama Reports
Window. De un clic en cualquier parte de esta ventana, y sus datos desaparecern del
primer plano. Desplcese hasta la parte superior de la ventana usando la flecha nica de la
parte derecha de la pantalla, y enseguida esta se ver con los siguientes resultados:
* Si desea el anlisis de sensibilidad, al solucionar el problema aparece la siguiente consulta:

Slo debe darle SI y aparecer la siguiente salida:

Interpretacin:
LP OPTIMUN FOUND AT STEP 2
Lo que seala que LINDO encontr la solucin ptima despus de dos iteraciones del algoritmo
simple.
OBJECTIVE FUNCTION VALUE 3250.000000
Indica que el valor de z ptimo es 3250.
VALUE
Da el valor de la variable en la solucin ptima del PL. Por lo tanto la solucin ptima le
recomienda producir 1250 unidades del modelo 1, 100 del modelo 2 y 0 unidades de los
modelos 3 y 4 (X1 = 1250, X2 = 100, X3 = 0 y X4 = 0)
SLACK OR SURPLUS
Proporciona el valor de holgura o excedente de los recursos en la solucin ptima. Por lo tanto,
representa el recurso no utilizado o excedente en la restriccin.
REDUCED COST
Proporciona el coeficiente de la variable en el regln cero del arreglo ptimo; el costo reducido
para las variables bsicas es cero. En el caso de una variable no bsica, el costo reducido es la

cantidad que decrece el valor de z ptimo. Esto quiere decir que si fuera forzado a producir una
unidad del modelo 3, la utilidad disminuira en 0.85 dlares y por una unidad del modelo 4, 1.5
dlares.

3. Utilizando el reporte del Software Lindo o WinQsb, podemos dar


respuesta a las siguientes inquietudes:
a) La utilidad mxima de la empresa. Qu cantidad se debe producir de cada modelo?
Respuestas:
Z= 3250 dlares
X1= 1250 unidades del modelo 1
X2=100 unidades del modelo 2
X3=0 unidades del modelo 3
X4=0 unidades del modelo 4
b) La holgura o exceso de las horas de ensamblado y de acabado.
Respuestas:
No hay horas ociosas de ensamblado
Hay 2650 horas ociosas de acabado.
c) Cuntas horas de ensamblado y cuntas horas de acabado se utilizan en la produccin
del modelo 1?, Cuntas horas de ensamblado y cuntas horas de acabado se emplea en
la produccin del modelo 2?
Respuestas:
Modelo 1: 4*1250= 5000 hrs. de ensamblado
1*1250= 1250 hrs. de acabado
Modelo 2: 10*100= 1000 hrs. de ensamblado
1*100= 100 hrs. de acabado

COMO HALLAR LOS RANGOS DE VARIACION DE LOS COEFICIENTES DE LA


FUNCION OBJETIVO
C1: Lmite superior= 2.2+infinito= infinito
Lmite inferior=2.2-0.2 = 2
C2: Lmite superior= 5+0.5=5.5
Lmite inferior=5- infinito= - infinito
Etc.
COMO HALLAR LOS RANGOS DE VARIACION DE LOS LADOS DERECHOS
LD1: Lmite superior= 6000+10600= 16600

Lmite inferior=6000-5000 = 1000


LD2: Lmite superior= 4000+infinito=infinito
Lmite inferior=4000-2650=1350
Etc.

(La prctica tiene una duracin de 02 horas)

IV
ACTIVIDADES

Para responder las inquietudes de cada problema, utilice el software lindo o WinQsb.

1.- Una empresa de produccin de muebles dispone de dos diferentes tipos de madera; tiene 1500
pies tabla del tipo A y 1000 del tipo B, tambin dispone de 800 horas-hombre para
efectuar el trabajo. La demanda semanal que ha estimado es la siguiente: cuando menos
40 mesas, 130 sillas, 30 escritorios y no ms de 10 libreros. Las cantidades de madera
Ay B, las horas-hombre que requiere la elaboracin de cada unidad de artculo y las
utilidades unitarias, estn indicadas en el siguiente cuadro:
Madera Horas
Artculo
A
B Hombre
Mesa
5
2
3
Silla
1
3
2
Escritorio
9
4
5
Librero
12
1
10
Disponibilidad semanal 1500 1000
800

Demanda
Utilidades
Estimada
por unidad
no menos de 40
$ 12
no menos de 130
5
no menos de 30
15
no ms de 10
10

Tomado el modelo matemtico mostrado abajo, resuelva y responda las siguientes inquietudes:
a)

Cul es la utilidad mxima?

b) Cunto se produce de cada artculo?


c)

Existe Horas Hombre ociosas?

MODELO MATEMTCIO:
Variables:
Xi: Nmero de unidades a producir semanalmente del artculo i
i=1,2,3,4 (1: Mesas, 2: Sillas, 3: Escritorios, 4: Libreros)
Max 12x1+5x2+15x3+10x4
St
5x1+x2+9x3+12x4<=1500
2x1+3x2+4x3+x4<=1000
3x1+2x2+5x3+10x4<=800
X1>=40
X2>=130
X3>=30
X4<=10
Xi>=0

Pies de Madera A
Pies de Madera B
horas hombre
demanda mnima de mesas
demanda mnima de sillas
demanda mnima de escritorios
demanda mxima de libreros

2.- Lupita est preocupada por su sobrepeso y el costo de la comida diaria, ella sabe que para bajar de
peso, debe consumir a lo ms 1350 Kcaloras, pero requiere un mnimo de 500 mgr. de vitamina A, 350
mgr. de Calcio, 200 mgr. de protenas y 150 mgr de minerales. Con los alimentos de la tabla siguiente,
formule el Modelo de Programacin Lineal que resuelva la dieta de Lupita.

Alimento
Leche
Huevo
Espinacas
Chancho
Pescado
Pastel

Porcin
1 taza
2 unidades
1 racin
2 chuletas
2 trozos
2 rebanadas

Vitam. A
105
75
100
25
150
30

Calcio
75
80
10
50
5

Protenas Minerales
50
35
50
15
125
78
55
100
50
8

Costo
S/. 1.0
S/. 0.7
S/. 0.5
S/. 4.0
S/. 2.0
S/. 1.5

Kcaloras
80
50
175
150
200

Utilizando el modelo matemtico mostrado abajo, resuelva las siguientes inquietudes:


a) Cuntas porciones de cada alimento deber consumir Lupita de manera ptima?
b) Cul ser el costo de la dieta de Lupita.
MODELO MATEMTCIO:
Variables:
Xi: porcin a consumir del alimento i
i=1,2,3,4,5,6 (1:Leche, 2:Huevo, 3:Espinacas, 4:chancho, 5:pescado, 6:pastel)
Min x1+0.7x2+0.5x3+4x4+2x5+1.5x6
St
80x1+50x2+175x4+150x5+200x6<=1350
105x1+75x2+100x3+25x4+150x5+30x6>=500
75x1+80x2+10x4+50x5+5x6>=350
50x1+50x2+125x3+55x4+100x5+8x6>=200
35x1+15x2+78x3+50x5>=150
xi>=0

mximo de caloras
mnimo de mgr de vitamina A
mnimo de mgr de calcio
mnimo de mgr de protena
mnimo de mgr de minerales

3.- La empresa XXX produce 2 artculos: cubiertas de carro y tolderas. Para la prxima
semana dispone de los siguientes suministros:
400 horas-hombre
1200 mts2 de lino
2700 mts2 de lona
600 horas-mquina
El precio de venta de las cubiertas de carro es de 150 soles y de las tolderas 500 soles.
Si para producir una cubierta de carro requiere 1 hora-hombre, 6 mts 2 de lino y 1 hora-mquina, y para
producir una toldera requiere 2 horas-hombre, 18 mts2 de lona y 1.5 horas-mquina.
Utilizando el modelo matemtico mostrado abajo, resuelva las siguientes inquietudes:
a) Cul es el plan de produccin que haga mximo el ingreso de la empresa.
b) Cul es la mxima utilidad alcanzada?

4.- Ozark Farms utiliza diariamente por lo menos 800 libras de alimento especial. El alimento
especial es una mezcla de maz y semilla de soya, con las siguientes composiciones:
Alimento para ganado
Maz
Semilla de soya

Libra x libra de alimento para ganado


Protenas
Fibra
Costo x libra
0.09
0.02
0.30
0.60
0.06
0.90

Los requerimientos dietticos diarios del alimento especial estipula por lo menos un 30% de
protenas y cuando mucho un 5% de fibra. Ozark Farms desea determinar el costo mnimo
diario de la mezcla de alimento. (TAHA)
a) Formule el modelo matemtico respectivo.
b) Determine la mezcla de alimentos que permita obtener el menor costo. Cual es el
costo?

5.- Un agricultor cultiva trigo y maz en sus tierras de 45 acres. Es capaz de vender cuando ms
140 toneladas de trigo y 120 toneladas de maz. Cada acre sembrado con trigo rinde 5 toneladas,
y cada acre sembrado con maz produce 4 toneladas. El trigo se vende en 30 dlares la tonelada
y el maz se vende en 50 dlares la tonelada. La cosecha de un acre con trigo requiere de 6 horas
de mano de obra, y la de u acre con maz consume 10 horas. Se puede comprar hasta 350 horas
de mano de obra a 10 dlares la hora. Determine la cantidad de acres de trigo y maz que debe
cultivar el agricultor con la finalidad de maximizar sus ganancias.

Anda mungkin juga menyukai