برنامه‌نویسی پویای دیفرانسیلی کیست؟ توضیح بده.
برنامه‌نویسی پویای دیفرانسیلی (DDP)، یک الگوریتم کنترلی بهینه از رده بهینه سازی مسیر است. این الگوریتم در سال (۱۹۹۶) توسط ماینی Mayne معرفی شد و بعدها در کتاب جاکوبسون (Jacobson )و ماینی مورد تحلیل قرارگرفت. این الگوریتم از مدل‌های با مرتبه دوی توابع هزینه و حرکت بهره می برد و همگرایی از نوع درجه دومquadratic convergence را به نمایش می گذارد. این رویکرد خیلی نزدیک به روش نیوتون(Newton) قدم به قدم که متعلق به پانتوجا(Pantoja) هست می‌باشد .مسائل زمان گسسته با کران محدود.مکانیک حرکت:این فرمول تغییرات formula_1را به صورت تابعی از متغیرکنترلی formula_2از زمان formula_3تا formula_4 نشان می‌دهد. "هزینه کل" formula_5 یعنی مجموع هزینه‌های اجرا formula_6و هزینه نهایی formula_7است که وقتی محقق می‌شود که با شروع از وضعیت formula_8و اعمال دنباله کنترلی formula_9 به کران مورد نظر برسیم:در اینجا formula_11است وformula_12 برای formula_13 از معادله بدست می آید. راه حل مسئله کنترل بهینه، مینیمم کردن دنباله کنترلی formula_14 است. "بهینه سازی مسیر" یعنی پیدا کردنformula_15برای یک formula_8خاص به جای تمامی وضعیت‌های اولیهٔ ممکن.برنامه نویسی پویا.فرض کنید کهformula_17یک دنباله کنترل جزئیformula_18 باشد : و "هزینه رفتن" به formula_19به صورت مجموع جزئی هزینه هاازformula_3 به formula_21تعریف شود:هزینه بهینهٔ رفتن یا "تابع ارزش "در زمان formula_3، هزینه رفتنی است که دنباله کنترلی مینیمم را می‌دهد:این معادله بلمن(Bellman) معادله بلمناست.برنامه نویسی پویای دیفرانسیلی.DDP، از طریق انجام تکراری یک پاس روبه عقب روی مسیری جزئی انجام می‌شود تا دنباله کنترلی جدید تولید کند و سپس یک پاس رو به جلو برای محاسبه و ارزیابی یک مسیر جزئی جدید انجام می‌شود. ما با پاس رو به عقب شروع می کنیم. اگرآرگومانی از عملگر formula_27 در معادله باشد، formula_28را تغییرات این کمیت درمحدوده formula_3امین جفت formula_30 در نظر می گیریم:و آن را به مرتبه 2 بسط می دهیم. &amp; Q_{\mathbf{x}\mathbf{u}}\\1\\\delta\mathbf{x}\\زیرنویس formula_28 در اینجا نوع دیگر از زیرنویسی موریموتو(Morimoto) است که زیرنویس‌ها تفاوت در چیدمان مشتق را نشان می دهند. با رها کردن اندیس formula_3 جهت خوانایی، علامت پرایم گام زمانی بعدی را نشان می‌دهد formula_34 ، ضرایب بسط داده شده به صورت زیر هستند:جملات آخر در سه معادله آخر ادغانم یک بردار را با یک تانسور نشان می دهند. با کمینه کردن تخمین درجه دوم برحسب formula_36داریم:^* = \operatorname{argmin}\limits_{\delta \mathbf{u}}Q(\delta \mathbf{x},\delta\mathbf{u})=-Q_{\mathbf{u}\mathbf{u}}^{-1}(Q_\mathbf{u}+Q_{\mathbf{u}\mathbf{x}}\delta \mathbf{x}),با دادن جمله حلقه باز formula_37 و جمله بازخورد formula_38 و قرار دادن نتیجه در اکنون ما مدل درجه دوم ارزش در زمان formula_3 را داریم:با محاسبه بازگشتی مدل‌های درجه دوم محلی از formula_41و اصلاحات کنترلی formula_42 ، از formula_43تا formula_44 گذر رو به عقب را تشکیل می‌شود. همانند بالا، ارزش با formula_25 مقداردهی اولیه می‌شود. هر وقت گذر روبه عقب کامل شد، گذر روبه جلو یک مسیر جدیدی را محاسبه می نماید:پاس‌های روبه عقب و جلو آنقدر تکرار می‌شوند تا در نهایت همگرا شوند.قاعده سازی و جستجوی خطی.برنامه‌نویسی پویای دیفرانسیلی الگویتم مرتبه دویی شبیه به روش نیوتون است. بنابراین این روش از گام‌های بزرگی در راستای مینیم کردن بهره می برد و اغلب نیاز به قاعده سازیregularization و/یا جستجوی خطی line-search برای رسیدن همگرایی دارد.. قاعده سازی در زمینه DDP، یعنی اطمینان پیدا کردن از اینکه ماتریس formula_47در معادله همیشه مثبت positive definite است. جستجوی خطی در DDP یعنی تغییر مقیاس دادن کنترل حلقه باز formula_48از طریق ضریب آلفا که به نحوی که formula_49 برقرار باشد.