MINLPLib

A Library of Mixed-Integer and Continuous Nonlinear Programming Instances

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


Instance hybriddynamic_fixedcc

Fixed Finite Elements
Formats ams gms lp mod nl osil pip py
Primal Bounds (infeas ≤ 1e-08)
1.47377778 p1 ( gdx sol )
(infeas: 9e-16)
Other points (infeas > 1e-08)
1.47350376 p2 ( gdx sol )
(infeas: 7e-08)
Dual Bounds
1.47377775 (ANTIGONE)
1.47377778 (BARON)
1.47377778 (COUENNE)
1.47377778 (CPLEX)
1.47377776 (GUROBI)
1.47377778 (LINDO)
1.47377778 (SCIP)
References Baumrucker, Brian and Biegler, L T, MINLP & MPCC Strategies for Optimization of a Class of Hybrid Dynamic Systems, 2009.
Source del_asl_hfix.gms from minlp.org model 27
Application Hybrid Dynamic Systems
Added to library 18 Aug 2014
Problem type QP
#Variables 121
#Binary Variables 0
#Integer Variables 0
#Nonlinear Variables 51
#Nonlinear Binary Variables 0
#Nonlinear Integer Variables 0
Objective Sense min
Objective type quadratic
Objective curvature indefinite
#Nonzeros in Objective 51
#Nonlinear Nonzeros in Objective 51
#Constraints 99
#Linear Constraints 99
#Quadratic Constraints 0
#Polynomial Constraints 0
#Signomial Constraints 0
#General Nonlinear Constraints 0
Operands in Gen. Nonlin. Functions  
Constraints curvature linear
#Nonzeros in Jacobian 228
#Nonlinear Nonzeros in Jacobian 0
#Nonzeros in (Upper-Left) Hessian of Lagrangian 51
#Nonzeros in Diagonal of Hessian of Lagrangian 11
#Blocks in Hessian of Lagrangian 31
Minimal blocksize in Hessian of Lagrangian 1
Maximal blocksize in Hessian of Lagrangian 2
Average blocksize in Hessian of Lagrangian 1.645161
#Semicontinuities 0
#Nonlinear Semicontinuities 0
#SOS type 1 0
#SOS type 2 0
Minimal coefficient 2.0000e-01
Maximal coefficient 1.0000e+03
Infeasibility of initial point 3
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
*        100      100        0        0        0        0        0        0
*  
*  Variable counts
*                   x        b        i      s1s      s2s       sc       si
*      Total     cont   binary  integer     sos1     sos2    scont     sint
*        122      122        0        0        0        0        0        0
*  FX      2
*  
*  Nonzero counts
*      Total    const       NL      DLL
*        280      229       51        0
*
*  Solve m using NLP 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,x53
          ,x54,x55,x56,x57,x58,x59,x60,x61,x62,x63,x64,x65,x66,x67,x68,x69,x70
          ,x71,x72,x73,x74,x75,x76,x77,x78,x79,x80,x81,x82,x83,x84,x85,x86,x87
          ,x88,x89,x90,x91,x92,x93,x94,x95,x96,x97,x98,x99,x100,x101,x102,x103
          ,x104,x105,x106,x107,x108,x109,x110,x111,x112,x113,x114,x115,x116
          ,x117,x118,x119,x120,x121,objvar;

Positive Variables  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,x66,x67,x68,x69,x70;

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,e98,e99,e100;


e1.. -(sqr((-1.66666666666667) + x121) + 0.2*sqr(x101) + 0.2*sqr(x102) + 0.2*
     sqr(x103) + 0.2*sqr(x104) + 0.2*sqr(x105) + 0.2*sqr(x106) + 0.2*sqr(x107)
      + 0.2*sqr(x108) + 0.2*sqr(x109) + 0.2*sqr(x110) + 1000*(x61*x41 + x51*x31
      + x62*x42 + x52*x32 + x63*x43 + x53*x33 + x64*x44 + x54*x34 + x65*x45 + 
     x55*x35 + x66*x46 + x56*x36 + x67*x47 + x57*x37 + x68*x48 + x58*x38 + x69*
     x49 + x59*x39 + x70*x50 + x60*x40)) + objvar =E= 0;

e2..  - x81 + x91 =E= 0.2;

e3..  - x82 + x92 =E= 0.2;

