Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Optimizing Throughput in a Capacitated Production Line: A Linear Programming Approach with Sensitivity Analysis

Identifying an optimal operating policy is important, especially in a capacitated production line, to ensure no resources are left underutilized. That optimum alone, however, is not sufficient to find the bottleneck that restricts throughput at that current optimum and to see where a future upgrade would follow.

This research builds a linear programming (LP) model in a case study with Rice Fruit Company to maximize hourly throughput under their baseline forklift trip time, stage capacity, and dumper rate constraints. At the heart of the work, we run a sensitivity analysis on the key parameters individually to see how each one moves the optimal throughput.

Using recorded data from the Rice Fruit production facility, the model is formulated and analyzed under:

  • forklift trip times (full-bin delivery and empty-bin return)
  • load action time
  • infeed and outfeed stage capacity
  • dumper rate

Solving the LP model using the simplex method gives an optimum of about 23.5 (≈ 24) bins per hour — below the 30-bins-per-hour maximum at the current dumper rate of 0.5 bins per minute. The sensitivity results reveal that forklift trip times, namely full-bin delivery and empty-bin return, are the bottleneck on throughput; improving them enough raises throughput to that 30-bins-per-hour cap. Together, the methodology turns an LP model into a practical guide to deciding where effort and investment should go first.

Project advisor: Dr. Kimberly Spayd, PhD (Gettysburg College)

Repository Structure

optimizing-throughput-using-linear-programming-with-sensitivity-analysis/
├── project/                 # SIURO LaTeX sources
│   ├── main.tex
│   ├── references.bib
│   ├── siuro250211.cls
│   ├── siamplain.bst
│   └── figures/
├── paper/                   # compiled PDF
├── src/                     # LP solver + sensitivity sweeps
│   ├── simplex_algorithm_solver.py
│   ├── sweep.py
│   └── parameter-notebook/  # one notebook per parameter
├── docs/                    # SIURO class documentation
├── LICENSE
└── README.md

Overleaf (recommended)

  1. Zip the contents of project/ (main.tex, references.bib, siuro250211.cls, siamplain.bst, and figures/)
  2. OverleafNew Project → Upload Project
  3. Upload the zip — it compiles main.tex automatically

Read the paper

Open paper/optimizing-production-line-using-linear-programming.pdf.

Prerequisites

  • Python 3
  • pulp (LP solver; ships with CBC)
  • matplotlib (sensitivity plots)
  • Jupyter (to open the sensitivity notebooks)
pip install pulp matplotlib jupyter

Running the model

Baseline solve (default Rice Fruit parameters):

python src/simplex_algorithm_solver.py

Sensitivity analysis (one parameter at a time):

  1. Open a notebook in src/parameter-notebook/
  2. Run all cells — each notebook sweeps one parameter, prints (x^*), and plots throughput vs that input
Notebook Parameter
full_bin_delivery_trip_time.ipynb full-bin delivery trip time
empty_bin_return_trip_time.ipynb empty-bin return trip time
load_action_time.ipynb load action time
infeed_capacity.ipynb infeed capacity
outfeed_capacity.ipynb outfeed capacity
dumper_rate.ipynb dumper rate

Shared sweep helpers live in src/sweep.py.

Authors

  • Soikat Saha (corresponding author)
  • Sammy Linnen
  • Joey Coppola
  • Thomas Nguyen

License

MIT License — see LICENSE.

Acknowledgments

  • Research advised by Dr. Kimberly Spayd, PhD (Gettysburg College)
  • Thank you to Rice Fruit Company and their team for providing production-line footage used in data collection and for the opportunity to work on this project

About

Linear programming model with sensitivity analysis to maximize hourly throughput on a capacitated production line – Rice Fruit Company case study.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages