coin-or / python-mip

Python-MIP: collection of Python tools for the modeling and solution of Mixed-Integer Linear programs
Eclipse Public License 2.0
525 stars 92 forks source link

model not sustainable some times #137

Closed suzhenyu22 closed 3 years ago

suzhenyu22 commented 4 years ago

hi, Sometimes the mip model can be solved normally, sometimes there are errors,like that:


ERROR while running Cbc. Signal SIGSEGV caught. Getting stack trace.
/home/suzhenyu/apps/miniconda3/lib/python3.7/site-packages/mip/libraries/lin64/libCbcSolver.so(_Z15CbcCrashHandleri+0x14c) [0x7f00679d371c]
/lib/x86_64-linux-gnu/libc.so.6(+0x46210) [0x7f00877b6210]
/lib/x86_64-linux-gnu/libc.so.6(+0x18e533) [0x7f00878fe533]
./libCbc.so.0(_ZN8CbcModel15setBestSolutionEPKdidb+0x48b) [0x7f0066da74cb]
/home/suzhenyu/apps/miniconda3/lib/python3.7/site-packages/mip/libraries/lin64/libCbcSolver.so(_Z8CbcMain1iPPKcR8CbcModelPFiPS2_iER19CbcSolverUsefulData+0xcd37) [0x7f00679ea407]
/home/suzhenyu/apps/miniconda3/lib/python3.7/site-packages/mip/libraries/lin64/libCbcSolver.so(Cbc_solve+0x11e3) [0x7f006797f213]
/home/suzhenyu/apps/miniconda3/lib/python3.7/lib-dynload/../../libffi.so.7(+0x69dd) [0x7f0086d4a9dd]
/home/suzhenyu/apps/miniconda3/lib/python3.7/lib-dynload/../../libffi.so.7(+0x6067) [0x7f0086d4a067]
/home/suzhenyu/apps/miniconda3/lib/python3.7/site-packages/_cffi_backend.cpython-37m-x86_64-linux-gnu.so(+0x1a55c) [0x7f0068c8a55c]
/home/suzhenyu/apps/miniconda3/bin/python(_PyObject_FastCallKeywords+0x48b) [0x7f0087b3e00b]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x51d1) [0x7f0087ba29a1]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalCodeWithName+0xb40) [0x7f0087ae6b00]
/home/suzhenyu/apps/miniconda3/bin/python(_PyFunction_FastCallKeywords+0x387) [0x7f0087b36497]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x6a0) [0x7f0087b9de70]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalCodeWithName+0x2f9) [0x7f0087ae62b9]
/home/suzhenyu/apps/miniconda3/bin/python(_PyFunction_FastCallKeywords+0x325) [0x7f0087b36435]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x6a0) [0x7f0087b9de70]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalCodeWithName+0xb40) [0x7f0087ae6b00]
/home/suzhenyu/apps/miniconda3/bin/python(_PyFunction_FastCallKeywords+0x387) [0x7f0087b36497]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x416) [0x7f0087b9dbe6]
/home/suzhenyu/apps/miniconda3/bin/python(_PyFunction_FastCallKeywords+0xfb) [0x7f0087b3620b]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x4a59) [0x7f0087ba2229]
/home/suzhenyu/apps/miniconda3/bin/python(_PyFunction_FastCallKeywords+0xfb) [0x7f0087b3620b]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x416) [0x7f0087b9dbe6]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalCodeWithName+0x2f9) [0x7f0087ae62b9]
/home/suzhenyu/apps/miniconda3/bin/python(PyEval_EvalCodeEx+0x44) [0x7f0087ae71d4]
/home/suzhenyu/apps/miniconda3/bin/python(PyEval_EvalCode+0x1c) [0x7f0087ae71fc]
/home/suzhenyu/apps/miniconda3/bin/python(+0x22bf44) [0x7f0087bfcf44]
/home/suzhenyu/apps/miniconda3/bin/python(PyRun_FileExFlags+0xa1) [0x7f0087c072b1]
/home/suzhenyu/apps/miniconda3/bin/python(PyRun_SimpleFileExFlags+0x1c3) [0x7f0087c074a3]
/home/suzhenyu/apps/miniconda3/bin/python(+0x2375d5) [0x7f0087c085d5]
/home/suzhenyu/apps/miniconda3/bin/python(_Py_UnixMain+0x3c) [0x7f0087c086fc]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x7f00877970b3]
/home/suzhenyu/apps/miniconda3/bin/python(+0x1dc3c0) [0x7f0087bad3c0]

