数学建模论文范本电气学院.doc
《数学建模论文范本电气学院.doc》由会员分享,可在线阅读,更多相关《数学建模论文范本电气学院.doc(22页珍藏版)》请在咨信网上搜索。
1、论文题目: 基于双种群遗传算法的公交路线查询问题 姓 名学号专业班级1 基于双种群遗传算法的公交路线查询问题摘要 本文探讨的是公交路线选择而开发的查询系统。以两站点之间所花时间的最小值作为主要目标函数,利用双种群遗传算法的原理建立公交路线选择数学模型,再通过MATLAB程序来实现整个流程和迭代,最终求出全局近似最优解,即最优权重线路,以起点和终点查询到近似的最优公交路线,并进行了误差分析,模型的评价与推广。 问题一:仅考虑公汽线路,对数据进行初步分析和处理后,考虑到数据的复杂性和数据搜索范围的广度,我们应用比较成熟的双种群遗传算法建立数学模型. 通过MATLAB强大的矩阵运算功能得到站点之间的
2、邻接矩阵,用时间加权. 其流程思想为基于双种群初始群体A、B,对染色体进行整数编码,用竞争选择法选择出较优个体作为繁殖下一代的母体,依据选择性集成思想,等概率使用两点交叉法和区域交叉法对染色体进行交叉操作与使用邻居交换变异和两点交换变异进行染色体变异操作,并结合MATLAB反复迭代,最终给出了六对起始站与终点站的六条近似最优路线. 该法扩大遗传算法的搜索范围,避免过早收敛。 问题二:在数据处理上用时间加权把地铁站点和汽车站点统一化,可得所有站点之间的邻接矩阵。 其求解原理与问题一相似,但由转车方式的不同生成了8种不同的适应度函数,再根据适应度函数来进行问题的求解。 问题三:我们将任意两个站点之
3、间的步行时间作为矩阵中相应位置的权,这时构建的邻接矩阵中的权就由两站点之间公汽到公汽的时间,公汽到地铁的时间,地铁到公汽的时间,地铁到地铁的时间和两点之间的步行时间构成. 但其求解原理与问题一相似,但由转车方式的不同就会生成不同的适应度函数,再根据适应度函数来进行问题的求解。 双种群遗传算法提供了一种求解复杂系统优化问题的通用框架,它不依赖于问题的具体领域,对问题的种类有很强的鲁棒性,具有自组织、自适应和自学习性。 关键词双种群遗传算法;竞争选择法;离散赌轮选择算子;选择性集成思想. 一、问题的重述第29届奥运会明年8月将在北京举行,届时有大量观众到现场观看奥运比赛,其中大部分人将会乘坐公共交
4、通工具(简称公汽,包括公汽、地铁等)出行。 北京市的公汽线路已达800条以上,使得公众的出行更加通畅、便利,但同时也面临多条线路的选择问题。 针对市场需求,某公司准备研制开发一个解决公汽线路选择问题的自主查询计算机系统. 为了设计这样一个系统(核心是线路选择的模型与算法),从实际情况出发,满足查询者的各种不同需求。 需要研究的问题如下:问题一:只考虑公汽线路情况,给出任意两公汽站点之间线路选择问题的一般数学模型与算法。 并根据基本参数设定中的数据,利用其模型与算法,求出6对起始站终到站之间的最佳路线,并要有清晰的评价说明. 见下表:123456起始站S3359S1557S0971S0008S0
5、148S0087终点站S1828S0481S0485S0073S0485S3676问题二:同时考虑公汽与地铁线路,解决以上问题。 问题三:假设知道所有站点之间的步行时间,给出任意两站点之间线路选择问题的数学模型。 其中基本参数设定:相邻公汽站平均行驶时间(包括停站时间):3分钟相邻地铁站平均行驶时间(包括停站时间):2。5分钟公汽换乘公汽平均耗时:5分钟(其中步行时间2分钟)地铁换乘地铁平均耗时:4分钟(其中步行时间2分钟)地铁换乘公汽平均耗时:7分钟(其中步行时间4分钟)公汽换乘地铁平均耗时:6分钟(其中步行时间4分钟)公汽票价:分为单一票价与分段计价两种,标记于线路后;其中分段计价的票价为
6、:020站:1元;2140站:2元;40站以上:3元地铁票价:3元(无论地铁线路间是否换乘)注:以上参数均为简化问题而作的假设,未必与实际数据完全吻合。 公汽线路及相关信息见数据文件B2007data.rar. 二、模型的假设1。 转车的次数控制在2次以内;2. 相邻公汽站平均行驶时间(包括停站时间):3分钟;3。 相邻地铁站平均行驶时间(包括停站时间):2。5分钟;4。 公汽换乘公汽平均耗时:5分钟(其中步行时间2分钟);5。 地铁换乘地铁平均耗时:4分钟(其中步行时间2分钟);6. 地铁换乘公汽平均耗时:7分钟(其中步行时间4分钟);7。 公汽换乘地铁平均耗时:6分钟(其中步行时间4分钟)
7、;8. 公汽票价:分为单一票价与分段计价两种,标记于线路后,其中分段计价的票价为:020站:1元,2140站:2元,40站以上:3元;9. 地铁票价:3元(无论地铁线路间是否换乘);10。 知道所有站点之间的步行时间.三、符号说明C:只考虑公汽线路的情况下,每个个体对应路线总长;D:考虑公汽和地铁线路的情况下,每个个体对应路线部长;:相邻公汽站平均行驶时间(包括停站时间);:相邻地铁站平均行驶时间(包括停站时间);:第k个个体所对应的适应度值;A:每个个体所对应的适应度比例;P:每个个体所对应的选择概率(适应度比例);:所有站点之间的步行时间;:表示转车换乘所耗时间之和。四、模型的建立与求解(
8、一)问题一1.1 问题分析该问题是一个组合优化问题. 对于此类问题,只有当其规模较小时,才能求其精确解. 在本文中公汽路线总数与站点数是成指数型增长的,所以一般很难精确地求出其最优解,因而寻找出有效的近似求解算法就具有重要意义。 由于L406公汽线路的路线是环形的,而数据中没有标示出来,所以我们用相邻站点整体路线也相邻,判断出该公汽线路是环行的,所以应当作环行处理。 对于该问题,我们先求出其站点与站点之间的邻接矩阵(权用时间表示),其矩阵大小为,数据量太多,不能输出,只能把放在内存中. 许多智能算法被用于求解两点间线路问题. 如禁忌搜索、模拟退火、蚁群算法等. 其中遗传算法是被研究最多的一种算
9、法. 但标准遗传算法容易陷入局部极值解,出现“早熟收敛”现象. 为此人们提出了多种改进方法,如将遗传算子中的交叉算子进行改进,应用单亲遗传算法,将遗传算子与启发式算法结合等. 遗传算法的核心思想为自然选择,适者生存. 遗传算法作为一种模拟生物进化的一种算法,提供了一种求解复杂系统优化问题的通用框架,它不依赖于问题的具体领域,对问题的种类有很强的鲁棒性,具有自组织、自适应和自学习性。 其也是一种迭代算法,从选定的初始解出发,通过不断地迭代,逐步改进当前解,直到最后搜索到最优解或满意解,其迭代过程是从一组初始解(群体)出发,采用类似于自然选择和有性繁殖的方法,在继承原有优良基因的基础上生成具有更好
10、性能的下一代解的群体. 遗传算法的流程图见下图:开始初始化群体是否满足条件选择退出算法交叉变异否个体评价是 遗传算法流程图标准遗传算法是针对一个宏观的种群进行选择、交叉、变异三种操作。 双种群遗传算法是一种并行遗传算法,它使用多种群同时进化,并交换种群之间优秀个体所携带的遗传信息,以打破种群内的平衡态达到更高的平衡态,跳出局部最优。 在双种群遗传算法中,每一种群都是按照标准算法进行操作。 在操作时,首先建立两个遗传算法群体,即种群A和种群B,分别独立地进行选择、交叉、变异操作,且交叉概率、变异概率不同. 当每一代运行结束以后,产生一个随机数n,分别从A,B中选出最优染色体和n个染色体进行杂交,
11、以打破平衡态. 因为在双种群遗传算法中,每一种群都是按照标准算法进行操作的. 由上分析,对于本问题,我们釆用双种群遗传(double populations genetic algorithm)在选择公汽路线问题中的应用. 遗传算法的创始人美国著名学者、密西根大学教授John H.Holland认为,可以用一组编码来模拟一组计算机程序,并且定义了一个衡量每个“程序的度量:“适应值。 Holland模拟自然选择机制对这组“程序进行“进化,直到最终得到一个正确的“程序”为止. 编码方式有:二进制编码、十进制编码和符号编码等方法。 整数编码与符号编码一般用于与顺序有关的组合优化方面的问题。 根据公汽
12、路线的特点,本文的工作采用整数. 染色体长度与公汽路线结点个数相同,染色体的每个基因的编码即为公汽路线结点的编号。 因此,每条染色体由1到n(3957)的一个全排列组成。 在对染色体进行时,考虑到适应度比例法(轮盘赌选择法)与最佳个体保留法各自的优缺点,差异性较大,依据选择性集成思想,表现好的个体学习器越精确、差异越大,集成后可以获得的结果越好。 而竞争选择法集成了上述两种的优点克服了它们的缺点,因此本文釆用竞争选择法。 其中竞争选择法是釆用适应度比例法进行选择,交叉后产生下一代,再利用最佳个体保留法将上一代的最佳个体直接保存下来,然后从新群体中淘汰一个适应度最差的个体,提高了问题求解的收敛速
13、度,体现了遗传算法自适应环境的能力. 在对染色体进行交叉时,对于由整数编码的染色体,交叉操作会形成染色体中的非法基因,即重复基因。 所以实现染色体交叉要将重复的基因清除。 只使用一种交叉方法容易引起过早收敛,即“早熟”。 依据选择性集成思想 ,等概率使用两点交叉法和区域交叉法这两种交叉方法,扩大遗传算法的搜索范围,避免过早收敛. 在染色体的变异中,与交叉方法一样,如果使用一种变异方法,同样可能会引起“早熟”. 为了避免过早收敛,依据选择性集成思想选择邻居交换变异和两点交换变异这两种个性好且差异性较大的变异方法,等概率使用以扩大搜索范围。 1。2 模型建立1。2。1 从起点站到终点站不转车,则双
14、种群遗传算法的流程如下:(1)产生邻接矩阵 邻接矩阵的MATLAB程序实现见附件一. (2)基于站点序号的编码 一般来说种群规模越大越容易收敛到最优解,但是要保证其初始种群中的每个个体都是互异的,m不能设置过大,否则无法产生初始种群,且m过大其收敛速度必然降低,也会消耗更多的计算资源,并基于一般遗传算法中初始群体大小的选择,本文中取m=30。 公汽路线问题中每一种起点站到终点站的方案对应于解空间的一个解 ,解空间中的数据是遗传算法的表现形式,从表现到基因型的映射称为编码. 最初遗传算法是采用二进制编码方法,但在大量实际问题中,二进制编码操作不简便,不易进行变异交叉操作,易产生大量非可行解,所以
15、针对特殊的问题,可以灵活采用不同的编码方法. 本文在公汽线路求解中,采用基于站点序号的实数编码,将染色体定义为公汽线路的一条解路线中的站点号序列,在MATLAB中为一个没有重复数字的行向量来表示。 设有n个站点的某个全排列为,则个体的染色体表示为,n=3957。 (3)产生初始群体种群中每一个体为n(3957)个站点的一个全排列,随机生成m(m=30)个1n 的随机排列,得到m个个体的初始种群,m为种群大小,n为染色体长度。 生成初始群体的具体算法的MATLAB程序实现见附件二。 A、B初始群体的数据矩阵为,由于数据太多,文中就不给出数据(其结果可运行程序得出). (4)适应度函数与染色体的选
16、择在遗传算法进行搜索时只以适应度函数为依据,利用种群中个体每个的适应度值来进行搜索,适应度值是进化时优胜劣汰的依据,应用中总是根据问题的优化指标来定义. 对于公汽线路问题,以个体对应路线所发的时间之和作为个体适应度,其适应度越小,表明该个体越优. 则该个体对应为:其中(3(分钟)表示相邻公汽站平均行驶时间(包括停站时间),表示站点和之间的距离,表示起始点与终点站之间的距离。一般来说,选择算子设计使得个体被选中并遗传到下一代群体中的概率与该个体的适应度大小有关。 适应度是越高越好,而在公汽线路问题中,如果适应度是所经过的对应路线所花的时间之和,路线所花时间之和是越小越好,为了使公汽线路问题的适应
17、度与一般遗传算法中的适应度一致. 这里用选择概率来进行衡量。 则每个个体的选择概率(适应度比例)就是每个个体的适应度与所有个体适应度的总和之比,即:其中表示所有个体适应度的总和。 但当路径所花时间非常大(例如:10000),这样其适应度比例的最高数据位将在小数点后的第四位,这样不利于计算,为此要进行尺度变换。 为确保适应度有两位整数,此处将适应度放大倍数L(本题中 L=lOOO) 因此适应度比例的表达式为:遗传算法中选择算子设计经典的是用适应度成比例的概率方法 ,但是这里存在的问题是由于许多个体的适应度比例很小几乎没有机会复制个体,从而被过早地淘汰. 这样整个群体多样性就无法得到保证,这里采用
18、一种新的赌轮选择算子离散赌轮选择,将有效地避免了这个问题. 在本题中是由30个个体构成初始群体,即:,其所占的适应度比例分别是,在保持这个比例的情况下对这个取值范围放大1000倍。 按照顺序在11000内分别占不同的区间,当随机函数产生11000以内的时,即使是适应度比例最小的也有可能被选中,从而较好的保持了群体的多样性。 由上所述则可选择出适应力强的,淘汰适应力弱的个体从而得到总体适应能力强的群体。 经过选择算子得出总体适应能力强的A、B群体数据矩阵为,因数据量太大,文中就不给出具体数据. (5)交叉重组依据选择性集成思想 ,等概率使用两点交叉法和区域交叉法这两种差异性较大的交叉方法,扩大遗
19、传算法的搜索范围,避免过早收敛. 其中,两点交叉法是先随机设定两个基因交叉位置,将父辈两个个体在这两个交叉点之间的基因链码相互交换,从而形成新的个体;区域交叉法是随机在染色体中选择一个交叉区域,将第二条染色体的交叉区域加在第一条染色体的前面,第一条染色体的交叉区域加在第二条染色体的前面,在交叉区域后依次删除与交叉区域相同的基因,得到最后的两条子染色体. 将第(3)步得到的关于A,B种群的数据分别用两种交叉算法来实现操作. 其中一半数据用两点交叉法,另一半的数据用区域交叉法来进行染色体的交叉重组。 其具体算法的MATLAB程序实现见附件四. 经过交叉重组得出的A、B群体数据矩阵为,因数据量太大,
20、文中就不给出具体数据. (6)染色体的变异为了避免过早收敛,依据选择性集成思想选择邻居交换变异和两点交换变异这两种个性好且差异性较大的变异方法,等概率使用以扩大搜索范围. 其中,邻居交换变异是产生一个随机数,将该数对应的基因和其后的基因交换;若该数对应的基因是染色体中的最后一个基因,则将该基因与染色体的第一个基因交换;两点交换变异是先产生两个不同的随机数,确定两个交换点,然后对个体在此两点的基因进行交换. 经过染色体变异得出的A、B群体数据矩阵为,因数据量太大,文中就不给出具体数据. (7)种群交叉将两个种群中的最优解取出,再在每个种群中随机选取n个染色体,将这n+1个染色体互换,进入对方种群
21、。 经过种群交叉得出的A、B群体数据矩阵为,因数据量太大,文中就不给出具体数据. (8)最佳个体保留法 要把群体中适应度最高的个体不经过配对交叉直接复制到下一代中,然后从新群体中淘汰一个适应度最差的个体。 分别对A、B进行独立的操作。 经过最佳保留法选择后得出的A、B群体数据矩阵为,因数据量太大,文中就不给出具体数据。 (9)迭代的结束条件 在本文中,采用进化的代数N作为循环迭代过程的结束,如果等于N,则算法结束,输出适应值最高的解;否则,继续重复上述过程。 重复步骤(3),(4),(5),(6),(7),(8)依次进行循环迭代,本题中设定迭代次数为N=1000。 最后得到30个近似的最优解。
22、 以上(2)(9)流程的MATLAB程序实现见附件二。 (10)结果选出这30个近似最优解中以时间作为权值最小的那一组解作为题设中要求的近似最优解。 其中满足要求的基因链码(站点数)的顺序即是顾客所需从起始点到终点站的路线1.2。2 从起点站到终点站转一次车从起点站到终点站转一次车遗传算法流程中基于站点序号的编码,交叉重组,染色体的变异,种群交叉,迭代的结束条件和结果的原理与从起点站到终点站不转车相同. 只有在适应度函数与选择流程中每一个个体所对应的适应度函数处有所改变,其函数为:其中5(分钟)表示公汽换乘公汽一次耗时(其中步行时间2分钟).除这之外,这一流程中的其他的原理没变。 1.2.3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 建模 论文 范本 电气 学院
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。