计算机科学技术系毕业设计(算法设计类论文)撰写说明

发布时间:2014-04-03 10:28:08

算法类论文的写作要求

算法类论文的写作主要是围绕某个科学问题设计解决方案并进行实验验证的过程描述,除摘要外,其正文主要包括引言、相关工作、问题描述、算法设计、实验分析、结论、参考文献7个部分。本文仅对论文写作的结构进行说明,不涉及到论文的排版格式。有关排版格式,请参考其他文献。

第一部分 摘要与关键词

1 摘要

1)需要提供中英文版本。

2)文章摘要应具有独立性和自明性,拥有同正文同等量的主要信息,其述叙语言应简洁,准确。摘要应附和以下要求:

四要素要完整,应说明研究工作的目的、实验方法、技术成果和最终结论,而其重点是成果和结论;

删除在本学科领域已成为常识的内容,一般不要做自我评价;

不得简单重复文章题目;

慎用长句;

使用第3人称;

采用规范化术语;

新术语可使用原文或在译名后加括号注明原文;

缩略语、略称、代号,在首次出现时也应说明;

不得出现正文中的图号、表号、公式、章节号以及参考文献等。

3)摘要的具体写法:

摘要一般分为2-3段,字数在300~500之间。不要出现第一人称我或我们的字样,要从客观的角度来阐述。

第一段:一般以3行为宜,简述你的论文背景,引出为什么要研究该项目(意义)。

第二段:是摘要的主要内容,对全文进行总概。一般按照你论文的顺序进行阐述。

如:本文首先分析了××××方面的国内外研究现状,对×××所存在的主要问题进行了阐述,重点对×××问题和×××问题进行了研究。针对××××,提出了一种基于××××的算法,利用××××,结合××××,设计了×××,用以解决×××××(或者:在××××算法的基础上,利用××××,结合××××,对算法进行了改进)。针对××××的问题,从×××的角度出发,提出了××××的算法,用以提高××××的×××性(稳定性、安全性、鲁棒性等等,看实际情况选)。最后,利用×××进行了原型系统的开发(或进行了仿真设计),(仿真)测试结果表明了算法的(正确性)和(合理性),但在算法的可扩展方面还需进一步的研究(请根据实际的结果进行书写)。

第三段:可从论文的特点和贡献上进行一下总结。如:本文所做系统具有××××的特点,但××××。

2 关键词

关键词是能描述所写论文成果、创新性、所在领域等的名词,一般在3-5个。如“网络安全”、“可信计算”、“信任建模”、“信任推理”等可作为“信任算法”方面的关键词。

第二部分 正文

正文是论文的绝对主体部分,一般需要包括“引言”、“相关工作与理论基础”、“算法设计”、“实验仿真与分析”、“结论”以及参考文献部分。在篇幅上,算法类论文的正文部分需要在35页或以上。当涉及到多个算法的设计时,可以扩展算法设计部分,同时篇幅也相应增加,但至少达到35

1 引言(绪论)

引言又称绪论前言或导论。开篇之作论文的开场白目的是向读者说明本研究的来龙去脉,吸引读者对本篇论文产生兴趣,对正文起到提纲掣领和引导阅读兴趣的作用。

在写引言之前首先应明确几个基本问题你想通过本文说明什么问题有哪些新的发现,是否有学术价值一般读者读了引言以后,可清楚地知道作者为什么选择该题目进行研究。为此,在写前言以前,要尽可能多地了解相关的内容,收集前人和别人已有工作的主要资料,说明本研究设想的合理性。

(1) 引言的篇幅不应超过总论文的10%。应言简意赅,不要与摘要雷同。一般教科书中有的知识,在引言中不必出现。

(2) 言简意赅,突出重点。不应过多叙述同行熟知的及教科书中的常识性内容,确有必要提及他人的研究成果和基本原理时,只需以参考引文的形式标出即可。在引言中提示本文的工作和观点时,意思应明确,语言应简练。

(3) 内容不应与摘要雷同,注意不用客套话,如才疏学浅水平有限恳请指正抛砖引玉之类的语言

(4) 引言中不要插图、列表,不进行公式的推导与证明。

1.1 引言(绪论)的结构

