همان طور که مشخص است تابع هزینه به صورت یک تابع درجه دوم از ضرایب فیلتر می­باشد. حل معادله کمینه­سازی تابع هزینه فوق منجر به معادله وینر-هوف می­گردد که به صورت زیر می­باشد:

در معادله فوق اگر R یک ماتریس غیرتکین باشد (ماتریسی با مقادیر ویژه غیر صفر) ضرایب بهینه wo از رابطه زیر بدست می ­آید:

اگر سیگنال­های xi[n] و xd[n] در بازه زمانی پردازشی ایستان باشند این امکان وجود دارد که با فیلترینگ بهینه به صورت فوق به میزان کمینه تابع هزینه که برابر با است، دست یافت. به علت آن که شرط حل معادله وینر-هوف همواره در دست داشتن R وP و عدم وابستگی آن­ها به زمان است و از آن­جایی که در عمل وابستگی به زمان در این ماتریس­ها وجود دارد دست­یابی به میزان کمینه تابع هزینه میسر نخواهد بود، در عمل تابع هزینه به صورت زیر خواهد بود:

در رابطه فوق نشانگر ضرایب قابل دسترس در عمل می­باشد [۳۶-۳۷].
۳-۳-۲- الگوریتم LMS
الگوریتم LMS در سال ۱۹۶۰ توسط ویدرو و هوف پیشنهاد شده است و تا قبل از مطرح شدن الگوریتم RLS پرکاربردترین الگوریتم به حساب می­آمد. همان طور که بیان شد الگوریتم LMS حالت عملی پیاده­سازی فیلتر وینر می­باشد با این تفاوت که این الگوریتم بدون نیاز به دانستن ماتریس­های R و P (ماتریس همبستگی سیگنال ورودی فیلتر و ماتریس همبستگی متقابل ورودی فیلتر و سیگنال مطلوب) و بدون نیاز به محاسبه معکوس ماتریس R برای حل معادله وینر-هوف، معادله وینر-هوف را به صورتی تکرارپذیر حل کرده و وزن­های بهینه برای کمینه کردن تابع هزینه را نتیجه می­دهد. برای پیاده­سازی الگوریتم LMS ابتدا یک مقدار اولیه به وزن­ها اختصاص می­دهیم (معمولاً مقدار اولیه وزن­ها صفر در نظر گرفته می­ شود) سپس مراحل زیر را برای به­روزرسانی وزن­ها به ترتیب انجام می­دهیم:

(( اینجا فقط تکه ای از متن درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. ))

۱- گرادیان تابع هزینه را محاسبه می­کنیم. در واقع مربع خطا را به صورت لحظه­ای بنابر رابطه زیر محاسبه می­کنیم:

در رابطه فوق و بیانگر تخمین لحظه­ای ماتریس­های P وR بوده و از روابط زیر بدست می­آیند:

۲- پس از محاسبه گرادیان لحظه­ای با بهره گرفتن از آن عمل به­روزرسانی وزن­ها مطابق رابطه زیر انجام می­ شود:

در رابطه فوق μ به عنوان اندازه گام الگوریتم LMS شناخته می­ شود که عاملی مهم در عملکرد الگوریتم به حساب می ­آید.
عملیات محاسبه گرادیان و به­روزرسانی وزن­ها تا جایی ادامه می­یابد که تغییر قابل ملاحظه­ای در وزن­ها مشاهده نشود و یا وزن­ها به مقدار مطلوب جهت کیمنه کردن تابع هزینه و خطا همگرا شوند.
یکی از علل پرکاربرد بودن الگوریتم LMS راحتی پیاده­سازی آن می­باشد به نحوی که در شرایطی که سیگنال­ها غیرمختلط باشند و تعداد ضرایب فیلتر را برابر با L در نظر بگیریم، پیاده­سازی الگوریتم LMS منجر به انجام ۲L+1 ضرب (L ضرب برای محاسبه خروجی فیلتر و L ضرب برای به­روزرسانی وزن­ها و یک ضرب برای محاسبه ۲μxe) و ۲L جمع می­ شود و همان طور که مشخص است مرتبه محاسباتی این الگوریتم از مرتبه L می­باشد. البته با وجود پیچیدگی محاسباتی کم، در الگوریتم LMS سرعت همگرایی وزن­ها و نحوه عملکرد الگوریتم برای حذف تداخل و آشکارسازی هدف در رادارهای پسیو مبتنی بر سیگنال DVB-T چندان مطلوب نبوده و توصیه می­ شود با الگوریتم VSLMS جایگزین شود. همان طور که بیان شد اندازه گام الگوریتم LMS عاملی مهم در عملکرد این الگوریتم می­باشد. در واقع اثر μ در سرعت همگرایی الگوریتم می­باشد. اگر μ مقداری بسیار کوچک انتخاب شود دقت الگوریتم بیش­تر بوده و در نهایت خطای کم­تری در همگرایی وزن­ها وجود خواهد داشت اما کوچک انتخاب کردن μ باعث کند شدن الگوریتم و پایین آمدن سرعت همگرایی می­ شود از طرفی بزرگ انتخاب کردن μ نیز منجر به داشتن سرعت همگرایی بالا و خطای نهایی بیش­تر خواهد شد، حتی در حالاتی انتخاب μ بزرگتر از حدی باعث غیر همگرا شدن الگوریتم می­ شود. همین تناقض در نحوه انتخاب μ عاملی برای استفاده از الگوریتم VSLMS است. نتایج بررسی­های مختلفی که انجام شده است نشان می­دهد که هرگاه μ مطابق رابطه زیر انتخاب شود بدون توجه به این­که مقداردهی اولیه وزن­ها چگونه باشد (هر مقدار دلخواهی به عنوان مقدار اولیه وزن­ها انتخاب شود) ضرایب فیلتر به مقدار بهینه وینر خود همگرا می­شوند.

