Inventory Optimization Solutions and Revenue Forecasting for Retail

Part 2. Inventory Optimization Solutions and Revenue Forecasting for Retail

1.Background

Second dataset consists of sales and inventory activities between January 2016 and August 2018. Both datasets (one for sales and one for inventory) were used in the analyses and were merged when needed using “Style#” and “Color”.

Brief Overview of UNO performance- Annually

2016 2017 2018

(in progress)

Revenue 5,195,153 3,715,589

(-28.5%)

2,672,321
COGS 2,597,578 1,857,796 1,336,160
Gross Profit 2,597,578 1,857,796 1,336,160
Operating Expense 240,000 240,000 240,000
Net Income 2,357,576 1,617,795 1,096,160

Table 1: Annual performance of second client “UNO”

 

Looking at Table 1, there is an overall decreasing trend in both revenue and cost year over year. From 2016 to 2017, we saw a big drop in Profit but we anticipate less of a drop from 2017 to 2018 as 2018 is still in progress.

Goal of this research is to 1) minimize unused supplies and 2) project future revenue in order to optimize profit.

2.Methodology

For the inventory optimization analysis, we built an interactive dashboard to calculate inventory turnover ratio for each unique ID defined by “Style#” and “Color” with an option to choose monthly or quarterly data frequency (https://estherchang10.shinyapps.io/InventoryManagement/). Inventory turnover ratio was calculated using the total “outgoing” quantities (quantities sold in store) divided by average quantity in warehouse. Inventory turnover days was 365 divided by the inventory turnover ratio.

Figure 1: Inventory Turnover Analysis on Shiny Dashboard

Figure 1 is a screenshot of our dashboard with monthly time frequency and ID DTA4E2531BL. Inventory turnover ratio for this unique item was 35, and we recommend selling this product at a discount price after 10 days in inventory warehouse.

The second request from our client was to determine how many items of each product and color should be stored in each month. As in the first request, we combined product and color code together to distinguish each product line. This case is a matter of Time-Series demand forecast because we had to predict when orders will come based on seasonality.

Figure 2: Examples of orders(in units) through time and season

 

Client are to receive a large number of orders approximately 1-3 months before the holiday or sale period, such as Black Friday, Christmas or Thanksgiving. For instance, DTA4E2531JET has orders coming in frequently and in large amount around July, August, and September in preparation for Christmas.

Before modeling time series, we encountered three obstacles. First, the interval between each sale period of each item are not even. Consequently, it would be difficult to work out time-series model since it requires data to have the same interval. Second, different products are at different stages of a product life cycle. Some products are on the decline stage, while some products are on the growing stage. For instance, based on Figure 2, DTA4E2531JET are on the growing stage while DTA4E2531GRY is on the initial stage. As a result, we confronted a lack of data for many product lines because products that are at the growing stage will have enough sale data to do demand forecast while products at the initial stage have too few sales records. Third, outliers are discovered in some products. Sometimes, some products received a bulky order, which causes an unusual spike. For example, the client received a 1000 units order of DTA4E2531IV. This circumstance is totally unpredictable, which may happened only once or twice. Therefore, it will negatively impact any Time-Series model.

To tackle these problems, we grouped data to weekly intervals to reduce variation and make data more consistent for a Time-Series forecast. Then, we removed all orders above 500 units, which occurred only once or twice. Last, due to a lack of data in some product lines, we decided to forecast only products that have more than 30 sale records. Although ARIMA model is more customizable, it is said to work better when there is over 100 observations, and most of our data have under 50 records. Given the constraints, we used Facebook Prophet to predict demand forecast which is more simple and easy to construct.

  1. Modeling

3.1 Time Series Forecasts using FB Prophet

Figure 3: FB Prophet Time Series Plot - Upward Trend

 

Our Facebook Prophet model predicts the quantity that client will receive each week, which then can be used to forecast how much they should stock up each item in the inventory. We have created a Shiny Dashboard in the second tab to browse through each products. Figure 3 is an example of a product line that we expected the demand to rise.

Figure 4: FB Prophet Time Series Plot - Downward Trend (“Dead Product”)

Figure 4 is an example of a product that we don’t recommend client  stock up on. When the forecasted demand fall below 0, we would recommend client to dispose by selling them at discount rate and not stock up until the order come in.

Conclusion

Determining inventory turnover in days of each product and forecasting demand are common practices in many industries. Our R-Shiny dashboard displays 1) inventory turnover ratio and how long each product should stay in the inventory before selling them at the discount price in one tab and 2) demand forecast from time series model given an item. We have confronted insufficient data input in several product lines, and the time series model is unable to predict any spikes or one-time-bulk orders which occur only once or twice. However, both our analyses provide ballparks for making decision on pricing strategy and inventory management. By determining how much of each item should be stored each month and when the company should sell each item at a discounted price, our client should be able to reduce cost and optimize profit.

About Authors

Lukas Frei

Lukas Frei

Lukas Frei is an aspiring data scientist currently completing the 12-week bootcamp at the New York City Data Science Academy. Besides his passion for data, he is also very interested in business and finance. Lukas holds a BS...
View all posts by Lukas Frei >
Avatar

Raymond Liang

Raymond Liang is an aspiring data scientist currently studying with the NYC Data Science Academy. Through the 12 week intensive course, Raymond is able to apply advanced data manipulation and visualization techniques using languages including, but not limited...
View all posts by Raymond Liang >

Leave a Comment

No comments found.

View Posts by Categories


Our Recent Popular Posts


View Posts by Tags

2019 airbnb alumni Alumni Interview Alumni Spotlight alumni story Alumnus API Application artist aws beautiful soup Best Bootcamp Best Data Science 2019 Best Data Science Bootcamp Big Data Book Launch Book-Signing bootcamp Bootcamp Prep Bundles California Cancer Research capstone Career Career Day citibike clustering Coding Course Demo Course Report D3.js data Data Analyst data science Data Science Academy Data Science Bootcamp Data Scientist Data Scientist Jobs data visualization Deep Learning Demo Day Discount dplyr employer networking feature engineering Finance Financial Data Science Flask gbm Get Hired ggplot2 googleVis Hadoop higgs boson Hiring hiring partner events Industry Experts Job Jon Krohn JP Morgan Chase Kaggle lasso regression Lead Data Scienctist Lead Data Scientist leaflet linear regression Logistic Regression machine learning Maps matplotlib Medical Research meetup Networking neural network Neural networks New Courses nlp NYC NYC Data Science nyc data science academy NYC Open Data NYCDSA NYCDSA Alumni Open Data painter pandas Part-time Portfolio Development prediction Prework Programming PwC python python machine learning python scrapy python web scraping python webscraping Python Workshop R R language R Programming R Shiny r studio R Visualization R Workshop R-bloggers random forest recommendation recommendation system regression Scrapy scrapy visualization seaborn Selenium sentiment analysis Shiny Shiny Dashboard Spark Special Special Summer Sports statistics streaming Student Interview Student Showcase SVM Tableau TensorFlow Testimonial tf-idf Top Data Science Bootcamp twitter visualization web scraping Weekend Course What to expect word cloud word2vec XGBoost yelp