[SCIP] Initial value for a warmstart solution

Stefan Vigerske svigerske at gams.com
Mon Jul 13 11:26:00 CEST 2020


Hi,

the OPTI/SCIP interface might not pass an initial solution from Matlab 
to SCIP. As OPTI development has stopped, it would be up to you to add 
such functionality in 
https://github.com/jonathancurrie/OPTI/blob/master/Solvers/Source/scip/scipmex.cpp 
  (I guess).
There is not too much to expect from passing an initial solution, but 
some of its effectyou could get by setting the SCIP option 
limits/objective to the objective value of your solution. Then SCIP 
would prune B&B-nodes which dual bound (given by the LP relaxation) is 
above this value.

Best,
Stefan

On 7/12/20 3:36 PM, Stephanos wrote:
> Dear Scip Team,
> 
> For a Controller I am solving a non-convex Mixed Integer Nonlinear Program (MINLP)
> 
> in Matlab via the Opti Toolbox with the solver SCIP.
> 
> Depending on a choosen Horizon it can contain from 8 to 8000 binary variables,
> 
> 16-16000 continous variables, 12-12000 equality constraints, 20-20000 inequality
> constraints,
> 
> 24-24000 box constraints and 0 nonlinear constraints.
> 
> Due to some insight of the model I can construct an initial feasible vector x0
> 
> to start the Optimization. The problem is that the solver does not use the
> initial feasible
> 
> vector for an initial guess in the optimization.
> 
> It starts with an initial primal bound of NaN and a Gap of Infinity.
> 
> Due to this problem I cannot give the solver for example a warmstart solution.
> 
> Is it somehow possible to give the scip solver an initial guess for the
> 
> optimization problem and respectively an initial primal bound before solving?
> 
> I have attached the result log of the problem below, if it helps to understand
> my question.
> 
> In the above given example I specified the limit of solutions to 1.
> 
> presolving:
> 
> (round 1, fast)       703 del vars, 1507 del conss, 0 add conss, 208 chg bounds,
> 0 chg sides, 100 chg coeffs, 0 upgd conss, 200 impls, 398 clqs
> 
> (round 2, fast)       704 del vars, 1607 del conss, 0 add conss, 377 chg bounds,
> 0 chg sides, 100 chg coeffs, 0 upgd conss, 200 impls, 398 clqs
> 
> (round 3, fast)       704 del vars, 1607 del conss, 198 add conss, 377 chg
> bounds, 0 chg sides, 100 chg coeffs, 0 upgd conss, 200 impls, 398 clqs
> 
> (round 4, fast)       704 del vars, 1607 del conss, 198 add conss, 773 chg
> bounds, 0 chg sides, 100 chg coeffs, 1 upgd conss, 200 impls, 398 clqs
> 
> (round 5, fast)       704 del vars, 1607 del conss, 396 add conss, 773 chg
> bounds, 0 chg sides, 100 chg coeffs, 1 upgd conss, 200 impls, 398 clqs
> 
> (round 6, fast)       704 del vars, 1607 del conss, 396 add conss, 773 chg
> bounds, 0 chg sides, 100 chg coeffs, 199 upgd conss, 200 impls, 398 clqs
> 
> (round 7, fast)       704 del vars, 1607 del conss, 495 add conss, 773 chg
> bounds, 0 chg sides, 100 chg coeffs, 298 upgd conss, 200 impls, 398 clqs
> 
> (round 8, exhaustive) 704 del vars, 1706 del conss, 891 add conss, 773 chg
> bounds, 0 chg sides, 100 chg coeffs, 298 upgd conss, 200 impls, 398 clqs
> 
> (round 9, fast)       704 del vars, 1706 del conss, 891 add conss, 1070 chg
> bounds, 0 chg sides, 100 chg coeffs, 298 upgd conss, 200 impls, 398 clqs
> 
> (round 10, exhaustive) 704 del vars, 1706 del conss, 891 add conss, 1070 chg
> bounds, 0 chg sides, 100 chg coeffs, 1294 upgd conss, 200 impls, 398 clqs
> 
> (round 11, exhaustive) 704 del vars, 2300 del conss, 1089 add conss, 1070 chg
> bounds, 0 chg sides, 100 chg coeffs, 1294 upgd conss, 589 impls, 398 clqs
> 
> (round 12, exhaustive) 704 del vars, 2300 del conss, 1089 add conss, 1070 chg
> bounds, 0 chg sides, 100 chg coeffs, 1494 upgd conss, 589 impls, 398 clqs
> 
>      (1.8s) probing cycle finished: starting next cycle
> 
> (round 13, exhaustive) 704 del vars, 2300 del conss, 1089 add conss, 1209 chg
> bounds, 0 chg sides, 100 chg coeffs, 1494 upgd conss, 1149 impls, 688 clqs
> 
> (round 14, fast)       704 del vars, 2300 del conss, 1089 add conss, 1209 chg
> bounds, 39 chg sides, 139 chg coeffs, 1494 upgd conss, 1149 impls, 688 clqs
> 
>      (1.9s) probing: 49/600 (8.2) - 0 fixings, 0 aggregations, 839 implications,
> 139 bound changes
> 
>      (1.9s) probing aborted: 50/50 successive totally useless probings
> 
> presolving (15 rounds: 15 fast, 6 medium, 6 exhaustive):
> 
> 704 deleted vars, 2300 deleted constraints, 1089 added constraints, 1209
> tightened bounds, 0 added holes, 39 changed sides, 139 changed coefficients
> 
> 1149 implications, 688 cliques
> 
> presolved problem has 2093 variables (600 bin, 0 int, 0 impl, 1493 cont) and
> 1893 constraints
> 
>       297 constraints of type <soc>
> 
>       600 constraints of type <varbound>
> 
>         2 constraints of type <setppc>
> 
>       198 constraints of type <and>
> 
>       399 constraints of type <linear>
> 
>       199 constraints of type <quadratic>
> 
>       198 constraints of type <nonlinear>
> 
> Presolving Time: 1.91
> 
> ******************************************************************************
> 
> This program contains Ipopt, a library for large-scale nonlinear optimization.
> 
> Ipopt is released as open source code under the Eclipse Public License (EPL).
> 
>            For more information visit http://projects.coin-or.org/Ipopt
> 
> ******************************************************************************
> 
> time | node  | left  |LP iter|LP it/n| mem |mdpt |frac |vars |cons |cols |rows
> |cuts |confs|strbr|  dualbound   | primalbound  |  gap
> 
>     2.4s|     1 |     0 |  3490 |     - |  27M|   0 |  84 |2093 |1893 |2093 |2393
> |   0 |   0 |   0 |-6.537019e+00 |      --      |    Inf
> 
>     2.5s|     1 |     0 |  3947 |     - |  28M|   0 |  84 |2093 |1894 |2093 |2393
> |   0 |   0 |   0 |-6.537019e+00 |      --      |    Inf
> 
>     2.5s|     1 |     0 |  4465 |     - |  29M|   0 |  29 |2093 |1894 |2093 |2718
> | 325 |   0 |   0 |-6.512983e+00 |      --      |    Inf
> 
>     2.6s|     1 |     0 |  4645 |     - |  30M|   0 |  33 |2093 |1894 |2093 |2859
> | 466 |   0 |   0 |-6.512907e+00 |      --      |    Inf
> 
>     2.6s|     1 |     0 |  5109 |     - |  30M|   0 |  30 |2093 |1894 |2093 |2996
> | 603 |   0 |   0 |-6.512515e+00 |      --      |    Inf
> 
>     2.7s|     1 |     0 |  6191 |     - |  30M|   0 |  42 |2093 |1894 |2093 |3138
> | 745 |   0 |   0 |-6.459440e+00 |      --      |    Inf
> 
>     2.8s|     1 |     0 |  8127 |     - |  31M|   0 |  36 |2093 |1894 |2093 |3322
> | 929 |   0 |   0 |-6.392400e+00 |      --      |    Inf
> 
>     2.9s|     1 |     0 |  9371 |     - |  32M|   0 |  42 |2093 |1894 |2093 |3461
> |1068 |   0 |   0 |-6.352951e+00 |      --      |    Inf
> 
>     3.1s|     1 |     0 | 10677 |     - |  32M|   0 |  38 |2093 |1894 |2093 |3598
> |1205 |   0 |   0 |-6.347719e+00 |      --      |    Inf
> 
>     3.1s|     1 |     0 | 10791 |     - |  33M|   0 |  27 |2093 |1894 |2093 |3702
> |1309 |   0 |   0 |-6.345305e+00 |      --      |    Inf
> 
>     3.2s|     1 |     0 | 10904 |     - |  33M|   0 |  27 |2093 |1894 |2093 |3804
> |1411 |   0 |   0 |-6.344332e+00 |      --      |    Inf
> 
>     3.2s|     1 |     0 | 11033 |     - |  34M|   0 |  26 |2093 |1894 |2087 |3055
> |1523 |   0 |   0 |-6.343795e+00 |      --      |    Inf
> 
>     3.3s|     1 |     0 | 11152 |     - |  34M|   0 |  26 |2093 |1894 |2087 |3157
> |1625 |   0 |   0 |-6.342783e+00 |      --      |    Inf
> 
>     3.3s|     1 |     0 | 11248 |     - |  34M|   0 |  22 |2093 |1894 |2087 |3232
> |1700 |   0 |   0 |-6.342678e+00 |      --      |    Inf
> 
>     3.4s|     1 |     0 | 11323 |     - |  35M|   0 |  22 |2093 |1894 |2087 |3283
> |1751 |   0 |   0 |-6.342664e+00 |      --      |    Inf
> 
>    time | node  | left  |LP iter|LP it/n| mem |mdpt |frac |vars |cons |cols |rows
> |cuts |confs|strbr|  dualbound   | primalbound  |  gap
> 
>     3.4s|     1 |     0 | 11378 |     - |  35M|   0 |  22 |2093 |1894 |2087 |3339
> |1807 |   0 |   0 |-6.342662e+00 |      --      |    Inf
> 
>     3.4s|     1 |     0 | 11441 |     - |  35M|   0 |  22 |2093 |1894 |2087 |2854
> |1858 |   0 |   0 |-6.342651e+00 |      --      |    Inf
> 
>     3.5s|     1 |     0 | 11520 |     - |  36M|   0 |  22 |2093 |1894 |2087 |2878
> |1882 |   0 |   0 |-6.342549e+00 |      --      |    Inf
> 
>     3.5s|     1 |     0 | 11551 |     - |  36M|   0 |  22 |2093 |1894 |2087 |2897
> |1901 |   0 |   0 |-6.342548e+00 |      --      |    Inf
> 
>     3.5s|     1 |     0 | 11568 |     - |  36M|   0 |  22 |2093 |1894 |2087 |2907
> |1911 |   0 |   0 |-6.342548e+00 |      --      |    Inf
> 
>     3.5s|     1 |     0 | 11592 |     - |  36M|   0 |  20 |2093 |1894 |2087 |2911
> |1915 |   0 |   0 |-6.342545e+00 |      --      |    Inf
> 
>     3.6s|     1 |     0 | 11600 |     - |  37M|   0 |  20 |2093 |1894 |2087 |2914
> |1918 |   0 |   0 |-6.342545e+00 |      --      |    Inf
> 
>     3.6s|     1 |     0 | 11601 |     - |  37M|   0 |  20 |2093 |1894 |2087 |2299
> |1919 |   0 |   0 |-6.342545e+00 |      --      |    Inf
> 
>     3.6s|     1 |     0 | 11603 |     - |  37M|   0 |  20 |2093 |1894 |2087 |2302
> |1922 |   0 |   0 |-6.342545e+00 |      --      |    Inf
> 
>    10.9s|     1 |     2 | 11649 |     - |  37M|   0 |  17 |2093 |1895 |2087 |2302
> |1922 |   0 |  19 |-6.342545e+00 |      --      |    Inf
> 
> z17.6s|     5 |     6 | 12165 | 584.0 |  37M|   4 |   8 |2093 |1895 |2087 |2192
> |2358 |   0 |  60 |-6.342545e+00 |-6.325721e+00 |   0.27
> 
> SCIP Status        : solving was interrupted [solution limit reached]
> 
> Solving Time (sec) : 17.64
> 
> Solving Nodes      : 5
> 
> Primal Bound       : -6.32572075532809e+00 (1 solutions)
> 
> Dual Bound         : -6.34254542284478e+00
> 
> Gap                : 0.27
> 
> Kind regards
> 
> Stephanos P.
> 
> 
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> https://listserv.zib.de/mailman/listinfo/scip
> 



More information about the Scip mailing list