e4..  - x83 + x93 =E= 0.2;

e5..  - x84 + x94 =E= 0.2;

e6..  - x85 + x95 =E= 0.2;

e7..  - x86 + x96 =E= 0.2;

e8..  - x87 + x97 =E= 0.2;

e9..  - x88 + x98 =E= 0.2;

e10..  - x89 + x99 =E= 0.2;

e11..  - x90 + x100 =E= 0.2;

e12..  - x71 + x101 - 0.2*x111 =E= 0;

e13..  - x72 + x102 - 0.2*x112 =E= 0;

e14..  - x73 + x103 - 0.2*x113 =E= 0;

e15..  - x74 + x104 - 0.2*x114 =E= 0;

e16..  - x75 + x105 - 0.2*x115 =E= 0;

e17..  - x76 + x106 - 0.2*x116 =E= 0;

e18..  - x77 + x107 - 0.2*x117 =E= 0;

e19..  - x78 + x108 - 0.2*x118 =E= 0;

e20..  - x79 + x109 - 0.2*x119 =E= 0;

e21..  - x80 + x110 - 0.2*x120 =E= 0;

e22..  - x81 + x82 =E= 0.2;

e23..  - x82 + x83 =E= 0.2;

e24..  - x83 + x84 =E= 0.2;

e25..  - x84 + x85 =E= 0.2;

e26..  - x85 + x86 =E= 0.2;

e27..  - x86 + x87 =E= 0.2;

e28..  - x87 + x88 =E= 0.2;

e29..  - x88 + x89 =E= 0.2;

e30..  - x89 + x90 =E= 0.2;

e31..  - x71 + x72 - 0.2*x111 =E= 0;

e32..  - x72 + x73 - 0.2*x112 =E= 0;

e33..  - x73 + x74 - 0.2*x113 =E= 0;

e34..  - x74 + x75 - 0.2*x114 =E= 0;

e35..  - x75 + x76 - 0.2*x115 =E= 0;

e36..  - x76 + x77 - 0.2*x116 =E= 0;

e37..  - x77 + x78 - 0.2*x117 =E= 0;

e38..  - x78 + x79 - 0.2*x118 =E= 0;

e39..  - x79 + x80 - 0.2*x119 =E= 0;

e40..  - x80 - 0.2*x120 + x121 =E= 0;

e41..    x1 + x111 =E= 2;

e42..    x2 + x112 =E= 2;

e43..    x3 + x113 =E= 2;

e44..    x4 + x114 =E= 2;

e45..    x5 + x115 =E= 2;

e46..    x6 + x116 =E= 2;

e47..    x7 + x117 =E= 2;

e48..    x8 + x118 =E= 2;

e49..    x9 + x119 =E= 2;

e50..    x10 + x120 =E= 2;

e51..  - x11 + x21 + x101 =E= 0;

e52..  - x12 + x22 + x102 =E= 0;

e53..  - x13 + x23 + x103 =E= 0;

e54..  - x14 + x24 + x104 =E= 0;

e55..  - x15 + x25 + x105 =E= 0;

e56..  - x16 + x26 + x106 =E= 0;

e57..  - x17 + x27 + x107 =E= 0;

e58..  - x18 + x28 + x108 =E= 0;

e59..  - x19 + x29 + x109 =E= 0;

e60..  - x20 + x30 + x110 =E= 0;

e61..  - x11 + x31 =E= 0;

e62..  - x12 + x32 =E= 0;

e63..  - x13 + x33 =E= 0;

e64..  - x14 + x34 =E= 0;

e65..  - x15 + x35 =E= 0;

e66..  - x16 + x36 =E= 0;

e67..  - x17 + x37 =E= 0;

e68..  - x18 + x38 =E= 0;

e69..  - x19 + x39 =E= 0;

e70..  - x20 + x40 =E= 0;

e71..  - x21 + x41 =E= 0;

e72..  - x22 + x42 =E= 0;

e73..  - x23 + x43 =E= 0;

e74..  - x24 + x44 =E= 0;

e75..  - x25 + x45 =E= 0;

e76..  - x26 + x46 =E= 0;

e77..  - x27 + x47 =E= 0;

e78..  - x28 + x48 =E= 0;

e79..  - x29 + x49 =E= 0;

e80..  - x30 + x50 =E= 0;

e81..    x1 + x51 =E= 1;

