趙敏華蘇蕤徐立先
1西安建筑科技大學信息與控制工程學院
2山東省科學院自動化研究所
基于PSO-SVM的PMV指標預測系統(tǒng)研究
趙敏華1蘇蕤1徐立先2
1西安建筑科技大學信息與控制工程學院
2山東省科學院自動化研究所
隨著空調(diào)應用的日益廣泛,室內(nèi)環(huán)境的熱舒適性和空氣品質越來越受到人們的關注。基于此本文研究了一種自適應粒子群支持向量機分類模型對室內(nèi)熱舒適度進行評價的方法,文中給出了模型的詳細設計步驟和實現(xiàn)代碼,并采用“智能建筑環(huán)境技術平臺”的熱舒適指標數(shù)據(jù)庫中的夏季PMV數(shù)據(jù)集對模型進行仿真研究,且與基于網(wǎng)格搜索-SVM模型作了深入對比,實驗結果表明PSO-SVM模型應用到室內(nèi)環(huán)境舒適度評價具有一定優(yōu)勢。
熱舒適指標 粒子群算法 支持向量機
隨著經(jīng)濟技術的發(fā)展和生活水平的不斷提高,空調(diào)在工作、生活中越來越必不可少。研究表明:室內(nèi)良好舒適的環(huán)境可以使人精神愉快、提高工作效率,適宜的熱環(huán)境可提高生產(chǎn)率18%[1]。
與以往圍繞“溫度”這一單一影響人體舒適度指標的研究不同,本文選用了一個在環(huán)境舒適度研究領域內(nèi)獲得越來越高認可度和應用度的指標[2~5]——PMV,該指標包含空氣溫度、風速、穿衣指數(shù)等7個參數(shù)。與過去單純以溫度的高低來衡量環(huán)境是否舒適的方法相比,運用PMV指標進行評價的方法更加的全面和科學。
當然,在尋找(研究)這個問題解決方案的過程中,對環(huán)境的舒適度做出準確的預測首先就是一個非常重要的環(huán)節(jié)。本文以此為背景,建立了一種基于PSO-SVM的熱舒適指標預測模型,并通過對實例的Matlab仿真驗證了該模型的可行性。
支持向量機算法(Support Vector Machine,SVM)是由Vapnik等提出的一種以統(tǒng)計學習理論為基礎的新型機器學習方法。它以結構風險最小為原則,本質上是求解凸二次規(guī)劃問題,其在解決小樣本、非線性和高維模式識別問題中有較大優(yōu)勢。
SVM分類法基本思想是在樣本空間中構造最優(yōu)分類超平面,使得超平面與不同類別的樣本集之間的距離最大,從而達到最大的泛化能力。支持向量機算法的實現(xiàn)與內(nèi)積核函數(shù)有關[6]。
為了選擇合適的核函數(shù)并確定最優(yōu)的核函數(shù)參數(shù),引入了粒子群優(yōu)化算法 (Particle Swarm Optimization,PSO),該算法模擬鳥集群飛行覓食的行為,鳥之間通過集體地協(xié)作使群體達到最優(yōu)目的,是一種基于Swarm Intelligence的優(yōu)化方法。PSO算法中需要調(diào)整的參數(shù)較少,因而容易實現(xiàn)[7]。
本文的數(shù)據(jù)來自我?!爸悄芙ㄖh(huán)境技術平臺”的熱舒適指標數(shù)據(jù)庫中的夏季PMV數(shù)據(jù)集,該數(shù)據(jù)集包含有三種不同熱舒適度的數(shù)據(jù)共199組樣本數(shù)據(jù),每個樣本數(shù)據(jù)均由人體代謝率,人體對外做功,所著服裝熱阻、空氣溫度、空氣流速、空氣相對濕度、平均輻射溫度共7個參數(shù)組成,也就是說每一組樣本數(shù)據(jù)都是7維的。199組樣本根據(jù)PMV值分為3類:PMV=1的26組、PMV=2的137組、PMV=3的36組,在此設定模型輸出1,2,3分別表示三種熱舒適度下的環(huán)境。從三類環(huán)境中共取99組樣本作為訓練樣本,剩余的 100組作為測試樣本。采用 Matlab中的mapminmax函數(shù)將輸入數(shù)據(jù)歸一化到[-1,1]區(qū)間,這樣就完成了數(shù)據(jù)的預處理工作。
表1 訓練樣本輸入數(shù)據(jù)
表2 訓練樣本輸出數(shù)據(jù)
3.1 SVM數(shù)學模型的構建
SVM方法完成分類主要分為以下3個步驟:①選定非線性映射K(x),這里是指PMV的計算公式;②將輸入向量X通過K(x)映射到一個高維的特征空間Y中,這里輸入向量X=[x1,x2,……,x199](xi∈R7),高維特征空間Y=[y1,y2,……,y199](yi=1、2或3);③在高維特征空間Y中尋找最優(yōu)分類平面。
根據(jù)以上的理論,進行數(shù)學模型地構建。首先,設最優(yōu)分類平面為ω·x+b=0,此時訓練集應該滿足yi(ω· xi+b)-1≥0,此時分類問題就可以轉化為二次回歸問題min(0.5||ω||2+c(Σδi)),其中yi(ω·xi+b)≥1+δi,δi≥0,c表示懲罰因子。隨后通過引入拉格朗日因子將二次回歸最小化問題轉化為對偶規(guī)劃問題max(ΣQi-0.5ΣQiQ·jxi),其中Qi和Qj表示拉格朗日因子。最后SVM的非線性判別函數(shù)就可以表示為f(x)=sgn(ΣQiyiK(xi,xj)+b)[8]。
以上理論是支持向量機進行模式分類的基本原理,實際上對其在Matlab環(huán)境下進行仿真,實現(xiàn)模型構建和結果分類,僅需要兩條調(diào)用語句,即svmtrain和svmpredict。
3.2 PSO優(yōu)化SVM參數(shù)的算法設計
圖1為PSO優(yōu)化SVM參數(shù)算法的基本流程。
圖1 PSO優(yōu)化SVM參數(shù)算法的基本流程
Step 1:設定相關參數(shù)
①種群規(guī)模sizepop:由于在本文中需要優(yōu)化的參數(shù)只有兩個,即懲罰因子c和核函數(shù)的參數(shù)g,因此群體中均是由這兩個參數(shù)組合而成的二維粒子(c,g),因此取sizepop=30并且設定搜索空間的維度是2。
②慣性權重ω:它是用來平衡全局搜索和局部搜索效果的參數(shù),較大的ω有利于群體在更大的范圍內(nèi)進行搜索,而較小的ω能夠保證群體收斂到最優(yōu)位置,本文將ω設定為0.8。
③學習因子c1和c2:它們用于調(diào)整單個粒子在群體尋優(yōu)過程中,自身經(jīng)驗和社會經(jīng)驗在其運動中的作用,表示每個粒子向pbest和gbest位置的隨機加速項的權重。如果c1=0,則代表粒子自身沒有認知能力。如果c2=0,代表粒子沒有進行群體信息共享,一般c1和c2的取值范圍為[0,4][9],本文設定c1=c2=2,交叉驗證的參數(shù)k=3。
Step 2:初始化種群和速度
①在確定PSO的相關參數(shù)和搜索維度后,在Matlab中進行種群和速度初始化的語句如下:
pop(i,1)=(popcmax-popcmin)*rand+popcmin;
pop(i,2)=(popgmax-popgmin)*rand+popgmin;
V(i,1)=Vcmax*rands(1);
V(i,2)=Vgmax*rands(1);
其中,popcmax=102,popcmin=10-1,popgmax=103,popgmin=10-2。
②計算初始適應度:
cmd=‘[-v’,num2str(v)‘,-c’,num2str(pop(i,1))‘,-g’, num2str(pop(i,2))];
fitness(i)=svmtrain(train_pmv_labels,train_pmv, cmd);
fitness(i)=-fitness(i);
Step 3:迭代尋優(yōu);
①極值更新[10]:比較粒子個體的適應度值fitness (j)和其經(jīng)歷過的最好位置的適應度值local_fitness(j),若前者小于后者,則將后者的值賦給前者。再比較新的粒子個體適應度值和所有群體所經(jīng)歷的最好位置的適應度值,此時若前者小于后者,則將后者的值賦給前者。Matlab中的部分代碼如下:
個體最優(yōu)更新:
if fitness(j)<local_fitness(j)
local_x(j,:)=pop(j,:);
local_fitness(j)=fitness(j);
群體最優(yōu)更新:
if fitness(j)<global_fitness
global_x=pop(j,:);
global_fitness=fitness(j);
②速度更新:以①生成的兩個極值為基礎,采用Matlab編寫的部分程序如下:
V(j,:)=wV*V(j,:)+c1*rand*(local_x(j,:)-pop(j,:)) +c2*rand*(global_x-pop(j,:));
Step 4:自適應變異;
考慮到種群更新過程中粒子變異的幅度對全局搜索能力和局部搜索能力可能會產(chǎn)生影響,因此本文引入了自適應變異策略,并取粒子變異率為0.5,對所有的粒子分配一個隨機數(shù)rand,采用Matlab編寫的部分程序如下:
if rand>0.5
k=ceil(2*rand);
if k==1
pop(j,k)=(20-1)*rand+1;
if k==2
pop(j,k)=(popgmax-popgmin)*rand+popgmin;
Step 5:迭代終止判斷;
判斷程序的運行是否達到了設定的最大迭代次數(shù)maxgen(maxgen=200)。如果達到了,則輸出最優(yōu)的粒子,并將得到的最好的c和g值賦給支持向量機,進入接下來的預測分類環(huán)節(jié);如果沒有達到,則返回Step3,繼續(xù)進行下一輪尋優(yōu)過程,直到滿足終止條件。
4.1 SVM模型對樣本的預測
由圖2可以看出,采用SVM模型對100組測試樣本進行分類的結果準確率很低,只有69%,遠不能滿足課題對于樣本準確分類的需求。這說明引入優(yōu)化算法,為SVM模型選擇合適的c和g非常有必要。
圖2 基于SVM模型的識別結果
事實上,如何選擇適合模型的優(yōu)化算法也是一個值得研究的課題,下文中將采用兩種比較典型的算法來優(yōu)化已有模型,并將優(yōu)化結果進行比對,找到最適合的優(yōu)化算法。
4.2 基于PSO-SVM模型對樣本的預測
考慮到PSO算法中的rand對實驗結果的影響,也為了使仿真結果更具說服力,將該模型運行了10次,發(fā)現(xiàn)各次運行得到的c和g的值都是一樣的,并且最終樣本預測的準確率都可以達到100%。下面以其中一次的運行結果進行說明。PSO算法尋優(yōu)過程中的適應度變換曲線如圖3所示,PSO算法尋找最優(yōu)c和g的過程如圖4所示,基于PSO-SVM模型的分類結果如圖5所示。
圖3說明PSO算法可以較快地找到最優(yōu)解,即bestc和bestg;圖4中由于尋優(yōu)曲線很密集,沒辦法直觀地看到bestc和bestg的位置,但是這在Matlab的command窗口中是有結果輸出的:best=1,best= 0.0625,bestacc=100。這里的bestacc=100指的是K-折交叉驗證過程中的最高精度是100%。從圖5可以看出,PSO-SVM模型對100組測試樣本進行分類,準確率可達100%。
圖3 PSO算法適應度變換曲線
圖4 PSO算法優(yōu)化bestc.bestg的軌跡
圖5 基于PSO-SVM模型的識別結果
圖6 網(wǎng)格搜索法優(yōu)化bestc,bestg的軌跡
圖7 基于網(wǎng)格搜索-SVM模型的識別結果
4.3 基于網(wǎng)格搜索-SVM模型對樣本的預測
為了進一步說明PSO-SVM模型的優(yōu)越性,同時證明PSO算法的引入對于SVM模型參數(shù)選取的有利影響,將網(wǎng)格搜索法也引入到了SVM模型的參數(shù)選取中,同樣將基于網(wǎng)格搜索-SVM模型運行10次,發(fā)現(xiàn)每次得到的bestc和bestg都有一定的差異,而樣本的分類結果準確率在96.73%~98.00%之間,網(wǎng)格搜索法尋找bestc和bestg的過程如圖6所示(bestc=0.5,bestg=2.225,bestacc=99),基于網(wǎng)格搜索-SVM模型運行10次中最優(yōu)1次的分類結果如圖7所示。
4.4 PSO-SVM模型和網(wǎng)格搜索-SVM模型的對比
表3給出了兩種模型10次運行的平均時間和預測準確率,從表中可以看出PSO-SVM模型的平均預測準確率高于網(wǎng)格搜索法-SVM模型2.635%,但是前者運行時間卻比后者長9.4802s,但是考慮到當前計算機的智能化程度和運算速度,這種級別的時間差幾乎不會給計算機的運行帶了額外的負擔,因而引入PSO算法進行更精準的預測還是很有必要的。
表3 兩種模型預測結果對比
本文研究了基于PSO-SVM模型的環(huán)境舒適度評價模型,文中給出了在Matlab環(huán)境下創(chuàng)建該模型的詳細步驟及實現(xiàn)代碼。最后的仿真結果證明了PSO算法引入的有效性,也證明了將PSO-SVM模型應用到室內(nèi)環(huán)境的舒適度預測是可行的,此模型也可應用到其他領域,用來解決相關的分類預測問題。
[1]羅婷.基于PMV指標的室內(nèi)熱舒適控制方法的應用研究[D].濟南:山東建筑大學,2009
[2]牛潤萍,陳其針,張培紅.熱舒適的研究現(xiàn)狀與展望[J].人類工效學,2004,10(1):38-40
[3]王丹,曹紅奮.基于PMV控制目標的舒適性空調(diào)應用研究[J].潔凈與空調(diào)技術,2011,3(1):8-11
[4]郭富軍,楊昌智.舒適指標在空調(diào)系統(tǒng)控制中的應用研究[J].湖南大學學報,2000,2(9):761-764
[5]魏東,潘興華,張明廉.舒適性指標PMV在暖通空調(diào)控制中的應用[J].北京建筑工程學院學報,2004,20(1):52-56
[6]王興芬,李雪燕,張繼松.基于支持向量機的網(wǎng)上銀行驗證碼識別研究[J].計算機工程與應用,2012,1(6):1-7
[7]王海軍,喬燁.PSO-SVM模型在葡萄酒品質分類中的應用研究[J].計算機與數(shù)字工程,2012,40(8):146-148
[8]黃玉玲,王勇.時序電路測試生成新算法研究[J].無線電工程, 2008,38(7):49-52
[9]邵年華,黃領梅,沈冰,等.PSO-SVM模型在蒸發(fā)預測中的應用[J].黑龍江水專學報,2009,36(2):8-10
[10]姜明輝,袁緒川,馮玉強.PSO-SVM模型的構建與應用[J].哈爾濱工業(yè)大學學報,2009,41(2):169-171
Re s e a rc h of PMV Inde x Fore c a s ting Sys te m ba s e d on PSO-SVM
ZHAO Min-hua1,SU Rui1,XU Li-xian2
1 School of Information and Control Engineering,Xi’an University of Architecture and Technology
2 Automatic Institute of Shandong Academy
With the increasingly widespread application of air-condition,the indoor environmental thermal comfort and the air quality have got more and more people’s attention.Based on this condition,the paper is researched on an adaptive PSO support vector machine classification model given a detailed model of the design steps and implementation code, then the model is validated using the summer PMV data sets of thermal comfort index database on“Intelligent Building Environment Technology Platform”.At last,the experimental results show that the PSO-SVM model is applied to indoor environmental comfort evaluation has certain advantages than the grid-based search-SVM model in depth comparison.
PMV,PSO,support vector machines
1003-0344(2015)03-073-4
2014-1-26
蘇蕤(1988~),女,碩士研究生;西安建筑科技大學信息與控制工程學院(710055);E-mail:surui1988surui@163.com
陜西省教育廳自然科學研究項目基金(12JK0999);西安建筑科技大學科技計劃項目(JC1215)