MINLPLib

A Library of Mixed-Integer and Continuous Nonlinear Programming Instances

Home // Instances // Documentation // Download // Statistics


Instance: ex1243

Formats ams gms mod nl osil
Primal Bounds
83402.50641000 p1 ( gdx sol )
(infeas: 2e-13)
Dual Bounds
83402.50633000 (ANTIGONE)
83402.50633000 (BARON)
83402.50638000 (COUENNE)
83402.50600000 (LINDO)
83402.50641000 (SCIP)
References Floudas, C A, Pardalos, Panos M, Adjiman, C S, Esposito, W R, Gumus, Zeynep H, Harding, S T, Klepeis, John L, Meyer, Clifford A, and Schweiger, C A, Handbook of Test Problems in Local and Global Optimization, Kluwer Academic Publishers, 1999.
Zamora, Juan and Grossmann, I E, A Global MINLP Optimization Algorithm for the Synthesis of Heat Exchanger Networks with No Stream Splits, Computers and Chemical Engineering, 22:3, 1998, 367-384.
Source Test Problem ex12.4.3 of Chapter 12 of Floudas e.a. handbook
Application Simultaneous Optimization for HEN Synthesis
Added to library 01 May 2001
Problem type MBNLP
#Variables 68
#Binary Variables 16
#Integer Variables 0
#Nonlinear Variables 36
#Nonlinear Binary Variables 0
#Nonlinear Integer Variables 0
Objective Sense min
Objective type nonlinear
Objective curvature indefinite
#Nonzeros in Objective 52
#Nonlinear Nonzeros in Objective 36
#Constraints 96
#Linear Constraints 96
#Quadratic Constraints 0
#Polynomial Constraints 0
#Signomial Constraints 0
#General Nonlinear Constraints 0
Operands in Gen. Nonlin. Functions div
Constraints curvature linear
#Nonzeros in Jacobian 276
#Nonlinear Nonzeros in Jacobian 0
#Nonzeros in (Upper-Left) Hessian of Lagrangian 100
#Nonzeros in Diagonal of Hessian of Lagrangian 20
#Blocks in Hessian of Lagrangian 8
Minimal blocksize in Hessian of Lagrangian 2
Maximal blocksize in Hessian of Lagrangian 7
Average blocksize in Hessian of Lagrangian 4.5
#Semicontinuities 0
#Nonlinear Semicontinuities 0
#SOS type 1 0
#SOS type 2 0
Infeasibility of initial point 3300
Sparsity Jacobian Sparsity of Objective Gradient and Jacobian
Sparsity Hessian of Lagrangian Sparsity of Hessian of Lagrangian

$offlisting
*  
*  Equation counts
*      Total        E        G        L        N        X        C        B
*         97       25        0       72        0        0        0        0
*  
*  Variable counts
*                   x        b        i      s1s      s2s       sc       si
*      Total     cont   binary  integer     sos1     sos2    scont     sint
*         69       53       16        0        0        0        0        0
*  FX      0
*  
*  Nonzero counts
*      Total    const       NL      DLL
*        329      293       36        0
*
*  Solve m using MINLP minimizing objvar;


Variables  x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,x17,x18,x19
          ,x20,x21,x22,x23,x24,x25,x26,x27,x28,x29,x30,x31,x32,x33,x34,x35,x36
          ,x37,x38,x39,x40,x41,x42,x43,x44,x45,x46,x47,x48,x49,x50,x51,x52,b53
          ,b54,b55,b56,b57,b58,b59,b60,b61,b62,b63,b64,b65,b66,b67,b68,objvar;

Positive Variables  x17,x18,x19,x20,x21,x22,x23,x24,x25,x26,x27,x28,x29,x30
          ,x31,x32;

Binary Variables  b53,b54,b55,b56,b57,b58,b59,b60,b61,b62,b63,b64,b65,b66,b67
          ,b68;

Equations  e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12,e13,e14,e15,e16,e17,e18,e19
          ,e20,e21,e22,e23,e24,e25,e26,e27,e28,e29,e30,e31,e32,e33,e34,e35,e36
          ,e37,e38,e39,e40,e41,e42,e43,e44,e45,e46,e47,e48,e49,e50,e51,e52,e53
          ,e54,e55,e56,e57,e58,e59,e60,e61,e62,e63,e64,e65,e66,e67,e68,e69,e70
          ,e71,e72,e73,e74,e75,e76,e77,e78,e79,e80,e81,e82,e83,e84,e85,e86,e87
          ,e88,e89,e90,e91,e92,e93,e94,e95,e96,e97;


