遗传算法在交通路线matlab,Matlab遗传算法公交车路线优化

Matlab遗传算法公交车路线优化

Matlab遗传算法公交车路线优化

Matlab遗传算法公交车路线优化1 模型介绍

2模型分析2.1整体设计

2.2要点分析

3结果展示

1 模型介绍

以乘客出行总时间最小为目标函数,求出其最小值即为最终接驳优化方案。

2890c417e05b46d1411fc36c0444e4e8.png

模型约束条件

在算法过程中可能会产生不符合实际的公交线路,故要做出约束,排除不符合实际和要求的线路。本文以线路长度和线路非直线系数为优化模型的约束条件[14]。

1)线路长度

线路长度过短会导致车辆运行效率低且运行速度低,并增加乘客换乘次数。而线路长度过长,会增加车辆发车频率导致需增加车辆需求数量。

1f7c1fc0649ee041146cf392e6d81799.png

假设该算例已知条件如下:

1)假设2、3……11公交站点组成的公交线路为A(3,5,6,1,8,9),B(2,4,10,7,1,11)两条。

2)轨道车站接驳区域内站间距已知,如表4.1。且站间距不大于1km,本文只对站间距小于1km的站点做出记录,其他站点用*表示。

3)轨道站点1与其接驳公交站点之间的客运量如表4.2。

4)两条接驳线路编码按0-1编码,A(1,0,1,0,1,1,0,1,1,0,0),B(1,1,0,1,0,0,1,0,0,1,1)。

51cb81c27cc4199ed1f0ea6c619899e9.png

d793d0fc1994eb8d18bbf364dde9ad0b.png

2模型分析

2.1整体设计

fe8bbd8fa4d4fdf5c6fdd40085a61d6c.png

2.2要点分析

1.根据本模型的个体特性,01编码虽然能表示公交路线的内容,但是无法体现顺序。采用01编码虽然在交叉变异操作上比较便利,但是不利于后续获取个体的目标函数值。故采取数字编码。

2.交叉变异操作,由于模型的要求,各节点的唯一性,以及接驳要求,交叉操作以地铁站点为中心,每次交叉产生2个新的个体;变异操作对除地铁站点外的公交站点进行相互交换,每次变异产生1个新的个体。

3.个体淘汰

通过 接驳距离,路线长度等进行淘汰,通过TestChrom函数实现。

3结果展示

GenMax=100

e6a78db8eba86befcad445f3b073cf06.png

Matlab遗传算法公交车路线优化相关教程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/245882.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql 连续签到天数_新版签到活动明天上线,福利活动抢鲜看~

明天游戏中心app旧版福利签到活动马上就要结束啦,虽然很多的魅友反馈说积分签到结束的太早,积分不够换5折券,不过更早的开启新版签到才能更快的享受到更好的福利嘛~今晚0点新版签到活动即将上线,接下来就一起来看看新版的签到活动…

java中nio怎么实现聊天,JAVA-NIO实现聊天室详细代码说明

JAVA-NIO实现聊天室详细代码说明JAVA-NIO实现聊天室详细代码说明github源码:https://github.com/JolyouLu/JAVAIO.gitsrc\main\java\com\JolyouLu\nio\groupchat 文件夹下public class GroupChatServer {//定义属性private Selector selector;private ServerSocketC…

python如何判断是否有弹出框_Selenium2+python自动化47-判断弹出框存在(alert_is_present)【转载】...

