Implementation of the State-Task-Network (STN) [Kondili et al. 1993] with degradation of equipment. This code can be used to replicate the results in [Wiebe et al. 2018].
This implementation is based on the STN-Scheduler by Jeffrey Kantor (c) 2017.
Generate data for logistic regression by solving short-term scheduling model repeatedly for different demands:
python lhs.py runs/test_lhs.yaml
where runs/test_lhs.yaml
is a config file.
Train logistic regression for Markov-chain or frequency approach.
Solve model using rolling horizon:
python rolling runs/test_det.yaml
Solve model using Markov-chain or frequency approach:
python mc.py runs/test_mc.yaml
Optimize uncertainty set size using Bayesian Optimization:
python bo.py runs/test_bo.yaml prefix_for_file_names
Kondili, E.; Pantelides, C.; Sargent, R. A general algorithm for short-term scheduling of batch operations - I. MILP formulation. Computers & Chemical Engineering 1993, 17, 211227.
Wiebe, J.; Cecilio, I.; Misener, R. Robust optimization of processes with degrading equipment. 2018 (Submitted).