<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-ligatures:standardcontextual;
        mso-fareast-language:EN-US;}
span.E-postmall17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="SV" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">Hello, <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US">I’m working on solving a EVRPTW with GCG, but for some instances I sometimes get a segmentation fault.
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Running it with valgrind: <i><span style="mso-ligatures:none">valgrind --tool=memcheck --leak-check=full --track-origins=yes bin/gcg -f model.cip</span></i><span style="mso-ligatures:none"> leads to the following
<o:p></o:p></span></span></p>
<p class="MsoNormal"><i><span lang="EN-US"><o:p> </o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">A Dantzig-Wolfe reformulation is applied to solve the original problem.<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">Chosen structure has 2 blocks and 11 linking constraints.<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">This decomposition has a maxwhite score of 0.486146.<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">Warning: Discretization with continuous variables is only an experimental feature.<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">Matrix has 2 blocks, using 1 aggregated pricing problem.<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US"><o:p> </o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">  time | node  | left  |SLP iter|MLP iter|LP it/n| mem |mdpt |ovars|mvars|ocons|mcons|mcuts|  dualbound   | primalbound  |  deg   |  gap<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">  17.0s|     1 |     0 |      0 |      0 |     - |4600k|   0 | 262 |   0 | 397 |   0 |   0 | 1.804966e+02 |      --      |   --   |    Inf<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482== Conditional jump or move depends on uninitialised value(s)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    at 0xB77BD9: GCGmasterIsSolValid (pricer_gcg.cpp:5196)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0xAEDAF2: GCGtransformMastersolToOrigsol (misc.c:164)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x85C625: consCheckIntegralOrig (cons_integralorig.c:296)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x505467D: SCIPconshdlrCheck (cons.c:3781)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x5360741: checkSolOrig (scip_sol.c:173)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x5369AD9: SCIPtrySol (scip_sol.c:3181)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x4D8E9A7: heurExecTrivial (heur_trivial.c:184)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x50C9D6B: SCIPheurExec (heur.c:1312)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x53E7A55: SCIPprimalHeuristics (solve.c:363)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x537081C: presolve (scip_solve.c:1318)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x5377171: SCIPpresolve (scip_solve.c:2493)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x5377FD1: SCIPsolve (scip_solve.c:2731)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==  Uninitialised value was created by a heap allocation<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    at 0x4848899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x491893A: BMSallocMemory_call (memory.c:411)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0xB6C36E: SCIPincludePricerGcg (pricer_gcg.cpp:4120)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0xBD3CEF: SCIPincludeRelaxGcg (relax_gcg.c:3234)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x963D9B: SCIPincludeGcgPlugins (gcgplugins.c:448)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x639A10: SCIPrunGCGShell (main.c:416)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i><span lang="EN-US">==55482==    by 0x639BB0: main (main.c:445)<o:p></o:p></span></i></p>
<p class="MsoNormal"><i>==55482==<o:p></o:p></i></p>
<p class="MsoNormal"><i><o:p> </o:p></i></p>
<p class="MsoNormal"><span lang="EN-US">This is seen even the times when a segmentation fault isn’t thrown but then it just continues as normal.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Looking at <i>GCGmasterIsSolValid (pricer_gcg.cpp:5196):
<o:p></o:p></i></span></p>
<p class="MsoNormal"><i><span lang="EN-US">for( i = 0; i < pricerdata->nartificialvars; ++i )<o:p></o:p></span></i></p>
<p class="MsoNormal"><span lang="EN-US">it seems probable that <i>nartificialvars
</i>is the<i> </i>uninitialized value.<o:p></o:p></span></p>
<p class="MsoNormal"><i><span lang="EN-US"><o:p> </o:p></span></i></p>
<p class="MsoNormal"><span lang="EN-US">One workaround to this problem I’ve used is to initialize nartificialvars in
<i>SCIPincludePricerGcg() </i>by adding <i>pricerdata->nartificialvars = 0;</i> to row 4132 in pricer_gcg.cpp<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">However, this do not feel exactly right, so I wonder if there is something else that can be done to avoid this? I have GCG 3.5.3 and SCIP 8.03  installed on ubuntu WSL. The model that caused the above fault is attached.
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Thanks in advance, <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Best Regards<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Lukas Eveborn<o:p></o:p></span></p>
</div>
</body>
</html>