前言系统弹窗这个是很常见的场景,有时候它不弹出来去操作的话,会抛异常。那么又不知道它啥时候会出来,那么久需要去判断弹窗是否弹出了。一、判断alert源码分析class alert_is_present(object):""" Expect an alert to be pre…

matlab 图像旋转补色,旋转互补色光学错觉

HTML导入代码模板:Choose a colorRedGreenBlueCyanMagentaYellowOrangeYellow greenCyan greenCyan blueVioletRoseOr use system color pickerComplementary color illusionInstructions Stare at the black cross in the middle of the colored circles without m…

vscode 调试_如何使用VSCode调试JS?

更多精彩,请点击上方蓝字关注我们!序言做前端开发的朋友经常需要使用Visual Studio Code编辑代码,很多朋友就想在VSCode调试JS代码,下面我们就介绍下如何配置操作。一、环境准备首先安装好VSCode,准备好一个JS项目&…

基于matlab的信号合成与分解,基于matlab的信号合成与分解

基于matlab的信号合成与分解 - I - 摘 要 为了便于进行周期信号的分析与处理,常要把复杂的周期信号进行分解,即将周期 信号分解为正余弦等此类基本信号的线性组合,通过对这些基本信号单元在时域和频域 特性的分析来达到了解信号特性的目的。本…

python spangt_python怎么爬去spanlt;/span中间标签的内容

展开全部这个要看你使用32313133353236313431303231363533e4b893e5b19e31333363373765的是什么页面解析工具了,html """item1item2"""# 使用 scrapy 的Selectorfrom scrapy.selector import Selector# scrapy 的选择器支持 css和xpa…

php页面空白如何解决,php页面空白怎么回事 php出现空白页的解决方法

当出现php空白页时,怎么查看php报告的错误信息呢?具体方法如下:一、通过配置 php.ini 中的参数设置php的报错级别可以在 php.ini 中适当的位置增加一行error_reporting e_all注: php.ini 中有一些例子,比如本地的 php…

基站位置查询系统_木牛导航网络基站服务免费了!——更便捷、更高效、更省心!...

布谷飞飞劝早耕,春锄扑扑趁初晴。千层石树通行路,一带水田放水声。《山行》-- 姚鼐(Photo by Quang Nguyen Vinh)农业生产作为人类最传统的产业自古以来都讲究及时耕种,即抢农时根据气候适宜而进行季节性生产随着科技的发展,农业生…

php cgi进程很多win2008,php cgi.exe 太多 在 windowserver2008 apache 这个怎么样限制下?...

php cgi.exe 太多 在 windowserver2008 apache 这个怎么样限制下?mip版 关注:61 答案:2 悬赏:70解决时间 2021-02-24 01:48已解决2021-02-23 09:13php cgi.exe 太多 在 windowserver2008 apache 这个怎么样限制下?最佳答案2021-02-23 09:57可以设置最…

wince怎么刷carplay_Carplay支持仪表/HUD显示 宝马为全球超750000辆车发布OTA升级

【太平洋汽车网 新车频道】日前,宝马官方宣布,将从10月19日起为全球超过750000辆汽车提供iDrive 7.0最新版本的最重要的一次OTA升级。据悉,这项升级将有多项新功能加入,并重点支持Apple Carplay将导航等信息显示在HUD抬头显示和全…

php 如何调用redis,php如何调用redis

一、windows下php连接redis1、下载phpredishttps://github.com/nicolasff/phpredis/downloads2、根据你php版本,选择安装vc库,可以通过phpinfo();查看3、安装php_redis.dll模块将下载下来的php_redis模块放到php安装目录下的/ext/中,并在php.…

文本多标签分类python_Scikitlearn多标签分类

我正在尝试使用Scikit学习来学习文本的多标签分类,我正在尝试调整Scikit附带的一个初始示例教程,用于使用wikipedia文章作为培训数据对语言进行分类。我试图在下面实现这一点,但代码仍然为每个返回一个标签,我希望最后一个预测返回…

php命令执行无法重定向输出,php – CodeIgniter 3重定向功能无法正常工作

我正在重新编码和更新我的CMS我已经在CI2工作到CI3,而在我的生活中我无法让我的重定向功能在CI3上为我工作.除了重新设计我的模型之外,我的代码到目前为止与我的CI2代码完全相同.最初我怀疑我的布局钩子是罪魁祸首,但我完全禁用了他,我仍然没有到达任何地方.public function lo…

python read()函数_Python File read()方法

Python File read()方法概述read() 方法用于从文件读取指定的字节数,如果未给定或为负则读取所有。语法read() 方法语法如下:fileObject.read();参数 size -- 从文件中读取的字节数。返回值返回从字符串中读取的字节。实例以下实例演示了 read() 方法的使…

oracle数据库11gr2,Oracle 11g R2 X64数据库安装

最近在安装Linux下的Oracle环境,折腾了很久,遇到了不少问题,最后终于搞定了,于是写下下文记录安装过程1.Linux环境配置准备环境:Linux:cents os 6.5,DB:Oracle 11g R2 X64&#xff0…

oracle ref游标用法,[置顶] Oracle 参照游标(SYS_REFCURSOR)使用

I在这篇文章中介绍如何使用存储过程处理参考游标1.创建必要的表和样例数据CREATE TABLE USER_INFO(User_ID integer primary key,--Primary keyUser_Name varchar2(20),sex varchar2(2));insert into user_info(user_name,sex) values(David.Tian,M);insert into user_info(use…

python教授_Python为何如此优秀?斯坦福教授告诉你!

Python 是一门更注重可读性和效率的语言,尤其是相较于 Java,PHP 以及 C 这样的语言,它的这两个优势让其在开发者中大受欢迎。诚然,它有点老了,但仍是80后啊 —— 至少没有 Cobol 或者 Fortran 那么老。而且&#xff0c…

php数组转集合,php-Laravel-将数组转换回集合

我只想在商品表中获取类别的集合.我的类别表有300个项目.如果在产品表中附加了类别,我只想要一个集合. $categories集合仅应产生约10个类别,因为只有约10个产品具有不同的category_id$products DB::table(products)->groupBy(category_id)->get();foreach($products as …

python 设计模式 观察者_设计模式Python实现-观察者模式

观察者模式(发布-订阅模式 Publish Subscribe Pattern):定义了一种一对多的关系,让多个观察对象同时监听一个主题对象,当主题对象状态发生变化时会通知所有观察者,是它们能够自动更新自己,是一种行为设计模式。观察者模式的结构1,Publisher 会…