شکل ۲-۷:تغییرات اکسرژی و ضریب عملکرد سیستم بر حسب نسبت دمای سیال عامل [۱۱]
شکل ۲-۸:تغییرات اکسرژی و ضریب عملکرد سیستم بر حسب نسبت دمای سیال عامل [۱۱]
در این پژوهش سه سناریو برای بهینه سازی در نظر گرفته شد که ۲ سناریو آن مربوط به سیستم تبرید با چهار سطح دمایی و سناریوی دیگر مربوط به سیستم تبرید با سه سطح دمایی بوده است که به تفصیل در مورد این سناریوها در فصل ۴ بحث می شود.
۳-۱- مقدّمه
در سال های دهه ۱۹۵۰ و ۱۹۶۰ دانشمندان متعددی در رشته کامپیوتر بر روی سیستم های تکاملی[۱۴] برای حل کردن مسایل بهینه سازی مهندسی تحقیق میکردند. ایده اساسی آنان بر مبنای نظریه تکاملی Darwin این بود که میتوان با بهره گرفتن از عملیاتی که از تناسل ژنتیکی طبیعی[۱۵] و انتخاب طبیعی[۱۶] الهام گرفته شده است جمعیتی از پاسخ های منتخب برای یک مسأله را بهبود بخشید. در دهه ۱۹۶۰ Rechenberg (1965 و ۱۹۷۳) استراتژی تکاملی[۱۷] را به عنوان روشی برای بهینه سازی پارامترهای ساختاری وسایل چون ایرفویل[۱۸] ارائه نمود که این ایده پس از آن توسط Schwefel (1975 , 1977) توسعه یافت]۱۲-۱۴[.
والش[۱۹] و همکارانش برنامه ریزی تکاملی را برای ماشین های وضعیت محدود توسعه دادند. همچنین تحقیق بر روی الگوریتم ژنتیک از سوی محققان دیگری پیگیری میشد. استراتژی تکاملی، برنامه ریزی تکاملی[۲۰] و الگوریتم ژنتیک همگی اساس مبحث محاسبه تکاملی[۲۱] را تشکیل میدهند. الگوریتم های ژنتیکی در دهه ۱۹۶۰ توسط John Holland معرفی گردید و پس از آن طی دهه های ۱۹۶۰ و ۱۹۷۰ توسط هلند و دانشجویانش در دانشگاه میشیگان توسعه داده شد. برخلاف استراتژی تکاملی و برنامه ریزی تکاملی هدف اصلی هلند از الگوریتم ژنتیک حل مسایل خاص نبود بلکه او به مطالعه اصل تطابق[۲۲] و رخ دادن آن در طبیعت پرداخت تا بتواند مکانیزم تطابق طبیعی را شبیه سازی و وارد محاسبات کامپیوتری نماید. Holland در کتاب “تطابق در طبیعت و در سیستمهای مصنوعی” که درسال ۱۹۷۵ منتشر نمود الگوریتم ژنتیک را به شکل چکیدهای از تکامل زیستی معرفی و یک قالب تئوریک برای شبیه سازی تطابق طبیعی تحت عنوان الگوریتم ژنتیک (GA)[23] ارائه نمود ]۱۵[. الگوریتم ژنتیکی هلند متدی است که بوسیله آن جمعیتی[۲۴] از کروموزوم ها[۲۵] (مثل رشتهای متشکل از صفر و یک) با بهره گرفتن از انتخاب طبیعی و عملگرهای آمیزش[۲۶] و جهش[۲۷] و وارونگی[۲۸] که از ژنتیک زیستی الهام گرفته شده اند به یک جمعیت جدید منتقل میشود. هر کروموزوم شامل چند ژن است و هر ژن ممکن است شامل چند الل[۲۹] باشد. عملگر انتخاب کروموزوم هایی را که در جمعیت اجازه بازآفرینش[۳۰] دارند بر میگیرند و بطور کلی سبب میشود کروموزوم های شایستهتر نسبت به کروموزوم های کمتر شایسته، فرزندان[۳۱] بیش تری تولید کنند. آمیزش بخش هایی از کروموزوم ها را با یک دیگر جابجا میکند و تقریباً آمیزش زیستی بین کروموزم های منفرد یا نیم دانههای کروموزومی[۳۲] را شبیه سازی می کند. جهش بطور تصادفی ارزش اللها یا ژنها را در نقاطی از کروموزوم تغییر میدهد. وارونگی ترتیب چنین بخشی از کروموزوم را بر عکس و آرایش ژن ها را بازآرایی میکند. هر یک از اصطلاحات فوق در جای خود شرح داده خواهد شد. این مفاهیم به عنوان قالب کلی در تمامی تحقیقات و پیشرفتهایی که تا به امروز در الگوریتم ژنتیک انجام پذیرفته است حفظ گردیدهاند.
بطور کلی الگوریتم ژنتیک جزء کلاس الگوریتم های جستجوی تصادفی هدایت شده[۳۳] بوده به خصوص برای بهینه سازی مسایل پیچیده با فضای جستجوی ناشناخته که روش های دقیق قادر به یافتن حل آن نیستند مناسب است. برخی از ویژگیهای الگوریتم ژنتیک عبارتند از:
الگوریتم ژنتیک در یک جمعیت از جواب ها شروع به جستجو میکند، از این رو بجای یافتن جواب مناسب محدودههای مناسب در فضای متغیرها[۳۴] را مشخص می کند و امکان یافتن نقطه بهینه کلی [۳۵] را افزایش میدهد. به عبارت دیگر الگوریتم ژنتیک کمتر تحت تأثیر نقاط بهینه موضعی[۳۶] قرار میگیرد.
الگوریتم ژنتیک صرفاً از مقدار تابع هدف برای جستجو استفاده میکند و نیازی به اطلاعات دیگر نظیر مشتق تابع هدف ندارد.
الگوریتم ژنتیک از قواعد احتمالی به جای قواعد قطعی بهره میجوید و بر خلاف روش های جستجوی نقطه به نقطه با قوانین قطعی احتمال کمتری برای گرفتار شدن در نقاط بهینه موضعی دارد.
الگوریتم ژنتیک وابستگی به نوع مسأله نداشته و میتواند هر گونه مسأله، تابع هدف[۳۷]، قید[۳۸] و هر نوع فضای جستجوی متغیرها را پوشش دهد.
الگوریتم ژنتیک برروی پارامترهای رمزنگاری شده[۳۹] کار میکند و نه بر روی مقدار واقعی پارامترها.
الگوریتم ژنتیک با روشی ساده و قابل درک فضاهای پیچیده، غیرخطی و چند بعدی را به صورت سریع و مؤثر میکاود.
در الگوریتم ژنتیک هیچ گونه تقریبی نظیر خطی سازی توابع، گرد کردن نتایج و تبدیل متغیرهای پیوسته و گسسته وجود ندارد.
الگوریتم ژنتیک توانایی تولید مجموعهای از جواب های بالقوه بهینه را دارا میباشد لذا برای حل مسایل بهینه سازی چندهدفه بسیار کارآمد است.
الگوریتم ژنتیک نمیتواند یافتن نقطه بهینه کلی را تضمین نماید و روش های ریاضی کلاسیک دقیق در صورت قابلیت کاربری به لحاظ دقت بهتر از الگوریتم ژنتیک عمل مینمایند. البته تحقیقات نشان میدهد که الگوریتم ژنتیک در صورت تنظیم صحیح پارامترهای آن با دقت مناسب نتایج خوبی دارد.
دقت نتایج در الگوریتم ژنتیک به تنظیم درست پارامترهایی نظیر تعداد کروموزوم ها در جمعیت، تعداد نسلها[۴۰]، معیار توقف[۴۱] احتمال آمیزش، احتمال جهش و استراتژی های انتخاب و اعمال قیود وابسته است. شکل ۳-۱ یک الگوریتم ژنتیک را به صورت کلی نشان می دهد.
شکل ۳-۱: صورت عمومی الگوریتم ژنتیک[۵]
در مسایل بهینه سازی منظور تعیین متغیرهای اثرگذار[۴۲]بر پارامتر هدف[۴۳] به گونهای است که هدف بهترین حالت را دارا باشد، به عنوان مثال کمترین هزینه یا بالاترین کیفیت. هنگامی که متغیرهای زیادی بر پارامتر هدف تأثیر میگذارند با مسأله پیچیدهای مواجه هستیم و تعیین دقیق همه متغیرها بوسیله روش های دقیق ریاضی بسیار دشوار و یا عملاً غیرممکن است در چنین مسألهای از رویکرد جستجوی پاسخ های بهینه استفاده میشود. یافتن پاسخ بهینه مطلق نیازمند محاسبه تمامی حالت های ممکن در فضای جستجو است که در این صورت تعداد محاسبات تقریباً بی نهایت شده و انجام آن امکان پذیر نیست. لذا با حذف شرط بهینگی مطلق فرایند جستجو را برای یافتن پاسخ های رضایت بخش در نزدیکی نقطه بهینه مطلق برنامه ریزی میکنیم. بدین ترتیب میان هزینه جستجو و کیفیت جواب تعادل برقرار میگردد.
در بسیاری از مسایل بهینهسازی مهندسی با بهینه سازی چند هدفه[۴۴] روبرو هستیم و رسیدن به شرایط مطلوب برای چند هدف به صورت هم زمان موردنظر است. در اکثر موارد این اهداف با هم تناقض دارند که این پیچیدگی مسأله را دو چندان می کند. به عنوان مثال کاهش هزینه تولید و افزایش کیفیت محصول دو هدف متناقض است. در چنین شرایطی یک نقطه بهینه منحصر به فرد وجود ندارد بلکه میبایست مجموعهای از پاسخ های بهینه را بیابیم و طی فرایند تصمیم سازی با حفظ تعادل منطقی میان اهداف نقطه بهینه مطلوب و رضایت بخشی را برگزینیم.
روش های دقیق اگرچه در بعضی مسایل خاص که از پیچیدگی کمتری برخوردارند نتایج دقیق و بسیار خوبی دارند اما ضعف هایی دارند که عمده ترین آنها عبارتند از: وابستگی به پاسخ آغازین، عدم جستجوی کامل فضای جواب، وابستگی به نوع مسأله .از این رو گرایش به سمت روش های ابتکاری که ضعفهای گفته شده را پوشش دهد فزونی یافته است. الگوریتم ژنتیک یکی از روش های فرا ابتکاری[۴۵] است که جزء کلاس الگوریتمهای بهینه سازی تصادفی هدایت شده قرار دارد. در حل مسایل بهینه سازی چه تک هدفه و چه مسایل چند هدفه نتایج بسیار خوبی دارد.
۳-۲- معرفی الگوریتم های ژنتیکی
الگوریتم های ژنتیکی درای مفاهیم و اصطلاحات خاص و در عین حال ساده ای است که مروری بر آن در ادامه می آید.
۳-۲-۱ اصطلاحات الگوریتم ژنتیک
الل: کوچکترین واحد سازنده ژنها است.
شکل ۳-۲: نمایش اللها در کروموزوم های رشته ای[۵]
ژن: هر ژن نماینده یکی از متغیرهای تصمیم است در دامنه[۴۶] آن متغیر است.
شکل ۳-۳: دو نمایش از ژن های موجود در دو کروموزوم[۵]
کروموزوم: هر چند ژن به صورت متوالی پشت سرهم یک کروموزوم را تشکیل میدهد، هر کروموزوم نماینده یکی از اعضای جمعیت پاسخ های منتخب بهینه است.
جمعیت: مجموعهای از کروموزوم ها در هر مرحله از بررسی بهینگی مجموعه جواب های منتخب است.
نسل: معرف مرحله تکامل جمعیت ها است.
رمزگشایی[۴۷] : تبدیل نمایش کروموزومی به مقدار واقعی کروموزوم ها است.
فنوتایپ[۴۸]: فضای ارزش واقعی مجموعه متغیرهای تصمیم است.
ژنوتایپ[۴۹]: فضای ارزش کروموزومی رمزنگاری شده متغیرهای تصمیم است.
شکل ۳-۴: نمایش فضاهای ژنوتایپ و ژنوتایپ[۵]
تابع برازندگی[۵۰]: تابعی است که به وسیله آن میزان شایستگی و رتبه بهینگی هر کروموزوم براساس سازگاری آن با محیط ارزیابی می گردد.
عملگرهای ژنتیکی[۵۱]: برای تولید نسل جدید از کروموزوم های نسل جاری از عملگرهای مرسوم ژنتیکی یعنی انتخاب، آمیزش، جهش، وارونگی و بازآفرینش استفاده میشود.
انتخاب[۵۲]: عملگری است که کروموزوم های شایستهتر را جهت بازآفرینش یا تولید فرزندان برمیگزیند.
آمیزش[۵۳]: این عملگر با پیوند دو کروموزوم منفرد یک فرزند بوجود می آورد.
جهش[۵۴]: این عملگر با اضافه یا کم کردن مقداری کوچک به یک یا چند ژن یک کروموزوم به صورت تصادفی تغییراتی در آن بوجود میآورد.
وارونگی[۵۵]: عملگری است که ترتیب چینش بخشی از الل های یک کروموزوم را برعکس می کند. این عملگر یک نوع عملگر جهش است.
بازآفرینش[۵۶]: این عملگر کروموزوم های موجود در نسل کنونی را عیناً در نسل بعدی منتقل می کند.
فرزندان[۵۷]: کروموزوم های حاصل از پیوند دو کروموزوم کروموزوم های فرزند گفته میشود.
والدین[۵۸]: کروموزوم هایی که در فرایند پیوند شرکت میکنند کروموزوم های والد گفته میشوند.
معیار توقف[۵۹]: معیاری است که جهت توقف الگوریتم و روند تکاملی نسل ها تعریف می گردد.
جدول ۳-۱: تشابه الگوریتم های ژنتیکی و پدیده های طبیعی[۵]
الگوریتم ژنتیک | طبیعت |
مساله بهینه سازی | محیط |
فرم در حال بارگذاری ...