مهمتان: إيجاد أخفض نقطة وإيجاد موضع قطع المنحنى للصفر
تحل scipy.optimize نوعين من المسائل. الأول تصغير دالة أي إيجاد المدخل الذي له أصغر مخرج. تستدعي minimize(f, x0) حيث x0 تخمينك الأول. تتبع الطريقة BFGS ميل نزولًا. أما Nelder-Mead فلا تحتاج إلى ميل وتقارن القيم فقط. وتقبل SLSQP أيضًا حدودًا وقيودًا مثل أوزان يجب أن يكون مجموعها 1. والجواب مجرد حد أدنى محلي هو قاع الوادي الذي بدأت منه، وقد يعطي x0 آخر جوابًا آخر. تحقق دائمًا من res.success.
المسألة الثانية إيجاد الجذور: حل . تحتاج brentq(g, a, b) إلى مجال تكون إشارتا عند طرفيه متعاكستين وعندها تجد جذرًا بالتأكيد بتنصيف المجال مرة بعد مرة. وبعد تنصيفًا يصير عرض المجال . أما newton(g, x0, fprime) فتستعمل ميل وهي أسرع بكثير لكنها تحتاج بداية جيدة وقد تقفز بعيدًا حين يكون الميل شبه مسطّح. وفي المالية يكون عائد السند حتى الاستحقاق جذرًا: هو المعدل الذي يجعل صيغة سعر السند مساوية لسعره في السوق. وخطوة نيوتن هي .
brentq على المجال الجذر . ولكي يقع التنصيف على المجال ضمن يلزم أي تنصيفات. وللحد الأدنى: أصلان تقلباتهما و وارتباطهما تباينهما المشترك فيكون وزن أدنى تباين في الأول . وفي بيانات حقيقية لـ SPY وTLT على أيام منذ فبراير 2005 تقلبات سنوية و وارتباط . ووزن أدنى تباين في SPY هو بتقلب . ولدالة ذات واديين مثل تتوقف minimize من عند ومن عند وهو الأخفض.- تصغير أو حل: تجد
minimizeنقطة منخفضة وتجدbrentqوnewtonموضع انعدام الدالة. - المجال ضمان: تتقارب
brentqدائمًا إذا اختلفت الإشارتان بينماnewtonأسرع لكنها تحتاج بداية جيدة. - قد يكون الحد الأدنى محليًا: جرّب عدة نقاط بداية واقرأ
res.successقبل الوثوق بـres.x.
المختبر: ما الذي يُقيَّم
- خطوة نيوتن واحدة15 نقطة
- تنصيفات التنصيف10 نقطة
- وزن أدنى تباين15 نقطة
- الأداة المناسبة لكل عمل15 نقطة
- سير عمل التقلب الضمني10 نقطة
- حد أدنى ربما كان محليًا10 نقطة
- لماذا المجال ولماذا قد تفشل نيوتن25 نقطة