馮英 徐松林
摘 要:中頻數(shù)字信號處理(DSP)是現(xiàn)今研究的熱門議題,其應用范圍包含語音辨識、語音合成、影像處理以及馬達控制等,其中信號的表示、轉換及應用更是中頻數(shù)字信號處理器中重要的一環(huán),而如何設計數(shù)字濾波器則成為中頻數(shù)字信號處理領域中很重要的論點。在這種背景下,本文重點從改良型粒子群最優(yōu)化演算法著手,對于數(shù)字濾波器的設計進行了分析。
關鍵詞:中頻數(shù)字接收機;數(shù)字濾波器;設計;粒子群最優(yōu)化演算法
1 中頻數(shù)字接收機的數(shù)字濾波器應用及特征
濾波器可以用相當簡單的手法改變信號的本質,設計者可以自由選擇所需的頻段,并濾除其他不需要的部分。例如,當輸入一信號通過低通濾波器后,便可以讓低頻部分的信號通過并能消除高頻部分的信號;反之,高通濾波器也可讓高頻部分的信號通過,并消除低頻部分的信號。一般而言,數(shù)字濾波器主要可分為有限脈沖響應(Finite impulse response,F(xiàn)IR)及無限脈沖響應(Infinite impulse response,IIR)濾波器兩種,這兩者最大的差別在于FIR濾波器必須使用更多的階數(shù)才能達成和IIR濾波器同樣的效果,不過FIR濾波器在設計時不用考慮穩(wěn)定性;反之,IIR濾波器在設計時必須考慮到穩(wěn)定性的影響。
在濾波器研究方面數(shù)字濾波器會比類比濾波器擁更更高的精準度,在雜訊方面,數(shù)字濾波器通過電腦模擬可以排除不必要的雜訊,而類比濾波器卻要考慮雜訊影響,在穩(wěn)定度上類比濾波器要考慮電子元件、電路、溫度,經(jīng)過時間長短而改變,在數(shù)字濾波器上卻沒有此問題。
2 傳統(tǒng)數(shù)字濾波器設計技術
一是人工蜜蜂群演算法(Artificial Bee Colony algorithm,ABC algorithm),這是Dervis Karaboga學者在2006年觀察蜜蜂的覓食行為所提出,人工蜜蜂群演算法包含三種群體的蜜蜂,也即工蜂、觀察蜂與偵查蜂,而蜜蜂的主要目的是搜尋食物來源以及發(fā)現(xiàn)擁有最大花蜜量的食物來源,再配合自己與同伴的經(jīng)驗來選擇,最后通過迭代次數(shù)尋求最優(yōu)解。
二是粒子群最優(yōu)化演算法(Particle Swarm Optimization,PSO),這是由Russell Eberhart和James Kennedy兩位學者在1995年研究自然界生物群聚行為,所發(fā)展出以生物群體為背景的計算技術,借助模擬單一個體所組成的群聚行為,個體間的行為不但會受到過去經(jīng)驗影響,同時也會受到整體群聚行為影響。
三是微分演化演算法(Differential Evolution,DE),這是由Storn和Price兩位學者于1997年提出,是近年來最優(yōu)化演算法的熱門選擇之一,經(jīng)由實數(shù)進行突變、交配與選擇最后通過迭代以搜尋最優(yōu)解,而在過去文獻中發(fā)現(xiàn),其均能表現(xiàn)出不錯的成效,并廣泛地被應用在各項領域當中,其優(yōu)勢包含參數(shù)設定數(shù)少、穩(wěn)健、實作容易、高準確性。
3 基于改良型粒子群最優(yōu)化演算法的數(shù)字濾波器設計
3.1 粒子群最優(yōu)化演算法
粒子群最優(yōu)化演算法(particle swarm optimization, PSO)是模擬鳥、魚群覓食行為的智慧演算法,經(jīng)由粒子間信息的交換并更新其向量來求解最優(yōu)化的問題,而改良型粒子群最優(yōu)化演算法在信息的交換并更新向量之間,除了考慮原有的粒子最優(yōu)解與全域最優(yōu)解之外,新增的區(qū)域最優(yōu)解可以使演算法在求解最優(yōu)化問題時更有效率的搜尋到最優(yōu)解的位置,進而縮短求解最優(yōu)化問題所需的時間。
在粒子群優(yōu)演算法中,每一個個體被稱為粒子,每一個粒子都有各自的位置以及移動速度,粒子位置以Xid來表示,粒子的移動速度則以Vid來表示,其中i代表第i個粒子,d代表粒子中第d個系數(shù)。在求解與迭代過程中,所有粒子經(jīng)過適應函數(shù)(Fitness Function)的計算后會得到各自的適應值(Fitness Value),每一個粒子與之前的自己比較后會得知自己的最佳位置Pid,這稱之為每個粒子的各自最優(yōu)解,同時在與其他粒子比較后也會得知目前群體中的最佳位置Gd,這稱之為群體最優(yōu)解,最后利用更新的方程式來更新粒子的位置與速度。最常被使用的更新法則有以下三種,分別為慣性權重法(Inertia weight method)、最大速度法(Max method)和收縮系數(shù)法(Constriction factor method)。
3.2 改良型粒子群最優(yōu)化演算法
改良型粒子群最優(yōu)化演算法是以傳統(tǒng)粒子群最優(yōu)化演算法為基礎,除了考慮各自最優(yōu)解與全域最優(yōu)解外,新增的區(qū)域最優(yōu)解可以幫助粒子更有效率的在空間搜尋最優(yōu)解的位置。在求解過程中,把族群內(nèi)的粒子再平均分成p個小群體,所有粒子經(jīng)過適應函數(shù)的計算會得到各自的適應值,所有小群體會比較各自群體內(nèi)所有粒子的適應值來找出小群體各自的最佳位置Spd與最佳適應值Sd,這稱之為區(qū)域最優(yōu)解,并把該因素加進慣性權重法內(nèi)可以得到新的慣性權重法。
3.3 改良型粒子群最優(yōu)化演算法流程
步驟1:設定粒子的數(shù)量,即為族群大?。≒opulation Size,PS),族群大小為可調(diào)參數(shù)之一,其值如果設定太大,雖然可以加快找到最優(yōu)解的機會,但卻也會增加系統(tǒng)運算的時間,如果設定太小則容易提早收斂,因此必需視最優(yōu)化問題的復雜度來調(diào)整群體大小,才不會影響系統(tǒng)的搜尋效率,而每一個粒子的初始位置(Xi1,Xi2,…,Xid)則是以隨機亂數(shù)的方式產(chǎn)生。步驟2:計算適應值以評估每一個粒子對最優(yōu)化問題的適應程度。步驟3:比較由步驟2所計算的適應值,根據(jù)適應程度的優(yōu)劣來決定各自最優(yōu)解、區(qū)域最優(yōu)解以及全域最優(yōu)解的位置與適應值。步驟4:利用所選擇的更新法則計算每個粒子的速度與其更新后的位置。步驟5:判斷是否已達設定的最大迭代次數(shù),若是,則結束搜尋;若否,則跳回。
[參考文獻]
[1]魏朝暉.數(shù)字濾波器的設計與實現(xiàn)的研究[J].機電產(chǎn)品開發(fā)與創(chuàng)新,2009(02).
[2]葛建新.數(shù)字濾波器的設計與實現(xiàn)方法[J].電腦知識與技術,2009(08).