A package for solving various optimization problems. Developed by Ramanujan Computing Centre, Anna University.
Project description
VROR
VROR is a Python package designed to solve various optimization problems. It includes implementations for Critical Path Method (CPM), graphical methods for linear programming, simplex method, transportation problems, and assignment problems. Installation
You can install VROR from PyPI using pip:
pip install vror
Usage
Graphical Method
Solve linear programming problems using graphical methods.
from vrorRCC.graphical_method import *
constraints_min = np.array([[2, 1, 10], [1, 3, 18], [3, 1, 15]])
objective_function_min = [5, 4, 0]
graphical_method(constraints_min, objective_function_min, 'min')
Simplex Method
Solve linear programming problems using the simplex algorithm.
from vrorRCC.simplex_method import *
Objective_Function = np.array([-3, -2, 0])
constraints = np.array([[2, 1, 0], [-4, 5, 0], [-1, -2, 0]])
RHS = np.array([20, -10, 5])
simplex(Objective_Function, constraints, RHS, maximize=True, plot_3d = False)
Transportation Problems
Solve transportation problems using optimization techniques.
from vrorRCC.transportation_problem import *
cost_matrix = [
[2, 2, 2, 1, 4],
[10, 8, 5, 4, 6],
[7, 6, 6, 8, 6]
]
supply = [30, 70, 50]
demand = [40, 30, 40, 20, 20]
transportation(supply, demand, cost_matrix)
Assignment Problems
Solve assignment problems, typically using the Hungarian algorithm.
from vrorRCC.assignment_problem import *
cost_matrix = np.array([
[8, 6, 7, 3, 4, 5],
[4, 8, 5, 7, 3, 7],
[2, 5, 1, 6, 8, 9],
[1, 6, 7, 8, 4, 9],
[3, 8, 5, 7, 5, 1],
[6, 5, 1, 5, 6, 4],
])
assignment(cost_matrix)
Critical Path Method (CPM)
Find the critical path in a project network.
from vrorRCC.cpm import *
graph = create_graph()
add_event(graph, 'A', {})
add_event(graph, 'B', {'A': 3})
add_event(graph, 'C', {'A': 2})
add_event(graph, 'D', {'B': 1, 'C': 5})
add_event(graph, 'E', {'D': 3})
add_event(graph, 'F', {'E': 4})
visualize_graph(graph)
critical_path, length = find_critical_path(graph)
print(f"Critical Path: {critical_path} with duration {length}")
Contributing
If you'd like to contribute to VROR, please fork the repository and submit a pull request. For more details, refer to the contributing guidelines. License
VROR is licensed under the MIT License. See the LICENSE file for more details. Contact
For any questions or issues, please contact:
Author: Ragu and Team
Email: https.ragu@gmail.com
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vror-0.1.10.tar.gz.
File metadata
- Download URL: vror-0.1.10.tar.gz
- Upload date:
- Size: 7.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fa6b4ff2d1db17ba3d5061689f4ab0eb044dd83b698eb49e062eac09c829b27e
|
|
| MD5 |
7dcc0b5347706f53480875cd49618110
|
|
| BLAKE2b-256 |
6371b2a59ee9466eeb5fbe993ecf03647ef2c096415c2cbb1e320e56185c7759
|
File details
Details for the file vror-0.1.10-py3-none-any.whl.
File metadata
- Download URL: vror-0.1.10-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8e37af65b61cf6ba894f0e5a401590e045e82bdea48890596b6a72256014904c
|
|
| MD5 |
42a30b40bd06fc0634e571cf9ea35525
|
|
| BLAKE2b-256 |
fb869e41ae5d2b01d63ffa824842141b60a097b9c563dd192a4e93bbeda07c3e
|