文档详情

ai(ai语言)

w****i
实名认证
店铺
PDF
660.42KB
约20页
文档ID:106181092
ai(ai语言)_第1页
1/20

人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 一、概述一、概述 人工智能语言是一类适应于人工智能和知识工程 领域的、具有符号处理和逻辑推理能力的计算机程 序设计语言 人工智能语言是一类适应于人工智能和知识工程 领域的、具有符号处理和逻辑推理能力的计算机程 序设计语言 能够用它来编写程序求解非数值计算、知识处理、 推理、规划、决策等具有智能的各种复杂问题 能够用它来编写程序求解非数值计算、知识处理、 推理、规划、决策等具有智能的各种复杂问题 典型的人工智能语言主要有典型的人工智能语言主要有LISP、、Prolog、、 Smalltalk、、C++等 人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 LISP((LISt Processing)是表处理语言,是一种 函数型程序设计语言 )是表处理语言,是一种 函数型程序设计语言 PROLOG((PROgramming in LOGic)是逻辑型 程序设计语言 )是逻辑型 程序设计语言 一般来说,一般来说,LISP可以称为人工智能的汇编语言,可以称为人工智能的汇编语言, Prolog是人工智能更高级的语言。

是人工智能更高级的语言 二、人工智能语言的发展二、人工智能语言的发展 人工智能发展的初期,人工智能语言就得到了研究 和开发实际上五十多年来,先后出现过近百种AI 语言,但很多都被淘汰了 人工智能发展的初期,人工智能语言就得到了研究 和开发实际上五十多年来,先后出现过近百种AI 语言,但很多都被淘汰了 AI语言主要有三个来源:AI语言主要有三个来源: 对可计算性理论的研究对可计算性理论的研究例如,LISP语言是为 处理人工智能中大量出现符号编程问题而设计 的,其理论基础是符号集上的递归函数论 Prolog语言是为处理人工智能中大量出现的逻 辑推理问题而设计的,其理论基础是一阶谓词 演算的消解法定理证明例如,LISP语言是为 处理人工智能中大量出现符号编程问题而设计 的,其理论基础是符号集上的递归函数论 Prolog语言是为处理人工智能中大量出现的逻 辑推理问题而设计的,其理论基础是一阶谓词 演算的消解法定理证明 人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 对认知科学的研究成果对认知科学的研究成果例如产生式表示、框 架表示、语义网络表示等实际上都有其认知模 型作为背景。

学者们研究出各种各样的认知模 型,并为这些模型设计相应的知识表示语言 如OPS5是产生式表示的语言,SRL、FRL、FEST 等是框架语言例如产生式表示、框 架表示、语义网络表示等实际上都有其认知模 型作为背景学者们研究出各种各样的认知模 型,并为这些模型设计相应的知识表示语言 如OPS5是产生式表示的语言,SRL、FRL、FEST 等是框架语言 知识工程的实际需要知识工程的实际需要例如,为了开发各种领 域的专家系统而设计的包含不精确推理或不确 定推理功能,甚至包含多种不同推理机制的AI 语言,例如Loops和TUILI例如,为了开发各种领 域的专家系统而设计的包含不精确推理或不确 定推理功能,甚至包含多种不同推理机制的AI 语言,例如Loops和TUILI 近年来出现了具有人工智能特色的面向对象程序设 计,称为面向Agent的程序设计如OZ等 近年来出现了具有人工智能特色的面向对象程序设 计,称为面向Agent的程序设计如OZ等 人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 三、AI程序与传统程序之间的差别三、AI程序与传统程序之间的差别 传统程序通常把问题的全部知识以各种的模型表达在固定 程序中,问题的求解完全在程序指导下,按着预先安排好的 步骤一步一步(逐条)地执行。

传统程序通常把问题的全部知识以各种的模型表达在固定 程序中,问题的求解完全在程序指导下,按着预先安排好的 步骤一步一步(逐条)地执行 AI技术要解决的问题,往往无法把全部知识都体现在固定 的程序中人工智能程序通常需要建立一个知识库(包含事 实和推理规则),程序根据环境和所给的输入信息以及所要 解决的问题来决定自己的行动,所以它是在环境模式的指导 下的推理过程 AI技术要解决的问题,往往无法把全部知识都体现在固定 的程序中人工智能程序通常需要建立一个知识库(包含事 实和推理规则),程序根据环境和所给的输入信息以及所要 解决的问题来决定自己的行动,所以它是在环境模式的指导 下的推理过程 人工智能程序有极大的灵活性、对话能力、有自我解释能 力和学习能力这种方法对解决一些条件和目标不大明确或 不完备,即不能很好地形式化描述的非结构化问题比传统方 法好,AI程序通常采用启发式、试探法策略来解决问题 人工智能程序有极大的灵活性、对话能力、有自我解释能 力和学习能力这种方法对解决一些条件和目标不大明确或 不完备,即不能很好地形式化描述的非结构化问题比传统方 法好,AI程序通常采用启发式、试探法策略来解决问题。

人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 四、人工智能语言的特点四、人工智能语言的特点 一般来说,人工智能语言应具备如下特点:一般来说,人工智能语言应具备如下特点: 具有符号处理能力,即非数值处理能力;具有符号处理能力,即非数值处理能力; 适合于结构化程序设计,编程容易;适合于结构化程序设计,编程容易; 具有具有递归功能递归功能和和回溯功能回溯功能;; 具有人机交互能力;具有人机交互能力; 适合于推理;适合于推理; 具有把过程与说明式数据结构混合起来的能力,又具有把过程与说明式数据结构混合起来的能力,又 要有辨别数据、确定控制的模式匹配机制要有辨别数据、确定控制的模式匹配机制 人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 五、五、Prolog语言语言 Prolog是一种描述性的逻辑程序设计语言,建立在 一阶谓词逻辑的理论基础上,能够高效地实现逻辑 推理功能; 是一种描述性的逻辑程序设计语言,建立在 一阶谓词逻辑的理论基础上,能够高效地实现逻辑 推理功能; 使用使用Prolog编程,只需给出求解所需的事实和规 则, 编程,只需给出求解所需的事实和规 则, Prolog就能用通过内建的强大的就能用通过内建的强大的匹配、回溯匹配、回溯以 及 以 及递归递归等功能演绎推理求解问题。

