计算机科学与技术专业学位论文一种自适应的prolog编译器.docx

计算机科学与技术专业学位论文一种自适应的prolog编译器.docx

  1. 1、本文档共71页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机科学与技术专业学位论文一种自适应的prolog编译器

密级: 保密期限: 硕士研究生学位论文 题目: 一种自适应的Prolog编译器学 号: 106894 姓 名: 高慧 专 业: 计算机科学与技术 导 师: 刘知青 学 院: 软件学院 2012年 12月 31日独创性(或创新性)声明本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。申请学位论文与资料若有不实之处,本人承担一切相关责任。本人签名: 日期: 关于论文使用授权的说明学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即:研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它复制手段保存、汇编学位论文。(保密的学位论文在解密后遵守此规定)保密论文注释:本学位论文属于保密在 年解密后适用本授权书。非保密论文注释:本学位论文不属于保密范围,适用本授权书。本人签名: 日期: 导师签名: 日期: 一种自适应的Prolog编译器摘 要Prolog程序语言是一种建立在逻辑学理论基础之上的语言,最初Prolog程序语言被应用在自然语言等研究领域。现在它可以用来建造专家系统、智能知识库、自然语言理解等广泛的人工智能的研究中,同时它也可以帮助到一些常用应用程序的编写。这是因为Prolog的编程方法更像是使用逻辑语言来描述程序,它能够比其他语言更快速地开发程序。随着人工智能的兴起,越来越多的人开始探索各种人工智能技术。其中Prolog程序语言作为较早的代表,更是受人追捧。传统的Prolog编译器只能按照程序的书写顺序从上到下匹配,如果写在上面的谓词十分难解,而非常好解的谓词却写在了下面,那么Prolog解这个程序就需要一些时间。这也就是传统Prolog编译器的短板。如果在Prolog编译器中加入Prolog匹配的“指导思想”告诉Prolog编译器应该选哪个谓词,进而Prolog在寻找答案的时候就不会仅凭程序员的个人习惯和概率来左右其得到答案的效率了。本文主要研究工作如下:首先本文大致讨论人工智能和专家系统的定义和Prolog语言的组成特点。其次讲述Prolog编译器的开发方法。本文采用Flex词法分析器用于Prolog的词法开发,用正则表达式识别需要传递给语法分析器的记号。采用Bison用于其语法开发并在Bison中使用自顶向下的LL(1)文法。使用哈希这种数据结构来组织符号表,并用拉链法来处理符号表中遇到的冲突。由于本文要用到Flex和Bison的结合使用,而且是要识别一整个程序,所以词法分析器Flex和语法分析器Bison结合的特殊性也在研究范围之内。最后针对Prolog匹配出现的一些缺点,提出了利用UCB策略改进其匹配方式,试图使其高效率得出最优解。关键词:Prolog 编译器 程序语言 UCB 自适应A SELF-ADAPTED PROLOG COMPILERABSTRACTProlog programming language is to establish the theoretical basis of the logic of language, the initial Prolog programming language is used in the field of natural language research. Now it can be used to build a wide range of expert systems, intelligent knowledge base, natural language understanding, artificial intelligence research, at the same time, it can also help to some commonly used application preparation. This is because the Prolog programming method is more like using a logical language to describe the program and its ability to develop programs more quickly than in other languages.With the

文档评论(0)

2105194781 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档