- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
模拟退火,贪婪算法
B5 孙月 第八次作业
仔细阅读文献《球度误差的网格搜索算法》,编程实现其实例验证部分,并与此文献的结果比较。
解:
Matlab程序为:
clear
M load 第一题数据.txt ;
P [-0.0047304,-0.0017027,0.0018167];
f 0.021;
n 41;
l 1;
zuobiao zeros 70000,3 ;%创建m*n全零矩阵
for i 1:n x i P 1 -f/2+f* i-1 /n; for j 1:n y j P 2 -f/2+f* j-1 /n; for k 1:n z k P 3 -f/2+f* k-1 /n; for c 1:36 R c sqrt M c,1 -x i ^2+ M c,2 -y j ^2+ M c,3 -z k ^2 ; end Rmax l max R,[],2 ; Rmin l min R,[],2 ; W l Rmax l -Rmin l ; zuobiao l,: [x i ,y j ,z k ]; l l+1; end end
end
w sort W,2 ;
%最大内接球法
Rout min Rmax,[],2 ;
Oout zuobiao find Rmax Rout ,:
rout Rmin find Rmax Rout ;
Fout Rout-rout
%最小外接球法
rin max Rmin,[],2 ;
Oin zuobiao find Rmin rin ,:
Rin Rmax find Rmin rin ;
Fout Rin-rin
%最小区域法
Farea min w,[],2
用贪婪算法和模拟退火算法分别求下面背包问题假设有12个物品,质量(磅)和价值(元)如下
2 5 18 3 2 5 10 4 11 7 14 6 5 10 13 4 3 11 13 10 8 16 7 4
包的最大容量为46磅,则应该装那些东西价值最大?
贪婪算法得到应该装入重量为2磅,5磅,5磅,3磅,2磅,4磅,7磅,6磅,10磅物品时价值最大为5+10+4+3+11+10+16++4+13 76元
Matlab程序如下:
n 12;x zeros 1,n ;w [4 2 7 5 5 2 3 10 11 18 6 14];%排序后的v [10 5 16 11 10 3 4 13 8 13 4 7];tw 0;%已装入背包的重量;for i 1:n if tw+w i 46 tw tw+w i ; x i 1; end end tv sum v find x ;模拟退火算法得到应该装入重量为2磅,5磅,2磅,5磅,10磅,4磅,11磅,7磅时价值最大为5+10+3+11+13+10+8+16 76元
Matlab程序为:
clc,clear a 0.95
k [5;10;13;4;3;11;13;10;8;16;7;4];
k -k; % 模拟退火算法是求解最小值,故取负数
d [2;5;18;3;2;5;10;4;11;7;14;6]; n 12;
sol_new ones 1,n ; % 生成初始解
E_current inf;E_best inf; % E_current是当前解对应的目标函数值(即背包中物品总价值);
% E_new是新解的目标函数值;
% E_best是最优解的
sol_current sol_new; sol_best sol_new;
t0 97; tf 3; t t0;
p 1; while t tf for r 1:100 %产生随机扰动 tmp ceil rand.*n ; sol_new 1,tmp ~sol_new 1,tmp ; %检查是否满足约束 while 1 q sol_new*d 46 ; if ~q p ~p; %实现交错着逆转头尾的第一个1 tmp find sol_new 1 ; if p sol_new 1,tmp 0; else sol_new 1,tmp end 0; end else break end end % 计算背包中的物品价值 E_new sol_new*k; if E_new E_current E_current E_new; sol_current sol_new; if E_new E_best % 把冷却过程中最好的解保存下来 E_best E_new; sol_best sol_new; end else if rand exp - E_new-E_current ./t E_curr
您可能关注的文档
- 模块一牙齿的分类及功能讲稿.doc
- 岑新珍-实验室管理点滴体会ppt.ppt
- 模块七自学测验结果.doc
- 模块三回馈练习回馈后测.doc
- 模块一项目实训的目的要求和考核.doc
- 模块三教学目标重要性.doc
- 模块二空气中氧气.doc
- 嵌入式系统for Android.ppt
- 模块化路由器常用配置.doc
- 嵌入式系统与SOC设计第4讲定制单用途处理器-硬件ppt.ppt
- 中国团膳行业市场发展分析及发展趋势与投资机会研究报告.docx
- 捷克工业自动化传感器生产行业市场分析供需趋势研究评估投资布局报告.docx
- 教育培训行业标准制定及职业资格证书与在线教育监管体系.docx
- 中国锅炉行业发展现状及前景预测与投资战略研究报告.docx
- 制动油产业规划专项研究报告.docx
- 莫桑比克制造业市场现状供需调查及轮融资评估行业发展趋势分析研究报告.docx
- 2025-2030中国自动驾驶卡车商业化落地场景与政策环境评估.docx
- 南非矿业投资风险评估及市场拓展研究院.docx
- 金融证券市场投资行为全面调研及收益分析与发展前景研究.docx
- 中国酒类电商行业市场发展分析及发展趋势与投资前景研究报告.docx
原创力文档


文档评论(0)