6 th International Advanced Technologies Symposium (IATS 11), 16-18 May 011, Elazığ, Turkey Genetik Algoritma Yardımıyla Elde Edilen Yüksek Performanslı Pencere Fonksiyonlarının Yinelemesiz Sayısal Filtre Tasarımında Kullanımı T. Kaya, M. C. İnce Fırat Üniversitesi, Elazığ/Türkiye, {tkaya, mcince}@firat.edu.tr The Using of High Performance Window Functions Obtained by Helping Genetic Algorithm at Nonrecursive Digital Filter Design Abstract In this study, a new approach for window functions which is preferred at many application areas has been improved. Kaiser windows with two parameters and Ultraspherical windows with three parameters which they have adjustable parameter feature are functions and the using of Genetic Algorithm (GA) at design of useful window function containing together good properties of these windows was proposed. With proposed method, a new window function that has side-lobe rolloff ratio characteristic of Ultraspherical window and Kaiser window s main-lobe width and ripple ratio was obtained. The improved window function has been used at FIR filter design and obtained filter shows better property than spectral parameters of filters which have been designed by other window preferred at literature widespread. Keywords Genetic Algorithm, FIR filter, Kaiser window, Ultraspherical window, Cosh window. I. GİRİŞ İstenilen özelliklerdeki çıkış işaretini elde edebilmek için kullanılan donanımsal veya yazılımsal yapılara sayısal filtre adı verilmektedir. Sayısal filtreler impuls cevaplarına göre sonlu impuls cevaplı filtre (FIR, Finite Impulse Response) ve sonsuz impuls cevaplı filtre (IIR, Infinite Impulse Response) şeklinde iki gruba ayrılırlar. Hem FIR hem de IIR filtrelerin birbirlerine göre avantaj ve dezavantajları vardır. FIR olarak tasarlanan bir filtre, hem tekrarlı hem de tekrarsız olarak gerçekleştirilebilir. Tekrarsız (yinelemesiz) olarak hayata geçirilen filtre, daima kararlı ve lineer faz cevabına sahip olacaktır. Yinelemesiz filtre tasarımında frekans örneklemesi ve Fourier serisi yöntemi kullanılmaktadır. Bu yöntemlerden en çok tercih edilen ve sınırlı sayıda değer alınarak gerçekleştirilen Fourier serisi yönteminde arzu edilmeyen Gibbs salınımları meydana gelmektedir. Meydana gelen bu salınımları ortadan kaldırabilmek için kullanılan yapılara pencere fonksiyonu adı verilmektedir. Pencere fonksiyonları (veya kısaca pencere) sayısal filtre tasarımında, meteorolojide hava tahmin modellerinin güvenilirliğinin geliştirilmesinde [1], biyomedikal alanda hastalığın belirlenmesinde kolaylık sağlaması [] gibi pek çok alanda tercih edilmektedir. Sayısal filtre tasarımında kullanılan pencere fonksiyonları, sahip oldukları parametrelere göre sabit ve değişken pencere fonksiyonları şeklinde iki gruba ayrılırlar [3]. Sabit pencere fonksiyonları, sahip oldukları tek parametre olan pencere uzunluğu (N) ile spektral parametreleri kontrol edildiğinden uygulamalarda iki veya üç değişkenli pencere fonksiyonları tercih edilmektedir. Değişken parametreli pencere fonksiyonlarından olan Kaiser penceresi sahip olduğu iki bağımsız değişken (N, α k ) yardımıyla literatürde fazlaca kullanılmaktadır. Kaiser penceresinde N pencere uzunluğu parametresi, pencere spektral parametrelerinden ana lob genişliğini kontrol ederken α k, parametresi ise dalgalanma oranını kontrol etmektedir [4]. Ancak; pencere fonksiyonun diğer spektral parametresi olan yan lob azalma oranının kontrolünde iki değişkenli pencere fonksiyonları yetersiz kalmaktadır. Bu nedenle üç bağımsız değişkene sahip Ultraspherical pencere fonksiyonu [5] de önerilmiştir. Önerilen bu pencere, ana lob genişliği, dalgalanma oranı, tepeden-tepeye genişlik ve kullanıcının belirlediği yan lob modeli gibi spektral parametrelere sahiptir [5]. Geliştirilen bir diğer üç parametreli pencere fonksiyonu olan cosh fonksiyonu, Kaiser penceresine göre daha iyi maksimum durdurma bandı dalgalanması karakteristiği göstermektedir [6]. Gerçekleştirilecek yeni pencere, Kaiser ve Ultraspherical pencerelerinin iyi özelliklerini bir arada bulunduran fonksiyon olacaktır. Böylelikle pencere fonksiyonu, ideal pencere fonksiyonu özellikleri olan daha dar ana lob genişliği, daha küçük dalgalanma oranı ve daha büyük yan lob azalma oranı karakteristiklerini sağlayacaktır. Bu özellikleri bulunduran pencere fonksiyonu kullanılarak tasarlanacak FIR filtre ise, daha iyi band genişliği ve daha iyi minimum durdurma bandı dalgalanması ve maksimum durdurma bandı dalgalanma karakteristiği gösterecektir. Bu çalışmada, sezgisel hesaplama yöntemlerinden biri olan GA [7, 8] pencere fonksiyonu ve FIR filtre tasarımında 114
T. Kaya, M. C. İnce kullanılmıştır. Tasarlanacak pencere fonksiyonu ve FIR filtre katsayı değerleri 0 ile 1 arasında olduğundan, GA için kullanılan kromozomlar değer kodlama yöntemi kullanılarak kodlanmıştır. Çalışmada, yazar tarafından önerilen pencere fonksiyonu [9], Kaiser ve Ultraspherical pencerelerinin iyi özelliklerini bir arada bulunduracak şekilde geliştirilmiş ve bu yöntem kullanılarak yinelemesiz sayısal filtre tasarımı gerçekleştirilmiştir. Geliştirilen yöntem sonuçları ile literatürde fazlaca tercih edilen Kaiser, Ultraspherical ve cosh gibi pencere fonksiyonları kullanılarak tasarlanan FIR filtrelerin karşılaştırmaları yapılmış ve önerilen yöntemin performansı incelenmiştir. II. PENCERE FONKSİYONLARI VE SPEKTRAL ÖZELLİKLERİ Fourier serisi yöntemi ile gerçekleştirilen bir FIR filtrede sınırlı sayıda eleman alınarak işlem yapılmasından dolayı istenmeyen Gibbs salınımları meydana gelmekte, oluşan bu salınımları ortadan kaldırabilmek için pencereler kullanılmaktadır. Pencere fonksiyonu veya pencere, w(nt), N uzunluğu için aşağıdaki gibi tanımlanabilir [5, 10]. 0 n ( N 1)/ w( nt ) 0 diğer durumlarda Tipik bir pencere frekans spektrumu Şekil 1 de verilmiştir. (1) n I0( k 1 ) N 1 w ( ) N 1 k n n I0( k ) 0 diğer durumlarda Denklem () de α k ayarlanabilir parametre ve I 0 (x) sıfır dereceli birinci tür geliştirilmiş Bessel fonksiyonu olup, güç serisi açılımı k 1 x I0( x) 1 k 1 k! şeklindedir [6]. Sabit pencereler için pencere uzunluğu N nin artması ana lob genişliğini arttırırken, dalgalanma oranını sabit tutmaktadır. Oysa Kaiser penceresindeki α k ayarlama parametresindeki artış, ana lob genişliğinde artışa, dalgalanmada ise azalmaya neden olur. Kazanc (db) -0-40 -60-80 alfa=1 alfa=3 alfa=5 () (3) 1 W 0 (e jwt ) /W 0 (0) 0 0.5 1 1.5.5 3 Normalize Frekans (rad/ornek) Şekil : N=7 ve farklı α k için Kaiser penceresi. -WR r a1 a 0 WR Ws/ Şekil 1: Pencere frekans spektrumu. Pencere spektral parametreleri (B r, r ve s) şu şekilde tanımlanabilir. Pencere ana lob genişliği (B r ), B n =W n ve B r =W r şeklinde gösterilir. Dalgalanma oranı; maksimumyanlob genliği r= analob genliği R=0log(1/r) olup, yan lob azalma oranı s ise, s=a 1 /a olup s=10 S/0 şeklinde ifade edilir. A. Kaiser Penceresi Kaiser penceresi; sahip olduğu ayarlanabilir parametre özelliği sayesinde pek çok alanda tercih edilir ve aşağıdaki gibi tanımlanabilir. dir ve Kaiser penceresi sahip olduğu iki ayarlanabilir parametre ile pencere spektral parametrelerinden ana lob genişliği ve dalgalanma oranını kontrol edebilmekte ancak yan lob azalma oranını kontrol edememektedir. Üç parametreli olarak geliştirilen Ultraspherical ve cosh pencereleri ise sahip oldukları parametreler ile yan lob azalma oranı bakımından literatürdeki diğer çalışmalara göre daha iyi bir karakteristik sağlamaktadır. B. Ultraspherical Penceresi Üç bağımsız değişkene sahip olan N boyutlu Ultraspherical pencere katsayıları kaynak [5] kullanılarak bulunabilir. A p n1 w u ( nt ) p n pn1 n n 1 p n. B m0 n m m m n=0,1, N-1 (4) 115
Genetik Algoritma Yardımıyla Elde Edilen Yüksek Performanslı x A x B p p 1 x, p N 1 0, 0 (5) n cosh( c 1 ) N 1 wn [ ] N 1 n cosh( c ) 0 diğer yerlerde (1) Ultraspherical penceresi µ, x µ ve N olan üç bağımsız değişkene sahiptir. Bu parametrelerden µ, yan lob azalma oranını; x µ, band genişliği ve dalgalanma oranı arasındaki ilişkinin kontrol edilmesini, N ise sabit genişlik karakteristiği için farklı dalgalanma oranı veya tersini sağlamaktadır. Normalize edilmiş Ultraspherical pencere fonksiyonu aşağıdaki gibi elde edilir. Burada, ŵ(nt)=w u (nt)/w(ct) (6) (N-1) C= ( N / ) 1 N tek için Nçift için Denklem 4 de binom katsayıları aşağıdaki gibi tanımlanır. ( 1)...( p 1) 1, p 1 için 0 p p! Pencerenin genlik cevabı ise, jwt wt W0( e ) CN 1x cos Burada Cn ( x) Ultraspherical fonksiyonudur ve yineleme bağıntısı kullanılarak hesaplanabilir. 1 Cr ( x) x( r 1) Cr 1( x) ( r ) Cr( x), r,3,..., n r Burada C ( x) 1 0 ve C. Cosh Penceresi C 1 ( x) x dir. Cosh fonksiyonu denklem 11 yardımıyla ifade edilebilir. (7) (8) (9) (10) x x e e cosh( x) (11) I 0 (x) fonksiyonu ile cosh fonksiyonları benzer karakteristik gösterdiklerinden dolayı, bu yeni pencere Kaiser penceresi denklemi kullanılarak elde edilebilir [6]. Cosh penceresindeki ayarlanabilir parametre α c değeri 0 olduğunda iki parametreli sabit pencere fonksiyonu olan dikdörtgen penceresi gibi davranır. Cosh penceresi, pencere spektral parametrelerinden yan lob azalma oranı bakımından Kaiser penceresinden daha iyi davranış göstermektedir. Dolayısıyla; cosh penceresi kullanılarak tasarlanacak FIR filtre genlik cevabından maksimum durdurma bandı zayıflama karakteristiği Kaiser penceresi yardımıyla tasarlanan filtreden daha iyi olacaktır. III. YİNELEMESİZ SAYISAL FİLTRELER FIR filtre tasarımında en fazla kullanılan yöntem Fourier serisi yöntemidir ve bu yöntemde tercih edilen pencere fonksiyonu kullanımının amacı; sonsuz impuls cevabını kesmek ve keskin kesim frekansı bölgesinde meydana gelen Gibbs salınımlarını ortadan kaldırmaktır. Nedensel olmayan bir filtrenin impuls cevabı denklem 13 yardımıyla bulunabilir. h(nt)=w(nt)h id (nt) (13) Denklemde h id (nt) ideal filtrenin sonsuz süreli impuls cevabıdır. İdeal alçak geçiren filtre için impuls cevabı aşağıdaki gibidir. wctt / n 0 hid ( nt ) sin wctnt wct w ws / n (14) Denklemde w ct,kesim frekansını, w s ise örnekleme frekansını göstermektedir. Nedensel olmayan filtre impuls cevabı, h no (nt), (N-1)/ periyot kaydırılarak nedensel olan filtre impuls cevabı elde edilebilir. h(nt)=h no [(n-(n-1)/)t] (15) Çalışmada dört ana tip filtre tasarımı için tek uzunluklu ve simetrik formülasyon kullanılmıştır. Ancak çift uzunluklu filtre tasarımı içinde genel hale dönüştürülebilir. IV. GENETİK ALGORİTMA Alternatif optimizasyon yöntemlerinden biri olan GA da ilk olarak tamamen veya çözüm hakkında bazı bilgiler varsa, o bilgilere göre seçilen ve kullanıcının belirlediği sayıda kromozom alınarak başlangıç popülasyonu (toplum) elde edilir. Popülasyon içerisindeki kromozomlar (vektörler), problemden probleme göre farklılık gösteren uygunluk fonksiyonunda yerine yazılarak iyiliği ölçülür. Uygunluk değerine göre bir sonraki neslin oluşumu için popülasyon içerisinde yer alan kromozomlar yeniden üretilip, çaprazlanır veya gerekiyorsa mutasyon işlemlerine uğratılırlar. 116
T. Kaya, M. C. İnce Başla Başlangıç Popülasyonu Uygunluk Fonksiyonu karşılıklı yer değiştirmesi şeklinde yapılmaktadır. Değer kodlanmış kromozomlar için bu durum aşağıda gösterilmiştir. 1. Kromozom 0.5 6 7 8 8 9 3 1 0 Çaprazlama Mutasyon. Kromozom 0.8 9 0 1 9 3 4 5 6 7 yapılan çaprazlama işlemi sonrasında ise, Hayır Yeni Popülasyon Sonlandırma Kriteri Sağlandı mı? Evet Şekil 3: GA akış şeması Hesaplanan kopya sayılarına göre seçilme ihtimali (kopya sayısı) yüksek olan kromozom, doğal olarak daha fazla çaprazlama işlemine girecek ve sonraki neslin içinde daha fazla yer bulacaktır. Seçilme ihtimali az olan kromozom ise sonraki neslin içinde az bulunacak belki hiç bulunamayacak ve gelecek nesillerde yer alamayacaktır. Şekil 3 de en genel şekilde GA akış şeması verilmiştir. Bitir V. YÖNTEMİN FİLTRE TASARIMINDA KULLANIMI Yapılan çalışmada, arzu edilen şartları yerine getirecek pencere katsayı değerleri 0 ile 1 arasında rastgele oluşturulmuştur. Çalışmada kromozomların kodlama işlemleri, 0 ve 1 arasında olmalarından dolayı [7, 8] çalışmalarından farklı olarak ikili olarak değil değer kodlanarak işlenmişlerdir. Değer kodlanmış kromozomlar için bu durum aşağıda gösterilmiştir. 1. Kromozom: 0.567889310. Kromozom: 0.8901934567 İstenen özellikleri sağlayacak Kaiser ve Ultraspherical pencerelerinin iyi özellik gösterdikleri spektrumlar alınarak pencere genlik cevapları çizdirilmiş ve bu değerler program için olması gereken değerleri oluşturmaktadır. Başlangıç popülasyonunda yer alan kromozom değerleri ile yeni bir pencere genlik cevabı elde edilmiştir. Bu iki genlik cevabından alınan örnekler arasındaki farkı minimum yapacak fonksiyon, program için uygunluk fonksiyonunu oluşturmaktadır. Programda da amaç, aradaki farkı minimum yapacak katsayı değerlerini hesaplayabilmektir. Böylelikle, daha küçük ana lob genişliği, daha küçük dalgalanma oranı ve yan lob azalma oranı değerlerinden bir veya daha fazlasını sağlayacak yüksek performanslı pencere fonksiyonu katsayı değerlerine ulaşma imkânı sağlanmış olacaktır. GA içerisinde çaprazlama işlemi, değer kodlanmış kromozomlar için rastgele seçilen iki kromozomun yine rastgele seçilen iki nokta üzerinden 1. Kromozom 0.4678893910. Kromozom 0.801935567 şeklinde olmaktadır. Çaprazlama işlemi sonrasında ortaya çıkan kromozom değerleri ile çaprazlama öncesindeki kromozom değerleri arasında uygunluk değerleri en iyi olan kromozomlar bir sonraki nesil için, yeni bir başlangıç popülasyonu oluşturmaktadır. GA içerisinde mutasyon işlemi ise, herhangi bir kromozomun herhangi bir gen değeri değiştirilerek yapılmaktadır. GA için mutasyon işlemi aşağıdaki gibidir. Mutasyon öncesi: 1. Kromozom 0.567889310 Mutasyon sonrası; 1. Kromozom 0.56889310 Benzer işlemler istenen yakınsama sağlanıncaya kadar devam ettirilir. Sonuçta, GA nın bulduğu değerler, istenen özellikleri sağlayacak yüksek performansa sahip pencere fonksiyonu katsayılarını temsil edecektir. Arzu edilen FIR filtre katsayı değerleri ise bulunan pencere katsayılarının denklem 13 de yerine yazılmasıyla hesaplanacaktır. Böylece, iyi özelliklere sahip pencere fonksiyonu iyi özelliklere sahip FIR filtrenin tasarımını sağlayacaktır. VI. SONUÇ İstenilen özellikleri sağlayacak yinelemesiz sayısal filtre tasarımında kullanılan pencere fonksiyonunda Kaiser ve Ultraspherical pencerelerinin iyi özelliklerini bir arada bulunduran yeni pencere fonksiyonu GA kullanılarak tasarlanmıştır. Yapılan uygulama çalışmaları, geliştirilen yöntemin başarısını göstermek için literatürde fazlaca kullanılan Kaiser, Ultraspherical ve cosh pencere fonksiyonları ile aynı şartlarda çalıştırılmıştır. Yöntemden ve diğer pencere fonksiyonlarından elde edilen sonuçlar aynı ana lob genişliği ve aynı pencere uzunluğu için değerlendirilmiş, Kaiser, Ultraspherical ve geliştirilen yöntemden elde edilen sonuçların karşılaştırılması Şekil 4 de, karşılaştırmanın sayısal sonuçları ise Tablo 1 de verilmiştir. 117
Genetik Algoritma Yardımıyla Elde Edilen Yüksek Performanslı Kazanc (db) 0-0 -40-60 -80 Kaiser Ultraspherical GA Sonucu 0.5 1 1.5.5 3 Normalize Frekans (rad/ornek) Şekil 4: Kaiser, Ultraspherical penceresi ve geliştirilen yöntemden elde edilen sonuçların spektrum gösterimi. Uygulamada kullanılan Ultraspherical pencere, µ=.36318 ve x µ = 1.00053 parametre değerleri ile elde edilmiştir. Tablo 1: Kaiser, Ultraspherical penceresi ve geliştirilen yöntem için elde edilen sayısal sonuçlar Parametre Pencere Türü GA Sonucu Kaiser Ultraspherical N 3 3 3 α k - 3. - w R 0.374 0.374 0.374 S 34.11 14.54 7.79 R -4.96-6.39-4 Hem Şekil 4, hem de Tablo 1 den görüleceği gibi, aynı pencere uzunluğu ve aynı ana lob genişliği için en iyi dalgalanma oranını Kaiser penceresi sağlarken, geliştirilen yöntem üç parametreli Ultraspherical penceresinden daha iyi dalgalanma oranı sağlamaktadır. Bazı uygulamalar [11] için önemli olan yan lob azalma oranı bakımından ise geliştirilen yöntemden elde edilen sonuçlar en iyisidir. Bu sayede tasarlanacak bir filtre en iyi maksimum durdurma bandı dalgalanma karakteristiğini gösterecektir. Filtre tasarımında ise Kaiser penceresinden daha iyi davranış gösteren cosh penceresi ile karşılaştırmalar yapılmıştır. Kazanc (db) 0-0 -40-60 -80 GA Cosh 0 0.5 1 1.5.5 3 Normalize Frekans (rad/ornek) Şekil 5: N=3, ΔW=0.6 ve w c =0.4π için GA ve cosh pencereleri kullanılarak tasarlanan FIR filtre genlik cevapları Şekil 5 ten elde edilen sayısal sonuçlar Tablo de verilmiştir. Tablo : Cosh penceresi ve geliştirilen yöntem için elde edilen sayısal sonuçlar Pencere türü N α c ΔW A s A s,max GA sonucu 3-0.6 36.17 63.49 Cosh 3.6 0.6 39.5 51. Tablo den görüldüğü gibi, geliştirilen yöntem yardımıyla tasarlanan pencere fonksiyonu ve bu pencere kullanılarak tasarlanan FIR filtre, cosh penceresiyle oluşturulan filtreden çok daha iyi bir maksimum durdurma bandı dalgalanma karakteristiği göstermektedir. Sonuç olarak bu çalışmada, literatürde yaygın olarak tercih edilen Kaiser ve Ultraspherical pencerelerinin iyi özelliklerini bir arada bulunduran yeni bir pencere fonksiyonu GA kullanılarak tasarlanmıştır. Elde edilen pencere fonksiyonu bazı uygulamalar için önemli olan yan lob azalma oranı bakımından hem Kaiser hem de Ultraspherical pencerelerinden daha iyi bir davranış göstermektedir. Bu pencere fonksiyonu kullanılarak gerçekleştirilen FIR filtre tasarımında ise, cosh fonksiyonu kullanılarak tasarlanan filtre ile genlik karşılaştırması yapılmış ve daha iyi bir maksimum durdurma bandı dalgalanma karakteristiği gösteren genlik cevabı sağlanmıştır. Hem şekil hem de tablo sonuçları, yüksek performansa sahip pencere fonksiyonları kullanılarak tasarlanan FIR filtrelerin daha kullanışlı spektral davranışlara sahip olduğunu göstermiştir. KAYNAKLAR [1] Lynch P., The Dolph-Chebyshev window: a simple optimal filter, Monthly Weather Review, vol. 15, pp. 655 660, 1997. [] Seydnejad S. R. and Kitney R. I. Real-time heart rate variability extraction using the Kaiser window, IEEE Trans. on Biomedical Engineering, vol. 44, no. 10, s. 990 1005, 1997. [3] Saramaki T. Eds., Wiley, Finite impulse response filter design, in Handbook for Digital Signal Processing, New York, NY, USA, 1993. [4] Kaiser J. F., Nonrecursive digital filter design using I0- sinh window function. in Proc. IEEE Int. Symp. Circuits and Systems (ISCAS 74), 1974, s. 0 3. [5] Bergen S. W. A. and Antoniou A., Design of ultraspherical window functions with prescribed spectral characteristics EURASIP Journal on Applied Signal Processing, vol. 004, no. 13, pp. 053 065, 004. [6] Avci K. and Nacaroglu A., Cosh window family and its application to FIR filter design, AEU - International Journal of Electronics and Communications, vol. 63/11, pp. 907-916, November 009. [7] Tang K.S., Man. K.F., Kwong. S. And He, Q., Genetic Algorithms and their Applications, IEEE Signal Processing Magazine, -37, 1996. 118
T. Kaya, M. C. İnce [8] Suckley D., Genetic Algorithm in the Design of FIR Filters, IEE Proceedings, 138 (), 34-38, 1991. [9] Kaya T. ve Ince M.C., Düzgün Dağılımlı Genetik Algoritmaların Pencere Fonksiyonu Performansına Etkisi IEEE 18. Sinyal İşleme ve İletişim Uygulamaları Kurultayı, 010, s. 475-478. [10] Bergen S. W. A. and Antoniou A., Nonrecursive digital filter design using the ultraspherical window, in Proc. IEEE Pacific Rim Conference on Communications, Computers and Signal Processing (PACRIM 03), 003, vol. 1, s. 60 63. [11] A. Jain, R. Saxena, S.C. Saxena, A simple alias-free QMF system with near-perfect reconstruction J.Indian Ins.Sci., Jan-Feb, no.1, pp. 1-10, 005. 119