昆工短学期程序设计报告_第1页
昆工短学期程序设计报告_第2页
昆工短学期程序设计报告_第3页
免费预览已结束,剩余10页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

程序设计及应用——遗传算法在基因识别中的应用小组:学号:学院:信息工程与自动化学院班级:指导教师:昆明理工大学20227月第一章程序概述… 1HYPERLINK\l“_TOC_250009“一、java 1HYPERLINK\l“_TOC_250008“二、运行环境 1硬件环境软件环境HYPERLINK\l“_TOC_250007“其次章遗传算法 3HYPERLINK\l“_TOC_250006“一、遗传算法方程 3HYPERLINK\l“_TOC_250005“二、程序流程图 4HYPERLINK\l“_TOC_250004“第三章基因识别 5一、基因及基因识别 5基因基因识别HYPERLINK\l“_TOC_250003“二、常用算法及程序 5HYPERLINK\l“_TOC_250002“三、程序代码 6HYPERLINK\l“_TOC_250001“四、运行结果 8HYPERLINK\l“_TOC_250000“五、分析 9程序分析 9结果分析… 11心得体会… 1110第一章、程序概述JavaSunJavaSunMicrosystem19951991年,Sun公司的开头开发名为OakJavaPC、数据中心、玩耍把握台、科学超级计算机、移动和互联网,同时拥有全球最大的开发者专业社群。Java是功能完善的通用程序设计语言,可以用来开发牢靠的、要求严格的应用程序。Sun公司对Java编程语言的解释是:Java 编程语言是个简洁、面对、分布式、解释性、强健、安全与系统无关、可移植、高性能、多线程和动态的语言Java由四方面组成编程语言Java文件格式Java虚拟机(JVM)、Java应用程序接口(JavaAPI)Java运行系统一般由类装载器、字节码校验器、解释器、代码生成器和运行支持库等几个局部组成。开发和运行 Java程序,必需依靠和使用由SunMicrosystemMicrosystemJava〔JavaDevelopmentKit。java程序的步骤Java.javaJava编译源程序Java并以字节码的形式保存在文件中,通常,字节码文件以.classclass〔字节码〕文件码,完成运行过程。二、运行环境硬件环境Intel®Core(TM)i5,CPU:1.80GHz,硬盘容量:500G,系统:Windows7(32位)软件环境Java语言的软件开发工具包jdk1.7.,是,jdk们应中选择适宜的版本安装,安装完成后还要进展环境变量的配置,否则Java通常我们用记事原来写代码,先把记事本的名字改为英文,后缀改为Java,cmdJavajre7,基于Java的集成开发环境eclipse.eclipseJavaeclipse是一个开放源代码的、基于JavaJavaJDKEclipseJavaJavaC/C++、COBOL、PHP插件已经可用,或估量将会推出。Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的根底,比方内容治理系统。关的其他应用程序类型的根底,比方内容治理系统。其次章、遗传算法一、遗传算法方程遗传算法是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜寻最优解的方法。遗传算最初是由美国的J.Holland教授于1975年在他的专著《自然界和人工系统的适应性》中首先提出的,它是一类借鉴生物界自然选择和自然遗传机制的教授所提出的G教授所提出的GA通常为简洁遗传算法〔SGA。〔解〕的好坏用适应度函数值来评价,适应度函数自然选择的唯一标准,它的设计应结合求解问题本身的要求而定。些个体,遗传到下一代群体。SGA中选择算子承受轮盘赌选择方法。其中轮盘赌选择又称为比例选择算子,实现步骤如下计算群体中全部个体的适应度函数值〔需要解码;体的概率;下一代群体的概率进展匹配〕来确定各个个体是否遗传到下一代群体中。PF/PF/ Fniiii1初始化初始种群〔编码成位串形式〕初始化初始种群〔编码成位串形式〕计算每个个体的适应Yes是否满足优化准则输出结果No选择遗传算子穿插变异产生一代种群第三章、基因识别1.基因DNADNA分子是一种长号按肯定的挨次连接而成。其中带有遗传信息的DNA片段称为基因。在DNA序列剪接后仍旧会被保存下来,并可在蛋白质合成过程中被转录、复制而合成为蛋白质。DNA序列通过遗传编码来储存信息,指导蛋白质的合成,把遗传信息准确无误地传递到蛋白质上去并实现各种生命功能。2.基因识别DNARNA、mRNA容。二、常用算法及程序方法、序列相像性和从头推测方法相结合的第三类方法。遗传算法也是计算机科学人工智能领域中用于解决最优化的一种搜寻启发遗传算法也是计算机科学人工智能领域中用于解决最优化的一种搜寻启发遗传算法模拟自然选择和自然遗传过程中发生的生殖、穿插和基因突变现象,在每次迭代中都保存一组候选解,并按某种指标从解群中选取较优的个体,重复此过程,直到满足某种收敛指标为止。遗传算法的根本运算过程如下:遗传算法的根本运算过程如下:初始化:设置进化代数计数器t=0,设置最大进化代数T,随机生成MP(0)。个体评价:计算群体P(t)中各个个体的适应度。中个体的适应度评估根底上的。算子。座上的基因值作变动。P(t)P(t+1)。t=T,则以进化过程中所得到的具有最大适应度个体作为最优解输出,终止计算。三、程序代码:packageorg.jenetics.example;importjava.io.*;publicclassLi{publicstaticvoidmain(Stringargs[]){StringfilePath=“D:\\gene.txt“;StringBuffersb1=readTxtFile(filePath);printgene(sb1);}staticvoidprintgene(StringBuffersb){Stringgene=““;intbegin=-1,end,index;intlen=sb.length;booleannext=true;while(next){booleanflag=true;begin=sb.indexOf(“ATG“,begin+1);ifbegin>=len-3||begin<0){next=false;flag=false;}index=begin+3;end=index;while(flag&&index<=len-3){Stringcoden=sb.substring(index,index+3);if(coden.equals(“TAA“)||coden.equals(“TAG“)||coden.equals(“TGA“)){end=index+3;intgenelen=end-begin;System.out.print(“启动子:[“+begin+“]ATG“);System.out.println(“,终止子:[“+(end-3)+“]“+coden);System.out.println(“编码长度:“+genelen);gene=sb.substring(begin,end);System.out.println(“编码序列:\n“+gene+“\n“);flag=false;}index+=3;}}}staticpublicStringBufferreadTxtFile(StringfilePath){StringBuffersb=newStringBuffer;try{Stringencoding=“GBK“;Filefile=newFile(filePath);if(file.isFile&&file.exists){InputStreamReaderread=newInputStreamReader(newFileInputStream(file),encoding);BufferedReaderbufferedReader=newBufferedReader(read);StringlineTxt=null;while((lineTxt=bufferedReader.readLine)!=null){sb.append(lineTxt);}read.close;}else{System.out.println(“找不到指定的文件“);}}catch(Exceptione){System.out.println(“读取文件内容出错“);e.printStackTrace;}returnsb;}}四、运行结果4.11图4.2 运行结果2五、分析程序分析〔1〕从文件读取基因序列读取待识别基因的或许可以考虑两种方法:直接在代码中输入基因序列和从串,储存在相应的数组中。5.1从路径读取文件〔5.1MainprintgeneStringBuffer中,查找启动子和终止子。StringBuffer中,查找启动子和终止子。5.2推断文件可用性readTxtFile〔〕函数主要用于读取文档和推断文档读取是否正确,其中用Javaifwhile路径不能找到相关文档,则输出”找不到指定文件”〔5.2〕。〔2〕基因序列的识别基因识别是依据蛋白质编码基因的一般性质和特征进展识别,通过统计筛基因识别是依据蛋白质编码基因的一般性质和特征进展识别,通过统计筛〔外显子。首先要解决的是在基因序列中找到启动子和终止子,并要求以3个碱基对为一组一次查找。5.3识别启动子整个程序定义字符串String来储存基因序列,定义整型变量begin和endbegin利用条件语句推断先在基因总长度范index=begin+3335.4识别终止子和外显子利用if和while语句推断是否是终止子TAA、TAG、TGA,当字符以3个为一TAA、TAG、TGA就会停下,并记录终止子所在位置存为System.out.pr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论