MINLPLib

A Library of Mixed-Integer and Continuous Nonlinear Programming Instances

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


Instance waterund11

Formats ams gms lp mod nl osil pip py
Primal Bounds (infeas ≤ 1e-08)
106.27675970 p1 ( gdx sol )
(infeas: 2e-12)
104.88614710 p2 ( gdx sol )
(infeas: 9e-13)
Other points (infeas > 1e-08)  
Dual Bounds
104.88614690 (ANTIGONE)
104.87565840 (BARON)
103.86755570 (COUENNE)
104.88611910 (GUROBI)
104.06776960 (LINDO)
104.88607060 (SCIP)
45.00000000 (SHOT)
References Castro, Pedro M and Teles, João P, Comparison of global optimization algorithms for the design of water-using networks, Computers and Chemical Engineering, 52, 2013, 249-261.
Teles, João P, Castro, Pedro M, and Novais, Augusto Q, LP-based solution strategies for the optimal design of industrial water networks with multiple contaminants, Chemical Engineering Science, 63:2, 2008, 376-394.
Teles, João P, Castro, Pedro M, and Matos, Henrique A, Global optimization of water networks design using multiparametric disaggregation, Computers and Chemical Engineering 40, 2012, 132-147.
Source ANTIGONE test library model Other_MIQCQP/teles_etal_2009_WUN_Ex11.gms
Application Water Network Design
Added to library 15 Aug 2014
Problem type QCP
#Variables 64
#Binary Variables 0
#Integer Variables 0
#Nonlinear Variables 39
#Nonlinear Binary Variables 0
#Nonlinear Integer Variables 0
Objective Sense min
Objective type linear
Objective curvature linear
#Nonzeros in Objective 16
#Nonlinear Nonzeros in Objective 0
#Constraints 64
#Linear Constraints 36
#Quadratic Constraints 28
#Polynomial Constraints 0
#Signomial Constraints 0
#General Nonlinear Constraints 0
Operands in Gen. Nonlin. Functions  
Constraints curvature indefinite
#Nonzeros in Jacobian 310
#Nonlinear Nonzeros in Jacobian 156
#Nonzeros in (Upper-Left) Hessian of Lagrangian 144
#Nonzeros in Diagonal of Hessian of Lagrangian 0
#Blocks in Hessian of Lagrangian 3
Minimal blocksize in Hessian of Lagrangian 13
Maximal blocksize in Hessian of Lagrangian 13
Average blocksize in Hessian of Lagrangian 13.0
#Semicontinuities 0
#Nonlinear Semicontinuities 0
#SOS type 1 0
#SOS type 2 0
Minimal coefficient 1.0000e+00
Maximal coefficient 9.0400e+02
Infeasibility of initial point 3.398e+04
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
*         65       33        4       28        0        0        0        0
*  
*  Variable counts
*                   x        b        i      s1s      s2s       sc       si
*      Total     cont   binary  integer     sos1     sos2    scont     sint
*         65       65        0        0        0        0        0        0
*  FX      0
*  
*  Nonzero counts
*      Total    const       NL      DLL
*        327      171      156        0
*
*  Solve m using NLP minimizing objvar;


Variables  objvar,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
          ,x53,x54,x55,x56,x57,x58,x59,x60,x61,x62,x63,x64,x65;

Positive Variables  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,x53,x54,x55,x56,x57,x58,x59,x60,x61,x62,x63,x64,x65;

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;


e1..    objvar - x2 - x3 - x4 - x5 - x6 - x7 - x8 - x9 - x10 - x11 - x12 - x13
      - x14 - x15 - x16 - x17 =E= 0;

e2..  - x2 - x6 - x10 - x14 + x18 - x26 - x30 - x34 - x38 =E= 0;

e3..  - x3 - x7 - x11 - x15 + x19 - x27 - x31 - x35 - x39 =E= 0;

e4..  - x4 - x8 - x12 - x16 + x20 - x28 - x32 - x36 - x40 =E= 0;

e5..  - x5 - x9 - x13 - x17 - x29 - x33 - x37 - x41 =E= -95;

e6..    x18 - x22 - x26 - x27 - x28 - x29 =E= 0;

e7..    x19 - x23 - x30 - x31 - x32 - x33 =E= 0;

e8..    x20 - x24 - x34 - x35 - x36 - x37 =E= 0;

e9..  - x25 - x38 - x39 - x40 - x41 =E= -50;

e10.. x18*x42 - (x26*x54 + x30*x58 + x34*x62) - 2*x2 - 3*x6 - 4*x10 - 623*x38
       =E= 0;

e11.. x18*x43 - (x26*x55 + x30*x59 + x34*x63) - 2*x6 - 5*x10 - 2*x14 - 904*x38
       =E= 0;

e12.. x18*x44 - (x26*x56 + x30*x60 + x34*x64) - 6*x2 - 2*x10 - x14 - 846*x38
       =E= 0;

e13.. x18*x45 - (x26*x57 + x30*x61 + x34*x65) - 5*x2 - 3*x6 - x10 - 3*x14
       - 611*x38 =E= 0;

e14.. x19*x46 - (x27*x54 + x31*x58 + x35*x62) - 2*x3 - 3*x7 - 4*x11 - 623*x39
       =E= 0;

