The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
The R package planr is for Supply Chain
Management.
The goal is to provide some functions to perform
quickly some classic operations in the scope of Demand
and Supply Planning or to run the S&OP
(Sales & Operations Planning) process.
There are currently 6 groups of functions :
Calculation of projected inventories & coverages :
simple calculation : light_proj_inv()
calculation & analysis : proj_inv()
Calculation of projected inventories & constrained demand : const_dmd()
Calculation of Replenishment Plan (also called DRP) : drp()
Breakdown of Monthly Demand into Weekly Buckets :
Calculation of Short Shelf Life (SSL) stocks : ssl()
Projection of In Transit inventories : proj_git()
Calculations are performed at monthly or weekly buckets.
To learn how to use those functions, refer to the Cheatsheets and the Get Started sections of the website R planr
In the parts Gallery and Gallery Shiny we can find some examples of visuals and shiny apps using this package.
To install the CRAN version:
#install.packages("planr")
library(planr)
To install the latest development version from GitHub:
library(devtools)
#install_github("nguyennico/planr")
library(planr)
This section introduces the different functions of the package planr through :
a simple demo on a few items
an application on a product portfolio
We will start with a few functions to calculate projected inventories and coverages.
The 1st, basic (light) function : light_proj_inv()
Allows to calculate quickly the projected inventories and coverages:
To use it :
The 2nd function : proj_inv()
Allows to calculate the projected inventories and coverages
Useful to filter the data later on and spot which SKU is below the safety stock or in an overstock situation.
To use it :
The 3rd function : const_dmd()
Allows to calculate the projected inventories and coverages, as well as the Constrained Demand, which is the Demand which can be delivered, considering the actual projected inventories.
Useful to provide to a customer (or a receiving entity) the actual Demand which can be fulfilled, and then to calculate the impact on their side.
For example if an Entity 1 supplies and Entity 2 : the Constrained Demand of the Entity 1 becomes the possible Supply Plan to the Entity 2. We then can calculate the expected projected inventories of the Entity 2.
Another usage can be to manage some Allocations : we capture in the initial Demand the full potential of Sales, and based on the projected inventories, we get the Constrained Demand.
To use it : here a demo
A function to calculate a Replenishment Plan (also called DRP : Distribution Requirement Planning).
The 4th function : drp()
Based on some parameters (safety stocks, frequency of supply, minimum order quantity) allows to calculate a Replenishment Plan for an entity, for example at a Distributor level, and Affiliate, a Regional Distribution Center,…
Also useful in the scope of the S&OP (Sales & Operations Planning) process, to calculate a theoretical, unconstrained, Replenishment Plan.
To use it :
The 5th function : month_to_week()
Allows to convert a Demand initially in Monthly buckets into Weekly buckets.
We often generate monthly sales forecasts, and want to express this quantity into weekly bucket, to use it later on for the calculation of weekly projected inventories or a DRP for example.
To use it : RPubs - Transformation of Monthly Demand into Weekly Demand
The 6th function : ssl()
Allows to calculate the projected Short Shelf Life quantities from based on :
the details of Opening Inventories : at which Period of time will some stocks expire or won’t have enough Remaining Shelf Life (RSL) for sale and will be blocked
the Demand Forecasts
This leads to :
a more precise calculation of the projected inventories and DRP
get a summary view of the Obsolescence risks, and take some actions
To use it : SSL demo
The 7th function : proj_git()
Allows to calculate the projected In Transit quantities to one Entity and a defined product.
It takes into consideration :
the current quantity in transit
the next (not shipped yet) quantity in transit
the Transit Time
It can be useful to :
monitor the total (local + in transit) projected inventories of one Entity
to run some simulations to optimize some DRP parameters & stocks levels
To use it : Projected In Transit demo
R Views: Using R in Inventory Management and Demand Forecasting
Posit / RStudio Data Science Meetup : Supply Chain Management
R Shiny app demo for projected inventories : example of shiny app using the planr package
Get Started : Demand and Supply Planning with R
DRP (Distribution Replenishment Planning) demo shiny app : Demo DRP app (shinyapps.io)
2 levels network demo shiny app : 2 Levels Network (shinyapps.io)
Portfolio Calculation of Projected Inventories : RPubs - Demo Calculation Projected Inventories
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.