Closed ambros-gleixner closed 1 year ago
To add a bit more insight and analysis: This happens after SCIP relaxes a couple of variable bounds and "removes" rows ax <= rhs by setting rhs to infinity. This can be seen from the attached log with more debug output activated.
@jajhall After studying the code I simply believe the assert is too hard. The indices stored in freelist can be row indices, all the data structures where they are used are set up to work with indicies up to number of rows plus columns.
The PR #1121 would fix that. Can you confirm?
The instance reported here runs fine with this change.
Sure, Qi never envisaged anyone calling the simplex solver with free rows, but there's nothing strictly wrong in having them.
I'll incorporate the necessary change in another PR I need to do today
Fixed by #1122
Thanks!
The HiGHS LP interface for SCIP is now on accessible on github branch https://github.com/scipopt/scip/tree/lpi-highs. Running this with the latest branch of HiGHS built in debug mode triggers the above assert. This comes up for many instances, but the one attached is representative and fast:
blend2.mps_trans.cip.txt
The full log is below and contains a basic backtrace, but I was not able to understand what was the problem. I also ran with valgrind and found no memory errors.