I am trying to use SCIP to solve a SAT problem. My company uses a Linux command line by Mobaxterm. I have the SCIPoptsuite 6.0.2 installed. I'm unable to find any information online on how to call SCIP to solve SAT problems, both in English and Chinese. I have many cnf files that I would like to call SCIP to solve: enter image description here
Would anybody be able to guide me on how to do it?
With the interactive shell of SCIP, you can just read a problem and solve it.
So, start your SCIP binary (if its globally installed, just executing scip
should be sufficient; otherwise, call the binary from the location where you installed it).
Then, in the interactive shell, read the problem, e.g., read 115_3448s.cnf
and solve it: optimize
. Afterward, you can print via display solution
. See https://scip.zib.de/doc-6.0.2/html/SHELL.php for a short tutorial on the interactive shell.
Note that SCIP is a CIP solver and normally uses an LP relaxation for bounding. This can be disabled if you want to solve SAT instances (set emphasis cpsolver
), but there is still significant overhead compared to a dedicated SAT solver. Thus, if you only want to solve pure SAT instances, you might want to try out a dedicated SAT solver. If you consider adding some other general linear constraints later on, however, SCIP should be a good option.