pyomo
or-tools
Our great sponsors
pyomo | or-tools | |
---|---|---|
14 | 57 | |
1,838 | 10,446 | |
2.6% | 2.2% | |
10.0 | 9.9 | |
7 days ago | 1 day ago | |
Python | C++ | |
GNU General Public License v3.0 or later | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
pyomo
-
pyomo VS timefold-solver - a user suggested alternative
2 projects | 4 Jan 2024
-
[P] Advice needed for what tool/algorithm is appropriate
Pyomo: We tried pyomo still using the same matrix representation as above (5-minutes timeslot interval), but still encountered the same difficulty of expressing program durations as constraint. I seem to not able to make a condition inside the constraint declaration such that if this matrix entry is 1, then do this operation.
-
pyomo VS casadi - a user suggested alternative
2 projects | 5 Sep 2023
-
Elevate Your Python Skills: Machine Learning Packages That Transformed My Journey as ML Engineer
Alternative: pyomo
-
Are there any mathematical optimizations modeling libraries made for Common Lisp?
I’m looking for something similar to Pyomo for Python. Something that connects on the backend to something like GLPK, CBC, IPOPT. Using Google, I’ve only been able to find a few linear programming libraries. If anyone could point me the right direction, it would be greatly appreciated!
- What software is used in the field these days?
-
Operations research packages
Pyomo, it even has its own book. Additionally, CVXOPT focuses on convex optimization, PuLP on linear programming (it has lots of interfaces for other solvers).
-
flopt: powerful optimization modeling tool
There are some optimization modeling tools, Pulp andScipy are known for linear programming (LP) modeling, CVXOPT and Pyomo for quadratic programming (QP).
-
[Request] As a little side project, I want to map out the most efficient path to take when mowing my lawn. How might I go about doing this?
To rephrase this in math terms, you're looking for the least expensive possible path that covers every node in your yard. As for tools, if you don't mind programming in python, maybe try this: http://www.pyomo.org/.
-
Integer vs. Linear Programming in Python
For modelling libraries in general-purpose languages, Gurobi's python bindings have the best reputation. But of course Gurobi is very expensive (I have heard about $50k for a fully unrestricted license, plus $10k yearly for support). On the open-source side, besides Google's OR-Tools, there is Pyomo [1] and PuLP [2] in Python (as the article mentions). In Julia, there is JuMP [3], whose development community is extremely enthusiastic.
Traditionally, however, mathematical models were encoded in domain-specific languages. The most prominent one is AMPL [4] which is proprietary. The glpk [5] people have developed a very neat open source clone of AMPL: the GNU MathProg language. For a more modern take on AMPL-type modelling DSLs, look at ZIMPL [6], which is open source as well.
[1] http://www.pyomo.org/
[2] https://coin-or.github.io/pulp/
[3] https://jump.dev/JuMP.jl/stable/
[4] https://ampl.com
[5] https://www.gnu.org/software/glpk/
[6] https://zimpl.zib.de/
or-tools
-
or-tools VS timefold-solver - a user suggested alternative
2 projects | 4 Jan 2024
-
A* Tricks for Videogame Path Finding
Small NP-hard problems aren't actually that bad. You can usually formulate them as eg a integer programming problem or a SMT problem, and throw an off-the-shelf solver at them.
You only need to learn the solver once, and you can re-use it for all kinds of problems. (Assuming that your instances don't have to be solved with low latency. Eg only as part of your level generation process, or at most when loading a randomly generated level, but not every frame or so.)
https://developers.google.com/optimization has a decent collection of tools.
-
Ask HN: Comment here about whatever you're passionate about at the moment
Just saw that it looks like an upcoming release of OR-Tools might include reified tables: https://github.com/google/or-tools/commit/94f3d9b46870e7ea04...
-
[P] Advice needed for what tool/algorithm is appropriate
Google OR - Tried to represent a solution to be a 5 dimensional matrix with an hour granularity. Dimensions are stations, program, project manager, day and time. If matrix[station][program][project manager][day][time] = 1, then that set is assigned, otherwise not. The main issue encountered here is about time slots, as they are not necessarily on a per hour basis. We tried time slots to be in a 5-minute interval. However, constructing the constraints that would adhere to each programs duration was proven to be difficult.
- What software is used in the field these days?
-
Sudoku solver
If you are just interested in getting a solution or for having a reference solver: There is a sudoku example in the OR-Tools package that uses constraint programming.
- Matrix / 2d Array Puzzle-Like Problem
-
Linear Programming
Not sql, but check out google’s OR-Tools. Hardly ever gets mentioned but looks very capable for some applications. https://developers.google.com/optimization
-
Would anyone know how to auto schedule tasks based on certain constraints?
Then there's also the Google's solution: https://developers.google.com/optimization/
-
Assignment to at most K groups from distance matrix?
start enumerating the properties you think the solution to your problem should have. once you have this, you should be able to reformulate those properties as constraints and then you can just plug this into a combinatorial solver such as https://developers.google.com/optimization
What are some alternatives?
pulp - A python Linear Programming API
OptaPlanner - Java Constraint Solver to solve vehicle routing, employee rostering, task assignment, maintenance scheduling, conference scheduling and other planning problems.
PySCIPOpt - Python interface for the SCIP Optimization Suite
optapy - OptaPy is an AI constraint solver for Python to optimize planning and scheduling problems.
Bonmin - Basic Open-source Nonlinear Mixed INteger programming
SciPy - SciPy library main repository
do-mpc - Model predictive control python toolbox
optaplanner-quickstarts - Mirror of https://github.com/apache/incubator-kie-optaplanner-quickstarts
acados - Fast and embedded solvers for nonlinear optimal control
SWIG - SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages.
Ray - Ray is a unified framework for scaling AI and Python applications. Ray consists of a core distributed runtime and a set of AI Libraries for accelerating ML workloads.
Decider - An Open Source .Net Constraint Programming Solver