#ortools

dr πŸ› οΈπŸ›°οΈπŸ“‘πŸŽ§:blobfoxcomputer:davidr@hachyderm.io
2025-12-19

#constraintprogramming #ortools #scheduling/#routing #optimization

I think I may have gotten this working in the toy problem. I can get a list of time-ordered optional intervals AND a circuit in the same order. That will let me put sequential constraints at the circuit level (I hope)

The key turned out to be to make sure all present intervals were also entered nodes AND that every x->y edge meant that x.time < y.time....and that the reverse is not true!

It's weird how confused I am by half-reified constraints, given that's *exactly* how programming languages do variable assignment.

a = b

makes a take the value b, but not vice versa.

dr πŸ› οΈπŸ›°οΈπŸ“‘πŸŽ§:blobfoxcomputer:davidr@hachyderm.io
2025-12-18

#constraintprogramming #ortools #scheduling/#routing #optimization

I think I'm thinking about this wrong.

My basic problem is scheduling #radar collection intervals in continuous time. There are many constraints on the intervals already and that's all working (by which I mean "running"--I'm not actually connected to a radar yet).

However, I also want to put a constraint on interval *transitions* to make sure we don't require the dish to move instantaneously.

AFAIK, the only way to constrain adjacent items like this is via a circuit. So I was going to add a "circuit overlay" to the model. Then I could say that the "edge" from radar dwell A to radar dwell B had to be a certain time distance apart or whatever.

I'm writing a tiny test program to see how that works and it isn't doing what I expect.

But in debugging that, I think I just realized my entire plan doesn't work. There's no reason the circuit overlay is going to come out in the same order as the intervals as laid out in time. That voids the entire plan!

Also, even though all the kids are home for #christmas none of the #nerd are awake for rubber-duckying

GRRRRRRRRRRRRRR

#python #software #engineering

dr πŸ› οΈπŸ›°οΈπŸ“‘πŸŽ§:blobfoxcomputer:davidr@hachyderm.io
2025-11-25

Finally getting back to the #constraintprogramming #ortools #scheduling/#routing #optimization problem

I have a minimal working implementation of both a server and a selection of agents at various levels of realism. Two other #software peeps are making two real agents to talk to my server

...and I'm realizing I need to bump up my game and get ahead of them...again

For most of the scheduling types/agents, routing is a non-issue. For a couple types/agents it is absolutely crucial. It's one of those that is being implemented by one of the #engineers. And if answers come back unrouted, a higher-level person is going to absolutely POUNCE and start advocating Bad Ideas

So I was looking into circuit constraints and there isn't a lot of info out there beyond the basics.

Until I found this wonderful tutorial

github.com/d-krupke/cpsat-prim

It covers everything from the beginning to advanced and and even niche usage, including such important things as runtime parameters and timing. All in #python!

#thanksgiving

2025-09-21

Automated Road Trip Planner | Integrating OR Tools, Traveling Salesman Problem, and OpenStreetMap

makertube.net/w/uXuhD6yakJ63AV

2025-04-29

РСшаСм VRP-Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΈΠ»ΠΈ Как ΠΌΡ‹ Π² Π”ΠΎΠ΄ΠΎ доставку ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ

ВсС сСрвисы доставки Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€ΠΎΠΉ VRP. Π—Π° Π½Π΅ΠΉ скрываСтся слоТная ΠΈ ваТная Π·Π°Π΄Π°Ρ‡Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ доставки. ΠžΡ‚ Ρ‚ΠΎΠ³ΠΎ, насколько эффСктивно Π²Ρ‹ Π΅Ρ‘ Ρ€Π΅ΡˆΠΈΡ‚Π΅, зависит ΠΈ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€Ρ‘Π½Π½ΠΎΡΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ², ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ бизнСса: ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ доставки, расходы Π½Π° логистику. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я расскаТу ΠΎ Ρ‚ΠΈΠΏΠ°Ρ… VRP-Π·Π°Π΄Π°Ρ‡, ΠΈΡ… отличиях, ΠΈ ΠΎ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Ρ‚Π΅ΡΡ‚ΠΈΡ‚ΡŒ Π² Π²Π°ΡˆΠΈΡ… кСйсах ΡƒΠΆΠ΅ сСйчас. ПодСлюсь ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°ΠΌΠΈ ΠΈ инструмСнтам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Π» Π² Ρ…ΠΎΠ΄Π΅ исслСдования Ρ‚Π΅ΠΌΡ‹, ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ ΠΈΡ… использования ΠΈ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌΠΈ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ я сразу отказался ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ· Π½ΠΈΡ….

