Skip to content

domoritz/SoSAT

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

SoSAT

Build Status

A SAT solver that uses different statistical optimization algorithms to solve SAT problems encoded in the DIMACS format. This solver is written in Python and uses Numpy to speed up calculations. The three main algorithms in this solver are a ant colony optimization algorithm, a genetic algorithm, and walkSAT. To support these algorithms, there are some preprocessing algorithms.

Features

  • 3 optimization algorithms
    • ant colony optimization algorithm
    • genetic algorithm
    • walkSAT
  • factorization, reduction and simulated annealing for preprocessing
  • parallel evaluation from different starting points
  • configurable profiles to parameterize the solver

See paper.pdf for more details about implementation details and an evaluation of the algorithms.

Installation

Create a virtual environment

virtualenv venv

Activate the virtual env

source venv/bin/activate

Install the solver

python setup.py install

Run it

sosat --help

Releases

No releases published

Packages

No packages published