跳转至

决策规划

引言

决策规划 (Decision Making) 是机器人规划体系中最高层次的模块,负责在给定环境状态和任务目标下,选择机器人应当执行的行为或子任务。决策规划需要处理不确定性、多目标权衡以及复杂的环境交互,是实现机器人自主行为的关键。

概述

决策规划回答的核心问题是"做什么"。在一个典型的机器人系统中,决策模块接收来自感知系统的环境信息,结合任务目标和内部状态,输出一个高层行为指令(如"前往 A 点"、"抓取物体"、"避让行人"),再由下游的路径规划和运动规划模块执行。

决策方法可以按照是否依赖环境模型进行分类:

  • 基于模型的方法 (Model-based):如 MDP、POMDP,需要环境的状态转移模型
  • 无模型的方法 (Model-free):如基于规则的系统、行为树,直接映射感知到动作
  • 基于学习的方法 (Learning-based):如强化学习,通过与环境交互学习策略

基于规则的系统 (Rule-based Systems)

基于规则的系统是最直观的决策方法,使用一组 if-then 规则将感知条件映射到动作输出。

基本结构

规则库由一系列产生式规则 (Production Rules) 组成:

如果 <条件1> 且 <条件2>  则 <动作A>
如果 <条件3>             则 <动作B>
如果 <条件4> 或 <条件5>  则 <动作C>

系统的推理引擎 (Inference Engine) 按照优先级或顺序匹配规则,找到满足条件的规则后执行对应动作。

示例:简单避障规则

规则1: 如果 前方距离 < 0.5m      则 停止并后退
规则2: 如果 左侧距离 < 右侧距离  则 右转
规则3: 如果 右侧距离 < 左侧距离  则 左转
规则4: 如果 前方无障碍物          则 前进

优缺点

  • 优点:实现简单、可解释性强、响应速度快
  • 缺点:规则数量随场景复杂度急剧增长;规则之间可能产生冲突;难以处理连续状态空间

决策树 (Decision Trees)

决策树 (Decision Tree) 是一种树形结构的决策模型,通过一系列条件判断逐步缩小决策范围,最终到达叶节点得到决策结果。

结构

决策树由以下元素组成:

  • 根节点 (Root Node):起始判断条件
  • 内部节点 (Internal Nodes):中间判断条件
  • 分支 (Branches):条件判断的结果
  • 叶节点 (Leaf Nodes):最终的决策或动作
              [电量是否充足?]
              /             \
           是                否
          /                    \
  [是否有任务?]           [前往充电站]
   /          \
 是            否
 /              \
[执行任务]    [待机巡逻]

信息增益 (Information Gain)

在自动构建决策树时,通常使用信息增益来选择最优分裂属性。对于属性 ,其信息增益定义为:

其中 是数据集 的熵 (Entropy):

是类别数量, 是第 类的概率。

优缺点

  • 优点:直观易理解、可以从数据中自动学习、支持多类别决策
  • 缺点:容易过拟合;对连续特征的处理需要离散化;不善于处理时序依赖

有限状态机 (Finite State Machines, FSMs)

有限状态机是机器人决策中最广泛使用的方法之一。它将机器人的行为建模为一组离散状态和状态之间的转移。

形式化定义

一个有限状态机可以表示为五元组:

其中 是有限状态集合, 是输入字母表(事件集合), 是状态转移函数, 是初始状态, 是终止状态集合。

示例:移动机器人巡逻 FSM

          电量低
  [巡逻] ──────→ [前往充电站]
    ↑                  │
    │    充电完成       │ 到达充电站
    │ ←──────── [充电中] ←──┘
    │
    │  发现目标
    └──────→ [跟踪目标]
                  │
                  │ 目标丢失
                  └──→ [巡逻]

分层有限状态机 (Hierarchical FSM, HFSM)

为了解决状态爆炸问题,分层有限状态机允许将一个状态展开为一个子状态机:

  • 高层状态机处理宏观行为(如"执行任务"、"充电"、"待机")
  • 每个高层状态内部包含一个子状态机处理具体行为细节

优缺点

  • 优点:概念简单、执行效率高、行为可预测
  • 缺点:状态和转移数量随复杂度急剧增加(状态爆炸);修改和扩展困难;缺乏模块化

行为树 (Behavior Trees)

行为树 (Behavior Tree, BT) 是近年来在机器人和游戏 AI 中广泛采用的决策结构,它克服了 FSM 难以扩展和维护的缺点。

节点类型

行为树由以下几种核心节点类型组成:

节点类型 符号 功能描述
顺序节点 (Sequence) 依次执行子节点,全部成功则成功,任一失败则失败
选择节点 (Selector/Fallback) ? 依次尝试子节点,任一成功则成功,全部失败则失败
条件节点 (Condition) 检查条件是否满足,返回成功或失败
动作节点 (Action) 执行具体动作,返回成功、失败或运行中
装饰节点 (Decorator) 修改子节点的行为(如重复、取反等)

执行机制

每个节点在每个 Tick 周期返回三种状态之一:

  • 成功 (Success):节点任务完成
  • 失败 (Failure):节点任务未能完成
  • 运行中 (Running):节点任务正在执行

