You are on page 1of 3

PROBLEMAS RESUELTOS CON WINQSB

El Winqsb es un software informtica muy utilizado para construir modelos matemticos que permita tomar decisiones
especficamente en el rea de administracin y economa entre mucha de sus utilidades tenemos un modulo de
programacin lineal otro de programacin no lineal , rbol de decisiones, inventarios , el mtodo de la ruta critica (CPM )
y el diagrama PERT entre otras aplicaciones.
El presente manual se elaboro para ser utilizado por los alumnos de la Facultad de Administracin y Turismo de la
Universidad Enrique Guzmn y Valle el manual es breve y ser detallado al culminar el curso

TEMA: PROGRAMACION LINEAL


INGRESAR AL MODULO DE PROGRAMACION LINEAL
Para ver el grfico seleccione la opcin "Descargar" del men superior
1. El Primer paso es dar click en el botn inicio de Windows posteriormente seleccionar programas desplazarse
hasta Winqsb encontrara mdulos de :
Planificacin.
Anlisis de Decisin .
Programacin Dinmica
Proyeccin y Lneas de Regresin
Teora de inventarios
Grficos PERT Y CPM
Programacin Lineal y No Lineal
2. Para ingresar al modulo de programacin lineal deber dar click en Inicio Programas Winqsb Seleccionar
(Linear and integer-Programing) es decir programacin lineal
VENTANA DE PRESENTACION DEL MODULO PROGRAMACION LINEAL
COMO INGRESAR UN PROBLEMA NUEVO DE PROGRAMACION LINEAL
Para ver el grfico seleccione la opcin "Descargar" del men superior
Primero en el Men del modulo de programacin lineal elegir File (Archivo) Luego elegir
Sub men New Problem ( Nuevo Problema)
Para ver el grfico seleccione la opcin "Descargar" del men superior
Aparecer el cuadro de dialogo Problem Especificacin ( Especificar detalles del problema ) como sabemos todo
problema de programacin lineal contiene una funcin objetivo a maximizar o minimizar , un conjunto de restricciones y
condiciones de no negatividad
Bien en la casilla
Problem Title : Ingresamos nombre del problema nuestro primer caso ser el ejemplo desarrollado en clase cuyo nombre
es problema de la dieta .
Numbre of variables : Se refiere al numero de variables del problema de programacin lineal en este caso el nro. de
variables es X1 Y X2 en este caso el numero de variables es 2 lo ingresamos a la casilla
Objetive Criterion : Solicita si el problema se va a maximizar o minimizar en el caso del problema de la dieta se
minimiza costos seleccionar botn de opcin Minimization ( Minimizacion )
Default Variable Type : Elegir Nonnegative continuous ( Condiciones de no negatividad )
Number of Constrains : Se digita el numero de restricciones en el caso del problema presenta tres restricciones
Dar click en el boton OK DE Problem Specification aparecer la siguiente pantalla donde se ingresara el problema de
programacin lineal
Minimizar

C = 0.6X 1+ X2

Sujeto a : En X 1 se ingresa los valores correspondientes a X1tanto de la funcin objetivo como de las restricciones 0.6
para la funcin objetivo 10,5,2 para las restricciones
En X2 se ingresan los valores correspondientes a x2 tanto de la funcin objetivo como de las restricciones 4, 5 ,6 .
Luego se ingresa las restricciones en la casilla RHS 20,20,12
Para ver el grfico seleccione la opcin "Descargar" del men superior
SOLUCIONAR EL PROBLEMA DE PROGRAMACION LINEAL
Elegir men Solve the Problem ( Solucionar el Problema )
Para ver el grfico seleccione la opcin "Descargar" del men superior
Dar Click y aparecer la solucin del problema de la dieta con la solucin optima para X1 = 3 Y X2 = 1 tal como se calculo
algebraicamente en clase el resultado de la funcin objetivo a minimizar es 2.8 resulta de reemplazar los valores ptimos
en la funcin objetivo
Para ver el grfico seleccione la opcin "Descargar" del men superior
METODO GRAFICO
El problema de Programacin Lineal puede ser solucionado por el mtodo grfico para el calculo se elige :
1. Men Solve and Analize
2. Elegir Sub- Men Graphic Method
3. Dar Click
Para ver el grfico seleccione la opcin "Descargar" del men superior
Entonces aparecer la siguiente caja de dialogo
Dar click en Ok de la caja de dialogo ( Select Variables for Graphic Method )
Para ver el grfico seleccione la opcin "Descargar" del men superior
Inmediatamente aparecer la solucin grfica del problema de programacin lineal de la dieta Observamos que los puntos
ptimos son X1 =3 y X2= 1 y el valor de la funcin objetivo es 2.8 es decir el costo es mnimo exactamente en 2.80 En el
grfico observamos la funcin Objetivo las ecuaciones de las restricciones y la regin factible .
Para ver el grfico seleccione la opcin Descargar trabajo del men superior