引言作为论文的开头,以简短的篇幅介绍论文的写作背景和目的,缘起和提出研究要求的现实情况以及相关领域内前人所做的工作和研究的概况,说明本研究与相关工作的关系,目前的研究热点、存在的问题及作者的工作意义,引出本文的主题给读者以引导。引言也可点明本文的理论依据、实验基础和研究方法,简单阐述其研究内容;简要概括预示本研究的结果、意义和前景,但不必展开讨论。因此一篇学位论文的引言,大致包含如下几个部分:

1) 研究背景

2) 国内外研究现状

3) 研究内容

4) 论文组织结构

接下来将对这几部分的写法进行简述。

1.2 研究背景的写法

算法类论文具有探索性,经过文献调研后,针对某一领域欲解决的问题和存在的问题有一定的见解,产生出一个题目(课题),利用自己所学的专业知识和数学工具,得出一个(些)有用(或者有潜在的价值)的结论和有价值的数据结果。研究背景中需要阐述清楚2个大问题:

(1) 研究的问题是什么

(2) 为什么选择这个题目来研究,即阐述该研究的现实意义,比如说明研究对学科发展贡献该研究对能够解决什么现实问题,该研究具有一定的前沿性

研究内容一是立题的背景,说明论文选题在本学科领域的地位、作用以及目前研究的现状,特别是研究中存在的或没有解决的问题。二是针对现有研究的状况,确立本文拟要解决的问题,从而引出下文。

1.3 国内外研究现状的写法

对本研究主题范围内的文献进行详尽的综合述评,的同时一定要有,指出现有研究成果的不足,讲出自己的改进思路。

应简述本课题在国内外的研究和发展状况;针对课题的实际背景和要解决的问题,对比国内外学者的相关工作,阐述清楚国内外学者对同类问题所采用的研究和解决方法,同时对比这些研究和解决方法的优缺点。当然也可适当简要地介绍一些与本课题有关的预备知识。

注:国内研究现状与第二章的相关工作是有区别的。国内外研究现状描述课题研究的大背景大方向,侧重讲述课题研究的先进性和重要意义,不用涉及具体技术。

1.4 研究内容的写法

通过对国内外研究现状的分析,针对该课题现有不足的或急需解决的问题,阐述清楚自己使用的科学研究方法,包括需要解决什么问题,解决该问题采用的理论依据、研究方法和实验基础,预期的结果及其地位、作用和意义。

在研究内容的最后需写清楚本研究的创新点或理论与()实践意义如果研究的项目是别人从未开展过的,这时创新性是显而易见的,要说明研究的创新点。但大部分情况下,研究的项目是前人开展过的,这时一定要说明此研究与被研究的不同之处和本质上的区别,而不是单纯的重复前人的工作。如果要引出新的概念或术语,则应加以定义或阐明。

1.5 论文组织结构的写法

论文的组织结构是对整篇论文的概述,阐述清楚论文的章节,每一章的研究内容或者介绍章和章间的关系。比方说无线传感器网络上的数据聚集调度算法论文在对论文组织结构进行书写时按如下方式描述:

本论文共分5章,每章的组织结构安排和内容如下:

1章是引言。本章简要介绍了无线传感器网络的基本知识、数据聚集问题以及数据聚集调度问题的意义、国内外对于传感器网络研究现状以及传感器网络上的数据聚集及调度问题的研究现状、本文的主要贡献等。

2章是相关工作。本章介绍了无线传感器网络中数据聚集的相关知识以及数据聚集调度的相关方法并提出了其中的问题。

3章是传感器网络中数据聚集的分布式调度算法分析与设计。本章在对以前的研究工作进行全面分析的基础上,提出了一种在无线传感器网络中数据聚集的分布式调度算法。

4章是传感器网络中数据聚集的分布式调度算法实现。我们对该算法的正确性给出了证明,并且对算法的性能进行了理论上的分析,包括时间延迟(优化目标),通信复杂性和时间复杂性。同时,我们利用模拟实验验证了该算法具有较低的时间延迟和较少的通信开销。

5章结论,给出了本文的结论以及未来工作。

2相关工作与理论基础

论文的相关工作指的是与论文所研究内容直接相关的同行研究进展,在行文过程中需要有准确的参考文献支撑。一般来说,相关工作与第一章绪论篇幅加起来不能超过全文的1/3

2.1 相关工作

研究的问题,目前他人已经做了哪些方面的研究,提出了哪些算法,简单总结其解决的问题与相关算法,并指出现有算法的不足之处。

