跳转至

第 1 章:引言(Introduction)

章节作者:Mykel J. Kochenderfer 章节定位:全书的开篇章节,介绍"不确定性下的决策"问题本身、展示两个应用案例、综述设计决策智能体的方法谱系、给出全书两大部分的章节目录,并提供进一步阅读的文献指引。

1.1 Decision Making

作者开篇即指出,许多重要的问题都涉及不确定性下的决策(decision making under uncertainty),例如飞机碰撞规避、火灾扑救管理、灾害响应等。在为这些场景设计自动决策支持系统时,必须把各类不确定性来源纳入决策或推荐的考量之中;而同时兼顾系统的多个目标、处理好这些不确定性,又是非常困难的工作。本书从计算视角切入这些挑战,先阐述决策模型与算法背后的理论,再用一组真实问题把理论串起来。

本章的目标是引出"不确定性下决策"这一问题、梳理可能的求解方法空间,并概述本书剩余部分的内容。1.1 节先定义"智能体(agent)"与"环境(world)"两个核心概念。智能体是基于对环境的观察而采取行动的事物,可以是物理实体(如人或机器人),也可以是纯软件实现的非物理实体(如决策支持系统)。图 1.1 描绘了智能体与环境的交互遵循"观察—行动(observe–act)"循环。

具体而言:在时刻 \(t\),智能体接收对环境的一个观察(observation)\(o_t\)。观察可以来自生物感知过程(如人的视觉),也可以来自传感器系统(如空管系统的雷达)。但观察通常是不完整的、带有噪声的:人可能看不到一架正在接近的飞机,雷达也可能因电磁干扰而漏检。智能体随后通过某种(后文将讨论的)决策过程选择一个行动(action)\(a_t\),例如发出告警;该行动对环境的影响通常是非确定性的(nondeterministic)。

本书的关注点是那些"能够智能地与世界交互以随时间达成其目标"的智能体(intelligent agents)。形式化地,给定过去时刻的观察序列 \(o_0, \dots, o_t\) 以及关于环境的先验知识,智能体必须选择一个能最好地实现其目标的行动 \(a_t\)

1.2 Example Applications

作者强调"考虑不确定性"在很多问题中都是关键。本节勾勒两个具体案例,它们在本书后文都会被重新讨论,作为理论的应用实例。

1.2.1 Traffic Alert and Collision Avoidance System

第一个例子是交通告警与防撞系统(Traffic Alert and Collision Avoidance System, TCAS)。TCAS 是机载防撞系统,已被强制要求安装于最大起飞质量超过 5700 kg 或获准载客超过 19 人的所有飞机之上。系统向飞行员发出"解脱建议(resolution advisories)",指示其调整爬升率或下降率以避免碰撞;建议既以语音方式在驾驶舱播报,也以可视化方式显示在仪表盘上。

图 1.2 展示了垂直速度指示器上的解脱建议样例。白色箭头指向 0 ft/min,表示当前垂直速率;垂直速度刻度单位是"千英尺/分钟"。绿色弧形区域(图中为 1500 ft/min 到 2000 ft/min)告诉飞行员应当把爬升率调整到该范围内。红色方块和白色菱形分别表示入侵机的相对横向位置,形状下方的数字表示入侵机相对于本机的相对高度(百英尺)。

TCAS 的监视系统通过无线电向其他飞机发送询问信号,并监听对方机载信标的应答;通过测量应答时延可以推断本机到对方的距离。TCAS 装有多根天线,依据应答时延的微小差异可推断出入侵机的方位角(bearing angle)。无线电应答中同时也包含对方飞机的高度信息。TCAS 的逻辑依据对距离、方位角和高度的估计来决定发出何种解脱建议。

作者把这一场景映射回 1.1 的形式化框架:在此例中 TCAS 就是智能体,环境则由相遇过程中的飞机和飞行员共同组成;观察是距离、方位角、高度;TCAS 可选的行动是爬升或下降速率指令。系统的行动对环境的影响并非确定性的——雷达数据表明,飞行员对解脱建议的响应存在显著差异。

作者提醒读者:尽管 TCAS 看起来是一个相当简单的决策支持系统,但它实际上是几十年精心设计的结果。在观察存在传感器不完备性、未来航迹存在不确定性的双重作用下,何时延迟一次建议、何时在相遇中途修改指令速率,都远非显而易见;而一旦决策失误,后果可能涉及数百名乘客的生命。系统必须在保证极高的安全性、可操作性的同时,不扰乱正常空中交通秩序——这本身就是极具挑战性的工程约束。

1.2.2 Unmanned Aircraft Persistent Surveillance

第二个例子是无人机的持续监视任务。无人机可以在感兴趣的区域(如森林火灾现场或战场)上空提供持久监视。为支持长时间执行,一种可行方案是部署一支地理上分布的、由低成本无人机组成的机队;驱动这些飞机的算法必须考虑通信约束和飞机自身的健康状态。

