人工智能中的框架问题

2025 年 4 月 1 日 | 阅读 7 分钟

人工智能中的框架问题出现在如何表示和更新对不断变化的世界的知识,特别是当试图推理行动后果的基础之上。框架问题最初是由20世纪60年代的人工智能研究人员提出的,其核心问题是:人工智能代理在采取行动时,如何确定环境中哪些东西发生了变化,同样重要的,哪些东西没有变化。

在一个字面上数百万种事物都可能随每一次事件而改变的世界里,人工智能去一一检查所有这些变化是不合理的,也是不可能的。如果一个机器人从桌子上推下一个杯子到架子上,那么它需要知道杯子现在的位置不同了,但是其他成百上千的事物——例如杯子的颜色,以及其他物体的摆放位置——都没有改变。框架问题的关键在于如何在不造成计算过载的情况下实现这些更新。

起源

框架问题最初是由从事逻辑基础表示研究的人工智能研究人员提出的,例如John McCarthy和Patrick J. Hayes。他们使用了一种称为“情境演算”(situation calculus)的形式系统来描述行动及其后果。情境演算需要明确指定每个行动的效果;这就带来了一个主要挑战:对于任何行动,系统都必须决定哪些会改变,哪些不会改变。这在较小的环境中是可行的,但在较大的环境中是不可行的,因为可能存在无数保持不变的事物。

例如,假设我们有一个被编程为将一个物体从一个房间拿到另一个房间的机器人。我们需要正式解释这个行动

  • 物体的新位置
  • 环境的所有其他属性;物体颜色、重量、其他物体的位置保持不变。

除非这种“不变性”被明确表示出来,否则它可能会假设所有未指定的特征都可能改变,因此,对于每一个行动,都可能产生如此多的陈述,以至于无法管理。

定义

本质上,框架问题是如何在给定动作的情况下,有效地表示不变性。这是一个关于通过区分动作改变了什么,以及动作没有改变什么来更新世界模型的问题。框架问题对于依赖逻辑的系统来说非常重要。原因在于,确定规则可能是详尽的,并导致冗长且难以处理的推理系统。

逻辑人工智能中的框架问题

总的来说,在基于规则的系统中,所有动作都必须根据以下几点来定义:

  • 前提条件:行动发生时必须满足的条件。
  • 效果:采取行动的改变或结果。
  • 不变性:由于行动而未改变的状态方面。

假设一个人工智能代理应该模拟打开房间灯的动作。

  1. 更新世界模型以反映灯是亮的这一事实。
  2. 保持房间内其他所有事物的状态不变,例如物品的位置。

要做到这一点,人工智能系统需要解决两个问题:

  • 指定不变性:如果没有明确的规则说明哪些事物不会改变,人工智能可能会推断出未指定的属性也确实改变了。这可能导致世界模型中更新不正确甚至无关紧要。
  • 计算密集度:为每个动作列出所有这些条件或“框架公理”会产生描述的爆炸性增长,因为每个附加动作都需要一个巨大的列表来说明哪些事物没有改变。

规划中的框架问题

人工智能规划构建一个计划——一系列将初始状态转化为目标状态的动作。在计划生成或执行过程中,人工智能规划器会以两种方式遇到框架问题:

  1. 建模不变性:规划器必须建模环境中发生了什么变化,并且对于每个动作,建模什么没有发生变化。如果没有管理不变性的机制,规划器很可能会被无关紧要的细节所淹没,因为它必须跟踪计划步骤之外的环境细微变化。
  2. 关于状态转换的有效推理:理论上,每个动作都可能改变环境的每个特征。这导致了需要考虑的状态转换数量呈指数级增长。框架问题使得以仅限于与所考虑的因素相关的环境部分的方式来构建这些状态更新变得具有挑战性。这使得规划的计算量大大增加。