که λmax بیانگر بزرگ­ترین مقدار ویژه ماتریس R می­باشد. در حالتی که λmax مشخص نباشد (یعنی اگر ماتریس R مشخص نباشد) با فرض این­که بزرگ­ترین مقدار ویژه ماتریس R از بقیه مقادیر ویژه بسیار بزرگ­تر است می­توان شرط همگرایی الگوریتم LMS را به صورت رابطه زیر در نظر گرفت:

همان طور که بیان شد در الگوریتم LMS به دلیل آن که در محاسبه P و R نمونه­های زمانی جایگزین E{.} شده ­اند ضرایب فیلتر حول مقدار بهینه وینر خود در نوسان هستند. این بدان معناست که در محاسبه ضرایب، میزانی خطا برابر با رابطه زیر وجود خواهد داشت:

در نتیجه مقدار تقریبی کواریانس خطا در ضرایب مطابق رابطه زیر می­باشد:

IM ماتریس همانی مرتبه M است.
وجود خطای فوق در محاسبه ضرایب منجر به تولید خطای اضافی در خروجی فیلتر می­ شود، این خطای اضافی از رابطه زیر محاسبه می­ شود:

بنابراین در حالتی که داده ورودی رنگی و با پراکندگی زیاد مقادیر ویژه همراه باشد سرعت همگرایی الگوریتم با λmin و خطای حالت ماندگار با λmax تعیین می­ شود. بنابر رابطه فوق واضح است که افزایش طول فیلتر وفقی که با الگوریتم LMS کار می­ کند منجر به افزایش خطای اضافی در الگوریتم می­ شود چرا که مقادیر ویژه ماتریس R همواره نامنفی هستند. در حالت کلی خطای الگوریتم LMS از زابطه زیر بدست می ­آید:

واضح است که در این الگوریتم خطای محاسبه­ی وزن­ها هیچ وقت به خطای کمینه حالت وینر خود نمی­رسد [۳۵-۳۶-۳۷].
۳-۳-۳- الگوریتم NLMS
الگوریتم NLMS در واقع همان الگوریتم LMS است که به صورت نرمالیزه پیاده­سازی می­ شود. منظور از پیاده­سازی نرمالیزه الگوریتم، نحوه محاسبه وزن­ها به صورت زیر می­باشد:

