为什么Lisp用于AI?
我一直在学习Lisp扩展我的视野,因为我听说它被用于AI编程。 在做了一些探索之后,我还没有找到AI语言的例子或任何可以使它更倾向于使用的语言。
Lisp过去是否使用过,因为它可用,还是有一些我只是失踪?
直到20世纪80年代末,Lisp才被用于AI。 然而在80年代,Common Lisp作为“AI语言”被超卖到了商业世界。 反弹使大多数AI程序员在C ++工作了几年。 现在,原型通常是用年轻的动态语言(Perl,Python,Ruby等)编写的,成功研究的实现通常使用C或C ++(有时是Java)。
如果你对70年代好奇......好吧,我不在那里。 但我认为Lisp在AI研究方面取得成功有三个原因(按重要性排序):
我没有Peter Norvig的旧AI书,但它应该是学习在Lisp中编写AI算法的好方法。
免责声明:我是计算语言学的研究生。 我知道自然语言处理的子领域比其他领域好得多。 也许Lisp在其他子领域使用得更多。
Lisp被用于AI,因为它支持实现用符号计算的软件。 符号,符号表达式和计算是Lisp的核心。
用符号计算的典型AI领域是:计算机代数,定理证明,计划系统,诊断,重写系统,知识表示和推理,逻辑语言,机器翻译,专家系统等等。
因此,这些领域中许多着名的AI应用程序都是用Lisp编写的,这并不奇怪:
这些领域中有数千个应用程序是用Lisp编写的。 对于那些人来说非常普遍的是,他们需要符号处理领域的特殊能力。 一个实现了在Lisp之上的特殊语言,这些语言在这些领域有特殊的解释器/编译器。 Lisp允许为符号数据和程序创建表示,并可以实现各种机制来操纵这些表达式(数学公式,逻辑公式,计划等)。
(请注意,AI中也使用了很多其他通用编程语言,我试图回答为什么特别是AI中使用Lisp)。
其中一个原因是,它允许您使用特定于您的域的结构来扩展语言,从而使其成为特定于域的语言。 这种技术非常强大,因为它可以让你推理你正在解决的问题,而不是关于洗牌的问题。
链接地址: http://www.djcxy.com/p/60929.html