等功能演绎推理求解问题 Prolog是专家系统程序设计采用的主要语言是专家系统程序设计采用的主要语言 人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 Prolog有许多版本有许多版本: ?最早的最早的Prolog (DOS下下) ?后来的后来的Turbo Prolog (Borland公司推出的编 译型 公司推出的编 译型Prolog) ?现在的现在的Visual Prolog (Windows/Unix等多种等多种 OS下的可视化编程语言下的可视化编程语言) ?课件邮箱里有一课件邮箱里有一swi-Prolog程序可下载程序可下载,详情 可浏览 详情 可浏览http://www.swi-prolog.org 但但Prolog的核心部分是一样的,故本课程只要求掌 握基本 的核心部分是一样的,故本课程只要求掌 握基本Prolog的程序结构及运行机理的程序结构及运行机理 人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 六、六、Prolog语言的特点语言的特点 (1)Prolog语言是一种语言是一种描述性描述性语言,只需描述待解问题中的对 象及它们之间关系的一些已知事实和规则, 语言,只需描述待解问题中的对 象及它们之间关系的一些已知事实和规则,强调描述对象之 间的逻辑关系,而不必告诉计算机运算执行的先后次序,也 即告诉计算机 强调描述对象之 间的逻辑关系,而不必告诉计算机运算执行的先后次序,也 即告诉计算机“做什么做什么”,而不是像普通程序设计语言那样告 诉计算机 ,而不是像普通程序设计语言那样告 诉计算机“如何做如何做”。

(2)Prolog语言的语言的数据和程序结构统一数据和程序结构统一 项项:所有的程序和数据均由:所有的程序和数据均由项项构成,并且都是树型结构构成,并且都是树型结构 (3)Prolog语言能够语言能够自动实现模式匹配和回溯自动实现模式匹配和回溯 (4)递归递归是是Prolog语言的重要特点之一语言的重要特点之一 一个大的数据结构常能由一小的程序来处理一个大的数据结构常能由一小的程序来处理 (5)语法简明语法简明 程序结构非常简单,由三个部分程序结构非常简单,由三个部分(事实、规则、事实、规则、事实、规则、事实、规则、 询问询问询问询问 )组成 人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 1、事实、事实 事实用来说明有关客体及客体之间的相互关系事实用来说明有关客体及客体之间的相互关系事实用来说明有关客体及客体之间的相互关系事实用来说明有关客体及客体之间的相互关系 如:如:likes((john,,mary).). 可表示可表示John喜欢喜欢Mary 谓词和确定的客体(常量)必须以谓词和确定的客体(常量)必须以小写字母开头小写字母开头, 而变量客体用 , 而变量客体用大写字母开头大写字母开头,如,如likes((john,,X).)., 注意: , 注意:最后用最后用“..” 结束。

结束 语句意义的解释由编程员所确定语句意义的解释由编程员所确定 如如likes((john,,mary),可解释成),可解释成John喜欢喜欢 Mary,也可解释成,也可解释成Mary喜欢喜欢John 人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 2、规则、规则 规则是关于客体及其关系的一般陈述,表明某些 关系的成立要依赖于其它一些关系的成立 规则是关于客体及其关系的一般陈述,表明某些 关系的成立要依赖于其它一些关系的成立 规则由规则头和规则体所组成,规则由规则头和规则体所组成,其间用符号其间用符号“:-”联 接; 联 接; 符号符号“:-”表示表示“如果如果”,,规则也用规则也用“.”结尾;结尾; 例如:例如:“如果某人是学生,则如果某人是学生,则John就喜欢该人就喜欢该人”的规 则为: 的规 则为: likes((john,,X)):-student((X).). 头头(结论结论) “如果如果” 体体(前提前提) 表示如果表示如果student((X)成立,则)成立,则likes((john,,X)就 成立 )就 成立 人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 规则的一般形式为:规则的一般形式为: p:-p1,p2,p3,……,pn.. 其中其中p1,p2,p3,……,pn均为命题,均为命题,逗号逗号“,,”表示合取表示合取。

规则的语义是:如果规则的语义是:如果“p1Λ Λp2Λ Λ……Λ Λpn”为真,则为真,则p 就为真,即规则头部就为真就为真,即规则头部就为真 在一条规则中,相同的变量代表了相同的客体,而在一条规则中,相同的变量代表了相同的客体,而在一条规则中,相同的变量代表了相同的客体,而在一条规则中,相同的变量代表了相同的客体,而 在规则的不同使用时,变量可以代表不同的客体在规则的不同使用时,变量可以代表不同的客体在规则的不同使用时,变量可以代表不同的客体在规则的不同使用时,变量可以代表不同的客体 但规则的同一次使用中,对一变量的解释必须完全但规则的同一次使用中,对一变量的解释必须完全但规则的同一次使用中,对一变量的解释必须完全但规则的同一次使用中,对一变量的解释必须完全 一致 人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言人工智能语言 Prolog程序可看作是事实。

下载提示
相似文档
正为您匹配相似的精品文档