如何指定您在 PuLP python 中使用的方法?
How to specify which method you use in PuLP python?
我是优化新手,python 如果我的问题的答案很明显,我很抱歉。
我想在 PuLP 中使用 Revised Simplex Method,我在文档中读到有一个选项可以指定求解器使用哪种方法,但我找不到如何操作。
link 到文档:https://pythonhosted.org/PuLP/main/optimisation_concepts.html
使用求解器 COIN-CBC,您可以:
prob.solve(pulp.COIN_CMD(msg=1, options=['primalSimplex']))
或
prob.solve(pulp.COIN_CMD(msg=1, options=['dualSimplex']))
备注:
- 您应该观察到有些不同的迭代次数。
- 对偶单纯形是默认设置。
- 我假设你的意思是 "revised simplex" 原始单纯形法(CBC 没有全画面单纯形法,所以从这个意义上说,CBC 中的所有单纯形法都是 "revised")。
- 可以用
options=['barrier']
选择内点法。
- 对于大型 LP,尝试这三种方法可能是有意义的。我不确定这些选项对 MIP 模型有什么作用(在这种情况下最好相信 LP 默认值)
我是优化新手,python 如果我的问题的答案很明显,我很抱歉。
我想在 PuLP 中使用 Revised Simplex Method,我在文档中读到有一个选项可以指定求解器使用哪种方法,但我找不到如何操作。
link 到文档:https://pythonhosted.org/PuLP/main/optimisation_concepts.html
使用求解器 COIN-CBC,您可以:
prob.solve(pulp.COIN_CMD(msg=1, options=['primalSimplex']))
或
prob.solve(pulp.COIN_CMD(msg=1, options=['dualSimplex']))
备注:
- 您应该观察到有些不同的迭代次数。
- 对偶单纯形是默认设置。
- 我假设你的意思是 "revised simplex" 原始单纯形法(CBC 没有全画面单纯形法,所以从这个意义上说,CBC 中的所有单纯形法都是 "revised")。
- 可以用
options=['barrier']
选择内点法。 - 对于大型 LP,尝试这三种方法可能是有意义的。我不确定这些选项对 MIP 模型有什么作用(在这种情况下最好相信 LP 默认值)