注意这里的相关工作不仅仅包含现有工作的简单描述,还要在现有的研究工作中进行对比,指出其中的不同之处,并且说明现有算法的不足之处,本论文要在哪些方面做改进等。

下面是一个典型的相关工作示例:

目前典型的道路网中移动对象连续k近邻查询处理算法有IMA/GMA算法[7]ER2CkNN算法[8]

IMA/GMA算法将移动对象数据、多用户并发查询、道路网数据全部组织在内存中。对于每一个查询来说使用网络扩张的方法获得其初始结果集,即从查询所在的位置开始,遍历周围的边及其上的移动对象,根据到移动对象的网络距离不断地更新查询结果集。此外,IMA 算法将网络扩张中遍历过的结点组织成一个称为查询扩张树的数据结构,基于这种数据结构,IMA算法通过判断边权重、移动对象位置、查询位置的变化,对扩张树进行修剪,从而重用扩张树中的查询结果。GMA算法则将路径(起点和终点的度数不等于2)上的查询组成一组,同一路径上查询的结果集是路径两个端点的k 近邻查询结果和该路径上移动对象并集的子集。基于这一性质GMA算法利用IMA算法监控每条路径两个端点的k近邻查询结果,并判断数据的更新会影响哪些查询的结果,而后重新计算这些受影响的查询。

通过分析和实验,发现IMA/GMA 算法的不足可以概括为: (1) IMA/ GMA 会进行大量计算以判断是否需要对查询重计算,当数据频繁更新时,绝大多数查询都需要重计算,因此性能急剧下降; (2) GMA 算法不能处理k 值不同情况下的多用户并发查询;(3)当道路网规模较大时,其基本的网络扩张算法性能下降。

ER2CkNN算法的提出者注意到了IMA/ GMA算法由于网络扩张造成的性能不佳,因而提出了预计算一种称为Edge Bitmap Encoding 的数据结构,通过这种结构能够快速计算给定两点的最短路径。在初始结果计算时,除了利用这一结构外,还采用了文献[9]中的欧氏距离限制的思想,即快速找到候选结果集,而后利用欧氏范围查询不断对结果集精炼得到最终结果。在维护数据更新时,与IMA/GMA算法类似需要进行大量判断,实现增量式的结果更新机制。

ER2CkNN 算法的不足可以概括为: (1) 当移动对象数据频繁更新时,性能急剧下降; (2) Edge Bit2map Encoding 数据结构在道路网中边权重更新时需要重新计算。

此外,文献[10]中针对自由运动移动对象的连续k近邻查询处理问题,提出了基于流水线式多线程的查询处理框架和k近邻查询处理算法,证明了多核平台上多线程技术能够提高连续查询处理的性能。但是,道路网连续查询算法中的数据依赖使得流水线式多线程处理框架难以发挥流水线的优势,而正如引言中所述,基于欧氏距离的算法不适用于道路网上的距离计算。

正是注意到了已有算法在面对数据频繁更新时的性能低下问题,且多线程技术能够带来算法性能的提高,开展了本文的研究。

2.2 理论基础

理论基础指的是解决该问题使用的一些基本理论,但不是必需内容。如果论文中所涉及的相关理论,对后续论文的理解需要该知识,则有必要在这一章节进行简要介绍。否则,没有必要进行介绍。

这里的基本理论指的是与所研究问题直接相关的内容,而不应是该领域内所有知识的全部概括。

以下是理论基础的示例:

信息论之父 C. E. Shannon 1948年发表的论文通信的数学理论A Mathematical Theory of Communication)中,Shannon 指出,任何信息都存在冗余,冗余大小与信息中每个符号(数字、字母或单词)的出现概率或者说不确定性有关。Shannon 借鉴了热力学的概念,把信息中排除了冗余后的平均信息量称为信息熵,并给出了计算信息熵的数学表达式。在现代信息论中,的定义为:

定义2.1H(X)

X为离散型随机变量,n个可能取值,它的一切可能取值为分别记为x1x2,……,xn,各取值所对应的概率为p(x1)p(x2) ,……,p(xn)。这些概率满足以下公理条件

d41d8cd98f00b204e9800998ecf8427e.png98b9349ff9471c4d5ae419795c88782d.png 2.1

则作为随机变量不确定性的度量,可以定义为

b04b829e65cc7da8a5a8444fcf6609a0.png 2.2

2.3 本章小结

对该章的内容简单的总结。

3 ***算法设计

