HaLim
first push with real optimizer
cd87ae5
|
raw
history blame
1.4 kB

Supply Roster Optimization Tool

A Python-based tool for optimizing supply roster scheduling using linear programming.

Features

  • Multi-day optimization with employee scheduling
  • Support for multiple product types and shift patterns
  • Configurable constraints for labor costs and productivity
  • OR-Tools integration for optimization
  • Streamlit and Gradio interfaces for visualization

Project Structure

β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ config/           # Configuration files
β”‚   β”œβ”€β”€ models/           # Optimization models
β”‚   β”œβ”€β”€ utils/            # Utility functions
β”‚   └── visualization/    # Web interfaces
β”œβ”€β”€ data/                 # Data files (not tracked)
β”œβ”€β”€ results/              # Output files (not tracked)
β”œβ”€β”€ requirements.txt      # Python dependencies
β”œβ”€β”€ pyproject.toml        # Project configuration
└── README.md

Setup

  1. Create virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt

Usage

# Run the optimization
python src/models/optimizer_real.py

# Start web interface
streamlit run src/visualization/Home.py

Dependencies

  • Python >= 3.8
  • OR-Tools >= 9.4.0
  • Pandas >= 1.3.0
  • Streamlit >= 1.18.0
  • Plotly >= 5.8.0

License

MIT License