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