زنبور دیده­بان[۴۲]: اگر زنبور جستجو را خود به خود و بدون هیچ دانشی شروع کند یک زنبور دیده­بان خواهد بود. زنبورهای دیده­بان محیط اطراف لانه را برای پیدا کردن منابع غذای جدید جستجو می­ کنند. تعداد زنبورهای دیده­بان از ۵ تا ۳۰ درصد کل زنبورهای کلونی، بر حسب اطلاعات داخل لانه، متغیر است. متوسط تعداد زنبورهای دیده­بان با توجه به میانگین شرایط حدود ۱۰ درصد است.
دانلود پایان نامه
زنبورهای تماشاگر[۴۳]: این دسته از زنبورها در لانه منتظر هستند و با بهره گرفتن از اطلاعاتی که کاوشگرهای به کار گرفته شده به اشتراک می­گذارند، یک منبع غذا پیدا می­ کنند.
کاوشگرهای به کار گرفته شده[۴۴]: این زنبورها به منبع غذای مشخصی مربوط می­باشند که در حال بهره ­برداری از آن هستند. آنها اطلاعات مربوط به این منبع مشخص را (مسافت و جهت آن از لانه وقابلیت بهره ­برداری منبع) حمل می­ کنند و این اطلاعات را به اشتراک می­گذارند.
یک کلونی زنبورهای عسل برای بهره ­برداری از منابع غذایی زیاد می ­تواند تا مسافت­های طولانی (تا ۱۴ کیلومتر) و همزمان در جهت­های مختلف پرواز کند. زنبورهای کاوشگر به مکان­های مناسب برای جمع­آوری فرستاده می­شوند. به طور کلی گلزارهای با مقدار زیاد نکتار یا گرده، که می­توانند با تلاش کمتری بهره ­برداری شوند، باید توسط زنبورهای بیشتری بازدید شوند. در حالیکه گلزارهای با نکتار یا گرده کمتر باید زنبورهای کمتری را پذیرا باشند. فرایند جمع آوری غذا در یک کلونی توسط زنبورهای دیده­بانی، که برای جستجوی گلزارهای امید بخش فرستاده شده ­اند، شروع می­ شود. زنبورهای دیده­بان از یک گلزار به گلزار دیگر به صورت تصادفی حرکت می­ کنند. در طول فصل محصول کلونی جستجوی خودش را با نگه داشتن درصدی از جمعیتش به عنوان زنبورهای دیده­بان ادامه می­دهد. وقتی که زنبورها به کندو برگشتند، آن دسته از زنبورهای دیده­بانی که گلزاری پیدا کردند، که از یک مقدار آستانه مشخصی (بر اساس ترکیبی از چند عامل اصلی مثل محتویات شکر) بالاتر بود، نکتار یا گرده ی خودشان را در کندو ذخیره می­ کنند و برای انجام رقص معروف به رقص قرقره­ای به قسمت رقص می­روند. این رقص برای ارتباطات کلونی لازم است و شامل اطلاعات مفید و لازمی راجع به گلزار می­باشد.
الگوریتم بهینه­سازی کلونی زنبورهای مصنوعی
بهینه­سازی کلونی زنبورهای مصنوعی، توسط کارابوگا[۴۵] در سال ۲۰۰۵ پیشنهاد شد [۴۵]. این الگوریتم رفتار کاوش غذا در کلونی زنبورها را برای مسائل بهینه­سازی بدون قید شبیه­سازی می­ کند. همانطور که قبلا گفته شد، در یک کلونی زنبورهای واقعی وظایفی وجود دارد که توسط متخصصین ویژه­ای انجام می­ شود. این زنبورهای متخصص با تقسیم موثر کار سعی می­ کنند میزان شهد ذخیره شده در کندو را بیشینه نمایند. مدل کمینه جستجوی غذا در یک کلونی زنبور عسل از سه نوع زنبور تشکیل شده است: زنبورهای به کار گرفته شده، زنبورهای به کار گرفته نشده و زنبورهای دیده­بان. نیمی از کلونی شامل زنبورهای به کار گرفته شده و نیمی دیگر شامل زنبورهای تماشاگر می­باشد. زنبورهای به کار گرفته شده مسئول استخراج منابع نکتار از قبل کشف شده و انتقال اطلاعات راجع به کیفیت مکان منبع غذایی که آنها بهره ­برداری می­ کنند به دیگر زنبورهای منتظر (زنبورهای تماشاگر) در داخل کندو می­باشند. زنبورهای تماشاگر داخل کندو منتظر می­مانند و یک منبع غذا را، بسته به اطلاعاتی که توسط زنبورهای به کار گرفته شده به اشتراک گذاشته می­ شود، برای بهره ­برداری انتخاب می­ کنند. دیده­بان­ها اطراف را به صورت تصادفی برای پیدا کردن منبع غذای جدید جستجو می­ کنند. برای هر منبع غذا تنها یک زنبور به کار گرفته شده وجود دارد، به عبارت دیگر، تعداد زنبورهای به کار گرفته شده برابر تعداد منابع غذا می­باشد زنبور به کار گرفته شده یک منبع غذای ترک شده، دیده­بان می­ شود. جستجوی انجام شده توسط زنبورهای مصنوعی را می توان به صورت زیر خلاصه کرد:
زنبورهای به کار گرفته شده یک منبع غذا را در همسایگی منبع غذایی که در حافظه شان هست معلوم می­ کنند.
زنبورهای به کار گرفته شده اطلاعات خود را با تماشاگران داخل کندو به اشتراک می­گذارند و سپس تماشاگران یکی از منابع غذا را انتخاب می­ کنند.
تماشاگران یک منبع غذا را در همسایگی منبع غذایی که انتخاب کرده بودند، انتخاب می­ کنند.
زنبور به کار گرفته شده­ای که منبع غذای آن ترک شده، دیده­بان می­ شود و شروع به جستجوی منبع غذای جدید به صورت تصادفی می­ کند.
گام های اصلی الگوریتم بهینه­سازی کلونی زنبور مصنوعی که این رفتارها را شبیه­سازی می­ کنند، در زیر آمده است [۴۶]:
انتخاب اولیه مکان منابع غذا به عنوان جمعیت اولیه.
هر زنبور به کار گرفته شده یک منبع غذای جدید را در محوطه ی منبع غذای خود ایجاد می­ کند و از منبع غذای بهتر بهره ­برداری می­ کند.
هر زنبور تماشاگر یک منبع را بسته به کیفیت شهدش انتخاب می­ کند. یک منبع غذای جدید در محوطه منبع غذای انتخاب شده ایجاد می­ کند و از منبع بهتر بهره ­برداری می­ کند.
مشخص کردن منبع ترک شده و اختصاص دادن زنبور به کا‌ر گرفته شده آن به عنوان زنبور دیده­بان برای پیدا کردن منبع غذای جدید.
به خاطر سپردن منبع غذای پیدا شده تا کنون.
تکرار گام های ۲ تا ۵ تا زمانی که شرط توقف برآورده شود.
فاز جمعیت اولیه:
در گام اول الگوریتم،  راه حل به ازای m=1,2,…,SN در محدوده ی پارامترها به صورت تصادفی تولید می­شوند، که SN تعداد منابع غذا می­باشد. از آنجایی که هر منبع غذا  یک بردار راه­حل برای مساله بهینه­سازی است، هر بردار  المان­های  به ازای i=1,2,…,n دارد، که مطابق پارامترهای مساله بهینه­سازی است و nتعداد این پارامترهای بهینه­سازی می­باشد (یا همان بعدهای مساله).
انتخاب جمعیت اولیه:
(۳-۳)
فاز زنبورهای به کار گرفته شده:
در گام دوم الگوریتم، زنبورهای به گار گرفته شده برای پیدا کردن منابع غذای جدیدی (  ) که نکتار بیشتری دارند، در همسایگی منابع غذای موجود در حافظه شان (  ) جستجو می­ کنند. آنها یک منبع غذای همسایه پیدا می­ کنند و بعد برازش آن را محاسبه می­ کنند.
(۳-۴)
که  یک منبع غذای انتخاب شده تصادفی، شاخص انتخاب شده تصادفی و  توزیع یکنواخت اعداد تصافی حقیقی در بازه [-۱,۱] می­باشد.