که در این رابطه باید برقرار باشد. در این الگوریتم نحوه انتخاب پارامتر در سرعت همگرایی و نحوه عملکرد الگوریتم بسیار موثر است. استفاده از این الگوریتم زمانی سودبخش می­ شود که سیگنال ورودی فیلتر وفقی نسبتاً بزرگ باشد، در این حالت با مسئله نویز گرادیان[۵۳] روبرو شده و در محاسبه وزن­ها مطابق خود الگوریتم LMS با مقادیر بزرگی مواجه می­شویم. الگوریتم NLMS با نرمالیزه کردن اندازه گام در فرمول محاسبه وزن­ها از رویارویی با مقادیر بزرگ و مسئله نویز گرادیان جلوگیری کرده و با گام­هایی مناسب­تر به وزن­های تقریباً ایده­آل همگرا می­ شود و در نهایت یک الگوریتم با پایداری و سرعت بیش­تر را پیاده­سازی می­ کند. بقیه مباحث ذکر شده در الگوریتم LMS برای این الگوریتم نیز صادق است، برای مثال پیچیدگی محاسباتی در این الگوریتم نیز مانند الگوریتم LMS از مرتبه طول فیلتر وفقی می­باشد. در اصل الگوریتم LMS و NLMS به صورت یک الگوریتم در نظر گرفته می­شوند با این وجود تفاوت­هایی بین الگوریتم LMS و NLMS نیز وجود دارد. برای مثال الگوریتم NLMS بر خلاف الگوریتم LMS یک الگوریتم با اندازه­ گام متفاوت با زمان می­باشد و یا الگوریتم NLMS نرخ همگرایی را نشان می­دهد که از نرخ همگرایی الگوریتم LMS بیش­تر است یعنی الگوریتم NLMS سریعتر به مقادیر بهینه همگرا می­ شود [۳۵-۳۶-۳۷].
۳-۳-۴- الگوریتم VSLMS و VSNLMS
الگوریتم VSLMS در واقع بر پایه الگوریتم LMS پیاده­سازی می­ شود، با این تفاوت که به هر یک از وزن­های فیلتر وفقی یک اندازه گام متغیر با زمان اختصاص داده می­ شود. علت این امر آن است که انتخاب μهای کوچک میزان خطای نهایی را کاهش می­دهد، در حالی که برای کاهش زمان و افزایش سرعت همگرایی الگوریتم نیاز به انتخاب اندازه گام­های بزرگ می­باشد. برای حل این تناقض در نحوه انتخاب μ از الگوریتم LMS با اندازه گام­های متغیر با زمان استفاده می­ شود به نحوی که میزان خطای نهایی نسبت به الگوریتم LMS کاهش یافته و سرعت همگرایی الگوریتم افزایش یابد. به­روزرسانی وزن­ها در این الگوریتم به صورت زیر انجام می­ شود [۳۶-۴۰-۴۲-۴۳-۴۴]:

gi در رابطه فوق با نام بردار گرادیان شناخته می­ شود. در رابطه فوق واضح است که μmin مقداری کم­تر از μmax داشته و هر کدام مقداری در محدوده صفر و دو اختیار می­ کنند. در این الگوریتم هر یک از اندازه گام­های انتخابی باید در بازه مجاز μ برای الگوریتم LMS نیز قرار گیرند. ρ و μmin از پارامترهای قابل تنظیم برای بهبود عملکرد الگوریتم می­باشند. انتخاب کوچک ρ سبب کاهش خطای ماندگار شده اما سرعت همگرایی را نیز کاهش می­دهد. در هر صورت با انتخاب مناسب ρ می­توان سرعت همگرایی را نسبت به الگوریتم LMS افزایش داد. μmin را می­توان نزدیک به صفر انتخاب کرد به نحوی که الگوریتم همگرا شود. نحوه انتخاب پارامتر μmin در سرعت همگرایی الگوریتم تاثیر به سزایی داشته و بهبود الگوریتم با تنظیم مناسب این پارامتر امکان­ پذیر است.
الگوریتم VSNLMS نیز همان الگوریتم VSLMS است که به صورت نرمالیزه پیاده­سازی می­ شود، علت استفاده از این الگوریتم نیز مانند علت استفاده از الگوریتم NLMS است. منظور از نرمالیزه کردن در این حالت این است که مقدار μmax در الگوریتم VSLMS بر حسب توان سیگنال ورودی فیلتر وفقی تعیین می­ شود. یعنی در این الگوریتم نیز مانند الگوریتم NLMS اندازه گام با توان سیگنال ورودی نسبت عکس دارد. این الگوریتم در واقع همان الگوریتم VSLMS است با این تفاوت که در این الگوریتم علاوه بر اندازه گام و گرادیان، ماکزیمم اندازه گام نیز در هر مرحله به­روزرسانی می­ شود. نکته قابل توجه آن است که از آن­جا که الگوریتم­های VSLMS و VSNLMS نیز بر پایه الگوریتم LMS عمل می­ کنند پیچیدگی محاسباتی این الگوریتم­ها نیز از مرتبه طول فیلتر وفقی یعنی همان L می­باشد. به­روزرسانی وزن­ها در الگوریتم VSNLMS به صورت زیر انجام می­پذیرد [۳۶-۴۰-۴۲-۴۳-۴۴]:

