PP/DS 是 SAP 公司提供的一款著名的高级计划应用程序,用于生产计划和排程,是 APO 套件的一部分。SAP 是全球最大的企业(即公司)软件公司,收入接近 130 亿美元。PP/DS 产品大约是在 1999 年推出的,我认为它是基于 i2 技术公司的 Factory Planner 产品,这也是 SAP 在 20 世纪 90 年代末与 i2 公司短暂合作后获得的好处之一。
PP/DS 既提供了成本优化器(很少使用),也提供了生产计划和详细排程启发式方法。初始计划运行和产能平衡都有启发式方法。
Simio 作为仿真领域的先驱已有 15 年之久,其成员在仿真领域拥有丰富的经验,曾为一些非常知名的仿真应用程序工作并开发了重要的知识产权。Simio 是为数不多的为三维仿真提供易于使用的集成开发环境的仿真系统之一,也是为数不多的为生产调度市场提供三维仿真的公司之一。Simio 是一个 "仿真 "环境,同时也是一个计划环境。规划本质上是对未来的模拟或预测。不过,正如我将要讨论的,有几种方法可以与 Simio 进行交互并从中获取信息,使用三维仿真视图只是其中一种方法。
与大多数生产计划和详细排产应用软件一样,PP/DS在离散制造环境中效果最佳。离散制造环境最容易建模。SAP 销售部门在将 PP/DS 推广到不同的制造环境方面非常有效,但除非完全定制,否则在离散制造环境之外,PP/DS 无法成功实施。另一方面,Simio 的行业实施范围要广泛得多。然而,Simio 往往专注于最困难的生产调度问题。
正如我将在本文的概率建模部分所描述的,Simio 特别针对具有高度可变性的生产环境而设计,而直到最近,这些环境类型还没有被打包的应用程序所解决。目前,这些环境当然是可以规划的,但规划时往往需要在电子表格中进行大量的手动操作,或使用现成的通用优化器(如 CPLEX)定制开发优化器。易于计划的生产环境不是 Simio 的目标市场(尽管它也可用于此类环境)。Simio 的原型客户具有非常高的调度复杂性,并且会对延迟调度进行严厉处罚。
PP/DS 有两个基本视图。其一是 "详细排程板"(Detailed Scheduling Board),它是一个标准的甘特图,代表资源,允许作业在资源间移动。第二种是产品视图,显示产品进出设备的情况。实际上,PP/DS 的功能比许多公司实现的功能都要多,PP/DS 通常只提供一小部分功能,原因之一就是应用程序中可用的视图太少。
Simio 令我们印象深刻的一点是它的视图之多。Simio 的 "展示 "视图是三维建模,但除此之外还有很多视图。建模视图也可以随时运行,因此建模人员可以在建模过程中看到材料的流动情况。
Simio 可以在这种 3D 模式下使用,也可以与传统的高级规划系统进行交互。例如,Simio 也有甘特图,但甘特图可以显示任何结果的概率或可能性百分比。每项工作都会显示其结束日期和需求日期,这样调度员就能看到他们为该产品计划的弹性滞后时间。Simio 具有资源视图,可显示资源使用的顺序和时间长度。
报告是 PP/DS 项目的常见需求之一。PP/DS 中的主要报告是 "警报监控器"。它列出了规划人员需要解决的问题。实际上,早在几个版本之前,"警报监控器 "就已经非常完善了。早在 2003 年,我就为 SAP Tips 写过一篇关于如何将 APO Alert Monitor 用作辅助报告系统的文章。不过,在使用过程中的某个阶段,界面发生了变化,现在我已经不再使用它了。
在所有 APO 实施中,无论模块如何,都有必要提供额外的视图。对于汇总或交叉关系视图来说尤其如此。这意味着通常要与 SAP BI 资源合作,在某种模拟应用程序中开发报表设计。我曾多次使用 Excel 来完成这项工作,本文将对此进行介绍。然而,这是一个耗时的过程,我不想再继续经历。其次,在我参与过的任何项目中,商业智能团队都需要花费大量时间来构建报告。很典型的情况是,商业智能报告至少要比项目/系统上线滞后六个月。最后一个问题是,商业智能是 APO 和 PP/DS 的外部系统。这意味着报告的时效性存在滞后,因此报告经常只能反映前一天的信息。
报告是 Simio 的强项。有资源利用率饼图,也有计划生产订单概率的汇总视图。
PP/DS 通常被当作执行基于约束的计划的工具。不过,更准确地说,PP/DS 有能力执行基于约束的计划,但这只有在使用成本优化器的情况下才有效。很多公司都尝试在 PP/DS 中使用成本优化器,但坚持使用的公司很少。应该说,这并不是 PP/DS 特有的问题。许多应用中的优化在实施过程中经常会遇到问题。
在供应链计划企业软件这样一个具有前瞻性的行业中,很少有人去分析为什么会出现这种情况,也很少有人去改进实施方法,甚至在新的实施过程中稍微调整一下策略。因此,大多数优化项目都在重复我在 1998 年首次观察到的错误。那段时间是我第一次接触套装软件中的优化,因此很有可能自供应链规划中首次引入优化以来,一直在犯同样的错误。
经过大量分析,我得出结论,优化失败的一个主要原因是过度应用了单一的优化目标函数,即对每个供应链领域都进行成本优化。本文记录了这一结论,描述了成本优化器在生产环境中运行的诸多限制。
由于绝大多数实施 PP/DS 的公司都不使用优化器(它们要么使用启发式方法,要么不使用任何方法,只是让计划人员手动将作业移动到资源上),因此 PP/DS 实际上应被视为一种无限制的工具。不过,PP/DS 确实有种类繁多的启发式方法,实际上有 50 多种,本文将对这些方法进行介绍。启发式方法种类繁多,其中许多都是针对特定生产环境的(例如,PP/DS 的许多启发式方法都是针对重复性生产的),这可能是 PP/DS 的最大优势。大多数 PP/DS 项目都是由 PP/DS 顾问根据生产流程的特殊要求来确定启发式方法的组合及其顺序。然而,启发式方法并不是一种 "优秀 "的生产计划方法。启发式方法能提供不错的结果,运行速度也很快,但由于实施起来比较简单,所以经常被使用。不过,与 MRP 相比,启发式方法确实提供了更大的灵活性(如果我们将启发式方法与生产计划启发式方法相比较,而不是与 PP/DS 中的排产启发式方法相比较的话)。需要重申的是,绝大多数 PP/DS 实施都不使用成本优化器,也不受约束。我遇到过一些客户,他们认为自己在运行PP/DS启发式计划时是在执行基于约束的计划,这是不对的。
Simio 使用优化模拟,通常使用约束条件。在 Simio 中,数据设置相对简单,这样就能有效更新资源,而这是所有依赖资源的规划系统的共同问题。
在我接触过的所有生产计划和排程工具中,PP/DS 的模型设置是最复杂、最耗时的。PP/DS项目的实施至少需要一年的时间,而大多数PP/DS项目的实施时间都比这长,而且第一次上线并不能正确衡量项目的持续时间,因为很少有PP/DS项目在后期推出之前就能得到计划部门的认可。使用名为 CIF 的 SAP 集成产品,可以从 SAP ERP 中 "自动 "导入一些填充 PP/DS 的数据。然而,正如下一节所述,这并不像听起来那么简单。PP/DS 也有一些数据不存在于 SAP ERP 中,而是保存在 PP/DS 中。维护这些数据的主要方法是使用 SAP APO 中的 MASSD 事务。
Simio 有两个主要方面需要设置。一个是数据,如材料和 BOM。
另一个是实际的模型构建。
PP/DS 实际上只适用于已经实施或正在实施 SAP ERP 的账户。因此,PP/DS 与 SAP ERP 的集成是相关的,而与其他 ERP 系统的集成则无关紧要。PP/DS 是通过 SAP 中间件 CIF 连接到 SAP ERP 的(APO 套件的其他部分也是如此)。 我曾参与过一些团队,在 SAP 和同类最佳应用程序之间建立了比 CIF 更可靠的适配器,其性能和可靠性都优于 CIF,我是通过标准集成语言和 UNIX 以及 ABAP(从 SAP 中提取数据所需的代码)来实现这一点的。通过阅读这篇文章,我们可以了解 CIF 的长期维护问题。由于我不仅接触过定制工具,还接触过 Informatica 等复杂的中间件产品,CIF 一直让我感到困惑。我曾多次撰文表达我对运行 CIF 所需的极高维护量的担忧,而且这种维护量似乎从未像我认为的那样减少过。
在比较 PP/DS 这样的标准打包应用程序和 Simio 这样的建模环境时,有很多事情需要考虑。遗憾的是,有太多的公司在没有考虑其他选择的情况下直接使用打包应用程序。