e1.. -(208.15*x17/(x33 + x34) + 208.15*x18/(x34 + x35) + 208.15*x19/(x35 + x36)
      + 208.15*x20/(x37 + x38) + 208.15*x21/(x38 + x39) + 208.15*x22/(x39 + x40
     ) + 208.15*x23/(x41 + x42) + 208.15*x24/(x42 + x43) + 208.15*x25/(x43 + 
     x44) + 208.15*x26/(x45 + x46) + 208.15*x27/(x46 + x47) + 208.15*x28/(x47
      + x48) + 208.15*x29/(40 + x49) + 208.15*x30/(10 + x50) + 166.516666666667
     *x31/(42 + x51) + 166.516666666667*x32/(37 + x52) + 80*x31 + 80*x32 + 20*
     x29 + 20*x30) - 6250*b53 - 6250*b54 - 6250*b55 - 6250*b56 - 6250*b57
      - 6250*b58 - 6250*b59 - 6250*b60 - 6250*b61 - 6250*b62 - 6250*b63
      - 6250*b64 - 6250*b65 - 6250*b66 - 6250*b67 - 6250*b68 + objvar =E= 0;

e2..    x17 + x18 + x19 + x20 + x21 + x22 + x29 =E= 3300;

e3..    x23 + x24 + x25 + x26 + x27 + x28 + x30 =E= 1800;

e4..    x17 + x18 + x19 + x23 + x24 + x25 + x31 =E= 2300;

e5..    x20 + x21 + x22 + x26 + x27 + x28 + x32 =E= 2400;

e6..    30*x1 - 30*x2 - x17 - x20 =E= 0;

e7..    30*x2 - 30*x3 - x18 - x21 =E= 0;

e8..    30*x3 - 30*x4 - x19 - x22 =E= 0;

e9..    15*x5 - 15*x6 - x23 - x26 =E= 0;

e10..    15*x6 - 15*x7 - x24 - x27 =E= 0;

e11..    15*x7 - 15*x8 - x25 - x28 =E= 0;

e12..    20*x9 - 20*x10 - x17 - x23 =E= 0;

e13..    20*x10 - 20*x11 - x18 - x24 =E= 0;

e14..    20*x11 - 20*x12 - x19 - x25 =E= 0;

e15..    40*x13 - 40*x14 - x20 - x26 =E= 0;

e16..    40*x14 - 40*x15 - x21 - x27 =E= 0;

e17..    40*x15 - 40*x16 - x22 - x28 =E= 0;

e18..    x1 =E= 443;

e19..    x5 =E= 423;

e20..    x11 =E= 293;

e21..    x15 =E= 353;

e22..  - x1 + x2 =L= 0;

e23..  - x2 + x3 =L= 0;

e24..  - x3 + x4 =L= 0;

e25..  - x5 + x6 =L= 0;

e26..  - x6 + x7 =L= 0;

e27..  - x7 + x8 =L= 0;

e28..  - x9 + x10 =L= 0;

e29..  - x10 + x11 =L= 0;

e30..  - x11 + x12 =L= 0;

e31..  - x13 + x14 =L= 0;

e32..  - x14 + x15 =L= 0;

e33..  - x15 + x16 =L= 0;

e34..  - x3 =L= -333;

e35..  - x7 =L= -303;

e36..    x9 =L= 408;

e37..    x13 =L= 413;

e38..    30*x3 - x29 =E= 9990;

e39..    15*x7 - x30 =E= 4545;

e40..    20*x9 + x31 =E= 8160;

e41..    40*x13 + x32 =E= 16520;

e42..    x17 - 2300*b53 =L= 0;

e43..    x18 - 2300*b54 =L= 0;

e44..    x19 - 2300*b55 =L= 0;

e45..    x20 - 2400*b56 =L= 0;

e46..    x21 - 2400*b57 =L= 0;

e47..    x22 - 2400*b58 =L= 0;

e48..    x23 - 1800*b59 =L= 0;

e49..    x24 - 1800*b60 =L= 0;

e50..    x25 - 1800*b61 =L= 0;

e51..    x26 - 1800*b62 =L= 0;

e52..    x27 - 1800*b63 =L= 0;

e53..    x28 - 1800*b64 =L= 0;