构建此类自主系统面临若干挑战。其一,部分飞机需要被分配到"通信中继区",为控制基站与任务区域之间转发通信——没有中继,关键任务数据可能根本无法回传和处理。其二,飞机受燃料约束,在通信区或监视区都只能活动有限时间就必须返航,而燃料消耗率是随机的(stochastic)。其三,飞机还必须对传感器和执行器故障具备鲁棒性:任务过程中传感器或执行器可能在任何时刻意外失效——传感器失效的飞机在监视区已无用,但仍可充当通信中继;而执行器失效的飞机则任何任务都做不了,必须返航修理。在如此严苛的约束下构建一支能以高可靠性完成任务的机队,是极具挑战性的工作。

1.3 Methods for Designing Decision Agents

设计决策智能体的方法有很多种;不同应用场景下,某些方法会比另一些更为合适。这些方法的核心差异在于"设计者承担的责任"与"留给自动化完成的任务"之间的分配。本节简要综述一组代表性方法。作者特别声明:本书主要聚焦于后两种方法——规划(planning)与强化学习(reinforcement learning),但其中部分技术也会涉及监督学习和优化的元素。

1.3.1 Explicit Programming

最直接的设计方法是:枚举智能体可能遇到的所有场景,并显式编程告诉它在每种场景下应当如何行为。这种"显式编程"在简单问题上效果尚可,但它把"提供完整策略"的巨大负担压在了设计者身上。为降低这种负担,研究者已提出了多种智能体编程语言和框架,使智能体编程更容易。

1.3.2 Supervised Learning

在某些问题中,与其写程序让智能体遵循,不如直接"示范给它看"来得更方便:设计者提供一组训练样例,由自动学习算法完成从样例到策略的泛化。这种做法称为监督学习(supervised learning),在分类问题中应用广泛。当被用于学习"从观察到行动"的映射时,这一技术又被称为"行为克隆(behavioral cloning)"。行为克隆在以下情形下效果良好:专家设计者确实知道一组具有代表性的样例场景中"最佳行动"是什么。作者也指出其局限:尽管学习算法众多,但它们在新场景下一般无法超越人类设计者。

1.3.3 Optimization

第三种方法由设计者指定"可能的决策策略空间"以及"待最大化的性能度量"。评估一个决策策略的性能通常需要把该策略放进一批仿真中跑一遍,再由优化算法在这一空间内搜索最优策略。当策略空间维度较低、性能度量又不存在大量局部最优时,多种局部或全局搜索策略都可使用。作者强调:尽管运行仿真通常需要已知一个动态模型(dynamic model),但该模型在搜索最优策略时并不被用于指导搜索本身——这在复杂问题中可能很重要(即模型信息没有被充分利用)。

1.3.4 Planning

规划(planning)是一类特殊的优化,但它利用问题的动态模型来指导搜索。规划问题已有相当广泛的文献,其中很多聚焦于确定性场景。在某些问题中,用确定性模型对动态过程做近似是可行的;这能让我们使用那些更易扩展到高维问题的方法。而在另一些问题中,"考虑未来的不确定性"则是绝对关键的。本书聚焦的,恰恰是这类"必须把不确定性纳入考量"的问题。

1.3.5 Reinforcement Learning

强化学习(reinforcement learning)则进一步放宽了规划中"模型事先已知"的假设——决策策略是在智能体与世界交互的过程中、在与世界的真实接触中学到的。设计者只需提供性能度量,至于如何优化智能体的行为,则交给学习算法。强化学习中一个有意思的复杂性在于:智能体所选行动不仅影响它达成目标的即时成败,还影响它对环境的"学习"——即它能否识别出环境特征并加以利用。

1.4 Overview

本书分为两大部分:理论篇与应用篇。

理论篇的组织如下。第 2 章 Probabilistic Models 讨论如何表示不确定性,引入贝叶斯网络(Bayesian networks)作为刻画变量间概率关系的图模型,介绍基于该表示的推理算法以及如何从数据中学习其结构与参数。第 3 章 Decision Problems 介绍效用理论(utility theory)作为理解"不确定性下最优决策"的框架;该章完全聚焦于单步决策(single shot decisions),并提出决策网络(decision networks)作为对贝叶斯网络的推广——其中加入了决策节点与效用节点;该章还讨论多智能体(且利益可能相互冲突)情形下的决策。第 4 章 Sequential Problems 讨论在"行动结果具有概率性"的前提下如何随时间作决策,引入马尔可夫决策过程(Markov decision processes)作为此类问题的建模方式,并展示用动态规划(dynamic programming)计算最优解的方法;由于很多问题复杂到难以精确求解,该章还讨论多种近似方法,如在线方法与直接策略搜索。第 5 章 Model Uncertainty 引入"动态模型不精确已知"时序贯问题求解所面临的挑战,综述多种"探索—利用"权衡的方法,并概述基于模型与无模型两类方法,最后讨论如何在有限环境交互下做泛化。第 6 章 State Uncertainty 引入部分可观测马尔可夫决策过程(partially observable Markov decision process, POMDP),用以刻画"观察不完备带来的不确定性";该章介绍离线与在线两类求解方法。第 7 章 Cooperative Decision Making 引入"多个智能体在协作环境中相互影响"的决策问题,介绍该类问题的一些性质、重要的子类,以及精确与近似求解算法。

