Artificial intelligence 结构化、因子化和原子表示法?

Artificial intelligence 结构化、因子化和原子表示法?,artificial-intelligence,Artificial Intelligence,我目前正在读《人工智能:现代方法》。尽管术语中的因数、结构化和原子表示法令人困惑,但它们到底意味着什么 关于编程 谢谢我对罗素和诺维格所画的线并不感到兴奋,但是:一般来说,当你使用人工智能技术解决问题时,你会有一个编程的情况模型。原子/因子/结构是对这些模型从最小到最大的“内部结构”的定性度量 原子模型没有内部结构;该状态与您要查找的内容匹配或不匹配。例如,在滑动瓷砖拼图中,您要么拥有正确的瓷砖对齐方式,要么没有 考虑因素的模型具有更多的内部结构,尽管具体内容取决于问题。通常情况下,您正在查看感

我目前正在读《人工智能:现代方法》。尽管术语中的因数、结构化和原子表示法令人困惑,但它们到底意味着什么

关于编程


谢谢

我对罗素和诺维格所画的线并不感到兴奋,但是:一般来说,当你使用人工智能技术解决问题时,你会有一个编程的情况模型。原子/因子/结构是对这些模型从最小到最大的“内部结构”的定性度量

原子模型没有内部结构;该状态与您要查找的内容匹配或不匹配。例如,在滑动瓷砖拼图中,您要么拥有正确的瓷砖对齐方式,要么没有

考虑因素的模型具有更多的内部结构,尽管具体内容取决于问题。通常情况下,您正在查看感兴趣的变量或性能指标;在一个滑动拼图中,这可能是一个简单的启发式方法,如“不合适的瓷砖数量”或“manhatten距离之和”

结构化模型还有更多;同样,什么取决于问题,但它们通常是模型组件与自身的关系,或者模型组件与环境组件的关系


这很容易,特别是当看到像滑动瓷砖这样非常简单的问题时,不自觉地自己做所有艰苦的智力工作,一眼就可以,忘记你的模型没有你所有的洞察力。例如,如果你要制作一个程序来对滑动拼图进行图形搜索技术,你可能会制作一个引擎,将一个拼图状态和一个动作作为输入,并由此生成一个新的拼图状态。谜题状态仍然是原子状态,但程序员正在使用更详细的模型将这些输入和输出链接在一起

我喜欢诺瓦克的解释。我的2美分是为了澄清分解的与结构化的之间的区别。以下是定义摘录:

  • 原子表示法是将每个状态视为一个原子的表示法 黑匣子
  • 系数表示法是一种状态为 由一组特征定义
  • 结构化表示是以对象及其关系的形式表示状态的表示。这种关于关系的知识叫做事实
示例:

atomicState == goal: Y/N  // Is goal reached?
这是我们能问的唯一一个关于黑匣子的问题

factoredState{18} == goal{42}: N  // Is goal reached?
diff( goal{42}, factoredState{18}) = 24 // How much is difference?
// some other questions. the more features => more type of questions
最简单的考虑因素的状态必须至少有一个特性(某种类型),它使我们能够提出更多的问题。通常,它定义了状态之间的数量差异。该示例有一个整数类型的功能

11grade@schoolA{John(Math=A-), Marry(Music=A+), Job1(doMath)..} == goal{50% ready for jobs}
这里的关键是结构化表示,允许在搜索时进行更高级别的形式逻辑推理。有关介绍信息,请参阅


这一主题很容易让实践者(尤其是初学者)感到困惑,但对于比较不同的目标搜索算法非常有意义。这种“世界”状态表示分类在逻辑上将算法分为不同的类。在学术研究中划清界限,在学术推理中进行比较是非常有用的。

他们的写作方式很隐晦。因此,原子模型是一种缺乏代理可能需要的详细程度的环境结构。i、 e.在定义问题定义时,由于不确定性,无法识别从一个城市到另一个城市的行驶因素,如汽车的燃油表和加速计,对吗?因此,因子表示使这些细节可供代理使用。那么,结构化模型是否定义了环境中动作和状态之间的关系呢?在我看来,这是一本非常有说服力的书中的一个粗略的补丁。这是一个鸡和蛋的问题,在你看到他们的框架被应用之前,你可能无法理解他们的框架;但是仅仅看到它的应用,你可能不会想到这个框架。因此,他们尽了最大的努力——尽早指出,给出一些例子,然后在后面的章节中详尽地讨论这些例子。