e15.. x19*x47 - (x27*x55 + x31*x59 + x35*x63) - 2*x7 - 5*x11 - 2*x15 - 904*x39
       =E= 0;

e16.. x19*x48 - (x27*x56 + x31*x60 + x35*x64) - 6*x3 - 2*x11 - x15 - 846*x39
       =E= 0;

e17.. x19*x49 - (x27*x57 + x31*x61 + x35*x65) - 5*x3 - 3*x7 - x11 - 3*x15
       - 611*x39 =E= 0;

e18.. x20*x50 - (x28*x54 + x32*x58 + x36*x62) - 2*x4 - 3*x8 - 4*x12 - 623*x40
       =E= 0;

e19.. x20*x51 - (x28*x55 + x32*x59 + x36*x63) - 2*x8 - 5*x12 - 2*x16 - 904*x40
       =E= 0;

e20.. x20*x52 - (x28*x56 + x32*x60 + x36*x64) - 6*x4 - 2*x12 - x16 - 846*x40
       =E= 0;

e21.. x20*x53 - (x28*x57 + x32*x61 + x36*x65) - 5*x4 - 3*x8 - x12 - 3*x16
       - 611*x40 =E= 0;

e22.. -x18*(x54 - x42) =E= -18598;

e23.. -x18*(x55 - x43) =E= -3672;

e24.. -x18*(x56 - x44) =E= -7582;

e25.. -x18*(x57 - x45) =E= -11662;

e26.. -x19*(x58 - x46) =E= -1776;

e27.. -x19*(x59 - x47) =E= -576;

e28.. -x19*(x60 - x48) =E= -4236;

e29.. -x19*(x61 - x49) =E= -2724;

e30.. -x20*(x62 - x50) =E= -5130;

e31.. -x20*(x63 - x51) =E= -14310;

e32.. -x20*(x64 - x52) =E= -1035;

e33.. -x20*(x65 - x53) =E= -33975;

e34..    x42 =L= 326;

e35..    x43 =L= 842;

e36..    x44 =L= 733;

e37..    x45 =L= 214;

e38..    x46 =L= 751;

e39..    x47 =L= 963;

e40..    x48 =L= 337;

e41..    x49 =L= 762;

e42..    x50 =L= 837;

e43..    x51 =L= 695;

e44..    x52 =L= 991;

e45..    x53 =L= 180;

e46..    x54 =L= 873;

e47..    x55 =L= 950;

e48..    x56 =L= 956;

e49..    x57 =L= 557;

e50..    x58 =L= 899;

e51..    x59 =L= 1011;

e52..    x60 =L= 690;

e53..    x61 =L= 989;

e54..    x62 =L= 951;

e55..    x63 =L= 1013;

e56..    x64 =L= 1014;

e57..    x65 =L= 935;

e58.. -(x29*x54 + x33*x58 + x37*x62) - 2*x5 - 3*x9 - 4*x13 - 623*x41 =G= -13015
      ;

e59.. -(x29*x55 + x33*x59 + x37*x63) - 2*x9 - 5*x13 - 2*x17 - 904*x41
       =G= -69160;

e60.. -(x29*x56 + x33*x60 + x37*x64) - 6*x5 - 2*x13 - x17 - 846*x41 =G= -65265;

e61.. -(x29*x57 + x33*x61 + x37*x65) - 5*x5 - 3*x9 - x13 - 3*x17 - 611*x41
       =G= -48260;

e62..    x18 =L= 34;

e63..    x19 =L= 12;

e64..    x20 =L= 45;

e65..    x21 =L= 0;

* set non-default bounds
x2.up = 100000;
x3.up = 100000;
x4.up = 100000;
x5.up = 100000;
x6.up = 100000;
x7.up = 100000;
x8.up = 100000;
x9.up = 100000;
x10.up = 100000;
x11.up = 100000;
x12.up = 100000;
x13.up = 100000;
x14.up = 100000;
x15.up = 100000;
x16.up = 100000;
x17.up = 100000;
x18.up = 100000;
x19.up = 100000;
x20.up = 100000;
x21.up = 100000;
x22.up = 100000;
x23.up = 100000;
x24.up = 100000;
x25.up = 100000;
x26.up = 100000;
x27.up = 100000;
x28.up = 100000;
x29.up = 100000;
x30.up = 100000;
x31.up = 100000;
x32.up = 100000;
x33.up = 100000;
x34.up = 100000;
x35.up = 100000;
x36.up = 100000;
x37.up = 100000;
x38.up = 100000;
x39.up = 100000;
x40.up = 100000;
x41.up = 100000;
x42.up = 100000;
x43.up = 100000;
x44.up = 100000;
x45.up = 100000;
x46.up = 100000;
x47.up = 100000;
x48.up = 100000;
x49.up = 100000;
x50.up = 100000;
x51.up = 100000;
x52.up = 100000;
x53.up = 100000;
x54.up = 100000;
x55.up = 100000;
x56.up = 100000;
x57.up = 100000;
x58.up = 100000;
x59.up = 100000;
x60.up = 100000;
x61.up = 100000;
x62.up = 100000;
x63.up = 100000;
x64.up = 100000;
x65.up = 100000;

Model m / all /;

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

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

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


Last updated: 2024-04-02 Git hash: 1dd5fb9b
Imprint / Privacy Policy / License: CC-BY 4.0