Python 如何使用不同变量的不同边界使scipy.optimize.linprog更快?

Python 如何使用不同变量的不同边界使scipy.optimize.linprog更快?,python,optimization,scipy,linear-programming,Python,Optimization,Scipy,Linear Programming,我正在尝试使用pythons scipy.optimize.linprog来优化我的模型。我有大约10k个变量(x)。我尝试了两种不同的方法来设置这些x的边界 方法1:我对所有的x都有相同的界。使用此选项,解算器似乎运行得相对较快 方法2:我为不同的x设置了不同的边界,但大多数都是(0,0)。解决这个问题需要更长的时间,大约30-45分钟 我想知道是否有什么办法可以让它跑得更快 如果我有一个变量席As(0,0)的边界,但它的对应值在A中有一个非零值,那是OK,还是我需要将相应的值设置为0?我强烈

我正在尝试使用pythons scipy.optimize.linprog来优化我的模型。我有大约10k个变量(x)。我尝试了两种不同的方法来设置这些x的边界

方法1:我对所有的x都有相同的界。使用此选项,解算器似乎运行得相对较快

方法2:我为不同的x设置了不同的边界,但大多数都是(0,0)。解决这个问题需要更长的时间,大约30-45分钟

我想知道是否有什么办法可以让它跑得更快


如果我有一个变量席As(0,0)的边界,但它的对应值在A中有一个非零值,那是OK,还是我需要将相应的值设置为0?

我强烈推荐使用像CBC或Co这样的一个不同的求解器,支持它的一个LIB是纸浆。由于您的两种方法是不同的优化问题,因此没有有效的比较,也没有可能的实际帮助。我们不知道你在做什么。我也不明白最后一部分。谢谢你的回复。我要尝尝果肉。在最后一部分中,我想知道变量x1的边界是否为(0,0),但矩阵中x1的值是否为非零,这是否会产生差异。我应该将相应的x1值设为0吗?听起来你缺少一些基础知识。变量边界是对变量的影响,变量中的条目是约束。你的问题没有多大意义。A中的不同条目描述了不同的约束。感谢您提出的使用纸浆的建议。它比scipy.optimize.linprog相对更快(x3)。