در این الگوریتم نیز مانند VSLMS نحوه عملکرد و سرعت همگرایی الگوریتم با انتخاب مناسب پارامترهای ρ و μmin امکان­ پذیر است [۳۶-۴۰-۴۲-۴۳-۴۴].
۳-۳-۵- الگوریتم RLS
تا بدین­جا فیلتر وینر و الگوریتم­های قابل پیاده­سازی آن، یعنی الگوریتم خانواده LMS شامل الگوریتم­های LMS، NLMS، VSLMS و VSNLMS را معرفی کردیم. همان­طور که در مقدمه بیان شد الگوریتم­های خانواده LMS بر اساس کمینه کردن میانگین آماری مربع خطا عمل می­ کنند اما الگوریتم RLS بر مبنای نظریه سیگنال­های قطعی استوار است. در الگوریتم RLS هدف کمینه کردن جمع وزن­دار مربع خطا عمل می­ کند. الگوریتم RLS در واقع پیاده­سازی روش فیلترینگ LS[54] (حداقل مربعات) به صورت بازگشتی است. پیاده­سازی یک فیلترینگ بر مبنای روش LS نیازمند داشتن اطلاعات ورودی فیلتر و سیگنال مطلوب در فیلترینگ از زمان آغازین بوده و از لحاظ عملی به علت حجم پیچیدگی محاسباتی بالا تیاز به حجم عظیمی از حافظه دارد از این رو از الگوریتم بازگشتی آن که همان الگوریتم RLS است استفاده می­ شود. در روش حداقل کردن مربعات از تمام داده ­های موجود از لحظه شروع تا لحظه nام استفاده می­ شود به همین دلیل طول داده ­های در دسترس با افزایش زمان و طول داده زیاد می­ شود. برای حل این مشکل از ضریب وزن­دهی با نام ضریب فراموشی استفاده می­ شود تا داده ­های قدیمی­تر به دست فراموشی سپرده شده و عملیات فیلترینگ بر روی داده ­های جدیدتر انجام شود. ضریب فراموشی در الگوریتم RLS معمولاً در بازه [۹۹۹۹۹۹۹/۰ , ۹/۰] قرار دارد. پیچیدگی محاسباتی الگوریتم RLS در مقایسه با الگوریتم­های خانواده LMS چندان کم نبوده چرا که پیچیدگی محاسباتی در این الگوریتم از مرتبه L2 می­باشد[۳۶-۳۷]. در این الگوریتم به تخمین ماتریس کواریانس، P، احتیاج است. این تخمین در هر مرحله با بهره گرفتن از بهره g[n] به صورت زیر به روز شده و با کمک آن وزن­های فیلتر وفقی مطابق روابط زیر به­روزرسانی می­شوند[۳۵]:

در این الگوریتم، λ که ضریب فراموشی نامیده می­ شود عاملی مهم در سرعت همگرایی و کیفیت عملکرد الگوریتم می­باشد. پیچیدگی محاسباتی الگوریتم RLS از مرتبه L2 (L طول فیلتر وفقی است) می­باشد که این امر امکان پیاده­سازی این الگوریتم برای فیلترهای با طول زیاد را مشکل می­ کند. با این وجود الگوریتم RLS از کیفیت و سرعت همگرایی بسیار بالاتری نسبت به الگوریتم LMS برخوردار است [۱۷-۳۶-۳۷-۴۵].
۳-۳-۶- الگوریتم Fast-RLS
الگوریتم Fast-RLS که با نام­های FTF[55] و FT-RLS[56] نیز شناخته می­ شود راهی دیگر برای کمینه کردن جمع وزن­دار مربع خطا می­باشد. مزیت این روش پیچیدگی محاسباتی کم آن در مقایسه با الگوریتم RLS می­باشد. پیچیدگی محاسباتی در این روش از مرتبه L یا همان طول فیلتر وفقی است. الگوریتم FT-RLS یک نسخه سریع از الگوریتم RLS می­باشد. همان طور که بیان شد این الگوریتم نیز به صورتی متناوب و بازگشتی به حل مسأله کمینه کردن مربع خطا می ­پردازد و از نظر خواص آماری به الگوریتم RLS بسیار نزدیک است. در این الگوریتم با تعریف متغیری با نام ضریب همگرایی و به­روزرسانی این ضریب به کمک پیش ­بینی میزان خطا، به­روزرسانی وزن­های فیلتر وفقی انجام می­ شود. در الگوریتم FT-RLS نیز مانند الگوریتم RLS، λ یا همان ضریب فراموشی عاملی مهمی در تعیین سرعت همگرایی و عمکرد الگوریتم می­باشد الگوریتم FT-RLS بر مبنای فیلترهای لاتیس[۵۷] در حل کمینه­سازی مربع خطا عمل می­ کند با این تفاوت که در ساختار این الگوریتم برای کاهش میزان محاسبات مورد نیاز از چهار فیلتر Trannsversal به صورت هم­زمان استفاده می­ شود. در شکل ۳-۵ بلوک دیاگرام فیلترهای مذکور نشان داده شده است [۳۶-۴۶].

شکل ۳-۵: بلوک دیاگرام فیلتر Fast-RLS
در ادامه به توضیح عملکرد فیلترهای بلوک دیاگرام مذکور می­پردازیم.

موضوعات: بدون موضوع  لینک ثابت


فرم در حال بارگذاری ...