示例:巡逻与充电行为树

            [?] 根选择节点
           / | \
         /   |   \
       /     |     \
  [→]充电  [→]跟踪  [→]巡逻
  / \       / \       |
 ○   □     ○   □     □
电量  前往  发现  跟踪  巡逻
低?  充电  目标? 目标  路线

与 FSM 的对比

  • 模块化:行为树的子树可以独立开发和复用
  • 可扩展性:添加新行为只需插入新的子树
  • 可读性:树形结构比状态转移图更易于理解
  • 反应性:每个 Tick 从根节点重新评估,天然支持优先级中断

贝叶斯推理 (Bayesian Inference)

贝叶斯推理利用贝叶斯定理在不确定性环境中更新信念 (Belief) 并做出决策。

贝叶斯定理 (Bayes' Theorem)

其中 是后验概率 (Posterior), 是似然 (Likelihood), 是先验概率 (Prior), 是证据 (Evidence)。

贝叶斯网络 (Bayesian Networks)

贝叶斯网络是一种有向无环图 (Directed Acyclic Graph, DAG),用于表示随机变量之间的条件依赖关系。联合概率分布可以分解为:

机器人中的应用

  • 目标识别:根据传感器观测更新对目标类别的信念
  • 故障诊断:根据症状推断故障原因
  • 环境分类:根据多种传感器数据推断环境类型

马尔可夫决策过程 (Markov Decision Processes, MDPs)

MDP 是处理序贯决策 (Sequential Decision Making) 问题的标准数学框架,适用于环境完全可观测的情况。

形式化定义

一个 MDP 由四元组定义:

  • :状态空间 (State Space)
  • :动作空间 (Action Space)
  • :状态转移概率,即在状态 执行动作 后转移到状态 的概率
  • :奖励函数 (Reward Function),执行动作 在状态 获得的即时奖励

最优策略

MDP 的目标是找到一个策略 ,使得累积折扣奖励最大化:

其中 是折扣因子 (Discount Factor)。最优值函数 满足贝尔曼最优方程 (Bellman Optimality Equation):

求解方法

  • 值迭代 (Value Iteration):迭代更新值函数直到收敛
  • 策略迭代 (Policy Iteration):交替进行策略评估和策略改进
  • 线性规划 (Linear Programming):将 MDP 转化为线性规划问题求解

部分可观测马尔可夫决策过程 (POMDPs)

在实际机器人系统中,机器人通常无法完全观测环境状态,此时需要使用 POMDP 框架。

形式化定义

POMDP 在 MDP 的基础上增加了观测模型:

  • :观测空间 (Observation Space)
  • :观测函数,即执行动作 到达状态 后获得观测 的概率

信念状态 (Belief State)

由于状态不可直接观测,POMDP 维护一个关于当前状态的概率分布,称为信念状态 。信念更新公式为:

其中 是归一化常数。POMDP 在信念空间上等价于一个连续状态的 MDP,可以使用值迭代的变体求解,但计算复杂度远高于标准 MDP。

近似求解方法

由于精确求解 POMDP 是 PSPACE-hard 问题,实际应用中常采用近似方法:

  • 基于点的值迭代 (Point-based Value Iteration, PBVI)
  • 蒙特卡罗树搜索 (Monte Carlo Tree Search, MCTS)
  • 在线规划 (Online Planning):仅在当前信念状态附近求解

效用理论 (Utility Theory)

效用理论提供了一个理性决策的数学框架,用于在多个可能的行动方案之间做出选择。

期望效用 (Expected Utility)

对于一个动作 ,其期望效用定义为:

其中 是执行动作 后到达状态 的概率, 是状态 的效用值。

最大期望效用原则 (Maximum Expected Utility, MEU)

理性决策者应选择期望效用最大的动作:

多属性效用 (Multi-attribute Utility)

在机器人决策中,通常需要同时考虑多个目标(如安全性、效率、能耗)。多属性效用函数将多个属性组合为一个综合效用值:

其中 是第 个属性的权重, 是状态 在第 个属性上的效用。

方法对比

方法 不确定性处理 计算复杂度 可扩展性 典型应用场景
规则系统 简单避障
决策树 一般 一般 目标分类
FSM 简单任务切换
行为树 一般 游戏 AI、服务机器人
贝叶斯推理 一般 目标识别、故障诊断
MDP 一般 导航、资源分配
POMDP 很好 很高 部分可观测任务
效用理论 多目标决策

参考文献

  1. Russell, S. & Norvig, P. (2020). Artificial Intelligence: A Modern Approach (4th ed.). Pearson.
  2. Thrun, S., Burgard, W. & Fox, D. (2005). Probabilistic Robotics. MIT Press.
  3. Colledanchise, M. & Ogren, P. (2018). Behavior Trees in Robotics and AI: An Introduction. CRC Press.
  4. Kaelbling, L. P., Littman, M. L. & Cassandra, A. R. (1998). Planning and Acting in Partially Observable Stochastic Domains. Artificial Intelligence, 101(1-2), 99-134.
  5. Puterman, M. L. (1994). Markov Decision Processes: Discrete Stochastic Dynamic Programming. Wiley.
  6. Koenig, S. & Simmons, R. G. (1998). Xavier: A Robot Navigation Architecture Based on Partially Observable Markov Decision Process Models. Artificial Intelligence and Mobile Robots, MIT Press.