دسته بندی محصولات

صبر کن! کجا می خوای بری؟
قبل از اینکه بری از کد تخفیف Fara10
برای 10% تخفیف خرید استفاده کن

قبل از اینکه بری از کد تخفیف Fara10
برای 10% تخفیف خرید استفاده کن

بهینهسازی، فرآیندی حیاتی در بسیاری از رشتههای علمی و مهندسی است. هدف از بهینهسازی، یافتن بهترین راه حل برای یک مسئله با توجه به محدودیتها و قیود موجود است. در این میان، روش جستجوی طلایی به عنوان یک ابزار قدرتمند و کارآمد و یکی از انواع روش های جستجوی غیرخطی برای حل مسائل بهینهسازی تکبعدی شناخته میشود. این روش، با استفاده از نسبت طلایی، به طور سیستماتیک فضای جستجو را پیمایش کرده و به سمت کمینه (یا بیشینه) تابع هدف حرکت میکند.
در این مقاله، به بررسی عمیق روش جستجوی طلایی خواهیم پرداخت. ابتدا مفاهیم پایه و اصول این روش را توضیح میدهیم، سپس الگوریتم آن را به طور گام به گام شرح میدهیم. در ادامه، مزایا و معایب روش Golden Search را بررسی کرده و کاربردهای آن را در زمینههای مختلف معرفی میکنیم. در نهایت، این روش را با سایر روشهای بهینهسازی مقایسه کرده و نکات و ترفندهای بهبود عملکرد آن را ارائه میدهیم.
هدف از این مقاله، ارائه یک راهنمای جامع و کاربردی برای دانشجویان و علاقهمندان به بهینهسازی است. با مطالعه این مقاله، شما قادر خواهید بود روش جستجوی طلایی را درک کرده و از آن برای حل مسائل بهینهسازی تکبعدی استفاده کنید.
روش جستجوی طلایی یک روش عددی برای یافتن حداقل یا حداکثر یک تابع تک متغیره در یک بازه مشخص است. این روش از نسبت طلایی (0.618) برای تقسیم بازه جستجو به دو قسمت استفاده می کند.
روش های جستجویی که ما در این بخش و بخش بعدی مورد بحث قرار می دهیم به منظور تعیین کمینه تابع f: R-> R بر روی بازه بسته بکار می رود به طوری که [a0 ,b0] . تنها ویژگی که ما برای تابع هدفf فرض می نماییم تک مدی بودن آن است، به این معنی که f فقط داری یک مینیمم محلی است. مثالی از چنین تابعی در شکل روبرو نشان داده شده است.

روش جستجوی طلایی
روش جستجوی طلایی یک الگوریتم بهینهسازی تکبعدی است که برای یافتن کمینه (یا بیشینه) یک تابع پیوسته و یکمتغیره استفاده میشود. این روش بر اساس اصل “تقسیم و غلبه” (Divide and Conquer) عمل میکند، به این معنی که فضای جستجو را به طور مکرر به بخشهای کوچکتر تقسیم میکند تا به سمت راه حل بهینه همگرا شود.
مفهوم اصلی روش Golden Search استفاده از نسبت طلایی (Golden Ratio) است که تقریباً برابر با 1.618 است. این نسبت در ریاضیات و طبیعت به طور گستردهای یافت میشود و خواص منحصر به فردی دارد که آن را برای بهینهسازی مناسب میسازد. در روش جستجوی طلایی، نسبت طلایی برای تعیین نقاط آزمایشی در بازه جستجو استفاده میشود.
اساس کار روش جستجوی طلایی بر این اصل استوار است که با ارزیابی تابع هدف در دو نقطه آزمایشی که با استفاده از نسبت طلایی تعیین شدهاند، میتوان بازه جستجو را به طور موثرتری کاهش داد. این فرآیند تا زمانی که به یک نقطه همگرایی برسیم (یعنی تغییرات تابع هدف در بازه جستجو بسیار کوچک باشد) تکرار میشود.
روش جستجوی طلایی در مورد ارزیابی تابع هدف در نقاط مختلف بازه [a0 ,b0] می باشد. این نقاط را چنان انتخاب می نماییم که یک تقریب ممکن به نقطه کمینه را با چند ارزیابی ممکن به دست آورد . هدف محدود کردن تدریجی دامنه با دقت کافی به منظور قرار گرفتن کمینه در بازه مد نظر می باشد.
تابع تک مدی f را با یک متغیر و بازه [a0 ,b0] در نظر بگیرید. اگر f را فقط در یک نقطه میانی از بازه در نظر بگیریم قادر نخواهیم بود در میان این طیف گسترده کمینه را قرار دهیم لذا باید به منظور ارزیابی f تابع را در دو نقطه میانی همانطور که در شکل زیر نشان داده شده است در نظر بگیریم.

