This Inventory Management System is a Streamlit-based web application designed to help businesses optimize their inventory control processes. It provides powerful tools for demand forecasting, inventory policy calculation, and performance analysis.
- Data Upload: Easy Excel file upload for SKU data
- Demand Forecasting: Multiple forecasting models including Exponential Smoothing, ARIMA, and Normal Distribution
- Inventory Policy Calculation: Various inventory models including Periodic Review, Continuous Review, Base Stock, and Newsvendor
- Interactive Visualizations: Detailed plots for inventory levels, demand, and various performance metrics
- Sensitivity Analysis: Tools to understand how different parameters affect inventory performance
- Performance Metrics: Comprehensive set of KPIs including service level, profit, and inventory turnover
- Supply and Demand Planning: Visualization and analysis of supply plans and demand forecasts
- Customizable Parameters: Adjustable lead times, service levels, costs, and more
-
Clone this repository:
git clone https://github.com/? cd inventory-management-system
-
Create a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install the required packages:
pip install -r requirements.txt
To run the Streamlit app, use the following command in your terminal:
streamlit run app.py
The application will open in your default web browser.
-
Upload Data: Start by uploading your SKU data in Excel format. The file should contain columns for SKU, Date, and Quantity.
-
Select SKU: Choose the specific SKU you want to analyze from the dropdown menu.
-
Set Parameters: Adjust various parameters such as lead time, service level, and costs according to your business needs.
-
Choose Models: Select your preferred forecasting and inventory models.
-
Run Simulation: Click the "Run Simulation" button to generate forecasts and inventory policies.
-
Analyze Results: Navigate through different tabs to view forecasts, inventory levels, performance metrics, and more.
-
Sensitivity Analysis: Use the sensitivity analysis tool to understand how changes in parameters affect your inventory performance.
-
Download Results: Export your results and updated policies for further analysis or implementation.
app.py
: Main Streamlit application fileapp_utils.py
: Utility functions for the applicationforecast.py
: Forecasting modelsinventory.py
: Inventory policy modelssku.py
: SKU class definition and related functionsrequirements.txt
: List of Python dependencieslogo.svg
: Company logo file
Main dependencies include:
- Streamlit
- Pandas
- NumPy
- Plotly
- Statsmodels
For a complete list, see requirements.txt
.