i=1,2,…,n و n تعداد بعدهای مساله می­باشد. بعد از ایجاد  ، برازش این راه حل جدید محاسبه می­ شود. این راه حل جدید با راه حل  مقایسه می­ شود و یک انتخاب رقابتی بین  و  انجام می­ شود. زنبور به کار گرفته شده منبع بهتر را بهره ­برداری می­ کند.
فاز زنبورهای تماشاگر:
در گام سوم الگوریتم، یک زنبور تماشاگر منبع غذایی را بسته به احتمال محاسبه شده در رابطه (۳-۵) انتخاب می کند. انتخاب منبع غذا برای زنبور تماشاگر بر پایه ی یکی از روش­های انتخاب، مثل روش انتخاب چرخ رولت، و با توجه به احتمال مذکور انجام می­گیرد. منبع غذای جدید در همسایگی مکان منبع غذای انتخاب شده با بهره گرفتن از رابطه (۳-۴) ایجاد می­ شود. برازش آن محاسبه می شود و سپس مطابق فاز زنبورهای به کار گرفته شده یک انتخاب رقابتی بین  و  صورت می­گیرد.
(۳-۵)
فاز زنبورهای دیده­بان:
بعد از اینکه همه تماشاگرها در منابع توزیع شدند، منابع بررسی می­شوند که آیا بایستی ترک شوند یا نه. اگر تعداد تکرار­هایی که یک منبع نمی‌تواند بهتر شود بزرگتر از حد از قبل تعیین شده باشد، آن منبع ترک می­ شود. حد تعداد تکرارها برای ترک یک منبع توسط پارامتر از پیش تعریف شده limit تعیین می­ شود. زنبور به کار گرفته شده وابسته به یک منبع ترک شده، یک دیده بان می­ شود و در محدوده مساله با بهره گرفتن از رابطه (۳-۵) جستجوی تصادفی انجام می­دهد.
فصل چهارم
الگوریتم یادگیری Q فازی پیشنهادی

