OptSeq is a general-purpose scheduling optimization solver specialized for scheduling optimization.
Project description
OptSeq
OptSeq is a general-purpose scheduling optimization solver specialized for scheduling optimization.
How to Install to Jupyter Notebook (JupyterLab) and/or Google Colaboratory
Install
pip install "optseq[all]"
How to use
See https://github.com/moai-lab-jp/optseq and https://www.logopt.com/optseq/
Here is an example.
"""
Example 1
PERT
file name: Example1.py
Copyright Log Opt Co., Ltd.
Consider a 5-activity problem with precedence constraints between the activities.
Such a problem is called PERT (Program Evaluation and Review Technique).
The processing times (durations) of the activities are kept in the dictionary
duration ={1:13, 2:25, 3:15, 4:27, 5:22 }.
Precedence constraints are given by:
Activity 1 -> Activity 3; Activity 2 -> Activity 4;
Activity 3 -> Activity 4; and Activity 3 -> Activity 5.
The objective is to find the maximum completion time (makespan) for all 5 activities.
"""
from optseq import Mode, Model
model = Model()
durations = {1: 13, 2: 25, 3: 15, 4: 27, 5: 22}
act = {}
mode = {}
for i, duration in durations.items():
act[i] = model.addActivity(f"Act[{i}]")
mode[i] = Mode(f"Mode[{i}]", duration)
act[i].addModes(mode[i])
# temporal (precedent) constraints
model.addTemporal(act[1], act[3])
model.addTemporal(act[2], act[4])
model.addTemporal(act[2], act[5])
model.addTemporal(act[3], act[4])
model.Params.TimeLimit = 1
model.Params.OutputFlag = True
model.Params.Makespan = True
model.optimize()
================ Now solving the problem ================
Solutions:
source --- 0 0
sink --- 55 55
Act[1] --- 0 13
Act[2] --- 0 25
Act[3] --- 13 28
Act[4] --- 28 55
Act[5] --- 25 47
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
optseq-0.1.3-py3-none-any.whl
(359.0 kB
view details)
File details
Details for the file optseq-0.1.3-py3-none-any.whl.
File metadata
- Download URL: optseq-0.1.3-py3-none-any.whl
- Upload date:
- Size: 359.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84ab0af2ba49ea32461e2387ac7ff6b823f590ad597cca15e5c76fe396d1b4d6
|
|
| MD5 |
da9dafe17764490c9be84671bd396500
|
|
| BLAKE2b-256 |
16baf9e23f3372aa8dcc49e9dbf8b66a11da0dd5309c714016c469c5c0168518
|