انجام پروژه و پایان نامه دانشگاهی و ترجمه متون تخصصی........ شماره تماس و واتس اپ: 09906118613

محبوبترین محصولات

اطلاعیه فروشگاه

انجام پروژه دانشگاهی و شبیه سازی مقالات دررشته مهندسی و و ترجمه متون تخصصی .......................... ....تلگرام: powerelectronic4u@.......... ایمیل:hw.mohammadi@gmail.com............................. ....اینستاگرام: powerelectronic4u@.......... گروه تلگرام: powerelectronic4all@..................

الگوریتم بهینه سازی شبیه سازی تبرید

الگوریتم بهینه سازی شبیه سازی تبرید

 

مقدمه

 

در روش شبیه‌سازی تبریدی (SA)، هر نقطه s در فضای جستجو مشابه یک حالت از یک سیستم فیزیکی است، و تابع (E(s که باید کمینه شود، مشابه با انرژی داخلی سیستم در آن حالت است. در این روش، هدف انتقال سیستم از حالت اولیه دلخواه، به حالتی است که سیستم در آن کمترین انرژی را داشته باشد.

 

تکرار پایه‌ای

 

در هر گام، تبرید شبیه‌سازی‌شده یک حالت همسایه را در نظر می‌گیرد و به صورت احتمالی بین جابه‌جایی به حالت جدید یا ماندن در حالت قبلی تصمیم می‌گیرد. این احتمالات در نهایت سیستم را به سمت حالت‌های با انرژی کمتر هدایت می‌کنند. معمولاً این مرحله آن قدر تکرار می‌شود که سیستم به یک حالت معقول برسد، یا اینکه میزان اعمال محاسباتی از یک حد مشخص عبور کند.

 

همسایه‌های یک حالت

 

همسایه‌های یک حالت (جواب)، حالت‌های جدیدی از مسئله هستند که با تغییر در حالت کنونی و با توجه به روشی از پیش تعیین شده ایجاد می‌شوند. برای مثال در مسئله فروشندهٔ دوره‌گرد، هر حالت به‌طور کلی یک جایگشت خاص از شهرهایی است که باید ملاقات شوند. همسایهٔ یک جواب، جایگشت‌هایی هستند که با انتخاب یک جفت از شهرهای هم جوار، از کل مجموعه جایگشت‌ها، و جابجا کردن آن دو شهر ایجاد می‌شوند. عمل تغییر در جواب فعلی و رفتن به جواب‌های همسایه «حرکت» (move) خوانده می‌شود و «حرکت»‌های متفاوت، همسایه‌های گوناگون را بدست می‌دهد.

 

 

 

تبرید شبیه‌سازی‌شده در حال جستجوی پاسخ بیشینه. هدف این است که به بالاترین نقطه برسیم. در این مسئله نمیتوان از یک الگوریتم تپه‌نوردی ساده استفاده کرد زیرا تعداد زیادی بیشینه محلی وجود دارد. با استفاده از کاهش تدریجی دما در الگوریتم تبرید شبیه‌سازی‌شده پاسخ سراسری بیشینه یافت می‌شود.

 

روش‌های ابتکاری ساده مانند تپه‌نوردی، که با یافتن بهترین همسایه بین همسایه‌های بهتر از حالت کنونی حرکت می‌کنند و زمانی متوقف می‌شوند که به حالتی برسند که هیچ همسایهٔ بهتری برای حالت کنونی نباشد، نمی‌توانند تضمین کنند که همیشه به بهترین جواب رسیده‌اند و ممکن است خروجی آن‌ها تنها یک حالت بهینهٔ محلی باشد. الگوریتم‌های فراابتکاری از همسایه‌های یک جواب برای جستجو فضای جواب‌ها استفاده می‌کنند و اگر چه همسایه‌های بهتر را ترجیح می‌دهند، همسایه‌ای بدتر را هم رد نمی‌کنند تا در یک بهینه محلی گرفتار نشوند. نشان‌ داده شده‌است که این الگوریتم‌ها با صرف یک زمان کافی می‌توانند بهترین جواب کلی را پیدا کنند.

 

احتمال پذیرش

 

احتمال یک انتقال از حالت کنونی مانند s {\displaystyle s} s به یک حالت کاندید جدید مانند s ´ {\displaystyle {\acute {s}}} {\displaystyle {\acute {s}}} با یک تابع احتمال پذیرش مثل P ( e , e ´ , T ) {\displaystyle P(e,{\acute {e}},T)} {\displaystyle P(e,{\acute {e}},T)} مشخص می‌شود که در آن e = E ( s ) {\displaystyle e=E(s)} {\displaystyle e=E(s)} و e ´ = E ( s ´ ) {\displaystyle {\acute {e}}=E({\acute {s}})} {\displaystyle {\acute {e}}=E({\acute {s}})} است (تابع E {\displaystyle E} E روی فضای حالت نشان‌دهنده انرژی و T {\displaystyle T} T نشان‌دهنده دمای متغیر‌‌ با زمان سیستم است). حالات با انرژی کمتر بهتر از حالات با انرژی بالاتر هستند. تابع احتمال P {\displaystyle P} P باید مثبت باشد حتی زمانی که e {\displaystyle e} e کوچکتر از e ´ {\displaystyle {\acute {e}}} {\displaystyle {\acute {e}}} است. این ویژگی تضمین می‌کند که الگوریتم در یک پاسخ محلی بدتر از پاسخ سراسری بهینه گرفتار نشود.

 

زمانی که T {\displaystyle T} T به صفر میل می‌کند‌‌‌‌، احتمال P {\displaystyle P} P یا باید به صفر میل کند ( e {\displaystyle e} e کوچیکتر از e ´ {\displaystyle {\acute {e}}} {\displaystyle {\acute {e}}}) یا اینکه به یک عدد مثبت میل کند ( e ´ {\displaystyle {\acute {e}}} {\displaystyle {\acute {e}}} کوچکتر از e {\displaystyle e} e). برای مقادیر به اندازه کافی کوچک از T {\displaystyle T} T، سیستم به مرور به سمت نقطه با کمینه انرژی حرکت می‌کند و به سمت نقاط با انرژی بیشتر حرکت نخواهد کرد. با قرار دادن T = 0 {\displaystyle T=0} {\displaystyle T=0} مسئله به یک الگوریتم حریصانه تقلیل پیدا می‌کند که تنها به سمت نقاط با انرژی کمتر حرکاتش را انجام می‌دهد.

 

در صورت اولیهٔ تبرید شبیه‌سازی شده، احتمال P ( e , e ´ , T ) {\displaystyle P(e,{\acute {e}},T)} {\displaystyle P(e,{\acute {e}},T)} زمانی که e ´ {\displaystyle {\acute {e}}} {\displaystyle {\acute {e}}} کوچکتر از e {\displaystyle e} e باشد برابر ۱ می‌شود، که به این معنی است که رویه همیشه مستقل از دما به سمت نقاط پایین‌تر حرکت می‌کند. بسیاری از صورت بندی‌ها و پیاده‌سازی‌های تبرید شبیه‌سازی‌شده همچنان این شرط را به عنوان بخشی از تعریف روش در نظر می‌گیرند‌، اگر چه این شرط برای کارکردن روش الزامی نیست.

 

تابع P {\displaystyle P} P همواره به گونه‌ای انتخاب می‌شود که احتمال پذیرش یک حرکت زمانی که تفاوت بین دو حالت کمتر است کاهش یابد، به‌طور مثال حرکات کوچک رو به بالا محتمل‌تر از حرکاتبزرگ هستند. در هر حال، در صورتی که شروط قبلی برقرار باشند، این شرط به‌طور اکید الزامی نیست.

 

با این تفاسیر، دما نقش اساسی را در کنترل‌کردن تغییرات در سیستم با توجه به حساسیت آن نسبت به تغییرات انرژی ایفا می‌کند. به‌طور دقیق‌تر، در مقادیر بزرگ T {\displaystyle T} T، تغییرات در حالت سیستم نسبت به تغییرات بزرگتری در سیستم حساس است تا زمانی که دما کوچکتر است.

 

 

 

سریع

 

زمان‌بندی تبرید

 

نام و ایده بنیادین الگوریتم منشا‌ٔگرفته از ویژگی دما است. این ویژگی در واقع به گونه‌ای کنترل می‌شود که دما حین شبیه‌سازی به صورت تدریجی کاهش می‌یابد. الگوریتم با قرار دادن T = ∞ {\displaystyle T=\infty } {\displaystyle T=\infty } شروع می‌شود (در واقع دما در ابتدا یک مقدار بزرگ را اختیار می‌کند) و در هر گام طبق یک زمان‌بندی از پیش‌تعیین‌شده کاهش می‌یابد. در تعیین این زمان‌بندی باید توجه داشت که با اتمام‌ منابع مورد استفاده مانند تعداد محاسبات، زمان انجام عملیات‌ها هم تمام شود. برای انجام این کار انتظار می‌رود در ابتدا الگوریتم در فضای بزرگی از پاسخ‌ها و بی‌توجه به تابع انرژی به دنبال جواب بگردد. سپس به سمت مناطق با انرژی کمتر پرش کند و این منطقه به مرور کوچک و کوچکتر شود تا زمانی که سیستم دقیقا به پایین‌ترین نقطه سراسری برسد.

 

 

 

آرام

 

دو شکل روبرو نشان‌دهندهٔ تأثیر زمان‌بندی تبرید بر کارایی الگوریتم هستند. مسئله بازترتیبی پیکسل‌های یک عکس به منظور کمینه کردن انرژی واقعی تصویر است، که باعث می‌شود رنگ‌های مشابه به هم نزدیک‌تر باشند و رنگ‌های متفاوت در فاصله دورتری از هم قرار بگیرند. دو شکل روبرو از دو زمان‌بندی سریع و آرام در بدست آمده‌اند.

 

برای هر مسئله با فضای متناهی، احتمال این که الگوریتم تبرید در یک نقطه بهینهٔ سراسری کار خود را تمام کند با افزایش زمان به ۱ میل می‌کند. اگرچه این نتیجهٔ نظری چندان راهگشا نیست زیرا میزان زمانی که لازم است تا احتمال رسیدن به جواب از حدی معقول بیشتر شود معمولاً بیشتر از زمانی است که برای جستجوی کل فضا لازم است.

 

ساختار کلی الگوریتم تبرید شبیه‌سازی شده

 

نمودار جریان الگوریتم تبرید شبیه‌سازی شده.

 

برای حل یک مسئلهٔ بهینه‌سازی، الگوریتم SA ابتدا از یک جواب اولیه شروع می‌کند و سپس در یک حلقه تکرار به جواب‌های همسایه حرکت می‌کند. اگر جواب همسایه بهتر از جواب فعلی باشد، الگوریتم آن را به عنوان جواب فعلی قرار می‌دهد (به آن حرکت می‌کند)، در غیر این صورت، الگوریتم آن جواب را با احتمال exp(-ΔE/T) به عنوان جواب فعلی می‌پذیرد. در این رابطه ΔE تفاوت بین تابع هدف جواب فعلی و جواب همسایه‌است و T یک پارامتر به نام دما است. در هر دما، چندین تکرار اجرا می‌شود و سپس دما به آرامی کاهش داده می‌شود. در گام‌های اولیه دما خیلی بالا قرار داده می‌شود تا احتمال بیشتری برای پذیرش جواب‌های بدتر وجود داشته باشد. با کاهش تدریجی دما، در گام‌های پایانی احتمال کمتری برای پذیرش جواب‌های بدتر وجود خواهد داشت و بنابراین الگوریتم به سمت یک جواب خوب همگرا می‌شود. الگوریتم SAیک الگوریتم غیرمقید می‌باشد که برای طراحی‌های سخت به کار می‌رود.[۳] شبه کد زیر یک پیاده‌سازی از تبرید شبیه‌سازی شده را ارائه نشان می‌دهد. این الگوریتم از حالت s 0 {\displaystyle s_{0}} {\displaystyle s_{0}} شروع می‌کند و تا رسیدن به حداکثر گام‌ها‌، k m a x {\displaystyle k_{max}} {\displaystyle k_{max}} یا رسیدن به حالتی با انرژی e m i n {\displaystyle e_{min}} {\displaystyle e_{min}} یا کمتر از آن متوقف می‌شود. در این روند، صدا کردن تابع n e i g h b o u r {\displaystyle neighbour} {\displaystyle neighbour} یک همسایه رندوم حالت فعلی را انتخاب می‌کند. تابع r a n d o m {\displaystyle random} {\displaystyle random} یک عدد را در بازه ( 0 , 1 ) {\displaystyle (0,1)} (0,1) به صورت یکنواخت انتخاب می‌کند. زمان‌بندی تبرید با صدا کردن تابع t e m p e r a t u r e {\displaystyle temperature} {\displaystyle temperature} تعریف می‌شود، که در هر مرحله دمای سیستم را بر حسب ‌‌‌زمان به دست می‌دهد.

 

Let s = s0
For k = 0 through kـmax (exclusive):
T ← temperature(k ∕ kـmax)
Pick a random neighbour, snew ← neighbour(s)
If P(E(s), E(sـnew), T) ≥ random(0, 1):
s ← sـnew
Output: the final state s

 

انتخاب پارمترهای الگوریتم

 

برای اعمال تبرید شبیه‌سازی‌شده به یک مسئله خاص، باید این پارامترها را مشخص کرد: فضای حالت،‌ تابع انرژی E {\displaystyle E} E، تابع n e i g h b o u r {\displaystyle neighbour} {\displaystyle neighbour}، تابع احتمال پذیرش P {\displaystyle P} P، و تابع زمان‌بندی t e m p e r a t u r e {\displaystyle temperature} {\displaystyle temperature} و البته مقدار اولیه برای دما. این انتخاب‌ها می‌توانند تأثیرات اساسی روی کارایی این روش بگذراند. متاسفانه، هیچ روشی برای انتخاب پارامترهای مناسب برای تمام مسائل وجود ندارد و برای هر مسئله باید به‌طور خاص بهترین پارامترها را یافت. در ادامه نکاتی در همین زمینه گفته خواهد شد.

 

تبرید شبیه‌سازی‌شده می‌تواند مانند یک قدم‌زدن تصادفی روی یک گراف جستجو مدل شود که راس‌های آن تمام حالات ممکن هستند و یال‌های آن حرکات کاندید. یک شرط لازم برای تابع n e i g h b o u r {\displaystyle neighbour} {\displaystyle neighbour} این است که باید یک مسیر نسبتا کوتاه را از حالت اولیه به هر حالت دیگری را که می‌تواند بهینهٔ سراسری باشد فراهم کند. در واقع قطر گراف جستجو باید کوتاه باشد. در مسئله فروشندهٔ دوره‌گرد اندازه‌ٔ فضای حالت دارای برای ۲۰ شهر برابر۲۴۳۲۹۰۲۰۰۸۱۷۶۶۴۰۰۰۰ است، ولی تابع همسایه که دو شهر نزدیک را همسایه می‌گیرد می‌تواند در حداکثر ۱۹۰ گام به بهینه سراسری برسد.

 

احتمال گذار

 

برای تحقیق در رفتار تبرید شبیه‌سازی‌شده در یک مسئله خاص، توجه به احتمالات گذار که نتیجهٔ انتخاب‌های اولیه در پیاده‌سازی هستند، راهگشا خواهد بود. برای هر یال ( s , s ´ ) {\displaystyle (s,{\acute {s}})} {\displaystyle (s,{\acute {s}})} در گراف جستجو، احتمال گذار برابر احتمال آن است که الگوریتم به حالت s ´ {\displaystyle {\acute {s}}} {\displaystyle {\acute {s}}} برود زمانی که حالت کنونی s {\displaystyle s} s است. این احتمال به دمای کنونی که توسط تابع t e m p e r a t u r e {\displaystyle temperature} {\displaystyle temperature} تعیین می‌شود، به ترتیبی که توسط n e i g h b o u r {\displaystyle neighbour} {\displaystyle neighbour} تعیین می‌شود و به تابع احتمال پذیرش P {\displaystyle P} P بستگی دارد. (دقت کنید که احتمال گذار تنها P ( e , e ´ , T ) {\displaystyle P(e,{\acute {e}},T)} {\displaystyle P(e,{\acute {e}},T)} نیست زیرا همسایه‌های کاندید در این روش تک تک بررسی می‌شوند.)

 

احتمالات پذیرش

 

تعیین توابع n e i g h b o u r {\displaystyle neighbour} {\displaystyle neighbour}، t e m p e r a t u r e {\displaystyle temperature} {\displaystyle temperature} و P {\displaystyle P} P شامل کمی فزون‌کاری است. در عمل تابع P {\displaystyle P} P برای بسیاری از مسائل یکسان انتخاب می‌شود و دو تابع دیگر با توجه به مسئله تعیین می‌شوند.

 

در فرمول‌بندی مسئله توسط کریک‌پاتریک و همکاران، تابع P ( e , e ´ , T ) {\displaystyle P(e,{\acute {e}},T)} {\displaystyle P(e,{\acute {e}},T)} زمانی که e ´ {\displaystyle {\acute {e}}} {\displaystyle {\acute {e}}} کوچکتر از e {\displaystyle e} e باشد برابر ۱ و در غیر این صورت برابر e x p ( − ( e ´ − e ) / T ) {\displaystyle exp(-({\acute {e}}-e)/T)} {\displaystyle exp(-({\acute {e}}-e)/T)} تعریف می‌شود. این فرمول به صورت سطحی طبق گذارهای یک سیستم فیزیکی توجیه‌پذیر است. در واقع این فرمول‌بندی مطابق الگوریتم متروپلیس-هستینگز است زمانی که T = 1 {\displaystyle T=1} {\displaystyle T=1} و توزیع استفاده شده در متروپلیس-هستنیگز متقارن است. با این حال، این احتمال پذیرش اکثرا در تبرید ‌شبیه‌سازی‌شده استفاده می‌شود، حتی زمانی که تابع n e i g h b o u r {\displaystyle neighbour} {\displaystyle neighbour} متقارن نباشد یا حتی زمانی که احتمالاتی نباشد. در نتیجه، احتملالات گذار در الگوریتم تبرید‌ شبیه‌سازی‌شده مطابق گذارهای سیستم فیزیکی مذکور نیستند و در توزیع حالات در بلند مدت در یک دمای ثابت T {\displaystyle T} T ملزم به شباهت به یک توزیع تعادل ترمودینامیکیروی حالات سیستم فیزیکی در هیچ دمایی نیست. در هر حال، بیشتر صورت‌های تبرید شبیه‌سازی‌شده همان صورت اولیه را انتخاب می‌کنند که احتمالا بارها پیاده‌سازی شده‌است.

 

تولید کاندیدهای مناسب

 

در انتخاب تابع n e i g h b o u r {\displaystyle neighbour} {\displaystyle neighbour} باید این را در نظر گرفت که پس از تعداد معقولی تکرار الگوریتم، انتظار می‌رود حالت سیستم، انرژی به مراتب کمتری از حالت ابتدایی داشته باشد. بنابراین به عنوان یک قانون کلی باید تولیدکننده کاندیدها یا همان n e i g h b o u r {\displaystyle neighbour} {\displaystyle neighbour} را به سمت کاندیدی حرکت داد که انرژی حالت جدید s ´ {\displaystyle {\acute {s}}} {\displaystyle {\acute {s}}}، شبیه به انرژی حالت کنونی باشد. این روش فراابتکاری (که اساس الگوریتم متروپولیس-هستینگز هم هست) معمولاً حرکات بسیار خوب و حرکات بسیار بد را حذف میکند. البته بیشتر حرکات بد ممکن هستند تا حرکات خوب و این نشان می‌دهد که الگوریتم تقریباً کارا عمل می‌کند.

 

برای مثال در مسئله فروشندهٔ دوره‌گرد که پیش‌تر به آن اشاره شد، انتظار می‌رود جابه‌جایی از یک شهر به شهر نزدیک آن در یک گشت با انرژی کم، تأثیر نسبتاً کمی روی تغییر انرژی بگذارد، در حالیکه جابه‌جایی بین دو شهر دلخواه بسیار محتمل تر است که انرژی بیشتری را هزینه کند (منظور از انرژی اینجا همان طول است).

 

یک بیان دقیق‌تر از این روش فراابتکاری این است که حالات s ´ {\displaystyle {\acute {s}}} {\displaystyle {\acute {s}}} که برای آن‌ها P ( e , e ´ , T ) {\displaystyle P(e,{\acute {e}},T)} {\displaystyle P(e,{\acute {e}},T)} بزرگ است را انتخاب کند. بنابراین، در مثال فروشندهٔ دوره‌گرد، می‌توان از n e i g h b o u r {\displaystyle neighbour} {\displaystyle neighbour} ی استفاده کرد که احتمال انتخاب دو شهر برای جابه‌جایی با افزایش فاصله آن‌ها کاهش يابد.

 

اجتناب از موانع

 

برای انتخاب تابع n e i g h b o u r {\displaystyle neighbour} {\displaystyle neighbour} علاوه بر ملاحظات قبلی باید تلاش کرد تا تعداد کمینه‌های محلی عمیق (حالاتی که به میزان زیادی از همسایه‌هایشان انرژی کمتری دارند) را کاهش داد. چنین نقاطی می‌توانند الگوریتم تبرید‌ شبیه‌سازی‌شده را با احتمال بالایی (تقریبا متناسب با کل تعداد حالات در یک همسایگی) و برای زمان زیادی (تقریبا نمایی بر حسب تفاوت انرژی با همسایه‌ها در همسایگی) به دام بیاندازند.

 

به عنوان یک اصل، طراحی یک تولیدکننده‌ کاندید که بتواند این هدف را ارضا کند غیرممکن است. به علاوه معمولاً میتوان کارایی تبرید ‌شبیه‌سازی‌شده را با تغییرات ساده در تابع n e i g h b o u r {\displaystyle neighbour} {\displaystyle neighbour} به میزان زیادی افزایش داد.

 

زمان‌بندی کاهش دما

 

توجیه فیزیکی که برای تبرید شبیه‌سازی‌شده استفاده می‌شود، فرض می‌کند که نرخ سردکردن به اندازهٔ کافی آرام است به‌طوری‌که توزیع احتمال حالت کنونی همواره نزدیک به تعادل ترمودینامیکی باشد. متاسفانه، زمان سست سازی یا relaxation (زمانی که باید صبر کرد تا تعادل ترمودینامیکی که به دلیل تغییر دما بر هم خورده‌است دوباره برقرار شود) بسیار به شکل تابع انرژی و دمای کنونی وابسته است. در الگوریتم تبرید شبیه‌سازی‌شده، زمان سست سازی همچینین به تابع تولید‌کننده‌ کاندید هم به شکل پیچیده‌ای واسبته است. توجه کنید که تمام این پارامترها معمولاً به عنوان توابع پییچده و نه چندان مشخصی برای الگوریتم تعیین می‌شوند. بنابراین، بهترین نرخ سردسازی (کاهش دما)‌ را نمی‌توان پیش از اجرای الگوریتم تعیین کرد و باید به صورت تجربی برای هر مسئله‌ای به‌طور خاص محاسبته شود. الگوریتم‌های تبرید‌ شبیه‌سازی‌شده تطبقی این مسئله را با ربط دادن زمان‌بندی سرسازی به فرایند جستجو حل می‌کنند.

 

شروع‌های دوباره

 

گاهی اوقات بهتر است تا به یک پاسخی که قبلا پیدا شده‌است و بسیار بهتر بوده برگردیم تا اینکه از همین حالت فعلی حرکتی را انجام دهیم . این رویه را شروع دوباره یا restarting می‌گویند. برای انجام این کار باید در شبه کد بالا s و e را برابر sbest و ebest قرار دهیم و دوباره الگوریتم را آغاز کنیم. تصمیم برای آغاز مجدد می‌تواند بر حسب معیارهای مختلفی باشد. یکی از رایج‌ترین روش‌ها شروع مجدد بعد از تعدادی گام مشخص، شروع مجدد به دلیل رد شدن از حداکثر انرژی سیستم، شروع مجدد تصادفی و ... است.

 

روش‌های مرتبط

 

  • الگوریتم‌های متروپلیس-هستینگز تعاملی (مونت کارلو ترتیبی)، حرکات تبرید شبیه‌سازی‌شده را با مکانیزم بازیافتی تعاملی ترکیب می‌کند.
  • تبرید کوانتومی، از نوسانات کوانتومی به جای نواسانات حرارتی استفاده می‌کند تا از موانع بلند ولی کوچک عبور کند.
  • تونل‌زنی تصادفی، تلاش می‌کند بر سخت‌شدن تدریجی که تبرید شبیه‌سازی‌شده با آن در خروج از کیمنه محلی حین کاهش دما روبرو است با تونل‌زدن در موانع غلبه کند.
  • جستجوی تابو یا Tabu search، به صورت کاملاً عادی به سمت همسایه‌های با انرژی کمتر حرکت می‌کند، اما زمانی که خود را در یک کمینهٔ محلی گرفتار می‌بیند به سمت بالا حرکت می‌کند و از گرفتارشدن در یک دور با نگه‌داشتن یک لیست جلوگیری می‌کند.
  • خانواده الگوریتم‌های دوگان-فاز که الگوریتم تبرید شبیه‌سازی‌شده هم از آن‌ها است، در واقع یک رویکردی بینابینی به جستجوی کلی و محلی دارند.
  • بهینه‌سازی جستجوی انفعالی بر ترکیب یادگیری ماشین با بهینه‌سازی تمرکز می‌کند و برای این کار یک حلقه فیدبک داخلی به منظور تنظیم پارامترهای آزاد یک الگوریتم با توجه به ویژگی‌های مسئله، اضافه می‌کند.
  • گرادیان کاهشی تصادفی که تعداد زیادی جستجوی حریصانه را از نقاط تصادفی مختلف شروع میکند.
  • الگوریتم‌های ژنتیک دسته‌ای از جواب‌ها را به جای تنها یک جواب معرفی می‌کنند. کاندید‌های جدید برای جواب با جهش یا با بازترکیبی تو جواب از دسته اولیه تولید می‌شوند. معیارهای احتمالاتی همانند آنچه در تبرید شبیه‌سازی‌شده مدنظر بود، به منظور انتخاب کاندیدها برای جهش یا بازترکیبی یا حذف تعدادی از جواب‌ها در دسته مذکور استفاده می‌شوند.
  • بهینه‌سازی گام به گام، به صورت تدریجی تابع هدف را حین بهینه‌سازی هموار می‌کند.
  • بهینه‌سازی کولونی مورچه یا ant colony optimization، تعدادی زیادی مورچه را برای طی کردن فضای جواب و پیداکردن مناطق محلی مناسب استفاده میکند.
  • روش آنتروپی متقابل یا cross-entropy، به کمک یک توزیع احتمال پارامتری جواب‌های کاندید را تولید می‌‌کند. پارامترها با استفاده از کمینه‌سازی آنتروپی متقابل دوباره مقدار می‌گیرند تا در مرحله بعد بتوانند نمونه‌های بهتری تولید کنند.
  • جستجوی هارمونی، از موسیقی‌داناندر فرایند بدیهه‌سازی تقلید می‌کنند به گونه‌ای که هر موسیقیدان یک نوت موسقی را برای پیدا کردن بهترین هارمونی می‌نوازد.
  • بهینه‌سازی تصادفی، شامل بسیاری از روش‌ها از جمله تبرید شبیه‌سازی‌شده است.
  • بهینه‌سازی ازدحام ذره یا particle swarm optimization، الگوریتمی است که ازدحام ذرات را به منظور یافتن جواب بهینه مدل می‌کند.
  • الگوریتم ریشهٔ زمینی-ریشهٔ هوایی یا runner-root، یک روش فراابتکاری برای حل مسائل تک مدله و چند مدله است که از ریشه‌ٔ هوایی و ریشهٔ زمینی گیاهان در طبیعت الهام گرفته‌است.
  • الگوریتم قطرات آب هوشمند یا Intelligent water drops، که رفتار طبیعی قطرات آب را برای بهینه‌سازی استفاده می‌کند.

 


اشتراک بگذارید:


پرداخت اینترنتی - دانلود سریع - اطمینان از خرید

پرداخت هزینه و دریافت فایل

مبلغ قابل پرداخت 14,000 تومان

درصورتیکه برای خرید اینترنتی نیاز به راهنمایی دارید اینجا کلیک کنید


فایل هایی که پس از پرداخت می توانید دانلود کنید

نام فایلحجم فایل
Project23_1919964_2877.zip23.2k





الگوریتم بهینه سازی جست و جوی ممنوعه

الگوریتم بهینه سازی جست و جوی ممنوعه الگوریتم بهینه سازی جست و جوی ممنوعه الگوریتم جستجوی ممنوعه (Tabu Search) (TS) یک الگوریتم بهینه‌سازی فراابتکاری است که برای اولین بار در سال ۱۹۸۶ توسط گلووِر Glover معرفی شد. در سال ۱۹۹۷، اولین کتابی که کاملاً به جستجوی ممنوعه اختصاص داشت توسط گلووِر و لاگونا منتشر شد. واژهٔ تابو از تُنگان زبان مردم جزایر پلینزی در اقیانوس آرام گرفته شده‌است. این واژه به معنای شیء مقدسی است که به دلیل ...

توضیحات بیشتر - دانلود 14,000 تومان

الگوریتم بهینه سازی کلونی مورچگان

 الگوریتم بهینه سازی کلونی مورچگان  الگوریتم بهینه سازی کلونی مورچگان ...

توضیحات بیشتر - دانلود 14,000 تومان

الگوریتم بهینه سازی کلونی زنبورها

الگوریتم بهینه سازی کلونی زنبورها الگوریتم بهینه سازی کلونی زنبورها ...

توضیحات بیشتر - دانلود 14,000 تومان

کدهای متلب الگوریتم بهینه سازی کلونی زنبورهای مصنوعی

کدهای متلب الگوریتم بهینه سازی کلونی زنبورهای مصنوعی کدهای متلب الگوریتم بهینه سازی کلونی زنبورهای مصنوعی ...

توضیحات بیشتر - دانلود 14,000 تومان

کدهای متلب الگوریتم بهینه سازی خفاش

 کدهای متلب الگوریتم بهینه سازی خفاش  کدهای متلب الگوریتم بهینه سازی خفاش ...

توضیحات بیشتر - دانلود 14,000 تومان

کدهای متلب الگوریتم بهینه سازی جغرافیای زیستی

کدهای متلب الگوریتم بهینه سازی جغرافیای زیستی کدهای متلب الگوریتم بهینه سازی جغرافیای زیستی ...

توضیحات بیشتر - دانلود 14,000 تومان

دانلود کدهای متلب الگوریتم بهینه سازی هارمونی

دانلود کدهای متلب الگوریتم بهینه سازی هارمونی دانلود کدهای متلب الگوریتم بهینه سازی هارمونی ...

توضیحات بیشتر - دانلود 14,000 تومان

دانلود کدهای متلب الگوریتم بهینه سازی ایمنی

دانلود کدهای متلب الگوریتم بهینه سازی ایمنی دانلود کدهای متلب الگوریتم بهینه سازی ایمنی ...

توضیحات بیشتر - دانلود 14,000 تومان

دانلود کدهای متلب الگوریتم بهینه سازی رقابت استعماری

دانلود کدهای متلب الگوریتم بهینه سازی رقابت استعماری دانلود کدهای متلب الگوریتم بهینه سازی رقابت استعماری ...

توضیحات بیشتر - دانلود 14,000 تومان

دانلود کدهای متلب الگوریتم بهینه سازی ماهی

دانلود کدهای متلب الگوریتم بهینه سازی ماهی دانلود کدهای متلب الگوریتم بهینه سازی ماهی ...

توضیحات بیشتر - دانلود 14,000 تومان

دانلود کدهای متلب الگوریتم بهینه سازی جست و جوی گرانشی

دانلود کدهای متلب الگوریتم بهینه سازی جست و جوی گرانشی دانلود کدهای متلب الگوریتم بهینه سازی جست و جوی گرانشی ...

توضیحات بیشتر - دانلود 14,000 تومان

دانلود کدهای متلب الگوریتم بهینه سازی تکاملی تفاضلی

دانلود  کدهای متلب الگوریتم بهینه سازی تکاملی تفاضلی دانلود  کدهای متلب الگوریتم بهینه سازی تکاملی تفاضلی ...

توضیحات بیشتر - دانلود 14,000 تومان

دانلود کدهای متلب الگوریتم بهینه سازی جستجوی فاخته

دانلود کدهای متلب الگوریتم بهینه سازی جستجوی فاخته دانلود کدهای متلب الگوریتم بهینه سازی جستجوی فاخته ...

توضیحات بیشتر - دانلود 14,000 تومان

دانلود کدهای متلب الگوریتم بهینه سازی آنتروپی متقاطع

دانلود کدهای متلب الگوریتم بهینه سازی آنتروپی متقاطع دانلود کدهای متلب الگوریتم بهینه سازی آنتروپی متقاطع ...

توضیحات بیشتر - دانلود 14,000 تومان

دانلود کدهای متلب الگوریتم بهینه سازی هیبرید GA PSO

دانلود  کدهای متلب الگوریتم بهینه سازی هیبرید GA PSO دانلود  کدهای متلب الگوریتم بهینه سازی هیبرید GA PSO ...

توضیحات بیشتر - دانلود 14,000 تومان

آخرین محصولات فروشگاه