蘇 丹,楊奧莉
(1.揚州工業職業技術學院 基礎科學部,江蘇 揚州 225000;2.浙江師范大學 數學與計算機科學學院,浙江 金華 321000)
近年來,旅游業成為助推經濟發展的重要環節,能夠增加就業機會、推動產業結構升級、促進國際貿易等。隨著人民生活水平的不斷提高、交通的便利化與文化產業的不斷發展,旅游業已成為各旅游城市的支柱產業。旅游年總收入預測結果能夠反映城市旅游業與旅行社的發展走勢,是衡量城市經濟發展指標的重要依據,可為城市旅游發展規劃的制定提供合理的參考,更有利于針對性地提升城市旅游業的服務質量。
針對旅游業年總收入的預測已有大量研究成果。張偉等選取馬爾可夫模型對山東省各地區旅游總收入進行預測,得出各地區旅游業最終都將進入發達階段的結論[1]。蔡溢等基于灰色系統理論對貴州省旅游業發展與預測進行了研究[2]。張吉洋等根據海南旅游業總收入時間序列數據建立ARIMA模型進行試驗,得到海南省旅游業總收入的最佳預測模型,為海南省的旅游業發展提出建議[3]。
上述研究分別選擇不同的算法預測模型,但采用SVM模型預測旅游業總收入的研究較少?;诖?以揚州市為例,引入ACO優化算法對SVM模型的關鍵性參數進行尋優處理,建立基于ACO_SVM的旅游業年總收入預測模型,并結合MATLAB進行模型實驗,以期得到最優的揚州市旅游業總收入預測模型,為揚州旅游業未來發展規劃的制定提供參考。
揚州的城市經濟發展離不開旅游業可持續發展的助力。揚州政府先后出臺《大運河揚州段文化與旅游融合發展規劃》《揚州市旅游促進條例》與《揚州市“十四五”文化與旅游業發展規劃》等政策文件,對旅游業的發展給予政策引導與扶持。
截至2020年底,揚州市擁有國家A級旅游景區57家,其中5A級旅游景區1家、4A級旅游景區14家、3A級旅游景區32家,A級旅游景區數量位居江蘇省第二位。2019年游客接待總量達7747.07萬人次,比2016年增長38%,年均增長11.2%;旅游總收入由2016年的691.39億元提升至2019年的1010.2億元,年均增速約13.5%;旅游業收入占全市生產總值的17.27%,旅游業增加值占全市GDP的8%[4]。
以上數據表明,揚州市旅游業的發展對其經濟增長起到了促進作用,且揚州市的經濟增長也極大地帶動了其旅游業的發展,分析揚州旅游業總收入的發展趨勢,對于研究揚州旅游業對其經濟增長的影響具有重要意義。
支持向量機(SVM)是一種基于監督學習方式的機器學習算法,與其他機器學習算法相比,SVM具有結構簡單、適應性好、訓練速度快等優點[5、6]。針對旅游業年總收入預測問題,將支持向量機作為回歸器進行建模。在SVM的回歸模型中,將輸入的樣本數據x通過映射函數φ(x)映射至高維空間H以解決非線性問題,隨后在這個高維空間中構建線性模型估計回歸函數[7、8]:
f(x,φ)=ωφ(x)+b
式中,ω表示權值向量,b表示偏移向量。
對于給定的樣本集D=(xi,yi)i=1,…,n,采用ε線性不敏感損失函數定義如下:
式中,y′為回歸函數中的預測值,y為其對應的實測值。故對應的支持向量機稱為ε-支持向量機,其對應的約束優化問題見式(1):
(1)
為更好地進行求解,引入Lagrange乘子將上式轉化為對偶問題,最終得到SVM的回歸函數:
式中,γ為RBF核函數參數。
采用SVM模型對揚州市旅游業年總收入進行預測時,懲罰參數C與核函數參數γ的取值對預測結果的精確度有很大的影響。為避免模型中選取的最優懲罰C與核函數參數γ所造成的誤差,選取蟻群算法(ACO)[9]對SVM模型中的參數C與γ進行尋優處理,建立基于ACO_SVM優化算法的旅游業年總收入預測模型。
2.2.1 ACO算法的基本原理
ACO算法是對螞蟻尋找食物的行為進行模仿歸納而形成的一種新型元啟發式算法,其基本原理為:螞蟻在覓食時會分泌信息素,并通過分辨信息素的濃度來引導自身前進方向,確定巢穴與食物來源之間的最短路徑。隨著時間變化,信息素濃度會變淡,故需對其進行選擇并及時更新,設置迭代次數,最終找到全局最優解,避免影響選擇路徑優化的現象出現[10、11]。
2.2.2 構建解空間
式中,β為啟發函數因子,α為信息素因子,ηij(t)為兩點之間長度的倒數,i,j分別為起始點與終點,t為最大迭代次數,τij(t)為時間t由i到j的信息素含量,Jk(i)為還沒被訪問過的節點集合,全部訪問完成后表示一次循環結束。
2.2.3 更新信息素
記錄迭代次數上的最優解(最短路徑),調整不同城市路線中的信息素含量:
τij(t+n)=(1-ρ)*τij(t)+Δτij
式中,C0為正常數,Lk為螞蟻k在當前周期內通過路徑的長度。
2.2.4 判斷是否結束
若迭代次數少于最大迭代次數,迭代次數+1,同時清空所有螞蟻經過路線的記錄表,并返回第一步。否則結束計算,將得到的最優解進行輸出處理。
2.2.5 利用ACO算法優化SVM參數
選擇RBF為支持向量機的核函數,采用ACO算法搜索最適合的懲罰參數C與核函數參數γ的流程如下:
1)數據預處理及劃分訓練集與測試集。
2)輸入ACO算法參數初始值,設置蟻群數量N,最大迭代次數K,信息素蒸發系數ρ,信息素增加強度Q等。對數組[C,γ]數據進行初始化處理,設置C與γ的取值范圍為[0.1,1000]。
3)使用ACO算法對參數進行搜索,蟻群按相應規則朝著信息素最大的地方尋找,不斷更新信息素并進行記錄。
4)采用數據訓練時輸出均方誤差(MSE),平均絕對百分比誤差(MAPE)。
5)判斷運算迭代次數是否達到最大迭代數目K或是否達到最佳適應度值的設定精度,若沒有則轉到步驟3,若有則滿足結束條件,停止并輸出最佳參數。
3.1.1 原數據獲取
通過查閱文獻、國家統計年鑒、揚州統計年鑒、揚州市統計網站及廣郡通數據平臺等,獲取揚州市2002—2021年各項統計數據。其中,x0為旅游總收入(億元),x1為入境游客人數(萬人次),x2為國內游客(萬人次),x3為客運量(萬人),x4為旅客周轉量(億人公里),x5為第三產業實現增加量(億元),x6為揚州市GDP(億元),x7為揚州常住人口數量(萬人),x8為揚州城鎮居民人均可支配收入(元),x9為揚州城鎮居民人均消費性支出(元),x10為揚州農村居民人均可支配收入(元),x11為揚州農村居民人均消費性支出(元),x12為揚州市旅行社數量(家),x13為揚州市星級飯店數量(家)。部分原始數據詳見表1。
表1 揚州市2002—2021年相關統計的部分原始數據Tab.1 Part of the original data of Yangzhou City from 2002 to 2021
3.1.2 歸一化處理
為消除各預測指標數據的量綱對揚州市旅游業年總收入預測結果準確性的影響,對原始數據進行歸一化處理。使用mapminmax函數對其進行規范化,將樣本數據轉化為[-1,1]之間的數據,公式如下[12]:
式中,xij表示原始樣本數據,yij表示樣本數據歸一化后的數據,ymax、ymin為設置參數最大值與最小值的映射區間。由于樣本數據要規整在[-1,1],設置ymax=1、ymin=-1。樣本數據歸一化通過MATLAB實現,表1原始數據歸一化的結果詳見表2。
表2 揚州市2002—2021年的相關統計部分原始數據的歸一化結果Tab.2 Normalization results of some original data of Yangzhou City from 2002 to 2021
將歸一化處理后的數據集分為訓練數據與測試數據:訓練數據集用于建立ACO_SVM預測模型,測試數據集用于檢驗新提出的回歸優化模型。以2002—2018年揚州市的各類數據為訓練集,2019—2021年揚州市的各類數據為測試集。
3.3.1 參數優化
通過ACO算法搜索支持向量機的2個最優參數:懲罰參數C與核函數的參數γ;選擇RBF作為支持向量機的核函數,用MATLAB編程,選取揚州市旅游業年總收入預測的預測指標(x1,…,x13)為輸入變量,目標層的旅游總收入(x0)為輸出變量,對訓練集進行訓練。設定懲罰參數C的取值范圍為[10,10 000],RBF核函數參數γ的取值范圍為[0.001,10]。在搜索過程中為得到2個最優參數,迭代上線設為200,得出模型的最佳適應度為1.26×105。詳見圖1。
圖1 參數優化適應度變化Fig.1 Changes of parameter optimization fitness
3.3.2 訓練模型
利用尋優后的懲罰參數C與核函數參數γ對ACO_SVM預測模型進行訓練,發現揚州市2002—2018年旅游業總收入預測值與實際值間存在較小的波動,預測值與實際值的MSE與MAPE分別為0.1552與0.0994。擬合優度R2為0.937983,R2值越接近1,說明回歸直線對觀測值的擬合度越好。參數C=9.344×103,γ=0.01,說明參數尋優過程合理有效,訓練結果精度較高。訓練結果的擬合效果詳見圖2。
圖2 真實值與預測值擬合效果Fig.2 Fitting effect between the real and the predicted value
揚州市旅游業年總收入增長存在一定的變化趨勢,故歷史數據可用于總結其旅游業年總收入增長的特點,考慮到其他方面的影響因素,預測未來旅游業年總收入的發展走向。應用ACO_SVM預測模型預測揚州市旅游業總收入的偏差較小,預測值較接近實際值,故將訓練好的ACO_SVM預測模型應用于對2022—2026年揚州市旅游業年總收入的預測。預測值詳見表3。
表3 揚州市旅游業年總收入預測值Tab.3 Prediction value of total annual tourism revenue of Yangzhou City
使用ACO_SVM預測模型與SVM預測模型兩種學習算法對旅游收入趨勢進行預測,ACO_SVM與SVM模型相比,前者的MSE與MAPE分別降低了52%與54%,表明ACO_SVM預測模型具有更高的精度和穩定性,能夠提供更實用的依據與參考。詳見圖3。
圖3 ACO_SVM模型與SVM模型精度對比Fig.3 Comparison of accuracy between ACO_SVM model and SVM model