Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Optimization 如何决定何时使用线性规划?_Optimization_Linear Programming - Fatal编程技术网

Optimization 如何决定何时使用线性规划?

Optimization 如何决定何时使用线性规划?,optimization,linear-programming,Optimization,Linear Programming,当我研究优化问题时,我看到了很多选择。一种是线性规划。我抽象地理解LP是如何工作的,但我发现很难看出某个特定问题是否适合LP。是否有任何启发法可以帮助指导这一决策 例如,中描述的工作花了数周时间才了解如何正确地构造问题。有没有可能“提前”知道LP可以解决这个问题,而不先看“如何表述”呢 是否有检查表可用于确定问题是否适合LP?本主题是否有标准的(可读的)参考资料?启发法(和/或检查表)用于确定手头的问题是否真的是一个线性规划。 这是我试图回答的问题,我也试着概述我将如何解决这个问题 表明给定问题

当我研究优化问题时,我看到了很多选择。一种是线性规划。我抽象地理解LP是如何工作的,但我发现很难看出某个特定问题是否适合LP。是否有任何启发法可以帮助指导这一决策

例如,中描述的工作花了数周时间才了解如何正确地构造问题。有没有可能“提前”知道LP可以解决这个问题,而不先看“如何表述”呢

是否有检查表可用于确定问题是否适合LP?本主题是否有标准的(可读的)参考资料?

启发法(和/或检查表)用于确定手头的问题是否真的是一个线性规划。

这是我试图回答的问题,我也试着概述我将如何解决这个问题

表明给定问题适合表述为LP/IP的问题:

  • 是否需要在不同的时间间隔定期做出决定
  • 是否有许多资源(工人、机器、车辆)需要分配任务?(小时、工作、目的地)
  • 这是否是一个路由问题,需要访问不同的“点”
  • 这是位置问题还是“布局”问题?(整类下料问题属于这一类)
  • 对这些问题回答“是”意味着LP公式可能有效

    常见的LP包括:资源分配(分配、运输、转运、背包)、投资组合分配、作业调度和网络流问题。 适用于LPs或IPs新手。 也就是说,实际上有1000种不同类型的问题可以表述为LP/IP。与我共事的人(研究人员、同事)发展出一种直觉。他们善于识别问题是某一类型的整数程序,即使他们不记得细节,然后可以查找

    为什么这个问题很难回答: 有很多原因,为什么不总是直接知道LP公式是否会削减它

  • 在建模/公式化的方法中有很多“艺术”(主观性)
  • 经验帮助很大。人们很容易认识到这个问题可以“类比”到另一个已知的公式
  • 即使问题不是直接的LP,也有许多聪明的主从技术(子问题)或嵌套技术使整个公式工作
  • 看起来像是多个目标的东西可以组合成一个目标函数,并附加一组适当的权重
  • 经验丰富的建模者采用分解和约束松弛技术,并在以后对其进行补偿
  • 如何继续完成基本配方?

    以下几点总是引导我朝着正确的方向前进。我通常从列出决策变量、约束和目标函数开始。然后,我通常会在这三者之间迭代,以确保所有内容都“适合”

    因此,如果你手头有问题,问问自己:

    • 什么是决策变量(DV)?我发现这总是一个开始制定过程的好地方。有多少种类型的DV?(哪个资源获得哪个任务,何时启动?)
    • 约束条件是什么?
      有些限制很容易看到。其他人则会挑逗一下。必须根据您的决策变量以及施加的任何常量/限制来编写约束
    • 目标函数是什么?
      需要最大化或最小化的数量是什么?注:有时不清楚目标函数是什么。这没关系,因为这很可能是一个约束满足问题
    一旦您认为您的LP配方已经完成,请进行两次快速的健全性检查

  • 我总是试着看一个简单的解决方案(都是0还是都是大的) 数字)不是解决方案集的一部分。如果是,则 这个公式很可能是不正确的。一些限制是 失踪
  • 确保每个约束都与“相关” 决策变量。(我偶尔会发现一些限制 这意味着“簿记约束” 已经错过了。)
  • 根据我的经验,坚持这样做的人几乎总是能培养出所需的直觉。希望这有帮助