“Simple things can bring to the most value”
On 11th December 2017 at YoRoom, Data Science Milan and Data Reply have closed this plenty year of data science events, with talks on price optimization.
Pricing is one of the most important strategic leverages used by companies to identify its competitive position because is able to increase revenues, has positive impacts on renewal rate, gives more visibility to new products and get better customer satisfaction.
The price is the economic value of a good or service expressed in current currency in a given time and place, which varies according to changes in supply and demand and is expressed by the ratio between the total revenue desired by the company from that commodity and the quantity produced.
Pricing optimization is a technique that utilizes analysis of data to predict the behaviour of potential buyers to different prices for company products and services through different channels.
“Optimal discount strategy for products in close-out phase” by Ilaria Gianoli, Data Reply
Ilaria shared her experience in optimizing the close-out strategy for a multinational retail leader, which consist in identify the optimal discount strategy for products in their close-out phase, as a trade-off between margin loss and inventory cost. The solution adopted is switched in three steps: the first one based on collecting all sales information to realize a time series able to create a forecast model; then to develop an elasticity model both at product level and hierarchical level; at the end the choice for the optimal discount as max function of difference between margin and fee.
Are used several algorithms for each step: linear regression to develop an elasticity model with DBSCAN (Density-based spatial clustering of applications with noise) to clusterize products. It is a density-based clustering algorithm: given a set of points in some space, it groups points that are closely packed together (with many nearby neighbours), marking as outliers points that lie alone in low-density regions. About time series forecasting are used either ARIMA (autoregressive integrated moving average) or FFNN (feed-forward neural network) models depending at least two seasonality. The whole process is managed using R and Cloudera tools.
Algorithm was tested in two kind of family goods: products sold frequently (high-rotating) and products sold rarely (low-rotating). Fine results for both in terms of KPIs compared with previous situation where algorithm wasn’t set: reduction of coverage days in the stores and reduction of inventory costs matched with improvement of revenues due to increased sales and reduction of fees with investment of saved resources in other projects. Not only, qualitative results as like more visibility of new products introduced to substitute the older, better space allocation of products in the stores and homogeneity among stores because the solution offered replies to specific needs, but it’s a general solution.
“Online pricing: from theory to application” by Giovanni Corradini, Data Reply
Giovanni showed Multi-Armed Bandit algorithm used in e-commerce by ticket selling company which consist in choosing the best price to maximize the revenue. The price optimization comes from trade-off between exploration and exploitation: the first one means to find the best price given several prices; exploitation means to propose current best price to make revenue.
Multi-Armed Bandit algorithm (MAB) is a fundamental dynamic optimization problem in reinforcement learning, the decision maker is faced with a set of possible decisions (arms). Typically, each arm has stable reward distribution unknown to the decision maker, so he has to select arms with the goal of optimizing cumulative reward. Suppose to have n rounds, then play a game where the decision maker receives a request and offers a price (arm) with this resulting payoff by the customers: the price proposed if the customer bought the ticket or anything otherwise.
One of the simplest possible algorithms for trading off exploration and exploitation is called the epsilon-Greedy algorithm. A greedy algorithm is an algorithm that always takes whatever action seems best at the present moment, even when that decision might lead to bad long term consequences. The term epsilon in the algorithm’s name refers to the odds that the algorithm explores instead of exploiting. It’s one of the easiest bandit algorithm because it tries to be fair to the two opposite goals of exploration and exploitation by using a mechanism like flips a coin.
This algorithm has one systematic weakness: it doesn’t keep track of how much it knows about any of the arms available. It can be done better by using an algorithm that pays attention to not only what it knows, but also how much it knows: the Upper Conﬁdence Bound (UCB) algorithm and works as follows. In each time period, the algorithm assigns each arm a so-called UCB value, the sum of expected reward and potential value from experimentation, then the algorithm plays the arm with the highest value. The decision maker observes a noisy reward, and updates these values for each arm.
In the e-commerce context part of provider’s revenue comes from metasearch engines and it also hasn’t access to the user directly. Solution provided has used simulated requests from users with either C++ or Python tools. Results comes from two different non stationary environments switching between them with 15.000 type of interactions and comparing ORAT algorithm (Online Risk Averse Tree) over UCB1 algorithm with an increase of gain by the first one on the second one at the beginning then to become stationary. There are business benefits measured by the increase of revenues and customer satisfaction, linked with decreasing cost of maintenance and analytic know – how of the process.
“Renewal Price Optimization for Subscription products” by Riccardo Lorenzon, Data Reply
Riccardo presented an application of subscription renewal pricing optimization models for a company belonging to the publishing industry which consist in to decide the optimal prices for renewal subscription products, given some boundaries and objectives input by the customer.
Solution is developed in three steps: the first step collecting all customers features to develop a database; then to develop an elasticity model and at the end choosing the optimal price for each contract given input KPIs. The elasticity curves is realized by a logistic regression with elastic net regression as in a churn model, but instead to use a binary output (0-1) is used a probability distribution as a metric to predict renewals. Whole process is managed using known data science tools: R, Python and Cloudera for data preparation.
Optimization problem works in this way: given an elasticity curve for each customer let the marketing to put some targets on the global set of customers, maybe a customer pay more and other one pay less, surely there is a retention from one of them and Company want to gain a retention from the other one.
Were tested two scenarios with marketing targets as an input and KPIS as an output with delta compared either to the previous month or previous year depending on the time frame and compared with previous situation where algorithm wasn’t set. In the first scenario the target was to maximize the margin, in the second one to maximize the renewal rate; in the first situation profit margin and revenue increased with steady renewal rate; in the second situation profit margin and renewal rate increased with decreasing revenue. This solution gives lot of quantitative benefits increasing economic KPIS as revenues, margins, sales volume, renewal rate, discount rates, process automation and in terms of qualitative benefits it helps the marketing to focus on customer needs.
Author: Claudio Giancaterino
Actuary & Data Science Enthusiast