Академический Документы
Профессиональный Документы
Культура Документы
En la actualidad nuestra vida, el entorno está lleno de problemas que nos aquejan;
problemas además que son un obstáculo para el desarrollo de las empresas
específicamente, al momento de realizar cálculos que nos garanticen que el ritmo de
producción que viene llevando dichas empresas se está desarrollando de la mejor
manera. Es necesario para cumplir nuestro propósito de desarrollar de la mejor
manera la compañía o negocio al fin, realizar cálculos que con sus respectivas
restricciones nos lleven a obtener las cantidades ideales o aptas para el buen
rendimiento de dichas entidades.
LINGO es una herramienta matemática que resuelve una amplia gama de problemas
de optimización, lineales, no lineales y enteros, utilizando un lenguaje sencillo, lo que
lo convierte en un asistente ideal en la docencia. Junto con LINDO forma parte del
paquete SOLVER SUITE (manual de usuario, 1996).
Podemos decir que el objetivo de este trabajo es mostrar las posibilidades del
software en la docencia de la optimización matemática y no de servir de manual de
introducción al manejo de LINGO, se incluyen los conocimientos elementales
necesarios para empezar a trabajar con este paquete.
La mayor parte de las copias de LINGO vienen con sus preinstaladas licencias. Sin
embargo, ciertas versiones de LINGO requieren usted para entrar una llave de
licencia. Si su versión de LINGO requiere una licencia teclee, estará presente con la
caja de diálogos siguiente cuando usted empieza LINGO:
La sintaxis que se utiliza en este programa es muy sencilla. Para el nombre de las
Variables y otros identificadores se establece que pueden tener 32 caracteres
como Máximo, Deben comenzar con una letra seguido de letras, dígitos o _.
LINGO no distingue entre mayúsculas y minúsculas.
SETS:
FABRICAS /F1, F2/: CAPACIDAD;
CENTROS /C1, C2, C3/: DEMANDA;
RUTAS (FÁBRICAS, CENTROS): C, X;
ENDSETS
SECCION DE DATOS
Los valores de los atributos de los elementos de los conjuntos, tienen la sintaxis
siguiente:
DATA:
CAPACIDAD = 30, 20;
DEMANDA = 10, 25, 15;
C = 2, 4, 6,
7, 10, 1;
ENDDATA
Indica que se genere la restricción que sigue a los dos puntos para cada miembro
del conjunto que les precede. Cada elemento del conjunto CENTROS (J) para J =
1, 2,3 se genera las restricciones siguientes:
J = 1: X11 + X21 >= 10
J = 2: X12 + X22 >= 25
J=3 X13 + X23 >= 15
MODEL:
DATA:
CAPACIDAD = 30,20;
DEMANDA = 10, 25,15;
C = 2, 4, 6,
7,10, 1;
ENDDATA
! LA FUNCION OBJETIVO;
MIN = @SUM (RUTAS: C*X);
! RESTRICCIONES DE LA DEMANDA;
@FOR (CENTROS (J): @SUM (FABRICAS (I): X (I, J)) >= DEMANDA (J));
! RESTRICCIONES DE LA OFERTA;
@FOR (FABRICAS (I): @SUM (CENTROS (J): X (I, J)) <= CAPACIDAD (I));
END
MODEL:
END
Se puede omitir el paso anterior pasando a la solución del modelo haciendo clic en
LINGO, Solve obteniendo el siguiente resultado:
Objective value: 160.0000
2. OPERADORES LOGICOS
LINGO tiene nueve operadores lógicos:
NOT (no), EQ (igual), NE (no igual), GT (mayor que), GE (mayor igual), LT (menor
igual), LE (menor igual), AND (y) y OR (o) que se utilizan para comparar valores, la
forma de usar es: #operador#.
Los elementos del LINGO requieren un objetivo, una o más variables y una o más
restricciones. Las instrucciones del LINGO terminan con: (punto y coma).
Los comandos del menú edit permiten a usted ejecutar tareas básicas de edición
comunes a la mayoría de aplicaciones para Windows, así como efectuar varias
tareas que son exclusivas para LINGO.
COMANDOS EDIT:
Undo ctrl. + Z: Deshace la última acción.
Cut ctrl. + X: Corta el texto seleccionado en el portapapeles para pegarlo.
Copy ctrl. + C: Copia el texto seleccionado en el portapapeles para pegarlo.
Paste ctrl. + V: Inserta o pega el contenido del portapapeles en el punto de
inserción.
Clear delete : Borra el texto seleccionado pero no lo coloca en el
portapapeles.
COMANDOS LINGO:
Solve ctrl. + S: Envía el modelo que se encuentra en la ventana activa al
Solver de LINGO.
Solution ctrl. + O: Abre el cuadro de dialogo Solution Report Options
(opciones para mostrar la solución), el cual permite a usted especificar como
quiere que aparezca su solución.
Range ctrl. + R: Despliega un informe de intervalos, el cual le muestra dentro
de que valores usted puede cambiar valores coeficientes sin modificar los
valores óptimos.
Look ctrl.+ L: Despliega todo el modelo o las líneas seleccionadas.
Generate ctrl. + S: Crea otra versión del modelo actual en formato
algebraico de LINDO o MPS. Se puede usar para enumerar renglones y
desplegar el modelo en un formato más fácil de leer. El comando GEN
proporciona una capacidad similar desde la ventana de comandos.
Export to Spreadsheet ctrl. + E: Exporta valores de variables seleccionadas
a intervalos nombrados en una hoja de calculo.
2.2 FUNCIONES:
Entre estas funciones están @FPA (I, N), la cual da el valor presente de una
anualidad y la función @FPL (I, N), la cual regresa el valor presente de un valor
global de N periodos de $1 a partir de ahora si la tasa de interés es I por
periodo. I no es un porcentaje, sino un número no negativo que representa la
tasa de interés.
Solución:
Sea:
Xi: la cantidad de ingredientes del PRODUCTO i (i=airtex,extendex,resistex) que
se puede usar.
3
FUNCION OBJETIVO:
X*
i
1
ganacia
(i) ;donde ganancia es la utilidad ya
i
X
i
1
COMPROMISO
(
i
)i
X
*
i
1
ito
(i
,
j)
requerimen
inventario
(
j
)*
16
, donde requerimiento (i , j) es
SETS:
PRODUCTO/1..3/:NIVEL,COMPROMISO,GANANCIA;
INGREDIENTE/A..D/:INVENTARIO;
PROIN(PRODUCTO, INGREDIENTE):X;
ENDSETS
DATA:
COMPROMISO=1000,500,400;
GANANCIA=7,7,6;
INVENTARIO =500,425,650,1100;
X=4,2,4,6,
3,2,2,9,
6,3,5,2;
ENDDATA
POTAJE NUTRIENTE(mg/100g)
PROTEINA HIERRO TIACINA TIAMINA VITNA C GRASA MAXIMO
ESPAGUETI 5000 1.1 1.4 0.18 0 5000 300
PAVO 29300 1.8 5.4 0.06 0 5000 300
PAPAS 5300 0.5 0.9 0.06 10 7900 200
ESPINACAS 3000 2.2 0.5 0.07 28 300 100
PASTEL 4000 1.2 0.6 0.15 3 14300 100
MINIMO 63000 10 15 1 50 0
Función objetivo:
Min Z=X6;
SUJETO A:
X
i 1
i MAXIMOi / 100 ; donde MAXIMO i es la cantidad máxima de cada
X
i
*
1
nutriente
MINIMO
i , donde NUTRIENTEj,i . j ,es la cantidad de
j
,
i j
nutriente ya Sea de proteína, hierro, tiacina, tiamina, vitna C ,grasa por Cada
potaje i ya sea :Espagueti, pavo, papas, espinacas, pastel.
Y MINIMO j es la cantidad de potaje como máximo que debe existir.
Por lo tanto:
SETS:
POTAJE/1..5/:NIVEL,MAXIMO;
NUTRIENTE/1..6/:MINIMO;
PONU(POTAJE,NUTRIENTE):REQ;
ENDSETS
DATA:
MAXIMO=300,300,200,100,100;
MINIMO=63000,10,15,1,50,0;
REQ=5000,1.1,1.4,0.18,0,5000,
29300,1.8,5.4,0.06,0,5000,
5300,0.5,0.9,0.06,10,7900,
3000,2.2,0.5,0.07,28,300,
4000,1.2,0.6,0.15,3,14300;
ENDDATA
MIN=GRASA;
GRASA=@SUM(POTAJE(I):REQ(I,6)*NIVEL(I));
@FOR(POTAJE(I):NIVEL(I)<=MAXIMO(I)/100);
@FOR(NUTRIENTE(J):@SUM(POTAJE(I):REQ(I,J)*NIVEL(I))>=MINIMO(J));
END
A ASI SUCESIVAMENTE……….
DESDE AL CLIENTE
1 2 3 4
(dólares) (dólares) (dólares)
(dólares)
Fabrica 1 65 63 62 64
Fabrica 2 68 67 65 62
Fabrica 3 63 60 59 60
2] UNID( FAB1, CEN1) + UNID( FAB2, CEN1) + UNID( FAB3, CEN1) >= 4000
3] UNID( FAB1, CEN2) + UNID( FAB2, CEN2) + UNID( FAB3, CEN2) >= 3000
4] UNID( FAB1, CEN3) + UNID( FAB2, CEN3) + UNID( FAB3, CEN3) >= 3000
5] UNID( FAB1, CEN4) + UNID( FAB2, CEN4) + UNID( FAB3, CEN4) >= 6000
6] UNID( FAB1, CEN1) + UNID( FAB1, CEN2) + UNID( FAB1, CEN3) + UNID(
FAB1, CEN4)
<= 3000
7] UNID( FAB2, CEN1) + UNID( FAB2, CEN2) + UNID( FAB2, CEN3) + UNID(
FAB2, CEN4)
<= 5000
8] UNID( FAB3, CEN1) + UNID( FAB3, CEN2) + UNID( FAB3, CEN3) + UNID(
FAB3, CEN4)
<= 5000
END
SETS:
FABR/FAB1,FAB2,FAB3/: CAPAC;
CLIEN/CEN1,CEN2,CEN3,CEN4/:DEMAN;
VIAS(FABR,CLIEN):GANAN,UNID;
ENDSETS
DATA:
CAPAC=3000 5000 5000;
DEMAN=4000 3000 3000 6000;
GANAN=65,63,62,64,
68,67,65,62,
63,60,59,60;
ENDDATA
MAX UNID=@SUM(VIAS:GANAN*UNID);
@FOR(CLIEN(J):@SUM(FABR(I):UNID(I,J))>=DEMAN(J));
@FOR(FABR(I):@SUM(CLIEN(J):UNID(I,J))<=CAPAC(I));
END
TABLA A
1 50 200
2 50 250
3 100 150
La corte local a decidido que cada una de las dos escuelas de segunda
enseñanza de la ciudad (Cooley y walt whitman) debe tener aproximadamente
(más o menos 5%) el mismo porcentaje de estudiantes de minorías, que la
ciudad entera. En la tabla B se da las distancias entre los distritos escolares y las
escuelas. Cada escuela debe tener entre 300 y 500 estudiantes. Utilice la
programación lineal para determinar la asignación de los estudiantes a cada
escuela para minimizar la distancia total que tienen que viajar los estudiantes
para llegar a ella.
TABLA B
WALT
DISTRITO COOLEY WHITMAN
1 1 2
2 2 1
3 1 1
SOLUCION:
Capacidad de producción
Demanda
TACNA CUZCO
PROD1 73 67
PROD2 58 72
PROD3 67 74
Capacidad de los centros de distribución
TACNA CUZCO
SUPER MERCADO 150 140
LIBRERÍA 130 150
Solución:
Xi,j,k,l=cantidad de productos fabricados en la fabrica i(i=A,B,C),en la ciudad si
en TACNA, si y CUZCO(j=TC,CZ) distribuidos en SUPER MERCADO y
LIBRERÍA (K=SM,L) el producto L(L=P1,P2,P3).
FUNCION OBJETIVO:
C CZ L P4
MAX
I A, J TC K SM L P1
X I , J , K , L * PRECIOI , J , K , L , donde PRECIO es el precio de
Capacidad de producción:
L P
4
K
SM
X
,LP1
I,J,K,L
Para I=A,J=P1:
XA,P1_SM,TC + XA,P1,SM,CZ + XA,P1,L,TC + XA,P1,L,CZ <= 75 ;
Para I=A,J=P2:
XA,P2,SM,TC + XA,P2,SM,CZ + XA,P2,L,TC + XA,P2,L,CZ <= 60 ;
Para I=A,J=P3:
XA,P3,SM,TC + XA,P3,SM,CZ + XA,P3,L,TC + XA,P3,L,CZ <= 65 ;
Para I=B,J=P1:
XB,P1,SM,TC + XB,P1,SM,CZ + XB,P1,L,TC + XB,P1,L,CZ <= 65 ;
Para I=B,J=P2:
XB,P2,SM,TC + XB,P2,SM,CZ + XB,P2,L,TC + XB,P2,L,CZ <= 70 ;
Para I=B,J=P3:
XB,P3,SM,TC + XB,P3,SM,CZ + XB,P3,L,TC + XB,P3,L,CZ <= 75 ;
Para I=C,J=P1:
XC,P1,SM,TC + XC,P1,SM,CZ + XC,P1,L,TC + XC,P1,L,CZ <= 70 ;
Para I=C,J=P2:
XC,P2,SM,TC + XC,P2,SM,CZ + XC,P2,L,TC + XC,P2,LCZ <= 80 ;
Para I=C,J=P3:
XC,P3,SM,TC + XC,P3,SM,CZ + XC,P3,L,TC + XC,P3,L,CZ <= 75
Demanda:
C L
I
X
A,KSM
I,J,K,L
C P4
I
X
A,LP1
I,J,K,L
SETS:
! FABRICAS DONDE SE VA A PRODUCIR EL PAPEL;
FABRICAS/A B C/: ;
! PRODUCTOS A SER PRODUCIDO POR LAS FÁBRICAS;
PRODUCTOS/P1 P2 P3/: ;
! CENTRO DE DISTRIBUCION DE LOS PRODUCTOS;
CDIST/SM L/:;
! CIUDADES DONDE VAN A SER DISTRIBUIDOS LOS PRODUCTOS;
CIUDAD/TC CZ/:;
! REQUERIMIENTO DE PRODUCTOS PARA UNA FABRICA ,EN UNA CIUDAD,EN
UN DETERMINADO SUPERMERCADO;
FPCC (FÁBRICAS, PRODUCTOS, CDIST, CIUDAD): PRECIO, X;
! CAPACIDAD DE PRODUCCION DE UN TERMENINADOM PRODUCTO POR
FÁBRICA;
FABPRO (FÁBRICAS, PRODUCTOS): CAPACIDAD;
! DEMANDA DE PRODUCCION;
PROCIU(PRODUCTOS,CIUDAD):DEMANDA;
! CAPACIDAD DE LOS CENTROS DE DISTRIBUCION;
CDCIUDAD (CDIST, CIUDAD): CAPACCD;
ENDSETS
DATA:
CAPACIDAD=75,60,65,
65,70,75,
70,80,75;
DEMANDA= 73,67,
58,72,
67,74;
CAPACCD= 150,140,
130,150;
PRECIO= 12,15,17,11,12,15,14,12,13,15,13,12,
10,13,14,12,14,16,13,14,15,11,12,13,
12,11,13,10,11,13,11,13,14,12,13,14;
ENDDATA
!FUNCION OBJETIVO ,MAXIMIZANDO LA UTILIDAD;
[OBJETIVO]MAX =@SUM(FPCC:PRECIO*X);
!RESTRICCION DE LA CAPACIDAD DE DISTRIBUCION ;
@FOR(FABPRO(I,J):@SUM(FPCC(I,J,K,L):X(I,J,K,L))<=CAPACIDAD(I,J));
!RESTRICCION DE LA DEMANDA;
@FOR(PROCIU(J,L):@SUM(FPCC(I,J,K,L):X(I,J,K,L))>=DEMANDA(J,L));
! RESTRICCION DE LA CAPACIDAD DE LOS CENTROS DE DISTRIBUCION;
@FOR(CDCIUDAD(K,L):@SUM(FPCC(I,J,K,L):X(I,J,K,L))<=CAPACCD(K,L));
END
A ASI SUCESIVAMENTE……….
Sucursal
Proveedor Jesús Callao San Los Olivos
María Luis
Ventanilla 6 2 6 7
Villa El Salvador 4 9 5 3
Chorrillos 8 8 1 5
MODEL:
! Problema de transporte de 3 proveedores a 4 sucursales;
SETS:
PROVEEDOR / 1..3/: CAPACIDAD;
SUCURSAL / 1..4/: DEMANDA;
RUTAS( PROVEEDOR, SUCURSAL): COSTO, VOLUMEN;
ENDSETS
! La función objetivo;
[OBJ] MIN = @SUM( RUTAS: COSTO * VOLUMEN);
END
Model:
Sets:
Tipos_de_inversion/acciones, fondos_mutuos/:tope_maximo;
cantidad(tipos_de_inversion): interes, monto;
Endsets
Data:
interes= 0.1, 0.08;
tope_maximo = 0.7, 0.7;
Enddata
MAX = @sum(cantidad: monto*interes);
@for(tipos_de_inversion(i) :monto(i)<=tope_maximo(i));
monto(acciones)<=2*monto(fondos_mutuos);
@sum(cantidad:monto)=1;
End
Departamento S1 S2
Mezcla 2 1
Purificación 1 2
Model:
Sets:
Solvente/1..2/:;
Departamento/ mezcla, purificacion/: disponibilidad_horas;
Produccion(Solvente):cantidad, utilidad;
Horas_de_consumo(Solvente,Departamento):Horas;
Endsets
Data:
utilidad = 350, 450;
horas = 2,1,
1,2;
disponibilidad_horas=190, 292;
Enddata
Max=@sum (Produccion:cantidad*utilidad);
@for(Departamento(j):@sum(Produccion(i):cantidad(i)*horas(i,j))<=disponibilidad_horas(j));
@for (Produccion:cantidad(2)<=100);
Un banco otorga cuatro tipos de préstamos a sus clientes los cuales producen
las siguientes tasas de interés anual:
El banco ha dispuesto 250 millones de nuevos soles para otorgar los préstamos.
Las directivas que se deben tener presentes para efectuar los préstamos son:
a. Los préstamos para compras de casa deben ser al menos 55% de todos los
préstamos otorgados para compras de casa o terreno y al menos 25% de
todos los préstamos otorgados.
b. Los préstamos para compra de terrenos no pueden exceder el 25% de todos
los préstamos otorgados.
c. Para evitar el descontento público y la introducción de un impuesto no
previsto el dinero total anual recaudado por los préstamos no debe exceder el
15% del total de dinero destinado a los préstamos.
! PLANEAMIENTO FINANCIERO;
Model:
Sets:
Tipo_de_prestamo/casa, terreno, hogar,carro/:interes;
Dinero(Tipo_de_prestamo):cantidad;
Endsets
Data:
interes= 0.14, 0.20, 0.20, 0.10;
Enddata
Max= @sum(Dinero(i):cantidad(i)*interes(i));
@sum(Dinero(i):cantidad(i))<=250;
@for(Dinero:cantidad(1)>=0.55*@sum(Dinero(i)|i#le#2:cantidad(i)));
@for(Dinero:cantidad(1)>=0.25*@sum(Dinero(i):cantidad(i)));
@for(Dinero:cantidad(2)<=0.25*@sum(Dinero(i):cantidad(i)));
@sum(Dinero(i):cantidad(i)*interes(i)) <=
0.15*@sum(Dinero(i):cantidad(i));
Solución:
Xij: unidades producidas por tipo de producto j (1, 2, 3, 4), utilizando cada
maquina i (1, 2)
DATA:
CAP=500,380;
PV=65,70,55,45;
TM= 2,3,4,2,
3,2,1,2;
UTI=45,40,15,25
50,60,50,35;
ENDDATA
MAX=@SUM(MATRIZ1:UTI*X);
@FOR(MAQ(I):@SUM(PROD(J):TM(I,J)*X(I,J))<=CAP(I));
END
Solución óptima:
MAX 45 X( 1, 1) + 40 X( 1, 2) + 15 X( 1, 3) + 25 X( 1, 4)+ 50 X( 2, 1) + 60 X( 2,
2) + 50 X( 2, 3) + 35 X( 2, 4)
SUBJECT TO
2] 2 X( 1, 1) + 3 X( 1, 2) + 4 X( 1, 3) + 2 X( 1, 4) <= 500
3] 3 X( 2, 1) + 2 X( 2, 2) + X( 2, 3) + 2 X( 2, 4) <= 380
END
Solución:
MIN Z = X1 + X2 + X3 + X4 + X4 + X5 + X6
Sujeto a:
Turno 1: X1 + X6 >= 4
Turno 2: X1 + X2 >=8
Turno 3: X2 + X3 >=10
Turno 4: X3 + X4 >=7
Turno 5: X4 + X5 >=12
Turno 6: X5 + X6 >=4
SETS:
HORAS/1..6/:X;
PERS/1..6/:MIN;
MATRIZ1(HORAS,PERS):CANT;
ENDSETS
DATA:
MIN=4,8,10,7,12,4;
CANT=1,1,0,0,0,0,
0,1,1,0,0,0,
0,0,1,1,0,0,
0,0,0,1,1,0,
0,0,0,0,1,1,
1,0,0,0,0,1;
ENDDATA
MIN=@SUM(HORAS:X);
@FOR(PERS(J):@SUM(HORAS(I):CANT(I,J)*X(I))>=MIN(J));
END
Solución:
Xj = cantidad de dólares a invertir en el tipo de inversión j (1, 2, 3, 4, 5,6) para
maximizar el rendimiento.
SETS:
TIPO/1..4/:INV;
CAR/1..6/:INT,X;
MATRIZ1(TIPO,CAR):DAT;
ENDSETS
DATA:
INT=8.5,9,8.5,14.3,6.7,13;
INV= 2000,400,10000,500;
DAT= 1,1,1,1,1,1,
0.02,0.01,0.38,0.45,0.07,0.35,
8,2,5,6,2,4,
0,0,0,1,0,1;
ENDDATA
MIN=@SUM(CAR:0.01*INT*X);
@FOR(TIPO(I):@SUM(CAR(J):DAT(I,J)*X(J))>=INV(I));
END
Global optimal solution found at step: 5
Objective value: 184.8433
Solución:
Si los estudiantes del distrito i (i = 1, 2, 3, 4, 5,6) son enviados a la escuela j (
Xij = =1,2)
0, si no es así.
s.a :
110 X11+75 X21+100 X31+90 X41 +90 X51 >=150(escuela 1 debe tener una
matricula de por lo menos 150 estudiantes)
110 X12+75 X22+100 X32+90 X42 +90 X52 >=150(escuela 2 debe tener una
matricula de por lo menos 150 estudiantes)
X11+ X12 =1(todos los estudiantes del distrito1 asisten a la misma escuela)
X21+ X22 =1(todos los estudiantes del distrito2 asisten a la misma escuela)
X31+ X32 =1(todos los estudiantes del distrito3 asisten a la misma escuela)
X41 + X42 =1(todos los estudiantes del distrito4 asisten a la misma escuela)
X51 + X52 =1(todos los estudiantes del distrito5 asisten a la misma escuela)
Xij =1ó 0; (i = 1, 2, 3, 4, 5,6), (j = 1,2)
@for(distrito(i):total(i)=@sum(escuela(j):alumnos));
@FOR(distrito(i):@SUM(escuela(J):x(I,J))=1);
La distancia mínima total que todos los estudiantes de Metrópolis tienen que
recorrer hasta la escuela es 398.5 millas.
Eastinghouse embarca 1 2000 capacitores por mes para sus clientes. Se podrían
producir los capacitores en tres plantas distintas. La capacidad de producción,
costos fijos mensuales de operación y costos variables por la producción de un
capacitor en cada planta se proporcionan en la tabla 96. El costo fijo de una planta
se contrae sólo si la planta se usa para hacer capacitores. Desarrolle un modelo de
programación con enteros cuya solución le indique a Eastinghouse cómo minimizar
sus costos mensuales por cumplir con la demanda de sus clientes.
TABLA
SOLUCIÓN:
Yi = 1 si se utiliza la planta i.
0 en caso contrario.
i =1, 2, 3.
FUNCION OBJETIVO:
RESTRICCIONES:
X1 + X2 + X3 >= 12 000
X1 <= 6 000Y1
X2 <= 7 000Y2
X3 <= 6 000Y3
X1,X2,X3>0
Y1,Y2,Y3= 1 ó 0
Enddata
Min =@sum(planta(i):cf(i)*y(i))+@sum(planta(i):cv(i)*x(i));
!restriccion de la demanda;
@sum(planta(i):x(i))>=12000;
!restriccion de la capacidad;
@for(planta(i):x(i)<=cap(i)*y(i));
!restriccion binaria;
@for(planta(i):@bin(y));
End
MODEL:
END
Solución Lingo:
Model:
Sets:
Productos/1..2/: utilidad, cant;
materia_prima/1..2/:horas disponibles;
Horas(productos, materia_prima):hora;
Endsets
Data:
hora= 2, 5, 4, 6;
utilidad= 30, 40;
horas_disponibles= 150, 200;
Enddata
Max=@sum(productos(i):cant(i)*utilidad(i));
@for(materia_prima(j):@sum(productos(i):cant(i)*hora(i,j))<=horas_disponibles(j));
@for(productos(i):@gin(cant(i)));
End
3.Canfranc 55.000 88
La variable y indica donde se tiene que construir una planta Industrial. Sus valores
serán binarios: 0=no se construye, 1=si se Construye;
Tabla N° 1
Lugar Tamaño Costo de Capacidad Costo de Manufactura
construcción (miles (miles de (dólares por unidad)
de dólares) unidades)
Ate Pequeña 1000 600 5.00
Grande 1500 1200 4.00
Bellavista Pequeña 1200 600 5.00
Grande 1600 1200 4.00
Enorme 2000 2000 3.50
NEWCOMP S.A. debe distribuir su producto en cuatro regiones. El costo de
transporte por unidad de las fábricas a las regiones y los requerimientos de las
regiones se presenta en la tabla N°2.
Tabla N°2
De la fábrica Hasta la región
1 2 3 4
ATE 1 2 3 4
BELLAVISTA 2 3 2 3
Requerimiento (Miles de 500 200 700 800
unidades)
Model:
Sets:
fabrica/fpa,fga,fpb,fgb,feb/:capacidad,costo_construccion, costo_manufactura,
construccion;
region/r1,r2,r3,r4/:requerimiento;
rutas(fabrica, region): costo, cantidad;
Endsets
Data:
capacidad = 600, 1200, 600, 1200, 2000;
costo_construccion = 1000, 1500, 1200, 1600, 2000;
costo_manufactura = 5, 4, 5, 4, 3.5;
requerimiento = 500, 200, 700, 800;
costo = 1, 2, 3, 4,
1, 2, 3, 4,
2, 3, 2, 3,
2, 3, 2, 3,
2, 3, 2, 3;
Enddata
Min=@sum(rutas:costo*cantidad)+@sum(fabrica:
costo_construccion*construccion)
+@sum(fabrica(i):@sum(rutas(i,j):costo_manufactura(i)*cantidad(i,j)));
End
SOLUCION:
FUNCION OBJETIVO:
MAX Z = B( 1) + B( 2) + B( 3)
Donde:
RESTRICCIONES:
X( 1, 1) + X( 1, 2) + X( 1, 3) <= 1
X( 2, 1) + X( 2, 2) + X( 2, 3) <= 1
X( 3, 1) + X( 3, 2) + X( 3, 3) <= 1
X( 4, 1) + X( 4, 2) + X( 4, 3) <= 1
X( 5, 1) + X( 5, 2) + X( 5, 3) <= 1
X( 6, 1) + X( 6, 2) + X( 6, 3) <= 1
Sets:
bien/1..6/;
year/1..3/:a,b;
matriz(bien,year):precio,x;
Endsets
Data:
a=20,30,35;
precio=15,20,24,
16,18,21,
22,30,36,
10,20,30,
17,19,22,
19,25,29;
Enddata
Max=@sum(year:b);
¡FUNCION OBJETIVO;
@for(year(j):@sum(bien(i):precio(i,j)*x(i,j))=b(j));
¡RESTRICCION 1;
@for(bien(i):@sum(year(j):x(i,j))<=1);
¡RESTRICCION 2
@for(year(j):@sum(bien(i):precio(i,j)*x(i,j))>=a(j));
@for(matriz:@bin(x));
SOLUCIÓN EN LINGO:
SOLUCION:
VARIABLES:
FUNCION OBJETIVO:
MIN Z = 5000Y (1) + 4000Y (2) + 6000Y (3) + 500X (1) + 350X (2) + 250X (3)
RESTRICCIONES:
X( 1) + X( 2) + X( 3) >= 1100
X( 1) <= 500
X( 2) <= 900
X( 3) <= 400
1000000 Y( 1) + X( 1) <= 0
1000000 Y( 2) + X( 2) <= 0
1000000 Y( 3) + X( 3) <= 0
COSTOS EN DOLARES;
!M=VALOR MUY GRANDE;
!COSTOE ES EL COSTO DE ENTREGA;
!X CANTIDAD DE COMPUTADORAS QUE VENDE EN VENDEDOR I;
!Y 1 SI EL VENDEDOR I VENDCOMPUTADORAS
! 0 EN CASO CONTRARIO;
SETS:
VENDEDOR/1..3/:COSTOE,COSTO,X,Y,MAXVEND;
ENDSETS
DATA:
COSTOE = 5000 4000 6000;
COSTO = 500 350 250;
MAXVEND= 500 900 400;
M=1000000;
REQUERIMIENTO=1100;
ENDDATA
MIN=@SUM(VENDEDOR(I):COSTO(I)*X(I))+@SUM(VENDEDOR(I):COSTOE(I)*Y(I
));
! RESTRICCION 1;
@SUM(VENDEDOR(I):X(I))>=REQUERIMIENTO;
! RESTRICCION DE 2;
@FOR(VENDEDOR(I):X(I)<=MAXVEND(I));
! RESTRICCION DE 3;
@FOR(VENDEDOR(I):X(I)<=M*Y(I));
SOLUCION EN LINGO:
TABLA 1
TABLA 2
SOLUCIÓN:
FUNCIÓN OBJETIVO:
MINZ=350*(5*X1)+330*(3*X2)+310*(4*X4)+500*Y1+450Y2+400Y3+100W
S.A.:
5*X1+4*X2+4*X3+6*X4+Y1+Y2+Y3+W=25 (PEDIDO)
5*(5*X1)+4*(3*X2)+5*(4*X3)+3*(6*X4)+8*Y1+7*Y2+6*Y3+3*W=5*25 (%
CARBONO)
3*(5*X1)+3*(3*X2)+4*(4*X3)+4*(6*X4)+6*Y1+7*Y2+9*W=5*25 (%
MOLIBDENO)
X1+X2+X3+X4=1 (LINGOTE)
Y1+Y2+Y3>0
W>0
XI=0 Ó 1
YI>0
W>0
Sets:
lingote/1..4/:peso,costo1,carbono1,molibdeno1,x;
aleacion/1..3/:costo2,carbono2,molibdeno2,y;
desperdicio/1..1/:costo3,carbono3,molibdeno3,w;
Endsets
Data:
peso = 5,3,4,6;
costo1 = 350 ,330 ,310 ,280;
carbono1 = 0.05, 0.04 ,0.05 ,0.03;
molibdeno1 = 0.03, 0.03, 0.04, 0.04;
costo3 = 100;
carbono3 = 0.03;
molibdeno3 = 0.09;
Enddata
!funcion objetivo;
min = @sum(lingote(i):costo1(i)*peso(i)*x(i))+ @sum(aleacion(j):costo2(j)*y(j) )+
@sum(desperdicio(k):costo3(k)*w(k));
End
TABLA 1
REPRESENTANTE MERCADOS – VENTA
DENTRO DE Piura Ayabaca Paita Sechura Morropón Sullana
55Km
SI 130 120 130 110 110 122
NO 70 40 80 70 90 50
TABLA 2
Base- Piura Ayabaca Paita Sechura
Fábrica Mercado
Piura 0 229 60 50
Ayabaca 229 0 117 260
Paita 60 117 0 55
Sechura 50 260 55 0
Morropón 60 58 115 52
Sullana 39 40 47 239
SOLUCIÓN:
∑ ∑ 𝑋𝑖,𝑗 ≤ 𝑅𝐸𝑃𝑅𝐸𝑗
𝑗 =1 𝑖 =1
𝟔 𝟒
∑ ∑ 𝑺𝑰𝒊 × 𝑿𝒊,𝒋 = 𝒀𝒊
𝒊=𝟏 𝒋=𝟏
SALARIO DE REPRESENTANTES
6 4
8400 × ∑ ∑ 𝑋𝑖,𝑗 = 𝐶𝑂𝑆𝑇𝑂
𝑖=1 𝑗=1
FUNCION OBJETIVO
𝟔 𝟔
𝑴𝑨𝑿 = 𝟕𝟎 × ∑ 𝑾𝒊 + ∑ 𝒀𝒊 − 𝑪𝑶𝑺𝑻𝑶
𝒊=𝟏 𝒊=𝟏
INTERPRETACIÓN
FUNCION OBJETIVO:
Lo que pide el problema es maximizar las utilidades por cada año de
operación por lo cual se analizaran los ingresos y egresos.
Ingresos:
Los ingresos son proporcionales a la cantidad de pares de zapatos vendidos.
Morropón 90 90 90 110X54
RESTRICCIONES:
Cantidad mínima de los representantes de cada fábrica
X11 + X41 + X61 <= 10
X22 + X62 <= 8
X33 + X43 + X 63 <= 6
X14 + X34 + X44 + X54 <= 9
Cantidad mínima de representante por mercado
X11 + X14 >= 4
X22 >= 5
X33 + X34 >= 3
X41 + X43 + X 44 >= 2
X54 >= 1
X61 + X62 + X 63 >= 4
DEFINICIÓN DE SETS:
Según lo planteado y a los datos del problema tenemos:
SETS:
MERCADOS/1..6/:SI,NO,W,Y,REPREMIN;
FABRICAS/1..4/:REPRE;
MERCAFABRI(MERCADOS,FABRICAS):DIST,X,H,T,Z;
ENDSETS
@FOR(MERCAFABRI(I,J)|DIST(I,J)#LE#55:H(I,J)=1);!REPRESENTANTES;
@FOR(MERCAFABRI(I,J)|DIST(I,J)#GT#55:H(I,J)=0);
@FOR(MERCAFABRI(I,J)|DIST(I,J)#GT#55:T(I,J)=1);!SIN
REPRESENTANTES;
@FOR(MERCAFABRI(I,J)|DIST(I,J)#LE#55:T(I,J)=0);
Las demás sentencias son análogas, solo que DIST(I,J)#GT#55; indica que
solo se realizará la operación si DIST(I,J)>55.
∑ ∑ 𝑋𝑖,𝑗 ≤ 𝑅𝐸𝑃𝑅𝐸𝑗
𝑗 =1 𝑖 =1
Salario De Representantes
6 4
8400 × ∑ ∑ 𝑋𝑖,𝑗 = 𝐶𝑂𝑆𝑇𝑂
𝑖=1 𝑗=1
!SALARIO DE REPRESENTANTES;
@SUM(MERCAFABRI(I,J):X(I,J))*8400=COSTO;
Función Objetivo
𝟔 𝟔
𝑴𝑨𝑿 = 𝟕𝟎 × (∑ 𝑾𝒊 + ∑ 𝒀𝒊 ) − 𝑪𝑶𝑺𝑻𝑶
𝒊=𝟏 𝒊=𝟏
MAX=70*(@SUM(MERCADOS(I):W(I))+@SUM(MERCADOS(I):Y(I)))-COSTO;
Definición de data.
Data directa en lingo:
DATA:
DIST= 0 229 60
50
229 0 117 260
60 117 0 55
50 260 55 0
60 58 115 52
39 40 47 239;
REPRE=10 8 6 9;
REPREMIN=4 5 3 2 1 4;
SI=130 120 130 110 110
122;
NO=70 40 80 70 90 50;
ENDDATA
DATA:
DIST,REPRE,REPREMIN,SI,NO= @OLE('F:\VII
CICLO\OPE\LABO\PROBLEMA2.xlsx');
ENDDATA
PROGRAMA EN LINGO:
MODEL ASIGNACION :
!MODELO DE ASIGNACION DE REPRESENTANTES;
SETS:
MERCADOS/1..6/:SI,NO,W,Y,REPREMIN;
FABRICAS/1..4/:REPRE;
MERCAFABRI(MERCADOS,FABRICAS):DIST,X,H,T,Z;
ENDSETS
DATA:
DIST,REPRE,REPREMIN,SI,NO= @OLE('G:\VII
CICLO\OPE\LABO\DATA1.xlsx');
ENDDATA
MAX=70*(@SUM(MERCADOS(I):W(I))+@SUM(MERCADOS(I):Y(I)))-
COSTO;
@FOR(MERCAFABRI(I,J)|DIST(I,J)#LE#55:H(I,J)=1);!REPRESENTANT
ES;
@FOR(MERCAFABRI(I,J)|DIST(I,J)#GT#55:H(I,J)=0);
@FOR(MERCAFABRI(I,J)|DIST(I,J)#GT#55:T(I,J)=1);!SIN
REPRESENTANTES;
@FOR(MERCAFABRI(I,J)|DIST(I,J)#LE#55:T(I,J)=0);
!SALARIO DE REPRESENTANTES;
@SUM(MERCAFABRI(I,J):X(I,J))*8400=COSTO;
END
TABLA 1
Año 1 Año 2 Año 3
Proyecto Tasa Inve Proyecto Tasa Inver Proyecto Tasa Inversi
SUCU de rsión de sión de ón
RSAL utilid máxi utilid máxi utilid máxim
ad ma ad ma ad a
(%) (m) (%) (m) (%) (m)
Trujil 1 8 10 1 9 9 1 8 8
lo 2 6 7 2 6 5 2 7 7
3 7 9 3 7 9 3 7 7
Lima 1 5 7 1 6 4 1 5 9
2 8 10 2 18 10 2 8 8
3 9 5 3 5 6 3 5 5
Tacna 1 10 6 1 11 6 1 7 6
2 6 7 2 6 10 2 6 11
3 15 5 3 15 5 3 15 6
TABLA 2
Adicionalmente por una directiva de la alta gerencia se requiere que los proyectos
que tienen una utilidad mayores del 7% en cualquier año, por lo menos tengan una
inversión de 5 millones.
SOLUCIÓN:
3
X i, j, k + Sobrante i, k = Máximo i, k
j =1
k=1 (Solo el primer año)
i = 1, 2, 3 (Sucursal).
3
X i , j ,k -Sobrante i,k-1 + Sobrante i, k = Máximo i, k
j 1
k 2, 3 (Periodo)
i 1, 2, 3 (Sucursal)
RESTRICCIÓN DE INVERSIÓN MÍNIMA PARA ALGUNOS PROYECTOS
ESPECÍFICOS.
X i , j ,k ≥ Mínimo i , j ,k ; Solo para (i=1, j=2, k=1) Λ (i=2, j=1, k=1) Λ
(i=3, j=2, k=2)
RESTRICCIÓN DE INVERSIÓN MÁXIMA POR PROYECTO EN CADA
SUCURSAL.
X i , j ,k ≤ InvMáxima i , j ,k i =1, 2, 3 j =1, 2, 3 k=1, 2, 3
MODEL PRESUPUESTOS:
! MODELO DE ASIGNACION DE
PRESUPUESTO;
SETS:
SUCURSAL /TRUJILLO,LIMA,TACNA/:;
PROYECTO /1..3/:
;
PERIODO /1..3/:
;
SUCURSAL_PERIODO (SUCURSAL,PERIODO) : SOBRANTE, MAXIMO;
SUCURSAL_PROYECTO_PERIODO
(SUCURSAL,PROYECTO,PERIODO):TASA,
INVMAXIMA, ASIGNACION;
INVERSION_MINIMA (SUCURSAL,PROYECTO,PERIODO)/TRUJILLO 2 1, LIMA 1
1, TACNA 2 2 /: MINIMO;
ENDSETS
DATA:
TASA,INVMAXIMA,MINIMO,PRESUPUESTO,INVMINIMA= @OLE('G:\VII
CICLO\OPE\LABO\DATA2.xlsx','tasa','INV_MAX','mínima','presupuesto','in
v_mínima' );
MAXIMO = 20, 20, 20,
20, 20, 20,
20, 20, 20;
ENDDATA
! Funcion Objetivo;
MAX = FO;
FO=@SUM(SUCURSAL_PROYECTO_PERIODO: TASA * ASIGNACION );
END
3 3 3
𝑀𝐴𝑋 = ∑ ∑ ∑ 𝑇𝑎𝑠𝑎𝑖,𝑗,𝑘 𝑥 𝑋𝑖,𝑗,𝑘
𝑖=1 𝑗=1 𝑘=1
PROYECTO 1 PROYECTO 2
1 2 3 1 2 3
TRUJILLO 10 9 8 TRUJILLO 4 0 7
LIMA 5 4 9 LIMA 10 10 8
TACNA 6 6 6 TACNA 5 10 11
PROYECTO 3
1 2 3
TRUJILLO 6 9 7
LIMA 5 4 5
TACNA 5 5 6
Una compañía dispone de 35 millones para distribuirlos el próximo año entre sus
sucursales (Arequipa, Cuzco, Trujillo). Debido a compromisos de la estabilidad, el
nivel de empleados y por otras razones la compañía ha establecido un nivel
mínimo de asignación de fondos para cada sucursal. Estos fondos mínimos son de
8, 10 y 15 millones de dólares respectivamente. Debido a la naturaleza de su
operación, la sucursal Cuzco no puede utilizar más de 20 millones de dólares.
Cada sucursal tiene la oportunidad de dirigir distintos proyectos con los fondos que
recibe. Para cada proyecto se ha establecido una tasa de ganancia (como un
porcentaje de la inversión). Por otra parte, algunos de los proyectos permiten solo
una inversión limitada. A continuación se dan los datos para cada proyecto.
Solución:
Dada la información del problema, lo que se debe hacer es maximizar las
utilidades de la compañía en mención, asignando de la mejor manera los fondos a
sus respectivas sucursales.
6.3 RESTRICCIONES:
Arequipa:
X11 ≤ InvMaxima11
X12 ≤ InvMaxima12
X13 ≤ InvMaxima13
Cuzco:
X21 ≤ InvMaxima21
X22 ≤ InvMaxima22
X23 ≤ InvMaxima23
Trujillo:
X31 ≤ InvMaxima31
X32 ≤ InvMaxima32
X33 ≤ InvMaxima33
X11 +X12 +X13 +X21 +X22 +X23+ X31 +X32 +X33 ≤ PresupuestoTotal
De los resultados del reporte, en la parte superior se nota que la función objetivo
se optimiza cuando la rentabilidad es máxima, es decir, cuando toma el valor de
3.32 millones de dólares.
Y en este último cuadro se puede ver la forma cómo tienen que ser repartidos los
fondos a las diversas sucursales de la compañía para alcanzar una máxima
utilidad. A la sucursal de Arequipa se le asigna 8 millones para invertir en el
proyecto 1, a la sucursal del Cuzco 8 millones para el proyecto 2 y 4 millones para
el proyecto 3 y finalmente para la sucursal de Trujillo 1 millón para el proyecto 1, 3
millones para el proyecto 2 y 6 millones para el proyecto 3.
Tacna Cuzco
Supermercado Librería Supermercado Librería
Producto Producto Producto Producto Producto Producto Producto Producto Producto Producto Producto Producto
1 2 3 1 2 3 1 2 3 1 2 3
Fábrica
A 12 15 17 11 12 15 14 12 13 15 13 12
Fábrica
B 10 13 14 12 14 16 13 14 15 11 12 13
Fábrica
C 12 11 13 10 11 13 11 13 14 12 13 14
Demanda:
Tacna Cuzco
Producto 1 73 67
Producto 2 58 72
Producto 3 67 74
Tacna Cuzco
Solución:
Xijkl: cantidad de productos elaborados en la fábrica “i”, que corresponde al tipo “j”,
distribuido en “k”, en la ciudad “l”
Donde:
₪ Tipo de fábrica: i= A, B, C
₪ Tipo de producto: j= P1, P2, P3
₪ Tipo de centro de distribución: k=supermercado (S), librería (L)
₪ Ciudades: l=Tacna (T), Cuzco (Cz)
Función objetivo:
𝐶 𝑃3 𝐿 𝐶𝑧
∑ ∑ ∑ ∑ 𝑋𝑖𝑗𝑘𝑙 ∗ 𝑃𝑅𝐸𝐶𝐼𝑂𝑖𝑗𝑘𝑙
𝑖=𝐴 𝑗=𝑃1 𝑘=𝑆 𝑙=𝑇
Sujeto a:
Capacidad de producción:
𝐿 𝑃3
∑ ∑ 𝑋𝑖𝑗𝑘𝑙
𝑘=𝑆𝑀 𝑙=𝑃1
Demanda:
𝐶 𝐿
∑ ∑ 𝑋𝑖𝑗𝑘𝑙
𝑖=𝐴 𝑘=𝑆
∑ ∑ 𝑋𝑖𝑗𝑘𝑙
𝑖=𝐴 𝑗=𝑃1
FPCC(FABRICAS,PRODUCTOS,CENTRO,CIUDAD):PRECIO,X;
FABPRO(FABRICAS,PRODUCTOS):CAPACIDAD;
PROCIU(PRODUCTOS,CIUDAD):DEMANDA;
CENCIUDAD(CENTRO,CIUDAD):CAPACIDAD2;
ENDSETS
DATA:
CAPACIDAD= 75 60 65,
65 70 75,
70 80 75;
DEMANDA= 73 67,
58 72,
67 74;
CAPACIDAD2= 150 140,
130 150;
PRECIO= 12 15 17 11 12 15 14 12 13 15 13 12,
10 13 14 12 14 16 13 14 15 11 12 13,
12 11 13 10 11 13 11 13 14 12 13 14;
ENDDATA
MAX=@SUM(FPCC:PRECIO*X);!FUNCION OBEJTIVO RESULTADO;
@FOR(FABPRO(I,J):@SUM(FPCC(I,J,K,L):X(I,J,K,L))<=CAPACIDAD(I,J));
!RESTRICCIONES DE LA CAPACIDAD DE CADA RECURSO;
@FOR(PROCIU(J,L):@SUM(FPCC(I,J,K,L):X(I,J,K,L))>=DEMANDA(J,L));
!RESTRICCIONES DE LA DEMANDA DE CADA RECURSO;
@FOR(CENCIUDAD(K,L):@SUM(FPCC(I,J,K,L):X(I,J,K,L))<=CAPACIDAD2(K,L));
Fabrica A:
La empresa debe de distribuir las 75 unidades del producto 1 a la librería de la
ciudad de Tacna.
También debe distribuir 5 unidades del producto 2 al supermercado de la ciudad
del Cuzco y el resto (55 unidades) será enviada a la librería de la ciudad de
Tacna.
Además debe distribuir 65 unidades del producto 3 al supermercado de la ciudad
del Cuzco.
Fabrica B:
La empresa debe distribuir 1 unidad del producto 1 al supermercado de la ciudad
del Cuzco. Además tiene que distribuir 64 unidades a la librería de la ciudad del
Cuzco.
Además debe distribuir 3 unidades del producto 2 al supermercado de la ciudad
de Tacna. También 67 unidades al supermercado de la ciudad del Cuzco.
También podemos ver que se debe distribuir 75 unidades del producto 3 al
supermercado de la ciudad de Tacna.
Fabrica C:
Se deben distribuir 6 unidades del producto 1 al supermercado de Tacna.
Además de 2 unidades al supermercado de Cuzco.
También se debe distribuir 77 unidades del producto 2 a la librería del Cuzco.
También se debe distribuir 66 unidades del producto 3 al supermercado de
Tacna. Además de 9 unidades a la librería de la ciudad de Cuzco.
Precio Dual
CONCLUSIONES
a) Los pasos que se sigue para crear una base de datos en EXCEL son:
b) Crear una carpeta en C, por ejemplo: TRABAJO DE OPE I
c) Crear un hoja de cálculo denominado PROBLEMA 1
d) Luego en la hoja de cálculo poner los datos del problema:
FPCC(FABRICAS,PRODUCTOS,CENTRO,CIUDAD):PRECIO,X;
FABPRO(FABRICAS,PRODUCTOS):CAPACIDAD;
PROCIU(PRODUCTOS,CIUDAD):DEMANDA;
CENCIUDAD(CENTRO,CIUDAD):CAPACIDAD2;
ENDSETS
DATA:
PRECIO,CAPACIDAD,DEMANDA,CAPACIDAD2=@OLE('C:\LINGO11\Samples\PROBLEMA
1.XLS','precio','capacidad','demanda','capacidad1');
ENDDATA
MAX=FO;
FO=@SUM(FPCC:PRECIO*X);
@FOR(FABPRO(J,I):@SUM(FPCC(I,J,K,L):X(I,J,K,L))<=CAPACIDAD(J,I));
!RESTRICCIONES DE LA CAPACIDAD DE CADA RECURSO;
@FOR(PROCIU(J,L):@SUM(FPCC(I,J,K,L):X(I,J,K,L))>=DEMANDA(J,L));
!RESTRICCIONES DE LA DEMANDA DE CADA RECURSO;
@FOR(CENCIUDAD(K,L):@SUM(FPCC(I,J,K,L):X(I,J,K,L))<=CAPACIDAD2(K,L));
TACNA CUZCO
SUPERMERCADO LIBRERÍA SUPERMERCADO LIBRERÍA
P1 P2 P3 P1 P2 P3 P1 P2 P3 P1 P2 P3
FABRICA A 0 0 75 0 0 5 55 0 0 65 0 0
FABRICA B 0 1 0 64 3 67 0 0 75 0 0 0
FABRICA C 6 2 0 0 0 0 0 77 66 0 0 9
FO 8260
Para registrar esta base de datos como una fuente de datos ODBC para nuestro
modelo, debe iniciar el Administrador de ODBC de la siguiente manera:
!PROBLEMA LINGO;
MODEL:
SETS:
FABRICAS / A B C/:; !Tipo de fábrica: i= A, B, C ;
PROCIU(PRODUCTOS,CIUDAD):DEMANDA;
CENCIUDAD(CENTRO,CIUDAD):CAPACIDAD2;
ENDSETS
DATA:
PRECIO,CAPACIDAD,DEMANDA,CAPACIDAD2=@OLE('C:\Archivos de
programa\LINGO11\Samples\PROBLE.MDB','precio','capacidad','demanda','c
apacidad1');
ENDDATA
MAX=FO;
FO=@SUM(FPCC:PRECIO*X);
Las herramientas matemáticas como LINGO permiten que alumnos con unos
conocimientos elementales en optimización puedan resolver una amplia gama de
problemas. En aquellas titulaciones en las cuales las matemáticas no son el fin
en sí mismas y se reducen a una herramienta de trabajo, resulta de mayor
interés la formulación de los problemas, la interpretación y el análisis de las
soluciones, en detrimento del método empleado en la obtención de dicha
solución.