Data-Driven Decisions — Prescriptive Analytics

Prabakaran Chandran
4 min readJun 14, 2022

--

𝐂𝐫𝐞𝐚𝐭𝐞 𝐇𝐢𝐠𝐡 𝐕𝐚𝐥𝐮𝐞 𝐭𝐡𝐫𝐨𝐮𝐠𝐡 𝐏𝐫𝐞𝐬𝐜𝐫𝐢𝐩𝐭𝐢𝐯𝐞 𝐀𝐧𝐚𝐥𝐲𝐭𝐢𝐜𝐬!

As I come from the #controlsystems background, the love towards #datadrivendecisions support never ends.

Usually, Most of the Analytics Practitioners/ Beginners stop their exploration either at #descriptiveanalytics analytics or at #predictiveanalytics , But the Interesting Part of Analytics does not end there.

As we all know, When Descriptive & Inquisitive analytics practices answer the question about the past, the visibility towards the future is answered through Predictive Analytics.

Even though #predictiveanalytics has the visibility of the future, business needs decision support to bring more value to it.

#prescriptiveanalytics enables businesses to understand “What should be done? and “What can we do to make _______ happen?”

Few Use cases

1. Investment decisions based on Risk
2. Dynamic Pricing of Products based on demand
3. Stock planning based on Cost and Time
4. Recommending better products to the customers
5. Manufacturing Process Planning

Example 𝐒𝐜𝐞𝐧𝐚𝐫𝐢𝐨

- When we build a Time series model/regression Model to predict the Next Month’s Sales, What will we do with that?

We never want just a futuristic prediction of sales, we need more on top of that and that is possible through prescriptive analytics.

There can be a few possible decisions that businesses want to take if they know the next month’s sales

1. Plan Inventory stock movements
2. Plan Marketing activities to improve the Sales from the projected sales
3. Adjust the price to increase the revenue

To enable the above three cases we need a Prescriptive analytics layer, which comprises of Simulation Model and Optimization Engine

Here, the Simulation Model will replicate the real system, so that we can build many scenarios that are expected to happen in the reality. From the simulation, we can evaluate the Scenarios.

Here Simulation Model can be built using either #conventional ways or #machinelearning methods

To come up with our desired scenario which can bring higher value ( Increased Revenue or Improved Sales Optimized Inventory costs or Higher Marketing ROI ) , We need an Optimization Engine.

𝐇𝐨𝐰 𝐜𝐚𝐧 𝐰𝐞 𝐛𝐮𝐢𝐥𝐝 𝐚 𝐒𝐢𝐦𝐮𝐥𝐚𝐭𝐢𝐨𝐧 𝐌𝐨𝐝𝐞𝐥?
1. System Dynamics
2. Discrete Event Simulation
3. Agent-Based Modeling
𝐇𝐨𝐰 𝐜𝐚𝐧 𝐰𝐞 𝐛𝐮𝐢𝐥𝐝 𝐚𝐧 𝐎𝐩𝐭𝐢𝐦𝐢𝐳𝐚𝐭𝐢𝐨𝐧 𝐄𝐧𝐠𝐢𝐧𝐞?

  1. Mathematical Optimizers — Linear / Non-Linear Programming
    2. Meta Heuristics Optimizers

We have seen the importance and capability of Prescriptive Analytics.

Most of the Prescriptive Analytics Pipelines consist of two components
1. Simulation Engine
2. Optimization Engine

⚙️𝐒𝐢𝐦𝐮𝐥𝐚𝐭𝐢𝐨𝐧 𝐄𝐧𝐠𝐢𝐧𝐞 — This will replicate the real-time system mathematically so that we can proactively simulate various scenarios.

Example 1 : Inventory Simulation

To know about the Inventory Stock outs during #christmas season , We can replicate the inventory movements using a simulation method and understand the stockout patterns

