陳方遒,景 云,2,郭思冶
(1.北京交通大學(xué) 交通運(yùn)輸學(xué)院, 北京 100044;2.北京交通大學(xué) 智慧高鐵系統(tǒng)前沿科學(xué)中心, 北京 100044)
高速鐵路(以下簡稱“高鐵”)是國家現(xiàn)代化高質(zhì)量綜合立體交通網(wǎng)的重要一環(huán),能夠有效減少城市間的出行時(shí)間,帶動城市經(jīng)濟(jì)發(fā)展。高鐵票價(jià)是影響出行需求的主要因素,采用浮動定價(jià)策略,可以有效協(xié)調(diào)席位資源配置,合理引導(dǎo)旅客需求,提高鐵路企業(yè)客票收益。京滬高鐵于2020年12月23日起實(shí)行浮動票價(jià)試點(diǎn),將票價(jià)分為9個(gè)等級,預(yù)售期開始時(shí)公布價(jià)格,預(yù)售期內(nèi)保持價(jià)格不變。
目前京滬高鐵浮動定價(jià)主要考慮列車的旅行時(shí)間、發(fā)車日期是否為周五或者周日兩個(gè)因素,未考慮出發(fā)和到達(dá)時(shí)刻等。本文通過分析旅客出行選擇特征,改進(jìn)現(xiàn)有的分級浮動定價(jià)策略,依據(jù)客座率設(shè)計(jì)浮動定價(jià)方案,從而均衡客流時(shí)空分布,提高企業(yè)客票收益。
分析旅客出行選擇行為可以為動態(tài)定價(jià)提供依據(jù)。Talluri等[1]構(gòu)建Logit模型研究影響鐵路旅客出行選擇行為的因素,提出鐵路客票動態(tài)定價(jià)策略。單杏花[2]通過分析鐵路旅客選擇行為,提出靜態(tài)定價(jià)策略和動態(tài)定價(jià)策略相結(jié)合的鐵路客票收益管理體系。秦進(jìn)等[3]在分析旅客出行價(jià)格需求彈性的基礎(chǔ)上,構(gòu)建基于Logit模型的客流彈性函數(shù),建立以期望客票總收入最大化為目標(biāo)的多列車多時(shí)段的動態(tài)定價(jià)與票額分配協(xié)同優(yōu)化模型,有效提高鐵路運(yùn)輸企業(yè)的客票總收益水平。
精確預(yù)知客流規(guī)律可以為鐵路部門實(shí)施動態(tài)定價(jià)策略提供關(guān)鍵參考。建立客流預(yù)測模型是短期客流預(yù)測領(lǐng)域最主要的應(yīng)用方法,Tsai 等[4-5]設(shè)計(jì)了兩種動態(tài)神經(jīng)網(wǎng)絡(luò)模型,在短期客流預(yù)測結(jié)果均取得了低于20%的平均絕對百分誤差。王芳杰等[6]通過LightGBM模型預(yù)測公交的行程時(shí)間,結(jié)果表明該模型關(guān)鍵指標(biāo)均大幅度優(yōu)于參照組。楊文淇[7]建立基于LSTM神經(jīng)網(wǎng)絡(luò)的城軌新線開行下常規(guī)公交客流預(yù)測模,預(yù)測城軌新線開通后的客流量變化情況。單一客流預(yù)測模型性能有限,為進(jìn)一步提升預(yù)測能力,融合客流預(yù)測模型得到發(fā)展。Davis等[8]利用K-NN和Linear Time-series結(jié)合的融合模型對高速公路交通量進(jìn)行短時(shí)預(yù)測;Jing等[9]建立LGB-LSTM-DRS的局部最優(yōu)融合預(yù)測模型對城市軌道交通對外客運(yùn)樞紐進(jìn)行客流短時(shí)預(yù)測。
差別定價(jià)是一種重要的動態(tài)定價(jià)策略,可有效發(fā)揮價(jià)格杠桿作用。目前國內(nèi)針對高鐵差別定價(jià)問題的研究主要面向同一OD多趟列車展開。張秀敏等[10]通過對同一席位的不同旅客進(jìn)行市場細(xì)分,研究不同情況下的旅客列車席位最優(yōu)定價(jià)問題。卜偉等[11]針對同一線路同一距離的高鐵列車應(yīng)依據(jù)出行時(shí)刻、出行人群等維度在票價(jià)形成過程中發(fā)揮的作用效果,提出普遍實(shí)施差別定價(jià),嘗試多維度折扣。李博[12]在列車運(yùn)行圖固定的條件下,構(gòu)建離散時(shí)間的動態(tài)規(guī)劃聯(lián)合定價(jià)模型和同一OD非平行車次間的差別定價(jià)模型,研究高鐵動態(tài)定價(jià)問題。
綜上所述,目前鐵路客票定價(jià)策略研究在旅客出行選擇行為方面,主要通過構(gòu)造敏感函數(shù),研究用動態(tài)定價(jià)策略后旅客的選擇行為。在客流預(yù)測方面,對道路及城市軌道交通的研究較多,對較強(qiáng)隨機(jī)性、非線性及突變性下的高速鐵路客流研究不夠精細(xì);在差別定價(jià)方面,主要依靠傳統(tǒng)經(jīng)驗(yàn)公式、列車單一屬性等因素對列車進(jìn)行分級,較少研究多影響因素的差別定價(jià)策略。
本文提出可處理非時(shí)序特征的改進(jìn)的LSTM模型,對不同價(jià)格水平下即將開售車次的余票進(jìn)行精準(zhǔn)預(yù)測;利用GBDT算法對乘客的特征變量進(jìn)行提取,解決了車次余票相同時(shí)定價(jià)分級問題,針對現(xiàn)行的定價(jià)策略提出改進(jìn)方案。
高鐵客票定價(jià)分級就是通過提取高鐵服務(wù)特征,預(yù)測市場需求,確定實(shí)際發(fā)車日不同高鐵車次的票價(jià)等級。本模型通過預(yù)測發(fā)車日各次列車的上座率,確定票價(jià)等級,使得余票緊張的車次價(jià)格等級較高。
(1)基礎(chǔ)票價(jià)等級為553元。
(2)為方便比較,設(shè)定列車運(yùn)行圖、票價(jià)等級與各等級數(shù)量與現(xiàn)行方案一致。
(3)僅考慮二等座的定價(jià)策略。
鐵路企業(yè)客票總收入S為
(1)
式中:ek為第k列車的二等座上座人數(shù),可通過發(fā)車日需求預(yù)測模型對余票數(shù)進(jìn)行推算;pk為第k列車的二等座的票價(jià),元。
浮動定價(jià)模型為
(2)
s.t.
P=(P1,P2,P3,…,Pj)T
(3)
Ojk=(o1k,o2k,…,ojk)
(4)
o1k+…+ojk=1
(5)
(6)
(7)
式中:P為二等座票價(jià)劃分成j個(gè)定價(jià)等級的票價(jià)列向量;Ojk為定價(jià)等級j的第k列車編碼向量;ojk為定價(jià)等級j的第k列車獨(dú)熱碼“one-hot”編碼值,取值0或1;mj為定價(jià)等級j的車次數(shù)量;jbase為基礎(chǔ)票價(jià)對應(yīng)的定價(jià)等級。
求解該模型,可得到預(yù)計(jì)票務(wù)收入最大化時(shí)各列車的定價(jià)等級分配模式。
Xk=(x1,x2,…,xt,…,xn)為車次k在票價(jià)制定日前n天隨時(shí)間變化的時(shí)序性特征。利用LSTM層對Xk進(jìn)行處理,該層中任意t時(shí)刻單個(gè)LSTM單元的輸出值ht,取決于該時(shí)刻輸入門取值ct與輸出門取值ot。ht為
ht=ot×tanh(ct)
(7)
ct取決于遺忘門的取值ft。ft、ct和ot分別為
ft=σ(Wf[ht-1,xt]+bf)
(8)
(9)
ot=σ(Wo[ht-1,xt]+bo)
(10)
it=σ(Wi[ht-1,xt]+bi)
(11)
(12)
(13)
式中:Lk為LSTM層輸出;Wd1為第一個(gè)Dense層的權(quán)重矩陣;Wd2為第二個(gè)Dense層的權(quán)重矩陣;bd1為第一個(gè)Dense層的偏置項(xiàng);bd2為第二個(gè)Dense層的偏置項(xiàng)。
為衡量模型預(yù)測準(zhǔn)確性,基于均方誤差RMSE,改進(jìn)的LSTM模型預(yù)測誤差E為
(14)
式中:yk為發(fā)車日實(shí)際余票數(shù);K為總發(fā)車次數(shù)。
綜上,改進(jìn)的LSTM模型通過順序連接兩個(gè)Dense層,在第一個(gè)Dense層中輸入非時(shí)序特征,彌補(bǔ)了傳統(tǒng)LSTM模型只能處理序列數(shù)據(jù)的不足。
發(fā)車日需求預(yù)測模型涉及全連接單元與LSTM單元兩種單元?;诜聪騻鞑ニ惴ǎ妹總€(gè)單元的權(quán)重矩陣與偏差計(jì)算該單元輸出值的梯度,通過鏈?zhǔn)角髮?dǎo),求得所有單元對最終模型輸出值的梯度。沿梯度方向迭代權(quán)重矩陣與偏差,使模型收斂。隨機(jī)梯度下降法步驟如下:
Step1設(shè)定最大迭代次數(shù)nepochs與學(xué)習(xí)率α。
Step2隨機(jī)抽取某一車次k的特征數(shù)據(jù)[Xk,Jk]。
Step3計(jì)算式(1)~式(7)中所有權(quán)重矩陣與偏置項(xiàng)的梯度方向。
Step4沿梯度方向?qū)κ?1)~式(7)中所有權(quán)重矩陣與偏置項(xiàng)進(jìn)行迭代更新,即Wnew=Wold+α×dW;bnew=bold+α×db。
Step5若達(dá)到最大迭代次數(shù),算法終止;否則,返回Step2。
對式(13)直接求導(dǎo)可得其權(quán)重矩陣與偏差對應(yīng)的梯度值,但由于LSTM單元前向傳播具有兩個(gè)方向,且需考慮其門結(jié)構(gòu)特征,因此需使用以下方法對其權(quán)重矩陣與偏差求取對應(yīng)梯度值。
(15)
(16)
(17)
(18)
式中:
(19)
Ft=dct×ct-1+ot×[1-tanh2(ct)]×ct-1×dht
(20)
Ct=dct×it+ot×[1-tanh2(ct)]×ot×dht
(21)
對于各權(quán)重矩陣,則有
(22)
(23)
(24)
(25)
對于各偏置項(xiàng),有
(26)
(27)
(28)
(29)
綜上,迭代方向?yàn)樗蠰STM單元內(nèi)權(quán)重矩陣與偏置項(xiàng)的梯度方向。
由于目前鐵路部門實(shí)施“一日一圖”開行模式,存在列車時(shí)序性特征Xk不完整或非時(shí)序特征Ik不統(tǒng)一的情況,僅使用發(fā)車日需求預(yù)測模型會出現(xiàn)無法完整預(yù)測所有列車需求的情況。此外,當(dāng)歷史余票全部為0或因其他因素導(dǎo)致模型輸出余票相同時(shí),仍需要按余票以外的特征進(jìn)行進(jìn)一步的等級劃分,確定定價(jià)優(yōu)先級。
GBDT為一種集成模型,其集成對象為二分決策模型CART。運(yùn)用Gini指數(shù)衡量樣本不純度,令D為父節(jié)點(diǎn)樣本集合,則該節(jié)點(diǎn)的Gini指數(shù)G(D)為
(30)
Pc=|c|/|D|
式中:Pc為從父節(jié)點(diǎn)D進(jìn)入其子節(jié)點(diǎn)c的概率;|·|為計(jì)數(shù)函數(shù),保證分裂不具偏向性。D1和D2為父節(jié)點(diǎn)D分裂后的兩個(gè)子節(jié)點(diǎn)對應(yīng)集合,其Gini指數(shù)遞進(jìn)關(guān)系為
(31)
CART算法步驟如下:
Step1遍歷所有特征,尋找Gini指數(shù)最小的節(jié)點(diǎn)D*和對應(yīng)特征A*。
Step3驗(yàn)證是否滿足停止分裂條件,滿足則算法終止;否則,轉(zhuǎn)到Step1。
設(shè)GBDT內(nèi)由m個(gè)CART集成,令CART的輸出分別為T1(Ik),T2(Ik),…,Tm(Ik),則GBDT的輸出gm為
(32)
去掉最后一個(gè)CART,GBDT的輸出gm-1(Ik)為
(33)
考慮GBDT可加性,其誤差可泰勒展開,忽略二次以上項(xiàng)式,誤差遞歸形式為
(34)
為保證誤差在添加Tm后下降,即需滿足
E[yk,gm(Ik)]-E[y,gm-1(Ik)]<0
(35)
(36)
將式(34)、式(35)代入式(36),則對于Tm(Ik)有
(37)
式中:Tm(Ik)為負(fù)梯度方向。
GBDT算法步驟如下:
Step1初始化CART模型T1(Ik)。
Step3使用CART模型Tm(Ik)擬合 Step2中的負(fù)梯度方向。
Step5驗(yàn)證是否滿足終止迭代條件,滿足,到轉(zhuǎn)Step6;否則,轉(zhuǎn)到Step2。
Step6提取T1(Ik),T2(Ik),…,Tm(Ik)在Step1中尋找到的A*劃分Ik的特征空間。
綜上,本文利用GBDT模型的中間節(jié)點(diǎn),發(fā)揮其高可釋性特點(diǎn),劃分高鐵列車非時(shí)序特征空間。依據(jù)余票數(shù)據(jù)缺失或相同的車次的非時(shí)序特征,對余票數(shù)據(jù)缺失車次利用相似車次進(jìn)行數(shù)值估計(jì),對余票數(shù)據(jù)相同車次確定優(yōu)先級。
針對歷史數(shù)據(jù)缺失導(dǎo)致無法直接計(jì)算出ei和過多車次余票相同導(dǎo)致票價(jià)最優(yōu)解不唯一的情況,本文設(shè)計(jì)基于逐次逼近法的票價(jià)等級分配流程,步驟如下:
Step1利用發(fā)車日需求預(yù)測模型,預(yù)測各數(shù)據(jù)完整車次的余票估計(jì)值。
Step2依據(jù)Step1得到的估計(jì)值,利用發(fā)車日非時(shí)序特征提取模型,構(gòu)建決策樹。
Step3若當(dāng)日存在數(shù)據(jù)不完整車次,利用Step2中決策樹找到最終節(jié)點(diǎn),利用該節(jié)點(diǎn)其他車次余票的平均值估計(jì)余票。
Step4基于余票數(shù)量從少到多排序,按照價(jià)格等級從高到低依次分配,該等級數(shù)量分配完畢后進(jìn)入下一等級,分配至基礎(chǔ)票價(jià)等級時(shí)停止分配。
Step5基于余票數(shù)量從多到少排序,按照價(jià)格等級從低到高依次分配,該等級數(shù)量分配完畢后進(jìn)入下一等級,分配至基礎(chǔ)票價(jià)等級時(shí)停止分配。
Step6余下所有車次分配基礎(chǔ)票價(jià)等級。
以上步驟中,若當(dāng)日存在余票數(shù)相同過多,高定價(jià)等級容量不足的情況,需計(jì)算各車次優(yōu)先級∑K(A)×10Ad。K(A)為Step2中提取的非時(shí)序特征A的判定函數(shù),若存在特征A則取其值為1,反之為-1;Ad為特征A在決策樹中的層數(shù),優(yōu)先級高的車次分配到更高的票價(jià)等級。
基于目前京滬高鐵運(yùn)營情況,參照現(xiàn)行票價(jià)分級方式,明確票價(jià)等級劃分標(biāo)準(zhǔn),將票價(jià)分為9個(gè)等級,見表1;參照京滬高鐵購票流程,選取1個(gè)時(shí)序特征與4個(gè)非時(shí)序特征作為模型輸入,見表2。
表1 京滬高鐵現(xiàn)行定價(jià)等級劃分標(biāo)準(zhǔn)
表2 模型特征選擇標(biāo)準(zhǔn)
基于表2中特征對現(xiàn)行票價(jià)進(jìn)行相關(guān)性分析,結(jié)果見圖1。圖1中,橫縱坐標(biāo)為特征變量,第i行第j列的方塊顏色深淺表示橫坐標(biāo)上第i個(gè)特征與縱坐標(biāo)上第j個(gè)特征的相關(guān)程度,顏色對應(yīng)的值如右側(cè)色條所示,為相關(guān)系數(shù),記為
圖1 特征-票價(jià)相關(guān)性熱力圖
(32)
式中:X與Y為需要計(jì)算的兩個(gè)特征變量;cov(X,Y)為X與Y的協(xié)方差;var(X)與var(Y)分別為X與Y的方差。
由圖1可知,票價(jià)與旅行時(shí)間和停站數(shù)量相關(guān),現(xiàn)行的票價(jià)制定策略僅考慮了列車速度相關(guān)的因素,缺少對余票、出發(fā)時(shí)間和到達(dá)時(shí)間的考慮。
基于2019年11月京滬高鐵余票數(shù)據(jù),提取表2中的特征進(jìn)行標(biāo)準(zhǔn)化后,按時(shí)間先后順序排序,將前70%數(shù)據(jù)作為訓(xùn)練集,后30%數(shù)據(jù)作為測試集,預(yù)測發(fā)車日需求。
為保證模型復(fù)雜度一致,設(shè)定所使用的模型均僅由輸入層、循環(huán)層和輸出層組成,循環(huán)層單元數(shù)均設(shè)置為32,學(xué)習(xí)率α均為0.001,模型對比結(jié)果見圖2。
圖2 模型對比結(jié)果
從訓(xùn)練集效果來看,高鐵旅客需求預(yù)測對非時(shí)序特征變量較為敏感,考慮非時(shí)序特征的改進(jìn)的LSTM模型比3種常用的深度學(xué)習(xí)模型誤差更小、魯棒性更強(qiáng)。
從測試集效果來看,RNN模型的均方誤差隨迭代次數(shù)始終上下波動,穩(wěn)健性較差;普通的LSTM與GRU穩(wěn)健性相似,強(qiáng)于RNN但弱于改進(jìn)的LSTM;改進(jìn)的LSTM的均方誤差在迭代中穩(wěn)定下降,其穩(wěn)健性顯著高于其他模型。80輪迭代后4種模型的最終誤差見表3。
表3 4種模型最終誤差
由表3可知,改進(jìn)的LSTM在訓(xùn)練集中相較于其他三類模型提升幅度約為30%,在測試集中提升幅度約為10%,表明改進(jìn)的LSTM具有更強(qiáng)的適應(yīng)能力,且無過擬合現(xiàn)象。
利用GBDT模型提取到的列車特征見圖3,將第4節(jié)中計(jì)算所得的車次優(yōu)先級標(biāo)定在弧上。對由于數(shù)據(jù)缺失無法預(yù)測余票情況的車次,按同節(jié)點(diǎn)中余票情況的平均值四舍五入取整估計(jì)。
圖3 模型提取特征二分樹
以11月25日的定價(jià)體系為例,基于浮動定價(jià)模型,求得結(jié)果見表4。由發(fā)車日需求預(yù)測結(jié)果可得,當(dāng)日預(yù)計(jì)有8次列車余票均為0。因G123為數(shù)據(jù)缺失車次,無法對余票直接進(jìn)行預(yù)測,通過節(jié)點(diǎn)平均,估計(jì)當(dāng)日余票也為0。因此預(yù)計(jì)當(dāng)日共9次列車余票為0,超過了最高定價(jià)等級的數(shù)量設(shè)定,需確定優(yōu)先級?;趫D3所提取的特征進(jìn)行排序,得到的預(yù)計(jì)余票及其定價(jià)等級排序情況見表4。
表4 11月25日定價(jià)等級分配結(jié)果
基于表2特征對表4所得新票價(jià)體系進(jìn)行相關(guān)性分析,其中余票使用真實(shí)數(shù)據(jù)而非預(yù)計(jì)余票,去除與旅行時(shí)間高度重合的停站數(shù)量特征,按圖1方式進(jìn)行相關(guān)性分析,結(jié)果見圖4。
圖4 特征-新票價(jià)相關(guān)性熱力圖
可見,新票價(jià)體系可有效反應(yīng)余票緊張程度,并充分考慮了列車出發(fā)與到達(dá)時(shí)間。從收益管理角度來看,與原票價(jià)體系相比,新票價(jià)體系下鐵路部門收入提升了24 390元,能夠更好滿足運(yùn)輸市場需求。
本文針對列車余票與非時(shí)序特征相關(guān)性大的特點(diǎn),基于改進(jìn)的LSTM模型,對發(fā)車日當(dāng)天余票情況實(shí)現(xiàn)精準(zhǔn)預(yù)測;針對鐵路熱門車次多但該等級車次數(shù)量有限的特點(diǎn),基于GBDT模型提取列車特征,分配車次優(yōu)先級,同時(shí)解決部分車次數(shù)據(jù)缺失問題;構(gòu)建以鐵路企業(yè)收益最大為目標(biāo)的定價(jià)模型,并采用逐次逼近算法求解,提出基于現(xiàn)行浮動定價(jià)策略提出改進(jìn)方案。
算例結(jié)果表明,改進(jìn)LSTM模型與三種常用深度學(xué)習(xí)時(shí)間序列預(yù)測模型相比,需求預(yù)測的標(biāo)準(zhǔn)化均方誤差更低;定價(jià)模型有效為各列車分配了合理的定價(jià)等級,且與現(xiàn)行浮動定價(jià)策略相比,所提出改進(jìn)的浮動定價(jià)策略可提高鐵路部門單日收益24 390元。為便于比較,本文在票價(jià)分級方式上采用現(xiàn)行票價(jià)分級方案。在后續(xù)研究中,將進(jìn)一步完善考慮多特征融合下的高鐵票價(jià)分級方法,構(gòu)建能夠動態(tài)適應(yīng)客運(yùn)市場變化、協(xié)調(diào)席位資源配置關(guān)系、引導(dǎo)客流需求的浮動定價(jià)理論體系。