杨昌休,刘 莉,王长林
(西南交通大学 信息科学与技术学院,成都 610031)
列车自动运行(ATO)是列车自动控制(ATC)系统的重要组成部分,目前已在城市轨道交通系统中得到广泛应用[1],但是在高速铁路领域的应用还处于起步阶段。ATO系统采用两部分完成:(1)离线或者在线完成速度曲线的优化;(2)设计控制器,在列车速度防护(ATP)系统的实时防护下,根据优化的速度曲线完成对列车的控制。文章在列车速度曲线的多目标模型基础上,采用遗传算法对高速列车的速度曲线进行了优化。
设T为给定两站间所需的运行时间,Tmin为列车在两站间按最大速度运行所用的最短时间。一般而言,最短时间Tmin要小于给定时间T,这样列车才有可能在规定的时间内完成行驶。
(1)式说明当列车按最大速度运行,时间有一定的富余,可以合理地选择惰行点,使列车在保证准点的前提下,实现节能和平稳等性能指标。
(2)式说明当列车需要保持当前的运行速度,才能正点到达车站。
(3)式说明当列车处于晚点状态,列车需要采取最大运行速度行车,以免列车进一步晚点。
精确定点停车模型如式(4)。
式中,D为停车精度的误差;S为停车目标点;Sf为当前停车位置。
当列车停在停车允许范围内时,D≤Dmax,符合要求(进入停车窗),列车允许打开车门。
当列车停车在停车允许的范围之外时,D≥Dmax,不符合要求(在停车窗外),列车不允许打开车门,需要进行调整才能保证乘客正常上、下车。
舒适度表示为列车在运行过程中对乘客冲击的程度,冲击率越大表示乘客越感觉不舒服,冲击率越小乘客越舒服。冲击率的定义为加速度相对于时间的变化率。在整个列车的运行过程中,舒适度(Comfor table)可以用冲击率对整个运行时间的积分来表示。
式中,a为列车运行过程中的加速度;T为列车运行时间。
为了更好地表示旅客舒适度模型,定义非舒适度(J)为:
非舒适度J值越小,旅客的舒适度越高。但是当J小于一定值的时候,对旅客的影响很小,可以认为是一个可以忍受的恒定值,国际标准ISO2631给出了加速度和舒适性测试结果。
列车的能耗模型为列车从起点到终点的过程中,加速过程、巡航过程、制动过程以及车厢内设备(例如空调、电灯等)所消耗的能量。
能耗模型可以表示为列车行车过程中作的功所消耗的能量。也就是用列车每个时刻做功消耗能量对时间的积分表示列车能耗,如式(7)。
式中,Power为列车能耗;t1,t2为列车在这段时间的初时刻和末时刻;
u(t)为列车的每个时刻的能耗函数。
经过进一步分析CTCS-3级列控系统,列车的能耗函数为:
式中,F为牵引力;B为制动力;V为当前速度;A为列车的辅助功率;T为站间运行时间;ξM为列车牵引时电能转化为机械能的乘积因子;ξB为列车制动时机械能转化为电能的乘积因子。
在完成高速列车准点、精确停车、舒适度和能耗模型基础上,选择一条列车运行的线路作为遗传算法搜索空间,如图1。把该段线路L分成若干个区间(L1,L2,…,Ln),把区间的分界点作为遗传算法的关键点。通过遗传编码,将列车在该线路上的关键点纳入到遗传算法的染色体当中,由于一条染色体是不能完成自然选择的复制、交叉和变异的机制,故需要选择多条染色体组成一个种群,通过种群间的复制、交叉和变异操作来实现各个染色体对环境适应能力的提高,从而达到优化列车运行速度曲线目的。这里,环境是指正点、舒适度、准确停车和节能。通过在给定的环境条件下,种群不断地适应环境;同时在任意给定的环境条件下(但能满足最基本的种群生存要求,如某条线路的最短时间),种群也能很好地适应。
图1 线路的划分
2.2.1 染色体的编码
遗传算法不能直接处理线路数据的关键点,必须把它们转换成遗传空间的由基因按一定结构组成的染色体或个体。这一转换操作就叫做编码。在实际应用中,有二进制编码、格雷编码、浮点数编码、参数编码[2]。本文采用的整数编码,以向量R(x1, x2…, xn)表示染色体的个体,基因xi表示列车在某个具体位置采取的手柄变化,故xi由手柄变化时列车所在的位置和手柄级位具体值组成。
2.2.2 初始种群的生成
对于遗传算法来说,一个染色体是不能进行优化的。就像生物界一样,需要一定数量的个体构成种群才能不断进行繁殖。而种群的数量太大,又会影响到最优解或者次优解的速度,在本文中,选择种群的大小为100个染色体个体来完成整个优化过程。
对于种群的初始化采用系统随机函数生成,在程序里表现为一个二维矩阵,二维矩阵的每个单元包括列车所在的位置和当前手柄级位具体值。
2.2.3 适应度的计算
对于列车运行控制系统的适应度,主要从是否超速、停车精度、正点率、舒适度和能耗5方面来计算适应度。将5个适应度指标合成一个最终的适应度函数,通过该适应度函数进行种群的适应度分析,保证种群进化向着控制效果优化的方向进行。由于这5个适应度函数对于最终的控制效果造成的影响是不同的,所以最优速度曲线是一个综合的效果,可能对于某个指标不是最优。对于总体适应度,采用加权求和的方法,故对于每个指标的权重就显得特别重要。总体适应度函数如下:
式中,wi表示各个适应度指标的权重;Kcs表示是否超速;Ksa表示精确停车;Kt表示列车运行的时间;Kjerk表示舒适度;Kenergy表示列车的能耗。
在调整权重的时候,需要根据自身数量级和对于控制效果的影响程度进行调整,因为这些指标的计算方法不同,所以得到的Ki可能处在不同的数量级别,首先应该保证wi和Ki调整到一个数量级,然后根据各个Ki的重要性,调整wi的大小。
Ki值在一个数量级的情况下,wi大小的顺序如式(10):
2.2.4 遗传算法的操作
(1) 操作法选择
从群体中选择优胜的个体,淘汰劣质个体的操作叫选择。目前常用的选择操作有以下几种[2]:适应度比例法;最佳个体保存法;联赛选择法;排挤方法。本文选择的是适应度比例方法。
(2)交叉算子
交叉算子将被选中的两个个体的基因链按一定概率pc进行交叉,从而生成两个新的个体,交叉位置pc是随机的。其中pc是一个系统参数。常用的交叉方法有单点交叉、两点交叉、一致交叉[2]。在本文中,采用单点交叉。单点交叉操作的简单方式是将被选择出的两个个体S1和S2作为父母个体,将两者的部分基因码值进行交换。
(3)变异算子
变异算子的基本内容是对群体中的个体串的某些基因座上的基因值作变动。就基于字符集{0,l}的二值码串而言,变异操作就是把某些基因座上的基因值取反,即0→1或1→0。采用的变异操作有基本变异、逆转变异、自适应变异[2]。本文采用基本变异的方法,对群体中的个体码串随机挑选一个或多个基因座并对这些基因座的基因值做变动(以变异概率pm做变动)。
为了验证遗传算法对于优化列车运行速度的可行性,本文采用Visual C++进行了计算机仿真。选择线路长度为32 km,两站一区间,有一个上坡段2‰、一个下坡段3‰和临时限速。临时限速的速度为200 km/s,列车最高运行速度为350 km/h,选择CRH3型列车模型。100个关键点,种群大小为100,进化的代数为1 000代,交叉的概率为80%,变异的概率为0.5%,通过遗传算法对列车预测操纵控制序列的不断优化,取得了预期的效果。表1是运用遗传算法根据不同的遗传代数得到不同的目标值。
表1 遗传算法进化表
根据遗传算法进化,可以得出如下结论:通过1 000代的进化,得出分析结果,最优速度曲线效果不断优化。(1)超速指标:在经过20代以后,没有超速的情况。(2)运行时间指标:列车在32 km的运行时间从1 135 s优化到499 s。(3)停车精度指标:从36 851到31 999,停车精度得到大幅度提高。(4)非舒适度J指标:从4 869 S2/m优化到3 999 S2/m,乘客越来舒适,满足国际标准ISO2631的要求;(5)能耗指标:从10.140 45e+006J优化到7.761 01e+006J,能耗越来越小。
需要说明的是,遗传算法是一个整体优化算法,所以最终结果是一个整体的最优解,对于某一目标可能会产生波动或者优化不明显的现象,这属于正常情况。
根据计算机仿真结果,运用遗传算法对ATO系统高速列车速度曲线进行的优化,可使列车在运行过程中达到最优或者次优,满足列车正点、精确停车、舒适和节能等要求。
[1]王长林,林 颖. 列车运行控制技术[M]. 成都:西南交通大学出版社,2004.
[2] 王正文,薄 涛. 进化计算[M]. 长沙:国防科技大学出版社,2000.
[3]Nirwan Ansair,Edw in Hou. 用于最优化的计算智能[M].李 军,边肇祺. 北京:清华大学出版社,1998.
[4]孟红云. 多目标进化算法及其应用研究[D]. 西安:西安电子科技大学,2005.