在《人工智能:现代方法》(第 3 版)一书的第 2.4 节(第 46 页)中,Russell 和 Norvig 写道
人工智能的工作是设计一个实现代理功能的代理程序——从感知到动作的映射。
之后,在第 2.4.1 节中,他们写道
请注意将当前感知作为输入的代理程序与以整个感知历史为输入的代理函数之间的区别。
为什么代理程序只接受当前的感知?代理程序不就是代理功能的实现吗?
那么,代理函数和代理程序(就感知序列而言)有什么区别?
在《人工智能:现代方法》(第 3 版)一书的第 2.4 节(第 46 页)中,Russell 和 Norvig 写道
人工智能的工作是设计一个实现代理功能的代理程序——从感知到动作的映射。
之后,在第 2.4.1 节中,他们写道
请注意将当前感知作为输入的代理程序与以整个感知历史为输入的代理函数之间的区别。
为什么代理程序只接受当前的感知?代理程序不就是代理功能的实现吗?
那么,代理函数和代理程序(就感知序列而言)有什么区别?
看起来好像在“纯函数”的数学(或函数式编程)意义上使用了“函数”,即它没有状态或副作用。因此该函数不能在任何地方存储以前的感知,因此每次都将整个历史感知序列视为传递给该函数。
相反,“程序”的概念似乎允许状态/副作用,因此假设早期的感知是根据需要记忆的(或者它们以其他方式更新了程序中使用的变量)。
“功能”概念是概念上更清晰的概念,因为“程序”版本总是可以抽象为功能版本。感知历史的哪些方面恰好被“程序”版本缓存只是一个实现细节。