人工智能语言

人工智能语言

ID:20451948

大小:107.00 KB

页数:8页

时间:2018-10-13

人工智能语言_第1页
人工智能语言_第2页
人工智能语言_第3页
人工智能语言_第4页
人工智能语言_第5页
资源描述:

《人工智能语言》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、人工智能语言——PROLOG张家华(浙江师范大学教育技术系) 摘要 Prolog是人工智能语言的一个典型代表。本文简要阐述了人工智能语言及其特点,并通过实例介绍了Prolog语言及其基本结构。关键词 人工智能语言 Prolog 在国家高中信息技术课程新标准的《人工智能初步》选修模块中,要求学生通过学习,“了解一种人工智能语言的基本数据结构和程序结构,掌握相关概念,知道人工智能语言的主要特征。……初步学会使用该语言设计程序求解简单问题,并能够上机调试、执行相应的程序。”事实上,广大的中小学信息技术教师对于Basic、C等过程式程序设计语言大多比较熟悉。那么,什么是人工智能语言?Prol

2、og有哪些特点?目前常用的软件版本有哪些?这就是本文准备回答的问题。一、什么是人工智能语言人工智能(AI)语言是一类适应于人工智能和知识工程领域的、具有符号处理和逻辑推理能力的计算机程序设计语言。能够用它来编写程序求解非数值计算、知识处理、推理、规划、决策等具有智能的各种复杂问题。典型的人工智能语言主要有LISP、Prolog、Smalltalk、C++等。一般来说,人工智能语言应具备如下特点:·具有符号处理能力(即非数值处理能力);·适合于结构化程序设计,编程容易;·具有递归功能和回溯功能;·具有人机交互能力;·适合于推理;·既有把过程与说明式数据结构混合起来的能力,又有辨别数据、

3、确定控制的模式匹配机制。人们可能会问,用人工智能语言解决问题与传统的方法有什么区别呢?事实上,在解决一些复杂的、非结构化的问题时,人工智能方法与传统方法有着差别。—8—传统方法通常把问题的全部知识以各种的模型表达在固定程序中,问题的求解完全在程序制导下按着预先安排好的步骤一步一步(逐条)执行。解决问题的思路与冯·诺依曼式计算机结构相吻合。当前大型数据库法、数学模型法、统计方法等都是严格结构化的方法。对于人工智能技术要解决的问题,往往无法把全部知识都体现在固定的程序中。通常需要建立一个知识库(包含事实和推理规则),程序根据环境和所给的输入信息以及所要解决的问题来决定自己的行动,所以它是

4、在环境模式的制导下的推理过程。这种方法有极大的灵活性、对话能力、有自我解释能力和学习能力。这种方法对解决一些条件和目标不大明确或不完备,(即不能很好地形式化,不好描述)的非结构化问题比传统方法好。它采用试探法来解决问题。人工智能也尚未发展到完全能解决这类问题的全部问题。这类问题是人工智能研究要解决的问题。随之而来也希望计算机硬件结构也来一个革命,突破冯·诺依曼体系结构。二、Prolog语言及其基本结构Prolog是当代最有影响的人工智能语言之一,由于该语言很适合表达人的思维和推理规则,在自然语言理解、机器定理证明、专家系统等方面得到了广泛的应用,已经成为人工智能应用领域的强有力的开发

5、语言。现在的Prolog语言有许多版本,但它们的核心部分都是一样的。Prolog的基本语句仅有三种,即事实、规则和目标三种类型的语句,且都用谓词表示,因而程序逻辑性强,文法简捷,清晰易懂。另一方面,Prolog是陈述性语言,一旦给它提交必要的事实和规则之后,Prolog就使用内部的演绎推理机制自动求解程序给定的目标,而不需要在程序中列出详细的求解步骤。1、事实事实用来说明一个问题中已知的对象和它们之间的关系。在Prolog程序中,事实由谓词名及用括号括起来的一个或几个对象组成。谓词和对象可由用户自己定义。例如,谓词likes(bill,book).是一个名为like的关系,表示对象b

6、ill和book之间有喜欢的关系。2、规则规则由几个互相有依赖性的简单句(谓词)组成,用来描述事实之间的依赖关系。从形式上看,规则由左边表示结论的后件谓词和右边表示条件的前提谓词组成。例如,规则bird(X):-animal(X),has(X,feather).表示凡是动物并且有羽毛,那么它就是鸟。3、目标(问题)把事实和规则写进Prolog程序中后,就可以向Prolog询问有关问题的答案,询问的问题就是程序运行的目标。目标的结构与事实或规则相同,可以是一个简单的谓词,也可以是多个谓词的组合。目标分内、外两种,内部目标写在程序中,外部目标在程序运行时由用户手工键入。—8—例如问题?-

7、student(john).表示“john是学生吗?” 三.Prolog程序的简单例子以下两个例子在TurboProlog2.0环境下运行通过。[注:一个TurboProlog程序至少包括谓词段、子句段和目标段三项。目标可以包含在程序中,也可以在程序运行时给出。] 例1谁是john的朋友?predicates/*谓词段,对要用的谓词名和参数进行说明*/likes(symbol,symbol)friend(symbol,symbol)clauses/*子句段

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。