الگوریتم یادگیری Q فازی پیشنهادی

مقدمه
در این فصل ابتدا فیزیک و امکانات ربات کپرا، که در آزمایش­های شبیه­سازی شده به کار گرفته شده است، توصیف می­ شود. سپس، الگوریتم یادگیری Q فازی پیشنهادی توضیح داده می­ شود. در آخر بیان می­ شود چگونه پارامترهای کلیدی مجموعه فازی و عامل فراموشی یادگیری Qتوسط الگوریتم کلونی زنبور مصنوعی بهینه شدند.
ربات کپرا
کپرا ربات کوچکی به شکل تقریباً دایروی به قطر ۵۵ میلی­متر، ارتفاع ۳۰ میلی­متر و وزن ۷۰ گرم می­باشد [۴۲]. آزمایش الگوریتم پیشنهادی روی یک ربات کوچک، که می ­تواند به طور نقطه­ای مدل شود، باعث می­ شود الگوریتم ناوبری مستقل از مدل دقیق ربات پیاده­سازی شود. این امر، منجر به پیاده­سازی و آزمایش آسان و بدون تغییر الگوریتم پیشنهادی روی سایر ربات­ها می­ شود [۴۷]. کپرا هشت حسگر مادون­قرمز دارد که هر هرکدام از یک جفت فرستنده و گیرنده تشکیل شده ­اند. این حسگرها (S0, S1,…, S7) در اطراف بدنه ربات تقریبا به شکل دایره قرار گرفته اند (شکل(۴-۱)). این حسگرهای مادون­قرمز فاصله را درمحدوده کوتاه ۱ تا ۵ سانتی­متر اندازه می­گیرند.

شکل(۴-۱): ربات کپرا [۳۲]

داده ­های حسگرها مقادیری صحیح در محدوده بسته ۰ تا ۱۰۲۳ می­باشند. مقدار ۱۰۲۳ در خروجی حسگر بیانگر این است که مانع بسیار به ربات نزدیک است و مقدار ۰ بدین معنی است که هیچ سیگنال مادون­قرمزی توسط حسگرهای ربات (گیرنده مادون­قرمز) دریافت نمی­ شود [۴۸]. شش حسگر جلویی ربات در سه گروه دوتایی به عنوان ورودی­های واحد تصمیم‌گیری در نظر گرفته می‌شوند. مقدار هریک از این گروه حسگرها بیشترین مقدار خروجی دو حسگر در یک گروه است.

نام تجاری حسگر­های مادون­قرمز ۲ ـ۹۰۰ SFH و کارخانه سازنده آنها SIEMENS می­باشد. خروجی حسگرها حاصل از اندازه ­گیری اختلاف نور بازتاب شده از موانع و نور محیط می­باشد. هر اندازه ­گیری جدید در هر
ms 5/2 انجام می­ شود. در طی ms 20، حسگر­ها به طور متوالی هر ms 5/2 خوانده می­شوند. مقدار گزارش شده در هر زمان، نتیجه آخرین اندازه ­گیری ایجاد شده است. خروجی هر اندازه ­گیری یک مقدار آنالوگ است که با یک مبدلbit A/D 10 تبدیل می­ شود. اندازه ­گیری فاصله تا موانع با بهره گرفتن از نور بازتاب شده به دو عامل اصلی بستگی دارد: قابلیت باز تاب موانع (رنگ، نور، سطح و …) و نور محیط. شکل(۴‑) میزان دریافت نور بازتاب شده را، از موانع مختلف، توسط گیرنده­های مادون­قرمز ربات کپرا نشان می­دهد.

