Add support for constraint programming
See original GitHub issueI’ve used the CP-SAT Solver to optimize job scheduling (thousands of jobs that run daily) that takes into account specific dependencies, resources, and time constraints. It was a massive pain to understand how to use the Google.OrTools.Sat
namespace as their documentation is quite sparse.
It would be nice to have it supported with this library. In particular it was a nightmare converting this into something usable.
Issue Analytics
- State:
- Created 3 years ago
- Comments:5 (1 by maintainers)
Top Results From Across the Web
Constraint Programming Explained
The goal of adding constraints is to tighten the problem. If you make a tighter definition, the optimal solution can be found faster....
Read more >Constraint Optimization | OR-Tools
The CP method keeps track of which solutions remain feasible when you add new constraints, which makes it a powerful tool for solving...
Read more >Constraint programming
Programming languages with built-in support for constraints include Oz (functional programming) and Kaleidoscope (imperative programming).
Read more >Constraint Programming in a big nut-shell 🐚 | by Ze Xuan
Constraint programming is used to help solve Constraint Satisfaction problems and Constraint Optimization problems. There are a few concepts ...
Read more >solver - Adding a constraint in constraint programming
Good answer. Another issue (common to both kinds of solvers): the additional constraints add to the processing time required per node, either ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
@Shmew I’ve been reading up on this and it appears to be a different enough domain that I think I would rather create a different library for that domain. My goal with this library was to create something simple specifically for LP/MIP.
It’s sounds like an interesting problem though! I am going to need to do some more reading up and look at some real world problems to get my head around it.
I am also actively trying to learn more about Category and Type Theory in order to come up with better abstractions. There are some features coming in F# 5.0 which will make all of this easier.
This library was a great learning experience though and lays a foundation for doing this work. I have learned a ton from this experience and making something equivalent for CP-SAT Solver will likely be much faster.
I will be addressing this request with the Coffy Library. I will be adding this discussion to that library.
COFFY: Constraint Optimization For Fsharp Yay