Document Type : Research Article
Author
Abstract
Keywords
1- مقدمه
در سالهای اخیر، استفاده از الگوریتمهای فراابتکاری گسترش چشمگیری در حل مسائل پیچیده محاسباتی داشته است و امروزه نیز کاربردهای بسیار زیادی در شاخههای مختلفِ علوم دارد. این رویکردها برخلاف روشهای دقیق بهینهسازی، بهدنبال نقاطی هستند که تا حد ممکن به بهینه سراسری نزدیک باشند؛ بهطوریکه نظر تصمیمگیرنده را تا سطحی پذیرفتنی برآورده سازند. توجه به این نکته از این جهت بااهمیت است که در بیشتر مدلسازیها، نمیتوان تمامی پارامترهای مؤثر بر شرایط مسئله را وارد مدل کرد؛ بنابراین تضمینی وجود ندارد که بهترین حل بهدستآمدۀ مدل، همان حل مطلوب برای شرایط واقعی باشد [1]. حال این سؤال پیش میآید که یک حل دقیق از یک مدل تقریبی بهتر است یا یک حل تقریبی از یک مدل دقیق. در پاسخ به این پرسش، رویکردهای فراابتکاری، این امکان را فراهم میسازند که یک حل تقریباً خوب از یک مدل کاملاً دقیق بهدست آورده شود؛ زیرا افزایش پیچیدگی مسئله تأثیر چندانی در عملکرد روشهای فراابتکاری نخواهند داشت. به عبارت دیگر، روشهای فراابتکاری روشهایی هستند که حلهای نزدیک به بهینه را با هزینه محاسباتی پذیرفتنی جستوجو میکنند؛ ولی تضمینی برای رسیدن به حل بهینه ارائه نمیدهند. به روشهای فراابتکاری، در اصطلاح، روشهای غیردقیق نیز گفته میشود؛ زیرا مکانیزمهای تصادفی در ایجاد ساختار آنها نقش مهمی دارد. بهطورکلی مبنای این رویکردها براساس نظم یا قواعد موجود در ارگانیسمهای طبیعی است [2]. تاکنون برای طراحی اتوماتیک سیستمهای فازی، الگوریتمهای فراابتکاری زیادی معرفی شدهاند [3-7]. یکی از روشهای مهم بهینهسازی، استفاده از الگوریتمهای تکاملی است [8]. این نوع الگوریتمها، ابتکاری و احتمالی هستند و دربردارندۀ جمعیتی از افراد با رفتاری خاص مشابه پدیدههای بیولوژیکی هستند. مشهورترین سیستمهای فازی تکاملی، سیستمهای فازی ژنتیکی هستند که در آن، طراحی سیستم فازی با استفاده از الگوریتم ژنتیک[1] انجام شده است [9-16]. به تازگی الگوریتم تکامل تفاضلی[2] بهعنوان یک تکنیک نوین محاسبات تکاملی [17]، [18] برای حل مسائل بهینهسازی استفاده میشود. تکامل تفاضلی به بسیاری از دیگر روشهای تکاملی همچون الگوریتم ژنتیک [19]، [20] و بهینهسازی انبوه ذرات[3] ترجیح داده میشود و این به دلیل ویژگیهای درخور توجه آن همچون مفهوم ساده، اجرای آسان و همگرایی سریع است [17]، [18].
روش دیگر طراحی سیستمهای فازی، استفاده از مدل هوش ازدحامی[4] است [21]. یک مدل مشهور هوش ازدحامی، الگوریتم بهینهسازی انبوه ذرات است که برای طراحی سیستمهای فازی به کار رفته است [22-26]. مدل مشهور دیگر هوش ازدحامی، الگوریتم بهینهسازی کلونی مورچه[5] است که برای طراحی سیستمهای فازی به کار رفته است [27-31]. روش دیگر طراحی سیستمهای فازی، استفاده از الگوریتمهای ترکیبی است. هر الگوریتم، مزایا و معایبی دارد؛ به همین دلیل برای داشتن مزایای چند الگوریتم، این الگوریتمها با هم ترکیب میشوند [32-34]. در این مقاله، الگوریتمهای تکامل تفاضلی مبتنی بر تضاد و بهینهسازی انبوه ذرات بهصورت مؤثری با هم ترکیب شده است. ترکیب[6]، بهمعنای بهکارگیری همزمان دو یا چند روش برای استفاده از مزایا و کمرنگکردن معایب آنها است [2]. درواقع، با ترکیب این دو الگوریتم، تنوع جمعیتی ایجاد میشود و از افتادن الگوریتم در دام بهینه محلی جلوگیری میشود. همچنین الگوریتم، سریعتر و با تقریب بهتری به جواب بهینه، همگرا میشود. برخی از روشهای ترکیب الگوریتمِ تکامل تفاضلی و بهینهسازیِ انبوه ذرات در [35] و [36] پیشنهاد شدهاند و برای حل مسائل بهینهسازی در زمینههای مختلفی به کار رفتهاند. سیستمهای فازی برای حل مسائل پیچیده که دچار عدم قطعیت هستند و توصیف ریاضی آنها سخت است، بسیار مناسب هستند. چالش اصلی در استفاده از این نوع سیستمها، چگونگی طراحی یک پایگاه قواعد با پارامترهای بهینهسازیشده است؛ بهنحویکه منجر به عملکرد رضایتبخش سیستم شود. برای رویارویی با این مسئله به روشهای هوشمند برای طراحی سیستم فازی ترجیح داده میشود. در این مقاله، پس از انجام مطالعات لازم در این زمینه، تلاش شده است با بهرهگیری از الگوریتمهای فراابتکاری، پارامترهای موجود در پایگاه قواعد فازی به روشی هوشمند، بهینه شوند؛ بهنحویکه حتی با افزایش تعداد متغیرهای ورودی و افزایش تعداد قواعد فازی بهصورت نمایی، پایگاه قواعد فازی طراحیشده همچنان عملکرد مناسب و رضایت بخش داشته باشد. به همین منظور در این مقاله، الگوریتمهای تکامل تفاضلی مبتنی بر تضاد و بهینهسازی انبوه ذرات بهصورت مؤثری با هم ترکیب شدهاند. ترکیب، بهمعنای بهکارگیری همزمان دو یا چند روش برای استفاده از مزایا و کمرنگکردن معایب آنها است [2]. درواقع با ترکیب این دو الگوریتم، تنوع جمعیتی ایجاد میشود و از افتادن الگوریتم در دام بهینه محلی جلوگیری میشود. همچنین الگوریتم، سریعتر و با تقریب بهتری به جواب بهینه، همگرا میشود.
این مقاله به شرح زیر سازماندهی شده است: در بخش دوم، کارهای انجامشده بررسی شده است. در بخش سوم، الگوریتمهای تکامل تفاضلی مبتنی بر تضاد و بهینهسازی انبوه ذراتِ بهکاررفته برای آموزش سیستم فازی ارائه شده است. در بخش چهارم، برای ارزیابی روش پیشنهادی، مثالهای شبیهسازیشده با استفاده از رویکرد پیشنهادی بررسی شده است و نتایج تمامی تکنیکهای موجود برای رسیدن به نتیجهگیری کلی به بحث گذاشته شده است و در بخش پنجم و ششم بهترتیب، بحث و نتیجهگیری شده و پیشنهادهایی جهت تحقیقات آینده مطرح شده است.
2- مروری بر ادبیات
در [28]، کاربردهای بهینهسازی تجمع مورچگان (ACO) در طراحی یک کنترلر فازی (FC)، موسوم به ACO-FC، بهمنظور بهبود کارائی طراحی و عملکرد کنترلی، و نیز پیادهسازی سختافزار ACO، ارائه شده است. بخش مقدم یک کنترلر فازی، یعنی بخش IF ” “ قوانین IF-THEN فازی تشکیلدهندۀ آن، در قسمت نوع شبکه قرار میگیرد و پس از آن، همۀ مقادیر نتیجهدهندۀ قوانین نامزد لیست میشوند. یک سفر مورچه بهعنوان ترکیبی از مقادیر نتیجهدهندۀ انتخابشده از هر قانون در نظر گرفته میشود. یک ماتریس فرومون از بین همۀ مقادیر نتیجهدهندۀ نامزد ایجاد میشود. جستوجو برای بهترین مقدار از بین همۀ ترکیبات مقادیر نتیجهدهندۀ قانون، عمدتاً مبتنی بر ماتریس فرومون است. ازطریق مثالهای شبیهسازی، نشان داده شده است که عملکرد ACO-FC ارائهشده، نسبت به دیگر روشهای طراحی فراابتکاری بهتر است. ACO بهکاررفته در ACO-FC مبتنی بر سیستم مشخصی از جمعیت مورچگان بوده است و سختافزار روی یک تراشۀ آرایۀ گیت منطقی درخور برنامهریزی (FPGA) عملی میشود. کاربرد تراشۀ ACO در کنترل فازی بهوسیلۀ یک مسئلۀ کنترل دمای آب حمام شبیهسازی شده است و نتایج بهدستآمده نشاندهندۀ کارایی تراشۀ طراحی شده است.
در [31]، طراحی کنترلرهای فازی توسط بهینهسازی جمعیت مورچگان (ACO) در ترکیب با یادگیری فازی Q، موسوم به ACO-FQ، به همراه مقاومسازیهای مربوطه ارائه شده است. در ACO-FQ، سفر یک مورچه بهصورت ترکیبی از عملیات نتیجهدهندۀ انتخابشده از هر قانون در نظر گرفته میشود. جستوجوی بهترین مورچه از بین همۀ ترکیبات تا حدودی مبتنی بر تعقیب فرومون است. در این پژوهش برای هر نامزد موجود در بخش نتیجهدهندۀ قانون، یک مقدار Q متناظر اختصاص داده شده است. بهروزرسانی مقدار Q مبتنی بر یادگیری فازی Q است. بهترین ترکیب مقادیر نتیجهدهندۀ یک سیستم رابط فازی طبق میزان فرومون و مقادیر Q جستوجو میشود. در پایان ACO-FQ به سه مسئلۀ معروف، اعمال شده و نشان داده شده است که در مقایسه با دیگر روشهای طراحی سیستم فازی تقویتی، عملکرد مناسبتری دارد.
در [37]، یک شبکۀ فازی عصبی تکاملی ارائه شده است که با استفاده از پیوند عملیاتی شبکۀ فازی عصبی (FLNFN) و یک الگوریتم جدید یادگیریِ تکاملی طراحی شده است. این الگوریتم جدید یادگیری تکاملی مبتنی بر یک مشارکت بهینهسازی انبوه ذرات و الگوریتم فرهنگی است؛ بنابراین آن را بهینهسازی انبوه ذرات با مشارکت فرهنگی (CCPSO) مینامند. روش CCPSO ارائهشده از رفتار مشارکتی چندین جمع بهره میبرد و میتواند با استفاده از فضای فرهنگی اجتماع، ظرفیت جستوجوی فرامحلی (سراسری) را افزایش دهد. رفتار مشارکتی دربردارندۀ جمعی از چندین جمعیت است که با تبادل اطلاعات تعامل میکند تا مسئلهای را حل کند. فضای فرهنگی اجتماع، گنجینۀ اطلاعاتی است که در آن، افراد قادرند تجارب خود را به گونهای ذخیره کنند که دیگر افراد بتوانند بهطور غیرِمستقیم از آنها یاد بگیرند. مدل FLNFN ارائهشده از پیوند عملیاتی شبکههای فازی عصبی بهعنوان بخش نتیجهدهندۀ قوانین فازی استفاده میکند. این مطالعه از چندجملهایهای متعامد و توابع مستقل خطی در توسعۀ پیوند عملیاتی شبکههای فازی عصبی بهره میبرد. مدل FLNFN میتواند بخش نتیجهدهندۀ ترکیب غیرخطی متغیرهای ورودی را تولید کند. درنهایت، FLNFN ارائهشده به همراه CCPSO (FLNFN-CCPSO) در چندین کاربرد پیشبینی اتخاذ شدهاند و نتایج آزمایشگاهی نشان داده است روش CCPSO ارائهشده در پیشبینی مسائل مجموعههای زمانی، عملکرد خوبی را به نمایش میگذارد.
در [38]، برای کاهش لرزش ساختمانها با استفاده از میراکنندههای مگنتورئولوژیکال (MR)، یک الگوریتم کنترل بهینۀ منطق فازی ارائه شده است. میراکنندههای MR تجهیزات نیمهفعال هستند و با کمک منبع تغذیة خارجی پایش میشوند. در این مقاله، پایش ولتاژ میراکنندۀ MR ازطریق استفاده از سیستم فازی تکاملی انجام میگیرد و سیستم فازی با کمک الگوریتمهای تکاملی (EA) بهینه میشود. الگوریتم میکروژنتیک (μ-GA) و الگوریتم بهینهسازی انبوه ذرات (PSO) بهمنظور بهینهسازی پارامترهای FCL به کار میروند. درنهایت، عملکرد کنترلر فازی بهینهشده بهصورت غیرخطی بر روی یک مدل ساختمانی سهطبقه و تحت تحرکات ارتعاشی اعمال میشود. مزیت اصلی استفاده از FCL برای کنترلکردن ولتاژ میراکنندۀ MR این است که یک تغییر تدریجی و صاف در ولتاژ ایجاد میکند؛ درنتیجه، روش ارائهشده، کنترل بهتری را برای ساختارهای تحت تنش فراهم میکند.
در [39]، یک روش جدید یادگیری مبتنی بر داده [سیستمهای استنتاج فازی کم تعداد (SparseFIS)] برای سیستمهای فازی تاکاگی - سوگنو (T-S) بررسی شده است که برای دربرگیری وزنهای قوانین توسعه یافته است. روش یادگیری دربردارندۀ سه مرحله است: مرحله نخست، یک فرایند دستهبندی را در فضای مشخصۀ ورودی/خروجی با کیمتبخشی بردار تکرار انجام داده است و دستههای بهدستآمده را روی محورهای یک بُعدی تصویر میکند تا مجموعههای فازی (مراکز و عرضها) بخشهای مقدمات قوانین را شکل دهد. مرحله دوم، ازطریق اعمال یک رویۀ بهینهسازی شدیدترین نزول مقید به تنکی، وزن قوانین سیستمهای فازی را نسبت به خطای حداقل مربعات اندازهگیریشده بهینه میکند. بسته به آستانۀ تنکی، وزن بسیاری یا تعدادی از قوانین را میتوان صفر کرد تا به این ترتیب برخی قوانین از بین برود (انتخاب قانون). مرحلۀ سوم، ازطریق یک رویۀ بهینهسازی منظمشدۀ مقید به تنکی بهصورت مجزا به هر قانون، پارامترهای نتیجهدهندۀ خطی را حذف میکند (روش یادگیری محلی). قیود تنکی برای صفرکردن اجباری پارامترهای خطی به کار میروند که موجب یک سازوکار انتخاب ویژگی برای هر قانون را میشود. هرگاه پارامترهای خطی برخی از ویژگیها در هر قانون برابر (نزدیک) صفر باشند، انتخاب ویژگی بهینه سراسری حاصل میشود. نهایتاً برای نشاندادن عملکرد صحیح این روش ارزیابی، در دادههای با ابعاد بالای مربوط به فرایندهای صنعتی و دادههای اینترنت اعمال شده است و از منظر دقت و پیچیدگی سیستمهای فازی با روشهای معروف آموزش گروهی مقایسه شده است.
کسب دانش یک مسئلۀ با سابقۀ طولانی در سیستمهای مبتنی بر قانون فازی است. باوجود چندین روش در این زمینه، همچنان نیاز به تلاش زیادی جهت افزایش کارائی فرایند یادگیری است. در [40]، یک روش جدید برای تکامل تدریجی قانون فازی ارائه شده است که شکلدهندۀ یک دانش سیستم خبره است. این راهبرد مبتنی بر استفاده از بهینهسازی انبوه ذرات (PSO) برای دستیابی به مقدمات، نتیجهدهندهها و ارتباطات بین قوانین است. در این مقاله، برای آزمودن امکانپذیری روش پیشنهادی، مسئلۀ آونگ معکوس پیشنهاد شده است. در آخر نیز نشان داده شده است که نتایج شبیهسازی مؤید این حقیقت است که راهبرد ارائهشده از نظر نتایج نهایی و تلاش محاسباتی نسبت به روشهای یادگیری کلاسیک عملکرد بهتری دارد. در [41]، یک الگوریتم بهینهسازی انبوه ذرات چندگونهای مبتنی بر دستهبندی سلسله مراتبی (HCMSPSO) برای بهینهسازی سیستم فازی ارائه شده است. هدف از این مقاله، یادگیری قوانین فازی نوع تاکاگی – سوگنو - کانگ (TSK) با دقت زیاد بوده است. در سیستم فازی (FS) طراحیشده با HCMSPSO، هر قانون مجموعههای فازی مربوط به خود را تعریف میکند؛ به این معنا که تعداد مجموعههای فازی برای هر متغیر ورودی با تعداد قوانین فازی برابر است. برای تأیید عملکرد HCMSPSO چندین شبیهسازی انجام شده است و در مقایسه با دیگر الگوریتمهای یادگیری عصبی، ژنتیک و PSO، نشان داده شده است که عملکرد HCMSPSO نسبت به آنها بهتر است. در [42]، یک روش کنترل فازی در ترکیب با الگوریتم بهینهسازی انبوه ذرات (PSO) برای کنترل تضعیف شار موتور سنکرون با تحریک ترکیبی (HESM) ارائه شده است. برای تعیین جریان بهینۀ تحریک، جریان محورهای d و q در ناحیۀ سرعت پایین یک مدل کاهشی از کل تلفات مسی ایجاد میشود. ببرای بهبود مشخصات دینامیکی و کاهش آثار منفیِ تغییرات پارامتر روی عملکرد HESM، یک کنترلر فازی در ناحیۀ سرعت زیاد به کار گرفته شده است و در همین حین برای بهبود راندمان و بهینهسازی جریان، الگوریتم PSO در طی عملکرد حالت دائم در کنترلر فازی اعمال میشود. در شبیهسازی نیز نشان داده شده است که سیستم HESM با راندمان بالاتر نسبت به سایر روشها ارائه شده است.
برای تولید خودکار ساختار و پارامترهای اساس قانون فازی، در [25]، یک الگوریتم بهینهسازی انبوه ذرات با طول مختلف ذرات (DLPPSO) ارائه شده است. مزیت اصلی این روش آن است که ساختار و پارامترهای اساس قانون فازی را میتوان بهطور خودکار با PSO ارائهشده تولید کرد. در این روش، بهترین سازگاری (fgbest) و بهترین تعداد قوانین فعال (Ngbest) از بهترین ذره در جمعیت کنونی و بهترین سازگاری (fpbest) که ذرۀ i ام تاکنون به دست آورده است و بهترین تعداد قوانین فعال آن (Npbest) موقع بروز بهترین موقعیت، بهمنظور تعیین قوانین فعال ذرهی i ام در هر نسل به کار میروند. برای افزایش تنوع ساختار، عملگر جهش برای تغییر تعداد قوانین فعال ذرات به کار گرفته میشود. این الگوریتم در مقایسه با دیگر PSOهای با طول مختلف ذرات، عملکرد تطبیقی بهتری دارد. نهایتاً برای نشاندادن کارائی الگوریتم بیانشده، یک تابع غیرخطی و دو مجموعۀ زمانی در آزمایشهای شبیهسازی به کار میرود و نتایج بهدستآمده نشاندهندۀ این است که روش ارائهشده توانسته است بهطور مؤثرتری تابع غیرخطی را تقریب بزند و مجموعههای زمانی را پیشبینی کند.
الگوریتم ژنتیک به دلیل روش جستوجوی ابتکاری فوقالعادۀ بسیار معروف است. سیستم فازی ژنتیک به دلیل توانایی بهینهسازی با سادگی مفهومی باعث تسهیل بهینهسازی قوانین میشود. در [43]، بهینهسازی چهارده قانون فازی برای اتوماسیون تصمیمگیری نیمه خبره درمورد تخمین مدت زمان مبتنی بر فعالیت اولیه در مدیریت پروژۀ نرمافزاری ارائه شده است. هدف از این بهینهسازی، کاهش پیچیدگی عبارات زبانی و بهبود دقت تخمین مجموعه قانون فازی و در عین حال، حفظ میزان یکسانی از تفسیرپذیری بوده است.
در [44]، یک سیستم خبرۀ فازی مبتنی بر بهینهسازی انبوه ذرات (PSO) برای تشخیص بیماری شریان اکلیلی (CAD) ارائه شده است. سیستم طراحیشده از اطلاعات واقعی پایگاه دادههای بیماریهای قلبی کلولند[7] در مجارستان بهره برده است. ازآنجاکه این پایگاه دادهها دربردارندۀ ویژگیهای ورودی متعددی است، درخت تصمیم (DT) برای بازبینی خصوصیاتی که به تشخیص بیماری مربوطاند به کار گرفته شده است. برای تنظیم توابع عضویت (MFهای) فازی از بهینهسازی انبوه ذرات (PSO) استفاده شده است. مزیت اصلی این روش در مقایسه با دیگر روشها، توانایی آن در تفسیر تصیماتی است که از جانب سیستم خبرۀ فازی تولیدشده گرفته شده است.
در [45]، نشان داده شده است که تنظیم بهینه کنترلکنندهها با استفاده از سه الگوریتم بهینهسازی تکاملی به یک کلاس از سیستمهای servo اختصاص داده میشود (الگوریتم جستوجو گرانشی"GSA" الگوریتم بهینهسازی انبوه ذرات "PSO" و الگوریتم شبیهسازی حرارتی "SA"). فرآیندها در این سیستم servo با مدلهای مرتبه دوم و یک جزء انتگرال و پارامترهای متغیر مشخص میشوند؛ بنابراین، توابع هدف در مسائل بهینهسازی دربردارندۀ توابع خروجی از مدلهای تعریفشده با توجه به تغییرات پارامتری فرآیندها هستند. سیستمهای servo با کنترلکنندههای متناسب انتگرال - فازیTakagi–Sugeno (T-S PI-FCS) دربردارندۀ دو ورودی، توابع عضویت مثلثی، نه قانون در قانون پایه، عملگرهایSUM و PROD در موتور استنتاج و روش میانگین وزندارشده در ماژول غیرفازی ساز هستند. T-S PI-FCS بهصورت کنترلکنندههای فازی کمهزینه به دلیل ساختار ساده، از تنها سه پارامتر تنظیم به دلیل نگاشت پارامترهای کنترلکننده متناسب انتگرال خطی (PI) بر روی پارامترهای فازی از نظر اصل همارزی معین و از روش بهینهسازی متقارن گسترشیافته پیادهسازی میشوند. نهایتاً با مقایسه الگوریتمهای تکاملی در چارچوب یک مطالعه موردیِ متمرکز بر تنظیم بهینه T-S PI-FCS برای سیستم کنترل موقعیت تجهیزات آزمایشگاهی سیستم servo، نتایج حاصل بیانگر عملکرد رضایتبخش سیستم ارائهشده است.
انتخاب پروژه، فرآیند تصمیمگیری پیچیدهای است که با اهداف متعدد و اغلب متضاد تحت تأثیر قرار میگیرد. پیچیدگی مشکل انتخاب پروژه با توجه به بالابودن تعداد پروژهها است؛ زمانیکه از یک مجموعه از پروژهها، نمونه مناسب باید انتخاب شود.
در [46]، استراتژی جستوجوی پارامترهای سیستم فازی T-S جدید بهنام OptiFel با یکPSO ناهمگن و چند گروه (MsPSO) بهمنظور افزایش عملکرد جستوجو توسعه داده شده است. MsPSO کل جمعیت را به زیرگروههای اشتراکی متعدد گروهبندی میکند تا روشهای مختلف جستوجو را برای راهحلهای بالقوه انجام میدهد. در این مقاله، مشخص شده است که استراتژی زیرگروههای متعددِ پیشنهادی تا حد زیادی برای پیداکردن پارامترهای بهینه مناسب برای زیرفضاهای مدل فازی T-S مفید است. اثبات نظری این موضوع نیز نشان داده است که اشتراک میان زیرگروهها میتواند تعادلی بین اکتشاف و بهرهبرداری برای اطمینان از ذرات همگرا برای نقاط پایدار را حفظ کند. نتایج تجربی بیانگر این است که MsPSO بهطور چشمگیری بهتر از الگوریتمهای سنتی PSO در شش تابع معیار، عمل میکند و رویکرد OptiFel میتواند یک مدل سیستم فازی خوب و با دقت بالا و توانایی تعمیم قوی را تولید کند.
در [47]، استفاده از کسب دانش بیولوژیکی برای سیستمهای فازی متکی بر گروه بهینهسازی انبوه اطلاعات ذرات (SI-PSO) پیشنهاد شده است. مدلهای مبتنی بر جمعیت به وجود دانش بهصورت ذرات توجه میکنند که در فضا برای رسیدن به کیفیت بالاتر حرکت میکنند. سیستمهای فازی SI-PSO برای کسب دانش در این کار بهصورت سیستمهای فازی انبوه (SFSs)، دستهبندی میشوند. بهطور خاص، دو روش آموزش KASIA (با استفاده از پایگاههای قانون بهصورت ذرات در PSO) و KARP (با استفاده از قوانین بهصورت ذرات در PSO) معرفی میشوند. عملکرد SFSs بهصورت یک مسئله مهم عملی با مجموعههای داده و آموزش خوشهبندی فازی در شبکههای محاسباتی مطالعه شده است. خوشهبندی فازی، با کاهش زمان اجرای حجم کاری و تخصیص هوشمند سیستمهای فازی، باعث بهبود عملکرد شبکه میشود. تصمیمات برنامهریزی براساس دانش سیستم فازی از این روش گرفته میشود. نهایتاً این مقاله نتایج مقایسه عملکرد SFSsهای مختلف را ارائه داده است و SFSs و سیستمهای فازی ژنتیک را مقایسه کرده است. نتایج شبیهسازی بیانگر این است که SFSs میتوانند به همگرایی سریعتر و با کیفیت بالاتر و کاهش تعداد پارامترهای کنترلی (که آنها را جایگزین خوبی برای سیستمهای فازی ژنتیک میسازد) دست یابند.PSO در کاربردهای دیگر از تحقیقات اخیر بهطور وسیعی استفاده شده است [53, 54].
3- الگوریتمهای بهینهسازی فراابتکاری
روشهای بهینهسازی، روشهای جستوجویی هستند که اهداف آنها یافتن جوابی برای مسئله بهینهسازی است؛ بهگونهایکه کمیت مورد بررسی بهینه شود. براساس شواهد و سوابق نتایج، بهطور متوسط، بهترین تقابل کیفیت و زمان برای بهینهسازی سیستمهای فازی با استفاده از الگوریتمهای فراابتکاری فراهم میشود.
3-1-الگوریتم تکامل تفاضلی
الگوریتم تکامل تفاضلی (DE) یکی از روشهای مؤثر بر مبنای جستوجو است [13]. همانند سایر الگوریتمهای تکاملی، این الگوریتم نیز با ایجاد یک جمعیت اولیه شروع به کار میکند. سپس با اعمال عملگرهایی شامل ترکیب، جهش و تقاطع نسل، نوزاد تشکیل میشود و در مرحله بعد که مرحله انتخاب نام دارد، نسل نوزاد با نسل والد برای تعیین میزان شایستگی (که تابع هدف آن را میسنجد) مقایسه میشود. سپس بهترین اعضا بهعنوان نسل بعدی وارد مرحله بعد میشوند. این روند تا رسیدن به نتایج مطلوب ادامه مییابد. در این قسمت بهترتیب، مراحل عملکرد این الگوریتم بیان شده است.
ایجاد جمعیت اولیه:
تعداد متغیرهای مسئله در این الگوریتم با D نشان داده شده است. هر یک از این متغیرها یک حد بالا و یک حد پایین دارند. جمعیت اولیه در اندازه NP در D بهصورت تصادفی مطابق رابطه (1) تشکیل میشود.
که عددی تصادفی در بازه ، و حدود بالا و پایین متغیرهای مسئله و تعداد اعضا هستند.
جهش و همبری:
در این الگوریتم میتوان از پنج استراتژی برای ترکیب و تولید نوزاد بهره جست [13]. در این مقاله از استراتژی شخص بهترین- شخص رندوم - شخص رندوم، برای انجام جهش بهصورت زیر استفاده شده است.
که در این رابطه، F فاکتور معیار نامیده میشود. ها اعضای انتخابی بهصورت تصادفی هستند .همچنین بهترین عضو جمعیت حاضر است.
برای هر متغیر از هر عضو جمعیت یک عدد رندوم K در بازه و یک عدد تصادفی u در بازه انتخاب شده اس.، همبری مطابق با رابطه زیر انجام میشود:
که j شماره هر متغیر از i امین عضو جمعیت است. همچنین عدد CR ثابت همبری است و عددی بین 0 و 1 انتخاب میشود.
مرحله تخمین و انتخاب:
در این مرحله، نوزادها و والدها با توجه به تابع هدف، ارزشدهی میشوند و درصورتیکه نوزاد، ارزشی بیش از والد داشته باشد، جایگزین والد میشود. در غیر این صورت، والد، خود به همراه نسل بعدی به مرحله بعد میرود.
در این رابطه، اندیس g نشاندهنده نسل است و جمعیت نسل جدید (نوزادها) و جمعیت نسل قبل (والدها) هستند. تابع f همان تابع هدف مسئله است.
تکرار:
انجام مراحل 2 و 3 تا رسیدن به ماکزیمم تکرار یا همگرایی کل جمعیت.
3-2-الگوریتم تکامل تفاضلی مبتنی بر تضاد:
بهطورکلی در رویکردهای بهینهسازی الگوریتم تکاملی، یک حدس تصادفی متحد برای جمعیت اولیه در نظر گرفته میشود. در هر نسل، هدف، شامل حرکت به سمت راهحل مطلوب است و روند تحقیق، زمانی خاتمه مییابد که برخی از معیارهای از پیش تعیین شده، قانعکننده باشند. زمان محاسبه معمولاً به حدس اولیه بستگی دارد؛ یعنی هرچه فاصله میان حدس اولیه و راهحل مطلوب بیشتر باشد، زمان بیشتری برای خاتمه طول میکشد و برعکس. یادگیری مبتنی بر تضاد، شانس شروع با جمعیت اولیۀ بهتر را ازطریق بررسی راهحلهای مخالف بیشتر میکند. رویکرد مشابه این میتواند نهتنها در راهحلهای اولیه استفاده شود، بلکه میتواند در جمعیت حاضر برای هر راهحلی بهطور مداوم به کار گرفته شود]19[.
تعریف عدد مخالف: فرض کنید یک عدد واقعی باشد، عدد مخالف است که آن را تعریف میکند.
تعریف نقطه مخالف:
فرض کنید نقطهای در فضای D بعدی باشد که در آن و نقطه مخالف عبارت است از:
بهینهسازی مبتنی بر تضاد:
فرض کنید یک نقطه در فضای d بعدی است؛ یعنی یک راهحل انتخابی در نظر بگیرید F(0) تابع تناسب است که برای اندازهگیری تناسب انتخابشدهها به کار گرفته میشود. بر طبق تعریف نقطه مخالف ، مخالف است. اکنون اگر باشد، آنگاه نقطه میتواند بهوسیلۀ جایگزین شود؛ در غیر اینصورت با ادامه میدهیم. ازاینرو، نقطه و نقطه مخالف آن بهطور همزمان ارزیابی میشوند تا با آنهایی که مناسبتر هستند ادامه دهیم.
شکل (1) نشاندهنده شبه کد الگوریتم تکامل تفاضلی مبتنی بر تضاد است [21]. در این الگوریتم بهمنظور تعیین اعضای جمعیت اولیه، ابتدا برای هر یک از ژنهای تشکیلدهنده اعضا، جمعیت همانند ژن یک حد بالا و یک حد پایین تعریف میشود؛ سپس ژنها بهطور تصادفی بین حد بالا و حد پایین بهصورت تعریف میشوند. برای استفاده از اعداد متضاد در طول آغاز جمعیت، بهازای هر یک در نظر میگیریم که با تعریف میشود. اگر تابع هزینه کمتر از تابع هزینه شد (یعنی اگر باشد)، آنگاه نقطه میتواند بهوسیلۀ جایگزین شود؛ در غیر اینصورت با ادامه میدهیم. ازاینرو، ژن و ژن مخالف آن بهطور همزمان ارزیابی میشوند تا با آنهایی که مناسبتر هستند، ادامه دهیم.
3-3- الگوریتم بهینهسازی انبوه ذرات
الگوریتم بهینهسازی انبوه ذرات (PSO) براساس رفتار اجتماعی دستههای پرندگان عمل میکند [14]. برای درک بهتر این تکنیک، سناریوی زیر را در نظر بگیرید: «دستهای پرنده بهطور تصادفی در محدوده خاصی به دنبال غذا میگردند. در این محدوده فقط یک تکه غذا وجود دارد و پرندگان هم از محل این غذا خبر ندارند؛ ولی در هر لحظه، فاصله خود با محل غذا را میدانند». در این حالت، یک استراتژی مناسب برای یافتن محل دقیق غذا، دنبالکردن آن پرندهای است که از بقیه پرندگان به غذا نزدیکتر است. درواقع، PSO هم از چنین سناریویی الهام گرفته است و راهحلی برای مسائل بهینهسازی ارائه میدهد. در PSO هر پرنده یک راهحل برای مسئله است. تمام پاسخهای موجود، یک مقدار شایستگی دارند که آن را از روی تابع شایستگی تعریفشده برای مسئله به دست میآورند. هدف این تکنیک، یافتن محلی است که بهترین مقدار شایستگی را در فضای مسئله دارد. این مقدار شایستگی در جهت و سرعت حرکت این پرندگان (پاسخهای مسئله) به سمت محل غذا (پاسخ بهینه) تأثیر مستقیم دارد. PSO با تعدادی پاسخ اولیه (ذرات) شروع به کار میکند و با حرکتدادن این پاسخها در تکرارهای متوالی، به دنبال یافتن جواب بهینه برای مسئله است. در هر تکرار دو مقدار و مشخص میشوند.
: مکان بهترین مقدار شایستگی که هر ذره در طول حرکت خود، به آن رسیده است.
: مکان بهترین شایستگی ذره در جمعیت فعلی.
پس از یافتن مقادیر فوق، سرعت حرکت ذرات از رابطه (4) و نیز مکان بعدی هر ذره از رابطه (5) محاسبه میشود.
در این روابط، مقادیر و اعدادی تصادفی بین صفر و یک هستند و ضرایب و هم که ضرایب یادگیری نامیده میشوند را معمولاً برابرِ دو مقداردهی میشود.
در هر تکرار از الگوریتم، سرعت حرکت ذرات (میزان تغییرات برای هر ذره) در هر بعد را میتوان با یک مقدار از پیش تعیین شده محدود کرد. در این حالت اگر سرعت هر ذره در هر بعد، از این حد فراتر رفت، با جایگزین میشود.
شمارشگر تعداد تکرارها را برابر صفر قرار میدهیم. t =o پارامترهای کنترلی را مقداردهی میکنیم. تعداد ns عضو را به وجود میآوریم و آن را بهعنوان اعضای جمعیت اولیه C(0) در نظر میگیریم. تا هنگامی که شرایط خاتمه برآورده نشدهاند، مراحل زیر را انجام میدهیم: به ازای هر عضو که عضو C(t) است، یک به دست میآوریم و مراحل زیر را انجام میدهیم: تابع هزینه و را محاسبه میکنیم و با مناسبترین اعضا مراحل زیر را ادامه میدهیم: بردار آزمون ui(t) را با استفاده از عملگر جهش به وجود میآوریم. عضو فرزند X'i(t) را با استفاده از عملگر تقاطعی به دست میآوریم. فرزندان و متضادشان را در تابع هزینه با یکدیگر مقایسه میکنیم و بهترین جواب را به دست میآوریم. اگر تابع هزینه فرزند f(X'i(t)) از تابع هزینه والد f(Xi(t)) بهتر بود، آنگاه: عضو فرزند X'i(t) را به اعضای نسل بعدی C(t+1) اضافه میکنیم. در غیر این صورت: عضو والد Xi(t) را به اعضای نسل بعدی اضافه میکنیم. پایان اگر. پایان حلقه تکرار (به ازای). پایان حلقه تکرار (تا هنگامی که). ژن j را از مجموعه (0, nx-1) بهطور تصادفی انتخاب میکنیم و آن را به مجموعه J اضافه میکنیم. تا هنگامی که است، مراحل زیر را تکرار میکنیم. ژن 1+ j را به مجموعه J اضافه میکنیم. باقیمانده ژن j+1 بر nx را بهعنوان ژن j قرار میدهیم. پایان حلقه تکرار (تا هنگامی که). |
شکل (1): شبه کد الگوریتم تکامل تفاضلی مبتنی بر تضاد
3-4- رویکردترکیب الگوریتمهای تکامل تفاضلی مبتنی بر تضاد و بهینهسازی انبوه ذرات
در این مقاله، ترکیب الگوریتمهای تکامل تفاضلی مبتنی بر تضاد و بهینهسازی انبوه ذرات[8]ارائه شده است. ترکیب به معنای بهکارگیری همزمان دو یا چند روش برای استفاده از مزایا و کمرنگکردن معایب آنها است. در الگوریتم پیشنهادی، جمعیت اولیه در ابتدا بهصورت تصادفی تولید میشوند؛ سپس با اعمال مفهوم یادگیری مبتنی بر تضاد، راهحلهایی از همین جمعیت نیز، بررسی و مناسبترین اعضا در مرحله اول با مقایسه مقادیر تابع هزینه انتخاب میشوند. این موضوع، شانس بازدید و یا حتی بازبینی مناطق کشفنشده از فضای جستوجو را فراهم میآورد و منجر به سرعتبخشیدن به میزان همگرایی و دستیابی به یک تقریب بهتر در الگوریتم تکامل تفاضلی خواهد شد؛ درواقع، زمان محاسبه در الگوریتمهای تکاملی به حدث اولیه بستگی دارد و هرچه فاصله میان حدث اولیه و راهحل مطلوب کمتر باشد، زمان کمتری برای خاتمه طول میکشد. یادگیری مبتنی بر تضاد، شانس شروع با جمعیت اولیه بهتر را ازطریق بررسی راهحلهای متفاوت بیشتر میکند. به این صورت که پس از ارزیابی جمعیت اولیه و اعمال مفهوم مبتنی بر تضاد، جمعیت جدید بهوجود میآید و با ارزیابی مجدد تابع هزینه، مناسبترین اعضا انتخاب میگردند. سپس تعدادی از اعضای جمعیت نهایی بهعنوان والد، استفاده میشوند و عملگرهای جهش و تقاطع الگوریتم تکامل تفاضلی بر روی آنها اعمال میشوند و جمعیت فرزندان به وجود میآید. با درنظرگرفتن مفهوم یادگیری مبتنی بر تضاد به روش قبل و مشخصشدن مناسبترین فرزندان در این مرحله، در ادامه، بهترین اعضای جمعیت والدین و فرزندان (هر عضوی که دارای مقدار تابع هزینه کمتری باشد) برای حضور در مرحله بعدی انتخاب میشوند. سپس عملگرهای الگوریتم بهینهسازی انبوه ذرات با الگوی جستوجوی محلی بر روی این جمعیت جدید اعمال میشوند و همین چرخه تا حصول شرایط خاتمۀ رویکرد پیشنهادی تکرار میشود. جزئیات دقیق گامهای اجرایی، فلوچارت الگوریتم و شبه کد الگوریتم ترکیبی تکامل تفاضلی مبتنی بر تضاد و بهینهسازی انبوه ذرات در شکل (2) نشان داده شده است [51].
4- طراحی سیستم فازی با بهرهگیری از رویکرد پیشنهادی
4-1- سیستم فازی بهکار برده شده
سیستم فازی بهکار بردهشده از نوع سوگنو است. در این سیستم فازی، امین قاعده فازی با ، مشخص و بهصورت زیر بیان میشود:
شکل (2): فلوچارت الگوریتم ترکیبی تکامل تفاضلی مبتنی بر تضاد و بهینهسازی انبوه ذرات
که در آن ، ... ، متغیرهای ورودی، متغیر خروجی، یک مجموعه فازی و تابع در بخش تالی یک سیستم فازی نوع TSK مرتبه صفر بهصورت (مقدار قطعی[ix]) و مرتبه یک بهصورت است. مجموعه فازی بهکاررفته، تابع عضویت گوسی است که بهصورت زیر تعریف میشود:
که در آن مرکز و پهنای مجموعه فازی گوسی هستند.
اگر در موتور استنتاج، عملگر AND فازی با حاصلضرب جبری در تئوری فازی پیادهسازی شود، برای ورودی معین نیروی آتش یا وزن تأثیر قاعدهام بهصورت زیر محاسبه میشود:
اگر سیستم فازی دارای r قاعده باشد، خروجی سیستم فازی با روش غیرفازی سازی میانگین وزندارشده بهصورت زیر محاسبه میشود:
که در آن نیروی آتش یا وزن تأثیر قاعدهام و مقدار تالی قاعده فازی در معادله (7) است.
4-2- روش پیشنهادی دو مرحلهای برای طراحی سیستم فازی
در این بخش، جزئیات روش پیشنهادیِ دو مرحلهای برای طراحی سیستم فازی توضیح داده شده است که دربردارندة خوشهبندی کاهشی و الگوریتم ترکیبی تکامل تفاضلی مبتنی بر تضاد و بهینهسازی انبوه ذرات است.
طراحی سیستم فازی از دادههای آموزش دربردارندة تعیین قواعد فازی و بهینهسازی همه پارامترها در هر قاعده فازی است. سیستم فازی معادله (7) که دربردارندة riمتغیر ورودی و rقاعده فازی است، در کل دارای پارامتر است که باید بهینهسازی شوند. این پارامترها میتوانند با بردار زیر توصیف شوند:
مراحل روش پیشنهادی دو مرحلهای برای طراحی سیستم فازی در زیر بیان شده است:
مرحله اول: ابتدا دادهها از سیستم بهدست میآید و سپس ورودیهای سیستم فازی تعیین میشود و در ادامه، این دادهها با تکنیک خوشهبندی کاهشی به چندین خوشه تقسیم میشوند (برای تفکیکبندی فضای ورودی از تکنیک خوشهبندی کاهشی استفاده میشود) که هر خوشه بیانکننده یک قاعده فازی در سیستم فازی است.با اتمام فرآیند خوشهبندی، مراکز خوشهها میتوانند برای تشکیل مراکز توابع عضویت در سیستم فازی استفاده شوند. در این مقاله، مراکز توابع عضویت با استفاده از الگوریتم ترکیبی تکامل تفاضلی مبتنی بر تضاد و بهینهسازی انبوه ذرات تولید شدهاند. در این مرحله سیستم فازی خام بهدست میآید.
مرحله دوم: در این مرحله برای بهینهسازی پارامترهای بخش مقدم و تالی سیستم فازی خام از الگوریتم ترکیبی تکامل تفاضلی مبتنی بر تضاد و بهینهسازی انبوه ذرات توسعه داده شده استفاده میشود.
برای مثال، اگر پس از فرآیند خوشهبندی دو خوشه بهدست آید، این سیستم فازی دارای دو قاعده فازی و است که بهصورت زیر تعریف میشود:
که در آن و متغیرهای ورودی، متغیر خروجی، یک مجموعه فازی و یک مقدار قطعی است. مجموعه فازی بهکاررفته، تابع عضویت گوسی است که بهصورت رابطه (8) تعریف میشود که در آن مرکز و پهنای تابع عضویت گوسی هستند.
سیستم فازی معادله (12) که دربردارندة متغیر ورودی و قاعده فازی است، در کل دارای پارامتر است که باید بهینهسازی شوند .
4-3- شبیهسازی
در این بخش، سیستم فازی طراحیشده با الگوریتم بهینهسازی ترکیبی، شبیهسازی شده است. همچنین برای ارزیابی عملکرد سیستم فازی طراحی شده با الگوریتم بهینهسازی ترکیبی، مقایسهای با سایر روشها انجام شده است.
در این بخش، چهار مثال برای نشاندادن عملکرد روش پیشنهادی ارائه شده است. در مثال اول و دوم، سیستم فازی طراحیشده بهعنوان کنترلکننده فازی به کار رفته است. در این دو مثال، فرآیندها غیر خطی هستند و دادههای آموزش بهصورت آنلاین در پیشروی تولید میشوند و هدف، کنترل و ردیابی مسیر مطلوب است. همچنین سیستم فازی به کار برده شده در مثال اول و دوم، نوع سوگنو مرتبه صفر است. در ادامه، دو مثال مشهور که برای ارزیابی عملکرد و قابلیتهای انواع مدلهای فازی بهکار میروند، ارائه شده است. در مثال سوم، سیستم فازی طراحیشده با روش پیشنهادی برای پیشبینی مقادیر آینده سری زمانی آشوبناک مکی-گلس[x] و در مثال چهارم، برای پیشبینی نرخ رهن خانه[xi] به کار رفته است. درخور ذکر است در مثالهای سوم و چهارم، سیستم فازی به کار برده شده از نوع سوگنو مرتبه یک است.
4-3-1- مثال اول: کنترل ردیاب پلنت غیرخطی
فرآیند تحت کنترل در مراجع [31] و [32] و [48] با معادله زیر توصیف شده است:
که در آن ، ، سیگنال کنترل و است. هدف کنترل ردیابی خروجی مطلوب زیر:
بهوسیلة یک کنترلکننده فازی است.
کنترلکننده فازی طراحیشده برای این مثال، دو متغیر ورودی و یک متغیر خروجی دارد که متغیرهای ورودی این کنترلکننده بهصورت زیر تعریف میشوند:
مقدار خروجی سیستم فازی ، ابتدا به کمک رابطة (10)، محاسبه و سپس برای کنترل خروجی پلنت ارسال میشود تا مسیر حرکت مطلوب رابطة (14) تعقیب شود.
پارامترهای سیستم فازی با استفاده از الگوریتم HODEPSO بهینهسازی شدهاند. برای ارزیابی عملکرد کنترلکننده فازی طراحیشده، از RMSE استفاده شد که بهصورت زیر تعریف میشود:
پارامترهای الگوریتم HODEPSO برای این مثال در جدول (1) ارائه شده است. جدول (2)، RMSE میانگین 50 اجرا را نشان میدهد. در شکل (3)، RMSE میانگین در هر ارزیابی را نشان میدهد. شکل (4) بیانکنندة بهترین نتیجة کنترلی است که در آن مسیرهای حرکت خروجی کنترلشده و مطلوب بسیار به هم نزدیکاند.
شکل (3): مقادیر RMSE بهدستآمده در هر تکرار با الگوریتم ترکیبی، الگوریتم بهینهسازی انبوه ذرات، الگوریتم تکامل تفاضلی و الگوریتم تکامل تفاضلی مبتنی بر تضاد برای مثال کنترل ردیاب پلنت غیرخطی
جدول (1): پارامترهای روش پیشنهادی برایمثال کنترل ردیاب پلنت غیرخطی
پارامترهای HODEPSO برای مثال 1 |
|
|
10 |
PopSize |
1 |
0.2 |
Beta_min |
2 |
0.8 |
beta_max |
3 |
0.2 |
Pr |
4 |
1.49 |
C1 |
5 |
1.49 |
C2 |
6 |
0.72 |
W |
7 |
500 |
MaxIt |
8 |
با توجه به نتایج شبیهسازی در شکل (3) مشاهده میشود که الگوریتم ترکیبی با سرعت بیشتری به جواب بهینه همگرا میشود و عملکرد بهتری نسبت به الگوریتم تکامل تفاضلی مبتنی بر تضاد، الگوریتم بهینهسازی انبوه ذرات و الگوریتم تکامل تفاضلی دارد.
همین مثال در مراجع [31] و [32] و [48] مطالعه شده است. مقایسه نتایج بهدستآمده از این روشها و روش پیشنهادی در جدول (2) ارائه شده است. همچنین نتیجة کنترلکننده فازی طراحیشده با روش پیشنهادی در شکل (4) نشان داده شده است.
جدول (2): مقایسه نتایج روشهای مختلف برای مثال کنترل ردیاب پلنت غیرخطی
میانگین RMSE |
تعداد قوانین |
روش |
|
0.0260 |
5 |
[31] |
1 |
0.0330 |
5 |
[32] |
2 |
0.0223 |
5 |
[48] |
3 |
0.0202 |
4 |
Our Method (HODEPSO) |
4 |
0.0348 |
4 |
Method (ODE) |
5 |
0.0367 |
4 |
Method (PSO) |
6 |
0.0417 |
4 |
Method (DE) |
7 |
شکل (4): نتیجة کنترلکننده فازی با استفاده از روش پیشنهادی برای مثال کنترل ردیاب پلنت غیرخطی
عملکرد HODEPSO با عملکرد ODE، PSO و DE مقایسه شد که در مسائل کنترلی یکسانی به کار رفتند. در کارهای قبلی انجامشده در مراجع [31] و [32] و [48] بر روی این مثال، تعداد قواعد فازی برابر با 5، تعدادکل پارامترهای بهینهسازی برابر با 25 و کمترین RMSE بهدستآمده برای آنها برابر با 0.0223 بود؛ ولی در روش پیشنهادی، تعداد قواعد فازی برابر با 4، تعداد کل پارامترهای بهینهسازی برابر با 20 است.
در روش پیشنهادی برای این مثال، علاوه بر سادگی سیستم فازی (کاهش تعداد قواعد فازی)، مقدار RMSE نیز به 0.0202 کاهش یافت. با توجه به نتایج ارائهشده در جدول 2، روش پیشنهادی به RMSE متوسط کمتری در مقایسه با سایر روشها دست یافته است.
4-3-2- مثال دوم: کنترل درجه حرارت آب حمام
کنترل درجه حرارت آب حمام در مراجع [31] و [32] و [48] با معادله زیر توصیف شده است:
که در آن
که ورودی کنترل پلنت و است. پارامترهای این مثال بهصورت ، ، ، و تناوب نمونهبرداری ثانیه است. درجه حرارت آب مرجع بهصورت زیر توصیف شده است:
کنترلکننده فازی طراحیشده برای این مثال، دو متغیر ورودی و یک متغیر خروجی دارد. متغیرهای ورودی این کنترلکننده بهصورت زیر تعریف شدهاند:
و متغیر خروجی آن است که در آن، متغیرهای ورودی به بازه و متغیر خروجی به بازه محدود شده است. برای ارزیابی عملکرد کنترلکننده فازی طراحیشده با روش پیشنهادی از SAE[xii] استفاده شد که بهصورت زیر تعریف میشود:
پارامترهای روش پیشنهادی برای این مثال در جدول (3) ارائه شده است. برای نشاندادن کارایی الگوریتم ترکیبی نسبت به تکتک الگوریتمهای تکامل تفاضلی مبتنی بر تضاد و بهینهسازی انبوه ذرات در مرحله دوم روش پیشنهادی (بهینهسازی پارامترهای سیستم فازی)، هر یک از این الگوریتمها بهصورت جداگانه به کار رفتند. نتایج بهکارگیری این الگوریتمها در مرحله دومِ روش پیشنهادی با میانگین 50 بار اجرا در شکل 5 نشان داده شده است.
جدول (3): پارامترهای روش پیشنهادی برایمثال کنترل درجه حرارت آب حمام
پارامترهای HODEPSO برای مثال 2 |
|
|
30 |
PopSize |
1 |
0.2 |
beta_min |
2 |
0.8 |
beta_max |
3 |
0.2 |
Pr |
4 |
1.49 |
C1 |
5 |
1.49 |
C2 |
6 |
0.72 |
W |
7 |
500 |
MaxIt |
8 |
شکل (5): مقادیر SAE بهدستآمده در هر تکرار با الگوریتم ترکیبی، الگوریتم بهینهسازی انبوه ذرات و الگوریتم تکامل تفاضلی و الگوریتم تکامل تفاضلی مبتنی بر تضاد برای مثال کنترل درجه حرارت آب حمام
همین مثال در مراجع [31] و [32] و [48] مطالعه شده است. مقایسه نتایج بهدستآمده از این روشها و روش پیشنهادی در جدول (4) ارائه شده است. همچنین نتیجة کنترلکننده فازی طراحیشده با روش پیشنهادی در شکل (6) نشان داده شده است.
جدول (4): مقایسه نتایج روشهای مختلف برای مثال کنترل درجه حرارت آب حمام
میانگین SAE |
تعداد قوانین |
روش |
|
38.9 |
9 |
[31] |
1 |
78.5 |
9 |
[32] |
2 |
35.4 |
9 |
[48] |
3 |
29.6 |
8 |
Our Method (HODEPSO) |
4 |
54.3 |
8 |
Method (ODE) |
5 |
74.8 |
8 |
Method (PSO) |
6 |
79.8 |
8 |
Method (DE) |
7 |
شکل (6): نتیجه کنترلکننده فازی با استفاده از روش پیشنهادی برای مثال کنترل درجه حرارت آب حمام
در کارهای قبلی انجامشده در مراجع [31] و [32] و [48] برای این مثال، تعداد قواعد فازی برابر با 9، تعداد کل پارامترهای بهینهسازی برابر 45 و کمترین SAE بهدستآمده برابر35.4 بود؛ ولی در روش پیشنهادی برای این مثال، تعداد قواعد فازی برابر با 8 و تعداد کل پارامترهای بهینهسازی برابر 40 است و در روش پیشنهادی، علاوه بر سادگی سیستم فازی (کاهش تعداد قواعد فازی)، مقدار SAE نیز به 29.6 کاهش یافت. با توجه به نتایج ارائهشده در جدول 4، روش پیشنهادی به SAE متوسط کمتری در مقایسه با سایر روشها دست یافته است.
4-3-3- مثال سوم: پیشبینی مقادیر آینده سری زمانی آشوبناک مکی - گلس
در این مثال، سیستم فازی طراحیشده برای پیشبینی مقادیر آینده، یک سری زمانی آشوبناک مکی-گلس به کار رفته است. این سری زمانی با استفاده از معادله دیفرانسیل تأخیری مکی - گلس بهصورت زیر تولید شد:
مسئله پیشبینی سری زمانی، مبتنی بر معادله دیفرانسیل مکی -گلس، یک معیار مشهوری برای مقایسه قابلیتهای مدلهای فازی مختلف است. از سری زمانی آشوبناک مکی - گلس ، 1000 جفت داده ورودی - خروجی استخراج شد. 500 جفت داده اول برای آموزش سیستم فازی به کار رفتند؛ درحالیکه مابقی 500 جفت داده دیگر بهعنوان دادههای آزمون برای ارزیابی عملکرد مدل فازی در پیشبینی به کار رفتند. مدل فازی طراحیشده در این مثال دارای چهار متغیر ورودی همانند مراجع [49] و [48] بهصورت زیر است:
بهمنظور ارزیابی عملکرد مدل فازی طراحیشده از RMSE استفاده شد که بهصورت زیر تعریف شده است:
که در آنri تعداد دادهها، خروجی واقعی و خروجی مدل فازی هستند.
پارامترهای روش پیشنهادی برای این مثال در جدول (5) ارائه شده است. برای نشاندادن کارایی الگوریتم ترکیبی نسبت به تکتک الگوریتمهای تکامل تفاضلی مبتنی بر تضاد، بهینهسازی انبوه ذرات و تکامل تفاضلی در مرحله دوم روش پیشنهادی (بهینهسازی پارامترهای سیستم فازی)، هر یک از این الگوریتمها بهصورت جداگانه به کار رفتند. نتایج بهکارگیری این الگوریتمها در مرحله دوم، روش پیشنهادی با میانگین 30 بار اجرا در شکل (7) نشان داده شده است.
همین مثال در مراجع [49] و [48] مطالعه شده است. مقایسه نتایج بهدستآمده از این روشها و روش پیشنهادی در جدول (6) ارائه شده است. مقایسه میان خروجی واقعی و خروجی مدل فازی برای دادههای آموزش در شکل 8 و مقایسه میان خروجی واقعی و خروجی مدل فازی برای دادههای آزمون در شکل (9) نشان داده شده است.
جدول (5): پارامترهای روش پیشنهادی برایمثال پیشبینی مقادیر آینده سری زمانی آشوبناک مکی - گلس
پارامترهای HODEPSO برای مثال 3 |
|
|
0.45 |
ra |
1 |
30 |
PopSize |
2 |
0.2 |
beta_min |
3 |
0.8 |
beta_max |
4 |
0.2 |
Pr |
5 |
1.49 |
C1 |
6 |
1.49 |
C2 |
7 |
0.72 |
W |
8 |
500 |
MaxIt |
9 |
شکل (7): مقادیر RMSE بهدستآمده در هر تکرار با الگوریتم ترکیبی، الگوریتم بهینهسازی انبوه ذرات و الگوریتم تکامل تفاضلی و الگوریتم تکامل تفاضلی مبتنی بر تضاد برای مثال پیشبینی مقادیر آینده سری زمانی آشوبناک مکی – گلس
مدل فازی طراحیشده در این مثال، دارای 10 قاعده فازی و هر قاعده فازی دارای 13 پارامتر بهینهسازی در بخش مقدم و تالی است؛ بنابراین، تعداد کل پارامترهای بهینهسازی برابر 130 است. با توجه به نتایج ارائهشده در جدول (6)، روش پیشنهادی برای دادههای آموزش به RMSE ، 9.23E-4 و برای دادههای آزمون به RMSE، 9.81E-4 دست یافته است. با توجه به نتایج بهدستآمده مشاهده میشود که مدل فازی طراحیشده با روش پیشنهادی، عملکرد بهتری نسبت به مدلهای فازی ارائهشده در مراجع [48] و [49] دارد و به RMSE کمتری در مقایسه با آنها دست یافته است.
شکل (8): مقایسه میان خروجی واقعی و خروجی مدل فازی برای دادههای آموزش در مثال پیشبینی مقادیر آینده سری زمانی آشوبناک مکی - گلس
جدول (6): مقایسه نتایج روشهای مختلف برای مثال پیشبینی مقادیر آینده سری زمانی آشوبناک مکی - گلس
RMSE (تست) |
RMSE (آموزش) |
تعداد قوانین |
روش |
|
5.350E-3 |
5.380E-3 |
3 |
[49] |
1 |
6.100E-3 |
9.400E-3 |
4 |
[48] |
2 |
3.900E-3 |
--- |
10 |
[48] |
3 |
9.810E-4 |
9.230E-4 |
10 |
Our Method (HODEPSO) |
4 |
6.640E-3 |
6.510E-3 |
10 |
Method (ODE) |
5 |
8.520E-3 |
9.460E-3 |
10 |
Method (PSO) |
6 |
9.950E-3 |
9.780E-3 |
10 |
Method (DE) |
7 |
شکل (9): مقایسه میان خروجی واقعی و خروجی مدل فازی برای دادههای آزمون در مثال پیشبینی مقادیر آینده سری زمانی آشوبناک مکی – گلس
4-4-4- مثال چهارم: پیشبینی نرخ رهن خانه
این مثال، یک مسئلۀ اقتصادی واقعی است که نرخ رهن مرسوم 30 ساله در آمریکا را پیشبینی میکند. در مدل پیشبینی، 15 ورودی و یک خروجی وجود دارد. یک پایگاه دادة واقعی، دربردارندة 1049 مثال بوده است و آن را میتوان از سایت Keel به آدرس http://www.keel.es/ دانلود کرد. 840 نمونة اول بهعنوان دادههای آموزش و 209 نمونة باقیمانده بهعنوان دادههای تست به کار رفتند.
مدل فازی طراحیشده در این مثال، همانند مدل ارائهشده در مرجع [49] است.
برای ارزیابی عملکرد مدل فازی طراحیشده از RMSE[xiii] استفاده شد که بهصورت زیر تعریف میشود:
که در آن riتعداد دادهها، خروجی واقعی و خروجی مدل فازی هستند.
پارامترهای روش پیشنهادی برای این مثال در جدول (7) ارائه شده است. برای نشاندادن کارایی الگوریتم ترکیبی نسبت به تکتک الگوریتمهای تکامل تفاضلی مبتنی بر تضاد، بهینهسازی انبوه ذرات و تکامل تفاضلی، در مرحله دوم روش پیشنهادی (بهینهسازی پارامترهای سیستم فازی)، هر یک از این الگوریتمها بهصورت جداگانه به کار رفتند. نتایج بهکارگیری این الگوریتمها در مرحله دوم روش پیشنهادی با میانگین 10 بار اجرا در شکل (10) نشان داده شده است.
جدول (7): پارامترهای روش پیشنهادی برایمثال مدلسازی پیشبینی رهن خانه
پارامترهای HODEPSO برای مثال 4 |
|
|
0.35 |
ra |
1 |
40 |
PopSize |
2 |
0.2 |
beta_min |
3 |
0.8 |
beta_max |
4 |
0.2 |
Pr |
5 |
1.49 |
C1 |
6 |
1.49 |
C2 |
7 |
0.72 |
W |
8 |
500 |
MaxIt |
9 |
شکل (10): مقادیر RMSE بهدستآمده در هر تکرار با الگوریتم ترکیبی، الگوریتم بهینهسازی انبوه ذرات و الگوریتم تکامل تفاضلی و الگوریتم تکامل تفاضلی مبتنی بر تضاد برای مثال مدلسازی پیشبینی رهن خانه
همین مثال مدلسازی در مرجع [49] مطالعه شده است. مقایسه نتایج بهدستآمده از این روشها و روش پیشنهادی در جدول (8) ارائه شده است.
مقایسه میان خروجی واقعی و خروجی مدل فازی برای دادههای آموزش در شکل (11) و مقایسه میان خروجی واقعی و خروجی مدل فازی برای دادههای آزمون در شکل (12) نشان داده شده است.
شکل (11): مقایسه میان خروجی واقعی و خروجی مدل فازی برای دادههای آموزش در مثال مدلسازی پیشبینی نرخ رهن خانه
مدل فازی طراحیشده، 5 قاعده فازی دارد و مجموع تعداد پارامترهای بهینهسازی در بخش مقدم و تالی برابر با 66 است. با توجه به نتایج ارائهشده در جدول (8)، روش پیشنهادی برای دادههای آموزش به RMSE، 0.0614 و برای دادههای آزمون به RMSE، 0.0828 دست یافته است. با توجه به نتایج بهدستآمده مشاهده میشود که مدل فازی طراحیشده با روش پیشنهادی عملکرد تقریباً بهتری نسبت به مدلهای فازی ارائهشده در مراجع [49] و [48] دارد و به RMSE کمتری در مقایسه با آن دست یافته است.
جدول (8): مقایسه نتایج روشهای مختلف برای مثال مدلسازی پیشبینی رهن خانه
RMSE (تست) |
RMSE (آموزش) |
تعداد قوانین |
روش |
|
0.0913 |
0.0763 |
5 |
[49] |
1 |
0.0828 |
0.0614 |
5 |
Our Method (HODEPSO) |
2 |
0.1117 |
0.0921 |
5 |
Method (ODE) |
3 |
0.1245 |
0.1100 |
5 |
Method (PSO) |
4 |
0.1302 |
0.1136 |
5 |
Method (DE) |
5 |
شکل (12): مقایسه میان خروجی واقعی و خروجی مدل فازی برای دادههای آزمون در مثال مدلسازی پیشبینی نرخ رهن خانه
ازآنجاییکه سیستمهای فازی میتوانند توابع غیرخطی را با هر پیچیدگی دلخواهی مدل کنند، روش بسیار قدرتمندی هستند. در مقایسه با سایر روشهای تقریب، قدرت اصلی آنها این است که براساس تجربه افراد خبره ساخته میشوند. تعریف یک سیستم مبتنی بر دانش تخصصی با سیستمهای فازی، بسیار آسانتر از سایر روشهای منطقی است. قدرت سیستمهای فازی از قابلیت آنها برای بیان مفاهیم مبهم و برقراری روابطی میان آنها نشأت میگیرد. با اینکه سیستمهای فازی روش بسیار قدرتمندی هستند، برخی محدودیتها را نیز دارند. یکی از محدودیتهای اصلی، مشکل ابعاد است و هنگامی مطرح میشود که تعداد متغیرهای ورودی بیش از حد زیاد باشد. توجه داشته باشید که مشکل از تعریف اصلی سیستمهای فازی نیست. سیستمهای فازی با هر تعداد متغیرهای ورودی میتوانند تعریف شوند. مشکل از آنجایی به وجود میآید که اگر تعداد متغیرهای ورودی بیش از حد زیاد باشد، استخراج مجموعه قواعد لازم برای طراحی سیستم فازی توسط تجربه سخت میشود. به هر حال، تعداد قواعد فازی در تعریف کلاسیک سیستمهای فازی با افزایش تعداد متغیرهای ورودی بهصورت نمایی افزایش مییابد و باعث میشود تقریباً فرآیند تعریف مجموعه قواعد فازی، مدیریت نشود.
در این مقاله از سیستم فازی سوگنو استفاده شده است. مدلهای فازی سوگنو که دربردارندة قواعد اگر - آنگاه فازی است، بهصورت گستردهای برای حل مسائل مدلسازی و کنترل به کار میروند. با توجه به ساختار ساده و غیرخطی آن، مدل فازی سوگنو قادر به تقریب و پیشبینی سیستمهای پیچیده با استفاده از تعداد متوسط قواعد است. مشکل اصلی در طراحی مدلهای فازی، پیداکردن یک پایگاه قواعد فازی مناسب برای یک عمل خاص است. روش آزمون و خطا با بار محاسباتی بالا و کارایی پایین بهصورت گستردهای در اکثر موارد استفاده میشود. بهطورکلی طراحی سیستم فازی میتواند به دو مرحله آموزش ساختار و تنظیم پارامتر تقسیم شود. مرحله آموزشِ ساختار دربردارندة تعیین تعداد قواعد فازی و پارتیشنبندی فضای ورودی است. مرحله دوم، دربردارندة تعیین توابع عضویت بخش مقدم و محاسبه پارامترهای تالی است. الگوریتمهای فراابتکاری تکنیکهای جستوجوی سراسری برای حل مسائل بهینهسازی هستند. این الگوریتمها با توجه به مقاومبودن و قابلیت جستوجو، برای طراحی سیستمهای فازی به کار برده شدهاند.
6- نتیجهگیری و پیشنهادات
در این مقاله، روش دو مرحلهای مبتنی بر خوشهبندی کاهشی و الگوریتم ترکیبی تکامل تفاضلی مبتنی بر تضاد و بهینهسازی ازدحام ذرات برای طراحی مدل فازی سوگنو ارائه شده است. در مرحله اول، روش پیشنهادی خوشهبندی کاهشی برای پارتیشنبندی فضای ورودی و تعیین تعداد قواعد فازی به کار رفته است. در مرحله دوم، برای تنظیم پارامترهای بخش مقدم و تالی سیستم فازی از الگوریتم ترکیبی تکامل تفاضلی مبتنی بر تضاد و بهینهسازی ازدحام ذرات توسعه دادهشده استفاده شده است. با استفاده از ترکیب این دو الگوریتم، تنوع جمعیتی ایجاد میشود و باعث فرار الگوریتم از دام بهینه محلی و ایجاد یک جستوجوی مؤثر در فضای راهحل میشود. همچنین ضمن حفظ دقت پاسخها الگوریتم سریعتر به جواب بهینه همگرا میشود. در ادامه برای ارزیابی عملکرد روش پیشنهادی چهار مثال شبیهسازی ارائه شده است. در مثال اول و دوم از سیستم فازی طراحیشده بهعنوان کنترلکننده فازی و در مثال سوم برای پیشبینی مقادیر آینده، سری زمانی آشوبناک مکی - گلس و در مثال چهارم برای پیشبینی نرخ رهن استفاده شده است. ابتدا برای نشاندادن کارایی الگوریتم ترکیبی نسبت به تکتک الگوریتمهای تکامل تفاضلی مبتنی بر تضاد و بهینهسازی ازدحام ذرات، هر کدام از این الگوریتمها بهصورت جداگانه در مرحله دوم روش پیشنهادی (تنظیم پارامترهای سیستم فازی) به کار رفتند. نتایج، برتری الگوریتم ترکیبی را نسبت به تکتک الگوریتمهای تکامل تفاضلی مبتنی بر تضاد و بهینهسازی ازدحام ذرات نشان میدهد. درنهایت، برای ارزیابی عملکرد روش پیشنهادی با استفاده از الگوریتم ترکیبی، نتایج حاصل از روش پیشنهادی با برخی کارهای انجامشده در این زمینه مقایسه شده است. نتایج، نشاندهنده عملکرد مناسب روش پیشنهادی نسبت به سایر روشها است.
برای پیشنهادهایی جهت ادامه کار، موارد زیر بیان میشوند:
[1] Genetic Algorithm (GA)
[2] Differential Evolution (DE)
[3] Particle Swarm Optimization (PSO)
[4] Swarm Intelligence (SI)
[5] Ant Colony Optimization (ACO)
[6] Hybridization
[7] Cleveland
[8] HODEPSO
[ix] Crisp
[x] Chaotic Mackey-Glass Time Series
[xi] Mortgage
[xii] Sum of Absolute Error
[xiii] Root Mean Squares Error