🤗 𝐄𝐱𝐚𝐦𝐩𝐥𝐞: 𝐂𝐮𝐬𝐭𝐨𝐦𝐞𝐫 𝐁𝐞𝐡𝐚𝐯𝐢𝐨𝐮𝐫 𝐒𝐢𝐦𝐮𝐥𝐚𝐭𝐢𝐨𝐧

To Understand the Customer Behavior towards a new product, We can Simulate the individual customer preferences and the interaction among the population using historic / panel survey data

📊 How can we build a Simulation Engine?

1. If the attributes ( I/O ) and behavior system can be modeled as Mathematical Equations ( differential Equations ), we can use 𝐬𝐲𝐬𝐭𝐞𝐦 𝐝𝐲𝐧𝐚𝐦𝐢𝐜𝐬 𝐦𝐞𝐭𝐡𝐨𝐝

2. If the system comprises many discrete events that happen one by one, we can use 𝐝𝐢𝐬𝐜𝐫𝐞𝐭𝐞 𝐞𝐯𝐞𝐧𝐭 𝐬𝐢𝐦𝐮𝐥𝐚𝐭𝐢𝐨𝐧, in which we can simulate individuals using the business logic and heuristics

3. If the system is the population of customers/machines or other entities, We need to simulate the behavior of individual entities and interactions, this can be done using 𝐚𝐠𝐞𝐧𝐭-𝐛𝐚𝐬𝐞𝐝 𝐬𝐢𝐦𝐮𝐥𝐚𝐭𝐢𝐨𝐧 — I have already posted about ABM with an example deck.

And these methods make the #digitaltwin of the real-time system depending on the scale and complexity. To build such a system we would need a proper platform backed up with a Data Integration system and Computational Capability

I remember, that building a #Digitaltwin of Inventory with very low resources took hours to complete the simulation.

Optimization:- selection of the best element from some set of available alternatives based on the #evaluation criteria

Consider We want to Optimize our Logistics Spends to increase the profit. Here we need to select the best path and transportation methods to reduce the cost.

1. We have many options here in terms of transportation methods such as truck , ship , air cargo — Need to select the best out of it

2. Each method has its own logistics costs per ton per day , this will create a bunch of possible solutions.

taking one by one and calculating the cost will take more time and inefficient

💵 𝐭𝐡𝐞𝐧 𝐇𝐨𝐰 𝐜𝐚𝐧 𝐰𝐞 𝐨𝐩𝐭𝐢𝐦𝐢𝐳𝐞 𝐭𝐡𝐞𝐧 ?

  • Using a computational Method ( Optimization Algorithms ) it is possible.
    - I have listed out few optimization algorithms,
    - Any Optimization Algorithms need the following things

1. 𝐎𝐛𝐣𝐞𝐜𝐭𝐢𝐯𝐞 𝐅𝐮𝐧𝐜𝐭𝐢𝐨𝐧 — This would be our target defining function — Ex : Profit, Spend, Revenue

2. 𝐎𝐛𝐣𝐞𝐜𝐭𝐢𝐯𝐞 — This will define where we want to reach — Ex Is it to increase the profit / Decrease it? or Is it to decrease spending / Increase it?

3. 𝐍𝐮𝐦𝐛𝐞𝐫 𝐨𝐟 𝐎𝐛𝐣𝐞𝐜𝐭𝐢𝐯𝐞𝐬 — It can be one or more objectives based on the business requirements

4. 𝐂𝐨𝐧𝐬𝐭𝐫𝐚𝐢𝐧𝐭𝐬 — these are the set of rules to control our optimization decisions within the reality — Example: Maximum capacity of Inventory = 20 tonnes, Minimum budget allocated = 3000$, this will precisely define the search space for our algorithm

5. 𝐃𝐞𝐜𝐢𝐬𝐢𝐨𝐧𝐕𝐚𝐫𝐢𝐚𝐛𝐥𝐞𝐬 — Variables that we want to optimize to reach desired objective function value. Ex : to reach high Profit, We need to find the optimal Logistics method and route. Here method and route will be the decision variables

Hope this helps!

--

--