e82..    x2 + x52 =E= 1;

e83..    x3 + x53 =E= 1;

e84..    x4 + x54 =E= 1;

e85..    x5 + x55 =E= 1;

e86..    x6 + x56 =E= 1;

e87..    x7 + x57 =E= 1;

e88..    x8 + x58 =E= 1;

e89..    x9 + x59 =E= 1;

e90..    x10 + x60 =E= 1;

e91..  - x1 + x61 =E= 1;

e92..  - x2 + x62 =E= 1;

e93..  - x3 + x63 =E= 1;

e94..  - x4 + x64 =E= 1;

e95..  - x5 + x65 =E= 1;

e96..  - x6 + x66 =E= 1;

e97..  - x7 + x67 =E= 1;

e98..  - x8 + x68 =E= 1;

e99..  - x9 + x69 =E= 1;

e100..  - x10 + x70 =E= 1;

* set non-default bounds
x1.lo = -1; x1.up = 1;
x2.lo = -1; x2.up = 1;
x3.lo = -1; x3.up = 1;
x4.lo = -1; x4.up = 1;
x5.lo = -1; x5.up = 1;
x6.lo = -1; x6.up = 1;
x7.lo = -1; x7.up = 1;
x8.lo = -1; x8.up = 1;
x9.lo = -1; x9.up = 1;
x10.lo = -1; x10.up = 1;
x71.fx = -2;
x81.fx = 0;

* set non-default levels
x1.l = -1;
x2.l = -1;
x3.l = -1;
x4.l = -1;
x5.l = -1;
x6.l = -1;
x7.l = -1;
x8.l = -1;
x9.l = -1;
x10.l = -1;
x11.l = 0.1;
x12.l = 0.1;
x13.l = 0.1;
x14.l = 0.1;
x15.l = 0.1;
x16.l = 0.1;
x17.l = 0.1;
x18.l = 0.1;
x19.l = 0.1;
x20.l = 0.1;
x21.l = 0.1;
x22.l = 0.1;
x23.l = 0.1;
x24.l = 0.1;
x25.l = 0.1;
x26.l = 0.1;
x27.l = 0.1;
x28.l = 0.1;
x29.l = 0.1;
x30.l = 0.1;
x31.l = 0.1;
x32.l = 0.1;
x33.l = 0.1;
x34.l = 0.1;
x35.l = 0.1;
x36.l = 0.1;
x37.l = 0.1;
x38.l = 0.1;
x39.l = 0.1;
x40.l = 0.1;
x41.l = 0.1;
x42.l = 0.1;
x43.l = 0.1;
x44.l = 0.1;
x45.l = 0.1;
x46.l = 0.1;
x47.l = 0.1;
x48.l = 0.1;
x49.l = 0.1;
x50.l = 0.1;
x51.l = 0.1;
x52.l = 0.1;
x53.l = 0.1;
x54.l = 0.1;
x55.l = 0.1;
x56.l = 0.1;
x57.l = 0.1;
x58.l = 0.1;
x59.l = 0.1;
x60.l = 0.1;
x61.l = 0.1;
x62.l = 0.1;
x63.l = 0.1;
x64.l = 0.1;
x65.l = 0.1;
x66.l = 0.1;
x67.l = 0.1;
x68.l = 0.1;
x69.l = 0.1;
x70.l = 0.1;
x72.l = -2;
x73.l = -2;
x74.l = -2;
x75.l = -2;
x76.l = -2;
x77.l = -2;
x78.l = -2;
x79.l = -2;
x80.l = -2;
x82.l = 1;
x83.l = 1;
x84.l = 1;
x85.l = 1;
x86.l = 1;
x87.l = 1;
x88.l = 1;
x89.l = 1;
x90.l = 1;
x91.l = 1;
x92.l = 1;
x93.l = 1;
x94.l = 1;
x95.l = 1;
x96.l = 1;
x97.l = 1;
x98.l = 1;
x99.l = 1;
x100.l = 1;
x101.l = -2;
x102.l = -2;
x103.l = -2;
x104.l = -2;
x105.l = -2;
x106.l = -2;
x107.l = -2;
x108.l = -2;
x109.l = -2;
x110.l = -2;
x121.l = 1;

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-03-25 Git hash: 1dae024f
Imprint / Privacy Policy / License: CC-BY 4.0