Solucin usando Programacin Dinmica


El problema consiste en maximizar Pi*Si (i{1..n}) con la restriccin Pi*Si <= D (i{1..n}), donde Pi
{0,1} dice si se ha seleccionado (1) o no (0) el programa i.
Para resolver el problema se define una funcin
espacio(i, j) = mximo espacio que podemos ocupar en un disco de
capacidad mxima j
considerando los programas del 1 al i.
Se calcula esta funcin mediante una recurrencia que va a tener en cuenta las distintas posibilidades. Se
considera primero el programa i. Habr dos posibilidades:
1. Que no se pueda meter el programa i porque su tamao supera la capacidad que todava se puede
aadir al disco, en cuyo caso se tendr que llenar el disco con los objetos restantes, del 1 al i-1.
2. Que s se pueda meter, en cuyo caso se plantean dos opciones:
1. No lo incluimos, y seguimos probando con el resto de programas, o
2. S lo incluimos, obteniendo un espacio Si, y llenamos el resto del disco(j - Si) con el resto
de los programas.
Como se est tratando de maximizar el espacio utilizado en el disco, se elegir la posibilidad de mayor valor.
Se puede definir de forma recursiva la funcin espacio al cumplirse el principio de optimalidad, de forma que
basta considerar solamente soluciones ptimas para los subproblemas. As pues se tiene la siguiente
recurrencia (ei es el espacio que ocupa el programa i):
espacio(i, j) = espacio(i 1, j)
si ei > j
espacio(i, j) = mx{espacio(i 1, j), espacio(i 1, j - ei) + ei}
si ei <= j
donde 1 <= i <= n y 1 <= j <= D, y la recursin est bien fundada porque uno o los dos argumentos decrecen
estrictamente.
Los casos bsicos se presentan, bien cuando no se tiene programas que considerar, o bien cuando no queda
espacio en el disco. En ambos casos el nico espacio posible es 0:

espacio(0, j) = 0
1 <= j <= D
espacio(i, 0) = 0
0 <= i <= n
Se van a calcular los valores de espacio(i, j) con ayuda de una tabla espacio[0..n, 0..M]. Para calcular la
posicin espacio[i, j] se necesita haber calculado dos posiciones de la fila anterior (i - 1). Se puede recorrer la
matriz por filas de arriba abajo y cada fila de izquierda a derecha (o de derecha a izquierda). Al terminar de
rellenar la matriz, espacio[n, D] contendr el espacio ocupado de la solucin ptima.
Implementacin en pseudocdigo
Fun maximizar_espacio_ocupado(prog[1..n] de nat, D: nat) dev <ocup:nat,
cuales[1..n] de 0..1>
Var disco[0..n, 0..D] de nat
{Inicializacin de la matriz}
para i = 0 hasta n hacer
disco[i, 0] = 0
fpara
para j = 1 hasta D hacer
disco[0, j] = 0
fpara
{Rellenar la matriz}
para i = 1 hasta n hacer
para j = 1 hasta D hacer
si prog[i] > j entonces
disco[i, j] = disco[i - 1, j]
si no
disco[i, j] = mx{disco[i - 1, j], disco[i
- 1, j prog[i]] + prog[i]}
fsi
fpara
fpara
ocup = disco[n, D]; {solucin del problema}
{Clculo de los programas que forman parte de la solucin}
resto = D;
para i = n hasta 1 paso -1 hacer
si espacio[i, resto] = espacio[i 1, resto] entonces
{no se coge el programa i}
cuales[i] = 0
si no
cuales[i] := 1;
resto := resto prog[i]
fsi
fpara
ffun

You might also like