ERROR while running Cbc. Signal SIGABRT caught. Getting stack trace.
/home/suzhenyu/apps/miniconda3/lib/python3.7/site-packages/mip/libraries/lin64/libCbcSolver.so(_Z15CbcCrashHandleri+0x14c) [0x7f00679d371c]
/lib/x86_64-linux-gnu/libc.so.6(+0x46210) [0x7f00877b6210]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0xcb) [0x7f00877b618b]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x12b) [0x7f0087795859]
/home/suzhenyu/apps/miniconda3/lib/python3.7/site-packages/mip/libraries/lin64/libCbcSolver.so(+0x3f91e) [0x7f006796f91e]
/lib/x86_64-linux-gnu/libc.so.6(+0x46210) [0x7f00877b6210]
/lib/x86_64-linux-gnu/libc.so.6(+0x18e533) [0x7f00878fe533]
./libCbc.so.0(_ZN8CbcModel15setBestSolutionEPKdidb+0x48b) [0x7f0066da74cb]
/home/suzhenyu/apps/miniconda3/lib/python3.7/site-packages/mip/libraries/lin64/libCbcSolver.so(_Z8CbcMain1iPPKcR8CbcModelPFiPS2_iER19CbcSolverUsefulData+0xcd37) [0x7f00679ea407]
/home/suzhenyu/apps/miniconda3/lib/python3.7/site-packages/mip/libraries/lin64/libCbcSolver.so(Cbc_solve+0x11e3) [0x7f006797f213]
/home/suzhenyu/apps/miniconda3/lib/python3.7/lib-dynload/../../libffi.so.7(+0x69dd) [0x7f0086d4a9dd]
/home/suzhenyu/apps/miniconda3/lib/python3.7/lib-dynload/../../libffi.so.7(+0x6067) [0x7f0086d4a067]
/home/suzhenyu/apps/miniconda3/lib/python3.7/site-packages/_cffi_backend.cpython-37m-x86_64-linux-gnu.so(+0x1a55c) [0x7f0068c8a55c]
/home/suzhenyu/apps/miniconda3/bin/python(_PyObject_FastCallKeywords+0x48b) [0x7f0087b3e00b]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x51d1) [0x7f0087ba29a1]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalCodeWithName+0xb40) [0x7f0087ae6b00]
/home/suzhenyu/apps/miniconda3/bin/python(_PyFunction_FastCallKeywords+0x387) [0x7f0087b36497]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x6a0) [0x7f0087b9de70]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalCodeWithName+0x2f9) [0x7f0087ae62b9]
/home/suzhenyu/apps/miniconda3/bin/python(_PyFunction_FastCallKeywords+0x325) [0x7f0087b36435]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x6a0) [0x7f0087b9de70]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalCodeWithName+0xb40) [0x7f0087ae6b00]
/home/suzhenyu/apps/miniconda3/bin/python(_PyFunction_FastCallKeywords+0x387) [0x7f0087b36497]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x416) [0x7f0087b9dbe6]
/home/suzhenyu/apps/miniconda3/bin/python(_PyFunction_FastCallKeywords+0xfb) [0x7f0087b3620b]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x4a59) [0x7f0087ba2229]
/home/suzhenyu/apps/miniconda3/bin/python(_PyFunction_FastCallKeywords+0xfb) [0x7f0087b3620b]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalFrameDefault+0x416) [0x7f0087b9dbe6]
/home/suzhenyu/apps/miniconda3/bin/python(_PyEval_EvalCodeWithName+0x2f9) [0x7f0087ae62b9]
/home/suzhenyu/apps/miniconda3/bin/python(PyEval_EvalCodeEx+0x44) [0x7f0087ae71d4]
/home/suzhenyu/apps/miniconda3/bin/python(PyEval_EvalCode+0x1c) [0x7f0087ae71fc]
/home/suzhenyu/apps/miniconda3/bin/python(+0x22bf44) [0x7f0087bfcf44]
/home/suzhenyu/apps/miniconda3/bin/python(PyRun_FileExFlags+0xa1) [0x7f0087c072b1]
/home/suzhenyu/apps/miniconda3/bin/python(PyRun_SimpleFileExFlags+0x1c3) [0x7f0087c074a3]
/home/suzhenyu/apps/miniconda3/bin/python(+0x2375d5) [0x7f0087c085d5]
/home/suzhenyu/apps/miniconda3/bin/python(_Py_UnixMain+0x3c) [0x7f0087c086fc]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x7f00877970b3]
/home/suzhenyu/apps/miniconda3/bin/python(+0x1dc3c0) [0x7f0087bad3c0]

Aborted (core dumped)

When I use the CBC command line, there is no problem,the command line like that :

import os
os.system( "cbc example.lp solve solu /mnt/d/sol.txt")

I do it all in WSL (ubuntu20. LTS), there is the model of LP file: example.txt (please change name example.txt to example.lp, because github can't upload lp file.

you can try this code to read example.lp file and solve it :

m = mip.Model(name='example', sense=mip.MINIMIZE, solver_name='CBC')
m = mip.model()
m.read(lp_file)
m.seconds=30
m.mipgap=0.05
m.solve()

thanks.

h-g-s commented 3 years ago

Tested in my machine, seems to be fixed in 1.13, I'll close for now, please check.