PyJobShop
Authors/Creators
Description
This release introduces two big features: optional tasks and break interruptions!
Highlights
You can now schedule with optional tasks. This is useful when there are multiple processing plans, each of which have different constraints or requirements. Tasks can be made optional by enabling the
Task.optionalargument. We also introduced three new constraints:SelectAllOrNone,SelectExactlyOne, andSelectAtLeastOne. These can be used to create selection logic in your problem. Check out this notebook to get started with optional tasks.Tasks can now be interrupted by breaks by enabling
Task.allow_breaks. This allows scheduling long-running tasks that have to cross multiple break periods. We already released resource breaks in v0.0.5, but tasks were not allowed to be scheduled across breaks (this remains to be the default). Check out this notebook to get started with resource breaks.Speed improvements: building large-scale models should be up to 10x faster due to #377, where we simplified the model construction logic.
Breaking changes
Task.fixed_durationis renamed toTask.allow_idlewith inverted logic to align with the newTask.allow_breaksfield - users must rename the field and flip all boolean values.
What's Changed
- Minor updates example notebooks by @JoostBerkhout in https://github.com/PyJobShop/PyJobShop/pull/358
- Rename Solver to CPModel by @leonlan in https://github.com/PyJobShop/PyJobShop/pull/364
- Improve interaction between mode and assignments by @leonlan in https://github.com/PyJobShop/PyJobShop/pull/377
- Optional tasks by @leonlan in https://github.com/PyJobShop/PyJobShop/pull/269
- Strip notebook output by @leonlan in https://github.com/PyJobShop/PyJobShop/pull/378
- ProblemData equality comparison methods by @leonlan in https://github.com/PyJobShop/PyJobShop/pull/379
- Non-renewable resource breaks by @leonlan in https://github.com/PyJobShop/PyJobShop/pull/381
- Improve examples and add mode-dependent example by @leonlan in https://github.com/PyJobShop/PyJobShop/pull/331
- Tasks with break interruptions by @leonlan in https://github.com/PyJobShop/PyJobShop/pull/370
Full Changelog: https://github.com/PyJobShop/PyJobShop/compare/v0.0.6...v0.0.7
Notes
Files
PyJobShop/PyJobShop-v0.0.7.zip
Files
(404.3 kB)
| Name | Size | Download all |
|---|---|---|
|
md5:66a701dcc2dcffa3b10d0dfec965ca03
|
404.3 kB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/PyJobShop/PyJobShop/tree/v0.0.7 (URL)
Software
- Repository URL
- https://github.com/PyJobShop/PyJobShop