روش نلدر-مید (Nelder-Mead Method) (روش سیمپلکس)، در ریاضیات (Mathematics)
انواع روش های بهینه سازی (Optimization Methods) را در آموزش زیر شرح دادیم :
روش نلدر-مید (Nelder-Mead Method) (روش سیمپلکس) :
📌 معرفی
روش نلدر-مید (Nelder-Mead Method) که با نام روش سیمپلکس (Simplex Method) نیز شناخته می شود (نباید با روش سیمپلکس در برنامه ریزی خطی اشتباه شود)، یک روش جستجوی مستقیم (Direct Search) برای بهینه سازی توابع غیرخطی بدون استفاده از مشتقات است. این روش توسط نلدر و مید در سال ۱۹۶۵ معرفی شد.
🔺 ایده اصلی
روش نلدر-مید از یک سیمپلکس (Simplex) استفاده می کند. سیمپلکس یک چندوجهی با n+1 رأس در فضای n بعدی است (مثلا مثلث در فضای ۲ بعدی، چهاروجهی در فضای ۳ بعدی). این سیمپلکس با استفاده از عملیات مختلف (بازتاب، انبساط، انقباض، و کوچک سازی) در فضای جستجو حرکت می کند تا به نقطه بهینه برسد.
🔄 عملیات اصلی
در هر تکرار، بدترین رأس (با بالاترین مقدار تابع) شناسایی شده و سعی در جایگزینی آن با رأس بهتر می شود:
مرتب سازی: رئوس بر اساس مقدار تابع مرتب می شوند:
\[ x_1 \](بهترین) تا
\[ x_{n+1} \](بدترین).
محاسبه مرکز ثقل (Centroid): مرکز ثقل همه رئوس به جز بدترین:
\[ c = \frac{1}{n} \sum_{i=1}^n x_i \].
بازتاب (Reflection):
\[ x_r = c + \alpha (c - x_{n+1}) \](معمولا
\[ \alpha=1 \]). اگر
\[ x_r \]بهتر از بهترین نباشد اما از دومین بدترین بهتر باشد، جایگزین
\[ x_{n+1} \]می شود.
انبساط (Expansion): اگر
\[ x_r \]بهتر از بهترین باشد،
\[ x_e = c + \gamma (x_r - c) \](معمولا
\[ \gamma=2 \]). اگر
\[ x_e \]بهتر از
\[ x_r \]باشد، جایگزین می شود.
انقباض بیرونی (Outside Contraction): اگر
\[ x_r \]بین دومین بدترین و بدترین باشد،
\[ x_{oc} = c + \rho (x_r - c) \](معمولا
\[ \rho=0.5 \]). اگر بهتر از
\[ x_r \]بود، جایگزین می شود.
انقباض داخلی (Inside Contraction): اگر
\[ x_r \]بدتر از بدترین باشد،
\[ x_{ic} = c - \rho (x_r - c) \]. اگر بهتر از بدترین بود، جایگزین می شود.
کوچک سازی (Shrink): اگر هیچکدام از مراحل مؤثر نبود، همه رئوس به جز بهترین به سمت بهترین کوچک می شوند:
\[ x_i = x_1 + \sigma (x_i - x_1) \](معمولا
\[ \sigma=0.5 \]).