- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
卧R方法在组台数学问题巾怕成川iiJ|_究
1.3 研究的主要内容
计算机科学是研究算法的科学,而且计算机所处理的对象大部分是离散的
数据。组i台数学足研究离敞对象的科学,一馓包括基本理论、汁数力‘法及组合
算法——生成所有的组合配罱方案或找出最优配置方案的算法弘”。『F因为有了
以组合数学为基础的组合算法,才使人感到计算机好像是有思维的【6J。在组合算
法中主要研究动态规划法、分治法和广泛应用于智能领域的启发式算法(包括
贪心法等)等。然而,许多组合算法程序设计教材上没有对算法程序进行形式
化推导,即不能给出从需要求解的组合数学问题到具体算法的设计过程,这严
重影响了算法设计者对算法本质的理解和算法设计能力的提高。通过使用PAR
方法对组合数学问题进行形式化推导,不但能很好地解决上述问题,而且从逻
辑上保证了算法程序的正确性。由于PAR方法蕴涵了许多数学思想并拥有强大
工具和良好的开发环境,用它作为组合数学问题的算法程序设计方法可避免在
现有各种方法之间做出选择,可使其中相当多的创造性劳动转变成机械劳动,
有效提高算法设计自动化、规范化的程度。
本沦文是基于PAR方法及其支撑平台,研究它在组合数学问题上的有效性
并用它来开发组合算法。针对该研究目标,主要进行了以下几项工作:分析当
前形式化需求,介绍几种典型的软件形式化方法,研究Smith教授领衔的学术队
伍研发的软件开发系统Specware;介绍PAR方法的关键技术、开发步骤及其语
言等,将PAR方法与典型形式化方法进行比较,并将其与软件玎发系统Specware
进行比较;分析PAR方法的特点,研究它在组合数学问题上的有效性;用PAR
方法开发多个典型组合数学问题实例的算法:字符串长度方案数,错排方案数,
最大和,最长公共子序列,最小生成树,背包问题等,并对PAR方法在组合数
学问题实例上的开发步骤进行了分析和总结。
本论文中开发的组合算法程序均是以PAR方法的预备知识为基础,以循环
不变式的新定义和开发新策略为指导,严格遵循PAR方法开发步骤而推导出来,
用PAR平台的自动程序转换系统转换成c++程序。并得到正确运行结果。
本文的章节及内容的安排如下:
第一章引氲介绍本论文的研究背景、相关研究情况和研究的主要内容;
第二章软件形式化方法:研究形式化需求、软件形式化方法及specwarc’
第三章PAR方法及其在组合数学问题上的有效性:介绍PAR方法并分别
与典型形式化方法和Specware进行比较:分析它应用在组合数学问题上的优势;
第四章PAR方法在组合数学问题中的应用研究实例:用PAR方法推导多
个典型组合数学问题实例的算法,研究PAR方法在组合数学问题上的实用性;
第五章结束语:对整个工作做了总结并展望进一步的工作。
PAR方法在组合数学问题中的应用研究
第二章 软件形式化方法
2.1 软件形式化方法概述
2.1.1 形式化方法与软件形式化方法
软件工程的一个主要目标就是在复杂性增加的情况下仍能构造正确可靠的
系统,达到这个目标的一种有效途径就是形式化方法。形式化方法是一种用于
规范、设计和验证计算机系统的基于数学的方法,包括各种语言、技术和工具
等【281。其研究早在40年代就开始了,是公理方法发展的高级形态。它把逻辑推
理过程完全量化了,完全抽掉了语句的具体内容丽代之以符号“运算”来完成
其证明。形式公理化方法具有高度的形式化和抽象化,其中的基本概念、基本
关系的表达、全部命题的陈述、证明都要符号化。它主要采用数理逻辑作为它
的演绎推理工具1“l。
软件形式化方法是以一般形式化方法为基础的。形式化方法为计算机系统
的规约、实现和验证提供了合理的数学基础,首先对系统进行独立于实现的、
基于一定形式化语义的抽象描述,然后经过逐步求精及变换,利用规约的数学
特性检验其一致性,直至生成最终的软件系统。
一种软件形式化丌发方法一般包括一套思维方法及描述方法、-$IYF发手
段(如规范描述的原则、程序开发的一般过程、描述语言等)和支持工具,使
开发者能利用数学概念和表示方法恰当合理地构造形式规范,根据丌发过程的
框架及设计原则进行规范描述和系统化的设计求精,并使用证明的概念对规范
的性质和设计步骤进行分析和验证;方法还应该有工具的支持,使,F发过程可
行且高效。
2.1.2 软件形
文档评论(0)