DDOLib: Decision Diagram Optimisation Library¶
- Preface & Overview
- Core Concepts
- The Big Picture
- Problem — the transition system
- Decisions
- State
- Relaxation — building relaxed decision diagrams
- StateRanking — choosing which states to keep
- FastLowerBound — pruning by bounding
- Dominance — discarding inferior states
- Models — packaging everything together
- Putting it all together
- What’s next?
- Tutorial: Solving the Knapsack Problem
- Problem description
- Step 1 — Define the state
- Step 2 — Implement
Problem<Integer> - Step 3 — Implement
Relaxation<Integer> - Step 4 — Implement
StateRanking<Integer> - Step 5 — Implement
FastLowerBound<Integer> - Step 6 — Implement
Dominance<Integer> - Step 7 — Wire everything into a model and solve
- Data file format
- Running the examples
- Time and stop conditions
- Summary
- Solver Strategies
- Catalogue of Example Models