
贪婪算法的MATLAB代码——CUMCM_2018_ProblemB:用于当代建模大学生数学竞赛的代码示例...
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
这段简介描述了一个针对2018年大学生数学建模竞赛(问题B)的MATLAB实现,特别聚焦于贪婪算法的应用。该代码旨在为参赛学生提供解决问题的有效方法和编程技巧参考。
在《赛尔号》游戏中,关于鲁斯王如何在10回合内输出最大伤害的问题可能比解决某些复杂机械问题还要棘手。这是因为湍流龙击连续使用会增加威力,而敌人不会攻击且不考虑运气因素下的致命一击。
我在2018年全国大学生数学建模竞赛中提交的B题MATLAB代码涉及到了这一挑战。对于第一问来说,决策过程可以被看作是一个庞大的决策树结构,在这个过程中需要不断选择RGV(机器人)下一次前往哪台CNC进行上下料操作,每次有八种可能的选择。
当总共需做几百次这样的选择时,总的组合数会非常庞大,达到8的几百次方。显然不可能通过暴力遍历所有可能性来解决这个问题。因此,在面对第一问时,我首先采用了贪婪算法:计算出RGV下一步前往哪台CNC进行上下料操作可以使它在最短时间内再次行动,并直接执行这个选择。
接着使用遗传进化的方法优化了贪婪算法的结果,将每次去的CNC编号按顺序排列形成一个序列。
全部评论 (0)
还没有任何评论哟~


