调度问题通常规模庞大、错综复杂,在数学上被归类为NP-Hard(非确定性多项式时间困难)问题。 从非数学的角度来看,这些问题是困难计算问题中最难的问题,不存在实用的最优算法。 因此,所有调度解决方案都使用启发式方法,因此没有一个能产生最优解决方案(无论供应商如何建议)。对于这类问题,最好的办法就是找到一个 "好 "的解决方案,它比使用 Excel 或规划板手动生成解决方案更好、更容易获得。 在本白皮书中,我们将简要比较优化和模拟两种解决调度问题的方法。
基于优化的调度工具虽然名为调度工具,但使用的是启发式方法,试图生成一个满足一系列数学约束条件的解决方案,并在关键指标(如迟到作业数量)上提供一些合理的性能。 与其他可能的调度相比,无法保证调度的质量,也无法保证达到可行或良好调度所需的计算时间。这些工具通常首先努力生成一个可行的计划表,然后通过探索可行计划表的变体来改进该计划表,以提高性能指标。 最终答案的质量将受到允许算法搜索更好解决方案的时间的限制。 通常情况下,算法搜索会设定一个时间限制(如一小时),在该搜索时间内找到的最佳解决方案将被用作计划表。
该算法(有时也称为求解器)根据安装软件时配置的生产系统数学模型进行搜索。 该数学模型描述了系统的资源限制,在某些情况下可能包括一些细节,如资源的顺序相关设置时间。 然而,该数学模型的结构有限,无法捕捉到所有限制,例如复杂的物料处理,如 AGV 或多台重叠起重机的移动。即使在数学模型的能力范围内,通常也有必要省略设施的细节(例如与顺序相关的设置时间),以便将搜索算法所需的计算时间控制在可接受的范围内。这样做的问题是,由于调度工具忽略了一些约束条件,因此得出的调度计划在实际系统中往往是不可行的。 由于数学模型的局限性,基于优化的工具最适用于简单直接、很少有复杂约束条件的应用。
SAP 公司的 PP/DS 是最著名的基于优化的调度工具之一。 该工具提供了两种可供选择的求解器,用于生成数学模型的解决方案。 第一种求解器是基于约束条件的编程算法,是在存在大量复杂约束条件时寻找可行解决方案的最佳选择。 不过,这种求解器在寻找良好解决方案方面效果较差。第二种求解器是一种遗传算法,只要存在的约束条件不太多,它就能提供较好的解决方案。 这两种求解器能否在实际搜索时间范围内提供合理的解决方案,取决于数学模型的复杂程度及其与实际系统的近似拟合程度。
求解器通常无法在实际时间内解决问题,因此,PP/DS 还提供了一套简单的启发式算法来生成可行的时间表。 大多数 PP/DS 实现实际上都使用了这些简单的启发式算法,而没有使用现有的两个求解器。
基于仿真的排程方法用设备的仿真模型取代了数学约束条件集。 一些基于仿真的工具(如 Preactor)使用硬编码的设备仿真模型,该模型通过数据库进行配置。 这些工具仅限于数据驱动模型与设备合理匹配的应用。其他基于仿真的工具(如 Simio)既支持数据驱动方法(适用于标准应用),也允许自定义创建设施的底层仿真模型(适用于复杂应用)。 后一种方法在捕捉系统中的详细流程约束方面提供了完全的灵活性,并提高了计划生成过程的透明度。
在基于模拟的工具中,计划是通过模拟工作在设备模型中的流动来生成的。 工作在模拟设备中移动时,会在机器前排队,等待材料、工具和操作员到位后再继续。 工作在模拟设备模型中的移动会以甘特图的形式记录和显示,甘特图显示了每个工作在系统中的流动情况。资源甘特图显示每个作业在系统中每个资源上的加载情况,而作业甘特图则显示每个作业在处理过程中所使用资源的流动情况。 下图是 Simio 仿真调度程序生成的一个简单资源甘特图。 这个甘特图是交互式的,调度程序可以在甘特图上的机器内部和机器之间拖放订单。 这样,调度程序就可以对仿真模型生成的计划进行调整。
除了交互式甘特图,Simio 还能提供详细的报告和交互式仪表盘,总结设备的计划工作流。其中包括有关系统中资源、材料和约束条件的标准报告/仪表盘,以及针对特定应用的自定义报告/仪表盘。计划结果可通过基于云的 Simio 门户网站传播给移动设备上的多个用户。下面显示的是一个交互式仪表板示例,描述了设备中机器的状态和工作列表。
在 Simio 中,还可以通过高保真三维动画查看生成计划的系统工作流(见下图)。 这使得计划生成过程高度透明。 下图描述了基于 Simio 仿真的计划生成动画快照。
通过在模型执行过程中的决策中应用启发式调度规则,可以实现调度的优化。 例如,当机器闲置时,它可能需要选择下一步处理哪个作业。 基于仿真的调度工具通常会提供丰富的规则来进行选择。例如,在流程工业中,可以指定一条规则,最大限度地减少特定工作站上与顺序相关的设置时间/成本。 还可提供其他一些规则,这些规则侧重于其他关键性能指标,如最大限度地减少迟到、最大限度地提高吞吐量或最大限度地减少瓶颈机器上的空闲时间。 针对特定应用性能指标创建自定义规则也很容易。
基于仿真的调度方法的一个关键优势是,当发生破坏性事件(如机器故障)时,可以在几秒或几分钟内生成新的调度计划(而基于优化的工具则需要数小时)。 基于仿真的调度工具的速度明显更快,这使其成为需要经常重新调度的高动态环境中的上佳选择。
基于仿真的方法的另一个关键优势是能够在高保真设施模型中捕捉系统的详细约束条件,从而生成逼真的可执行计划,这些计划可在工厂车间 "按原样 "执行,无需车间操作员进行调整。 当排程工具生成的计划不可行,需要车间进行更改时,操作员可能会做出 "局部 "决策,从而产生非最佳计划。
基于优化的排产方法的一个关键问题是,它要求所有数据都是完全已知和确定的。例如,所有处理时间都必须是固定的,不能有意外事件或延误。不幸的是,这是通过系统的 "快乐路径",由此产生的计划本质上是乐观的,通常与实际设施中发生的情况大相径庭。随着时间的推移,变异和意外事件会导致性能下降,最初可行的计划变为不可行,这种情况很常见。预测计划与实际运行情况之间存在巨大差异是很正常的。为了防止延迟,调度员必须利用额外的时间、库存或能力来缓冲,所有这些都会增加系统成本。 Simio 基于仿真的基于风险的计划和调度(RPS)扩展了传统的调度方法,以充分考虑几乎所有生产系统中都存在的变异,并为调度员提供必要的信息,以便预先降低风险和不确定性。
下载 PDF 版本