商业咨询公司NFP的仿真专家,特别是AnyLogic方面的专家致力于解决一家大型国际冶金公司的起重机任务分配问题。他们采用了机器学习的创新解决方案,并改进了专家选择的策略。继续阅读以了解有关该项目的更多信息。
01
概述
在NFP,我们的仿真建模专家与许多使用AnyLogic分析、研究及改进其流程的制造和采矿行业公司进行合作。其中一些公司更进一步的将仿真模型与其IT系统集成,并用于生产调度和计划。我们在该领域工作的最新示例是为一家煤炭开采公司提供的一个仿真模型,该模型有助于火车和有轨电车之间的任务分配。
通常,有三种方法可以处理此类模型的输出:
手动方法–由模型用户完成计划,他们在测试各种假设场景并分析模型输出的同时,还要考虑到模型的限制;
算法方法–复杂的计划算法使用大量if-else语句在资源之间分配任务;
优化器方法–一种优化器(通常是定制的,例如,AnyLogic内置的OptQuest),可以改变不同的输入并为它们找到最佳组合。
这些建模方法可以产生很好的结果,但有时需要花费大量时间来进行校准,并且通常对可用计算能力是有要求的,特别是使用优化器方法时。
还有另一种方式:人工智能,尤其是机器学习算法,可以比上述任何一种方法都更有效、更灵活地在资源之间分配任务。AnyLogic是开发具有AI和机器学习功能解决方案的最佳平台之一。AnyLogic支持Java库,并且AnyLogic云平台还提供了对Python库的RESTful API访问。
02
案例研究

一家大型国际冶金公司与我们签订了多阶段项目合同。第一阶段需要:
开发高碳铬铁工厂的“原样”模型;
测试一系列潜在方案,包括投资计划、生产流程的变更、存储区域的变更等;
找到一种更有效地分配梁式起重机任务的方法:最低目标是了解工厂内不同操作的最佳优先级。
我们使用仿真建模项目中常用的各种经典建模方法完成了模型开发、验证和校准以及许多场景测试任务。
在第二阶段中,需要找到一种在梁式起重机之间动态分配任务的方法,同时这种方法需要考虑制造工厂当前的内部状况。系统应准备就绪,可以进行业务部署。
为了实现这一目标,我们:
为AnyLogic开发了NFP机器学习连接器,以帮助将外部机器学习库(例如Weka,DL4J等)连接到AnyLogic模型。
针对来自不同情况和具有不同结果(正负)的足够大量数据训练了ML算法,并构建了ML模型;
创建了一种方法,可在起重机进行操作(操作是指任何起重机的任务)之前的每一刻收集数据;
使用适用于AnyLogic的NFP机器学习连接器(我们的定制开发库,有助于将外部机器学习库连接到AnyLogic模型)在模型内部署经过训练的ML算法。
我们还将NFP Multiple Crane库用于AnyLogic。该库考虑了其他起重机的位置所引起的x轴移动限制,可帮助处理多梁起重机的工作。NFP网站上提供了用于AnyLogic的NFP库。
https://nfp2b.com/simulation-modeling
数字表明,与专家定义的策略相比,将机器学习算法与AnyLogic仿真建模相结合有助于将多台起重机的效率提高70%。
我们现在正准备与客户一起扩展此模型并将其部署到实际操作中。这需要有关起重机、铲斗、渣盘、箱等的当前位置以及炉、灌装机和炉渣运输机等机械状态的良好的实时数据。
您可以找到这项工作的演示模型,它显示了专家定义的策略和机器学习策略之间的有效性差异。欢迎通过AnyLogic云查看模型:
https://cloud.anylogic.com/model/30f90225-a0c2-41aa-bc6c-254b5c167901?mode=SETTINGS