Gurobi is an optimization solver applied to many problem types including LP, MILP, and more. Ahead of a price optimization demo using a Gurobi notebook, Ryan O’Neil, Nextmv founder and CTO, interviewed Jerry Yurchisin, Senior Data Science Strategist at Gurobi, about the relationship between machine learning and operations research, and how practitioners can use both to bring real value to businesses and decision-making.
The following has been edited for length and clarity, and is a companion interview to a longer, related conversation.
Ryan O’Neil: ML and OR are different traditions that share some commonalities, often on the algorithmic or mathematical side. What can you tell us about the intersection of these two fields and their relationship to each other? What makes this the right time, for data scientists in particular, to start picking up optimization and adding it to their toolkit?
Jerry Yurchisin: One of the more important intersections between anyone who is a data scientist, an operations research analyst, or anything in between, is problem solving. We're all trying to solve problems. But with traditional operations research, and specifically mathematical optimization, the problems that they solve tend to be different from the problems that machine learning and data science solve. Machine learning lives in the predictive world, telling you what's next, what's going to happen, and what the future is going to look like.
But operations research, and again, specifically mathematical optimization, is great for telling you what to do with that information. How do I build around this demand forecast that I have all of a sudden? It's good to dive into this now because there are a ton of industries in which mathematical optimization is already widely adopted, and it's the crossover between optimization and data science that just hasn't quite happened yet. If you are an optimization expert, there's also an opportunity for you to do some machine learning, or related disciplines that merge the two together into solving one problem.
Picking up optimization can be a real career differentiator. Not a lot of folks are able to say that they know mathematical optimization and how to use it. Now is a great time for that because the problems are all merging together. The acceptance of AI techniques for decision making is becoming more widespread, and people are feeling more confident in their use.
Ryan: What do you think are some of the biggest challenges in the adoption of mathematical optimization by data scientists as people come from the data science world into this community?
Jerry: It depends on your background. The challenge can be diving into typical OR problems, particularly mathematical optimization. If you start searching for that in the wilds of the internet, you’ll get a wall of heavy math pretty quickly. And that's fine, but it’s not for everybody. It can be intimidating. It can be challenging if you don't already have that background, and a lot of data scientists come from disciplines where it's not super math-heavy. Even if you do have the capability or the understanding, the mathematics slows down the process considerably. That is probably one of the bigger challenges.
Understanding what we talked about in your first question, the differences, as well as how ML and OR can work together, is also a challenge. One of the advantages for data scientists to pick up operations research and mathematical optimization is that it's a skill differentiator. It's something you can do that not a lot of people in your field will be able to do, and that's always great for your career.
Modeling things in a mathematical optimization context is very different from a machine learning context. A machine learning model is something that you're fitting, like a curve or a line. You're fitting to what your data looks like. You're trying to find a representation of your data, in a sense. Whereas a mathematical optimization model is more of a declarative statement of the problem or system that you're trying to optimize. They are different uses of the exact same word, which is also something that can be a little bit challenging. When you hear ‘optimization model’, you think you know what optimization is in a very general context; it's doing something as best as you can. You know what a model is because you know what machine learning models are. But, put those two things together, and you may come up with a little bit of a mischaracterization. There's a lot of awareness that needs to happen, but I think that's what we're all here for right now.
Ryan: Both of our organizations have seen people starting to move from the data sciences world into the adoption of mathematical optimization as a related discipline. Are there specific industries or markets where you see that happening more? Is there a ramp-up happening where we have this disciplinary activity?
Jerry: Yes, particularly for the data science community. There are very well-established methods, practices, models, and things that you can use to get started. But again, there's this lack of awareness on the data science part and a lack of good communication on the operations research part. It's not just the data science people's fault for not discovering this technique. That’s a factor, but there has also been poor marketing, from an operations research perspective, of what this can do.
Things like supply chain planning and logistics are the bread and butter capabilities of mathematical optimization. Within those contexts, there are people working on supply chain, but they're doing purely demand forecasting, leaving the decision-making to spreadsheets or others. Previous best practices, where there's a ripe opportunity to combine the two, that's where we see a lot of great success.
Price optimization might also be the next big thing because of some of the open source projects available, integrating machine learning models into optimization models. There’s a great opportunity to leverage that integration within price optimization.
Ryan: I've done a few projects now with Gurobi machine learning, and there were two shocking things to me: One was just how easy it is to take scikit-learn, PyTorch, and other kinds of models, and just plug 'em into a MIP. It really does feel magical. The other is that I had never considered doing this before I learned about it. It's interesting to me that we pick up our Wayne Winston or our Hill Lieberman books, and this isn't something that we're taught to do, or at least not traditionally.
Can you talk a little bit about why Gurobi is investing time in this now? What makes this the right time for these tools?
Jerry: A lot of new things that come about stem from work in academia. “Hey, this would be a cool thing to try and do.” That started about five or six years ago with a few published papers, and that's where people on the Gurobi side started to gain a bit of interest. But a lot of those papers and those instances were very specially built, such as with Python packages, or with specially-built tools to solve a specific thing. There wasn't a broader framework to help. It was part of our motivation to bring all of that under one umbrella.
The technology and solvers that exist, particularly our solver, Gurobi, we feel great about, obviously. Technology and hardware have improved to the point where you can actually incorporate a trained machine learning model into a MIP or into an LP, and it can drastically increase the size of your problem. That's just how it works. It’s gotten to a place where it's cool if that happens, and it's not a big deal. It becomes more tractable. That's the natural progression of operations research, and MIP in particular, because the technology finally caught up. Now we can actually do this.
Ryan: This definitely seems to be the trend: bigger models, faster.