روش بی‌اف‌جی‌اس

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

روش BFGS روشی در محاسبات عددی بهینه‌سازی (ریاضیات) است برای برنامه‌سازی غیرخطی بدون قید. این روش تقریبی برای روش بهینه سازی نیوتون است.

ایده ی عملکرد[ویرایش]

جهت جستجو pk در لحظه ی k ام توسط پاسخ معادله ی نیوتون داده می شود.

 B_k \mathbf{p}_k = - \nabla f(\mathbf{x}_k)

که در آن B_k تقریبی به ماتریس هشین است که در هر مرحله بروز رسانی می شود و \nabla f(\mathbf{x}_k) گرادیان تابع به ازای هر xk است.

الگوریتم[ویرایش]

با شروع از مقدار اولیه \mathbf{x}_0 و مقدار تقریبی اولیه B_0 مراحل زیر تکرار می شوند تا اینکه به تقریب مورد نظر x برسیم.

  1. انتخاب جهت \mathbf{p}_k با حل : B_k \mathbf{p}_k = -\nabla f(\mathbf{x}_k)..
  2. انجام جستجوی خطی برای یافتن بهترین سایز قدم \alpha_k برای بروزرسانی \mathbf{x}_{k+1} = \mathbf{x}_k + \alpha_k\mathbf{p}_k..
  3. مقدار دهی  \mathbf{s}_k=\alpha_k \mathbf{p}_k..
  4. \mathbf{y}_k = {\nabla f(\mathbf{x}_{k+1}) - \nabla f(\mathbf{x}_k)}.
  5. B_{k+1} = B_k + \frac{\mathbf{y}_k \mathbf{y}_k^{\mathrm{T}}}{\mathbf{y}_k^{\mathrm{T}} \mathbf{s}_k} - \frac{B_k \mathbf{s}_k \mathbf{s}_k^{\mathrm{T}} B_k }{\mathbf{s}_k^{\mathrm{T}} B_k \mathbf{s}_k}.

همچنین ببینید[ویرایش]

یادداشت ها[ویرایش]


منابع[ویرایش]

  • Avriel, Mordecai (2003), Nonlinear Programming: Analysis and Methods, Dover Publishing, ISBN 0-486-43227-0 

لینک های خارجی[ویرایش]