Integer linear programming (ILP) models a wide range of practical combinatorial optimization problems and significantly impacts industry and management sectors. This work proposes new characterizations of ILP with the concept of boundary solutions. Motivated by the new characterizations, we develop a new local search algorithm Local-ILP, which is efficient for solving general ILP validated on a large heterogeneous problem dataset. We propose a new local search framework that switches between three modes, namely Search, Improve, and Restore modes. Two new operators are proposed, namely the tight move and the lift move operators, which are associated with appropriate scoring functions. Different modes apply different operators to realize different search strategies and the algorithm switches between three modes according to the current search state. Putting these together, we develop a local search ILP solver called Local-ILP. Experiments conducted on the MIPLIB dataset show the effectiveness of our algorithm in solving large-scale hard ILP problems. In the aspect of finding a good feasible solution quickly, Local-ILP is competitive and complementary to the state-of-the-art commercial solver Gurobi and significantly outperforms the state-of-the-art non-commercial solver SCIP. Moreover, our algorithm establishes new records for 6 MIPLIB open instances. The theoretical analysis of our algorithm is also presented, which shows our algorithm could avoid visiting unnecessary regions.
翻译:整数线性规划(ILP)广泛应用于各类组合优化实际问题,对工业与管理领域具有重要影响。本文提出基于边界解概念的ILP新表征方法,并据此开发高效求解通用ILP问题的局部搜索算法Local-ILP。我们构建包含搜索、改进、恢复三种模式的局部搜索框架,通过紧密移动与提升移动两种新型算子配合相应评分函数实现不同搜索策略,算法根据当前搜索状态自动切换工作模式。综合上述设计开发的Local-ILP求解器在MIPLIB数据集上的实验表明,该算法能有效求解大规模硬ILP问题。在快速寻找优质可行解方面,Local-ILP与商业求解器Gurobi具有竞争性和互补性,且显著优于非商业求解器SCIP。值得关注的是,本算法刷新了MIPLIB中6个开放实例的求解记录。理论分析证明,该算法能够有效避免探索非必要搜索区域。