1、生物信息学算法实验指导生物信息学算法实验指导书 (第一版)生物信息学院生物技术与信息教研部版权所有2011.10实验一、石头游戏程序设计 2【实验内容】 2【实验记录】 3算法设计思想与代码 3程序执行记录: 3结论: 3心得与思考(出现什么问题及如何解决): 3实验二、找零钱应用程序设计 3【实验记录】 4实验三、0/1背包问题程序设计 4【实验记录】 5实验四、反序排序的贪婪法程序设计 6【实验记录】 6实验五、两序列全局比对算法实现与改进 7【实验记录】 7实验六、两序列局部比对算法实现与改进 7【实验记录】 8实验七、系统聚类UPGMA算法实现与改进 8【实验记录】 9算法设计思想与代
2、码 9程序执行记录: 9结论: 9心得与思考(出现什么问题及如何解决): 9实验八、吉布斯抽样算法实现与改进 11【实验记录】 11实验一、石头游戏程序设计【实验目的】1、 巩固算法设计基本知识;2、 理解动态规划法基本思想。【实验器材】计算机、VC+ 6.0或自选集成编程环境。【实验内容】编写一个能与人对弈的石头游戏程序游戏规则:每个人每一轮从一堆事都中拿走一块或是从两堆中各拿走一块,不放回,谁拿走最后一块石头谁就赢了比赛。要求:随机选择先后手;电脑有一定概率走错;备注:程序算法选用参考书上所列的动态规划算法【所需设备】 个人计算机:1台;【实验记录】算法设计思想与代码程序执行记录:结论:心
3、得与思考:【实验报告】按实验报告格式要求撰写实验报告(见实验报告模板)【思考题】 结合本实验,谈谈用为什么动态规划算法里一般都会有至少一个数组,这个数组主要用来存储什么信息?实验二、找零钱应用程序设计【实验目的】1、 巩固算法设计基本知识;2、 理解动态规划法基本思想。【实验器材】计算机、VC+ 6.0或自选集成编程环境。【实验内容】编写一个适合中国国情的找零钱程序要求 程序能根据“库存”钱币数和找零额度选择最优找零方案可选用简单方法或者动态规划法。 【所需设备】 个人计算机:1台;【实验记录】 算法设计思想与代码程序执行记录:结论:心得与思考(出现什么问题及如何解决):【实验报告】按实验报告
4、格式要求撰写实验报告(见实验报告模板)【思考题】 结合本实验,谈谈用为什么动态规划算法里一般都会有至少一个数组,这个数组主要用来存储什么信息?实验三、0/1背包问题程序设计【实验目的】1、 巩固算法设计基本知识;2、 理解贪婪算法基本思想。【实验器材】计算机、VC+ 6.0或自选集成编程环境。【实验内容】编写一个0/1背包问题的贪婪法计算/动态规划程序。问题为一辆物流车在仓库装车,该车有体积的限制;不同货物的体积不同,价值不同,请设计程序帮助该车设计最佳装车方案。要求:程序能根据库存和来车的载货体积给出装车货物编号;备注:不考虑箱形货物的摆放问题(全假设为柔性货物)【所需设备】 个人计算机:1
5、台;【实验记录】 算法设计思想与代码程序执行记录:结论:心得与思考(出现什么问题及如何解决):【实验报告】按实验报告格式要求撰写实验报告(见实验报告模板)【思考题】 结合本实验,谈谈如果仓库货物均比较重,而货车有体积和重量的双重限制,可以设计怎样的贪婪法解决方案?实验四、反序排序的贪婪法程序设计【实验目的】1、 巩固算法设计基本知识;2、 理解贪婪法基本思想。【实验器材】计算机、VC+ 6.0或自选集成编程环境。【实验内容】编写一个反序排序思想演示程序要求程序能形象地将反序排序过程输出。 【所需设备】 个人计算机:1台;【实验记录】 算法设计思想与代码程序执行记录:结论:心得与思考(出现什么问
6、题及如何解决):【实验报告】按实验报告格式要求撰写实验报告(见实验报告模板)【思考题】实验五、两序列全局比对算法实现与改进【实验目的】1、 巩固算法设计基本知识;2、 理解两序列全局比对算法基本思想。【实验器材】计算机、VC+ 6.0或自选集成编程环境。【实验内容】编写一个两条序列进行全局比对的程序。要求:能根据外部输入进行序列全局比对并正确打印出比对结果;能方便修改打分函数。【所需设备】 个人计算机:1台;【实验记录】 算法设计思想与代码程序执行记录:结论:心得与思考(出现什么问题及如何解决):【实验报告】按实验报告格式要求撰写实验报告(见实验报告模板)实验六、两序列局部比对算法实现与改进【
7、实验目的】1、 巩固算法设计基本知识;2、 理解两序列局部比对算法基本思想。【实验器材】计算机、VC+ 6.0或自选集成编程环境。【实验内容】编写一个两条序列进行全局比对的程序。要求:能根据外部输入进行序列局部比对并正确打印出比对结果;能方便修改打分函数。【所需设备】 个人计算机:1台;【实验记录】 算法设计思想与代码程序执行记录:结论:心得与思考(出现什么问题及如何解决):【实验报告】按实验报告格式要求撰写实验报告(见实验报告模板)实验七、系统聚类UPGMA算法实现与改进【实验目的】1、 巩固算法设计基本知识;2、 理解系统聚类UPGMA算法基本思想。【实验器材】计算机、VC+ 6.0或自选
8、集成编程环境。【实验内容】编写一个采用系统聚类UPGMA算法进行聚类的程序。要求:根据距离矩阵进行系统聚类、打印出树状图。【所需设备】 个人计算机:1台;【实验记录】 算法设计思想与代码程序执行记录:结论:心得与思考(出现什么问题及如何解决):非加权组平均法(UPGMA):unweighted pair-group method with arithmetic means非加权组平均法是一种较常用的聚类分析方法 ,最早是用来解决分类问题的。当用来重建系统发生树时 ,其假定的前提条件是:在进化过程中 ,每一世系发生趋异的次数相同 ,即核苷酸或氨基酸的替换速率是均等且恒定的。通过 UPGMA 法所
9、产生的系统发生树可以说是物种树的简单体现 ,在每一次趋异发生后 ,从共祖节点到 2 个 OTU 间的支的长度一样。因此 ,这种方法较多地用于物种树的重建。UPGMA 法在算法上较简单。聚类时 ,首先将距离最小的 2 个 OTU 聚在一起 ,并形成一个新的OTU ,其分支点位于 2 个 OTU 间距离的 1/ 2 处;然后计算新的 OTU 与其它 OTU 间的平均距离 ,再找出其中的最小 2 个 OTU 进行聚类;如此反复 ,直到所有的 OTU 都聚到一起 ,最终得到一个完整的系统发生树。【实验报告】按实验报告格式要求撰写实验报告(见实验报告模板)实验八、吉布斯抽样算法实现与改进【实验目的】1、 巩固算法设计基本知识;2、 理解吉布斯抽样算法基本思想。【实验器材】计算机、VC+ 6.0或自选集成编程环境。【实验内容】编写一个采用吉布斯抽样算法进行模式序列发现的程序。要求:根据多条输入序列和规定长度,找出合适的模式序列。【所需设备】 个人计算机:1台;【实验记录】 算法设计思想与代码程序执行记录:结论:心得与思考(出现什么问题及如何解决):【实验报告】按实验报告格式要求撰写实验报告(见实验报告模板)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1