A Population-Based Algorithm for Billion-Variable Constrained Integer Linear Programming

Among various complexities affecting the performance of an optimization algorithm, the search space dimension is a major factor. Another key complexity is the discreteness of the search space. When these two complexities are present in a single problem, optimization algorithms have been demonstrated to be inefficient, even in linear programming (LP) problems. In this paper, we consider a specific structure of an integer linear programming (ILP) problem which, although comes from a specific industry, is similar to many other practical resource allocation and assignment problems. Based on a population based optimization approach, we develop a computationally fast method to arrive at a near-optimal solution. Compared to two popular softwares (glpk and CPLEX), which are not able to handle around 300 and 2,000 integer variables while continuing to run for hours, respectively, our proposed method is able to find a near-optimal solution in less than second on the same computer. Moreover, the main highlight of this study is that our method scales in almost a linear computational complexity in handling 50,000 to one billion (10) variables. We believe that this is the first time such a large-sized real-world constrained problem is ever handled using any optimization algorithm. We perform sensitivity studies of our method for different problem parameters and these studies clearly demonstrate the reasons for such a fast and scale-up application of the proposed method.

[1]  Saman Aminbakhsh,et al.  Discrete particle swarm optimization method for the large-scale discrete time-cost trade-off problem , 2016, Expert Syst. Appl..

[2]  Loo Hay Lee,et al.  Efficient multi-fidelity simulation optimization , 2014, Proceedings of the Winter Simulation Conference 2014.

[3]  Chen Lu,et al.  Improved decomposition-coordination and discrete differential dynamic programming for optimization of large-scale hydropower system , 2014 .

[4]  Xiaodong Li,et al.  Cooperative Co-Evolution With Differential Grouping for Large Scale Optimization , 2014, IEEE Transactions on Evolutionary Computation.

[5]  Zhenghong Gao,et al.  Research on multi-fidelity aerodynamic optimization methods , 2013 .

[6]  Bart Selman,et al.  Taming the Curse of Dimensionality: Discrete Integration by Hashing and Optimization , 2013, ICML.

[7]  Sergio Nesmachnow,et al.  Solving Very Large Optimization Problems (Up to One Billion Variables) with a Parallel Evolutionary Algorithm in CPU and GPU , 2012, 2012 Seventh International Conference on P2P, Parallel, Grid, Cloud and Internet Computing.

[8]  Xiaodong Li,et al.  Cooperatively Coevolving Particle Swarms for Large Scale Optimization , 2012, IEEE Transactions on Evolutionary Computation.

[9]  Patrick R. Palmer,et al.  Multi-fidelity simulation modelling in optimization of a submarine propulsion system , 2010, 2010 IEEE Vehicle Power and Propulsion Conference.

[10]  Jun Zhang,et al.  A Novel Set-Based Particle Swarm Optimization Method for Discrete Optimization Problems , 2010, IEEE Transactions on Evolutionary Computation.

[11]  Ailsa H. Land,et al.  An Automatic Method of Solving Discrete Programming Problems , 1960 .

[12]  Hongfeng Xiao,et al.  On Large Scale Evolutionary Optimization Using Simplex-Based Cooperative Coevolution Genetic Algorithm , 2009, 2009 International Conference on Computational Intelligence and Software Engineering.

[13]  Xin Yao,et al.  Large scale evolutionary optimization using cooperative coevolution , 2008, Inf. Sci..

[14]  Xavier Llorà,et al.  Toward routine billion-variable optimization using genetic algorithms , 2007, Complex..

[15]  Min Kong,et al.  Apply the Particle Swarm Optimization to the Multidimensional Knapsack Problem , 2006, ICAISC.

[16]  Kalyanmoy Deb,et al.  Optimization for Engineering Design: Algorithms and Examples , 2004 .

[17]  K. Deb,et al.  Optimal Scheduling of Casting Sequence Using Genetic Algorithms , 2003 .

[18]  K. Deb An Efficient Constraint Handling Method for Genetic Algorithms , 2000 .

[19]  Kalyanmoy Deb,et al.  Understanding Interactions among Genetic Algorithm Parameters , 1998, FOGA.

[20]  Zbigniew Michalewicz,et al.  Heuristic methods for evolutionary computation techniques , 1996, J. Heuristics.

[21]  Mustafa Akgül,et al.  The Linear Assignment Problem , 1992 .

[22]  Paolo Toth,et al.  Knapsack Problems: Algorithms and Computer Implementations , 1990 .

[23]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[24]  J. Mitchell Branch-and-Cut Algorithms for Combinatorial Optimization Problems , 1988 .

[25]  Narendra Karmarkar,et al.  A new polynomial-time algorithm for linear programming , 1984, STOC '84.

[26]  Vipin Kumar,et al.  General Branch and Bound, and its Relation to A and AO , 1984, Artif. Intell..

[27]  James R. Evans,et al.  Heuristic “Optimization”: Why, When, and How to Use It , 1981 .

[28]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[29]  C. M. Reeves,et al.  Function minimization by conjugate gradients , 1964, Comput. J..

[30]  George B. Dantzig,et al.  Linear programming and extensions , 1965 .

[31]  R Bellman,et al.  On the Theory of Dynamic Programming. , 1952, Proceedings of the National Academy of Sciences of the United States of America.