ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

201871010136-赵艳强 实验二 个人项目-《0-1背包问题》项目报告

2021-03-31 12:02:47  阅读:233  来源: 互联网

标签:背包 cnblogs 项目 201871010136 问题 KP https com 赵艳强


201871010136-赵艳强 实验二 个人项目-《0-1背包问题》项目报告

项目内容
课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/2018CST
作业要求链接 https://www.cnblogs.com/nwnu-daizh/p/14552393.html
我的课程学习目标 掌握软件项目的个人开发流程,熟悉步骤,掌握Github软件存储发布代码的基本操作
这个作业在哪些方面帮助我实现学习目标 根据老师的提示,一步步进行操作,熟悉基础的操作流程,加强自己的基础知识的应用
项目Github的仓库链接地址  

任务1:

​ 阅读教师博客“常用源代码管理工具与开发工具”内容要求,点评班级博客中已提交相关至少3份作业。

任务2:

​ 总结详细阅读《构建之法》第1章、第2章,掌握PSP流程。

  • 《构建之法》https://www.cnblogs.com/xinz/archive/2011/11/27/2265425.html
    • 第一章 :软件工程是把系统的,有序的,可量化的方法应用到软件的开发,运营和维护上。软件工程包括:软件需求分析,软件构建,软件设计,软件测试和软件维护。 软件是可以运行在计算机上及电子设备中的指令和数据的有序集合。软件以下特性:复杂性,不可见性,易变性,服从性,非连续性。软件工程,就是把软件中的Bug 消灭的过程。软件=程序+软工程。
    • 第二章:作者对PSP(Personal Software Process)进行了介绍,并且根据中科大大四学生和工作三年的工程师的PSP表格进行对比,综合各类表格的比较,总结出了个人软件开发流程PSP的任务清单。

PSP展示

PSP2.1任务内容计划共需完成的时间(min)实际完成需要的时间(min)
Planning 计划 80 77
Estimate 估计这个任务需要多长时间,并规划大致工作步骤 35 30
Development 开发 56 60
Analysis 需求分析(包括学习新技术) 50 60
Design Spec 生成设计文档 40 70
Design Review 设计复审(和同时审核设计文档) 50 30
Coding Standard 代码规范(为目前的开发制定合适的规范) 25 20
Design 具体设计 9 11
Coding 具体编码 90 125
Code Review 代码复审 30 35
Test 测试(自我测试、修改代码、提交修改) 40 20
Reporting 报告 59 63
Test Report 测试报告 40 50
Size Measurement 计算工作量 50 20
Postmortem &Process Improvement Plan 事后总结,并提出过程改进计划 30 30

任务3:

​ 项目开发背景:背包问题(Knapsack Problem,KP)是NP Complete问题,也是一个经典的组合优化问题,有着广泛而重要的应用背景。{0-1}背包问题({0-1}Knapsack Problem,{0-1}KP)是最基本的KP问题形式,它的描述一般为:从若干具有价值体系与重量系数的物品(或项)中,选择若干个装入一个具有载重限制的背包,如何选择才能使装入物品的重量系数系数在不超过背包载重前提下价值系数之和达到最大。

1.需求分析:

​ 在现实生活中,有一类问题需要设计得出最优解,我们通常使用态规划算法、回溯算法求解D{0-1}背包问题来解决这类问题。背包问题是NP Complete问题,它是一个组合优化问题,而D{0-1} KP 是经典{ 0-1}背包问题的一个拓展形式,用以对实际商业活动中折扣销售、捆绑销售等现象进行最优化求解,达到获利最大化。动态规划算法通常用于求解具有某种最优性质的问题。在这类问题中,可能会有许多可行解。每一个解都对应于一个值,我们希望找到具有最优值的解。回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就“回溯”返回,尝试别的路径。在这次作业中,我们可以对于背包问题的求解有更近一步的掌握。

2.功能设计:

  • 可正确读入实验数据文件的有效D{0-1}KP数据;

  • 能够绘制任意一组D{0-1}KP数据以重量为横轴、价值为纵轴的数据散点图;

  • 能够对一组D{0-1}KP数据按项集第三项的价值:重量比进行非递增排序;

  • 用户能够自主选择动态规划算法、回溯算法求解指定D{0-1} KP数据的最优解和求解时间(以秒为单位);

  • 任意一组D{0-1} KP数据的最优解、求解时间和解向量可保存为txt文件或导出EXCEL文件。

任务4:

​ 完成任务3的程序开发,将项目源码的完整工程文件提交到你注册Github账号的项目仓库中。

标签:背包,cnblogs,项目,201871010136,问题,KP,https,com,赵艳强
来源: https://www.cnblogs.com/zyq559208/p/14600729.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有