算法设计这一章是论文的核心内容,包括所研究问题的描述与定义,解决该问题采用的算法,算法的详细描述,以及算法的复杂度分析等。

这里仅给出了设计一个算法的写作模板,如果是设计了多个算法,其他算法的写作与该章相同,一点不同为:如果是一个算法,则算法的实验部分单独成章,模板如第五章实验(仿真)分析所示。如果是多个算法,则算法的实验部分作为***算法设计这一章的单独一小节内容,不再单独成为一章。

3.1 问题描述

问题描述是对所解决问题的详细、完整描述与定义。通常应该对所研究的问题用语言进行描述,然后对该问题采用类似于数学语言对其进行定义,最后列举实例对定义进行说明。通常包括以下三个部分,但根据具体问题可以适当的增减。

1)研究问题采用的模型或体系结构。

例如:研究分布式环境的查询问题,采用何种分布式结构(网状的、树状的等),在这里需要对其体系结构进行说明。

或者是采用的数据模型的说明,如研究随机变量问题。随机变量采用的是离散随机变量或者是连续随机变量等。

2)问题的定义。

应该采用科学严谨的语言对其进行定义(如数学符号),而不应是大段的文字说明。

一个轮廓查询的定义如下所示

在数据库中,数据集的轮廓(skyline)由该数据集中所有不比其它任何元组差的元组组成。要形式化定义轮廓,就要首先定义两个元组之间的“好坏”关系,称之为支配关系,如定义3.1所示。

定义3.1 在关系数据库中,维度空间D上的数据集T中的元组ti支配元组tj当且仅当满足以下两个条件:

(1) 在维度空间D中的任何一维k,元组ti都不比tj差;

(2) 在维度空间D中存在一维l,元组ti都比ti好。

这里的元组维度数值之间的“好坏”关系,可以是用户指定的任意标准,既可以是“大于”、“小于”,也可以是“不同于”。在此以“小于”为例进行说明,

元组间的支配关系可以形式化表示为公式3.1 的形式。

5992e3d8047964064e6945b89e73ae94.png 3.1

根据定义3.1 中的支配关系定义,可以得到轮廓的定义如定义3.2 所示。

定义3.2 在关系数据库中,数据集T的轮廓S是数据集 的子集(ST)S包含T中所有不被其它任何元组所支配的元组。

18d9b4e5efc48721925a968ec9b81148.png

3)对问题的解释。

用具体示例,对问题进行描述。例如上例的skyline查询,可以用一个具体示例解释。

例如,对定义3.2采用图3.1对其进行解释说明。

轮廓查询有着非常广阔的实际应用价值,例如,当你要去某个海滨度假胜地旅游的时候,你一定希望能找到一个既价格便宜,又距离海滩较近的酒店入住,以便使得本次消费的性价比达到最高。然而,事实却是离海滩近的酒店往往价格较高,而价格较低的酒店离海滩也较远,这种情况下,你将陷入两难的境地,变得难以取舍。轮廓查询刚好可以解决这个问题,在距离和价格两维上的轮廓中的酒店就是那些性价比最高的酒店,其余的酒店都会在轮廓中找到既比它价格低,也比它距离海滩近的酒店,

如图3.1所示,实心的圆点为轮廓点,而空心的圆点为非轮廓点。有了轮廓查询的帮助,你只需要在轮廓中的酒店之中进行选择就能找到最令你满意的酒店了。

word/media/image6_1.png

3.1酒店的轮廓

3.2 ***算法

根据不同问题,可以采用不同的写作方法。一般应包括以下内容:

1)已有算法的描述,这里为详细描述。

2)本文算法采用的技术手段。并阐述对原算法在哪些方面做了改进。

3)本文提出算法的详细描述,表现形式为算法的伪代码或者是程序流程图。并用文字对算法进行详细、具体的描述。

伪代码算法描述举例:

BEGIN:

i = 0; //进化种群代数

Initialize P(i); //初始化种群

Fitness P(i); //计算适宜值

While(not Terminate-Condition) //不满足终止条件时,循环

{

i ++; //循环

GA-Operation P(i); //交叉、变异操作

Fitness P(i); //计算适宜值

}

END //结束算法

步骤形式的算法描述举例:

初始化:种群规模P,遗传代数N,交叉概率pc,变异概率pm,计数变量i=0

1)生成初始种群。

2)计算初始种群中每个染色体的适宜值。

3i=i+1;如果i<=N,则生成赌轮,转步骤4;否则,转步骤9

