盧榮平,燕 娟,康 劍,鄧冬葉
(1. 中國鐵路西安局集團有限公司 信息技術(shù)所,西安 710054;2. 中國鐵路西安局集團有限公司 貨運部,西安 710054)
鐵路貨運日計劃是調(diào)度日班計劃的重要組成部分,路內(nèi)外專家對此展開了一系列研究[1-5]。但由于各鐵路局集團有限公司(簡稱:鐵路局)實際情況不同,中國國家鐵路集團有限公司(簡稱:國鐵集團)在全路推廣的TDMS 5.0 貨調(diào)系統(tǒng)(簡稱:貨調(diào)系統(tǒng)),在支撐貨運日計劃編制過程中不能完全滿足實際需求,造成貨運日計劃編制結(jié)果不夠合理,人為干預(yù)受理結(jié)果的情況依然存在。針對上述問題,本文研發(fā)了煤炭品類裝車日計劃自動調(diào)整輔助決策系統(tǒng),對煤炭品類日計劃的編制進行了深入研究,實現(xiàn)了空車資源管理、運輸能力管理、日班計劃管理和計劃調(diào)整管理等功能,是對貨調(diào)系統(tǒng)的輔助和補充[6-9]。
本系統(tǒng)以貨調(diào)系統(tǒng)中的煤炭運輸計劃為數(shù)據(jù)源,按照設(shè)定的參數(shù)化優(yōu)先級規(guī)則、得分采集規(guī)則、得分換算規(guī)則對煤炭運輸計劃進行分析評價,生成煤炭運輸計劃優(yōu)先級及換算得分,并按優(yōu)先級從高至低排序,同一優(yōu)先級內(nèi)按得分由高至低排序,分配空車資源。業(yè)務(wù)流程如圖1 所示。
系統(tǒng)建立參數(shù)化的優(yōu)先級規(guī)則,將煤炭運輸計劃分為重點物資、鐵路局管轄范圍內(nèi)(簡稱:管內(nèi))計劃和其它計劃3 個優(yōu)先級。
圖1 業(yè)務(wù)流程
(1)重點物資:國鐵集團以調(diào)度命令形式下達的或通過其他文件方式要求的重點物資運輸,及鐵路局登記在冊的重點物資運輸清單,均按重點物資安排運力配置,列為第1 優(yōu)先級,絕對受理。
(2)管內(nèi)計劃:到站為管內(nèi)的煤炭運輸計劃列為第2 優(yōu)先級,重點保障。
(3)其它計劃:除上述2 類以外的其它煤炭運輸計劃列為第3 優(yōu)先級,統(tǒng)籌考慮。
系統(tǒng)根據(jù)淡季運量決定旺季運輸計劃、管內(nèi)運量決定跨局運輸計劃、管內(nèi)需求基本滿足、效益最大化的原則,結(jié)合鐵路局自身煤炭品類裝車實際,對每條煤炭運輸計劃從以下5 個方面進行分析,分別計算評價分值。
(1)淡季運量占比得分
每日23:00,系統(tǒng)自動判斷當(dāng)日是否為淡季(若當(dāng)日全鐵路局請車總數(shù)小于年度計劃的日均裝車數(shù)或小于最大裝車能力則為淡季)。更新淡季裝車總量和每個客戶的淡季裝車量,并計算每個客戶的淡季占比得分,滿分10 分。
(2)管內(nèi)裝車占比得分
每日23:00,系統(tǒng)自動更新管內(nèi)裝車總量和每個客戶的管內(nèi)裝車總量,計算每個客戶的管內(nèi)裝車占比得分,滿分10 分。
(3)非緊張線路系數(shù)得分
每日23:00,系統(tǒng)自動計算并更新每個客戶的換算系數(shù),再計算每個客戶到18 個鐵路局的換算裝車數(shù)和非緊張線路系數(shù),據(jù)此制定得分標準,滿分為10 分。具體算法如下:
a.換算系數(shù)=完成車數(shù)/日需求車數(shù)
當(dāng)換算系數(shù)計算結(jié)果>0.1 時,取實際值;當(dāng)計算結(jié)果≤0.1 時,取0.1。
c.非緊張線路系數(shù)=換算裝車數(shù)/實際裝車數(shù)
非緊張線路系數(shù)越小,表明該客戶在非緊張線路的裝車越少,反之則越多。
(4)煤炭中長期運輸協(xié)議(簡稱:中長協(xié))得分
依據(jù)中長協(xié)字典,判定屬于中長協(xié)的裝車計劃,計算發(fā)貨人中長協(xié)換算系數(shù)(換算系數(shù)=當(dāng)日請車數(shù)/年度運量的日均車數(shù))。換算系數(shù)<1 時取1,≥1時取實際值。中長協(xié)運輸?shù)梅?10/換算系數(shù)。
(5)運輸收入得分
按運輸收入所在檔次給出相應(yīng)得分,滿分為10 分。
按照各鐵路局對得分采集項點分值加權(quán)比例的設(shè)置,系統(tǒng)對每條煤炭運輸計劃的5 個得分項點進行加權(quán)計算,計算結(jié)果乘以均衡系數(shù)得出最終評價分值。均衡系數(shù)算法及得分換算規(guī)則如下:
(1)均衡系數(shù)算法
系統(tǒng)對前一日或者前兩日配空車的客戶需求進行優(yōu)先級衰減,促使當(dāng)日空車分配給其他客戶。
a.當(dāng)鐵路局前一日和前兩日均未兌現(xiàn)該客戶的需求時,均衡系數(shù)=1;
b.當(dāng)鐵路局前一日未兌現(xiàn)該客戶的需求,但前兩日兌現(xiàn)了該客戶的需求時,均衡系數(shù)=0.9;
c.當(dāng)鐵路局前一日兌現(xiàn)該客戶的需求,但前兩日未兌現(xiàn)該客戶的需求時,均衡系數(shù)=0.8;
d.當(dāng)鐵路局前一日和前兩日均兌現(xiàn)該客戶的需求時,均衡系數(shù)=0.7。
(2)得分換算規(guī)則
每條煤炭運輸計劃最終評價分值 =(淡季裝車占比得分 × 40% + 中長協(xié)運輸?shù)梅?× 40% + 運輸收入得分 × 10% + 非緊張線路得分 × 5% + 管內(nèi)裝車得分×5%)× 均衡系數(shù)。
(1)根據(jù)客戶提報的裝車計劃信息(裝車站、需求車數(shù)),匹配對應(yīng)裝車站(或裝車站所在區(qū)域)的剩余空車數(shù)量,形成擬批準車數(shù)。
(2)根據(jù)客戶提報的裝車計劃信息(發(fā)站、到站、到局、經(jīng)由站),核算發(fā)站裝車能力、到站卸車能力、局界口通過能力是否滿足,參考到達局的裝車車數(shù)總量限制條件、需求車數(shù)是否滿足整列裝車等卡控校驗條件,修正擬批準車數(shù),得出最終批準車數(shù)。
(3)保存本條裝車計劃的審批結(jié)果,核減對應(yīng)裝車站(或裝車站所在區(qū)域)的空車數(shù)量,核減發(fā)站裝車能力、到站卸車能力、局界口通過能力、到局裝車車數(shù)總量限制等限制能力。
系統(tǒng)提供空車資源發(fā)布功能,通過調(diào)度所貨運調(diào)度員每日發(fā)布的鐵路局次日站點空車和區(qū)域空車車型及數(shù)量,結(jié)合次日運輸計劃提報情況,實現(xiàn)供給與需求的精準匹配。
(1)站點空車資源
按照發(fā)/到站、發(fā)/收貨人、空車類型等信息,精準配置站點空車資源。
(2)區(qū)域空車資源
將鐵路局管轄范圍內(nèi)的區(qū)域進行劃分(例如:將西安局劃分為陜北、銅川、彬長、寶中等8 個區(qū)域),按照區(qū)域、空車類型分別錄入空車數(shù)量。
運輸計劃的受理結(jié)果除受需求車數(shù)和可用空車資源的影響以外,還受發(fā)站裝車能力、到站卸車能力、經(jīng)由通過能力、到局裝車總量、整列裝車校驗卡控等運輸能力限制條件的影響。因此,系統(tǒng)提供了運輸能力限制條件的維護功能,并在配空過程中調(diào)用,從而生成科學(xué)合理的運輸計劃受理結(jié)果。
(1)發(fā)站裝車能力:包含發(fā)站貨場裝車能力和專用線裝車能力兩部分。需在系統(tǒng)中配置發(fā)站站名及其最大裝車能力、專用線發(fā)貨企業(yè)及其最大裝車能力。
(2)到站卸車能力:包含到站貨場卸車能力和專用線卸車能力兩部分。需在系統(tǒng)中配置到站站名及其最大卸車能力、專用線發(fā)貨企業(yè)及其最大卸車能力 (可自動從貨調(diào)系統(tǒng)共享停限裝調(diào)度命令)。
(3)經(jīng)由通過能力:配置分界口或經(jīng)由站的通過能力限制。
(4)到局裝車總量:配置到局裝車總量限制車數(shù)。
(5)整列裝車校驗卡控:對于部分要求整列裝車的車站,配置每列的裝車車數(shù)(申請裝車車數(shù)不可超過整列車數(shù))?!菡熊嚁?shù)80%的,按照請求車數(shù)受理;<整列車數(shù)80%的不受理。
每日15:00,系統(tǒng)對由貨調(diào)系統(tǒng)轉(zhuǎn)儲至本地數(shù)據(jù)庫的次日煤炭運輸計劃進行分析評價,生成優(yōu)先級及換算得分,將次日煤炭運輸計劃按照優(yōu)先級從高至低排序,同一優(yōu)先級內(nèi)按照得分由高至低進行排序。依據(jù)貨運調(diào)度員每日錄入的空車資源及運輸能力,自上而下分配空車資源,實現(xiàn)次日煤炭運輸計劃的自動受理。功能界面如圖2 所示。
圖2 日班計劃管理功能界面
每日10:00,系統(tǒng)對由貨調(diào)系統(tǒng)轉(zhuǎn)儲至本地數(shù)據(jù)庫的當(dāng)日煤炭運輸計劃進行分析評價,生成優(yōu)先級及換算得分,將當(dāng)日煤炭運輸計劃按照優(yōu)先級從高至低進行排序,同一優(yōu)先級內(nèi)按照得分由高至低進行排序。依據(jù)貨運調(diào)度員錄入的當(dāng)日修訂空車資源及運輸能力,自上而下分配空車資源,通過與前一日制定的次日煤炭運輸計劃進行比對,實現(xiàn)當(dāng)日煤炭運輸落空與追加計劃的自動受理。
系統(tǒng)采用B/S 架構(gòu),從前端到后臺分為展示層、業(yè)務(wù)邏輯層、數(shù)據(jù)抽取層和數(shù)據(jù)源,架構(gòu)如圖3 所示。
圖3 系統(tǒng)架構(gòu)
通過瀏覽器實現(xiàn)人機交互,完成煤炭運輸計劃分析評價、空車資源分配和統(tǒng)計分析等業(yè)務(wù)的交互和展示。
通過JFinal 框架的業(yè)務(wù)邏輯層代碼,實現(xiàn)煤炭運輸計劃評價、運力資源配置等核心業(yè)務(wù)模塊的軟件邏輯。
定期執(zhí)行數(shù)據(jù)抽取任務(wù),從中間庫獲取貨調(diào)系統(tǒng)的煤炭運輸計劃數(shù)據(jù),實現(xiàn)數(shù)據(jù)抽取加工,并轉(zhuǎn)儲到本地庫。
本系統(tǒng)的數(shù)據(jù)源為貨調(diào)系統(tǒng)的煤炭運輸計劃數(shù)據(jù),主要包括裝車日期、計劃號、發(fā)站、到站、發(fā)貨人、收貨人、到局、經(jīng)由站、品名、運輸收入等信息。
系統(tǒng)前端采用Quick UI 框架技術(shù)。Quick UI 是基于JQuery 開發(fā)的一款前端開發(fā)框架,擁有良好的性能和兼容性,包含豐富的表單控件、圖形化組件、皮膚模板和可視化展示模板,應(yīng)用效果美觀、用戶體驗流暢。
系統(tǒng)后臺采用JFinal 框架技術(shù)。JFinal 是基于Java 語言、MVC 架構(gòu)的Web 開發(fā)框架,其核心設(shè)計目標是開發(fā)迅速、代碼量少、學(xué)習(xí)簡單、功能強大、輕量級、易擴展,擁有Java 語言所有優(yōu)勢的同時,又擁有Ruby、Python 等動態(tài)語言的開發(fā)效率。
本文使用Git 版本工具,實現(xiàn)系統(tǒng)在迭代開發(fā)過程中的版本控制,提高開發(fā)效率。Git 采用分布式版本庫,服務(wù)器端無需軟件支持,使源碼的發(fā)布和交流極其方便,具有極強的合并跟蹤能力。
該系統(tǒng)于2017年在中國鐵路西安局集團有限公司(簡稱:西安鐵路局)上線運行,取得了良好的應(yīng)用效果,主要表現(xiàn)為以下幾點。
系統(tǒng)緊密結(jié)合西安鐵路局煤炭運輸特點,建立科學(xué)的煤炭運輸計劃評價模型和運力資源配置模型,實現(xiàn)煤炭運輸計劃自動審批。
對煤炭客戶的日需求,實行綜合因素權(quán)重計算分值排序,所有預(yù)定請求均納入系統(tǒng)自動編制范疇,全部自動審批,杜絕人工干預(yù)。系統(tǒng)依據(jù)綜合得分,按照由高到低的順序,自動完成貨運日計劃審批,編制人員只有操作權(quán),沒有審批和修改權(quán),有效防范了廉政風(fēng)險。
精準掌握每日空車資源,結(jié)合管內(nèi)重點區(qū)段運輸能力,實現(xiàn)煤炭運能、空車資源合理運用。同時,營造了公開透明的市場環(huán)境,引導(dǎo)客戶均衡發(fā)運,確保收益最大化。
通過設(shè)定參考因素和限制條件,向社會公開鐵路局煤炭運輸能力分布,引導(dǎo)客戶合理安排運量,建立長期穩(wěn)定的發(fā)運關(guān)系,實現(xiàn)合作共贏。
本文設(shè)計研發(fā)的煤炭品類裝車日計劃自動調(diào)整輔助決策系統(tǒng),在西安鐵路局運行效果良好。2019年,該系統(tǒng)累計受理煤炭品類運輸計劃58545 條、需求車數(shù)2824548 車、受理車數(shù)2267745 車,該年度西安局煤炭品類運輸13872 萬t,較2018年增加1224萬t,增長近10%。
本文提出的煤炭運輸計劃評價模型、運力資源配置模型,及模型計算原理和實現(xiàn)技術(shù)等,可為全路各鐵路局貨運計劃審批工作提供參考。