Parallelization of the FICO Xpress-Optimizer
Many optimization problems arising in practice can be modeled as mixed integer programs (MIPs). In this paper, we present the new parallelization concept for the state-of-the-art MIP solver FICO Xpress-Optimizer. A natural precondition to achieving reasonabling speedups from parallelization is maintaining a high workload of the available computational resources. At the same time, reproducibility and reliability are key requirements for mathematical optimization software; solvers like the FICO Xpress-Optimizer are expected to be deterministic. The resulting synchronization latencies render the goal of a satisfying workload a challenge in itself.
We address this challenge by following a partial information approach and separating the concepts of simultaneous tasks and independent threads from each other. Our computational results indicate that this leads to a much higher CPU workload and thereby to an improved scaling on modern high-performance CPUs. As an added value, the solution path that the FICO Xpress-Optimizer takes is not only deterministic in a fixed environment, but, to a certain extent, thread-independent.
KeywordsMathematical optimization Mixed integer programming Parallelization
- 1.Achterberg, T.: Constraint integer programming. Technische Universität Berlin (2007)Google Scholar
- 3.FICO Xpress-Optimizer, Reference Manual. http://www.fico.com/xpress
- 4.Fischetti, M., Lodi, A., Monaci, M., Salvagnin, D., Tramontani, A.: Improving branch-and-cut performance by random sampling. Math. Programm. Comput. 1–20 (2015)Google Scholar
- 6.Huangfu, Q., Hall, J.: Parallelizing the dual revised simplex method. Technical report 1503.01889, ArXiv e-prints (2015)Google Scholar