[发明专利]一种自动化编制公交时刻表和车辆排班计划的方法有效
| 申请号: | 201911120311.0 | 申请日: | 2019-11-15 |
| 公开(公告)号: | CN110991706B | 公开(公告)日: | 2023-05-05 |
| 发明(设计)人: | 陈童;杨宇伟;潘振兴;沈峰;娄亭 | 申请(专利权)人: | 上海电科智能系统股份有限公司 |
| 主分类号: | G06Q10/04 | 分类号: | G06Q10/04;G06Q10/0631;G06Q50/30;G06N3/126 |
| 代理公司: | 上海璀汇知识产权代理事务所(普通合伙) 31367 | 代理人: | 王文颖 |
| 地址: | 200063 上海市*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 自动化 编制 公交 时刻表 车辆 排班 计划 方法 | ||
1.一种自动化编制公交时刻表和车辆排班计划的方法,其特征在于,包括以下步骤:
步骤1、设定模型的目标函数为:式中,Z表示总目标函数,表示使用的车辆总数,Xk表示第k辆车辆是否执行车次,为(0,1)变量;m表示车辆的总数;T表示总无效休息时间,其中Xkij为(0,1)变量,表示第k辆车辆执行完车次i后执行车次j,表示车次j的出发时间,表示车次i的到达时间,tusedrest表示相邻两车次之间的有效休息时间,相邻两车次之间的有效休息时间tusedrest的计算公式为:
式中,trest表示最小休息时间,tfenban表示可分班时间,Tmeal表示就餐时间区间,tmeal表示就餐休息时间;
设定模型的约束条件,约束条件包括时刻表约束、车辆排班计划约束,其中:时刻表约束包括:
满足各时段发车间隔的取值范围:hmin≤hi≤hmax,式中,hmin表示最小发车间隔,hmax表示最大发车间隔,hi表示相邻车次之间的发车间隔;
末班车发车时间不超过线路最晚运营时间:
式中,表示车次n的出发时间,表示上行首班车发车时间,Tup表示上行最晚营业时间,表示下行首班车发车时间,Tdown表示下行最晚营业时间;
车辆排班计划约束包括:
车次衔接约束,保证每个车次均有车辆执行且被执行一次,有:
相邻车次接续约束:
式中,%为取余运算符;
车辆总工时约束:
式中,表示车辆k执行的最后一个车次的到达时间,tin表示车辆进入停车场的时间,表示车辆k执行的第一个车次的出发时间,tout表示车辆离开停车场的时间,t'fenban表示实际分班时间,tmax表示最大车辆总工时,tup_in表示上行进场时间,tdown_in表示下行进场时间,j'表示车辆执行的最后一个车次的编号,tup_out表示上行离场时间,tdown_out表示下行离场时间,i'表示车辆执行的第一个车次的编号;
营业车时约束:式中,tmax_work表示车辆最大营业工时;
上述步骤中:hmin,hmax由现场确定,根据客流的高峰和平峰时段取值不同;n、m、trest、tmeal、tfenban、Tup、Tdown、tmax、tmax_work、tup_in、tup_out、tdown_in、tdown_out由线路情况确定;
步骤2、采用遗传算法求解步骤1建立的模型,从而得到公交时刻表和车辆排班计划,包括以下步骤:
步骤201:编码产生初始群体
采用实数方式编码,设置基因长度为2n,前n位为相邻车次间发车间隔,取值根据公式hmin≤hi≤hmax,其中第1、2位表示首班车,取值为0,根据首班车发车时间依次计算每个车次的发车时间;后n位为1到n连续排列的整数,其中n表示全日总发车,奇数表示上行车次,偶数表示下行车次,用来生成车辆排班计划,整体基因表示为pop(1)=[0,0,11,10…,1,2,3,4…n];
步骤202:计算个体适应度值
根据初始群体计算公交时刻表和车辆排班计划,在生成两者的同时根据模型中的公式计算目标函数,即车辆数Z和无效休息时间T,目标函数为求最小,且非0,将个体适应度值设置为目标函数的倒数,其中,所述目标函数的计算过程包括以下步骤:
步骤2021、根据基因编码前n位发车间隔和首班车发车时间计算所有车次出发时间,形成时刻表,并将基因后n位提取出来记为集合trips;
步骤2022、定义一个空的元胞数组用来储存车次链,记为block,每个车次链为一个数组,代表一辆车的排班计划;
步骤2023、安排车辆执行trips中第一个车次trips(1),更新车次链集合block;
步骤2024、依次安排trips中后续车次trips(j),优先考虑已经使用的车辆;
步骤2025、计算trips(j)和trips(j-1)之间的接续时间,即车次trips(j)的发车时间减去车次trips(j-1)的到达时间,查看是否满足和若不满足,转到步骤2027,若满足,继续;
步骤2026、计算接续了trips(j)之后该车次链的总工时和营业车时,并根据车辆总工时约束和营业车时约束的公式判断是否满足车辆总工时和营业车时的约束,若不满足,转到步骤2027,若满足,继续;
步骤2027、安排新的车辆执行车次;
步骤2028、更新车次链,计算该车次链的无效休息时间;
步骤2029、判断集合trips中所有的车次是否都已安排车辆执行,若否,转到步骤2024,若是,则结束,得到车辆数和无效休息时间,从而得到目标函数;
步骤20210、计算个体适应度值,即目标函数的倒数;
步骤203:判断算法是否终止
当算法达到最大迭代次数时,停止更新,并输出最优个体基因,根据编码规则进行解码,前n位为相邻车次间发车间隔,其中第1、2位表示首班车,取值为0,根据首班车发车时间依次计算每个车次的发车时间,形成时刻表;后n位为车辆排班计划,根据适应度值计算过程,得到车次链集合,即元胞数组block;
步骤204:执行选择操作:采用精英保留策略对个体进行选择:
步骤205:执行交叉操作
生成[0,1]之间的随机数x,若x<Pc,Pc表示交叉概率,则执行交叉操作,根据随机产生交叉点所在的位置,将交叉操作分为两种,记交叉点位置为i:
(1)若交叉发生在前n位,则采用单点交叉方式,将两个个体的第i位到最后一位进行整体交换;
(2)若交叉发生在后n位,为了保证车次的完整性和唯一性,采用部分映射交叉方式,前n位保持不变,后n位交叉的具体步骤为:
步骤2051、生成一个取值范围为[1,n-i]的随机整数作为交叉长度l,将父代个体中第i位到第i+l+1位记为交叉部分;
步骤2052、新建子代个体集合,长度为2n,前n位和对应的父代个体相同,第n位到第n+l+1位为对应的父代个体的交叉部分;
步骤2053、对子代个体1,从左到右扫描父代2中第n位到第2n位,删除子代个体1中已有的车次,将剩余的基因依次填充到子代个体1中,得到子代个体1;同理,对子代个体2进行操作,得到子代个体2;
步骤206:执行变异操作
生成[0,1]之间的随机数x,若x<Pm,Pm表示变异概率,则执行变异操作,根据随机产生变异点所在的位置,将变异操作分为两种,记变异点位置为i:
(1)若变异发生在前n位,则根据第i位发车间隔的取值范围,随机生成一个整数替代第i位原来的值;
(2)若变异发生在后n位,则生成一个取值范围在[1,2n-i]的随机整数j,将个体中第i位和第j位的数值互相交换;
经过变异操作后得到新群体,转到步骤202。
2.如权利要求1所述的一种自动化编制公交时刻表和车辆排班计划的方法,其特征在于,所述步骤204包括以下步骤:
步骤2041、计算每个个体的适应度值fi,根据下式计算个体的相对适应度,即每个个体被遗传到下一代群体中的概率pi:
式中,popsize表示遗传算法种群数量;
步骤2042、对种群中全部个体按相对适应度进行排序;
步骤2043、利用精英保留策略,根据个体适应度的大小选择前k个适应度较大的个体,去替代适应度较小的k个个体,加快算法收敛速度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海电科智能系统股份有限公司,未经上海电科智能系统股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911120311.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:单芯光纤-多芯光纤组合式光学马达系统
- 下一篇:多芯光纤悬浮式光学马达系统
- 同类专利
- 专利分类
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理