نقاط میانی را چنان انتخاب می نماییم که کاهش در محدوده متقارن باشد، به این معنا که
a1 – a0 = b0 – b1 = p (b0 – a0) به طوری که p< 0.5
سپس به ارزیابی تابع f در نقطه میانی می پردازیم. اگر f(a1)<f(b1) باشد، کمینه در بازه [a0, b1] نهفته است.
از سوی دیگر، اگر (f(a1)≥f(b1 باشد، کمینه در بازه [a1, b0] قرار گرفته است. درادامه با کاهش دامنه عدم قطعیت، ما می توانیم این روند را تکرار و به همین ترتیب دو نقطه جدید a2 و b2 را با مقدار p=0.5 پیدا نماییم. در عین حال، ما علاقمندیم که تعداد ارزیابی تابع هدف را در حالی که بازه عدم قطعیت را کاهش می دهیم کمینه نماییم.
برای مثال فرض کنید که (f(a1)<f(b1 باشد. ما می دانیم نقطه بهینه x* متعلق به بازه [a0, b1] خواهد بود. از آنجا که a1 در حال حاضر در فاصله عدم اطمینان است و f تابعی شناخته شده، می توانیم a1 را با b2 یکی و منطبق بر هم در نظر بگیریم. بنابراین، تنها یک ارزیابی جدید از تابع f در نقطه a2 ضروری خواهد بود. برای پیدا کردن مقدار p که منجر به تنها یک ارزیابی جدید گردد شکل زیر را مشاهده نمایید.

بدون از دست دادن کلیت، تصور کنید که محدوده اصلی [a0 ,b0] طول واحد است. لذا به منظور داشتن تنها یک ارزیابی از f کافی است که p مناسب را انتخاب نماییم.
P (b1– a0) = b1 – b2
از آنجایی که مقدار b1 – b0 = 1- p و مقدار b1 – b2 = 1 -2p می باشد، لذا خواهیم داشت:
P (1 – p) = 1 – 2p *
تابع درجه دوم عبارت فوق را به صورت زیر می نویسیم:
P2‑3p+1=0 -> p1 = (3+√5)/2 , p2 = (3-√5)/2
از آنجایی که مقدار p<0.5 را نیاز خواهیم داشت مقدار p2 =0.382 را در نظر می گیریم. با جایگزینی مقدار تابع در عبارت * مشاهده می کنیم که p/(1-P) = (1-p)/1 خواهد بود. از این عبارت در یونان باستان به عنوان قانون طلایی یاد شده است.
1-p=0.618031
کاهش می یابد. از این رو، N مرحله کاهش با استفاده از روش طلایی با نرخ زیر کاهش خواهد یافت:
(1 – p)N = (0.61803)N
روش جستجوی طلایی یک روش عددی برای یافتن حداقل یا حداکثر یک تابع تک متغیره در یک بازه مشخص است. این روش از مزایای زیر برخوردار است:
سادگی:
عدم نیاز به مشتق:
همگرایی:
قابلیت اطمینان:
روش جستجوی طلایی، مانند هر روش دیگری، معایبی هم دارد که باید قبل از استفاده از آن در نظر گرفته شود:
سرعت:
دقت:
محاسبات:
محدودیت به توابع تک متغیره:
محدودیت به بازه جستجو:
در مجموع، روش جستجوی طلایی یک روش ساده و قابل فهم است، اما سرعت و دقت آن به اندازه برخی روش های دیگر مانند روش نیوتن-رافسون نیست.
روش جستجوی طلایی، به دلیل مزایای ذکر شده، در زمینه های مختلف کاربرد دارد.
برخی از کاربردهای این روش عبارتند از:
در مجموع، روش جستجوی طلایی یک روش قدرتمند و انعطاف پذیر است که در طیف وسیعی از مسائل مختلف کاربرد دارد. در ادامه می توانید مثال روش جستجوی طلایی را مشاهده نمایید.
در ادامه مثال روش جستجوی طلایی را تشریح می نماییم. می خواهیم با استفاده از روش Golden Search نقطه x را طوری تعیین نماییم که تابع هدف f(x) = x4-14x3+60x2-70x را در بازه [0, 2] کمینه نماید. طول بازه را 0.3 در نظر بگیرید.

به منظور یافتن تعداد تکرار جهت کمینه شدن از فرمول فوق استفاده می نماییم:
(0.3/2) = (0.61803)N -> N =4 تعداد تکرار
تکرار اول:
تابع f را در دو نقطه میانی a1 و b1 در نظر می گیریم. خواهیم داشت:
a1 = a0 + p (b0 –a0) = 0.7639
b1 = a0 + p (1 – p) (b0 –a0) = 1.236
مقدار p = (3-√5)/2 پس
f (a1) = -24.36 f(b1) = -18.96
تکرار دوم:
از آنجایی که مقدار f(a1) < f(b1) است، لذا بازه عدم قطعیت کاهش یافته و برابر [a0 ,b1] = [0, 1.236] خواهد بود.
نقطه b2 را به عنوان نقطه منطبق با a1 در نظر می گیریم لذا تنها به ارزیابی در یک نقطه جدید نیاز خواهیم داشت:
a2 = a0 + p (b1 –a0) = 0.4721
f (a2) = -21.10 f(b2) = f(a1) = -24.36
از آنجایی که مقدار f(b2) < f(a2) است، لذا بازه عدم قطعیت کاهش یافته و برابر [a2 ,b1] = [0.4721, 1.236] خواهد بود.
تکرار سوم:
نقطه a3 را به عنوان نقطه منطبق با b2 در نظر می گیریم لذا تنها به ارزیابی در یک نقطه جدید نیاز خواهیم داشت:
b3 = a2 +(1- p) (b1 –a2) = 0.9443
f (a3) =f (b2) = -24.36 f(b2) = f(a1) = -23.59
از آنجایی که مقدار f(b3) > f(a3) است، لذا بازه عدم قطعیت کاهش یافته و برابر [a2 ,b3] = [0.4721, 0.9443] خواهد بود.

تکرار چهارم:
نقطه .b4 = a3
a4 = a2 + p (b3 –a2) = 0.6525
f (a4) = -23.84 f(b4) = f(a3) = -24.36
از آنجایی که مقدار f(a4) > f(b4) است، لذا بازه عدم قطعیت کاهش یافته و برابر [a2 ,b3] = [0.6525, 0.9443] خواهد بود.با محاسبه مقدار زیر
b3 – a4 = (0.9443 – 0.6525) => 0.292
مشاهده می کنیم که مقدار بدست آمده کمتر از 3 می باشد و ما به نقطه مورد نظر رسیدیم.
روش جستجوی طلایی را میتوان با سایر روشهای بهینهسازی تکبعدی مانند جستجوی دودویی (Binary Search) مقایسه کرد. جستجوی دودویی نیز یک روش تقسیم و غلبه است، اما به جای نسبت طلایی از تقسیم بازه به دو نیمه مساوی استفاده میکند. روش جستجوی طلایی معمولاً از جستجوی دودویی کارآمدتر است، زیرا در هر مرحله بازه جستجو را به طور موثرتری کاهش میدهد.
همچنین، روش جستجوی طلایی را میتوان با روشهای بهینهسازی مبتنی بر گرادیان (Gradient-Based Optimization) مقایسه کرد. روشهای مبتنی بر گرادیان از مشتق تابع هدف برای یافتن جهت حرکت به سمت کمینه استفاده میکنند. روش جستجوی طلایی نیازی به مشتقگیری ندارد، که این امر آن را برای توابعی که مشتقگیری از آنها دشوار یا غیرممکن است، مناسب میسازد.
برای بهبود عملکرد روش جستجوی طلایی، میتوان از چند نکته و ترفند استفاده کرد. یکی از مهمترین نکات، تعیین یک بازه اولیه مناسب است. بازه اولیه باید به گونهای انتخاب شود که تابع هدف در آن بازه کمینه (یا بیشینه) داشته باشد.
همچنین، میتوان از تکنیکهای کاهش نرخ یادگیری (Learning Rate Decay) استفاده کرد. این تکنیکها به طور تدریجی نرخ یادگیری را کاهش میدهند، که این امر میتواند به بهبود همگرایی روش جستجوی طلایی در مسائل پیچیده کمک کند.
ترکیب روش جستجوی طلایی با سایر روشهای بهینهسازی نیز میتواند عملکرد آن را بهبود بخشد. به عنوان مثال، میتوان از روش جستجوی طلایی برای یافتن یک تخمین اولیه از راه حل بهینه استفاده کرد و سپس از یک روش بهینهسازی پیچیدهتر برای بهبود این تخمین استفاده کرد.
روش جستجوی طلایی یک روش بهینهسازی تکبعدی قدرتمند و کارآمد است که در زمینههای مختلفی کاربرد دارد. این روش به دلیل سادگی پیادهسازی، کارآمدی در مسائل تکبعدی و عدم نیاز به مشتقگیری، به یک ابزار ارزشمند برای حل مسائل بهینهسازی تبدیل شده است.
امیدواریم این مقاله به شما در درک و استفاده از روش جستجوی طلایی کمک کرده باشد. با تسلط بر این روش، شما قادر خواهید بود مسائل بهینهسازی تکبعدی را به طور موثرتری حل کنید و به نتایج بهتری دست یابید. روش جستجوی طلایی ابزاری ارزشمند در جعبه ابزار هر مهندس و دانشمندی است.
اگر به مباحث بهینهسازی و تحقیق در عملیات علاقهمند هستید، پیشنهاد میشود در کنار این مقاله، مطالب مرتبطی مانند روش گرادیان، روش تندترین شیب، روش جستجوی فیبوناچی، روش سکانت، روش نیوتن رافسون و انواع روشهای جستجوی خطی را نیز مطالعه کنید. این روشها از مهمترین الگوریتمهای بهینهسازی هستند و شناخت تفاوتها، مزایا و کاربردهای هر یک، در انتخاب مناسبترین تکنیک برای حل مسائل مختلف نقش مهمی دارد.
همچنین برای آشنایی با سایر روشهای تصمیمگیری و بهینهسازی، مطالعه مقالات روش LINMAP و روش تبادل و جانشینی نیز توصیه میشود. این مطالب به درک بهتر الگوریتمهای بهینهسازی، روشهای جستجو و تکنیکهای حل مسائل پیچیده در تحقیق در عملیات کمک کرده و دید جامعتری نسبت به ابزارهای موجود در اختیار شما قرار میدهند.