欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数学建模智能算法精品文档完整版.docx

    • 资源ID:3633307       资源大小:294.65KB        全文页数:14页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数学建模智能算法精品文档完整版.docx

    1、数学建模智能算法精品文档完整版Part 3群智能算法群智能算法,也称为启发式算法,起于上个世纪80年代初。启发式算法近年来在实际应用方面得到了较大的发展,尤其是在大数据下,人们在不断探索研究以获得更有效的应用场景。这些算法包括:遗传算法、蚁群算法、粒子群算法、模拟退火算法、人工鱼群算法、人工蜂群算法、微分进化算法和免疫算法等,这些算法在理论上也较为完善。该部分主要介绍几种常用的群智能算法。第一章 遗传算法遗传算法(Genetic Algorithm,GA),是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型,它是由美国Michigan大学的J.Holland教授于1975年首先提出的。遗

    2、传算法作为一种新的全局优化搜索算法,以其简单通用、鲁棒性强、适于并行处理及应用范围广等显著特点,奠定了它作为21世纪关键智能计算之一的地位。遗传算法的基本思想正是基于模仿生物界遗传学的遗传过程它把问题的参数用基因代表,把问题的解用染色体代表(在计算机里用二进制码表示),从而得到一个由具有不同染色体的个体组成的群体这个群体在问题特定的环境里生存竞争,适者有最好的机会生存和产生后代后代随机化地继承了父代的最好特征,并也在生存环境的控制支配下继续这一过程群体的染色体都将逐渐适应环境,不断进化,最后收敛到一族最适应环境的类似个体,即得到问题最优的解值得注意的一点是,现在的遗传算法是受生物进化论学说的启

    3、发提出的,这种学说对我们用计算机解决复杂问题很有用,而它本身是否完全正确并不重要(目前生物界对此学说尚有争议)1.1遗传算法中的生物遗传学概念由于遗传算法是由进化论和遗传学机理而产生的直接搜索优化方法;故而在这个算法中要用到各种进化和遗传学的概念首先给出遗传学概念、遗传算法概念和相应的数学概念三者之间的对应关系这些概念如下:表1-1. 遗传算法相关概念序号遗传学概念遗传算法概念数学概念1个体要处理的基本对象、结构也就是可行解2群体个体的集合被选定的一组可行解3染色体个体的表现形式可行解的编码4基因染色体中的元素编码中的元素5基因位某一基因在染色体中的位置元素在编码中的位置6适应值个体对于环境的

    4、适应程度,或在环境压力下的生存能力可行解所对应的适应函数值7种群被选定的一组染色体或个体根据入选概率定出的一组可行解8选择从群体中选择优胜的个体,淘汰劣质个体的操作保留或复制适应值大的可行解,去掉小的可行解9交叉一组染色体上对应基因段的交换根据交叉原则产生的一组新解10交叉概率染色体对应基因段交换的概率(可能性大小)闭区间0,1上的一个值,一般为0.650.9011变异染色体水平上基因变化编码的某些元素被改变12变异概率染色体上基因变化的概率(可能性大小)开区间(0,1)内的一个值, 一般为0.0010.0113进化、适者生存个体进行优胜劣汰的进化,一代又一代地优化目标函数取到最大值,最优的可

    5、行解1.2 遗传算法的步骤遗传算法计算优化的操作过程就如同生物学上生物遗传进化的过程,主要有三个基本操作(或称为算子):选择(Selection)、交叉(Crossover)、变异(Mutation)遗传算法基本步骤主要是:先把问题的解表示成“染色体”,在算法中也就是以二进制编码的串,在执行遗传算法之前,给出一群“染色体”,也就是假设的可行解然后,把这些假设的可行解置于问题的“环境”中,并按适者生存的原则,从中选择出较适应环境的“染色体”进行复制,再通过交叉、变异过程产生更适应环境的新一代“染色体”群经过这样的一代一代地进化,最后就会收敛到最适应环境的一个“染色体”上,它就是问题的最优解下面给

    6、出遗传算法的具体步骤,流程图参见图1-1:第一步:选择编码策略,把参数集合(可行解集合)转换染色体结构空间;第二步:定义适应函数,便于计算适应值;第三步:确定遗传策略,包括选择群体大小,选择、交叉、变异方法以及确定交叉概率、变异概率等遗传参数;第四步:随机产生初始化群体;第五步:计算群体中的个体或染色体解码后的适应值;第六步:按照遗传策略,运用选择、交叉和变异算子作用于群体,形成下一代群体;第七步:判断群体性能是否满足某一指标、或者是否已完成预定的迭代次数,不满足则返回第五步、或者修改遗传策略再返回第六步。遗传算法有很多种具体的不同实现过程,以上介绍的是标准遗传算法的主要步骤,此算法会一直运行

    7、直到找到满足条件的最优解为止图1-1. 本文算法的流程图1.3 遗传算法的演变流程1 编解码这里我们通过采用二进制的形式来解决编码问题,将某个变量值代表的个体表示为一个0,1二进制串。当然,串长取决于求解的精度。如果要设定求解精度到六位小数,假设区间为,由于区间长度为,则必须将闭区间分为等分。因为所以编码的二进制串至少需要22位。将一个二进制串(b21b20b19b1b0)转化为区间内对应的实数值很简单,只需采取以下两步:1)将一个二进制串(b21b20b19b1b0)代表的二进制数化为10进制数:2)对应的区间内的实数:例如,一个二进制串a=表示实数0.637197。=(1000101110

    8、110101000111)2=2288967另假设我们所要求解的是一个含有三个变量的优化函数,并且三个变量作用域是在3000-3255之间,该优化函数是。这些整数可以使用8位二进制来代表,而8位二进制可代表的整数范围是255,所以我们使用基数3000,再加上二进制数的十进制值就是原来的数据了。(当然这里取值恰好是255,可以使用8位编码,否则按照上面的方法进行编码位数设定。) 例如:整数3021、3058、3240可表示如下。图1-2. 编码示例其中,像(3021,3058,3240)我们称为一个个体,而他们对应的二进制序列00010101 00111010 11110000我们称为一条染色体

    9、。一般情况下,我们认为染色体和个体是同一个概念,可以不作区分。2 初始化 初始化单条染色体: 初始化大小为N的种群如下:图1-3. 种群初始化示例其中,每个个体的长度是24,种群大小是N,如果存在一个二维数组中的话,该二维数组的大小是NL。3 适应度值和选择操作 在当前的迭代中,需要评估每个解的适应度值;然后基于适应度值计算个体的选择概率来选择个体用于下一次迭代;该阶段是为了选择优质的个体。图1-4. 通过适应度值计算选择概率 选择概率计算如下:其中,是第i个个体的适应度值,如图示中的15、27、6等;为第i个个体被选择的概率,如图示中的10%、14%等都是所计算出来的选择概率。4 交叉操作

    10、交叉操作主要是局部搜索操作,可以分为单点交叉、两点交叉和均匀交叉。目的是使用当前迭代中的两个个体产生2个新个体,用于下一次迭代;交叉概率一般在0.50.8之间,交叉点的选择是随机选择。 单点交叉: 两点交叉: 均匀交叉:5 变异操作 变异操作主要是全局搜索,通过变异概率修改个体,变异概率一般在0.001-0.01之间。操作如下:6 细节流程 细节流程如下:(1) 编码、初始化、适应度值(2) 计算概率(3) 交叉操作(4) 变异操作(5) 计算适应度值图1-5. 细节流程1.4 遗传算法工具箱使用工具箱的使用可以节约我们大量的时间,并且工具箱比较专业、规范,可以再较短的时间内获得想要的结果。在

    11、这里建议大家使用英国Sheffield大学的工具箱,资料比较齐全,也是公认的比较强大的工具箱。下面以校内赛A题用户甄别与筛选为例,来使用该工具箱。原题如下:3、某商家需要定位一批用户(从附件一中选取),使得这批用户的总影响力为10000、所有用户粉丝中男性总比例49.8%、所有用户平均每天发布的微博数量总和最大;请建立相关数学模型进行求解,并给出最优解时这批用户的平均“活跃粉丝比例”。建立三个目标函数如下:综合目标函数如下:其中,N是所选的用户数。在这里使用了常见的线性加权方式来解决多目标优化问题的,为了使用工具箱给出这个简单的示例,在实际中还需要把各个目标函数的数量级降成同级,还可以使用帕累

    12、托最优来求解多目标等。具体程序如下:主函数如下:function main% 数据清空clc,clearclose all;% 数据读入influence = importdata(data/influence.txt);aveweibos = importdata(data/aveweibos.txt);existactiveratio = importdata(data/existactiveratio.txt);existratio = importdata(data/existratio.txt);maleratio = importdata(data/maleratio.txt);%

    13、 定义遗传算法参数NIND = 100; %个体数目(Number of individuals)MAXGEN = 10000; %最大遗传代数(Maximum number of generations)GGAP = 0.9; %代沟(Generation gap)trace = zeros(MAXGEN,2); %遗传算法性能跟踪初始值% 遗传算法实现Chrom = randint(NIND, 1000, 0, 1); %初始种群gen = 0;ObjV = Objectvalue(Chrom, aveweibos, influence, maleratio); %计算初始种群函数值whi

    14、le gen 0) index = index + 1; weibocount = weibocount + aveweibos(i); influencecount = influencecount + influence(i); maleratiocount = maleratiocount + maleratio(i); end end value(k) = alpha * log(abs(influencecount - 10000) + 1) + beta * log(abs(maleratiocount/index - 0.498) + 1) + gama * log(1 + 1/

    15、weibocount); end结果如下: 我们很容易看出来,程序迭代大概在2500次左右就达到了最优解,因而我们在设置迭代次数的时候开始就不需要设置太高,以防程序运行过慢。 具体程序请参考附件中的A_code程序。1.5 MATLAB自带工具箱的使用简单的使用在第二期培训资料已经介绍过了,下面给出附件中GA and PS里面示例的结果(GA是遗传算法,PS是模式搜索算法)。使用该示例的目的是让大家同时也熟悉动态作图的方法和一些技巧。1、使用GA求非平滑函数最优解具体函数参见程序nonSmoothFcn.m。运行nonSmoothOpt.m的结果如下:2、使用PS求平滑函数最优解 具体函数参见

    16、程序smoothFcn.m。运行PSdemo.m的结果如下: 从图中可以看出标记有搜索起始点、FMINCON解、PS解,起始点是分别使用fmincon和PS优化的共同初始解,然而从最终的结果可以看出模式搜索可以达到最优解,而MATLAB自带的fmincon未能求得最优解。1.6 本章小结写教程始终是个无止境的工作,期望大家比赛结束后能参与教程的撰写当中来。近期写的教程主要是针对建模的,同时也添加了一些在毕业设计和研究生阶段也常用的知识,包括后续的神经网络、GUI设计、多目标优化、图像处理等。最近一直在忙分布式集群的海量数据存储,后续会在此基础上进行各类数据挖掘工作,当然也会抽空把所做的一些框架、模型、算法和程序一并写出来与大家分享的,有兴趣的可以参与呐(主要是Java、Python开发哈)。附 录: MATLAB自带优化函数:1、fminbnd(单变量,黄金分割法和插值法)2、fminunc(单、多变量,梯度最优化算法)3、fminsearch(多变量,Nelder算法) 具体用法参见MATLAB的help,或者查看第二期培训资料


    注意事项

    本文(数学建模智能算法精品文档完整版.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开