Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/imd10/math329-algebraic-method
A Python project for the MATH329 Operations Research course, designed to solve Linear Programming Problems (LPP) using the algebraic method with both CLI and GUI interfaces.
https://github.com/imd10/math329-algebraic-method
algebraic-method cli gui linear-programming-problem lpp numpy python search-operation
Last synced: about 1 month ago
JSON representation
A Python project for the MATH329 Operations Research course, designed to solve Linear Programming Problems (LPP) using the algebraic method with both CLI and GUI interfaces.
- Host: GitHub
- URL: https://github.com/imd10/math329-algebraic-method
- Owner: iMD10
- Created: 2024-11-21T11:35:38.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-11-23T21:59:19.000Z (about 1 month ago)
- Last Synced: 2024-11-23T22:27:05.126Z (about 1 month ago)
- Topics: algebraic-method, cli, gui, linear-programming-problem, lpp, numpy, python, search-operation
- Language: Python
- Homepage:
- Size: 16.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# MATH329-Algebraic-Method
A Python-based tool for solving Linear Programming Problems (LPP) using the algebraic method. This project is designed to provide an efficient way to solve LPPs through both a command-line interface (CLI) and a graphical user interface (GUI). It leverages the powerful numerical computing capabilities of NumPy.
---
## Table of Contents
- [Introduction](#introduction)
- [Features](#features)
- [Installation](#installation)
- [Usage](#usage)
- [Command-Line Interface (CLI)](#command-line-interface-cli)
- [Graphical User Interface (GUI)](#graphical-user-interface-gui)
- [Dependencies](#dependencies)
- [Configuration](#configuration)
- [Troubleshooting](#troubleshooting)
- [Contributors](#contributors)---
## Introduction
This project is a Python implementation of the algebraic method for solving Linear Programming Problems (LPP). It is aimed at helping students and professionals understand and apply LPP solutions in an intuitive and user-friendly manner.
Key aspects include:
- **CLI Tool** for users who prefer command-line operations.
- **GUI Application** for a more interactive experience.The project is part of the MATH329 coursework and uses NumPy to handle matrix operations efficiently.
---
## Features
- Solve Linear Programming Problems using the algebraic method.
- Two user interfaces:
- Command-Line Interface (CLI)
- Graphical User Interface (GUI)
- Easy-to-understand results and outputs.
- Dependency on Python's robust `numpy` library for numerical computations.---
## Installation
1. Clone the repository:
```bash
git clone https://github.com/iMD10/MATH329-Algebraic-Method.git
cd MATH329-Algebraic-Method
```2. Install required dependencies:
```bash
pip install numpy
```---
## Usage
### Command-Line Interface (CLI)
1. Navigate to the project directory.
2. Run the CLI script:
```bash
python CLIAlgebric.py
```
3. Follow the prompts to input problem constraints and objectives.### Graphical User Interface (GUI)
1. Navigate to the project directory.
2. Run the GUI script:
```bash
python GUIAlgebric.py
```
3. Use the interactive interface to input the problem details and view the solution.---
## Dependencies
The project depends on the following Python libraries:
- `numpy` (for matrix operations and numerical computations)Install dependencies using:
```bash
pip install -r requirements.txt
```
(*Ensure you create a `requirements.txt` file listing the dependencies.*)---
## Configuration
There is no additional configuration required. Ensure Python 3.x and the required dependencies are installed.
---
## Troubleshooting
- **Error:** `ModuleNotFoundError: No module named 'numpy'`
- **Solution:** Ensure NumPy is installed by running `pip install numpy`.- **GUI not opening:**
- Ensure you have Python Tkinter installed (comes pre-installed with most Python distributions).---
## Contributors
- **Muhannad Majed**
GitHub: [@iMD_10](https://github.com/iMD_10)- **Mohammed Saleh**
GitHub: [@rayq-q](https://github.com/rayq-q)- **Mohammed Mansour**
GitHub: [@MrM3ROF](https://github.com/MrM3ROF)- **Eyad Fahad**
GitHub: [@commando-xxt](https://github.com/commando-xxt)- **Ammer Mohammed**
GitHub: [@3wex](https://github.com/3wex)---
Feel free to open issues or contribute to the project to make it better. Enjoy solving LPPs with ease!