برنامج تربيعي مقيد تربيعيًا
في مجال التحسين الرياضي ، يُعدّ برنامج التحسين التربيعي المقيد تربيعيًا ( QCQP ) مسألة تحسين تكون فيها كل من دالة الهدف والقيود دوالًا تربيعية . ويأخذ الشكل التالي:
حيث P 0 , ..., P m هي مصفوفات من الرتبة n × n و x ∈ R n هو متغير التحسين.
إذا كانت المصفوفات P₀ ، ... ، Pₘ موجبة شبه محددة ، فإن المسألة تكون محدبة . أما إذا لم تكن هذه المصفوفات موجبة ولا سالبة شبه محددة، فإن المسألة تكون غير محدبة. وإذا كانت المصفوفات P₁ ، ...، Pₘ جميعها تساوي صفرًا، فإن القيود تكون خطية، وتكون المسألة برنامجًا تربيعيًا .
صلابة
يمكن حل مسألة QCQP المحدبة بكفاءة باستخدام طريقة النقطة الداخلية (في وقت متعدد الحدود)، وعادةً ما تتطلب حوالي 30-60 تكرارًا للتقارب. أما حل الحالة العامة غير المحدبة فهو مسألة صعبة من نوع NP .
لتوضيح ذلك، لاحظ أن القيدين x₁ ( x₁ - 1) ≤ 0 و x₁ ( x₁ - 1) ≥ 0 يُكافئان القيد x₁ ( x₁ - 1) = 0، والذي بدوره يُكافئ القيد x₁ ∈ {0, 1}. وبالتالي، يُمكن صياغة أي برنامج عددي ثنائي (حيث يجب أن تكون جميع المتغيرات إما 0 أو 1) كبرنامج تربيعي مقيد تربيعيًا. وبما أن البرمجة العددية الثنائية هي مسألة صعبة الحل ( NP - hard) بشكل عام ، فإن QCQP هي أيضًا مسألة صعبة الحل (NP-hard).
مع ذلك، حتى في مسائل البرمجة التربيعية المقيدة غير المحدبة، يمكن عمومًا إيجاد حل محلي باستخدام صيغة غير محدبة من طريقة النقطة الداخلية. في بعض الحالات (مثل حل مسائل البرمجة غير الخطية باستخدام منهجية البرمجة التربيعية المقيدة المتسلسلة)، تكون هذه الحلول المحلية جيدة بما يكفي لقبولها.
الاسترخاء
توجد طريقتان رئيسيتان لتخفيف مشكلة QCQP: استخدام البرمجة شبه المحددة (SDP)، واستخدام تقنية إعادة الصياغة والخطية (RLT). بالنسبة لبعض فئات مسائل QCQP (وتحديدًا مسائل QCQP ذات العناصر القطرية الصفرية في مصفوفات البيانات)، تتوفر طرق تخفيف باستخدام البرمجة المخروطية من الدرجة الثانية (SOCP) والبرمجة الخطية (LP) تُعطي نفس قيمة الهدف التي تُعطيها طريقة التخفيف باستخدام SDP. [ 1 ]
يمكن حلّ مسائل البرمجة التربيعية شبه المحددة غير المحدبة ذات العناصر غير القطرية غير الموجبة بدقة باستخدام تقنيات الاسترخاء شبه المحددة (SDP) أو البرمجة التربيعية المتدرجة (SOCP)، [ 2 ] وتوجد شروط كافية قابلة للتحقق في زمن متعدد الحدود لكي تكون تقنيات الاسترخاء شبه المحددة لمسائل البرمجة التربيعية شبه المحددة العامة دقيقة. [ 3 ] علاوة على ذلك، فقد ثبت أن فئة من مسائل البرمجة التربيعية شبه المحددة العامة العشوائية لها تقنيات استرخاء شبه محددة دقيقة باحتمالية عالية طالما أن عدد القيود لا ينمو أسرع من دالة متعددة الحدود ثابتة في عدد المتغيرات. [ 3 ]
البرمجة شبه المحددة
عندما تكون P 0 ، ... ، P m جميعها مصفوفات موجبة محددة ، فإن المشكلة محدبة ويمكن حلها بسهولة باستخدام طرق النقطة الداخلية ، كما هو الحال مع البرمجة شبه المحددة .
مثال
- مسألة القطع الأقصى هي مسألة في نظرية المخططات، وهي مسألة صعبة من نوع NP. تتمثل هذه المسألة، عند إعطاء مخطط، في تقسيم رؤوسه إلى مجموعتين، بحيث تنتقل أكبر عدد ممكن من الحواف من مجموعة إلى أخرى. يمكن صياغة مسألة القطع الأقصى كمسألة QCQP، ويُوفر استرخاء SDP للمسألة الثنائية حدودًا دنيا جيدة.
- تُستخدم تقنية QCQP لضبط إعدادات الآلة بدقة في التطبيقات عالية الدقة مثل الطباعة الضوئية .
برامج حل المشكلات ولغات البرمجة النصية
| اسم | معلومات موجزة |
|---|---|
| ALGLIB | ALGLIB، وهي مكتبة عددية مفتوحة المصدر/تجارية، تتضمن برنامج حل QP يدعم قيود المساواة/عدم المساواة/المدى التربيعية، بالإضافة إلى أنواع أخرى من القيود (المخروطية). |
| أرتليس نيترو | Knitro هو برنامج حل متخصص في التحسين غير الخطي، ولكنه يحل أيضًا مشاكل البرمجة الخطية، ومشاكل البرمجة التربيعية، وبرمجة المخروط من الدرجة الثانية، وأنظمة المعادلات غير الخطية، والمشاكل ذات قيود التوازن. |
| فيكو إكسبريس | برنامج تجاري لحل مسائل التحسين للبرمجة الخطية، والبرمجة غير الخطية، والبرمجة الخطية المختلطة، والبرمجة التربيعية المحدبة، والبرمجة التربيعية المحدبة المقيدة تربيعياً، وبرمجة المخروط من الدرجة الثانية ونظائرها المختلطة. |
| AMPL | |
| مجمع | أداة حل شهيرة مزودة بواجهة برمجة تطبيقات (API) للعديد من لغات البرمجة. مجانية للأكاديميين. |
| موسك | برنامج لحل مسائل التحسين واسعة النطاق مع واجهة برمجة تطبيقات (API) للعديد من اللغات (C++، جافا، .net، ماتلاب، وبايثون) |
| توملاب | يدعم برنامج TOMLAB التحسين العالمي، والبرمجة العددية الصحيحة، وجميع أنواع المربعات الصغرى، والبرمجة الخطية، والبرمجة التربيعية، والبرمجة غير المقيدة في MATLAB . كما يدعم البرنامج أدوات حل المعادلات مثل CPLEX و SNOPT و KNITRO . |
| وولفرام ماثيماتيكا | قادر على حل مسائل من نوع QCQP باستخدام وظائف مثل Minimize . |
| كلارابيل | برنامج حل عددي مفتوح المصدر للنقاط الداخلية لمشاكل التحسين المحدب، يدعم برمجة المخروط من الدرجة الثانية. |
مراجع
- ↑ كيميزوكا، ماساكي؛ كيم، سون يونغ؛ ياماشيتا، ماكوتو (2019). "حل مسائل التجميع مع التقطيع الزمني باستخدام استرخاءات البرمجة الخطية وبرمجة التربيع الأدنى المُتحكم بها وطرق إعادة الجدولة". مجلة التحسين العالمي . 75 (3): 631-654 . doi : 10.1007/s10898-019-00795-w . ISSN 0925-5001 . S2CID 254701008 .
- ↑ كيم، سون يونغ؛ كوجيما، ماساكازو (2003). "حلول دقيقة لبعض مسائل التحسين التربيعي غير المحدبة باستخدام استرخاءات البرمجة شبه المحددة (SDP) والبرمجة التربيعية المتدرجة (SOCP)". التحسين الحسابي وتطبيقاته . 26 (2): 143-154 . doi : 10.1023/A:1025794313696 . S2CID 1241391 .
- 1 2 بورر، صموئيل؛ يي، يينيو (2019-02-04). "صياغات شبه محددة دقيقة لفئة من البرامج التربيعية غير المحدبة (العشوائية وغير العشوائية)". البرمجة الرياضية . 181 : 1-17 . arXiv : 1802.02688 . doi : 10.1007/s10107-019-01367-2 . ISSN 0025-5610 . S2CID 254143721 .
- بويد، ستيفن؛ ليفين فاندنبيرغ (2004). التحسين المحدب . كامبريدج: مطبعة جامعة كامبريدج. ISBN 978-0-521-83378-3.
للمزيد من القراءة
في الإحصاء
- ألبرز، سي جيه، كريتشلي، إف، غاور، جيه سي (2011). "مسائل التصغير التربيعي في الإحصاء" (ملف PDF) . مجلة التحليل متعدد المتغيرات . 102 (3): 698-713 . doi : 10.1016/j.jmva.2009.12.018 . hdl : 11370/6295bde7-4de1-48c2-a30b-055eff924f3e .
{{cite journal}}: صيانة CS1: أسماء متعددة: قائمة المؤلفين ( رابط )
روابط خارجية
- دليل تحسين NEOS: البرمجة التربيعية المقيدة ( مؤرشف بتاريخ 2013-04-02 في Wayback Machine)
- التحسين الرياضي
