2. 无人系统任务规划问题建模

任务规划的本质,是把“想做什么”翻译成“谁在什么时间、沿什么路径、用什么资源去完成什么动作”。这个翻译过程如果只靠自然语言描述,往往在仿真验证阶段暴露出歧义:同一句“尽快侦察目标区域”,可能被理解为最短路径、最短时间或最早抵达。因此,任务规划问题建模的核心任务,是建立一套形式化语言,把任务、环境、平台、时间、资源和优化目标统一到可计算、可验证的数学结构中。

一、任务描述:从自然语言到任务元组

任务描述的形式化通常采用任务元组 T = (ID, type, target, payload, duration, priority)。其中 type 表示任务类型,如侦察、打击、通信中继、物资投送;target 是任务作用的地理位置或对象;payload 指定所需载荷;duration 是任务执行时长;priority 是优先级权重。对于复合任务,还需要引入前置约束,例如“打击任务必须在侦察确认目标之后执行”,可表示为偏序关系 T_recon ≺ T_strike。

以区域侦察为例,一个可计算的任务描述可以写成:

T1 = (ID: T1, type: recon, target: (116.30, 39.95, r=2km),
      payload: EO/IR, duration: 8min, priority: 0.9)
T2 = (ID: T2, type: relay, target: (116.35, 39.98, alt=5000m),
      payload: comm, duration: 20min, priority: 0.6)
约束: T1 ≺ T2 表示中继任务需在侦察任务开始后建立链路

这种元组化描述的价值在于:每个字段都可以直接映射为求解器中的变量或约束,避免后续仿真时反复回读自然语言。

二、环境约束:把地理与气象变成可行域

环境约束决定平台“能不能去、能不能做”。常见形式包括禁飞区、地形高程、雷达威胁区、通信遮蔽区和气象限制。禁飞区通常建模为多边形或圆柱体,平台轨迹必须满足 ∀t, p(t) ∉ NFZ。威胁区则常用代价场表示,例如将雷达探测概率 P_d(p) 作为位置函数,路径代价中增加 ∫ w·P_d(p(t)) dt。

气象约束可简化为高度层与风速阈值:当某高度层风速超过平台抗风等级时,该高度不可用。地形约束则通过数字高程模型生成最小安全高度 h_min(p),要求 h(t) ≥ h_min(p(t)) + margin。这些约束共同构成平台的可行飞行域,是后续路径搜索和任务分配的空间基础。

三、平台能力与资源约束

平台能力描述“谁能做、能做多少”。关键参数包括最大航程、续航时间、最大速度、爬升率、载荷能力、通信半径和同时任务数。资源约束则包括燃料/电量、弹药数量、通信带宽和计算资源。形式化时,通常为每个平台 u 定义能力向量 Cap(u),任务 T 定义需求向量 Req(T),分配可行条件为 Cap(u) ⊇ Req(T)。

资源消耗可写成累积约束:Σ e(u,T) ≤ E_max(u),其中 e(u,T) 是执行任务 T 的能耗。若平台需要返回基地,还需满足 E_used + E_return ≤ E_max。这类约束在仿真中通常表现为“任务链可行性检查”,一旦违反,该分配方案即被剪枝。

四、时间窗口与时序约束

时间窗口是任务规划中最具约束力的因素之一。每个任务 T_i 有可执行区间 [est_i, lft_i],即最早开始时间和最晚完成时间。平台从当前位置到任务点的飞行时间 tt(u, T_i) 必须满足 start_i ≥ est_i 且 start_i + duration_i ≤ lft_i。若存在前置任务,则还需满足 finish_j + tt(u, T_j, T_i) ≤ start_i。

时间窗口与平台速度、路径长度耦合,形成“时间—路径—任务”联合约束。例如,同一平台连续执行两个任务时,若第一个任务延迟,第二个任务可能错过窗口,此时需要重新分配或调整顺序。仿真验证中,时间窗口冲突是最常见的不可行原因之一。

五、多目标优化形式化

任务规划通常不是单目标问题,而是多目标优化。典型目标包括:任务完成率最大化、总航程最小化、总时间最小化、威胁暴露最小化、资源消耗最小化。形式化可写为:

min F(x) = [f1(x), f2(x), f3(x), f4(x)]
s.t.  x ∈ X_feasible
其中:
f1 = -Σ completed(T_i)          // 完成率取负,转为最小化
f2 = Σ path_length(u)            // 总航程
f3 = Σ exposure(u)               // 威胁暴露
f4 = Σ energy_used(u)            // 资源消耗
X_feasible 由环境、平台、时间、资源约束共同定义

多目标之间往往冲突:缩短航程可能穿越威胁区,提高完成率可能增加资源消耗。常用处理方法包括加权求和、ε-约束法和Pareto前沿分析。加权求和简单但权重难定;Pareto方法能给出非支配解集,适合仿真阶段对比不同方案。实际建模时,可先以加权求和快速求解,再用Pareto前沿检查是否存在更优折中。

任务规划问题建模:约束—变量—目标映射关系 任务描述 T ID / type / target payload / duration priority / 前置关系 → 决策变量:分配 x(i,u) 环境约束 E 禁飞区 / 威胁区 地形高程 / 气象 通信遮蔽 → 可行域 X_feasible 平台能力与资源 航程 / 续航 / 载荷 能量 / 弹药 / 带宽 → 累积约束 Σe ≤ E_max 形式化模型 决策变量 x(i,u) ∈ {0,1} start_i, path_i 约束条件 Cap(u) ⊇ Req(T) est_i ≤ start_i ≤ lft_i T_j ≺ T_i 时序 Σe(u,T) ≤ E_max(u) 目标函数 max 完成率 min 航程/时间/威胁 min 资源消耗 多目标求解 加权求和 → 快速可行解 ε-约束 → 控制单目标边界 Pareto前沿 → 非支配解集 输出:任务分配 + 路径 + 时序 判断:完成率、冲突数、资源余量 仿真验证关注点 ① 时间窗口是否全部满足 ② 平台能力是否越界 ③ 资源消耗是否超限 ④ 环境约束是否违反 ⑤ 多目标折中是否合理 建模闭环:任务/环境/平台/时间/资源 → 约束集 → 多目标求解 → 仿真验证 → 反馈修正

六、建模闭环与仿真验证

上述五类要素并非孤立,而是通过决策变量耦合在一起。任务分配变量 x(i,u) 决定哪个平台执行哪个任务;路径变量 path_i 决定飞行轨迹;时间变量 start_i 决定任务时序。三者共同受环境、平台、时间、资源约束限制,并共同影响多目标函数值。

在仿真验证中,建议按以下顺序检查模型是否可解、解是否可信:第一,检查任务元组是否完整,特别是时间窗口和前置关系是否矛盾;第二,检查平台能力是否覆盖任务需求,避免出现“无平台可执行”的任务;第三,检查资源累积约束是否在任务链末端仍满足;第四,检查环境约束是否导致可行域为空;第五,对比多目标解集,判断是否存在明显更优的折中方案。若某一环节不可行,应回到对应约束或任务描述进行修正,而不是直接调整优化权重。

建模时建议先固定任务描述和环境约束,再逐步加入平台能力和时间窗口,最后引入多目标优化。这样可以在每一步定位不可行来源,避免所有约束同时加入后难以排查。

任务规划问题建模的最终产出,是一组可被求解器读取、可被仿真器验证的形式化结构:任务元组、约束集合、决策变量和目标函数。只有这四者一致且完整,后续的路径规划、任务分配和仿真推演才有可靠基础。