应用篇展示理论篇所介绍的概念如何被用于真实问题。第 8 章 Probabilistic Surveillance Video Search 讨论一种基于属性的概率化行人搜索方法,介绍其概率外观模型以及如何将该模型用于学习与推理。第 9 章 Dynamic Models for Speech Applications 概述理论篇中的概率方法如何推动了语音识别、主题识别、语言识别、说话人识别与机器翻译等领域的重大进展。第 10 章 Optimized Airborne Collision Avoidance 解释如何把防撞问题建模为一个 POMDP,并展示如何用动态规划产出"更安全、且对空域干扰更少"的防撞系统。第 11 章 Multiagent Planning for Persistent Surveillance 描述如何把前文算法适配到"由无人机机队监视感兴趣区域"的问题上。第 12 章 Integrating Automation with Humans 作为全书收尾,综述"把决策支持系统与人类操作员集成"所面临的多种挑战,并给出有效实施的策略。

作者补充说明:每一章都附有独立的参考文献部分;全书末尾附有重要术语与缩略语的索引。

1.5 Further Reading

作者给出进一步阅读的建议:Russell 与 Norvig 的经典教材 Artificial Intelligence: A Modern Approach 是了解构建智能体不同方法的优秀入门综述(参考文献 [1])。本书主要聚焦于规划与强化学习;理论部分各章会提供这两个方向的进一步阅读指引。作者随即分类指引:当问题足够简单、不必诉诸这些"高级方法"时,使用某种面向智能体的编程语言显式编程或许最佳(参考文献 [2]);当专家能够示范系统在各种情形下的行为时,监督学习可能是合适的;近年来多本教材从概率视角深入覆盖了监督学习(参考文献 [3]–[5]);通用优化方法可参考多本教材(参考文献 [6]–[9]);确定性规划方法可参考 Automated Planning: Theory and Practice([10])与 Planning Algorithms([11])。作者最后指出:本章讨论的两个示例应用,将分别在第 10 章和第 11 章中重新展开。

本章个人批注

作为全书开篇,本章承担两个职能:一是给出全书的问题域(不确定性下的决策)以及基本建模语言(智能体、观察、行动、目标),二是为读者铺设"五种设计方法"的地图。我个人读下来感觉这一章的"骨架性"非常强——它几乎没有给出任何具体的算法或公式,但读完之后,整本书剩余 11 章的方向感基本建立:1.3.1–1.3.5 五种方法按"设计者承担多少责任"做了一条从强(显式编程)到弱(强化学习)的谱系,特别适合在阅读后文时回头对照"当前章节属于谱系中的哪一段"。

TCAS 与无人机监视两个案例的引入非常工整:前者是"单智能体、单步动作但需在不确定观测下决策"的典型,后者是"多智能体协同 + 随机资源消耗 + 故障鲁棒性"的典型。值得注意的是,作者在介绍 TCAS 时反复强调"看似简单的系统实则花了几十年"——这种"复杂系统的简洁外观 vs. 内里不确定性"的张力,正是后续 12 章反复要处理的母题。

第 1.4 节的章节目录值得一记:理论篇 6 章(概率模型 → 单步决策 → 序贯决策 → 模型未知 → 状态观测不完备 → 多智能体协作)实际上是一条非常自洽的"建模不确定性逐步增强"链条;应用篇 5 章则横跨计算机视觉、语音、空管、无人机、人机集成。这一结构在阅读后文时是一个很好的"导航图"。

关于 Further Reading:作者没有把 5 种方法对应的参考一一展开到 5 节内,而是统一放在 1.5——这意味着读者在选择后续精读顺序时需要回到这里查目录。我个人打算把 [1]、[3]、[4]、[11] 作为长期参考位,([1] 是 AI 通识,[3]、[4] 是贝叶斯/概率机器学习经典,[11] 是规划算法经典),其余按需取用。

与上下章的衔接(一段话)

本章是全书 12 章中的第 1 章,也是理论篇的引子;它之后紧跟的第 2 章 Probabilistic Models 将进入"如何表示不确定性"这一具体话题,对应 1.3.2 监督学习小节提到的"概率视角"以及 1.4 节对第 2 章"贝叶斯网络"的预告。换言之,1.1–1.3 节建立了"问题 + 方法谱系"的语言,1.4 节给出了后续 11 章的索引,1.5 节给出补充文献;全章不进入任何具体算法的推导,而是把读者放到"即将用 11 章篇幅展开的整张地图"之前。从书的整体组织看,作者刻意把"理论篇"放在应用篇之前,但同时又在前两节给出两个贯穿全书的真实案例(TCAS、无人机监视),这意味着 1 章承担了"理论—应用"两部分的桥梁功能——读者在读完第 11 章回看本章时,会发现这两个案例被分别展开为完整的算法实现,正是这种"先抛钩子,再兑现"的结构让全书读起来前后呼应。