如何在使用Python的线性编程中查找变量的可能值范围?

古斯塔夫·科斯特(Gustave Coste)

我有一些变量和线性约束定义的线性问题,我想知道每个变量的可能值间隔。

例如,对于变量abc和约束a>bb>c并且a+b+c=100,我们有:

a in [33.33-100] b in [0-50] c in [0-33.33]

目前,我的解决方案是使用Pulp的线性编程求解器,并将每个变量设置为优化函数,以使其最大化,具有上限,然后最小化以具有其下限。

这使我每个变量重复求解步骤两次,这可能不是最佳选择。

有人知道专门用于查找线性编程变量可能的求解区间的工具吗?

萨沙

这是一个非常常见的主题,通常称为bounds-tightening,在以下方面非常重要:

  • 静态预求解
  • 全局优化中的迭代使用

您描述的算法通常称为基于优化的限制范围,并且还不错。您所遇到的问题是,纸浆不允许您采取更多的低级措施,并且使用热启动不需要每次运行都进行全部迭代。

Gleixner, Ambros M., et al. "Three enhancements for optimization-based bound tightening." Journal of Global Optimization 67.4 (2017): 731-757. 例如开始于:

基于优化的约束拧紧(OBBT)是减少非凸混合整数非线性程序(MINLP)可变域的最有效方法之一。同时,它是最昂贵的约束拧紧程序之一,因为它可以解决辅助线性程序(LP),其数量最多是许多变量的两倍。本文的主要目的是讨论有效实现OBBT的算法技术。

有非LP技术(例如区间算术)替代方案,例如基于可行性的边界收紧

参见例如:

  • Belotti, Pietro, et al. "Feasibility-based bounds tightening via fixed points." International Conference on Combinatorial Optimization and Applications. Springer, Berlin, Heidelberg, 2010.

您知道一些现在要搜索的关键字。也许以下是一个好的开始(虽然没有读过):

  • Puranik, Yash, and Nikolaos V. Sahinidis. "Domain reduction techniques for global NLP and MINLP optimization." Constraints 22.3 (2017): 338-376.

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在python中查找特定键的值

来自分类Dev

如何在angularjs中设置范围变量的默认值

来自分类Dev

如何更新数组范围变量中的值?

来自分类Dev

Python如何在字典中查找重复值

来自分类Dev

如何在列表Python中查找重复值

来自分类Dev

如何在PowerShell中查找变量并使用结果进行匹配?

来自分类Dev

如何在python中查找缺失值位置?

来自分类Dev

如何使用LpSolve在R中设置线性编程优化?

来自分类Dev

如何在python中的json中替换变量的值?

来自分类Dev

如何在Python中查找不属于示例的值?

来自分类Dev

如何在Python DataFrame列中查找值?

来自分类Dev

如何在Cypress中在.then()范围外使用var的值?

来自分类Dev

如何在Python的不同列中查找值的出现?

来自分类Dev

如何在Python上使用PuLP GLPK为混合整数线性编程(MILP)的决策变量编写IF条件?

来自分类Dev

如何在python熊猫中的数据框的列中查找整数范围内的值数

来自分类Dev

如何在Python Pandas的列中显示重复值的范围?

来自分类Dev

如何在嵌套列表Python中查找接近数字的值

来自分类Dev

使用python进行线性编程

来自分类Dev

如何在InDesign GREP中使用JavaScript将$ 2的值存储到变量中查找/更改

来自分类Dev

如何在Python的进程中查找多级指针的值?

来自分类Dev

如何在PowerShell中查找变量并使用结果进行匹配?

来自分类Dev

如何在Excel中查找数字范围(使用文本输入)

来自分类Dev

如何在python中的给定范围内循环变量

来自分类Dev

如何在python中查找前n个质数?无法遵循变量的范围?

来自分类Dev

在Python中线性回归失败,因变量中的值较大

来自分类Dev

如何在jQuery中访问范围变量的立即值

来自分类Dev

Python:如何在numpy数组中查找数字的值?

来自分类Dev

如何在Python 2.7中让变量的值成为方法,并让方法使用该变量?

来自分类Dev

如何在 python 中修改 Python 变量的值(如引用)

Related 相关文章

  1. 1

    如何在python中查找特定键的值

  2. 2

    如何在angularjs中设置范围变量的默认值

  3. 3

    如何更新数组范围变量中的值?

  4. 4

    Python如何在字典中查找重复值

  5. 5

    如何在列表Python中查找重复值

  6. 6

    如何在PowerShell中查找变量并使用结果进行匹配?

  7. 7

    如何在python中查找缺失值位置?

  8. 8

    如何使用LpSolve在R中设置线性编程优化?

  9. 9

    如何在python中的json中替换变量的值?

  10. 10

    如何在Python中查找不属于示例的值?

  11. 11

    如何在Python DataFrame列中查找值?

  12. 12

    如何在Cypress中在.then()范围外使用var的值?

  13. 13

    如何在Python的不同列中查找值的出现?

  14. 14

    如何在Python上使用PuLP GLPK为混合整数线性编程(MILP)的决策变量编写IF条件?

  15. 15

    如何在python熊猫中的数据框的列中查找整数范围内的值数

  16. 16

    如何在Python Pandas的列中显示重复值的范围?

  17. 17

    如何在嵌套列表Python中查找接近数字的值

  18. 18

    使用python进行线性编程

  19. 19

    如何在InDesign GREP中使用JavaScript将$ 2的值存储到变量中查找/更改

  20. 20

    如何在Python的进程中查找多级指针的值?

  21. 21

    如何在PowerShell中查找变量并使用结果进行匹配?

  22. 22

    如何在Excel中查找数字范围(使用文本输入)

  23. 23

    如何在python中的给定范围内循环变量

  24. 24

    如何在python中查找前n个质数?无法遵循变量的范围?

  25. 25

    在Python中线性回归失败,因变量中的值较大

  26. 26

    如何在jQuery中访问范围变量的立即值

  27. 27

    Python:如何在numpy数组中查找数字的值?

  28. 28

    如何在Python 2.7中让变量的值成为方法,并让方法使用该变量?

  29. 29

    如何在 python 中修改 Python 变量的值(如引用)

热门标签

归档