Skip to main content

Solving shop scheduling problems with constraint programming.

Project description

[!NOTE] This package is under development. Expect things to break significantly in versions v0.0.*.

PyJobShop logo

PyPI License CI DOC Codecov

PyJobShop is a Python library for solving scheduling problems with constraint programming. It currently supports the following scheduling problems:

  • Machine environments: single machine, parallel machines, hybrid flow shops, open shops, job shops, and flexible job shops.
  • Constraints: release dates, deadlines, due dates, sequence-dependent setup times, no-wait, blocking, and precedence constraints.
  • Objective functions: minimizing makespan, total completion time, number of tardy jobs, and total tardiness.

You can find PyJobShop on the Python Package Index under the name pyjobshop. To install it, simply run:

pip install pyjobshop

The documentation is available here.

[!TIP] If you are new to scheduling or constraint programming, you might benefit from first reading the introduction to scheduling and introduction to CP pages.

Constraint programming solvers

PyJobShop uses OR-Tools' CP-SAT solver as its default constraint programming solver. We also support CP Optimizer - see our documentation for instructions on how to install PyJobShop with CP Optimizer.

Examples

We provide example notebooks that show how PyJobShop may be used to solve scheduling problems.

  • TODO

Contributing

We are very grateful for any contributions you are willing to make. Please have a look here to get started. If you aim to make a large change, it is helpful to discuss the change first in a new GitHub issue. Feel free to open one!

Getting help

Feel free to open an issue or a new discussion thread here on GitHub. Please do not e-mail us with questions, modelling issues, or code examples. Those are much easier to discuss via GitHub than over e-mail. When writing your issue or discussion, please follow the instructions here.

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

pyjobshop-0.0.2a0.tar.gz (25.2 kB view details)

Uploaded Source

Built Distribution

pyjobshop-0.0.2a0-py3-none-any.whl (17.8 kB view details)

Uploaded Python 3

File details

Details for the file pyjobshop-0.0.2a0.tar.gz.

File metadata

  • Download URL: pyjobshop-0.0.2a0.tar.gz
  • Upload date:
  • Size: 25.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for pyjobshop-0.0.2a0.tar.gz
Algorithm Hash digest
SHA256 6cf5e37320348cf5328007ef3b380c0247122cb13ae8b9c881819262e8402121
MD5 44f4d06c77073ce04b90b58fcdab4a77
BLAKE2b-256 d58fa57df0e45a7c2d692aaefc9f43c6cb68fff4cb04aa5d884ebd91868339f6

See more details on using hashes here.

File details

Details for the file pyjobshop-0.0.2a0-py3-none-any.whl.

File metadata

  • Download URL: pyjobshop-0.0.2a0-py3-none-any.whl
  • Upload date:
  • Size: 17.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for pyjobshop-0.0.2a0-py3-none-any.whl
Algorithm Hash digest
SHA256 7bb4c9545a04897c658e5150b5fbf0d5d239ca5b52664a730d00311ad9c6c4e0
MD5 0d5f1a2dc65246d803c677ee9a899829
BLAKE2b-256 33d8cf32c601d1a3e55d0d7bfa4d4af0e52e9cf35155377734cb1b012d373038

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