PlanBee 🐝
If Plan A fails, dont worry there is always PlanBee! PlanBee is a Job Shop Scheduling algorithm module buzzing with features. Feed PlanBee with your tasks and resources and it quickly finds a solution. It employs the high-speed computation power of NumPy to achieve fast results. With PlanBee, Plan B becomes your Plan A!
Features 🚀
- Define your own tasks and resources.
- Specify available windows for each resource.
- Indicate priority, duration, and necessary resources for each task.
- Solve your scheduling problems with a single function call!
- Get a detailed summary and visualization of the scheduling solution.
Installation 🛠️
pip install planbee
Usage 🐍
First, import the necessary modules:
from PlanBee import Resource, Task, Scheduler
Then, define your resources:
resource1 = Resource(id=1, available_windows=[(0, 10), (15, 20)])
resource2 = Resource(id=2, available_windows=[(5, 20)])
And your tasks:
task1 = Task(id=1, duration=5, priority=1, resources=[resource1, resource2], resource_count=1)
task2 = Task(id=2, duration=3, priority=2, resources=[resource1], predecessors=[task1], resource_count=1)
Finally, use the Scheduler to solve:
scheduler = Scheduler(tasks=[task1, task2])
result = scheduler.schedule()
Visualization 📊
PlanBee provides a function to plot your schedule:
result.plot_resource_plan()
Contributions 💡
Contributions are always welcome! See CONTRIBUTING.md for ways to get started.
License 📄
This project is licensed under the terms of the MIT license.
Metadata
Release files for planbee 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| planbee-0.2.1.tar.gz | 14.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| planbee-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.5 kB
Release files / planbee-0.2.1.tar.gz
| Download URL | planbee-0.2.1.tar.gz |
|---|---|
| Size | 14.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a4386f3d87e752bed953cdbfb1e4f4e313c04c38430035cc23d7957372613903
|
|
BLAKE2b-256 checksum How to use checksums |
05d712f1fb0ef3a0cd43014e4cc4446acecf226d3e0f6cf50afb08a9f69b50d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.17
|
Release files / planbee-0.2.1-py3-none-any.whl
| Download URL | planbee-0.2.1-py3-none-any.whl |
|---|---|
| Size | 16.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6e08237a14837a81d8aaacf321866896ca9e29ab3731971f7ea8be328a2e2251
|
|
BLAKE2b-256 checksum How to use checksums |
6a2b10eace53153d529358aabec31cab2be4d9cc37342b8bad2d75d970a37488
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.17
|