habr.com/ru/companies/dododev/

#ORTools #ΠšΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½Π°Ρ_оптимизация #VRP #ΠŸΠΎΠ΄Π±ΠΎΡ€_ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ_ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Π° #Алгоритмы #Вранспорт #ΠšΡƒΡ€ΡŒΠ΅Ρ€ΡΠΊΠ°Ρ_доставка #Логистика #ΠœΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΡ #ΠŸΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅_ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΎΠ²

2025-02-07

Permission granted: A role mining model

We implement a recently published role mining model using both constraint programming and mixed integer linear programming, then compare their relative performance while solving several examples.
solvermax.com/blog/permission-
#orms #pyomo #ortools #python

Assigning a matrix of people to roles
2024-08-25

Article: Well, that escalated quickly: OR-Tools

In this series of articles, we look at a simple optimization situation that requires deciding the best order for positioning devices in a rack.

This article discusses Model 4, which formulates the situation as a Constraint Programming problem and solves it using the CP-SAT solver in OR-Tools. Does it perform better than the previous methods?

solvermax.com/blog/well-that-e
#Python #orms #optimization #modelling #ortools

Server rack cables

If any #dotnet people have skills with Google #ortools #constriant-programming feel free to step in and point me in the right direction :-)

stackoverflow.com/questions/78

2024-03-22

Алгоритм Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ столбцов (Column Generation)

ГСнСрация столбцов - ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡŽ Π·Π°Π΄Π°Ρ‡ смСшанного Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ программирования (MIP) с большим ΠΊΠΎΠ»-Π²ΠΎΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ столбцов. Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ прСдставил Ρ‚Π΅ΠΎΡ€Π΅Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ прСдпосылку, схСму Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΈ python Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°. Π’ практичСской части рассмотрСл Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… Π·Π°Π΄Π°Ρ‡: Π·Π°Π΄Π°Ρ‡Π° планирования расписания ΠΈ Π·Π°Π΄Π°Ρ‡Π° раскроя.

habr.com/ru/articles/800527/

#column_generation #Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ΅_ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ #гСнСрация_столбцов #матСматичСская_оптимизация #Π·Π°Π΄Π°Ρ‡Π°_раскроя #Π·Π°Π΄Π°Ρ‡Π°_покрытия #ortools #Π·Π°Π΄Π°Ρ‡Π°_планирования_расписаний

2024-02-01

Many awesome projects and people underpin the optimization world. We're making mvs to surface more open source model code for real-world impact and better support individual decision modelers. @ryanjoneil explains: nextmv.io/blog/new-decision-ap

#orms #decisionscience #datascience #decisionops #pyomo #ortools

2024-01-18

It’s that time of year: We’ve wrapped up our 2023 reflections, reviewed feedback and wishes for the future, and coalesced it all into our 2024 roadmap preview. Check out our next mvs: nextmv.io/blog/a-2023-look-bac

#orms #decisionops #decisionscience #informs #datascience #cicd #pyomo #ortools

2023-12-28

Ortools β€” Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ VRP

ΠŸΡ€ΠΈΠ²Π΅Ρ‚! МСня Π·ΠΎΠ²ΡƒΡ‚ Илья Набатчиков, я MLE Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Kamaz Digital. Π’Π°ΠΊΠΆΠ΅ я являюсь ΡƒΡ‡ΡƒΡΡŒ Π² ΠΎΠ½Π»Π°ΠΉΠ½ магистратурС Π½Π° Π±Π°Π·Π΅ унивСрситСта ИВМО @ai-talent . БСгодня я Ρ…ΠΎΡ‡Ρƒ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ ortools для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ транспортных срСдств с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ Π³Ρ€ΡƒΠ·ΠΎΠΏΠΎΠ΄ΡŠΠ΅ΠΌΠ½ΠΎΡΡ‚ΠΈ (CVRPTW). И самоС Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ ΠΏΠ°Ρ€ΠΎΠΉ Π²Π°ΠΆΠ½Ρ‹Ρ… Ρ„ΠΈΡ‡Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Ρ‹ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

habr.com/ru/articles/783754/

#ortools #комбинаторная_оптимизация #vrp

2023-12-06

ΠŸΠ»Π°Π½ΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΈΠ΅ β€” Π·Π°Π΄Π°Ρ‡Π° коммивояТСра (TSP) для построСния ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Π°