框架问题如何使人工智能规划复杂化?

  • 计算开销增加:规划本质上是对行动后果的预演,以确定实现目标的最佳途径。例如,如果人工智能规划器必须在这样做时确定所有可能的状态变化,计算开销将大大增加,从而减慢规划速度。
  • 条件逻辑的复杂性:需要分析每个动作的前提条件和效果,而指定不变性的要求使得这变得很麻烦。增加动作和条件数量会增加这种条件逻辑的复杂性。
  • 计划不一致的风险:如果规划器未能有效地识别不变性,它可能会假设所有不相关的方面都发生了变化;因此,它会生成错误且不一致的计划。

克服人工智能规划中框架问题的策略

人工智能研究人员已经构思了几种策略来有效地解决规划中的框架问题。这些策略通常与逻辑基础系统中遇到的策略非常接近,但更适合顺序决策的需求。

动作表示简化

  1. STRIPS (Stanford Research Institute Problem Solver):STRIPS规划语言是人工智能规划领域最早的形式化系统之一,它使用一种包含显式前提条件和效果的动作结构。因此,它对规划器需要更新的信息施加了自我限制。尽管STRIPS并未完全解决框架问题,但通过只考虑与信息细节相关的每个动作,至少可以降低复杂性。
  2. 后继状态公理:情境演算框架也依赖于后继状态公理来封装变化,从而使规划器能够得出只有某些属性会改变,而其他属性不会改变的结论。通过后继状态公理,规划器可以处理不那么详细的模型,因为它避免了显式声明所有不变性的需要。
  3. 非单调推理和默认假设:非单调推理允许人工智能规划器假定条件在未直接作用时保持不变;这对某些规划系统很有用。这种启发式驱动的方法通过仅在必要时将不变性视为默认假设来减轻框架规范的负担。
  4. 分层任务网络(HTN):在HTN中,规划根据子任务创建任务层级。这会将任务分解成规划器可以关注每个子任务内变化的片段;从而将不变性局部化到特定任务,这使得关于状态转换的推理更加容易。
  5. 学习和概率方法:较新的规划系统使用机器学习和概率推理来推断通常会发生变化或保持不变的模式,从而使规划器能够通过做出概率性假设而不是关于不变性的硬编码逻辑来从过去的经验中进行泛化。

应用

  1. 定义:框架问题是指能够识别变化场景中哪些部分在变化,哪些部分保持不变,以便人工智能能够有效地做出决策的能力。
  2. 机器人学:机器人必须仅更新状态的相关变化,例如移动的可移动物品的新位置,而无需重新计算环境的其余部分。
  3. 自动驾驶汽车:汽车需要跟踪附近的移动物品,例如其他汽车,但假定静态物品(如交通标志)不会改变,以便及时做出安全决策。
  4. 虚拟助手:虚拟助手仅根据用户的需求更新信息,例如在特定房间播放音乐,而不会改变其他静态设置。
  5. 游戏和模拟:集成到游戏和模拟中的人工智能会更新诸如玩家位置或敌人反应等部分,但会忽略静态元素,以确保游戏的流畅进行。
  6. 工业自动化:智能工厂的AI系统会更新机器活动或库存水平的变化等信息,而无需重新查看不相关的设备状态。
  7. 医疗监控:医疗AI会监控高价值患者数据(如生命体征)的变化,而忽略稳定参数。当关键数据发生变化时,它应实时发出警报。
  8. 金融交易:交易系统会监控市场数据的变化,例如股票价格的变化,而忽略稳定数据,以帮助加快决策速度。

结论

框架问题是任何在动态环境中运行的人工智能系统面临的最严峻的挑战之一,其中识别变化与不变性的相关性至关重要。框架问题的解决方案通过将系统聚焦于重要信息并排除不相关细节,解决了人工智能应用——如机器人、无人驾驶汽车、虚拟助手、医疗保健——的问题。成功管理该问题可以使人工智能系统在实际应用中响应更快、计算效率更高、也更可靠。随着人工智能的不断发展,解决这类问题对于开发能够精确、敏捷地驾驭复杂、动态变化环境的系统仍然至关重要。