بخشی از مقاله
چکیده -
در این مقاله، یک روش پیشنهادی جدید مبتنی بر برنامهنویسی ژنتیک برای طراحی آنتنهایی با ساختار پیچیده و باهدف بهینهسازی سمتگرایی و الگوی تابشی ارائهشده است. آنتن طراحیشده از شکستن یک قطعه سیم صاف در طولها و زاویههای مشخص ساخته میشود. درروش پیشنهادی، محدودیتهایی نظیر حداکثر طول مجاز برای هر بخش و تعداد بخشها قابل لحاظ است. برای پیادهسازی برنامهنویسی ژنتیک از نرمافزار متلب و برای شبیهسازی آنتن از نرمافزار 4NEC2 استفادهشده است. نتایج شبیهسازی نشان از عملکرد بسیار خوب روش پیشنهادی دارد؛ بهطوریکه الگوی تابشی آنتن طراحیشده به میزان ٪94 با الگوی تشعشعی ایدهآل شباهت دارد.
-1 مقدمه
آنتنها، به عنوان بخش مهمی که وظیفه تبدیل سیگنال الکتریکی به امواج رادیویی - و بالعکس - را بر عهده دارند، به طور گسترده در سیستمهای مخابراتی بیسیم مورد استفاده قرار میگیرند. نحوه عملکرد هر آنتن را میتوان با پارامترهایی مانند: الگوی تابشی، سمتگرایی، پهنای پرتو، دهانه مؤثر، سطح گلبرگ جانبیو ...، به صورت کمّی مورد بررسی قرار داد. از این بین، الگوی تشعشعی و سمتگرایی از پارامترهایی هستند که بیشتر مورد توجه قرار میگیرند
معولا در عمل، ساختار آنتنها و شکل کلی آنها مشخص و ثابت است و تنها لازم است ابعاد بخشهای مختلف آنتن برای داشتن پارامترهای داده شده مطلوب، به نحو مناسب تعیین شود. به عنوان مثال، در بسیاری از کاربردها از آنتنهای سیمی - خطی - دو شاخه استفاده میشود. طول ایدهآل آنتن خطی دو شاخه نصف طول موج است. در نتیجه؛ با داشتن فرکانس کاری، طول آنتن مشخص میشود. یا برای کاربردهایی مانند پخش تلویزیون تجاری از آنتنهای یاگی-یودا استفاده میشود. آنتن یاگی-یودا از سه بخش فعال، جهتدهنده و بازتابدهنده تشکیل میشود؛ که هر یک از این سه بخش به صورت سیمی - خطی - هستند و برای داشتن پارامترها و ویژگی خواسته شده، لازم است تنها طول این قطعات و فاصله آنها از یکدیگر مشخص شود
برای تعیین صحیح ابعاد یک آنتن با ساختار مشخص، میتوان از روشهای هوشمند، مانند الگوریتم ژنتیک، بهره برد. به عنوان مثال، در مراجع 2]؛[5 از الگوریتم ژنتیک برای طراحی آنتن استفاده شده است.
در موارد ذکر شده فوق، ساختار و شکل کلی آنتن مشخص است و از روش هوشمند الگوریتم ژنتیک، تنها برای تعیین ابعاد بخشهای مختلف آنتن استفاده میشود. اما، در [6] یک آنتن سیمی برای پهنای باند 1225 MHz تا 1625 MHz با استفاده از برنامهنویسی ژنتیک طراحی شده است. این آنتن از 5 بخش سری ساخته شده است و در حجمی با ابعاد 10cm در 10cm در 15cm جای میگیرد. از ویژگیهای این آنتن، ابعاد کوچک، هزینه ساخت کم و تغذیه مستقیم از یک کابل کواکسیال است.
در پژوهش جاری نیز، هدف، ساخت یک آنتن یکپارچه با ایجاد خمشهای مناسب - شکستن - یک قطعه سیم با طولها و زاویههای مناسب برای رسیدن الگوی تابشی مطلوب است. به عبارت دیگر، ساختار کلی آنتن نیز معلوم نیست و طی فرآیند طراحی مشخص میشود. در نتیجه، شکل ظاهری آنتن طراحی شده، در نهایت بسیار پیچیده خواهد بود. برای این منظور از روش برنامه نویسی ژنتیک استفاده شده است.
در بخش دوم، ابزار هوشمند برنامهنویسی ژنتیک معرفی میشود.
در بخش سوم به معرفی روش پیشنهادی بهمنظور طراحی یک آنتن با الگوی تابشی دلخواه بهینه با استفاده از برنامهنویسی ژنتیک میپردازیم. بخش چهارم به توصیف و شرح نتایج حاصل شبیهسازی روش پیشنهادی و بخش پنجم به نتیجهگیری و جمعبندی اختصاص دارند.
-2 برنامهنویسی ژنتیک
روشهای هوشمند کلاسیک - مانند الگوریتم ژنتیک - را تنها میتوان برای تعیین بهینه متغیرهای یک مسأله با ساختار مشخص به کار برد. اما، روش برنامهنویسی ژنتیک دارای این ویژگی جالب است که نه تنها در فضای متغیرها، بلکه در فضای ساختارها هم عمل جستجو را انجام میدهد و در صورت همگرایی، هم ساختار بهینه جواب و هم مقادیر بهینه عددی متغیرهای موجود در آن ساختار، تعیین میشوند
در الگوریتم ژنتیک - که برنامهنویسی ژنتیک تعمیمیافته آن است - ، از موفق بودن فرآیند تکامل موجودات زنده در طبیعت برای رسیدن به موجوداتی با برازندگیهای بیشتر الهام گرفته شده است .[8] در این روش هوشمند، نخست جمعیت اولیهای از پاسخهای بالقوه، به صورت تصادفی تشکیل میشود و سپس، با گذشت زمان در نسلهای متوالی، با اعمال عملگرهای برش - یا cross-over که متناظر با عمل تولید مثل جنسی است - و جهش - یا mutation که متناظر با فرآیند جهش ژنتیکی است - پاسخهای جدیدی به دست میآید. از این بین، با اعمال عملگر انتخاب - که متناظر با فرآیند انتخاب طبیعی در طبیعت است - ، پاسخهای بهتر به نسلهای بعد راه پیدا میکنند. با گذشت تعداد نسل کافی، کیفیت پاسخها بهتر و بهتر خواهد شد و در نهایت، به پاسخ بهینه خواهیم رسید
نحوه عملکرد برنامهنویسی ژنتیک، علیرغم شباهت زیادی که با الگوریتم ژنتیک دارد، در یک نکته اساسی با آن متفاوت است. از آن جایی که در برنامهنویسی ژنتیک، ساختار پاسخ بهینه نیز معلوم نیست، نخست لازم است روشی برای بیان ساختار تعیین کرد. در عمل، معمولا از ساختار درختی برای این منظور استفاده میشود .[7] با انتخاب مناسب ساختار درختی، از معتبر بودن - و نه لزوما بهینه بودن - پاسخهای متناظر، بعد از اعمال عملگرهای برش و جهش اطمینان خواهیم داشت.
شکل 1، یک فلوچارت نمونه برای برنامهنویسی ژنتیک را نشان میدهد :
شکل -1 یک فلوچارت نمونه برای برنامهنویسی ژنتیک
نخست جمعیت اولیهای از جوابهای بالقوه با ساختار درختی به صورت تصادفی تشکیل میشود و تابع هزینه برای هریک از افراد جمعیت محاسبه میشود. سپس، با اعمال یکی از عملگرهای برش و جهش، تعدادی پاسخ بالقوه جدید با ساختار درختی ایجاد میشود. تعدادی از جوابها برای تشکیل نسل بعد انتخاب میشوند. نحوه انتخاب به گونهای است که جوابهای بهتر شانس بیشتری برای انتخاب شدن خواهند داشت. این مراحل تا رسیدن به شرط توقف تکرار میشود. میتوان شرایطی مانند رسیدن به تعداد مشخصی تکرار و یا رسیدن تابع هزینه به یک مقدار مشخص را به عنوان شرط توقف الگوریتم در نظر گرفت.
-3 روش پیشنهادی
در روش پیشنهادی، برنامهنویسی ژنتیک برای طراحی آنتن با الگوی تابشی و سمتگرایی داده شده، به کار میرود. برای این منظور، از ساختار درختی شکل 2 برای بیان یک آنتن که از قطعات سیمی تشکیل شده است، استفاده میشود.
شکل -2 ساختار درختی متناظر با یک آنتن تشکیل شده از دو بخش خطی
همچنین، برای خواندن درخت و دیکد کردن آن به آنتن متناظر، از زبانی شبیه زبان لیسپ - Lisp - استفاده میشود .[10] ساختار درختی شکل 2 به صورت رابطه GW - GW - A, B - , C - خوانده میشود؛ که در آن، A، B و C نقاط ابتدایی و انتهایی شاخههای آنتن متناظر هستند. در نتیجه، این عبارت، مطابق شکل 3، به آنتنی با دو شاخه دیکد میشود.
شکل -3 آنتن متناظر با ساختار درختی شکل 2
برای شبیهسازی و تحلیل آنتن متناظر با یک ساختار درختی، از نرمافزار منبع باز 4NEC2 استفاده میشود .[11] این نرمافزار به طور خاص برای شبیهسازی و تحلیل آنتنهای پیچیده خطی تهیه شده است. بدین منظور، کد برنامهنویسی ژنتیک نوشته شده در نرمافزار MATLAB، یک فایل متن - اسکریپت - با پسوند .nec به عنوان ورودی نرمافزار 4NEC2 ایجاد میکند. نرمافزار 4NEC2 آنتن متناظر را طبق دستورات موجود در این اسکریپت، شبیهسازی و تحلیل میکند و در خروجی خود فایلی با پسوند .out ایجاد میکند. این فایل حاوی اطلاعات تحلیل آنتن است و با استفاده از یک تابع در کد برنامهنویسی ژنتیک - که در نرمافزار MATLAB نوشته شده - ، خوانده میشود و پارامترهای موردنظر مانند الگوی تابش از آن استخراج میگردد.
برای تعیین میزان مطلوب بودن آنتن متناظر با یک ساختار درختی داده شده، مجذور مربعات اختلاف الگوی تابشی آن آنتن با الگوی تابشی مطلوب در 360 نقطه، مطابق با رابطه 1، محاسبه میشود. برای آنکه مقایسه به درستی صورت گیرد، تمام الگوها به گونه ای نرمال شدهاند که بیشینه مقدار آنها یک باشد.
در این رابطه، و به ترتیب مقادیر الگوی تابشی مربوط به زاویه i از الگوی تابشی آنتن مورد بررسی و الگوی تابشی مطلوب هستند.
فرآیند طراحی شامل مراحل ذیل است:
-1 ایجاد نسل اول با جمعیت اولیهای از عبارتهایی که هر کدام متناظر با یک اسکریپت و یک آنتن هستند.
-2 دیکد کردن هر یک از افراد نسل جاری، اعمال اسکریپتهای متناظر به نرمافزار 4NEC2، تحلیل آنتن متناظر و تعیین تابع هزینه
-3 مرتب کردن افراد نسل بر حسب تابع هزینه
-4 انتخاب نیمی از بهترین افراد و انتقال به نسل بعد
-5 انتخاب یک یا دو والد از کل جمعیت بهطور تصادفی
-6 اعمال عملگر برش و ساخت یک یا دو درخت جدید
-7 چک کردن گرهها و شاخههای درخت]های[ ایجادشده از عمل برش و انتقال آنها به نسل بعد، در صورت صحیح بودن درختها؛ درصورتیکه درخت ایجاد شده معیوب و یا غیر قابل قبول باشند - به عنوان مثال: اگر شاخههای آنتن یکدیگر را قطع کنند - ، درخت جدیدی ساخته شده و مستقیما به نسل بعد وارد میشود
-8 رفتن به گام 2 و تکرار الگوریتم تا زمانی که تعداد تکرار نسلها کمتر از تعداد تکرار تعریف شده باشد
-4 نتایج
بهمنظور بررسی کارآیی روش پیشنهادی، الگوی تابشی نمونه شکل 3 را به عنوان الگوی تابشی مطلوب در نظر میگیریم.
شکل -4 الگوی تابشی مطلوب داده شده