4)根据赌轮选择策略选择染色体生成基因池,即基因池中的染色体个数即为种群规模P

5)根据交叉概率pc进行交叉操作,基因池中未进行交叉操作的直接复制到下一代。

6)根据变异概率pm,进行变异操作。

7)计算子代种群中每个染色体的适宜值。

8)子代种群取代父代种群,转步骤3

9)计算种群中每个染色体对应路由数的网络延迟、出错率以及网络费用。按适宜值排序,适宜值最小的染色体即为求得的解。

流程图式的算法描述举例:

word/media/image7.gif

3.2 遗传算法流程图

word/media/image8.gif

3.3改进的粒子群遗传算法流程图

普通遗传算法流程图如图3.2所示改进的粒子群遗传算法如图3.3所示。改进的粒子群遗传算法(MPSO/ GA),该算法是以基本遗传算法为基础同时将改进的粒子群算法作为遗传算法的一个重要算子具体算法步骤如下

1)设定参数,并随机产生初始种群。

2)计算每个个体的适应度函数值,并且按照适应度函数值进行排序。

3)判断是否满足目标条件(包括程序收敛以及达到指定的进化代数), 如果满足,结束进程,输出结果;否则转步骤4

4)更新个体种群。 根据适应度函数值的大小确定一部分个体直接进入下一代种群, 剩余个体通过MPSO 算法优化过后进入下一代种群。

5)对新一代种群执行遗传算法的复制、交叉和变异等操作, 转步骤2

4 实验(仿真)分析

4.1 实验环境

该部分是对算法仿真或实现环境中涉及到的硬件、软件、及开发工具的说明

例如:

针对以上约束条件以及目标函数设计编码序列模型, Matlab 7.0 环境下, 使用MPSO/ GA 算法进行仿真,运行环境是Pentium Dual E2104116GHz512MBMicrosoft XP

4.2 实验数据

对算法测试采用数据或产生的数据集规模等的说明。如果是实际数据,指出数据的来源,并对数据说明。如果是人工合成数据,需要对数据的产生方法和数据进行说明。

例如:

遗传算法参数设置如下

为了评价本算法所产生的DNA 序列的性能,本文根据文献[8]的约束条件产生初始化种群。

( 1) 基本遗传算法,最大进化代数为300,种群规模为20DNA 序列编码长度为20,交叉率为0.85, 变异率为0.005

( 2) MPSO 算法,最大进化代数为200,学习因子分别为c1 = 2, c2 = 1.8,惯性权重因子w 2 降低到0.18, 扰动因子u= 10, 最大速度为4

4.3 实验结果

1包括给出结果,并对结果进行定量或定性的分析。写作要点是:以绘图和(或)列表(必要时)等手段整理实验结果。

2)除了给出实验结果,另一个重点内容是将论文中提出的算法与已经存在的算法做对比,说明在哪些方面有改进,并说明性能提高的原因

算法的各个性能指标(例如时间、空间、通信量等)在不同参数变化的情况下进行分析,但是根据不同问题,分析的方面可以不同。

例如:

4.1 MPSO/ GA 算法产生的DNA 序列

4.2 GA 算法产生的DNA 序列

如表4.1与表4.2所示,MPSO/ GA 算法比文献[8]提到的普通GA算法的适应度函数(Fitness value)有所提高。

5 结论

结论不是研究结果的简单重复,而是对研究结果更深入一步的认识,是从正文部分的全部内容出发,并涉及引言的部分内容,经过判断、归纳、推理等过程,将研究结果升华成新的总观点。其内容要点如下:

1)本研究结果说明了什么问题,得出了什么规律性的东西,解决了什么理论或实际问题;

2)对前人有关本问题的看法作了哪些检验,哪些与本研究结果一致,哪些不一致,作者做了哪些修正、补充、发展或否定;

3)本研究的不足之处或遗留问题。

对于某一篇论文的“结论”,上述要点1)和3)是必需的,而2)视论文的具体内容可以有,也可以没有。

结论里应包括必要的数据,但主要是用文字表达,一般不再用插图和表格。

6 参考文献

采用顺序编码制时,在引文处,按它们出现的先后用阿拉伯数字连续编码,并将序码置于方括号内,视具体情况把序码作为上角标,或者作为语句的组成部分。

计算机科学技术系毕业设计(算法设计类论文)撰写说明

相关推荐