Random sampling and machine learning to understand good decompositions
Motivated by its implications in the development of general purpose solvers for decomposable Mixed Integer Programs (MIPs), we address a fundamental research question, that is how to exploit data-driven techniques to obtain automatic decomposition methods. We preliminary investigate the link between static properties of MIP input instances and good decomposition patterns. We devise a random sampling algorithm, considering a set of generic MIP base instances, and generate a large, balanced and well diversified set of decomposition patterns, that we analyze with machine learning tools. We also propose and test a minimal proof of concept framework performing data-driven automatic decomposition. The use of supervised techniques highlights interesting structures of random decompositions, as well as proving (under certain conditions) that data-driven methods are fruitful in our context, triggering at the same time perspectives for future research.
KeywordsDantzig–Wolfe decomposition Machine learning Random sampling
The authors wish to thank the guest editors and three anonymous reviewers: their insightful comments allowed to substantially improve the manuscript.
- Basso, S., & Ceselli, A. (2017). Asynchronous column generation. In Proceedings of the ninteenth workshop on algorithm engineering and experiments (ALENEX) (pp. 197–206).Google Scholar
- Basso, S., Ceselli, S., & Tettamanzi, A. (2018). Understanding good decompositions: An exploratory data analysis. Technical report, Università degli Studi di Milano. http://hdl.handle.net/2434/487931.
- Desaulniers, G., Desrosiers, J., & Solomon, M. M. (Eds.). (2005). Column generation. Berlin: Springer.Google Scholar
- FICO xpress webpage. (2017). http://www.fico.com/en/products/fico-xpress-optimization-suite. Last accessed March, 2017
- Fisher, R. A. (1992). Statistical methods for research workers. In S. Kotz & N. L. Johnson (Eds.), Breakthroughs in statistics. Springer series in statistics (perspectives in statistics). New York, NY: Springer.Google Scholar
- GUROBI webpage. (2017). http://www.gurobi.com. Last accessed March, 2017
- IBM Cplex webpage. (2016). http://www-01.ibm.com/software/commerce/optimization/cplex-optimizer/index.html. Last accessed August, 2016
- Khalil, E. B. (2016). Machine learning for integer programming. In Proceedings of the twenty-fifth international joint conference on artificial intelligence.Google Scholar
- Kruber, M., Luebbecke, M. E., & Parmentier, A. (2016). Learning when to use a decomposition. RWTH technical report 2016-037.Google Scholar
- Larose, D. T., & Larose, C. D. (2015). Data mining and predictive analytics. Hoboken: Wiley.Google Scholar
- R Core Team. (2016). R: A language and environment for statistical computing. R Foundation for Statistical Computing. https://www.R-project.org/.
- Ralphs, T. K., & Galati, M. V. (2017). DIP—decomposition for integer programming. https://projects.coin-or.org/Dip. Last accessed March, 2017.
- Schrijver, A. (1998). Theory of linear and integer programming. Hoboken: Wiley.Google Scholar
- Vanderbeck, F. (2017). BaPCod—A generic branch-and-price code. https://wiki.bordeaux.inria.fr/realopt/pmwiki.php/Project/BaPCod. Last accessed March, 2017.
- Vanderbeck, F., & Wolsey, L. (2010). Reformulation and decomposition of integer programs. In M. Jünger, Th M Liebling, D. Naddef, G. L. Nemhauser, W. R. Pulleyblank, G. Reinelt, G. Rinaldi, & L. A. Wolsey (Eds.), 50 years of integer programming 1958–2008. Berlin: Springer.Google Scholar
- Wang, J., & Ralphs, T. (2013). Computational experience with hypergraph-based methods for automatic decomposition in discrete optimization. In C. Gomes & M. Sellmann (Eds.), Integration of AI and OR techniques in constraint programming for combinatorial optimization problems. LNCS 7874 (pp. 394–402).CrossRefGoogle Scholar
- Wolsey, L. (1998). Integer programming. Hoboken: Wiley.Google Scholar