Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Semana 1 Investigacion de Operaciones
Semana 1 Investigacion de Operaciones
sets:
planta/1..3/: capacidad,costo,ritmoA,ritmoB,transporte;
cliente/1..2/:minimoA,minimoB;
pxc(planta,cliente):A,B;
endsets
Data:
EndData
min=@sum(pxc(i,j):
costo(i)*((A(i,j)/ritmoA(i))+(B(i,j)/ritmoB(i))))+@sum(pxc(i,j):transporte(i)
*(A(i,j)+B(i,j))^(2));
@for(planta(i):
@sum(cliente(j):((A(i,j)/ritmoA(i))+(B(i,j)/ritmoB(i))))<=capacidad(i);
@for(cliente(j):
@sum(planta(i): A(i,j))>=minimoA(j));
@for(cliente(j):
@sum(planta(i): B(i,j))>=minimoB(j));
SOLUCIÓN:
Global optimal solution found.
Objective value: 65999.73
Infeasibilities: 0.000000
Total solver iterations: 14
Elapsed runtime seconds: 0.41
Model is convex quadratic
Model Class: QP
Total variables: 12
Nonlinear variables: 12
Integer variables: 0
Total constraints: 8
Nonlinear constraints: 1
Total nonzeros: 36
Nonlinear nonzeros: 18
LINGO:
sets:
quinua/1..3/:a,b,grado_s,w;
producto/1..2/:grado_m,c,p;
mercado/1..2/:;
qxp(quinua,producto):x;
pxm(producto,mercado):y,min_env,costo_env;
endsets
data:
a = 120 150 140;
b = 0.1 0.2 0.3;
grado_s = 60 70 80;
grado_m = 65 75;
c = 0.2 0.3;
min_env = 300 250
200 250;
costo_env = 2 3
4 5;
enddata
min= @sum(quinua(i):(a(i)+b(i)*w(i))*w(i))+
@sum(producto(j):(c(j)*p(j)^(2)))+
@sum(pxm(j,k):costo_env(j,k)*y(j,k));
@for(quinua(i):w(i)=@sum(producto(j):x(i,j)));
@for(producto(j):p(j)=@sum(quinua(i):x(i,j)));
@sum(producto(j):c(j)*p(j)^(2))<=130000;
@for(pxm(j,k):y(j,k)>=min_env(j,k));
@for(producto(j):@sum(quinua(i):grado_s(i)*x(i,j))>=grado_m(j)*p(j));
@for(producto(j):@sum(quinua(i):x(i,j))=@sum(mercado(k):y(j,k)));
SOLUCION:
Model Class: QP
Total variables: 15
Nonlinear variables: 5
Integer variables: 0
Total constraints: 15
Nonlinear constraints: 2
Total nonzeros: 50
Nonlinear nonzeros: 7
planta/1..2/: produccion;
almacen/1..2/:;
ventas/1..2/: minimo;
pxa(planta,almacen): X,F;
pxv(planta,ventas): Y,G;
axv(almacen,ventas): costo,W;
end sets
Data:
@for(planta(i):
@sum(almacen(j): X(i,j)) + @sum(ventas(k): Y(i,k)) <= produccion(i));
@for(ventas(k):
@sum(planta(i): Y(i,k)) + @sum(almacen(j): W(j,k)) >= minimo(k));
@for(almacen(j):
@sum(planta(i):X(i,j))= @sum(ventas(k): W(j,k)));
SOLUCION:
Model Class: QP
Total variables: 12
Nonlinear variables: 8
Integer variables: 0
Total constraints: 8
Nonlinear constraints: 2
Total nonzeros: 40
Nonlinear nonzeros: 12
Data:
disponible= 350 300;
A= 40.6 25.4
18.4 27
26.8 29;
B= 0.16 0.09
0.06 0.08
0.08 0.09;
maximo= 210 250
220 200
190 280;
Requer= 0.3 0.4 0.2
0.4 0.5 0.3;
End data
Max= @sum(PxR(i,j):(A(i,j)-B(i,j)*X(i,j))*X(i,j))-
@sum(insumo(k):0.00005*(ins^3));
@for(PxR(i,j):
X(i,j)<=Maximo(i,j));
@for(insumo(k):
Ins(k)<=Disponible(k));
@for(insumo(k):
Ins(k)= @sum(PxR(i,j):Requer(k,i)*X(i,j)));
1.6
1.7
Sets:
Mes/1..3/: A, B, P, Capac_prod, Demanda, X;
Frigorifico/1..2/: C, D, Capac_almac;
MxF(mes, frigorifico): SF;
End sets
Data:
A= 0.8 1 1.2;
B= 0.8 0.9 0.7;
Capac_prod= 1100 1200 1000;
Demanda= 700 800 1000;
C= 5 6;
D= 4 5;
Capac_almac= 60 80;
End data
@for(mes(i):X(i)<=capac_prod(i));
@for(MxF(i,j): SF(i,j)<=Capac_almac(j));
@for(mes(i)|i#eq#1:
@sum(frigorifico(j):SF(i,j))=X(i)-Demanda(i));
@for(mes(i)|i#ge#2:
@sum(frigorifico(j):SF(i,j))=@sum(frigorifico(j):SF(i-1,j))+X(i)-
Demanda(i));