LEO: Learning Efficient Orderings for Multiobjective Binary Decision Diagrams (2307.03171v1)
Abstract: Approaches based on Binary decision diagrams (BDDs) have recently achieved state-of-the-art results for multiobjective integer programming problems. The variable ordering used in constructing BDDs can have a significant impact on their size and on the quality of bounds derived from relaxed or restricted BDDs for single-objective optimization problems. We first showcase a similar impact of variable ordering on the Pareto frontier (PF) enumeration time for the multiobjective knapsack problem, suggesting the need for deriving variable ordering methods that improve the scalability of the multiobjective BDD approach. To that end, we derive a novel parameter configuration space based on variable scoring functions which are linear in a small set of interpretable and easy-to-compute variable features. We show how the configuration space can be efficiently explored using black-box optimization, circumventing the curse of dimensionality (in the number of variables and objectives), and finding good orderings that reduce the PF enumeration time. However, black-box optimization approaches incur a computational overhead that outweighs the reduction in time due to good variable ordering. To alleviate this issue, we propose LEO, a supervised learning approach for finding efficient variable orderings that reduce the enumeration time. Experiments on benchmark sets from the knapsack problem with 3-7 objectives and up to 80 variables show that LEO is ~30-300% and ~10-200% faster at PF enumeration than common ordering strategies and algorithm configuration. Our code and instances are available at https://github.com/khalil-research/leo.
- Branch-and-bound for biobjective mixed-integer linear programming. INFORMS Journal on Computing, 34(2): 909–933.
- FORCE: a fast and easy-to-implement variable-ordering heuristic. In Proceedings of the 13th ACM Great Lakes symposium on VLSI, 116–119.
- A genetic algorithm approach for multi-objective optimization of supply chain networks. Computers & industrial engineering, 51(1): 196–215.
- A branch-and-bound algorithm for biobjective mixed-integer programs. Optimization Online, 1–29.
- Network models for multiobjective discrete optimization. INFORMS Journal on Computing.
- Multiobjective optimization by decision diagrams. In International Conference on Principles and Practice of Constraint Programming, 86–95. Springer.
- Discrete Optimization with Decision Diagrams. INFORMS J. Comput., 28(1): 47–66.
- Decision diagrams for optimization, volume 1. Springer.
- Variable ordering for the application of BDDs to the maximum independent set problem. In International Conference on Integration of Artificial Intelligence (AI) and Operations Research (OR) Techniques in Constraint Programming, 34–49. Springer.
- The triangle splitting method for biobjective mixed integer programming. In Integer Programming and Combinatorial Optimization: 17th International Conference, IPCO 2014, Bonn, Germany, June 23-25, 2014. Proceedings 17, 162–173. Springer.
- A criterion space search algorithm for biobjective integer programming: The balanced box method. INFORMS Journal on Computing, 27(4): 735–754.
- On the effect of local changes in the variable ordering of ordered decision diagrams. Information Processing Letters, 59(5): 233–239.
- Improving the variable ordering of OBDDs is NP-complete. IEEE Transactions on computers, 45(9): 993–1002.
- Bryant, R. E. 1992. Symbolic boolean manipulation with ordered binary-decision diagrams. ACM Computing Surveys (CSUR), 24(3): 293–318.
- Heuristics to compute variable orderings for efficient manipulation of ordered binary decision diagrams. In Proceedings of the 28th ACM/IEEE Design Automation Conference, 417–420.
- Combinatorial Optimization and Reasoning with Graph Neural Networks. Journal of Machine Learning Research, 24(130): 1–61.
- Improving Optimization Bounds Using Machine Learning: Decision Diagrams Meet Deep Reinforcement Learning. In The Thirty-Third AAAI Conference on Artificial Intelligence, AAAI 2019, The Thirty-First Innovative Applications of Artificial Intelligence Conference, IAAI 2019, The Ninth AAAI Symposium on Educational Advances in Artificial Intelligence, EAAI 2019, Honolulu, Hawaii, USA, January 27 - February 1, 2019, 1443–1451. AAAI Press.
- Carbin, M. 2006. Learning effective BDD variable orders for BDD-based program analysis. Technical report, Citeseer.
- UIUC CS 598CSC: Approximation Algorithms, Lecture Notes on Knapsack. URL: https://courses.engr.illinois.edu/cs598csc/sp2009/lectures/lecture˙4.pdf. Last visited on 2023/07/04.
- XGBoost: A Scalable Tree Boosting System. In Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD ’16, 785–794. New York, NY, USA: ACM. ISBN 978-1-4503-4232-2.
- Efficient variable ordering heuristics for shared ROBDD. In 1993 IEEE International Symposium on Circuits and Systems (ISCAS), 1690–1693. IEEE.
- Learning heuristics for OBDD minimization by evolutionary algorithms. In Parallel Problem Solving from Nature—PPSN IV: International Conference on Evolutionary Computation—The 4th International Conference on Parallel Problem Solving from Nature Berlin, Germany, September 22–26, 1996 Proceedings 4, 730–739. Springer.
- Exact BDD minimization for path-related objective functions. In Vlsi-Soc: From Systems To Silicon, 299–315. Springer.
- Combining ordered best-first search with branch and bound for exact BDD minimization. IEEE Transactions on Computer-aided Design of Integrated Circuits and Systems, 24(10): 1515–1529.
- Ehrgott, M. 2006. A discussion of scalarization techniques for multiple objective integer programming. Annals of Operations Research, 147(1): 343–360.
- Exact methods for multi-objective combinatorial optimisation. Multiple criteria decision analysis: State of the art surveys, 817–850.
- Finding the optimal variable ordering for binary decision diagrams. In Proceedings of the 24th ACM/IEEE Design Automation Conference, 348–356.
- Learning to order BDD variables in verification. Journal of Artificial Intelligence Research, 18: 83–116.
- Joachims, T. 2002. Optimizing search engines using clickthrough data. In Proceedings of the eighth ACM SIGKDD international conference on Knowledge discovery and data mining, 133–142.
- Joachims, T. 2006. Training linear SVMs in linear time. In Proceedings of the 12th ACM SIGKDD international conference on Knowledge discovery and data mining, 217–226.
- Variable ordering for decision diagrams: A portfolio approach. Constraints, 27(1-2): 116–133.
- Kendall, M. G. 1938. A new measure of rank correlation. Biometrika, 30(1/2): 81–93.
- Finding Backdoors to Integer Programs: A Monte Carlo Tree Search Framework. In Thirty-Sixth AAAI Conference on Artificial Intelligence, AAAI 2022, Thirty-Fourth Conference on Innovative Applications of Artificial Intelligence, IAAI 2022, The Twelveth Symposium on Educational Advances in Artificial Intelligence, EAAI 2022 Virtual Event, February 22 - March 1, 2022, 3786–3795. AAAI Press.
- A new algorithm for generating all nondominated solutions of multiobjective discrete optimization problems. European Journal of Operational Research, 232(3): 479–488.
- Multi-objective optimization methods in novel drug design. Expert Opinion on Drug Discovery, 16(6): 647–658.
- SMAC3: A Versatile Bayesian Optimization Package for Hyperparameter Optimization. arXiv:2109.09831.
- End-to-end Pareto set prediction with graph neural networks for multi-objective facility location. In International Conference on Evolutionary Multi-Criterion Optimization, 147–161. Springer.
- Efficient variable ordering using aBDD based sampling. In Proceedings of the 37th Annual Design Automation Conference, 687–692.
- Multi-objective integer programming: An improved recursive algorithm. Journal of Optimization Theory and Applications, 160: 470–482.
- Branch-and-bound for bi-objective integer programming. INFORMS Journal on Computing, 31(4): 805–822.
- Scikit-learn: Machine Learning in Python. Journal of Machine Learning Research, 12: 2825–2830.
- Multi-objective branch and bound. European Journal of Operational Research, 260(3): 856–872.
- A survey of static variable ordering heuristics for efficient BDD/MDD construction. University of California, Tech. Rep, 130.
- Rudell, R. 1993. Dynamic variable ordering for ordered binary decision diagrams. In Proceedings of 1993 International Conference on Computer Aided Design (ICCAD), 42–47. IEEE.
- A survey of methods for automated algorithm configuration. Journal of Artificial Intelligence Research, 75: 425–487.
- Multi-objective optimization of agile satellite orbit design. Advances in Space Research, 62(11): 3053–3064.
- A multiobjective branch-and-bound framework: Application to the biobjective spanning tree problem. INFORMS Journal on Computing, 20(3): 472–484.
- Multi-objective optimization for selecting and scheduling observations by agile earth observing satellites. In Parallel Problem Solving from Nature-PPSN XII: 12th International Conference, Taormina, Italy, September 1-5, 2012, Proceedings, Part II 12, 112–121. Springer.
- Wegener, I. 2000. Branching Programs and Binary Decision Diagrams: Theory and Applications, volume 4. SIAM.
- Graph Learning Assisted Multi-Objective Integer Programming. Advances in Neural Information Processing Systems, 35: 17774–17787.
- Multi-objective optimization in radiotherapy: applications to stereotactic radiosurgery and prostate brachytherapy. Artificial Intelligence in Medicine, 19(1): 39–51.