2. 自动驾驶智能体基础
自动驾驶智能体并不是一个“单次输入、单次输出”的模型,而是一个持续运行在真实世界中的闭环系统。它需要在毫秒级时间内完成从传感器数据到车辆动作的转换,同时还要在更长的时间尺度上保持对场景、任务和自身状态的理解。理解智能体架构以及感知-决策-规划-控制链路,是理解记忆与上下文管理为何必要、以及它们应嵌入在何处的前提。
一、智能体架构:从“模块堆叠”到“闭环认知体”
典型的自动驾驶智能体可以抽象为四层结构:感知层负责将原始传感器信号转化为结构化环境描述;认知与决策层负责理解场景、评估风险、选择行为;规划层负责生成时空轨迹;控制层负责将轨迹转化为油门、刹车、转向等执行指令。四层之间不是单向流水线,而是带有反馈的闭环。
在这个架构中,记忆与上下文并非独立模块,而是横切关注点:它们为感知提供时序一致性,为决策提供历史依据,为规划提供任务延续性,为控制提供状态连续性。没有记忆的智能体,每一帧都像“第一次上路”;没有上下文的智能体,无法区分“正常跟车”与“前车突然急刹”。
二、感知-决策-规划-控制链路:每一环都在“消费”和“生产”上下文
这条链路不是简单的数据传递,而是上下文不断被消费、更新和传递的过程。可以用一个具体场景来理解:车辆在城市道路行驶,前方右侧有公交车停靠。
- 感知层输出公交车位置、速度、朝向,以及本车与它的相对距离。此时上下文包括:公交车是否打左转向灯、是否有人从车头走出、本车当前车道与相邻车道关系。
- 决策层结合历史信息判断:公交车是“临时停靠”还是“即将起步”。如果过去 3 秒它一直静止且车门未开,风险等级较低;如果车门打开且有行人出现,风险等级升高。这里消费的是时序记忆和场景经验。
- 规划层根据决策结果生成轨迹:是保持跟车、向左变道,还是减速等待。规划需要上下文中的任务目标(如“前方 500 米右转”)和地图先验(右侧车道是否允许变道)。
- 控制层将轨迹转化为执行指令,同时需要状态记忆:当前车速、转向角、制动压力,避免指令突变导致乘坐不适。
核心结论:记忆与上下文不是链路的“第五层”,而是贯穿四层的“神经系统”。它决定了每一层能否在时间维度上保持连贯、在任务维度上保持目标、在安全维度上保持可解释。
三、记忆与上下文在链路中的具体位置
为了更工程化地理解,可以把记忆与上下文分为三类,并对应到链路的不同位置:
| 类型 | 主要内容 | 主要服务层 | 典型时间尺度 |
|---|---|---|---|
| 工作记忆 | 当前帧目标列表、自车状态、最近决策、任务目标 | 感知、决策、规划 | 毫秒~秒级 |
| 情景记忆 | 最近一段时间的轨迹、交互事件、风险片段 | 决策、规划 | 秒~分钟级 |
| 长期记忆 | 地图先验、驾驶风格、规则知识、场景经验 | 决策、规划、控制 | 天~月级 |
工作记忆是“现在正在发生什么”,情景记忆是“刚刚发生了什么”,长期记忆是“通常会发生什么”。三者共同构成智能体的上下文窗口。上下文窗口越大,智能体越“有经验”,但同时也带来计算和存储压力,因此需要工程上的取舍与压缩。
四、案例与场景:没有记忆会发生什么
假设一辆自动驾驶车辆在路口等待红灯,前方有一辆大型卡车遮挡视线。绿灯亮起后,卡车缓慢起步。
- 无记忆版本:感知每帧独立输出,卡车时有时无,决策层无法判断“前方是否还有车”,可能误判为畅通而加速,造成追尾风险。
- 有记忆版本:工作记忆保留卡车 ID 和位置,情景记忆记录“卡车已静止 20 秒”,长期记忆提供“路口大车遮挡需谨慎”的经验。决策层据此选择“延迟起步、保持安全距离”,规划层生成更保守的轨迹。
工程提示:在实车系统中,记忆与上下文通常以“状态缓存 + 事件队列 + 知识库”三种形态存在。状态缓存服务实时控制,事件队列服务决策复盘,知识库服务长期策略。三者需要统一时间戳和坐标系,否则会出现“记忆错位”。
五、常见误区与复盘
- 误区一:把记忆当成“日志”。日志是事后记录,记忆是实时参与决策的活数据。记忆必须可检索、可更新、可过期。
- 误区二:上下文窗口越大越好。过大的窗口会引入噪声和延迟,关键是要做“相关性过滤”和“重要性衰减”。
- 误区三:只在决策层加记忆。感知层需要时序一致性,控制层需要状态连续性,记忆应贯穿全链路。
- 误区四:忽略时间对齐。不同传感器、不同模块的时间戳不一致,会导致记忆与当前帧错位,必须做统一时基和对齐。
# 典型上下文缓存结构(示意)
context = {
"timestamp": 1710000000.123,
"ego_state": {"speed": 8.5, "steer": 0.02, "brake": 0.0},
"objects": [
{"id": "bus_01", "type": "bus", "x": 12.3, "y": -1.8, "vx": 0.0, "vy": 0.0,
"history": [{"t": -3.0, "x": 12.1}, {"t": -2.0, "x": 12.2}, {"t": -1.0, "x": 12.3}]}
],
"task": {"destination": "right_turn_500m", "lane": "current"},
"risk_level": "medium",
"memory_refs": ["scene_bus_stop", "rule_school_zone"]
}
理解智能体架构与链路,是后续学习记忆存储、上下文压缩、检索增强和遗忘机制的基础。只有先看清“记忆在哪里起作用”,才能设计出真正服务于自动驾驶闭环的上下文管理系统。