人工智能程序设计语言

人工智能程序设计语言

ID:14704911

大小:127.00 KB

页数:20页

时间:2018-07-30

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

《人工智能程序设计语言》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、人工智能程序设计语言----Prolog1概述1970年由法国马赛大学AlainColmerauer等开发,作为逻辑程序设计的工具。很多著名的专家系统外壳都用Prolog编写,如ESP/Advisor,APE,X1等。程序特点:陈述式语言。只要给出必要的事实和规则,Prolog就可以用演绎推理自动求解问题。而过程式语言必须告之求解过程才行。实例与基本概念:一个Prolog的实例程序如下:domains/*领域声明段*/person,activity=symbol/*域person和activity的声明,symbol为标准

2、域*/predicates/*谓词格式说明段*/likes(person,activity)/*likes为谓词名,表示某人person喜欢activity活动*/clauses/*子句段*/likes(ellen,tennis)./*事实:ellen喜欢tennis*/likes(john,football).likes(tom,baseball).likes(eric,swimming).likes(mark,tennis).likes(bill,X):-likes(tom,X)./*规则:tom喜欢的,bill也喜欢

3、*/goal/*目标段*/likes(bill,football)./*考察bill是否喜欢football*/变量:以大写字母开头,后跟若干数字、下划线、字母组成的符号名称。是在满足目标时,其值未知的量。例如:likes(X_Persons,tennis).中的X。对象与关系:谓词表示一个或多个对象之间的某种关系。例如:likes(mark,tennis).中的likes谓词表示某人喜欢某类活动。其中,mark和和tennis分别是关系likes中的对象。又如:owns(susan,horse).eats(jill,me

4、at).valuable(gold)./*黄金是值钱的*/注:对象名和关系名都必须以小写字母开头。领域与谓词:谓词是用语描述事实和关系的。但与此相关的谓词之涉及对象的领域范围必须明确。因此,在Prolog中,需要对关系中的对象的域进行声明。例如:likes(person,activity).表明,谓词likes中第一个参数为person域,第二个为activuty域。如果目标中输入likes(12,x),系统将给出一个领域类型错的信息。因为,第一个参数不属于person域,此处即symbol域。复合目标:由多个子目标构成的

5、问题目标描述。例如:likes(tom,X)andlikes(erric,X)。无名变量:即谓词参数中以下划线表示时,该变量称为无名变量。表示此时该变量的值无关紧要。例如:likes(_,baseball)andlikes(ellen,tennis).表示只要有人喜欢baseball,ellen就喜欢tennis。car(_,_,Age,_,Cost)andCost<27000.表示查找价格在27000$以下的车,并给出其使用年限和价格。无名变量用于事实时,表示任意或全部都成立。例如:owns(_,shirt).表示人人都

6、有一件衬衣。washface(_).表示人人都洗脸。回溯:当子目标匹配或搜索失败时,回到最近的成功点继续进行余下的事实或规则的匹配的过程。以如下程序为例:domainschild=symbolage=integerpredicatespupil(child,age)clausespupil(peter,9).pupil(chris,9).pupil(paul,10).pupil(susan,9).问题:安排一次班级上9岁同学的乒乓球比赛,每对运动员赛两场。则目标子句可描述pupil(P1,9)andpupil(P2,9)a

7、ndP1<>P2.的执行过程如下:子目标1子目标2子目标3结果说明peterpeterpeter<>peter失败回溯到第二子目标chrispeter<>chris成功回溯到第二子目标继续寻找下一组解susanpeter<>susan成功子目标2已搜索完毕,回溯到子目标1chrispeterchris<>peter成功回溯到第二子目标继续寻找下一组解chrischirs<>chris失败回溯到第二子目标susanchris<>susan成功子目标2已搜索完毕,回溯到子目标1susanpetersusan<>peter成功回

8、溯到第二子目标继续寻找下一组解chrissusan<>chris成功回溯到第二子目标继续寻找下一组解susansusan<>susan失败全部搜索完毕not的用法:表示谓词或规则的否定。例如:likes(X,baseball)andnot(likes(X,tennis)).表示喜欢baseball但不喜

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

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

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