A Java-based open-source constraint programming solver with extensive global constraints and Scala DSL support.
JaCoP is a Java-based open-source constraint programming solver designed for solving constraint satisfaction and optimization problems. It provides a rich library of constraints, including many global constraints, and supports finite domains of integers and sets of integers. The solver is used in both academic research and industrial applications, with a strong focus on modular search design and performance.
Researchers, students, and developers in fields like Electronic Design Automation, operations research, and artificial intelligence who need a robust constraint programming solver in Java or Scala.
JaCoP offers a comprehensive and modular constraint programming environment with extensive global constraints and a Scala DSL for intuitive modeling, all as open-source software. Its long-term development and academic backing ensure reliability and continuous improvement.
Java Constraint Programming solver
Offers a comprehensive set of over 90,000 lines of code with numerous global constraints like diff2 and cumulative, as detailed in the README, facilitating complex modeling.
Allows customization of search strategies to match problem characteristics, enabling optimized performance for specific constraint satisfaction tasks.
Includes a front-end for executing MiniZinc models, supporting extensive testing and comparison with other solvers, as mentioned in the features.
Provides a Scala-based domain-specific language for easier and more intuitive constraint programming, a recent addition highlighted in the README.
Maintained by two individuals as a hobby project in their free time, which can lead to slower updates and limited responsiveness to issues.
Requires Maven for installation and relies heavily on examples with over 20,000 lines of code for guidance, lacking comprehensive tutorials for beginners.
Contributions necessitate a signed CLA and must target only the develop branch, potentially discouraging community involvement and open collaboration.
Business planning and resource scheduling optimization solver
Flexible solver with Spring/Quarkus support and quickstarts for the Vehicle Routing Problem, Maintenance Scheduling, Employee Shift Scheduling and much more
Off-the-shelf constraint satisfaction problem solver that uses constraint programming techniques
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.