00:00:09 Differentiable programming and its impact on supply chains.
00:01:00 Inefficiencies in supply chains and unsolved problems in various industries.
00:02:06 Challenges in the fashion industry and price-sensitive demand.
00:04:20 Difficulty in combining existing methods for joint optimization.
00:05:51 Differentiable programming as a descendant of deep learning for joint optimization.
00:08:00 Learning and optimization in supply chain management.
00:09:24 Differentiable programming and unsolved problems in various industries.
00:10:27 Demand forecasting and utilization of customer data.
00:13:24 Wicked problems and second-order consequences in promotions.
00:15:52 Adapting to customer needs and expectations.
00:17:03 The role of deep learning and hardware progress in solving complex problems.
00:19:20 Diminishing returns in AI progress and the need for expressiveness.
00:21:12 Differentiable programming enabling the removal of silos in supply chain management.
00:23:23 Closing thoughts.
Summary
In this interview, host Kieran Chandler and Joannes Vermorel, founder of Lokad, discuss the potential of differentiable programming for supply chain optimization. Vermorel explains that traditional methods for making stocking, purchasing, and pricing decisions are often disconnected, resulting in inefficiencies. Differentiable programming can optimize these decisions by considering multiple factors simultaneously. This approach, still relatively new, can tackle unsolved problems in various industries, such as demand forecasting in retail and optimizing under uncertainty. Advancements in technology have allowed for more complex models, which enable addressing problems at scale. Differentiable programming has the potential to revolutionize supply chain optimization, breaking down organizational silos and improving overall efficiency.
Extended Summary
In this interview, Kieran Chandler, the host, discusses differentiable programming and its impact on supply chain optimization with Joannes Vermorel, founder of Lokad, a software company specializing in supply chain optimization. They explore unsolvable problems and how these challenges have been addressed in various industries.
Vermorel explains that an unsolvable problem is not necessarily one that will never have a solution, but rather one that does not yet have a satisfying solution. He points out that although supply chains are functional, they often operate with significant inefficiencies. These inefficiencies might not be apparent until they are closely examined, and there may be variables that can be adjusted to improve the supply chain that are not traditionally considered by supply chain managers, such as pricing and assortment.
Chandler inquires about the specific challenges that have been difficult to solve in the supply chain industry. Vermorel responds that each vertical has its own set of poorly solved problems, using fashion as an example. Fast fashion, which is highly price-sensitive, demonstrates that demand is heavily influenced by pricing. However, most demand planning solutions in fashion treat demand as if pricing does not exist, which creates a massive gap.
Vermorel explains that there is an unsolved problem of joint optimization of demand, stocking, and pricing, as these factors are often treated as disconnected entities. In response to Chandler’s question about whether existing methods can be combined to solve this problem, Vermorel says that historically, most of the solutions developed did not lend themselves to being blended with one another. The Sales and Operations Planning (S&OP) approach attempted to address this issue at the human level by facilitating communication between different departments, but this does not translate well to software automation.
When it comes to software automation, Vermorel points out the difficulties that arise when trying to integrate separate systems such as demand-driven material requirements planning (DDMRP), warehouse management systems (WMS), and product information management (PIM) add-ons for pricing. These systems often make independent decisions, leading to a disjointed approach and potential inefficiencies.
Vermorel explains that traditional methods for making stocking, purchasing, and pricing decisions are often disconnected, which can lead to suboptimal outcomes. He suggests that differentiable programming can help optimize these decisions by considering multiple factors simultaneously.
Differentiable programming is conceptually similar to deep learning, but it focuses on a mix of learning and optimization instead of solely pattern recognition. Vermorel highlights that deep learning has made significant advancements in image recognition, but it has also led to breakthroughs in numerical optimization. These advancements have enabled the development of more complex models with millions of parameters, which has in turn improved the optimization process.
In the context of supply chain management, differentiable programming can be applied to both learning about future demand and making optimized decisions under uncertain conditions. For example, it can help determine how many units to buy from a supplier or when to discount a specific product. Vermorel points out that customers are often influenced by the overall assortment of products, which means that optimizing decisions for individual products may not be sufficient.
Although differentiable programming is a relatively new approach, Vermorel believes that it can be applied to a wide range of unsolved problems in various industries. He provides the example of demand forecasting in retail, where loyalty programs and customer data can offer valuable insights into purchasing patterns. Currently, there are few solutions on the market that make use of this data, and differentiable programming can potentially help exploit this information for better decision-making.
Another challenge that differentiable programming can address is optimizing under uncertainty. Traditional optimization methods often struggle with stochastic, or random, conditions, which has led to the adoption of simplified approaches, such as MRP (Material Requirements Planning) and DDMRP (Demand Driven MRP). Vermorel argues that these methods are often insufficient and that differentiable programming can provide a more effective way of tackling such problems.
The interview with Joannes Vermorel highlights the potential of differentiable programming in addressing various challenges in supply chain optimization. By combining learning and optimization, this approach can help companies make more informed decisions that take into account multiple factors and uncertainties. Although differentiable programming is still a relatively new field, Vermorel believes that it holds significant promise for improving supply chain management and demand forecasting across different industries.
They discuss the role of differentiable programming in addressing supply chain challenges and the potential for solving complex, previously unsolvable problems.
Vermorel explains that differentiable programming is a powerful tool for addressing complex supply chain challenges. Advances in technology have allowed for the optimization of models with millions of parameters, whereas before, only a few hundred were possible. This leap in capacity has made it possible to address problems at scale, which is particularly relevant for companies with numerous products and stores.
One of the major challenges that differentiable programming helps to address is the “wicked problem.” These problems arise when there are second-order consequences to actions, such as when promotions in a fashion brand lead to customers only shopping during sales. Currently, no algorithms are capable of addressing these wicked problems, but Vermorel believes that human-level AI may eventually be able to tackle them.
Differentiable programming’s recent success can be attributed to a combination of hardware and software advancements. Rapid progress in processing power, coupled with breakthroughs in algorithmic efficiency, has allowed for the optimization of models with hundreds of millions of parameters. Vermorel believes that we have reached a point of diminishing returns in processing power, and the main challenge now lies in improving expressiveness and fitting complex problems into an optimizable framework.
For supply chain practitioners, differentiable programming offers the potential to break down silos and optimize previously isolated problems jointly. This could lead to a massive step forward in efficiency, requiring companies to rethink their organizational structures. As companies start to adopt differentiable programming, they can follow the example set by Amazon in breaking down these silos and optimizing across domains.
Differentiable programming has the potential to revolutionize supply chain optimization by addressing previously unsolvable problems and breaking down organizational silos. With advancements in hardware and software, this approach offers supply chain practitioners new opportunities for tackling complex challenges and improving overall efficiency.
Full Transcript
Kieran Chandler: Hey, today on Lokad TV, we’re going to tackle the slightly new topic of differentiable programming. This exciting new development is the latest descendant of deep learning and has unlocked a series of challenges which previously were thought to be unsolvable. Today, we’re going to learn a little bit more about this process and understand how this has led to rapid progress in the world of supply chains. So Joannes, we’re talking about unsolvable problems today, which sounds fairly challenging. What do we mean by an unsolvable problem?
Joannes Vermorel: What I actually mean is a problem that may not have a solution ever, but more like problems that do not have a satisfying solution yet. It’s interesting because in supply chains, all problems are kind of solved, you know, in a way. Obviously, factories are producing and people enjoy things that they can buy in stores, so the supply chain is actually working. But it might be working with significant inefficiencies, and until you’ve really wrapped your head around it, you might not even see how inefficient it is at multiple levels. Especially when you start to think of variables of adjustment that maybe you can use that are not traditionally used by, I would say, supply chain managers in general, such as pricing, assortment, and all sorts of ways to kind of bend and twist market demand so that it brings the market closer to what you offer.
Kieran Chandler: Okay, so what sort of challenges are there that we’ve been struggling with for a few years now?
Joannes Vermorel: It depends, as every vertical has its own set of tough, poorly solved problems. Let’s take fashion for example. In fast fashion or affordable fashion, demand is very price-sensitive. That’s why people rush into sales because it’s the point in time where you can have those super aggressive prices. Obviously, due to the massive popularity of sales, there are a lot of people who feel that it’s worth waiting hours and going to super overcrowded stores to benefit from those prices. So, people want clothes and stuff that they like, but they really want them at a price they can afford. However, virtually every single demand planning solution that I know of for fashion, except Lokad, is treating demand as if pricing does not exist, as if it was a catalog price and that’s it. While clearly, when you’re pushing a product to the market, there is a whole pricing strategy that is going on. If the product doesn’t sell enough, you will trigger sales and discounts to liquidate the stock and make room for the next collection to come. So obviously, if you have something that is, in terms of process organization and the software tech to support all of that, treating customer demand and pricing as things that are completely disconnected, there is obviously a massive gap. And it’s clearly an unsolved problem which is a joint optimization of demand, stocking, and pricing at the same time.
Kieran Chandler: So how are these problems approached with existing methods? I mean, can we combine existing methods to get something satisfactory?
Joannes Vermorel: No, most of the recipes that have been invented historically were not lending themselves to being blended into one another. That’s kind of what S&OP tried to do a bit, but at the human level. So let’s have people talk to each other. With humans, it can work because they can talk and their semantics can align. But when we are talking about software automations, where DDMRP is taking decisions, WMS is taking stocking decisions, and then you have an add-on on your PIM (product information management) that is controlling the price, all those systems don’t blend
Kieran Chandler: You know, they don’t have anything that is natively connecting them, and even if they do, it’s not very clear at all. Considering the sort of methods that are used to generate the decision, like stocking or purchasing decision on one side and pricing decision on the other side, is there anything that you could just build in the middle to reconcile the decisions and jointly optimize?
Joannes Vermorel: At the core, these systems are designed with a divide-and-conquer mindset, where what is not in the scope is just completely ignored. That’s how you can have recipes that are also way simpler. Differentiable programming is all about a dual optimization that takes into account lots of different problems and joins them into one.
Differentiable programming is conceptually related to deep learning, but not as focused on accuracy for forecasts. It’s more like a different perspective on things. The recent progress in deep learning has been mostly about the learning side, with tremendous progress on pattern recognition in images and identification of objects or people. That’s very cool, and the progress has been significant.
However, there was also another side where deep learning unlocked tons of great results, which was numerical optimization. The reason we managed to recognize complex image patterns with more accuracy is because we had models that were vastly more complex, with much more parameters, in the tens of millions. To even train these models and build a mathematical model that is efficient on your data set, you need a numerical optimization recipe that works at scale, because we’re talking about millions of parameters to be optimized.
Deep learning and AI tech came with a series of breakthroughs on large-scale optimization, which made many of the breakthroughs on the learning side possible. Differentiable programming comes from a different perspective. What is of interest is both the learning aspect and the numerical tools to do large-scale optimization. Sometimes, what you want is a mix of learning and optimization.
In supply chain, you do not want as much learning about what the future demand will be, as much as making the right decision optimized under uncertain future conditions, such as how many units to buy if the supplier offers a certain price. Once you have the units acquired, when should you decide to discount a specific product? It’s both about learning the future demand and optimizing variables where you have a lot of freedom.
In the case of fashion, for one product, one price, and one stock, the reality is that clients do not come to a store for one product. They have needs, wishes, and desires, and they are ultimately looking at the assortment. If you start thinking about decisions for one product at a time, you’re missing the point. That’s why all those brands need collections, because they need to have a wide assortment for it to make sense for the clients.
Kieran Chandler: Where does this approach work really well in the real world? What are the classic challenges that it is very good at solving?
Joannes Vermorel: The technology stack is quite new, and with differentiable programming, I would not say that there is a well-established routine of where it’s working very well. What I’m saying is that there are so many opportunities to explore in this domain.
Kieran Chandler: Many areas of problems are seen in various industries. In a previous discussion, we talked about the limitations of MRP and how DDMRP is basically duct-taping fairly broken MRP systems. But what is the unsolved problem in this area?
Joannes Vermorel: The unsolved problem is the optimization under uncertainty. When you perform an optimization like puzzle solving with a static, non-moving future and apply all your constraints, these sorts of things have been solved since the 1980s. However, when you introduce a high degree of randomness, it’s a completely different problem. All the numerical optimizers we have fall apart, and that’s why people fall back on super simplistic recipes with decoupling points and decoupled items. The MRP is a consequence of a lack of proper tools to actually tackle the problem.
Kieran Chandler: Can you give us another example where industries are missing the point fundamentally?
Joannes Vermorel: Sure. When you think in terms of demand forecasting, every single unit sold is connected to a client. Nowadays, thanks to loyalty programs, almost every retail chain and ecommerce platform can identify their clients and know exactly who purchased what at which point in time, under which conditions, and which products were present. They know that a customer’s choice was limited to what was available at that time. There is a lot of information here, like the assortment at the point of time of the purchase decision and the identity of the clients who have a purchase history. However, I see that there are almost no solutions on the market that are using this data. It’s a clear disconnect and a massive potential that is not being used at all.
Kieran Chandler: What are the real challenges in supply chains that differentiable programming doesn’t even scratch the surface of?
Joannes Vermorel: There are wicked problems that probably won’t be solved before the advent of strong AI, or human-level intelligence. These wicked problems involve thinking about the second-order consequences of your actions. For example, when you do promotions for a fashion brand, you’re doing two things: liquidating your stock, which is good, and can be optimized with differentiable programming; but you also need to think about the consequences of your actions from the very beginning when you place an order.
Kieran Chandler: Supplier your first units, okay, good. But then, what are the second-order consequences? The fact that when you do promotions, when you do sales, you’re actually training your customer base to only shop from your store, your chains, or your e-commerce only when it’s on promotion. And there might be a drift that happened for over a decade, where you transition from people who are very happily buying all the time to most of your clients who now only buy on sales.
Joannes Vermorel: It’s like a self-fulfilling prophecy, and clearly right now. That’s why it’s called a “wicked problem.” You can check the Wikipedia page. Fundamentally, the component is that we are not dealing with automatons. Your clients are not automated; they are smart, and they adapt. So basically, you need to think about the fact that when you do something, people will think and adapt to what you’re doing. That’s what I call those second-order consequences.
When people know that you’re going to do something, they have expectations, and they base their actions on what they think about you. It’s a recursion, and it’s something very human that humans are actually quite good at doing. It’s all those wicked consequences.
For example, let’s say you’re a car manufacturer. You improve the supply chain for the distribution of car parts and for your own network of garages. Your garage becomes so good that you actually alienate your historical partners in the market. So you do an optimization on one side and then upset important partners who were your historical partners. Should you give up on optimizing your supply chain just to keep your partners happy? Maybe, maybe not. Again, that’s a sort of wicked problem where it’s completely beyond any capabilities of any algorithm that I’m aware of, even the most fancy AI stuff that you read in the press is nowhere close to even scratching this sort of wicked problem.
Kieran Chandler: It sounds like these wicked problems are probably a problem for the differentiable programming of tomorrow and Skynet, not Terminators. So why was now the time to look back at some of these unsolvable problems? What’s changed in the world of technology that made it possible for differentiable programming to make this progress?
Joannes Vermorel: What has changed is that we have gone from technology where we could optimize models with literally a few hundred parameters to models that can have a hundred million parameters. That’s what you get with modern deep learning techniques, especially for optimization purposes in deep and differentiable programming contexts. That’s game-changing because the challenge with many of the clients we’re discussing is that unless they are really small companies, they have problems that are kind of at scale. Even if they are not Walmart, as soon as you have like 50 stores, you need to solve problems at scale. If you have 10,000 products per store, we are talking about half a million SKUs, so it’s like half a million variables for pricing and stock decisions every day.
What changed was when we went from the capacity to optimize problems with a few hundred variables to millions. Suddenly, it made visible the resolution of tons of problems that were just previously invisible. Interestingly, with deep learning, it was a combination of hardware progress and software progress. AI is still progressing fast, and better CPUs with more cores and more raw processing power are still progressing relatively fast. But on top of that, what’s even faster is a series of breakthroughs where you had hardware that was giving you 10 units of processing power two years from now.
Kieran Chandler: Will maybe have 20 units or maybe that will be 3 years from now, okay that’s nice exponential progress of a period of let’s say three years or something. But if every six months you have software or mathematical breakthroughs that double the efficiency of the algorithm that you have, then your progress is dramatically faster. That’s exactly what has been happening with deep learning. There was a steady progress of the hardware, but it was completely amplified by a series of breakthroughs that were more on the algorithmic and mathematical side, where you literally had twice as much horsepower from the same hardware. The acceleration has been happening during the last decade, and the result is that we went from models with a few hundred variables to hundreds of millions within a decade. I mean, not exactly, but that gives you a kind of frame. So, this is what changed, I would say, a large portion is just to be able to do that at scale with agility and cheaply as well. Is that growth going to continue or is it something that is actually growing as much as it needs to?
Joannes Vermorel: At this point, I think we have reached the point of diminishing returns. Most of the problems we face now are not due to a shortage of processing power; we have excess processing power. We don’t have problems that we say, if processing power was ten times cheaper, we could do it. It’s very rare, and when we have methods where we could invest a lot more processing power to get a little nudge, it’s typically exceedingly marginal. You can have a few 0.2 percent extra accuracy by investing ten times more CPU, but it’s just not worth it. You’re better off rethinking the whole thing. I believe that the main challenge now lies in the kind of expressiveness, how you make those problems fit into a framework. Differentiable programming is not the opposite; it’s trying to target maximal expressiveness so that you can have lots of things that were open problems so far, just happen to enter the realm of the things you can do with differentiable programming.
Kieran Chandler: Let’s start sort of bringing things together then, and in terms of differentiable programming, what does it mean for the supply chain practitioner? What are the benefits that they’re likely to see from this, and how is it going to change how they’re currently approaching?
Joannes Vermorel: Differentiable programming will be a massive step forward in getting rid of silos. We made an episode, I think it was 20 episodes ago, on all those silos where we had vertical and horizontal silos. The reality is that I was saying we should just get rid of those silos, but the reality is that maybe people could object to that. Yes, it makes sense because obviously there are untapped inefficiencies that could be just removed and optimized if we are able to do that, but the tech is just not there. So for now, we are stuck with our silos just because of a lack of alternative. I believe that differentiable programming concretely opens the door to think of joint pricing plus assortment or assortment processing or assortment pricing or purchasing plus pricing. You can see all sorts of problems that we solved in isolation, and then you can now say, oh, we are going to solve them jointly. This is going to also require reinventing how those companies are organized because those silos of old will not survive this new world when companies start to go the Amazon way of breaking down those silos and cross-optimizing those domains.
Kieran Chandler: Brilliant, thanks for your time today. That’s something for this week. Thanks very much for tuning in,