Even though Quantitative Supply Chain initiatives can be carried out on any platform with a programming language, the Lokad platform has been precisely engineered to support those initiatives. Lokad is a platform dedicated to the design and the roll-out of bespoke supply chain predictive optimization apps. Compared to generic development tools, Lokad delivers superior productivity, reliability, maintainability, security - and last but not least - supply chain performance.
At the core of Lokad lies Envision, a Domain-Specific programming Language (DSL). This language is intended for supply chain experts, not software engineers. Our primary goal is to put supply chain optimization in the hands of those who have direct expertise in the subject. By doing so, Lokad derisks supply chain initiatives by removing layers of middlemen between business and IT.
Through Envision, we vastly exceed the capabilities of APS (Advanced Planning Systems), “advanced” in name only, BI (Business Intelligence) or even specialized forecasting toolkits. Last but not least, compared to generic programming languages - such as Python - Lokad delivers apps that are more secure and more maintainable.
Excel is the most widely used tool in supply chain. At Lokad, we acknowledge that Excel has many great qualities: it is simple, expressive, visual, and most importantly, Excel lets you stay on top of your data all the time. Excel acquired the world-wide success it deserves. With Envision, we have worked very hard to preserve all these excellent qualities found in Excel.
However, as far as supply chain is concerned, Excel is not the pinnacle of analytics either. Excel’s greatest strength is also its greatest weakness: the calculation logic and the data become systematically entangled, and this creates never-ending problems as soon as the sheets begin growing in size. Yet, large Excel sheets are usually unavoidable in supply chain, where hundreds or even thousands of products are typically found within the same company.
Unfortunately, this logic+data entanglement issue cannot be fixed within Excel, because the “fix” would go against what makes Excel such a great tool in the first place. As a result, at Lokad, we decided to design Envision, a technology that would preserve the valuable properties of Excel as far as supply chain is concerned, but would also support scaling up to hundreds of millions of orders or SKUs, if that’s what is required.
Then spreadsheets, not just Excel, are simply not geared for specialized yet essential classes of calculations needed for the optimization of supply chains. For example, spreadsheets have (virtually) no feature to manage probabilistic forecasts. Thus, spreadsheets are stuck with a “drive by averages” mindset that is harmful for supply chains. Similarly, spreadsheets have (virtually) no features to perform constrained optimization under uncertain conditions. As a result, even mundane constraints like MOQs end up being manually resolved by supply chain practitioners.
Envision delivers specialized constructs - like an algebra of random variables - that are essential to the predictive optimization of supply chains, which are simply not available in spreadsheets. Then, apps built with Envision are vastly more maintainable than spreadsheets, which scale poorly in regards to complex problems.
Not just observing data but acting on it
Business Intelligence (BI) solutions are frequently sold as the next stage of business analytics after Excel. However, based on Lokad’s years of experience, we have come to the conclusion that, as far as supply chains are concerned, BI nearly always fails to materialize the expected benefits. The problem does not lie in the quality of the Business Intelligence tools: the BI market is mature and there are some excellent solutions out there. Rather, the difficulty lies in the fact that observing data for the sake of “getting insights” is terribly costly for businesses where thousands of products and thousands of clients are involved.
In supply chain, BI tools fail to scale not because they cannot process all the data available – unlike Excel, good BI tools can process very large amounts of data – but because, while producing millions of numbers every day is cheap, as we said previously: producing only ten relevant numbers every day that are worth being read and acted upon is extremely difficult. Despite all its flaws, Excel comes with this “get things done” attitude, while BI does not.
For Envision, we absolutely wanted to preserve this “get things done” perspective. Envision is about building apps. For example, Envision can generate prioritized action lists such as:
- List the top items to be maintained at a low gross margin to pressure competitors
- Generate the quantities required to exactly fill the next container to be ordered
- List the top items that need to be liquidated to declutter the warehouse
- List the top items that are constantly being returned by customers and that need to be delisted
The quantitative decisions generated by Envision can then be automatically re-imported into the ERP, or downloaded as spreadsheets. The exact scope of Envision is really up to what you decide to be your business’ top priorities.
Your business can’t dodge programmability
Envision is a programming language. For most people who happen to not be software developers, this probably feels “very” technical; most business executives, even in the largest of companies, wonder if their team will be capable of becoming productive with such an advanced tool. Our experience tells us that supply chain is irremediably complex. We have witnessed some vendors promising tools so simple that even “a 9-year old child could use them”, and ultimately getting results aligned with what an actual “9-year old child” would have delivered.
Supply chain involves thousands of products, and frequently, a lot more. Every price, every stock level, every assortment needs to be adjusted constantly. There is no hope of achieving this with a satisfying level of productivity without automating all these mundane tasks. Yet automation alone is not sufficient: it has to be smart automation that is deeply aligned with your specific business drivers. The “programmable” part is the one that makes it possible to achieve this alignment.
Whenever someone is crafting a complex formula in a spreadsheet somewhere in your organization, this person is leveraging the programmatic expressiveness of the spreadsheet. There is no getting rid of the spreadsheet madness if teams don’t have a better alternative to inject their domain expertise into the systems. Envision is precisely intended as this superior alternative.
Despite the growing popularity of data science initiatives, the harsh reality is that the overwhelming majority of those initiatives do not live up to their expectations. More specifically, while initial prototypes are frequently promising, those initiatives usually fail at graduating toward production. In contrast, Envision has been engineered with supply chain production in mind, to specifically mitigate to the greatest extent possible those classes of problems. There are two root causes behind those failures. Discussing the pros and cons of all the alternatives to Envision would be somewhat tedious, thus for the sake of clarity, the discussion will be kept around the choice of Python vs. Envision.
First, Python requires software engineers. Indeed, Python, like any full-fledged programming language, exposes tons of technical intricacies to whoever is writing code in Python. Expecting people to be both experts in supply chain engineering and experts in software engineering is too much. Programmatic capabilities must be accessible to a large spectrum of technically-minded people, not just professional software engineers.
Second, the maintenance costs of hasty Python prototypes go through the roof. The maintenance costs must be kept under control. Python is far from being lean hardware-wise. Then, cracking supply chain optimization problems is a messy process: the data from many (poorly) reliable systems need to be reliably pipelined, imperfect and ever-changing processes need to be documented and modelized, the optimization metrics need to reflect a business strategy in a constant state of flux, etc. Python offers almost no correctness-by-design to support such efforts.
Envision is our response to these challenges. It shines in ways that are simply not accessible to Python, namely:
- Defense in depth, preventing entire classes of security issues that arise whenever a general programming language is involved.
- Transparent performance, preventing programs that will be impractically slow to run in production from being written in the first place.
- Transparent upgrade, as state-of-the-art as an ever moving target is, upgrades should be delivered automatically, typically through background code rewrites.
- Packaged stack, where the burden of assembling dozens of software pieces, even when considering the simplest app, is eliminated.
In conclusion, while Python is awesome (it is), it’s not a satisfying answer for supply chain optimization like Envision is. Building and maintaining a production-grade machine learning app in Python is possible, but costs are high, and unless your company is prepared to have a full software engineering team dedicated to the maintenance of this app, it won’t work in production.