شکل(۴‑۲): میزان دریافت نور بازتاب شده از موانع مختلف توسط گیرنده­های مادون­قرمز ربات کپرا [۴۸]

کپرا برای حرکت، دارای دو چرخ و دو گوی تفلونی می‌باشد. هر چرخی با یک موتور DC به حرکت در‌می ­آید که به یک کاهنده دور ۲۵:۱ متصل است. یک رمزگذار افزایشی در محور موتور قرار داده شده است و ۲۴ پالس در طی هر گردش موتور ایجاد می­ کند، که رزولوشنی برابر با ۶۰۰ پالس طی هر گردش چرخ، که معادل ۱۲ پالس به ازای هر میلی‌متر از مسافت ربات است، ایجاد می­ کند. پردانده اصلی ربات کپرا، کنترل مستقیم روی ذخیره انرژی موتور دارد و می ­تواند پالس­ها را از رمزگذار افزایشی بخواند. یک وقفه معمولی، شمارنده مکان چرخ را به روز­رسانی می­ کند. هر دو موتور DC می­توانند با یک کنترل­ کننده­ PID در یک وقفه معمولی پردازشگر اصلی کنترل شوند. هر ترم از این کنترل­ کننده (تناسبی، انتگرال، مشتق) مربوط به یک ثابت است، برای تناسبی، برای انتگرال، برای مشتق.
کنترل­ کننده موتور در دو حالت کنترلی می ­تواند به کار گرفته شود: حالت کنترل­ سرعت و حالت کنترل مکان. حالت کنترلی فعال مطابق با نوع فرمان دریافتی تنظیم می­ شود. اگر کنترل­ کننده، فرمان کنترل سرعت را دریافت کند، به حالت کنترل سرعت سوئیچ می­ شود. اگر کنترل­ کننده، فرمان کنترل مکان را دریافت کند، حالت کنترل خود به خود به حالت کنترل مکان سوئیچ می­ شود. پارامتر­های مختلف کنترل ( ، ، ) می­توانند برای هر دو حالت کنترل تنظیم شوند. در حالت ر سرعت ورودی، مقادیر سرعت چرخ­ها است و موتور را برای نگه‌داشتن چرخ­ها در این سرعت کنترل می­ شود. اصلاح سرعت، در سریع­ترین زمان ممکن اتفاق می­افتد. در این حالت، هیچ محدودیتی در شتاب گرفتن در نظر گرفته نشده است. در حالت ر مکان ورودی، مکان نهایی چرخ­ها، شتاب و سرعت بیشینه می­باشد. با بهره گرفتن از این مقادیر، کنترل­ کننده به چرخ­ها شتاب می­دهد تا زمانی که بیشینه سرعت حاصل شود و از سرعت به منظور رسیدن به مکان نهایی کاسته می­ شود.
در این پژوهش، از حالت کنترل سرعت استفاده شده است. بیشترین مقادیر سرعت های خطی و زاویه­ای ربات به ترتیب mm/s 40 و rd/s 58/1 می­باشند [۳۲]. ربات کپرا به صورت دیفرانسیلی حرکت می­ کند، بنابراین، کنترل­ کننده بایستی سرعت‌های زاویه­ای را برای چرخ­های راست و چپ تولید نماید: ɷ(سرعت زاویه چرخ راست) و ɷL (سرعت زاویه چرخ چپ). از آنجاییکه ذهن راننده­های انسانی بیشتر با سرعت خطی (S) و زاویه فرمان یا چرخش (φ) استدلال می­ کند، خروجی­های قوانین فازی سرعت خطی و زاویه چرخش در نظر گرفته شده ­اند. فرامین کنترلی با معادلات ساده‌ی هندسی (۴-۱) و (۴-۲)، تناظری میان جفت­های (S,φ) و (ɷLR) برقرار می­ کنند [۴۹] که در آنها r شعاع چرخ‌ها می­باشد:
(۴-۱)
(۴-۲)
یادگیری Q فازی

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


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