Solving large-scale binary integer program

489 Views Asked by At

I am working on the following hitting set problem: given a set $X$ and a collection $S$ of subsets of $X$ (which cover $X$), find the largest subset $X^*$ of $X$, such that each subset of the cover $S$ is hitted by at most one element of $X^*$.

I formulated this problem as a binary integer program (BILP), where the binary variables represent the elements of $X$, the constraints ensure that each subset of the cover contains at most one element of the solution $X^*$ and the objective is the maximization of the sum over the variables.

I'm using GUROBI (via MATLAB) to solve the BILP. GUROBI succeeds in solving an instance with 6!=720 variables and 450 constraints in less than 4 minutes. But it is not able to solve the next instance with 7!=5040 variables and 7350 constraints.

Does anybody know a more indicated software for this task or a platform where large LPs can be submitted in order to be solved by experts? Thanks a lot.

1

There are 1 best solutions below

7
On

It's possible that, by tweaking some parameter settings, you can get Gurobi (or some other ILP solver) to solver your larger instances. (I agree with Erwin about showing the log.) You could also formulate the problem as a constraint satisfaction problem and try a constraint solver. I can't predict whether that would be faster than or slower than using an ILP solver.