Food delivery services are awesome. Tap a few buttons on your phone, and after watching an episode of your favorite show, a yummy meal is right outside your door. Behind the scenes, hundreds of thousands of orders are being serviced by thousands of drivers. What is the best way to route and assign those orders? Yikes, sounds like a difficult problem! Efficient routing is just one decision science problem that modern businesses face including scheduling, clustering, matching, and more.
As businesses scale, manual or inefficient decision-making can hinder growth, leaving money on the table. Even mere seconds per route can potentially save a delivery company millions of dollars per year in fuel, maintenance, and warehousing costs.
At Nextmv, our mission is to make every engineer a decision engineer — using apps with as few as 10 lines of code to automate and optimize these decisions.
How did we get here? How does it work? Let’s dive in.
Understanding traditional routing apps
For years, academic researchers have been crafting inventive and complex solutions to decision problems using optimization techniques like decision diagrams and meta heuristics like ALNS (Adaptive Large Neighborhood Search). The most successful applications are a combination of clever mathematical (plenty of linear algebra) and computational models.
We admire these academics (and love hiring them to our team). However, not all companies have PhDs on staff — and they shouldn’t need a team of experts in order to make smart decisions. The next move (hey, we said it!) was clear: simplify the user experience while maintaining efficacy at speed and scale.
Introducing 10-line apps
We create applications that hand the power of decision science to developers and turn decisions into code. What does that mean exactly? You don’t need to know matrix math or understand how to build an optimization algorithm in order to benefit from the power of decision science. Solving complex optimization problems is as simple as interacting with a dedicated application (just like any other software).
For example, let’s take a look at router engine: a simplified API for solving (you guessed it) routing problems. It is designed to be composable (like lego bricks) so that you can use as many — or as few — options as needed for your use case. The router engine is fully customizable, meaning that you can specify your own objective function, add any number of custom constraints, and measure cost however it suits you: distance, time, or even bunnies.
In the snippet below, the router engine is used to solve a vehicle routing problem with depots, capacities, pickups and deliveries, and time windows.
After reading and processing data, only a few lines of code should do the trick. What if your vehicles don’t have a fixed ending position? All good, just delete line 5. Do you need to add compatibility attributes? Great! Just add an extra line. Start with the basics and add complexity as you need it.
Nextmv empowers developers to make decisions — no PhD required. Your team knows your tech and business logic; our team makes it simple to represent your needs in a few lines of code. Get started with Nextmv Cloud for free or reach out to us to learn more about our on-prem routing solution and other apps.