Smarter search that sees the global picture.
Gradient Path is an optimization platform based on column generation.
Imagine you run a delivery company with millions of possible truck routes. Instead of overwhelming a computer by creating every single route up front, column generation starts with just a few basic routes and creates better ones on demand. A Master Planner looks at the current solution, works out which deliveries are costing too much, and asks a Route Finder to design new, highly efficient routes to bring those costs down. In the optimization math, each route is a single column in the master problem, which gives the technique its name. The process repeats, adding a batch of new routes each round, until the Route Finder can no longer design any that improve the overall solution.
The best solution is hiding in a very large haystack.
Every delivery round, crew roster and vehicle assignment is a choice among an enormous number of alternatives. A depot with sixty stops has more possible route combinations than there are atoms in the observable universe. No amount of computing power gets through a list that long.
Most planning software settles for the first workable solution it finds, leaving a gap between the solution you run and the solution you could have run. That gap is real money: vehicles that needn't have left the depot, shifts that needn't have been paid.
Planning also needs answers quickly. Planners rarely act on the first solution they see: they want to try a few scenarios — change demand, take someone off a shift, hold part of the solution fixed — and compare the results. Fast solves mean you can run several and pick the best before you commit to one.
One loop, two roles.
-
The Master Planner starts small
It begins with a handful of workable routes or shift patterns — nowhere near all of them, just enough to build a first solution.
-
It prices what the solution is paying for
From the current solution, the Master Planner works out what each delivery or shift is costing — its price. In the math, these are the dual values of the master problem.
-
The Route Finder beats those prices
It searches directly for new routes or shift patterns that would cover that work for less than the solution now pays, rather than sifting through a catalog. This search is the pricing problem.
-
Repeat until nothing beats them
New columns join the solution and make it cheaper. The loop ends when the Route Finder finds nothing that beats the prices, or when further improvement is no longer worth the time.
Most planning software relies on heuristics and local search alone. A heuristic builds a first solution from rules of thumb; local search then improves it by small changes — swap two stops, move a shift, keep whatever came out better. That can only find solutions close to where it started, and it cannot tell a genuinely good solution from a dead end where no small change helps.
Column generation is a different kind of method. It reasons about the problem as a whole, which means the best solution of all is always within its reach — it can arrive at answers that no amount of local tweaking would ever stumble across.
Column generation finds the best mix of routes when fractions are allowed — half of one route, half of another. A real solution needs whole routes, so the platform branches: it splits the problem in two — this route is used, or it isn't — and solves each side the same way. Together this is branch-and-price.
Followed to the end, that search would exhaust the problem and prove the best solution. Real operations don't have that kind of time, so we layer well-tuned heuristics on top of it — deciding which candidates are worth pursuing, which branches to abandon early, and when further searching has stopped paying for itself.
That combination is the whole idea: a method that searches globally, run in a way that is fast enough to be useful. We are not chasing the last fraction of a percent at any cost — we are after a solution good enough to change your numbers, delivered while it can still be acted on.
A global search
Reasons about the whole problem, so the best solution is always within reach — not just whatever sits near the starting point.
Answers on the clock
Built to give you the best solution it can within the time you have, not the perfect one eventually.
Industrial scale
Built for the sizes real operations run at: a 25-person ward, rostered over two weeks, solves in a few seconds.
One platform, many problems
The same core solves vehicles, crews, aircraft and shifts. Every improvement benefits all of them.
Inside your software, or as a complete application.
Gradient Path is a library, with interfaces for C++ and Python. Your application describes its own world — vehicles and stops, or staff and shifts — and the platform does the search.
Rules specific to your operation plug in as your own code, so the platform stays general and never needs to know what a rule means. Our shift scheduling app is built exactly this way: its rules on consecutive shifts, weekends and weekly limits are its own code, called by the platform as it searches.
Documented for your developers, and for their AI assistants.
The Gradient Path API is documented in plain Markdown, a format AI coding assistants read well. Point an assistant at the documents, describe your operation, and it can write the model: the network, the costs, and your own rules as code the platform calls. Your team reviews code that follows the platform's conventions instead of starting from a blank page.
- API reference The model on one page, a complete working example, and every class an application uses — in C++ and Python.
- Your rules, in your code Rules specific to your operation are written against a documented callback, so an assistant can add or change one without touching the platform.
- Settings, explained The few settings that trade answer quality against time to answer, and what each one does.
Our own shift scheduling application was built this way, with an AI coding assistant working from the documented API.
See where it is put to work.
The same platform drives routing, scheduling, rostering and assignment problems across several industries.