本文主要是介绍基于SCIP的约束处理器Conshdlr添加惰性约束——以TSP问题为例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 1. TSP案例引入
- 2. 考虑惰性约束的求解效率对比
- 2.1 求解基础TSP模型
- 2.2 基于SCIP的Conshdlr添加惰性约束
1. TSP案例引入
在运筹学建模和求解过程中,“lazy constraints”(惰性约束)是一种动态添加约束的策略,松弛部分约束后求解得到的“可行解”,不断地进行可行性判断,相对于添加过多约束导致模型求解过慢的情况,动态添加约束有时候能够数以百倍地提升求解效率。
我们以经典的TSP问题为例,介绍 pyscipopt
(SCIP) 如何通过 Conshdlr(约束处理器)动态添加约束,并对比设置惰性约束和直接求解包含全量约束的两种方法的效率。给定的 TSP 案例描述如下:
已知,有一个顶点集合 V = { 1
这篇关于基于SCIP的约束处理器Conshdlr添加惰性约束——以TSP问题为例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!