e54..    x29 - 3300*b65 =L= 0;

e55..    x30 - 1800*b66 =L= 0;

e56..    x31 - 2300*b67 =L= 0;

e57..    x32 - 2400*b68 =L= 0;

e58..  - x1 + x9 + x33 + 150*b53 =L= 150;

e59..  - x2 + x10 + x34 + 150*b54 =L= 150;

e60..  - x3 + x11 + x35 + 150*b55 =L= 150;

e61..  - x1 + x13 + x37 + 90*b56 =L= 90;

e62..  - x2 + x14 + x38 + 90*b57 =L= 90;

e63..  - x3 + x15 + x39 + 90*b58 =L= 90;

e64..  - x5 + x9 + x41 + 130*b59 =L= 130;

e65..  - x6 + x10 + x42 + 130*b60 =L= 130;

e66..  - x7 + x11 + x43 + 130*b61 =L= 130;

e67..  - x5 + x13 + x45 + 70*b62 =L= 70;

e68..  - x6 + x14 + x46 + 70*b63 =L= 70;

e69..  - x7 + x15 + x47 + 70*b64 =L= 70;

e70..  - x2 + x10 + x34 + 150*b53 =L= 150;

e71..  - x3 + x11 + x35 + 150*b54 =L= 150;

e72..  - x4 + x12 + x36 + 150*b55 =L= 150;

e73..  - x2 + x14 + x38 + 90*b56 =L= 90;

e74..  - x3 + x15 + x39 + 90*b57 =L= 90;

e75..  - x4 + x16 + x40 + 90*b58 =L= 90;

e76..  - x6 + x10 + x42 + 130*b59 =L= 130;

e77..  - x7 + x11 + x43 + 130*b60 =L= 130;

e78..  - x8 + x12 + x44 + 130*b61 =L= 130;

e79..  - x6 + x14 + x46 + 70*b62 =L= 70;

e80..  - x7 + x15 + x47 + 70*b63 =L= 70;

e81..  - x8 + x16 + x48 + 70*b64 =L= 70;

e82..  - x3 + x49 =L= -313;

e83..  - x7 + x50 =L= -313;

e84..    x9 + x51 =L= 450;

e85..    x13 + x52 =L= 450;

e86..    b53 + b59 =L= 1;

e87..    b54 + b60 =L= 1;

e88..    b55 + b61 =L= 1;

e89..    b56 + b62 =L= 1;

e90..    b57 + b63 =L= 1;

e91..    b58 + b64 =L= 1;

e92..    b53 + b56 =L= 1;

e93..    b54 + b57 =L= 1;

e94..    b55 + b58 =L= 1;

e95..    b59 + b62 =L= 1;

e96..    b60 + b63 =L= 1;

e97..    b61 + b64 =L= 1;

* set non-default bounds
x1.lo = 333; x1.up = 443;
x2.lo = 333; x2.up = 443;
x3.lo = 333; x3.up = 443;
x4.lo = 333; x4.up = 443;
x5.lo = 303; x5.up = 423;
x6.lo = 303; x6.up = 423;
x7.lo = 303; x7.up = 423;
x8.lo = 303; x8.up = 423;
x9.lo = 293; x9.up = 408;
x10.lo = 293; x10.up = 408;
x11.lo = 293; x11.up = 408;
x12.lo = 293; x12.up = 408;
x13.lo = 353; x13.up = 413;
x14.lo = 353; x14.up = 413;
x15.lo = 353; x15.up = 413;
x16.lo = 353; x16.up = 413;
x33.lo = 1;
x34.lo = 1;
x35.lo = 1;
x36.lo = 1;
x37.lo = 1;
x38.lo = 1;
x39.lo = 1;
x40.lo = 1;
x41.lo = 1;
x42.lo = 1;
x43.lo = 1;
x44.lo = 1;
x45.lo = 1;
x46.lo = 1;
x47.lo = 1;
x48.lo = 1;
x49.lo = 1;
x50.lo = 1;
x51.lo = 1;
x52.lo = 1;

Model m / all /;

m.limrow=0; m.limcol=0;
m.tolproj=0.0;

$if NOT '%gams.u1%' == '' $include '%gams.u1%'

$if not set MINLP $set MINLP MINLP
Solve m using %MINLP% minimizing objvar;


Last updated: 2018-09-14 Git hash: ac5a5314
Imprint / Privacy Policy