Motivation
FlowShopScheduling is currently a satisfaction/decision model (Value = Or, with a deadline field). Per the convention established in #765 and the JobShopScheduling rework in #760, scheduling problems should be optimization models that minimize makespan directly.
Requested Change
- Change
Value from Or to Min<u64>
- Remove the
deadline field
evaluate() returns Min(Some(makespan)) for valid permutations, Min(None) for invalid configs
- Update CLI
--deadline to no longer apply to FlowShopScheduling
- Update paper entry to optimization formulation
- Update canonical example
optimal_value from true to the actual makespan
- Update tests accordingly
Reference
See the JobShopScheduling optimization conversion in PR #760 for the exact pattern.