Π‘ Π²Π°ΠΌΠΈ АлСксСй ЛоТкинс, экспСрт ΠΏΠΎ Π°Π½Π°Π»ΠΈΠ·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΌΡƒ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΡŽ Π² ΠŸΠ“Πš Π”ΠΈΠ΄ΠΆΠΈΡ‚Π°Π». ΠœΡ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹ для логистичСской отрасли, Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, для ΠΆ/Π΄ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ·ΠΎΠΊ. Π’ ΠΊΡƒΠ»ΡƒΠ°Ρ€Π°Ρ… московского офиса ΠŸΠ“Πš ΠΌΡ‹ обсуТдаСм ΠΈ Π½Π΅Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ Ρ‚Π΅ΠΌΡ‹. Π’ΠΎΠΏΠΎΠ²ΡƒΡŽ строчку Π² Ρ‚Π΅ΠΌΠ°Ρ… Π½Π΅Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ общСния Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ отпуск. ΠœΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ планирования отпуска, ΠΊΠ°ΠΊ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Π° ΠΏΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌ Π΄ΠΎΡΡ‚ΠΎΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡΠΌ. Для этого воспользовались классичСской постановкой Π·Π°Π΄Π°Ρ‡ΠΈ коммивояТСра. ΠœΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Π° Π² Π²ΠΈΠ΄Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ коммивояТСра ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ ΠΏΠΎ всСм Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ локациям Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅ΠΌ качСства (врСмя, ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ). Рассмотрим нСсколько ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΊ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡŽ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ (TSP) с использованиСм ΠΏΠ°ΠΊΠ΅Ρ‚Π° ORTools.

habr.com/ru/companies/pgk/arti

#Π·Π°Π΄Π°Ρ‡Π°_коммивояТСра #ortools #цСлочислСнноС_ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ #tsp #Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ΅_ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ #Ρ‚ΠΎΡ‡Π½ΠΎΠ΅_Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅

2023-11-27

β€œThe application of OR-Tools and LAD regression for forecasting feels new, but the use of LP for shift scheduling is timeless.”

@ryanjoneil demos OR-Tools, HiGHS, Nextroute: nextmv.io/videos/forecast-sche

#datascience #Python #logistics #lastmile #linearprogramming #orms #informs #ORTools

2023-11-17

#MiniZinc 2.8 has been released. No big new language features, but it does include a lot of improvements to make your life easier:

- #ORTools is now part of the MiniZinc bundle.
- #HiGHS now provides intermediate solutions.
- Experimental support for propagator based meta-search, such as LNS variants.
- Commutative CSE
- Support optional version of global_cardinality, increasing, and count globals.

Find more details and many other improvements in the change log: minizinc.org/doc-2.8.0/en/chan

2023-10-31

At @nextmv we like to do #optimization speed runs. In a couple weeks, we'll be upping the ante and do 3 in 30 minutes.

Come see the 3 main models you need to operate an #ondemand #lastmile service using 3 different solvers: #ORTools, #HiGHS and our own #nextroute.

nextmv.io/videos/forecast-sche

2023-09-19

πŸŽ‰Our integration with Google OR-Tools is here – and we can’t wait for you to try it! Bring your OR-Tools model and launch it in minutes: nextmv.io/blog/the-nextmv-or-t

βœ… Deploy remotely to managed infrastructure
βœ… Run acceptance and shadow tests
βœ… Manage model versions (and partition data)
βœ… Collaborate in a shared console space

Take it for a spin and let us know what you think πŸ˜€

#decisionops #orms #optimization #ortools #python #vrp #constraintprogramming #MIP #linearprogramming

2023-09-06

Heyo #orms people, we’re making mvs! Go from 0 to 60 in seconds using google #ortools, #python, and @nextmv. Stay tuned for more updates Real Soon Nowℒ️...

2023-08-22

Blog: Warehouse optimization: Positioning and combining (Part 3 of 3)

In this article, we extend the analysis to answer our other two modelling questions. That is, can the efficiency of the picking process be further improved by:
- Positioning items according to order probability?
- Combining orders?
Overall we improve the efficiency of the picking process by 66% - a huge cost saving.
All the code is available, so if you think you can design a better warehouse layout, then please have a go. Let us know what you discover.

#Python #optimization #orms #ortools
solvermax.com/blog/warehouse-o

Example warehouse design, showing improved design and positioning of items according to order frequency.

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst