An interactive web application built with Streamlit and Pyomo to solve and visualize a Linear Programming (LP) problem. This project was developed as a learning outcome of a mathematical optimization course.
- Interactive Solvers: Choose between
GLPKandCBCsolvers. - Dynamic Parameters: Adjust decision variable bounds and constraint values through a side menu.
- Real-time Visualization: See the feasible region and optimal solution plotted on a 2D graph.
- Mathematical Insights: View the underlying mathematical model with clear explanations.
Make sure you have Python installed. You also need optimization solvers installed on your system:
- GLPK:
brew install glpk(macOS) orsudo apt install glpk-utils(Ubuntu) - CBC:
brew install coin-or-tools/coinor/cbc(macOS)
-
Clone this repository:
git clone https://github.com/[your-username]/[repository-name].git cd [repository-name] -
Install dependencies:
pip install -r requirements.txt
-
Run the application:
streamlit run app.py
This project was developed based on the ex_LP_pyomo.py exercise from an optimization course.