尹志寧,陳慶濤(大唐移動通信設備有限公司,北京 100083)
網絡通過切換過程實現(xiàn)接入用戶的移動性管理。當用戶在業(yè)務進行過程中到達小區(qū)邊界,需要切換到相鄰小區(qū)以保證業(yè)務性能。合理地配置鄰區(qū)關系,可以降低切換失敗的概率。
NR 的每個頻點上都可以有多個小區(qū),將所有的小區(qū)都配置為鄰區(qū)是不現(xiàn)實的,一方面基站產品對鄰區(qū)個數(shù)存在限制,另一方面,鄰區(qū)關系做的過多,則導致測量報告的精確性降低,容易造成頻繁切換、乒乓切換等問題。但是鄰區(qū)關系做的太少,會造成大量掉話,在實際的鄰區(qū)規(guī)劃中要根據(jù)具體情況實施合理的鄰區(qū)規(guī)劃。
對于鄰區(qū)規(guī)劃,現(xiàn)網的主要方案是自動鄰區(qū)關系(Automatic Neighbor Relations,ANR)。ANR 方案基于用戶的測量上報、切換請求等來管理鄰區(qū)關系。用戶通過測量報告上報鄰區(qū)物理小區(qū)標識后,如果服務小區(qū)所在基站發(fā)現(xiàn)用戶上報的小區(qū)不在鄰區(qū)關系表中,則會通過無線資源控制重配置消息指示用戶讀取該小區(qū)的全球小區(qū)標識(Global Cell Identity,GCI)?;精@取到用戶上報的GCI 之后,即得知該小區(qū)的基本信息,會將該小區(qū)加入到鄰區(qū)關系表。一般讀取GCI 的時間較長,因此基站需要調度合適的間隙使用戶讀取鄰區(qū)的廣播信道,以獲取GCI。在建網之初,需要添加大量的鄰區(qū)關系,那么用戶需要讀取多個小區(qū)的CGI,會帶來切換延遲。
若在建網之初,對鄰區(qū)做一次預規(guī)劃,即靜態(tài)地規(guī)劃一些鄰區(qū),當網絡運行后,再由ANR 算法進行動態(tài)地微調,則網絡性能會更好。本文提出使用機器學習算法來對區(qū)域內的多個候選小區(qū)進行鄰區(qū)預規(guī)劃,并使用了監(jiān)督的機器學習和無監(jiān)督的機器學習方法,將鄰區(qū)規(guī)劃轉換為分類問題進行預測。方法整體流程如下(見圖1)。
圖1 基于機器學習的鄰區(qū)規(guī)劃流程
a)數(shù)據(jù)預處理,即構造樣本集的特征屬性。
b)選擇機器學習算法進行數(shù)據(jù)訓練。
c)輸出預測結果。
假設當前規(guī)劃的是小區(qū)B,需要通過機器學習預測小區(qū)A是否為小區(qū)B的鄰區(qū)。由于原始數(shù)據(jù)包含的站址、扇區(qū)方位角等信息不利于數(shù)據(jù)分析,先對數(shù)據(jù)進行如下的預處理:
a)將2 個小區(qū)的經度、緯度轉化為2 個小區(qū)之間的地面距離。假設地球是一個完美的球體,那么它的半徑就是地球的平均半徑,記為R=6 371 004 m。設小區(qū)A的經緯度為(lonA,latA),小區(qū)B的經緯度為(lonB,latB),如圖2所示。考慮到中國處于東北半球,根據(jù)三角推導,可以得到圓心角:n=cos-1sin(latA)×sin(latB)+cos[latA×coslatB×cos(lonA-lonB)],則小區(qū)A、B之間的地面距離,即弧長L=R×π×n/180。
圖2 小區(qū)經緯度與小區(qū)距離
b)候選鄰區(qū)篩選。使用的工參數(shù)據(jù)包含132 個4G基站,每個基站配置3個小區(qū),如果任意2個小區(qū)之間的關系稱為一個小區(qū)關系對,則這樣的小區(qū)關系對多達132 ×3-1+132 ×3-2+…+2+1=78 210 個。在典型的蜂窩模型中,以規(guī)劃小區(qū)為圓心,通常只會添加由內而外的6 圈鄰區(qū)。因此,可以將數(shù)據(jù)進行篩選,只選擇有用的候選鄰區(qū)進行訓練。本文選取的場景是居民區(qū),站間距約400 m,因此需要篩選出小區(qū)間距離小于2 500 m 的小區(qū)關系對。篩選后,有用數(shù)據(jù)為4 702個。篩選后的數(shù)據(jù),每個規(guī)劃小區(qū)包含6圈候選鄰區(qū),數(shù)量多達6×3×(1+2+3+4+5+6)=378個。而實際的鄰區(qū)數(shù)量為64 個,因此除了距離之外,鄰區(qū)關系還要考慮如下的角度因素。
c)將2 個小區(qū)的扇區(qū)方位角、經度、緯度轉化為2個小區(qū)之間的夾角,夾角angle定義為CellA和CellB的連線與2個小區(qū)天線法線方向的夾角的最小值,如圖3所示。
圖3 小區(qū)夾角示意圖
先來計算2 個小區(qū)連線的方位角。設dlon=lonBlonA,dlat=latB-latA,alpha’=|dlon/dlat|。根據(jù)dlon和dlat取值的不同,對alpha’做如下變換,得到小區(qū)連線的方位角alpha:
當dlon>0,dlat>0時,alpha=alpha’;
當dlon>0,dlat<0時,alpha=180-alpha’;
當dlon<0,dlat>0時,alpha=360-alpha’;
當dlon<0,dlat<0時,alpha=180+alpha’。
接下來求小區(qū)夾角angle,設小區(qū)A的扇區(qū)方位角為angleA,小區(qū)B的扇區(qū)方位角為angleB,則angle1=|alpha- angleA|,angle2=|alpha-angleB|,angle=min(angle1,angle2)。
根據(jù)上述原則,數(shù)據(jù)預處理后包含小區(qū)間距離和夾角2個特征。
機器學習算法分為監(jiān)督學習和無監(jiān)督學習,二者的主要區(qū)別在于數(shù)據(jù)是否有“標簽”。本文所述的“標簽”即實際的鄰區(qū)關系表,體現(xiàn)了一個候選鄰區(qū)是否為規(guī)劃小區(qū)的鄰區(qū),即將預測結果分為2類:“鄰區(qū)”和“非鄰區(qū)”。下面對各種算法分別做簡要介紹。
監(jiān)督學習使用了樸素貝葉斯分類(Na?ve Bayes,NB)、邏輯回歸(Logistic Regression,LR)、支持向量機(Support Vector Machine,SVM)、K近鄰(K Nearest Neighbors,KNN)算法。
邏輯回歸以線性回歸為基礎,尋找一條線或者一個超平面,盡可能將所有樣本分為2 部分。實際處理就是把線性回歸的計算結果,經過sigmoid 函數(shù)映射到新的地方去。設x為輸入樣本數(shù)據(jù),線性回歸就是找到一條擬合曲線:h(θ)=,而邏輯回歸需要得到輸入樣本為正類的概率hθ(x)=,這樣就會直觀地感受到所處理的樣本點屬于正類的概率為多大。本文使用梯度上升法來計算邏輯回歸算法的權重,迭代次數(shù)為150次。
支持向量機在機器學習當中被當作一種二分類模型,它的基本模型是定義在特征空間上的最大間隔的線性分類器,其學習策略就是間隔最大化,可形式化為一個求解凸二次規(guī)劃的問題。支持向量機提供了一個方法,可以在多個分類器中尋找能更準確分離測試數(shù)據(jù)的分類器。支持向量機的工作原理是:首先尋找能準確分離訓練數(shù)據(jù)的決策邊界;然后在所有這些決策邊界中選擇與最近鄰點的距離最大化的決策邊界。支持向量機分為線性和非線性,對于非線性引入了核函數(shù),將歐式空間通過一個非線性變換映射到一個希爾伯特空間,使得在輸入空間中的超曲面模型對應于特征空間中的超平面模型,通過在特征空間中求解線性支持向量機就可以完成分類。本文使用了非線性的支持向量機,核參數(shù)為rbf,松弛變量C=0.6,迭代終止條件toler=0.001,最大迭代次數(shù)maxIter=50。
K 近鄰算法首先找出一個樣本的K個最近的鄰居,然后將這些鄰居屬性的均值作為該樣本的屬性,甚至可以對不同距離的鄰居進行加權。尤其當分類的樣本數(shù)差異較大時,采用加權的方式是很好的改進方法。K 近鄰算法實際上是對特征空間的劃分,因此選擇的K值、距離度量、分類決策規(guī)則將影響算法的最終結果。本文使用K=15,距離度量采用歐氏距離,分類決策指定用距離權重的方式。K近鄰算法依靠周圍K個鄰近的樣本,適用于類域存在交叉或重疊的樣本集。但是該算法需要計算每個待分類樣本到全體已知樣本的距離,因此計算量較大。
無監(jiān)督學習使用了聚類算法中的K 均值算法(KMeans,KM)、高斯混合分布算法(Gauss Mixture Model,GMM)。
K 均值算法是聚類的一種,將數(shù)據(jù)集中的樣本劃分為若干個不相交的類,然后基于類進行訓練,最后意圖使每個類內的屬性是類似的,每個類間的屬性是背離的。具體過程如下。
a)將樣本集D劃分為2類。
b)選?。?,0)作為“鄰區(qū)”的初始均值向量,選?。? 000,360)作為“非鄰區(qū)”的初始均值向量。
“真可憐!”男孩同情地嘆了一聲,正想著掏錢去買一個糖人,卻又立即搖了搖腦袋,“我現(xiàn)在自身都難保了,萬一出去又被那家伙給黏上了怎么辦?再說這糖人一點都不好玩,也不好吃,而且還有一股焦煳的味道,擎天柱和巧克力才是我的菜!”
c)考察每個樣本與當前均值向量的距離并得到其歸屬的類。
d)基于當前類劃分,求得新的均值向量。
e)迭代直到類劃分的結果不再變化,得到最終的類劃分。K 均值算法適用于某些屬性之間具備相似性,而另外一些屬性與這些屬性之間不相似的情況,否則,可能需要迭代更多的次數(shù)或者結果一直不收斂。本文中“鄰區(qū)”與“非鄰區(qū)”的屬性并不存在明顯的不同,因此K均值算法用于鄰區(qū)規(guī)劃的效果不理想。
高斯混合分布也是聚類算法的一種,它要求各個屬性之間獨立分布。高斯混合分布采用概率模型來表達聚類原型,定義如下:p(x)=在本文中,高斯混合分布由2個混合成分組成,且每個混合成分對應一個高斯分布,ai為混合系數(shù)且滿足=1,可根據(jù)最大似然估計求解模型參數(shù){(ai,μi,σi)|i=(1,2)}。高斯混合分布算法的步驟如下。
a)初始化模型參數(shù)。
b)計算樣本由各混合成分生成的后驗概率。
c)更新模型參數(shù)。
d)重復步驟b)~c),直到最大似然函數(shù)不再增長,得到最終的分類結果。高斯混合分布通過增加分類個數(shù)來逼近連續(xù)的概率密度分布,本文中K=2,分類數(shù)較小,效果不理想。
表1給出了相關仿真參數(shù)。
圖4 和圖5 是樣本數(shù)為1 107 個時,各類算法的預測結果。每個點代表一個候選鄰區(qū),橫軸和縱軸分別代表候選鄰區(qū)與規(guī)劃小區(qū)之間的距離(單位:m)和夾角(單位:°),藍色代表此候選小區(qū)被預測為鄰區(qū),紅色代表預測為非鄰區(qū)。
圖5 無監(jiān)督學習算法的預測結果
為了更精確地了解各種算法的性能,預測結果通常用準確率、召回率和精確率3 個指標來評估。首先定義表2所示的混淆矩陣。
基于表2矩陣,定義:
表2 混淆矩陣
準確率=(TP+TN)/(TP+TN+FN+FP),即準確率是預測正確的小區(qū)數(shù)量/總的小區(qū)數(shù)量。
召回率=TP/(TP+FN),即召回率是標記為鄰區(qū)的小區(qū)中正確的數(shù)量/標記為鄰區(qū)的小區(qū)數(shù)量。
精確率=TP/(TP+FP),即精確率是預測為鄰區(qū)的小區(qū)中正確的數(shù)量/預測為鄰區(qū)的小區(qū)數(shù)量。
由于訓練集和測試集都是從數(shù)據(jù)集中按比例隨機選取的,因此每次程序運行的結果都略有差異??梢詫⒊绦蜻\行多次(本文運行了10次),將上述指標分別取平均值,得到如圖6所示的性能與樣本數(shù)的關系。
圖6 監(jiān)督學習算法性能與樣本數(shù)的關系
從以上仿真結果來看:
a)分類之間沒有明顯的界限。這是因為數(shù)據(jù)集的2 個特征屬性都是連續(xù)的屬性,且篩選出來的小區(qū)都是候選鄰區(qū),只是因為鄰區(qū)數(shù)量的限制,優(yōu)先級高的候選鄰區(qū)被劃分到了“鄰區(qū)”類,而優(yōu)先級較低的候選鄰區(qū)被劃分到了“非鄰區(qū)”類。如果允許添加更多的鄰區(qū),則分類結果會不一樣。
b)基于監(jiān)督的機器學習算法更勝一籌,這是因為監(jiān)督學習算法能夠依據(jù)“標簽”的指導更好地訓練數(shù)據(jù),進而得到更為準確的結果。
c)幾種監(jiān)督學習算法都可以滿足82%以上的準確性,這也說明了機器學習算法在鄰區(qū)規(guī)劃領域的可行性。
d)在訓練的幾種監(jiān)督學習算法中,SVM、KNN、LR的性能更好,NB 的效果略差。這是因為NB 算法計算每個候選鄰區(qū)在給定分類下的條件概率,哪種分類下的概率大,就將其劃分為哪類。本文中的特征屬性分別是小區(qū)間距離及小區(qū)間夾角,很明顯,距離的取值遠大于夾角的取值,這會導致距離對最終結果的影響占主導地位。為了進行優(yōu)化,需要同時考慮小區(qū)間夾角,可以對特征值進行加權,比如對距離屬性賦予較小的加權系數(shù),對角度屬性賦予較大的加權系數(shù)。
e)隨著樣本數(shù)增加,各類算法的準確率和召回率也在升高,精確率略有浮動。這種結果是合理的,因為算法會在“過度擬合”與“欠擬合”之間自適應調整參數(shù),因此精確率和召回率有時是矛盾的。在鄰區(qū)規(guī)劃問題上,為不影響切換,算法期望將被標記為鄰區(qū)的小區(qū)都預測為鄰區(qū)。也就是說,算法期望召回率越高越好,在此基礎上,期望準確率和精確率也是越高越好。根據(jù)圖6 的統(tǒng)計分析,總體來說,樣本數(shù)越多,性能越好。
本文以中國移動某縣的4G工參數(shù)據(jù)為例,研究了鄰區(qū)規(guī)劃問題,此技術可用于2G、3G、5G 及未來移動通信網絡的鄰區(qū)規(guī)劃。鄰區(qū)規(guī)劃可以分2 步走:第1步,使用監(jiān)督學習算法進行鄰區(qū)預規(guī)劃,第2 步使用ANR 算法進行鄰區(qū)管理。本文著重研究了基于機器學習的鄰區(qū)預規(guī)劃,得出了監(jiān)督學習算法可用于鄰區(qū)規(guī)劃的結論。后續(xù)機器學習算法可以結合用戶的測量上報結果,對鄰區(qū)進行調整,完全替代現(xiàn)有的ANR算法,實現(xiàn)基于機器學習的鄰區(qū)管理。