制造业 Multi-Agent 典型案例拆解:如何实现生产流程智能化升级?
制造业 Multi-Agent 典型案例拆解:如何实现生产流程智能化升级?
开篇故事:从“救火队车间”到“灯塔工厂预备役”
各位制造业的同行、AI应用的探索者们,大家好!我是你们的老朋友,在软件架构和工业数字化领域摸爬滚打16年的「架构狮老王」。
上周三,我受邀去了长三角一家做高端汽车变速箱齿轮的民营企业浙江恒立精密机械有限公司(以下简称「恒立精密」,为保护隐私做化名处理)参观。刚进门,就被车间的景象惊到了——三年前我第一次来这儿时,这还是个典型的“传统离散制造车间”:
- 车间主任老王(和我重名,我们都叫他「车间老王」)腰间别着3个对讲机,24小时开机救火:一会儿是磨床23号卡刀停机,一会儿是热处理炉7号温度波动±5℃超差报废300个齿轮毛坯,一会儿是AGV物流车找不到托盘卡在焊接区门口……
- 调度员小李每天早上7点半到岗,要对着Excel表排12小时的产线计划,还得应付临时插单、设备故障带来的计划变更——变更一次,小李要重新算物料、调产能、跟物流对接,至少得耗45分钟,还经常顾此失彼。
- 质检环节全靠20个质检员用卡尺、三坐标仪抽检,抽检率只有5%,漏检率却高达2.1%,每月因漏检流向主机厂的不合格品要赔300多万元。
但这次呢?车间老王的对讲机换成了一块智能手表,屏幕上只有几条“通知栏弹窗”,看起来很清闲;调度员小李的工位上摆着一块55寸的产线调度大屏,产线计划自动生成,临时插单只需要输入主机厂要求的交期和数量,系统10秒钟就能给出优化后的排程、物料需求和AGV路径;质检环节只有5个“巡检员”,抽检率却变成了100%——磨床、车床、热处理炉、装配线的摄像头和传感器实时采集数据,AI质检Agent自动识别表面划痕、内孔同心度偏差、渗碳层厚度不足等缺陷,漏检率降到了0.02%!
车间老王笑着跟我说:“上个月我们的OEE(设备综合效率)从三年前的62%升到了89%,准时交付率从78%升到了99.7%,次品率从3.2%降到了0.3%,主机厂已经给我们发了‘灯塔工厂预备役’的邀请函!这一切的变化,全靠我们去年上线的这套恒立精密Multi-Agent生产协同系统!”
听了车间老王的话,我当天下午就拉着恒立精密的CTO张工聊了3个多小时,又拿到了他们的系统源码、架构图和测试数据——今天这篇10000字左右的文章,我就带着大家从核心概念、问题背景、数学模型、算法原理、源代码实现、实际应用、工具推荐、未来趋势这8个维度,把恒立精密这套Multi-Agent系统完完整整、彻彻底底地拆解一遍!
第一章 核心概念:什么是制造业的Multi-Agent?
1.1 核心概念定义
首先,我们得明确两个最基础的定义:Agent和Multi-Agent System(MAS,多智能体系统)。
1.1.1 什么是Agent?
Agent这个词起源于拉丁语“Agere”,意思是“行动者”。在人工智能和计算机科学领域,Agent的定义有很多种,但最权威、最被广泛接受的定义是由Wooldridge和Jennings在1995年提出的“弱Agent”和“强Agent”概念:
弱Agent(Weak Agent):是一个具有以下4个核心属性的软件/硬件实体:
- 自主性(Autonomy):能够在没有人类或其他Agent直接干预的情况下,自主地控制自身的行为和内部状态。
- 反应性(Reactivity):能够感知周围的环境(包括物理环境、网络环境、其他Agent的行为等),并对环境的变化做出及时的、合理的响应。
- 主动性(Proactivity):不仅仅是被动地响应环境变化,还能够主动地设定目标,并制定、执行计划来实现这些目标。
- 社交性(Sociality):能够与其他Agent(或人类)进行交互、协作或竞争,以完成共同的任务或实现各自的目标。
强Agent(Strong Agent):除了具备弱Agent的4个核心属性之外,还具备认知能力(Cognitive Ability),比如学习、推理、记忆、情感等——强Agent更像是一个“类人智能体”,但目前在工业场景中应用的几乎都是弱Agent。
1.1.2 什么是制造业的Multi-Agent System(MAS)?
制造业的Multi-Agent System,是指将离散制造车间中的物理实体(设备、AGV、托盘、刀具、质检员、工人等)和虚拟实体(ERP系统、MES系统、WMS系统、APS系统、质检系统等)抽象成不同类型的Agent,通过Agent之间的自主交互、协作和竞争,实现生产流程的智能化、柔性化、自适应化管理的系统。
简单来说,制造业的MAS就是把车间变成一个“小型社会”——每个设备、每个AGV、每个质检员都是这个社会中的“公民”(Agent),他们有自己的“权利”(自主性)、“义务”(任务目标)、“感知能力”(传感器)和“沟通能力”(通信协议),不需要“车间主任/调度员”这个“中央政府”的全程指挥,就能自己协调处理生产过程中的各种问题!
1.2 问题背景:传统制造业生产管理模式面临的“四大痛点”
刚才开篇故事里提到的恒立精密三年前的问题,其实不是个例——全球90%以上的离散制造企业,都面临着传统生产管理模式带来的“四大痛点”!
1.2.1 痛点一:中央调度“力不从心”——生产计划与执行严重脱节
传统离散制造企业的生产管理模式,几乎都是**“中央集权式”**的:
- 计划层(ERP/MES/APS):在云端或本地服务器上,根据历史数据、销售订单、库存数据等,生成“静态的、全局的”生产计划;
- 执行层(车间现场):工人、设备、AGV等按照计划层生成的计划执行生产任务。
但这种模式在离散制造车间里,有一个致命的缺陷——离散制造车间的环境是高度动态、高度不确定的:
- 设备可能会突然故障;
- 物料可能会延迟到货;
- 主机厂可能会临时插单或变更订单;
- 工人可能会请假或操作失误;
- 物流车可能会找不到托盘或堵车……
这些“不确定因素”,会让计划层生成的“静态计划”在执行层“寸步难行”——据统计,传统离散制造企业的生产计划执行率,平均只有30%左右!而一旦计划出现问题,调度员就需要“救火式”地重新排程,但重新排程不仅耗时耗力,还经常顾此失彼,导致生产效率进一步下降!
1.2.2 痛点二:设备“各自为政”——OEE(设备综合效率)低下
传统离散制造车间里的设备,几乎都是**“信息孤岛”**:
- 设备之间没有直接的通信;
- 设备的运行数据(转速、温度、振动、负载等)只能通过人工采集或简单的PLC模块上传到MES系统,但上传频率很低(一般是1分钟/次或更长);
- 设备的维护保养几乎都是“事后维护”(故障了才修)或“定期维护”(不管有没有问题,到时间就修)——事后维护会导致停机时间长,定期维护会导致维护成本高。
这些“信息孤岛”问题,会导致设备的OEE(设备综合效率)低下——据统计,全球离散制造企业的平均OEE只有60%左右,而灯塔工厂的平均OEE却超过了85%!
1.2.3 痛点三:质检“效率低、成本高、漏检率高”——产品质量难以保证
传统离散制造车间的质检环节,几乎都是**“人工抽检”**:
- 效率低:20个质检员每天只能抽检5%左右的产品;
- 成本高:20个质检员的年薪加起来至少要200万元;
- 漏检率高:人工抽检的漏检率平均在2%左右,流向主机厂的不合格品会导致企业面临巨额赔偿和声誉损失。
1.2.4 痛点四:柔性化生产“能力弱”——难以应对多品种、小批量的市场需求
随着消费升级,市场需求已经从“少品种、大批量”转变为“多品种、小批量、定制化”——据统计,全球离散制造企业的多品种、小批量订单占比,已经从2010年的30%左右升到了2023年的70%左右!
但传统的“中央集权式”生产管理模式和“刚性生产线”,柔性化生产能力非常弱——一条生产线可能只能生产一种或几种产品,更换产品的换型时间可能需要几个小时甚至几天,这导致企业难以快速响应市场需求的变化!
1.3 问题解决:为什么Multi-Agent System能解决传统制造业的“四大痛点”?
刚才我们提到了制造业的MAS的定义——把车间变成一个“小型社会”,每个Agent都是“公民”,自主交互、协作和竞争。那么,这种模式为什么能解决传统制造业的“四大痛点”呢?
1.3.3 解决痛点一:中央调度“力不从心”——“分布式决策+全局优化”相结合
制造业的MAS采用的是**“分布式决策+全局优化”相结合的决策模式**:
- 分布式决策:每个Agent都有自己的“决策模块”,能够自主地处理生产过程中的局部问题(比如设备故障时,设备Agent可以自主地向备用设备Agent发送协作请求,或者向调度Agent发送重新排程的请求)——这种模式可以大大提高决策的效率,因为不需要所有的问题都上报到中央调度系统处理;
- 全局优化:除了分布式决策之外,MAS中还有一个“全局优化Agent”,能够定期地(比如每15分钟/次)收集所有Agent的状态信息,对生产计划进行“微调”——这种模式可以保证整个生产系统的全局最优,而不是每个Agent的局部最优。
1.3.2 解决痛点二:设备“各自为政”——“设备互联互通+预测性维护”相结合
制造业的MAS可以通过工业物联网(IIoT)技术,实现设备之间的“互联互通”——设备的运行数据可以实时地(比如10毫秒/次)上传到设备Agent,设备Agent之间可以直接通信,协调生产任务;同时,设备Agent还可以通过机器学习(ML)技术,对设备的运行数据进行分析,预测设备的故障时间,实现“预测性维护”——这种模式可以大大提高设备的OEE!
1.3.3 解决痛点三:质检“效率低、成本高、漏检率高”——“AI质检Agent+100%全检”相结合
制造业的MAS可以通过计算机视觉(CV)技术和传感器技术,实现质检环节的“100%全检”——磨床、车床、热处理炉、装配线的摄像头和传感器实时采集数据,AI质检Agent自动识别表面划痕、内孔同心度偏差、渗碳层厚度不足等缺陷,效率高、成本低、漏检率低!
1.3.4 解决痛点四:柔性化生产“能力弱”——“柔性生产线+Agent动态重组”相结合
制造业的MAS可以通过柔性生产线技术和Agent动态重组技术,实现柔性化生产——一条柔性生产线可以生产几十种甚至上百种产品,更换产品的换型时间只需要几分钟;同时,当生产任务发生变化时,MAS可以动态地重组Agent(比如从备用设备池中调出设备Agent,或者从物流池中调出AGV Agent),快速响应市场需求的变化!
1.4 边界与外延:制造业MAS的“适用范围”和“不适用范围”
1.4.1 适用范围
制造业的MAS最适合应用于离散制造行业,尤其是:
- 多品种、小批量、定制化的离散制造行业:比如汽车零部件制造、航空航天零部件制造、医疗器械制造、电子设备制造等;
- 生产环境高度动态、高度不确定的离散制造行业:比如家具制造、服装制造、玩具制造等;
- 需要高度柔性化生产的离散制造行业:比如3D打印、机器人制造等。
1.4.2 不适用范围
制造业的MAS不适合应用于流程制造行业(比如石油化工、钢铁冶炼、水泥制造、制药等)——因为流程制造行业的生产流程是“连续的、固定的、刚性的”,生产环境的动态性和不确定性相对较低,“中央集权式”的生产管理模式更适合!
1.5 概念结构与核心要素组成:制造业MAS的“三层架构”和“六大核心Agent类型”
1.5.1 三层架构
制造业的MAS一般采用**“三层分布式架构”**:
- 资源层(Resource Layer):包括离散制造车间中的所有物理资源(设备、AGV、托盘、刀具、原材料、半成品、成品、工人、质检员等)和虚拟资源(ERP系统、MES系统、WMS系统、APS系统、质检系统、数据库系统、云计算平台等)——这一层是MAS的“基础层”;
- Agent层(Agent Layer):将资源层的所有资源抽象成不同类型的Agent——这一层是MAS的“核心层”;
- 应用层(Application Layer):为用户(车间主任、调度员、质检员、工人、主机厂、供应商等)提供各种应用服务(比如生产计划管理、设备管理、物料管理、物流管理、质量管理、数据分析等)——这一层是MAS的“入口层”。
下面是制造业MAS三层架构的文本示意图:
┌─────────────────────────────────────────────────────────────────────────────────┐
│ 应用层(Application Layer) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 生产计划管理 │ │ 设备管理 │ │ 物料管理 │ │ 物流管理 │ │ 质量管理 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 数据分析 │ │ 主机厂接口 │ │ 供应商接口 │ │ 车间主任APP │ │ 工人APP │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────────────────────────────┘
↓↑(通信协议:MQTT/Kafka/RESTful API)
┌─────────────────────────────────────────────────────────────────────────────────┐
│ Agent层(Agent Layer) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 订单Agent │ │ 调度Agent │ │ 设备Agent │ │ AGV Agent │ │ 质检Agent │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 物料Agent │ │ 托盘Agent │ │ 刀具Agent │ │ 全局优化Agent │ │ 协调Agent │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────────────────────────────┘
↓↑(通信协议:OPC UA/Modbus TCP/MQTT)
┌─────────────────────────────────────────────────────────────────────────────────┐
│ 资源层(Resource Layer) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ ERP系统 │ │ MES系统 │ │ WMS系统 │ │ APS系统 │ │ 质检系统 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 磨床 │ │ 车床 │ │ 铣床 │ │ 热处理炉 │ │ 装配线 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ AGV物流车 │ │ 托盘 │ │ 刀具 │ │ 原材料 │ │ 半成品/成品 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 工人 │ │ 质检员 │ │ 摄像头 │ │ 传感器 │ │ PLC模块 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────────────────────────────┘
下面是制造业MAS三层架构的Mermaid架构图:
1.5.2 六大核心Agent类型
制造业的MAS中有很多不同类型的Agent,但最核心、最常用的有6种:
1.5.2.1 订单Agent(Order Agent)
订单Agent是MAS的“入口Agent”,负责从主机厂接口或ERP系统中接收销售订单,将销售订单分解成“生产任务单”(包括产品型号、数量、交期、工艺路线等信息),并将生产任务单发送给调度Agent。
订单Agent的核心属性:
- 自主性:能够自主地接收销售订单,分解生产任务单;
- 反应性:能够感知主机厂的订单变更请求(比如临时插单、变更交期、变更数量等),并及时地将变更后的生产任务单发送给调度Agent;
- 主动性:能够主动地跟踪生产任务单的执行进度,并将执行进度反馈给主机厂或车间主任;
- 社交性:能够与主机厂接口、ERP系统、调度Agent、全局优化Agent进行交互。
1.5.2.2 调度Agent(Scheduling Agent)
调度Agent是MAS的“核心决策Agent之一”,负责接收订单Agent发送的生产任务单,根据设备Agent、AGV Agent、物料Agent、托盘Agent、刀具Agent的状态信息,生成“局部的、动态的”生产调度计划,并将生产调度计划发送给相关的Agent执行。
调度Agent的核心属性:
- 自主性:能够自主地生成生产调度计划;
- 反应性:能够感知设备故障、物料延迟、AGV堵车等环境变化,并及时地调整生产调度计划;
- 主动性:能够主动地向备用设备Agent、备用AGV Agent发送协作请求,以应对环境变化;
- 社交性:能够与订单Agent、设备Agent、AGV Agent、物料Agent、托盘Agent、刀具Agent、全局优化Agent、协调Agent进行交互。
1.5.2.3 设备Agent(Equipment Agent)
设备Agent是MAS的“基础执行Agent之一”,负责控制加工设备(磨床、车床、铣床、热处理炉、装配线等)的运行,采集设备的运行数据(转速、温度、振动、负载等),预测设备的故障时间,并将设备的状态信息(运行中、空闲中、故障中、维护中)发送给调度Agent。
设备Agent的核心属性:
- 自主性:能够自主地控制设备的运行,采集设备的运行数据;
- 反应性:能够感知调度Agent发送的生产任务,设备的故障信号,以及刀具Agent发送的刀具磨损信号,并及时地做出响应;
- 主动性:能够主动地向刀具Agent发送刀具更换请求,向维护Agent发送维护请求,向调度Agent发送状态更新请求;
- 社交性:能够与调度Agent、刀具Agent、维护Agent、物料Agent、托盘Agent、全局优化Agent进行交互。
1.5.2.4 AGV Agent(AGV Agent)
AGV Agent是MAS的“基础执行Agent之一”,负责控制AGV物流车的运行,规划AGV的路径,采集AGV的运行数据(位置、速度、电量、负载等),并将AGV的状态信息(运行中、空闲中、充电中、故障中)发送给调度Agent。
AGV Agent的核心属性:
- 自主性:能够自主地控制AGV的运行,规划AGV的路径;
- 反应性:能够感知调度Agent发送的物流任务,AGV的故障信号,以及其他AGV Agent发送的路径冲突信号,并及时地做出响应;
- 主动性:能够主动地向充电Agent发送充电请求,向调度Agent发送状态更新请求;
- 社交性:能够与调度Agent、托盘Agent、物料Agent、其他AGV Agent、充电Agent、全局优化Agent进行交互。
1.5.2.5 质检Agent(Quality Agent)
质检Agent是MAS的“质量控制Agent”,负责接收摄像头和传感器采集的产品数据,利用计算机视觉技术和机器学习技术,自动识别产品的缺陷(表面划痕、内孔同心度偏差、渗碳层厚度不足等),将产品的质检结果(合格、不合格、待复检)发送给调度Agent和全局优化Agent,并将不合格品的信息发送给维护Agent(如果是设备故障导致的)或工艺工程师(如果是工艺问题导致的)。
质检Agent的核心属性:
- 自主性:能够自主地接收产品数据,识别产品的缺陷;
- 反应性:能够感知调度Agent发送的质检任务,以及产品数据的变化,并及时地做出响应;
- 主动性:能够主动地向维护Agent或工艺工程师发送缺陷分析报告,向调度Agent发送状态更新请求;
- 社交性:能够与调度Agent、设备Agent、维护Agent、全局优化Agent、工艺工程师进行交互。
1.5.2.6 全局优化Agent(Global Optimization Agent)
全局优化Agent是MAS的“核心决策Agent之一”,负责定期地(比如每15分钟/次)收集所有Agent的状态信息,对生产计划进行“全局微调”,以提高整个生产系统的OEE、准时交付率和产品质量,降低生产成本。
全局优化Agent的核心属性:
- 自主性:能够自主地收集所有Agent的状态信息,对生产计划进行全局微调;
- 反应性:能够感知订单Agent发送的临时插单或订单变更请求,以及大量设备故障或物料延迟等极端环境变化,并及时地对生产计划进行全局调整;
- 主动性:能够主动地向调度Agent发送全局优化后的生产计划,向车间主任发送生产系统的性能报告;
- 社交性:能够与所有其他Agent进行交互。
1.6 概念之间的关系:概念核心属性维度对比、ER实体关系图、交互关系图
1.6.1 概念核心属性维度对比:六大核心Agent类型的“核心属性对比表”
为了让大家更清楚地理解六大核心Agent类型的区别,我整理了一张**“六大核心Agent类型的核心属性对比表”**:
| Agent类型 | 主要功能 | 核心决策类型 | 核心输入信息 | 核心输出信息 | 自主性等级 | 反应性等级 | 主动性等级 | 社交性等级 |
|---|---|---|---|---|---|---|---|---|
| 订单Agent | 接收销售订单,分解生产任务单,跟踪执行进度 | 任务分解决策 | 主机厂销售订单、ERP系统订单、历史生产数据 | 生产任务单、订单执行进度报告、订单变更通知 | ★★★☆☆ | ★★★★☆ | ★★★☆☆ | ★★★★☆ |
| 调度Agent | 生成局部动态生产调度计划,调整计划以应对环境变化 | 局部调度决策 | 生产任务单、设备状态信息、AGV状态信息、物料状态信息、托盘状态信息、刀具状态信息 | 生产调度计划、协作请求、调整后的生产调度计划 | ★★★★☆ | ★★★★★ | ★★★★☆ | ★★★★★ |
| 设备Agent | 控制设备运行,采集运行数据,预测故障时间,上报状态信息 | 设备控制决策 | 生产调度计划、设备故障信号、刀具磨损信号、PLC模块指令 | 设备运行指令、设备运行数据、设备状态信息、故障预测报告、刀具更换请求 | ★★★☆☆ | ★★★★★ | ★★★☆☆ | ★★★★☆ |
| AGV Agent | 控制AGV运行,规划路径,采集运行数据,上报状态信息 | AGV路径规划决策 | 生产调度计划、AGV故障信号、路径冲突信号、其他AGV位置信息 | AGV运行指令、AGV路径、AGV运行数据、AGV状态信息、充电请求 | ★★★★☆ | ★★★★★ | ★★★☆☆ | ★★★★☆ |
| 质检Agent | 接收产品数据,识别缺陷,上报质检结果,发送缺陷分析报告 | 缺陷识别决策 | 摄像头图像数据、传感器数据、生产调度计划、产品工艺标准 | 质检结果、缺陷图像、缺陷分析报告、待复检通知 | ★★★☆☆ | ★★★★☆ | ★★★☆☆ | ★★★★☆ |
| 全局优化Agent | 收集所有Agent状态信息,对生产计划进行全局微调,上报性能报告 | 全局优化决策 | 所有Agent的状态信息、生产任务单、历史性能数据、成本数据 | 全局优化后的生产计划、性能报告、成本分析报告 | ★★★★★ | ★★★☆☆ | ★★★★★ | ★★★★★ |
注:自主性等级、反应性等级、主动性等级、社交性等级的评分标准为:★★★★★(非常高)、★★★★☆(高)、★★★☆☆(中等)、★★☆☆☆(低)、★☆☆☆☆(非常低)。
1.6.2 ER实体关系图:六大核心Agent类型与资源层实体的“ER实体关系图”
为了让大家更清楚地理解六大核心Agent类型与资源层实体之间的关系,我整理了一张**“六大核心Agent类型与资源层实体的ER实体关系图”**:
1.6.3 交互关系图:六大核心Agent类型的“典型生产流程交互关系图”
为了让大家更清楚地理解六大核心Agent类型在典型生产流程中的交互关系,我整理了一张**“恒立精密变速箱齿轮典型生产流程的Agent交互关系图”**(恒立精密的变速箱齿轮典型生产流程是:原材料下料→车床粗加工→热处理→磨床精加工→质检→装配→成品入库):
第二章 数学模型和公式:制造业MAS的“核心算法数学模型”
2.1 问题背景:制造业MAS核心算法的“数学建模需求”
刚才第一章我们提到了制造业MAS的“三层架构”和“六大核心Agent类型”,其中调度Agent的“局部调度决策”和全局优化Agent的“全局优化决策”是制造业MAS的“核心”——这两个决策问题,本质上都是“组合优化问题”(Combinatorial Optimization Problem),而且是**“NP-hard问题”**(Non-deterministic Polynomial-time Hard Problem)——也就是说,随着问题规模的增大,找到最优解的时间会呈指数级增长,传统的“穷举法”或“分支定界法”根本无法在合理的时间内找到最优解!
因此,我们需要对这两个决策问题进行数学建模,然后使用启发式算法(Heuristic Algorithm)或元启发式算法(Meta-heuristic Algorithm),在合理的时间内找到“近似最优解”(Near-optimal Solution)。
2.2 问题描述:制造业MAS的“两个核心决策问题”
2.2.1 问题一:调度Agent的“柔性作业车间调度问题”(Flexible Job Shop Scheduling Problem,FJSP)
调度Agent的“局部调度决策”,本质上就是**“柔性作业车间调度问题”**(FJSP)——FJSP是传统“作业车间调度问题”(Job Shop Scheduling Problem,JSP)的扩展,比JSP更复杂,也更符合离散制造车间的实际情况!
2.2.1.1 传统JSP的定义
传统JSP的定义是:
- 有 nnn 个作业(Job),每个作业 JiJ_iJi(i=1,2,...,ni=1,2,...,ni=1,2,...,n)有 mim_imi 道工序(Operation);
- 有 mmm 台机器(Machine),每台机器 MkM_kMk(k=1,2,...,mk=1,2,...,mk=1,2,...,m)同一时间只能处理一道工序;
- 每个作业 JiJ_iJi 的工序有固定的工艺路线(即工序的加工顺序是固定的);
- 每道工序 Oi,jO_{i,j}Oi,j(作业 JiJ_iJi 的第 jjj 道工序)只能在唯一的一台机器上加工,加工时间为 pi,j,kp_{i,j,k}pi,j,k(如果 kkk 是唯一的加工机器,否则 pi,j,k=∞p_{i,j,k} = \inftypi,j,k=∞);
- 目标
更多推荐
所有评论(0)