李 建
(上海威派格智慧水務(wù)股份有限公司,上海 200032)
供需平衡是生產(chǎn)供水系統(tǒng)正常運行的基礎(chǔ)。為達到這一目標(biāo),需要按需調(diào)整生產(chǎn)水廠水泵、閥門以及其他配水裝置,以達到平衡供需,滿足客戶的用水需求。在不同的時刻城市居民的生活和生產(chǎn)情況都在不斷的變化,因此對水的需求也在不斷的變化。由于城市需水量的變化呈現(xiàn)出一定的周期性和趨勢性,使得需水量預(yù)測[1]成為可能。水量預(yù)測主要是通過分析城市歷史用水量數(shù)據(jù)的變化規(guī)律,綜合考慮節(jié)假日、重大事件、氣候條件等因素的影響,利用數(shù)學(xué)方法,在符合一定精度要求的前提下,對未來某段時間內(nèi)的城市用水量進行預(yù)測[2]。用水量預(yù)測已成為現(xiàn)代供水調(diào)度系統(tǒng)學(xué)科中一個重要的研究領(lǐng)域。
近年來,很多學(xué)者對用水量預(yù)測算法進行了深入的研究,目前比較常用的需水量預(yù)測模型主要有時間序列模型[3]、人工神經(jīng)網(wǎng)絡(luò)模型[4]等。時間序列模型是一種定量分析方法,它在時間序列變量分析的基礎(chǔ)上,運用一定的數(shù)學(xué)方法建立預(yù)測模型,但是該模型無法兼顧外界因素的影響。神經(jīng)網(wǎng)絡(luò)模型可以利用歷史數(shù)據(jù)并且結(jié)合外在影響因素,但是在大數(shù)據(jù)量時會出現(xiàn)預(yù)測速度緩慢,預(yù)測效果不良的現(xiàn)象。
本文對天氣因素、節(jié)假日因素和特殊事件因素進行綜合分析建模,在對影響因素考量時選擇對水量預(yù)測有明確影響效果的因素作為外生變量以防止過多外生變量或外生變量無明確影響關(guān)系導(dǎo)致的關(guān)系混亂問題,從而提高對小時級用水量進行預(yù)測的預(yù)測速度和預(yù)測精度。
自回歸差分移動平均模型(ARIMA),是一種時間序列預(yù)測分析的方法,是不同于回歸模型的一種分析方法。ARIMA模型是美國統(tǒng)計學(xué)家Box和英國統(tǒng)計學(xué)家Jenkins在20世紀70年代提出的[5]。
有一些時間序列存在明顯的季節(jié)性周期變化,通常使用季節(jié)性差分自回歸滑動平均模型SARIMA來表示,該模型是從自回歸差分移動平均模型ARIMA中衍生而來[6]。該模型是一種分析工具,用于構(gòu)建具有動態(tài)時間序列和季節(jié)波動的數(shù)據(jù)序列模型。該模型不僅可以對非常規(guī)和非平穩(wěn)的時間序列信息進行處理,還將季節(jié)信息納入考量。若某時間序列經(jīng)s個時間間隔后觀測值呈現(xiàn)出相似性,如同時出現(xiàn)波峰或波谷狀態(tài),則稱該序列是以s為周期的季節(jié)時間序列。
周期為s的非平穩(wěn)季節(jié)時間序列為Xt,則經(jīng)過了d階非季節(jié)差分,p階自回歸、q階移動平均的ARIMA(p,d,q)模型為:
上式中c為常量,α1為自回歸系數(shù),為移動平均系數(shù),為隨機擾動項。上式引入滯后算子L,可以得到如下等式。
上式中,n為任意正整數(shù)。可以將式(1)可以轉(zhuǎn)換換為如下公式:
其中平穩(wěn)的自回歸算子
可逆的移動平均算子
代入式(2)即得到ARIMA(p,d,q)的簡式
同時,定義季節(jié)差分算子Δs=1-Ls,則一次季節(jié)差分表示為
對于非平穩(wěn)季節(jié)性時間序列,需經(jīng)D階季節(jié)差分來消除季節(jié)影響,才可以建立周期為s的P階自回歸、Q階移動平均季節(jié)時間序列模型。
上式中Ap(Ls)、BQ(Ls)分別為非平穩(wěn)季節(jié)時間序列的自由回歸算法與移動平均算子。
當(dāng)上式的隨機擾動項ut非平穩(wěn)且存在自由回歸AR或移動平均MA時,再對ut建立ARIMA(p,d,q)模型。
上式中的vt為白噪聲。把(8)代入(7)中,得到模型ARIMA(p,d,q)×(P,D,Q)
本文進一步加入外生變量,擴展為SARIMAX模型。外生變量X基本上允許在模型中考慮外部變量,本文的外生變量主要是區(qū)域天氣溫度,區(qū)域天氣濕度,區(qū)域降雨量,法定節(jié)假日,特殊事件。
基于SARIMAX模型的短期水量預(yù)測,主要分為如下幾個模塊,包括數(shù)據(jù)預(yù)處理,影響因素相關(guān)性分析,算法模型調(diào)整與算法實現(xiàn),預(yù)測結(jié)果及誤差分析。本文主要預(yù)測1天和7天的小時級的水量數(shù)據(jù)。
數(shù)據(jù)預(yù)測的工作基礎(chǔ)為歷史數(shù)據(jù),預(yù)測天數(shù)為一天則獲取要預(yù)測時間前九天的原始小時級用水量數(shù)據(jù),若預(yù)測天數(shù)為七天則獲取要預(yù)測事件前二十八天的原始小時級用水量數(shù)據(jù)。原始數(shù)據(jù)量為Dn,則預(yù)測的天數(shù)Dp計算公式為:
數(shù)據(jù)的準(zhǔn)確性、完整性對水量預(yù)測模型產(chǎn)生了極為重要的影響。然而在數(shù)據(jù)的采集過程中會出現(xiàn)數(shù)據(jù)缺失或數(shù)據(jù)異常的情況。這些異常數(shù)據(jù)的存在使系統(tǒng)中蘊涵的確定性成分更加難于把握;甚至?xí)诡A(yù)測過程中產(chǎn)生錯亂,導(dǎo)致不可靠的輸出。本文通過四分位法來判斷極端數(shù)據(jù)或者噪聲數(shù)據(jù)。其中上四分位點Q1,其位置計算公式為:
下四分衛(wèi)點Q2,其位置計算公式為:
其上限值和下限值分別如下公式:
超過上限或低于下限則認為此數(shù)據(jù)為異常數(shù)據(jù)。如果出現(xiàn)了異常值,那么用此數(shù)據(jù)前兩個數(shù)據(jù)的均值代替。
將預(yù)處理后的用水量數(shù)據(jù)Y和預(yù)影響因素數(shù)據(jù)X外生變量進行皮爾遜相關(guān)性分析,這里的外生變量主要是溫度、濕度、降雨量。如果分析結(jié)果具有相關(guān)性,則將此影響因素納入外生變量范疇。采用如下公式進行相關(guān)性分析。
其中,X和Y分別為樣本Xi和Yi的均值,相關(guān)系數(shù)r的結(jié)果關(guān)系為:0.8<r≤1.0表示極強相關(guān);0.6<r≤0.8強相關(guān);0.4 <r<= 0.6中等程度相關(guān);0.2<r≤0.4弱相關(guān);0<r≤0.2為極弱相關(guān)或無相關(guān);
若皮爾遜相關(guān)分析結(jié)果顯示用水量數(shù)據(jù)和影響因素數(shù)據(jù)不具有相關(guān)性,則對兩者再進行格蘭杰因果檢測。若格蘭杰因果檢測結(jié)果顯示用水量數(shù)據(jù)和影響因素數(shù)據(jù)具有關(guān)于n階滯后的相關(guān)性,則將該n階滯后的影響因素納入外生變量范疇。
對于城市用水,每天的用水量都有一定都規(guī)律性。本文以每天的小時用水量數(shù)據(jù)作為研究樣本,即模型的周期s取24。
在每次預(yù)測的時,將模型變量參數(shù)記錄并保存下來,在下次進行預(yù)測的時候,通過序列的平衡性和白噪聲檢驗,來判斷已有的變量參數(shù)的特性及預(yù)測結(jié)果的趨勢來判斷是否可以使用當(dāng)前參數(shù),若能使用則確定已有參數(shù)作為預(yù)測模型參數(shù),若不能使用則根據(jù)參數(shù)調(diào)整的范圍進行網(wǎng)格化調(diào)用參數(shù)并得到模型結(jié)果,根據(jù)模型結(jié)果對模型的bic結(jié)果進行選擇,選擇出bic結(jié)果最小時的模型參數(shù),并記錄此結(jié)果作為下次預(yù)測的已有參數(shù)。參數(shù)的調(diào)參范圍如下表1所示。
表1 參數(shù)的調(diào)整范圍
其中,p自回歸模型AR(p),該模型描述當(dāng)前值與歷史值的關(guān)系,可以通過變量本身的歷史數(shù)據(jù)對自身進行預(yù)測。q移動平均模型MA(q),該模型關(guān)注的是自回歸模型中的誤差項的累加,能有效地消除預(yù)測中的隨機波動。
使用SARIMAX模型預(yù)測,模型中的訓(xùn)練數(shù)據(jù)采用我國西南地區(qū)A市的真實數(shù)據(jù),抽取了該市兩個區(qū)域的歷史數(shù)據(jù)進行分析預(yù)測。
用預(yù)測值和測試集數(shù)據(jù)對比,得出預(yù)測結(jié)果與實際值的相對誤差來初步判斷預(yù)測結(jié)果。通過平均絕對百分比誤差MAPE (Mean Absolute Percentage Error)來判斷模型整體的擬合及預(yù)測效果,其中MAPE值越低,說明擬合和預(yù)測效果越好。MAPE的值小于10%,說明預(yù)測有較高的精確度;MAPE的值在10%-20%之間表明預(yù)測精度良好,平均絕對百分比誤差判斷標(biāo)準(zhǔn)的公式如下。
下圖為不同區(qū)域的水量預(yù)測結(jié)果和實際數(shù)據(jù)的擬合曲線。下面兩張圖中可以看出預(yù)測結(jié)果的平均絕對百分比誤差都在5%之內(nèi),表明預(yù)測結(jié)果具有較高的精確度。
圖1 區(qū)域一的預(yù)測數(shù)據(jù)
圖2 區(qū)域二的預(yù)測值與真實值曲線
對于整個系統(tǒng)實現(xiàn)來說,歷史水量數(shù)據(jù)的獲取是關(guān)鍵,本文通過對底層物聯(lián)網(wǎng)數(shù)據(jù)的采集,每塊水表間隔15分鐘上傳一次數(shù)據(jù)。結(jié)合水務(wù)集團實際的供水分區(qū),將A市劃分為多個用水區(qū)域,區(qū)域邊界數(shù)據(jù)通過遠傳大表將數(shù)據(jù)接入到系統(tǒng)中。遠傳數(shù)據(jù)經(jīng)過處理后,將小時的用水量數(shù)據(jù)存入庫。
表2 區(qū)域用水量數(shù)據(jù)表
本文將模型算法中的溫度、濕度、降水量這些外生變量的數(shù)據(jù)維護到系統(tǒng)中,因為不同分區(qū)都在同一個城市,所以將所有分區(qū)的外生變量數(shù)據(jù)都維護到同一張表。預(yù)測時可以直接從這里獲取計算數(shù)據(jù),縮減算法的計算時間。外生變量的數(shù)據(jù)維護關(guān)系如下表。
表3 外生變量X數(shù)據(jù)表
在執(zhí)行預(yù)測算法之前,先從數(shù)據(jù)庫中獲取最優(yōu)的參數(shù)集合,然后將這些參數(shù)進行序列的平穩(wěn)性檢驗和白噪聲檢驗,如果平穩(wěn)性檢驗p值小于0.01,并且白噪聲檢驗值大于0.05時,認為當(dāng)前參數(shù)可以使用,否則重新計算p,q,P,D參數(shù)。當(dāng)這些變量因子的數(shù)據(jù)都確定后,進入水量預(yù)測階段。
表4 SARIMA影響因子表
系統(tǒng)展示頁面,將不同區(qū)域的水量數(shù)據(jù)分開展示,默認將24小時的預(yù)測數(shù)據(jù)和當(dāng)天的真實數(shù)據(jù)通過對比的方式進行曲線展示,下圖是具體區(qū)域的預(yù)測數(shù)據(jù)。
圖4 預(yù)測值和實時值曲線對比展示
城市用水量預(yù)測城市水資源管理和城市供水管網(wǎng)系統(tǒng)的優(yōu)化調(diào)度提供數(shù)據(jù)指導(dǎo),預(yù)測結(jié)果的準(zhǔn)確性決定了決策的合理性和科學(xué)性。
本文根據(jù)歷史的小時用水量,通過歷史數(shù)據(jù)預(yù)處理、相關(guān)性分析,引入外生變量,構(gòu)建時用水預(yù)測模型。預(yù)測結(jié)果平均絕對百分比誤差較小,表明基于SARIMAX模型區(qū)域用水量短期預(yù)測具有較高的精度。同時本文已將該算法模型集成到了業(yè)務(wù)系統(tǒng)中,系統(tǒng)在實際的運行過程中,能較好的預(yù)測未來24小時以及未來7天的區(qū)域用水量。根據(jù)預(yù)測值,結(jié)合歷史相似的水量數(shù)據(jù),獲取水廠水泵的歷史運行情況,為水廠未來1天或7天的水泵開停計劃提供有力的支撐。