关于2020年国赛C题出现的问题说明与解决

关于2020年国赛C题出现的问题说明与解决

本文章旨在为了大家更好的理解代码,针对大家出现的问题进行一定的说明。

问题一

在问题一中广大友友们出现的问题:链接:博客原文

第90行索引超出数组元素的数目(0)

原因:我们利用 E xcel 将 赛题所给的 原始 数据中的 企业代号 ”中的 E ”全部替换为“”,即:把E删掉。因为文本数据Matlab很难处理。
强调:剔除不是指全部删掉 ,而是把
"E1"-------> 变成 "1"

问题二

问题二中代码中看不懂的部分:

第一个
 z(j)=exp(r(j) aver_r)*x(j)*y(j);

第二个
for t=1:100000
x=0.0673+(0.1380 0.0507)rand(127,1);
y=1010^4+(100 10)10^4rand(127,1);

说明:
第一个: 对应博客添加链接描述中,4.2.2 节里面的利润变动公式:

第二个:是模拟退火算法在解空间中产生初始解的代码

问题三 整道题处理后的数据说明

1.表格:可贷款企业信息.xlsx
数据存储格式如下:
请添加图片描述
2.表格:处理:123家有信贷记录企业的相关数据1.xlsx
里面共有3个Sheet,格式如下:
请添加图片描述
请添加图片描述
请添加图片描述
3. 表格:处理:302家无信贷记录企业的相关数据.xlsx
其中Sheet1 和 Sheet2 的格式与 “处理:123家有信贷记录企业的相关数据1.xlsx” 的表格一致,Sheet3的表格数据格式如下:
请添加图片描述

问题四 关于代码处理的乱码情况

这个情况是因为Matlab版本不一致造成的,小编也无能为力了。

  • 10
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 24
    评论
对于2020国赛C的遗传算法求解,我可以给出一些基本的思路和步骤。请注意,以下仅为参考,具体实现可能需要根据具体情况进行调整。 1. 定义问题:首先需要明确遗传算法要解决问题是什么,包括目标函数、约束条件等。 2. 编码:将问题抽象为一个染色体,染色体上的基因表示问题的一个解。根据实际问题,设计合适的基因编码方式。 3. 初始化种群:随机生成一定数量的个体(染色体),构成初始种群。 4. 评估适应度:根据目标函数,计算每个个体的适应度值。适应度值越高,个体越优秀。 5. 选择操作:根据个体的适应度值,采用选择算子(如轮盘赌选择、锦标赛选择等)选择一部分个体作为父代。 6. 交叉操作:从父代中选取两个个体,通过交叉操作产生新的子代个体。交叉方式可以是单点交叉、多点交叉等。 7. 变异操作:对子代进行变异操作,改变染色体中的部分基因值。变异可以增加种群的多样性。 8. 替换操作:根据选择的策略,用子代替换部分父代,生成新的种群。 9. 终止判断:判断是否满足终止条件,如达到最大迭代次数或找到满足要求的解。 10. 返回结果:当满足终止条件时,返回最优个体作为问题的解。 需要注意的是,以上仅为遗传算法的基本步骤,具体实现中还需根据问题的特点进行参数设置、选择算子和终止条件的调整等。此外,还可以考虑使用改进的遗传算法方法,如精英保留策略、自适应策略等,以提高算法的效率和求解质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yasNing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值