production / job shop / resource scheduler for Python
Project description
📅 factryengine
factryengine
is a high-speed Python package for effortless and efficient task scheduling, specifically tailored for production scheduling. Built with numpy
, it ensures tasks are executed in the correct order while considering their priorities, resources, and dependencies.
🛠 Installation
Install factryengine
with a simple pip command:
pip install factryengine
🌟 Features
- ⚡ Fast Performance: Built with
numpy
for high-speed task scheduling. - 🏭 Production Scheduling: Specifically designed for seamless production scheduling.
- 📝 Simple Task Creation: Easily define tasks with attributes like duration, priority, and resources.
- 🛠️ Resource Management: Assign resources with availability windows to tasks.
- 🔄 Task Dependencies: Ensure tasks that depend on others are scheduled in the correct order.
- 📅 Efficient Scheduling: Automatically schedule tasks while considering their priorities and dependencies.
🚀 Quick Start
Get started with factryengine
with this basic example:
from factryengine import Task, Resource, Scheduler
# Creating a Resource object
resource = Resource(id=1, available_windows=[(0,10)])
# Creating Task objects
task1 = Task(id=1, duration=3, priority=2, constraints=[resource])
task2 = Task(id=2, duration=5, priority=1, constraints=[resource], predecessor_ids=[1])
# Creating a Scheduler object and scheduling the tasks
scheduler = Scheduler(tasks=[task1, task2], resources=[resource])
scheduler_result = scheduler.schedule()
In this example, task1
is scheduled before task2
as task2
depends on task1
, despite its lower priority.
📖 Documentation
For more detailed information, check out the documentation.
🤝 Contributing
Contributions, issues, and feature requests are welcome!
📝 License
This project is MIT licensed.
Project details
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
File details
Details for the file factryengine-0.3.3.tar.gz
.
File metadata
- Download URL: factryengine-0.3.3.tar.gz
- Upload date:
- Size: 17.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.11.10 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e98cb0921fa299542146df241124a005ed63f2820623a22352250fed8841c511 |
|
MD5 | 2700ffc5f284b21ad2a2474c2b92be1d |
|
BLAKE2b-256 | 9d1b905d1e692f6d5458fb0f7fc90d55c7d22453d353219449512000ab2f20e4 |
File details
Details for the file factryengine-0.3.3-py3-none-any.whl
.
File metadata
- Download URL: factryengine-0.3.3-py3-none-any.whl
- Upload date:
- Size: 21.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.11.10 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dccf5c86852509fad29c34c96756281ce4c58d1f969a54900a1e193083a2afe3 |
|
MD5 | 875d05812339454b429ec3e1aadc3378 |
|
BLAKE2b-256 | 79a91a843c2199667184a73bb29ed7a4267732384a4facc46ec61a2c4ce091ee |