This project demonstrates how optimization techniques, specifically Linear Programming (LP), can be applied to solve real-world business and supply chain problems using Python and the PuLP library.
Unlike traditional Machine Learning projects that rely on historical data, this project focuses on decision optimization under constraints.
The notebook covers two major optimization use cases:
- Manufacturing Profit Maximization
- Supply Chain Transportation Cost Minimization
Both problems are modeled mathematically and solved using Linear Programming.
- Understand business problems from an optimization perspective
- Formulate objective functions and constraints
- Implement Linear Programming using Python
- Use PuLP to obtain optimal solutions
- Interpret results and extract business insights
- Visualize optimized supply chain flows
A manufacturing company produces two products:
- Product A
- Product B
Each product consumes machine hours and labor hours, which are limited. The goal is to determine the optimal production quantities that maximize total profit.
- Objective: Maximize profit
- Technique: Linear Programming
- Decision Variables: Units of Product A and Product B
- Constraints: Machine hours, labor hours, non-negativity
A company operates:
- 2 Warehouses
- 3 Retail Stores
Each warehouse has limited supply capacity, and each store has fixed demand. Transportation costs vary between warehouse–store pairs.
- Objective: Minimize transportation cost
- Technique: Linear Programming
- Decision Variables: Units shipped from each warehouse to each store
- Constraints: Supply limits, demand fulfillment
The optimized supply chain solution is visualized to:
- Show shipment routes
- Display flow quantities
- Improve interpretability of optimization results
Visualization helps bridge the gap between technical solutions and business decision-making.
- Python
- Jupyter Notebook
- PuLP (Linear Programming Library)
- Matplotlib (Visualization)
📦 Business_Problem_Optimization_Using_Linear_Programming
│
├── Business_Problem_Optimization_Using_Linear_Programming.ipynb # Jupyter Notebook with full implementation
└── README.md # Project documentation