روش BFGS (انگلیسی : Broyden-Fletcher-Goldfarb-Shanno Method)، در ریاضیات (Mathematics)
انواع روش های بهینه سازی (Optimization Methods) را در آموزش زیر شرح دادیم :
روش BFGS (انگلیسی : Broyden-Fletcher-Goldfarb-Shanno Method) :
📌 معرفی
روش BFGS (Broyden-Fletcher-Goldfarb-Shanno) یکی از محبوب ترین و مؤثرترین روش های شبه-نیوتن است که به طور مستقل توسط چهار ریاضیدان به نام های Broyden، Fletcher، Goldfarb و Shanno در سال ۱۹۷۰ توسعه یافت. این روش تقریبی از خود ماتریس هسین (نه معکوس آن) را به روزرسانی می کند.
📐 فرمول به روزرسانی BFGS
در روش BFGS، ماتریس
\[ B_k \](تقریب هسین) به روزرسانی می شود. فرمول به روزرسانی به صورت زیر است:
\[ B_{k+1} = B_k - \frac{B_k s_k s_k^T B_k}{s_k^T B_k s_k} + \frac{y_k y_k^T}{y_k^T s_k} \]که در آن
\[ s_k = x_{k+1} - x_k \]و
\[ y_k = \nabla f(x_{k+1}) - \nabla f(x_k) \]. گاهی اوقات فرمول برای به روزرسانی مستقیم معکوس هسین (
\[ H_k = B_k^{-1} \]) نیز نوشته می شود:
\[ H_{k+1} = \left( I - \frac{s_k y_k^T}{y_k^T s_k} \right) H_k \left( I - \frac{y_k s_k^T}{y_k^T s_k} \right) + \frac{s_k s_k^T}{y_k^T s_k} \]🔧 مزایای BFGS نسبت به DFP
پایداری عددی بیشتر: BFGS در عمل خطاهای عددی کمتری ایجاد می کند.
خودتصحیح کنندگی (Self-Correcting): اگر در تخمین هسین خطایی رخ دهد، BFGS تمایل دارد خود را تصحیح کند.
کارایی بالاتر: برای طیف وسیعی از مسائل، BFGS سریع تر از DFP همگرا می شود.
📈 نرخ همگرایی
روش BFGS دارای همگرایی ابرخطی (Superlinear Convergence) است. یعنی:
\[ \lim_{k \to \infty} \frac{\| x_{k+1} - x^* \|}{\| x_k - x^* \|} = 0 \]این بدان معناست که سرعت همگرایی در مراحل پایانی بسیار بالا می رود.
💼 کاربردها
بهینه سازی توابع غیرخطی در ابعاد متوسط (تا هزاران متغیر).
یادگیری ماشین (برای مسائل با تعداد ویژگی های متوسط).
در کتابخانه هایی مانند SciPy (به عنوان method='BFGS') و MATLAB (fminunc) استفاده می شود.