Skip to main content

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

factryengine-0.3.2.tar.gz (17.2 kB view details)

Uploaded Source

Built Distribution

factryengine-0.3.2-py3-none-any.whl (21.5 kB view details)

Uploaded Python 3

File details

Details for the file factryengine-0.3.2.tar.gz.

File metadata

  • Download URL: factryengine-0.3.2.tar.gz
  • Upload date:
  • Size: 17.2 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

Hashes for factryengine-0.3.2.tar.gz
Algorithm Hash digest
SHA256 f13cc228f50a78d88fe55c92b9d9d948e84b489c32cb51d01611e49973d98466
MD5 1d34f7836bb75ca567c3d21864acf157
BLAKE2b-256 5cfa3d886589e37e6a31ae9ce532318d3287647f5f5f0ede1c6250be2251f0d1

See more details on using hashes here.

File details

Details for the file factryengine-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: factryengine-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 21.5 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

Hashes for factryengine-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 db39f56aa1b644ab74c0939b508643d6519dae171d4fe1ba7490760c0e4e6058
MD5 952bb92979498378183e585e5add55bf
BLAKE2b-256 9486e7744d22ab638bc2033bf4a4f54aba4494e39363956bb9e79d1bcb4d6eb9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page