
摘要
随着智慧医院与医疗物流自动化进程的加速,基于多智能体系统的服务机器人正逐步承担起药品配送、样本转运、器械回收及环境消杀等关键任务。传统多智能体路径规划(Multi-Agent Path Finding, MAPF)方法的核心目标在于实现智能体"无碰撞地抵达各自目标",其典型算法如冲突基搜索(Conflict-Based Search, CBS)及其改进版本ECBS、EECBS等,优化目标多集中于路径总成本(Sum of Costs)或完工时间(Makespan)。然而,此类范式难以直接适配医疗场景中复杂的时空耦合、任务依赖以及共享资源(如电梯、门禁)调度等核心约束。
近年来,协同式多智能体路径规划(Cooperative MAPF, Co-MAPF)作为一种新兴范式被提出,旨在形式化并解决"协同任务执行"与"动态避碰"的联合优化问题。例如,Greshler等人提出的Co-CBS算法框架,成功将协同规划模块嵌入经典CBS架构,为多机器人协同作业提供了新思路。本综述面向医院室内复杂环境,系统性地梳理了从经典MAPF到Co-MAPF的理论演进与技术谱系。文章重点剖析了CBS、ECBS/EECBS以及连续时间MAPF(CCBS)等核心算法在医疗物流、手术器械流转及多楼层导航场景中的适配性挑战与改造潜力。
结合真实的医院机器人车队实地研究与多楼层图路径规划实践,本文提出了一套面向医疗场景的Co-MAPF协同需求建模方法论。该方法涵盖了对电梯/门禁等共享资源的时空槽预约机制、无菌区时间窗约束、任务依赖图与会合点优化等关键问题的形式化描述。在工程实践层面,本文以Python开源生态(如msaudulhassan/mapf、atb033/multi_agent_path_planning)为基础,设计并阐述了一个可扩展的Co-CBS实现框架,并构建了一套涵盖任务完成率、交叉污染风险、资源冲突率、路径效率与协同流畅度的多维医疗场景评测指标体系。最后,针对医院环境中普遍存在的人流不确定性、电梯调度优化及人机共融安全等工程部署难题,本文探讨了分层解耦的系统架构、在线重规划策略以及与机器人操作系统(ROS)的集成路径。
本文的主要贡献在于:1) 提出了一套系统化、可扩展的面向医疗Co-MAPF的时空约束形式化描述与分类体系,覆盖了八类典型医疗约束;2) 在主流开源MAPF框架基础上,规划了一条清晰的Co-CBS工程化实现与医疗约束注入的技术路线;3) 构建了以交叉污染防控与物流效率为核心导向的医院场景量化评测体系,为算法选型与系统调优提供了科学依据。
关键词:多智能体路径规划;协同路径规划;Co-MAPF;医院物流机器人;冲突基搜索;Co-CBS;Python工程实现
第一章 从MAPF到Co-MAPF:协同范式的理论演进与需求必然
1.1 经典MAPF技术框架及其在医疗场景的局限性
多智能体路径规划(MAPF)作为移动机器人学和人工智能交叉领域的一个基础性问题,其研究旨在为共享工作空间中的多个智能体规划无碰撞且满足特定优化目标的路径。经典的MAPF问题通常在一个静态图环境 (G=(V, E)) 中定义,其中 (V) 代表节点(位置),(E) 代表边(连接)。给定一组智能体 (A = {a_1, a_2, ..., a_n}),每个智能体 (a_i) 拥有一个起始节点 (s_i \in V) 和一个目标节点 (g_i \in V)。问题求解即在离散时间步 (t = 0, 1, 2, ...) 上,为每个智能体寻找一条路径 (\pi_i),并满足以下核心约束:首先,路径必须连通起始点与目标点;其次,任意两个智能体在相同时刻不能占据同一节点(顶点冲突)或交换位置(边冲突)。常见的优化目标包括最小化所有智能体路径长度之和(Sum of Costs, SOC)或最小化最后一个智能体到达目标的时间(Makespan)。
由于MAPF问题被证明是NP-Hard的,学术界发展出了一系列高效的(次)最优求解算法。其中,冲突基搜索(CBS)及其变体构成了当前最具影响力的算法家族之一。CBS采用两层搜索结构:底层为每个智能体执行受约束的时空A*搜索,高层则维护一棵约束树(CT),通过不断解析底层路径产生的冲突(如顶点、边冲突)并施加新的约束来分支搜索,直至找到无冲突的可行解。为进一步平衡最优性与计算效率,有界次优算法如ECBS(Enhanced CBS)和EECBS(Explicit Estimation CBS)被提出。它们通过引入聚焦搜索(Focal Search)和显式代价估计,在预设的次优界(如1.2倍最优)内显著加速求解过程。对于动态或连续时间环境,研究者将安全区间路径规划(SIPP)与CBS结合,形成了连续时间CBS(CCBS),使得算法能够处理动态障碍物和更精细的时间解析度。
尽管上述经典MAPF算法在仓库自动化、视频游戏等场景中取得了巨大成功,但当其直接应用于医院这一特殊、高标准的动态环境时,便暴露出若干根本性的适配缺陷:
-
目标函数单一性与医疗绩效指标脱节:经典MAPF以SOC或Makespan为核心优化目标,这本质上是"距离"或"时间"的度量。然而,医院物流的绩效核心是医疗服务质量与安全。例如,紧急药品的配送,"及时性"并非简单的路径最短,而是在严格的时间窗内送达;手术器械的流转,首要目标是"零污染",路径长度退居次要。经典MAPF的目标函数难以直接映射和优化这些更高阶的、业务驱动的绩效指标(如送达及时率、污染违规次数)。
-
缺乏对协同任务与流程的显式建模能力:医疗作业具有强烈的流程性与协同性。例如,术后器械回收流程可能涉及:手术室机器人将污染器械箱运至污物通道出口,再由专用污物转运机器人接驳至消毒供应中心。这要求两台机器人在特定时间、特定地点(会合点)完成"交接"。经典MAPF将每个机器人视为独立寻址至固定目标的个体,这种"点对点"模型无法自然表达"交接"这一蕴含时空耦合与智能体间依赖关系的协同行为。虽可通过巧妙设置中间目标点来近似模拟,但会导致问题建模复杂、约束表达能力弱,且易造成规划组合爆炸。
-
对关键共享资源的调度能力薄弱:医院是多楼层建筑,电梯是垂直交通的核心瓶颈资源,其调度直接影响全院物流效率。研究已表明,将电梯简单建模为图中的普通节点会引发严重的排队和冲突。经典MAPF算法缺乏对电梯容量、往返时间、预约机制等调度属性的内置支持,难以实现路径规划与资源调度的一体化优化。类似的问题也存在于单通道门禁、消毒舱等需要独占使用的资源上。
-
对环境安全分区与感染控制考虑不足:医院内部存在严格划分的洁净区、污染区和缓冲区。传统MAPF通常通过设置"禁行区"来阻止机器人进入某些区域,但这种"0-1"二元模型过于粗糙。它无法表达"允许进入,但需先消毒"或"从A区到B区必须经过C缓冲通道"等复杂的、带有条件和时间属性的流动规则。这不利于系统性防控因机器人移动导致的交叉感染风险。
综上所述,经典MAPF范式在医院场景下面临的核心挑战在于其问题定义与优化目标与医疗业务的本质需求存在鸿沟。其"避碰优先、独立目标"的核心理念,难以承载医疗场景中广泛存在的任务协同、资源预约、流程合规等高层要求。因此,向能够显式建模并优化协同行为的Co-MAPF范式演进,成为医疗多机器人系统发展的必然技术路径。
1.2 Co-MAPF协同范式的引入及其医疗价值
为克服经典MAPF的上述局限,协同式多智能体路径规划(Co-MAPF)范式应运而生。Greshler等人首次系统地形式化了Co-MAPF问题,其核心扩展在于:在要求智能体群体无碰撞移动的基础上,额外要求它们共同完成一组协同任务。这些协同任务超越了简单的"抵达目标",可以是多个智能体在同一时空点的"会合",按特定顺序在特定节点的"交接",或共同在某一时段内"占用"某个共享资源。
在形式化层面,Co-MAPF在经典MAPF定义上引入了一个协同约束集合 (C_{coop})。集合中的每个约束可以表示为一个多元组,例如 ((agents, location, time_window, type)),用以精确描述智能体间必须满足的时空关系。基于此,Greshler等人提出了协同冲突基搜索(Cooperative CBS, Co-CBS)算法。Co-CBS继承了CBS的双层框架,但创新性地增加了一个"协同规划模块"。该模块独立于路径冲突解决,专门负责处理协同任务约束的满足与优化,最终实现路径避碰与任务协同的联合求解。
从范式演进的角度看,Co-MAPF并非对MAPF的简单修补,而是增加了一个"协同抽象层"。如图1所示,该层将底层的路径物理运动与高层的业务逻辑(任务依赖、资源调度)解耦。经典MAPF算法(CBS/ECBS等)作为强大的"运动引擎"被保留,而协同层则负责翻译和执行复杂的医疗业务流程。
图1:从MAPF到Co-MAPF的范式演进与架构示意
+-----------------------------+
| 医疗业务流程层 |
| (任务链、时间窗、优先级) |
+-------------+---------------+
| (协同任务图)
+-------------v---------------+
| 协同规划层 (Co-MAPF) |
| (会合点优化、资源预约、交接)|
+-------------+---------------+
| (施加协同约束)
+-------------v---------------+
| 路径规划层 (经典MAPF) |
| (CBS/ECBS/CCBS避碰求解) |
+-------------+---------------+
| (无碰撞路径)
+-------------v---------------+
| 机器人执行层 (ROS) |
+-----------------------------+
在医疗场景中,Co-MAPF范式的价值具体体现在以下三个方面:
- 业务流程的精准映射与驱动:Co-MAPF允许将医疗标准操作程序(SOP)直接编码为协同任务图。例如,将"ICU抗生素配送"建模为"药房取药 -> 药剂师核对点(会合) -> 护士站交接 -> 病房送达"的任务链。算法在规划时即以此业务流为核心目标,从源头保证路径规划服务于流程效率,而非反之。
- 资源调度与路径规划的一体化:通过将电梯、门禁等建模为"可预约的时空资源",Co-MAPF实现了资源调度与路径规划的深度融合。机器人不仅规划空间路径,也规划资源使用时间表,从而从根本上减少排队等待和死锁,提升系统整体吞吐量。
- 感染控制规则的形式化与嵌入:医院感染控制规程可被形式化为一系列时空约束。例如,"进入手术室前需在缓冲间停留消毒至少5分钟"可建模为一段强制停留时间和区域切换约束。Co-MAPF框架能够将这些约束作为硬性条件或高权重惩罚项纳入优化过程,使得规划的路径天然符合感染防控要求,实现安全性的可计算与可验证。
因此,Co-MAPF将多机器人路径规划从纯粹的"运动控制问题"提升到了"业务流执行与资源调度问题"的高度,其输出与医院运营的核心KPI(效率、安全、合规)直接对齐,为构建真正智能、可靠、安全的医院物流机器人系统奠定了坚实的算法基础。
第二章 面向医疗场景的协同需求建模与形式化
要在Co-MAPF框架下有效解决医院物流问题,首要步骤是对纷繁复杂的医疗场景需求进行抽象、分类和精确的形式化描述。本章旨在构建一套系统化的医疗约束建模体系,并分析典型场景的拓扑与冲突特征。
2.1 医疗场景时空约束的形式化分类体系
基于对医院业务流程和物理环境的分析,我们可以提炼出以下八类核心约束,并通过扩展经典MAPF的约束类来实现形式化。
python
class MedicalConstraint:
"""
医疗专属约束基类,继承自经典MAPF的通用约束。
"""
def __init__(self, constraint_id, constraint_type, agents, **params):
self.id = constraint_id
self.type = constraint_type # 约束类型标识
self.agents = agents # 约束涉及的智能体列表
self.params = params # 类型相关的参数字典
self.penalty = params.get('penalty', float('inf')) # 违约惩罚,默认为无穷大(硬约束)
# 约束类型枚举与参数示例
CONSTRAINT_TYPES = {
'TEMPORAL_WINDOW': { # 时间窗约束
'goal_node': 'Node', # 目标节点
'earliest': 'int', # 最早允许到达时间
'latest': 'int' # 最晚允许到达时间
},
'SPATIAL_ZONE_ACCESS': { # 区域访问约束
'zone_polygon': 'list[Node]', # 区域多边形顶点
'access_type': 'FORBIDDEN/ALLOWED_WITH_CONDITION', # 访问类型
'condition': 'MedicalConstraint' # 访问条件(如先消毒)
},
'DISINFECTION_REQUIRED': { # 消毒约束
'chamber_node': 'Node', # 消毒舱节点
'duration': 'int' # 最小停留消毒时间
},
'HANDOVER_TASK': { # 交接任务约束
'meeting_node': 'Node', # 交接节点
'time_window': '(int, int)', # 交接时间窗
'sequence_order': 'int' # 在任务链中的顺序
},
'RESOURCE_RESERVATION': { # 资源预约约束
'resource_id': 'str', # 资源ID(如'ELEVATOR_A')
'time_slot': '(int, int)' # 预约使用的时间槽
},
'SOCIAL_DISTANCING': { # 社交距离约束(人机共融)
'buffer_radius': 'float', # 安全缓冲半径
'dynamic_obstacle_id': 'str' # 动态障碍物ID(如人流)
},
'LOAD_UNLOAD': { # 装载/卸载操作约束
'station_node': 'Node', # 操作站节点
'operation_type': 'LOAD/UNLOAD',
'duration': 'int' # 操作耗时
},
'PRECEDENCE': { # 任务先后序约束
'preceding_task_id': 'str', # 前序任务ID
'following_task_id': 'str' # 后序任务ID
'min_gap': 'int' # 最小间隔时间
}
}
def is_violated(self, agent_paths):
"""检查给定智能体路径集合是否违反此约束。"""
# 根据不同类型实现具体的冲突检测逻辑
pass
下面重点阐述其中几类关键约束在医疗场景下的具体内涵与建模方法:
2.1.1 资源预约约束:以电梯时空槽模型为例
电梯是医院多楼层协同中最典型的共享资源。简单的节点占用模型无法处理其容量限制和行程时间。一种有效的建模方法是时空槽预约模型。
形式化定义:对于每一部电梯 (e),将其服务过程离散化为一系列长度为 (\Delta t) 的时空槽。每个槽 (slot(e, t, f_{from}, f_{to})) 表示在时间区间 ([t, t+\Delta t)) 内,电梯 (e) 从楼层 (f_{from}) 运行至楼层 (f_{to}) 的一个服务单元。该槽具有容量 (C_{cap})(通常为1或2台机器人)。智能体如需使用电梯跨层,必须提前预约一个或多个连续的时空槽。
建模实现 :在Co-MAPF求解器中,可以维护一个全局的 ElevatorScheduler。当底层A*搜索扩展节点至电梯入口时,需向调度器查询可用时间槽。调度器内部维护一个预约表,并负责解决槽位冲突。在高层Co-CBS搜索中,电梯使用冲突可被视为一种特殊的"资源冲突",通过分支约束(如"机器人A必须在时间t之前使用电梯E"、"机器人B必须在时间t之后使用电梯E")进行解析。
2.1.2 区域访问与消毒约束:感染控制的核心
为控制交叉感染,医院环境被严格分区。对此的建模需超越简单的"禁行区"。
- 无菌区/污染区约束 :通过
SPATIAL_ZONE_ACCESS约束实现。对于绝对禁入区,设置access_type='FORBIDDEN'。对于有条件进入区(如从污染区返回的机器人需进入清洁走廊),设置access_type='ALLOWED_WITH_CONDITION',并将condition指向一个DISINFECTION_REQUIRED约束实例。 - 消毒约束 :
DISINFECTION_REQUIRED约束强制机器人在通过某个节点(消毒舱)时,停留时间不小于duration。这可以通过在底层搜索图的该节点上,扩展出一条等待边(waiting edge)来建模,该边的代价等于消毒时间。
2.1.3 交接任务与时间窗约束:流程时效性的保障
- 交接任务约束 :
HANDOVER_TASK是Co-MAPF协同性的核心体现。它规定了多个智能体(如器械回收车与转运车)必须在指定的meeting_node上,其占据时间存在交集,且交集需落在time_window内。sequence_order可用于表达更复杂的接力顺序。该约束直接驱动会合点优化算法的目标。 - 时间窗约束 :
TEMPORAL_WINDOW约束为任务添加了时效性要求,尤其适用于急救药品、检验样本的配送。在底层搜索中,这要求A*算法不仅要搜索空间,还要搜索到达时间,可通过在启发函数和g值计算中融入时间窗代价来实现。
2.2 典型医疗协同场景的拓扑与冲突分析
基于上述约束体系,我们可以对医院中几种核心的机器人应用场景进行深度建模。
2.2.1 药品配送:多级接力与走廊双向流冲突
场景描述:中心药房的药品需要配送到各病区病房。流程可能涉及:1) 药房内部机器人完成拣选并送至交接区;2) 走廊高速配送机器人负责跨楼层、长距离运输至护士站;3) 病区护士或小型病房机器人完成"最后一米"配送。
协同拓扑 :这是一个典型的层级接力链。任务被分解为多个子任务,由不同特化的机器人依次完成,在药房出口、护士站等节点形成交接点。
主要冲突特征:
- 线性走廊的双向流冲突:多台机器人在狭窄走廊中相向而行,极易发生经典的顶点/边冲突,是传统MAPF主要解决的冲突类型。
- 电梯瓶颈冲突:来自不同楼层的配送任务在垂直交通层汇合,竞争有限的电梯资源,导致排队。
- 交接点拥塞:护士站作为多个病区的公共交接点,可能同时有多台机器人到达,造成局部空间和时间上的拥塞。
Co-MAPF优化视角 :Co-MAPF可将整个配送链建模为一个 PRECEDENCE 和多个 HANDOVER_TASK 约束的集合。优化目标不仅是单个机器人路径最短,更是整个接力链的 TEMPORAL_WINDOW 满足率最高、总交接等待时间最短。通过一体化规划,可以主动错开不同链条对电梯和交接点的使用时间,从系统层面平滑流量。
2.2.2 手术器械闭环流转:无菌与污染路径的时空隔离
场景描述:手术后的污染器械需要被运至消毒供应中心(CSSD)处理,灭菌后的洁净器械需要被送回手术室。这构成了一个涉及污染与洁净两类机器人、严格分区管理的闭环系统。
协同拓扑 :一个环形闭合链,包含"污染流出"和"洁净流入"两个方向,在手术室与CSSD之间设有明确的污染/洁净交接缓冲区。
主要冲突特征:
- 洁净/污染路径交叉冲突:这是医院特有的高风险冲突。洁净机器人的路径绝不能与污染机器人路径在时空上发生未经消毒处理的交叉,否则可能引发感染。
- 缓冲区交接冲突:污染器械车与洁净器械车在缓冲区进行器械箱交换时,需要协调使用同一空间,并避免两类车本身直接接触。
- 消毒设备排队冲突:多台污染机器人等待使用同一批洗消设备,形成资源队列。
Co-MAPF优化视角 :这是Co-MAPF展现其安全管控能力的典型场景。通过为洁净区和污染区定义不同的 SPATIAL_ZONE_ACCESS 约束,并为缓冲区设置严格的 HANDOVER_TASK 约束,算法可以自动规划出物理上或时间上隔离的路径。优化目标应赋予"路径交叉风险"极高的惩罚权重,甚至作为硬约束。
2.2.3 消杀机器人协同:区域覆盖与充电调度
场景描述:在夜间或特定时段,多台消杀机器人(UV-C或喷雾式)需要对住院病房、公共区域进行协同消杀。
协同拓扑 :区域划分与动态补位。初始阶段,将待消杀区域划分为若干子区域分配给各机器人。运行时,某机器人可能因电量不足需返航充电,其未完成区域需由邻近机器人动态接管。
主要冲突特征:
- 区域边界冲突:机器人在各自负责区域的边界附近移动时,可能发生路径冲突。
- 充电桩独占冲突:充电桩是共享资源,多台机器人同时需要充电时会产生竞争。
- 动态任务分配引发的路径重规划冲突:当进行任务重分配时,新规划的路径可能与正在执行的其他机器人路径产生新冲突。
Co-MAPF优化视角 :这要求Co-MAPF系统具备在线重规划和动态任务分配能力。初始的区域划分可以产生一组并行的覆盖路径任务。当触发重规划事件(如机器人电量低)时,系统需要快速求解一个包含新任务分配和路径重规划的Co-MAPF问题。此时,RESOURCE_RESERVATION 约束用于管理充电桩,而动态障碍物(其他正在移动的机器人)可以通过类似CCBS的机制进行处理。
第三章 Co-MAPF算法谱系分析与医疗场景适配策略
面对多样的医疗场景和约束,如何选择合适的底层MAPF算法并进行针对性改造,是工程成功的关键。本章系统梳理相关算法谱系,并提出医疗场景下的适配决策框架与核心改造点。
3.1 Co-MAPF底层算法选型决策框架
Co-MAPF的高层协同规划模块(如Co-CBS)需要依赖一个强大的底层MAPF求解器来处理避碰问题。算法选型需综合考虑场景规模、动态性、最优性要求和实时性约束。图2所示的决策树提供了一个选型参考。
图2:面向医疗场景的MAPF/Co-MAPF算法选型决策树
是
否
是
否
小规模(≤15智能体)
且要求最优解
中大规模(>15智能体)
或需快速次优解
开始: 评估医疗场景
是否存在明确的
会合/交接/接力任务?
核心算法: Co-CBS
环境是否高度动态
(如门诊大厅人流)?
核心算法: CCBS
(连续时间CBS)
问题规模与实时性要求?
优选: CBS/ICBS
优选: ECBS/EECBS
底层避碰求解器选择
输出: 完整算法栈
(如 Co-CBS + ECBS)
决策路径解读:
- 任务协同性优先 :只要场景中存在必须严格满足的会合、交接等协同行为,Co-CBS应作为架构核心,因为它提供了处理协同约束的原生框架。
- 环境动态性次之 :若环境变化频繁(如行人多),即使没有复杂协同任务,也应选择CCBS,因其能更好地处理动态障碍物和连续时间规划。
- 规模与最优性权衡 :在选定高层框架后,需根据智能体数量和计算实时性要求选择底层避碰求解器:
- CBS/ICBS:追求最优解,适用于智能体数量较少(通常≤15)、场景相对简单的封闭区域,如单个手术部内部的机器人调度。
- ECBS/EECBS:追求有界次优解,通过牺牲有限的最优性(如1.2倍最优)换取计算速度的指数级提升,非常适用于医院走廊、病区等智能体数量中等(15-50)的场景,能更好地满足实时交互需求。
3.2 医疗场景关键算法改造:资源预约与会合点优化
选定了基础算法栈后,必须针对医疗场景的两大核心需求------资源调度和任务协同------进行关键改造。
3.2.1 集成资源预约系统的改造
以电梯为例,需要在底层搜索和高层冲突解析中集成预约逻辑。
底层搜索(A)改造 *:当A扩展节点至电梯入口节点时,不能直接将其作为普通邻接节点。算法需要调用 ElevatorScheduler.request_slot(agent, current_time, from_floor, to_floor) 方法,请求一个最早可用的时空槽。如果成功,则获得一个预约好的 (elevator_id, start_time, end_time) 元组。此时,A 生成的路径段将包含:1) 等待至 start_time;2) 在 start_time 进入电梯节点;3) 在 end_time 离开电梯节点到达目标楼层。电梯乘坐期间的代价即为 (end_time - start_time)。
高层搜索(CBS/Co-CBS)改造 :当两个智能体的路径在电梯时空槽上发生重叠(即请求同一电梯的相同或重叠时间段)时,产生资源冲突。这与传统的顶点/边冲突类似,需要在高层约束树上进行分支。例如,产生一个约束:"机器人A不得在时间段 ([t1, t2]) 使用电梯E",强制A重新规划,可能选择更晚的时间槽、另一部电梯或走楼梯。
3.2.2 会合点优化与协同任务处理
Co-CBS的核心创新在于其独立的协同规划模块。该模块负责在高层搜索开始前或进行中,优化协同任务(如交接)的执行参数,主要是会合点的选择与会合时间的确定。
优化模型 :对于一个涉及智能体 (a_i) 和 (a_j) 的交接任务,假设有一组候选会合点 (M = {m_1, m_2, ..., m_k})。优化目标是选择最优的会合点 (m^) 和时间 (t^ ),以最小化全局代价。代价函数可定义为:
Cost(m, t) = \\alpha \\cdot (T_{wait}\^i + T_{wait}\^j) + \\beta \\cdot (\|Path_i(m)\| + \|Path_j(m)\|) + \\gamma \\cdot \\mathbb{1}*{t \\notin Window}
其中,(T*{wait}) 是等待时间,(|Path|) 是到达会合点的路径长度,最后一项是对违反业务时间窗的惩罚。(\alpha, \beta, \gamma) 是权重系数。
在Co-CBS中的集成:
- 初始化:为每个协同任务生成候选会合点集合 (M)(可基于拓扑结构,如选择连接两个任务区域的中心节点或必经通道)。
- 高层节点评估:在Co-CBS高层树扩展每个节点时,对于该节点当前部分解中涉及的协同任务,调用协同规划模块。
- 快速评估与约束生成 :模块对每个候选会合点进行快速评估(例如,使用不考虑其他智能体的单机最短路径和理想时间进行估算),选择一个代价最小的 ((m^, t^))。
- 施加协同约束 :将"智能体 (a_i) 和 (a_j) 必须在时间 (t^) 共同位于节点 (m^)"这一约束,转化为一组底层的时空约束,添加到当前高层节点的约束列表中。
- 底层求解:底层CBS求解器在包含这些新增协同约束的条件下,进行常规的冲突搜索与解决。
通过这种方式,Co-CBS实现了协同任务规划与避碰路径规划的交替优化与逐步收敛。
3.3 经典算法医疗适配要点小结
- CBS/ICBS :适配重点是将其底层A搜索改造为支持
MedicalConstraint的约束A。例如,在扩展节点时检查是否违反时间窗、区域访问等约束。适用于流程固定、要求精确执行的小范围场景。 - ECBS/EECBS:在CBS适配基础上,其"有界次优"特性本身就是应对医疗场景计算实时性挑战的天然优势。关键是在设定次优界参数 (w) 时,需结合医疗风险考量------对于高风险任务(如术中紧急送血),应设定较小的 (w) 以逼近最优,确保及时性;对于低风险任务,可适当放宽 (w) 以提升系统整体响应速度。
- CCBS:适配重点在于将动态障碍物(如预测的人流轨迹)建模为连续时间轴上的"危险区间",并集成到SIPP中。这对于门诊、急诊等开放区域的机器人导航至关重要,是实现安全人机共融的基础。
- Co-CBS :这是医疗协同场景的"终局算法"方向。其适配工作的核心是实现并强化协同规划模块 ,特别是高效的会合点搜索与评估策略,以及将多样的
MedicalConstraint无缝融入其约束生成与解析流程。