question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Add support for constraint programming

See original GitHub issue

I’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:closed
  • Created 3 years ago
  • Comments:5 (1 by maintainers)

github_iconTop GitHub Comments

1reaction
matthewcrewscommented, Jul 14, 2020

@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.

0reactions
matthewcrewscommented, Jul 21, 2020

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

Read more comments on GitHub >

github_iconTop 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 >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found