吴伟迪 张德津 王照远 王 毅 何 莉
1(湖北工业大学电气与电子工程学院 湖北 武汉 430068) 2(深圳大学机电与控制工程学院 广东 深圳 518061)
“要想富,先修路”,为了促进经济的快速发展,近年来,我国公路事业建设取得了巨大进展。截至2018年年末,全国公路总里程达到484.65万公里,其中养护公路里程达到475.78万公里,占总公路里程的98.2%,目前,我国已经进入一个大规模公路养护时代,公路养护工作已经成为当前公路事业的重心[1]。养护决策通常可以面向资金、公路使用年限或路面使用性能来制定[2]。面向资金是在保证正常行车的前提下,以养护资金最小化为目标优化养护方案,但是如果养护标准较低,路面会损坏较快。面向公路使用年限则是根据公路的服务时间,定时对路面进行养护,但材料不同且外界影响因素如交通量和承受荷载不一样,损坏的速度差异大,定时养护公路不合理。面向路面使用性能则以公路使用性能指标最优制定养护决策,能更好地结合路面状况选择合理的养护方案,从而延长公路使用寿命,保障服务水平和行车安全。在实际决策中,资金是有限的,在以提升路面使用性能为目标的同时考虑资金等其他约束,建立信息化、智能化的公路养护决策系统才能为公路养护提供科学有效的决策支持。
公路养护决策过程包括路面使用性能预测和养护方案优化。本文通过对历史数据进行分析选取适合的路面使用性能影响因素,基于最小二乘支持向量机(LSSVM)理论建立预测模型,并综合分析养护决策中的约束和目标条件建立多目标决策模型。针对多目标决策优化问题,采用离散粒子群算法(PSO)求解多目标养护决策模型。以VS2013为开发平台,SQL SEVER为数据库,设计并开发基于B/S架构的公路养护决策系统,使养护决策更加智能化、科学化,保障公路的服务水平。
在公路的使用寿命期间,受到交通量、温度、降雨等因素的不断影响,其路面使用性能会持续衰减。在制定未来的养护方案时,需要依据路面使用性能指标,因此需要建立预测模型来预测一定条件下未来的路面使用性能指标,为养护方案决策提供数据支持。通常来说,路面使用性能指标的预测是对路面损坏(PCI)、路面行驶质量(RQI)、路面车辙(RDI)、路面抗滑性能(SRI)这四项指标进行预测。路面性能指标预测模型大致可以分为确定型和概率型两类模型。确定型模型根据给定条件求出唯一确定的预测结果,常见的确定型模型有力学预测模型、经验回归预测模型等;概率型模型则是对指标的状态分布进行预估,常见有马尔可夫模型、半马尔可夫模型及残存曲线模型等[3]。近年来,人工智能技术如人工神经网络与专家系统等也被广泛应用于路面使用性能的预测中。在实际应用中,由于历史指标数据的缺失,以及影响因素与路面使用性能间的非线性关系导致预测模型建立难度大、计算复杂、泛化能力差,预测结果达不到预期的效果。
支持向量机是一种由Vapnik[4]依据统计学理论提出的一种新型机器学习方法。支持向量机以结构风险最小化策略为基础,间隔最大化为学习策略,能够用于分类和回归问题,并且通过核函数技术能够将低维空间不可分的样本映射到高维空间,从而解决样本数量少、维数高的非线性问题。最小二乘支持向量机在原基础上进行简化,以等式作为其约束条件,并采用了不同的决策函数,从而在原基础上节约了运算成本[5]。
支持向量机的基本原理是通过非线性映射函数φ(·)将输入空间Rd中的样本映射到特征空间φ(x)=(φ1(x),φ2(x),…,φn(x))。最小二乘支持向量机函数为:
f(x)=ωTφ(xk)+b+ek
(1)
式中:φ为法向量,ω∈Rd;b为位移项,b∈R;ek为误差,ek∈R;xk∈R为训练样本,k=1,2,…,n。根据结构风险最小原则,并引入最小二乘法,式(1)必须满足:
(2)
式中:ek为误差;C为惩罚因子。使用拉格朗日法,式(2)可改写为:
(3)
式中:ak(k=1,2,…,n)为拉格朗日因子。
通过令式(3)中4个参数的偏导数为0,消除参数ω和e后,得到式(4)的线性方程组:
(4)
式中:y=[y1,y2,…,ym];1=[1,1,…,1];a=[a1,a2,…,am];I为n×n的单位矩阵;Ω为方阵,Ωij=φ(xi)Tφ(xi)。通过求解可以得到最小二乘支持向量机的回归模型:
(5)
式中:核函数K(x,xi)为满足Mercer条件的任意对称函数,常用的核函数主要包括线性函数、径向基函数及多项式函数等[6]。核函数的选择直接影响最小二乘支持向量机的预测精度,由于径向基核函数参数少,且通过调控参数能够保证高斯核的灵活性,因此本文选取高斯径向基核函数作为LSSVM模型中的核函数。
确定了核函数之后,可以看到预测模型中核函数参数σ与惩罚因子C是主要影响模型预测精度的参数,为了保证参数选择合理,本文采用粒子群算法(PSO)来对参数σ和C进行寻优选择,从而保证模型的预测精度。
粒子群算法是一种模拟鸟群觅食行为的迭代搜索算法,相较其他寻优算法,粒子群算法具有参数少、编码简单、收敛速度快等优点[7]。PSO流程如下:
1) 初始化粒子群,设定种群规模、最大迭代次数、最大最小速度等参数,随机产生初始位置和初始速度。
2) 根据设定的适应度函数计算各粒子适应度值。
3) 更新个体极值和全局极值。
4) 迭代搜索,按照公式更新粒子速度和位置。
5) 满足迭代终止条件或者达到最大迭代次数,符合则输出全局最优解,否则返回步骤2)。
1) 基于累加法的数据处理。建立路面使用性能预测模型前需要分析影响路面使用性能指标的因素。路面使用性能影响因素可以分为内部因素和外部因素,内部因素包括面层类型、面层厚度和路面材料特性等,外部因素主要包括温度、湿度、交通量、荷载和公路排水能力等[8]。
在建立模型时不可能把所有影响因素都作为输入变量,有些影响因素数据如公路排水能力等难以收集,而且影响因素过多时会导致模型较为复杂难以开发和应用。为了确保选取的影响因素与路面使用性能指标的关联性,本文通过灰色关联法分析各因素与指标之间的关联度来对影响因素进行选取。受限于数据采集等原因,选取了交通量、温度、湿度作为分析的影响因素,分别采用年平均交通量、年平均气温、年平均降水量表示。在数据处理上,由于公路在进行修建、重建或大修后性能指标基本为最好状态。考虑各影响因素是常年累积对路面使用性能进行损害,而路龄是表征道路修建、重建或大修后到现在的时间,因此本文提出一种累加法对各年影响因素数据由路龄为1年开始进行累加,而且这样累加还能弱化影响因素的随机性。对以上影响因素进行累加后与路面使用性能进行灰色关联度分析,结果表明交通量、温度、湿度与各指标的关联度都大于0.5,因此将各年影响因素进行累加作为预测模型的输入变量。
2) PSO优化LSSVM预测模型。利用PSO优化LSSVM模型实现对路面使用性能进行预测的步骤如下:
(1) 对历史数据进行预处理,构造数据集,并分为训练集和测试集。
(2) 设定参数σ和C范围,初始化粒子群参数,以参数σ和C作为粒子的两个维度,训练预测模型,输出预测结果。
(3) 以每次预测结果的均方差作为粒子群的适应度函数,通过比较选择出个体最优和全局最优值,更新粒子速度和位置。
(4) 反复迭代至满足结束条件时将最优参数结果代入LSSVM模型。
(5) 利用确定参数的LSSVM预测模型对路面使用性能进行预测。
本文选取某路段2012年至2018年共7年PCI指标数据作为输出变量,该路段在2011年完成重建,性能指标基本恢复到最好状态,选取交通量、温度、湿度的累加值作为输入变量,以2012年至2016年数据作为训练样本,2017年至2018年数据作为测试样本,具体数据如表1所示,其中AADT表示年平均日交通量。
表1 某路段统计数据值
利用MATLAB环境下的LS-SVMlabv1.8工具箱对模型进行仿真实验。为了消除数据之间量纲不同带来的影响,首先对数据进行归一化处理,然后对粒子群参数进行初始化设置,在参数设置中种群规模过大会降低效率,增加复杂度,过小则搜索容易陷入局部收敛,一般取20~50即可,对于较复杂或特定情况下可以取至100~200;最大迭代次数设置过大时会导致运算时间过长,过小则造成搜索能力不足。由于本实验中粒子仅有两个维度,搜索空间较小,因此设置种群规模为20,最大迭代次数为200。利用测试集的预测值的均方差作为粒子群的适应度函数进行参数寻优,得到最优参数分别为σ=8.11、C=864.89。粒子群寻优过程中适应度值随迭代次数的变化曲线如图1所示,将最优参数赋给LSSVM进行预测,结果与原始PCI指标值的对比如图2所示。
图1 PSO寻优的适应度值变化曲线
图2 PSO-LSSVM模型预测值与真实值对比
为验证本文预测模型的适用性,将本模型预测结果分别与传统最小二乘支持向量机、网格参数寻优的支持向量机、BP神经网络模型的预测结果进行对比,各模型预测结果及平均绝对百分比误差(MAPE)如表2所示。可以看出PSO优化的最小二乘支持向量机预测模型对于路面指标的预测结果相比参比模型的平均相对误差值都要小,表明适合用于路面指标性能的衰减预测中。
表2 各模型预测结果
经过预测模型对路面性能指标进行预测后得到路面使用性能指标值,再结合决策树进行需求分析即可得到路段对应养护措施。但是在目前养护项目繁多、资金短缺的情况下,无法满足所有养护需求,所以需要充分考虑养护决策中的各方面因素,结合数据分析以及数学模型等,制定合理的养护方案,确保公路服务水平,延长使用寿命。
公路养护决策是为了在规划期内确定路网的全局养护方案,最终养护方案的选取应该综合考虑养护后路况、养护投资效益和养护费用之间的关系。对于管养部门而言,资金是养护决策的最主要限制条件,而养护质量和投资效益的最大化是目标,据此本文构建多目标养护决策模型。
目标函数:
(6)
(7)
(8)
约束条件:
(9)
(10)
式中:Z1表示路网整体路面综合使用性能(PQI)提升总值;Z2表示养护效益总值;Z3表示养护投资费用;Xi表示待养护维修路段,Xi为1或者0,Xi=1表示路段实施养护修复,Xi=0表示路段不进行养护;PQIi代表路段Xi在实施养护修复后的路面使用性能PQI提升值;Ei代表路段Xi实施养护修复带来的养护效益值;COi代表路段Xi实施养护修复需要投入的养护资金;Tmax代表最大养护预算资金;Pmin表示最低路况提升总值。
养护决策模型求解是一个多目标决策问题,由于多个目标之间存在一定的矛盾关系,因此不可能存在一个解同时使多个目标达到最优,通过多目标优化得到的解,并非是一个解,而是一组折中解,即Pareto最优解集[9]。为了保证路网使用性能最好、服务水平最高,在最终的Pareto解集中选取路面性能指标提升最大的解为最终解,即为最优养护方案。
粒子群优化算法为一种基于群体协作的启发式搜索算法,并且该算法具有收敛速度快、参数少等优点,广泛应用于寻优问题。标准PSO只能在连续空间进行搜索计算,但是养护方案决策是一种离散问题,需要将标准连续粒子群算法进行离散化才能用于多目标养护决策模型求解[10-11]。
离散二进制粒子群算法将问题的解以二进制编码0-1来表示,粒子的位置以离散型来表示,将粒子位置改变的概率作为粒子的运动速度,离散粒子群算法的速度更新公式如下:
vi=wvi+c1r1(pid-xi)+c2r2(pgd-xi)
(11)
式中:vi表示粒子变化的概率;w为惯性权值;xi表示粒子的位置;c1和c2为学习因子;r1和r2为分布于[0,1]之间的随机数;pid和pgd分别表示粒子个体最优位置和群体最优位置。利用Sigmoid函数将粒子速度值映射到区间[0,1],粒子的位置更新公式如下:
(12)
(13)
粒子在迭代搜索过程中的全局搜索能力和局部搜索能力受惯性权值w的影响,通过设置惯性权值w随时间线性递减,能够增强粒子的搜索能力,即:
w=wmax-i×(wmax-wmin)/Tmax
(14)
式中:i为当前迭代次数;Tmax为最大迭代次数;wmax为最大惯性权值;wmin为最小惯性权值。由于粒子的初始位置和速度是随机给定,在迭代过程中粒子可能会超出约束条件,通常采用惩罚函数法来对约束进行处理。惩罚函数的形式如下:
(15)
式中:g(x)是约束函数;ri是约束条件的惩罚系数。如图3所示,离散二进制粒子群算法流程如下:
1) 初始化种群规模、最大迭代次数等相关参数。
2) 计算粒子的适应度值,记录个体最优位置,更新非劣解集和外部档案集,记录全局最优位置。
3) 按照速度和位置更新公式更新粒子速度和位置。
4) 根据支配关系更新个体最优位置、非劣解集和外部档案集,根据拥挤距离对外部集排序,更新全局最优位置。
5) 判断是否满足终止条件,满足则终止计算并输出结果,否则转到步骤2)。
图3 多目标离散粒子群算法流程
选取文献[12]中数据进行实验,某公路养护部门根据需求分析后得到5条需要养护的路段,约束为路况提升总值最低为25,最大可使用养护资金为350万元。各路段具体数据如表3所示。
表3 路段养护数据
根据表3数据构建的养护决策多目标决策模型。
目标函数:
maxZ1=100x1+90x2+95x3+120x4+80x5
(16)
maxZ2=10x1+8x2+9x3+11x4+7x5
(17)
maxZ3=8x1+9x2+8x3+9x4+8x5
(18)
约束条件:
100x1+90x2+95x3+120x4+80x5≤350
(19)
8x1+9x2+8x3+9x4+8x5≥25
(20)
根据上文提出的离散二进制粒子群算法对养护决策多目标问题求解,通过MATLAB进行计算得到结果如表4所示。
表4 多目标决策结果
续表4
可以看出:在花费资金不超过资金约束350万元时,养护路况提升大于等于25的前提下有9种方案可供管理部门选取,考虑最大化提升路面使用性能的情况下,选择方案1、方案3和方案6,管理部门可以再次根据资金充裕程度选择一个最终方案。结果显示,该算法可以快速得出可供选择的养护方案,便于管理人员根据实际情况进行决策,通过具体的数值分析使养护决策更加科学、智能化。
为解决公路养护过程中信息更新不及时、决策不合理、管理模式落后的问题,设计并开发公路养护决策系统。公路养护决策系统建立的总体目标是管理、分析和处理路段数据,通过预测模型预测路面性能的衰减趋势,根据决策模型以及设定参数得到路段的养护措施以及整体养护方案,同时设定层级管理,便于各级权限界定。
针对系统的设计目标,系统从功能上主要分为数据管理模块、路面评定模块、养护决策模块、系统管理模块4个功能模块。
1) 数据管理模块。数据管理模块负责管理多类数据的导入、导出、查询,以及更新等功能。管理的数据种类包括:(1) 路面的基础空间数据如路段编码、车道、起始桩号等;(2) 路面经评定后的各项指标数据如路面破损(PCI)、路面平整度(RQI)等;(3) 路段的交通量,所在管养单位的年平均温度、降水量等。
2) 路面评定模块。路面评定模块的功能是通过评定模型对路面检测数据进行计算,得到各路面使用性能指标数据,为养护决策分析提供数据基础。
3) 养护决策模块。养护决策模型包含三个子模块,分别是路面性能预测模块、需求分析模块和方案决策模块。预测模块根据预测模型对路面性能指标衰减情况进行分析计算;需求分析模块根据预测模块的计算结果,结合决策树模型匹配得到对应养护措施及养护费用等;最后通过方案决策模块优化得到最优养护方案。
4) 系统管理模块。系统管理模块主要负责权限管理以及基础配置设置。
本系统基于B/S架构,用户通过浏览器页面发送请求,服务器接收并处理请求,然后将结果返回到浏览器把结果呈现给用户[13]。B/S架构相较于C/S架构在开发、维护和移植方面有很大优越性,把业务逻辑集中在服务器端,分工合理,大大减轻了客户端的负载。
系统的总体架构分为三层:数据层、服务层和应用层[14]。数据层主要是由数据库组成,负责存储和访问数据。服务层连接着Web客户端和数据库,主要发布各类接口,包括登录接口以及各类业务逻辑操作接口。应用层负责界面显示以及交互功能,采用Ajax技术保证在不加载整个页面的情况下更新数据,提高用户体验。系统架构如图4所示。
图4 系统架构
在建立了预测模型以及决策模型的基础上,以.NET Framework为开发平台,C#为开发语言,数据库采用SQL Server,结合Webservice接口技术[15]进行软件开发,实现公路养护决策系统。
图5为路面性能指标预测界面,路面指标预测是为了对未来的养护计划制定提供数据支持,选定待分析项目以及分析年限,利用历史路段数据、交通量、温度、降雨量等影响因素,结合预测模型对选定路段、选定年限的平整度和抗滑性能等指标进行计算,从而获得项目路段的性能指标平均衰减趋势,为养护决策提供数据支持。
图5 路面指标预测界面
养护决策功能是整个养护决策系统的核心,设置养护资金、路面性能提升等参数,可以通过决策模型计算出最优养护方案,在有限的资金投入的情况下最大化提升路面使用性能,经过养护决策后得到最优养护方案、养护费用、具体养护措施等,为相关养护工作提供有力的决策支持。
本文结合我国当前公路行业发展情况,根据公路行业特点和公路养护工作实际需求,以提升路面使用性能、延长公路服务寿命为目的研究了公路养护决策方法。根据最小二乘支持向量机理论建立路面使用性能预测模型,利用粒子群算法对模型参数进行寻优,确保了预测模型的精确度。然后面向路面使用性能建立了决策模型,并利用离散粒子群算法对多目标决策模型进行求解得到最优养护方案。最后基于以上研究设计开发了公路养护决策系统,从整体开发的角度设计了多个模块,能够规范化、系统化地管理公路养护数据并为养护工作提供科学的辅助决策支持,实现了公路养护决策的信息化、科学化和智能化。