The SO1 Supermarket Gym – simulating behaviors and choices
How SO1 simulates individual shopper behaviors and choices with the Supermarket Gym
We’re often asked what distinguishes SO1 (Segment of One) from other solution providers. One core aspect is our fundamental research work, which is closely tied to academic research. The following interview (edited for clarity and length) was conducted with our Chief AI Officer, Sebastian, to explain how SO1 moves from fundamental to applied research and then into the real world. This way of working we call the Supermarket Gym.
SO1’s goal is to bring one-to-one promotions to retail, until now particularly grocery retailing. As such, we develop machine learning and AI algorithms that allow us to target individual customers with tailored price promotions and coupons. That means the right product, at the right price, at the right time, to the right customer.
All of this is based on machine learning and artificial intelligence, which requires, first and foremost, understanding what drives the consumers’ purchase decisions. Only then can we derive coupons that fit both a shopper’s and a retailer’s needs, distribute those coupons to the customers, and improve the quality of coupons over time.
My role in all of this is to research and develop algorithms that will be the next generation of our targeting engine. Our company basically has two departments contributing to machine learning development. Fundamental Research, which I’m responsible for, looks at mid- and long-term projects to improve our overall technology. Our fundamental research is closely linked to academic research with partner universities, like Massachusetts Institute of Technology (MIT), Chicago University, Humboldt University Berlin, or ETH Zurich, in which we analyze our current algorithms, design new ones, and then evaluate their feasibility and power in various tests.
At some point, we get a clear idea of how well certain new algorithms or major modifications of existing algorithms work. Once we reach that point, typically some of our SO1 machine learning research engineers from the R&D team, the second contributing department, join the project. Together, we develop and modify algorithms further, benchmark the algorithms in more detail, run initial trials, execute A/B tests on the production system, and then deploy the algorithms.
Let’s now move to the Supermarket Gym and start with a not too-technical description: What is the Supermarket Gym and how is it used?
The Supermarket Gym is a controlled environment, a lab or workout space, if you will, where new algorithms can be put through the ropes on simulated data. It’s basically something that econometric research has been doing for several decades and is recognized good practice for machine learning. Whenever you build a new model or a new algorithm, you create an artificial data set that you perfectly understand and that you control.
Based on that artificial data set you can evaluate whether the algorithm actually learns what it is supposed to learn. If the real-world data is not fully understood, then developing new algorithms is very difficult, because you will never understand whether the algorithm or the data set is the problem if something doesn’t work. That’s why at SO1 we rely on simulated (i.e., artificial, controlled) data that we perfectly understand.
There’s also a second reason for using simulated data. Machine learning and especially reinforcement learning, require constant action-reaction feedback. So you do something, e.g. you make a decision based on the machine-learning algorithm, and you observe how the action plays out. Then you learn from the system’s reaction to that decision. It’s like training a machine how to play chess or any other game.
At SO1, we bring both together. First of all, simulated environments help us understand whether our models work. But at the same time, they also allow us to build so called “coupon agents”. We simulate consumers’ reactions to the coupons we give them in that simulated shopping environment and learn from that.
Could you describe how you do that in a bit more detail?
Sure. The Supermarket Gym is where we simulate the behavior of shoppers and their choices at one or several grocery retailers. What we need to create in this simulation is a set of products that represents the assortment of a specific retailer or retailers. Then there are aspects related to market structure that also go into the simulation, e.g., prices for all the products and product categories. And using well-established models, we also simulate individual shoppers, for which we have various parameters, such as price sensitivity, product preferences, consumption and stockpiling habits. Then we train our coupon agents to maximize revenue and/or redemptions and feed coupons back into the simulation. Then the “shoppers” go shopping, receive special offers, make their purchase decisions and “check out”. We analyze the performance of our algorithm that distributes the coupons – it “feeds” tailored special offers to individual shoppers – and is ultimately what becomes the SO1 Engine, and then we start over again, improving the algorithm as we go.
Well thank you for giving us that overview of how the Supermarket Gym works, Sebastian. In the next part of our interview, we’ll be asking you to give us an even closer look at the data generation process and how SO1 simulates shopping behavior in the Supermarket Gym.