البرمجة شبه المحددة

البرمجة شبه المحددة ( SDP ) هي فرع من فروع البرمجة الرياضية يهتم بتحسين دالة هدف خطية (دالة يحددها المستخدم ويريد المستخدم تقليلها أو زيادتها) على تقاطع مخروط المصفوفات شبه المحددة الموجبة مع فضاء أفيني ، أي، مجسم طيفي . [ 1 ]

البرمجة شبه المحددة مجالٌ حديثٌ نسبيًا في علم التحسين، ويحظى باهتمامٍ متزايدٍ لعدة أسباب. يمكن نمذجة أو تقريب العديد من المشكلات العملية في بحوث العمليات والتحسين التوافقي كمسائل برمجة شبه محددة. في نظرية التحكم الآلي، تُستخدم مسائل البرمجة شبه المحددة في سياق متباينات المصفوفات الخطية . في الواقع، تُعدّ مسائل البرمجة شبه المحددة حالةً خاصةً من برمجة المخروط ، ويمكن حلّها بكفاءة باستخدام طرق النقطة الداخلية . يمكن التعبير عن جميع البرامج الخطية والبرامج التربيعية (المحدبة) كمسائل برمجة شبه محددة، ويمكن لتسلسل مجموع مربعات مسائل البرمجة شبه المحددة تقريب حلول مسائل التحسين متعددة الحدود. استُخدمت البرمجة شبه المحددة في تحسين الأنظمة المعقدة. في السنوات الأخيرة، صِيغت بعض مسائل تعقيد الاستعلام الكمومي بدلالة البرامج شبه المحددة.

الدافع والتعريف

الدافع الأولي

تُعرَّف مسألة البرمجة الخطية بأنها مسألة نسعى فيها إلى تعظيم أو تصغير دالة هدف خطية لمتغيرات حقيقية على متعدد السطوح . أما في البرمجة شبه المحددة، فنستخدم متجهات ذات قيم حقيقية، ويُسمح لنا بأخذ الضرب النقطي للمتجهات؛ وتُستبدل قيود عدم السلبية على المتغيرات الحقيقية في البرمجة الخطية بقيود شبه التحديد على متغيرات المصفوفات في البرمجة شبه المحددة . وبشكل أدق، يمكن تعريف مسألة البرمجة شبه المحددة العامة بأنها أي مسألة برمجة رياضية على الشكل التالي:

مينx1،...،xنRنأنا،ج[ن]جأنا،ج(xأناxج)رهناً بـأنا،ج[ن]أأنا،ج،ك(xأناxج)بك للجميع ك{\displaystyle {\begin{array}{rl}{\displaystyle \min _{x^{1},\ldots ,x^{n}\in \mathbb {R} ^{n}}}&{\displaystyle \sum _{i,j\in [n]}c_{i,j}(x^{i}\cdot x^{j})}\\{\text{subject to}}&{\displaystyle \sum _{i,j\in [n]}a_{i,j,k}(x^{i}\cdot x^{j})\leq b_{k}}{\text{ for all }}k\\\end{array}}}

حيثجأنا،ج،أأنا،ج،ك{\displaystyle c_{i,j},a_{i,j,k}}وبك{\displaystyle b_{k}}هي أعداد حقيقية وxأناxج{\displaystyle x^{i}\cdot x^{j}}هو حاصل الضرب النقطي لـxأنا{\displaystyle x^{i}}و xج{\displaystyle x^{j}}.

الصيغ المتكافئة

أنن×ن{\displaystyle n\times n}مصفوفةم{\displaystyle M}يُقال إن المصفوفة شبه موجبة إذا كانت مصفوفة غرام لبعض المتجهات (أي إذا وُجدت متجهات).x1،...،xن{\displaystyle x^{1},\ldots ,x^{n}}بحيثمأنا،ج=xأناxج{\displaystyle m_{i,j}=x^{i}\cdot x^{j}}للجميعأنا،ج{\displaystyle i,j}). إذا كان هذا هو الحال، فإننا نرمز إلى ذلك بـم0{\displaystyle M\succeq 0}لاحظ أن هناك العديد من التعريفات المكافئة الأخرى لكونها شبه موجبة، على سبيل المثال، المصفوفات شبه الموجبة هي مصفوفات ذاتية الترافق لها قيم ذاتية غير سالبة فقط .

يرمز بـSن{\displaystyle \mathbb {S} ^{n}}مساحة الجميعن×ن{\displaystyle n\times n}المصفوفات المتناظرة الحقيقية. الفضاء مزود بالضرب الداخلي (حيثترأجهـ{\displaystyle {\rm {trace}}}يشير إلى الأثر ):

أ،ب:=ترأجهـ(أتيب)=أنا=1،ج=1نأأناجبأناج.{\displaystyle \langle A,B\rangle :={\rm {trace}}(A^{T}B)=\sum _{i=1,j=1}^{n}A_{ij}B_{ij}.}

يمكننا إعادة كتابة البرنامج الرياضي الوارد في القسم السابق بشكل مكافئ على النحو التالي:

مينXSنج،Xرهناً بـأك،Xبك،ك=1،...،مX0.{\displaystyle {\begin{array}{rl}{\displaystyle \min _{X\in \mathbb {S} ^{n}}}&\langle C,X\rangle \\{\text{subject to}}&\langle A_{k},X\rangle \leq b_{k},\quad k=1,\ldots ,m\\&X\succeq 0.\end{array}}}

مكان الدخولأنا،ج{\displaystyle i,j}فيج{\displaystyle C}يُعطى بواسطةجأنا،ج+جج،أنا2{\displaystyle {\frac {c_{i,j}+c_{j,i}}{2}}}من القسم السابق وأك{\displaystyle A_{k}}هو متناظرن×ن{\displaystyle n\times n}مصفوفةأنا،ج{\displaystyle i,j}المدخل رقم 1أأنا،ج،ك+أج،أنا،ك2{\displaystyle {\frac {a_{i,j,k}+a_{j,i,k}}{2}}}من القسم السابق. وبالتالي، فإن المصفوفات ج{\displaystyle C}وأك{\displaystyle A_{k}}متناظرة، والمنتجات الداخلية المذكورة أعلاه محددة جيدًا.

لاحظ أنه إذا أضفنا متغيرات الركود بشكل مناسب، فيمكن تحويل هذا النموذج شبه المحدد إلى شكل معادلة :

مينXSنج،Xرهناً بـأك،X=بك،ك=1،...،مX0.{\displaystyle {\begin{array}{rl}{\displaystyle \min _{X\in \mathbb {S} ^{n}}}&\langle C,X\rangle \\{\text{subject to}}&\langle A_{k},X\rangle =b_{k},\quad k=1,\ldots ,m\\&X\succeq 0.\end{array}}}

لتبسيط الأمر، يمكن تحديد SDP بصيغة مختلفة قليلاً، ولكنها مكافئة. على سبيل المثال، يمكن إضافة التعبيرات الخطية التي تتضمن متغيرات عددية غير سالبة إلى مواصفات البرنامج. ويبقى هذا SDP لأن كل متغير يمكن تضمينه في المصفوفة.X{\displaystyle X}كمدخل قطري (Xأناأنا{\displaystyle X_{ii}}بالنسبة للبعضأنا{\displaystyle i}لضمان ذلكXأناأنا0{\displaystyle X_{ii}\geq 0}، قيودXأناج=0{\displaystyle X_{ij}=0}يمكن إضافته للجميعجأنا{\displaystyle j\neq i}كمثال آخر، لاحظ أنه لأي مصفوفة شبه موجبة محددةX{\displaystyle X}، توجد مجموعة من المتجهات{vأنا}{\displaystyle \{v_{i}\}}بحيث يكونأنا{\displaystyle i}،ج{\displaystyle j}دخولX{\displaystyle X}يكونXأناج=(vأنا،vج){\displaystyle X_{ij}=(v_{i},v_{j})}الضرب القياسي لـvأنا{\displaystyle v_{i}}وvج{\displaystyle v_{j}}لذلك، غالبًا ما تُصاغ مسائل البرمجة شبه المحددة (SDPs) بدلالة تعابير خطية على حاصل الضرب القياسي للمتجهات. وبمعرفة حل مسألة البرمجة شبه المحددة في صورتها القياسية، فإن المتجهات{vأنا}{\displaystyle \{v_{i}\}}يمكن استعادتها فييا(ن3){\displaystyle O(n^{3})}الوقت (على سبيل المثال، باستخدام تحليل تشوليسكي غير الكامل لـ X).

العلاقات مع مسائل التحسين الأخرى

فضاء المصفوفات شبه المحددة هو مخروط محدب . لذلك، فإن البرمجة شبه المحددة هي حالة خاصة من التحسين المخروطي ، وهو بدوره حالة خاصة من التحسين المحدب.

عندما تكون المصفوفةج{\displaystyle C}قطري، المنتجات الداخليةج،X{\displaystyle \langle C,X\rangle }يكافئ حاصل الضرب الاتجاهي لقطرج{\displaystyle C}والقطري لـX{\displaystyle X}وبالمثل، عندما تكون المصفوفاتأك{\displaystyle A_{k}}إذا كانت العناصر قطرية، فإن الضرب الداخلي المقابل لها يكون مكافئًا للضرب الاتجاهي. في هذه الضربات الاتجاهية، تكون العناصر القطرية فقط هيX{\displaystyle X}تُستخدم هذه القيود، لذا يمكننا إضافة قيود تساوي العناصر غير القطرية لـX{\displaystyle X}إلى 0. الشرطX0{\displaystyle X\succeq 0}وهذا يكافئ الشرط الذي تكون فيه جميع العناصر القطرية لـX{\displaystyle X}وهي غير سالبة. عندئذٍ، يصبح برنامج البرمجة شبه المحددة الناتج برنامجًا خطيًا تكون فيه المتغيرات هي العناصر القطرية لـX{\displaystyle X}.

نظرية الازدواجية

التعريفات

على غرار البرمجة الخطية، بالنظر إلى برنامج برمجة شبه محددة عام من الشكل

مينXSنج،Xرهناً بـأأنا،X=بأنا،أنا=1،...،مX0{\displaystyle {\begin{array}{rl}{\displaystyle \min _{X\in \mathbb {S} ^{n}}}&\langle C,X\rangle \\{\text{subject to}}&\langle A_{i},X\rangle =b_{i},\quad i=1,\ldots ,m\\&X\succeq 0\end{array}}}

(المسألة الأولية أو P-SDP)، نُعرّف البرنامج شبه المحدد المزدوج (D-SDP) على النحو التالي:

الأعلىyRمبتيyرهناً بـأنا=1مyأناأأناج{\displaystyle {\begin{array}{rl}{\displaystyle \max _{y\in \mathbb {R} ^{m}}}&b^{T}y\\{\text{subject to}}&{\displaystyle \sum _{i=1}^{m}}y_{i}A_{i}\preceq C\end{array}}}

حيث بالنسبة لأي مصفوفتينP{\displaystyle P}وسؤال{\displaystyle Q}،Pسؤال{\displaystyle P\succeq Q}وسائلP-سؤال0{\displaystyle P-Q\succeq 0}.

الازدواجية الضعيفة

تنص نظرية الازدواجية الضعيفة على أن قيمة مسألة البرمجة شبه المحددة الأولية (SDP) لا تقل عن قيمة مسألة البرمجة شبه المحددة الثنائية (SDP). وبالتالي، فإن أي حل ممكن لمسألة البرمجة شبه المحددة الثنائية يحد من قيمة مسألة البرمجة شبه المحددة الأولية، وعلى العكس من ذلك، فإن أي حل ممكن لمسألة البرمجة شبه المحددة الأولية يحد من قيمة مسألة البرمجة شبه المحددة الثنائية. وذلك لأن

ج،X-بتيy=ج،X-أنا=1مyأنابأنا=ج،X-أنا=1مyأناأأنا،X=ج-أنا=1مyأناأأنا،X0،{\displaystyle \langle C,X\rangle -b^{T}y=\langle C,X\rangle -\sum _{i=1}^{m}y_{i}b_{i}=\langle C,X\rangle -\sum _{i=1}^{m}y_{i}\langle A_{i},X\rangle =\langle C-\sum _{i=1}^{m}y_{i}A_{i},X\rangle \geq 0,}

حيث أن المتباينة الأخيرة هي لأن كلا المصفوفتين شبه موجبة، ويشار أحيانًا إلى نتيجة هذه الدالة باسم فجوة الازدواجية.

ازدواجية قوية

عندما تتساوى قيمة برنامج البرمجة شبه المحددة (SDP) الأولي والثنائي، يُقال إن برنامج البرمجة شبه المحددة يحقق خاصية الازدواجية القوية . على عكس البرامج الخطية ، حيث يكون لكل برنامج خطي ثنائي هدف أمثل يساوي هدف البرنامج الأولي، لا يحقق كل برنامج برمجة شبه محددة خاصية الازدواجية القوية؛ بشكل عام، قد تكون قيمة برنامج البرمجة شبه المحددة الثنائي أقل بكثير من قيمة البرنامج الأولي، ويحقق كل من برنامج البرمجة شبه المحددة الأولي (P-SDP) وبرنامج البرمجة شبه المحددة الثنائي (D-SDP) الخصائص التالية:

(أ) لنفترض أن المسألة الأولية (P-SDP) محدودة من الأسفل وقابلة للحل تمامًا (أي، يوجد X0Sن،X00{\displaystyle X_{0}\in \mathbb {S} ^{n},X_{0}\succ 0}بحيثأأنا،X0=بأنا{\displaystyle \langle A_{i},X_{0}\rangle =b_{i}}،أنا=1،...،م{\displaystyle i=1,\ldots ,m}ثم يوجد حل أمثلy*{\displaystyle y^{*}}إلى (D-SDP) و

ج،X*=بتيy*.{\displaystyle \langle C,X^{*}\rangle =b^{T}y^{*}.}

(ii) لنفترض أن المسألة الثنائية (D-SDP) محدودة من الأعلى وقابلة للحل تمامًا (أي، أنا=1م(y0)أناأأناج{\displaystyle \sum _{i=1}^{m}(y_{0})_{i}A_{i}\prec C}بالنسبة للبعضy0Rم{\displaystyle y_{0}\in \mathbb {R} ^{m}}ثم يوجد حل أمثلX*{\displaystyle X^{*}}إلى (P-SDP) ويتحقق التساوي من (i).

يُعد شرط سلاتر شرطًا كافيًا لتحقيق الازدواجية القوية في مسائل البرمجة شبه المحددة (وبشكل عام، في أي مسألة تحسين محدبة) . كما يُمكن تحقيق الازدواجية القوية في مسائل البرمجة شبه المحددة دون شروط انتظام إضافية باستخدام مسألة ازدواجية موسعة اقترحها رامانا. [ 2 ] [ 3 ]

أمثلة

المثال 1

لنفترض وجود ثلاثة متغيرات عشوائيةأ{\displaystyle A}،ب{\displaystyle B}، وج{\displaystyle C}مجموعة معينة من معاملات الارتباطρأب، ρأج،ρبج{\displaystyle \rho _{AB},\ \rho _{AC},\rho _{BC}}تكون ممكنة إذا وفقط إذا

(1ρأبρأجρأب1ρبجρأجρبج1)0.{\displaystyle {\begin{pmatrix}1&\rho _{AB}&\rho _{AC}\\\rho _{AB}&1&\rho _{BC}\\\rho _{AC}&\rho _{BC}&1\end{pmatrix}}\succeq 0.}

تُسمى هذه المصفوفة مصفوفة الارتباط . لنفترض أننا نعلم من بعض المعرفة المسبقة (النتائج التجريبية لتجربة ما، على سبيل المثال) أن-0.2ρأب-0.1{\displaystyle -0.2\leq \rho _{AB}\leq -0.1}و0.4ρبج0.5{\displaystyle 0.4\leq \rho _{BC}\leq 0.5}مشكلة تحديد أصغر وأكبر القيم التيρأج {\displaystyle \rho _{AC}\ }يمكن أن يأخذ ما يلي:

مين/الأعلىx13رهناً بـ-0.2x12-0.10.4x230.5(1x12x13x121x23x13x231)0{\displaystyle {\begin{array}{rl}{\displaystyle \min /\max }&x_{13}\\{\text{subject to}}&-0.2\leq x_{12}\leq -0.1\\&0.4\leq x_{23}\leq 0.5\\&{\begin{pmatrix}1&x_{12}&x_{13}\\x_{12}&1&x_{23}\\x_{13}&x_{23}&1\end{pmatrix}}\succeq 0\end{array}}}

لقد حددناρأب=x12، ρأج=x13، ρبج=x23{\displaystyle \rho _{AB}=x_{12},\ \rho _{AC}=x_{13},\ \rho _{BC}=x_{23}}للحصول على الإجابة، يمكن صياغة ذلك باستخدام برنامج شبه محدد. نتعامل مع قيود المتباينات عن طريق زيادة مصفوفة المتغيرات وإدخال متغيرات راكدة ، على سبيل المثال

تر((010000000000000000000100000000000000)(1x12x13000x121x23000x13x231000000s1000000s2000000s3))=x12+s1=-0.1{\displaystyle \mathrm {tr} \left(\left({\begin{array}{cccccc}0&1&0&0&0&0\\0&0&0&0&0&0\\0&0&0&0&0&0\\0&0&0&1&0&0\\0&0&0&0&0&0\\0&0&0&0&0&0\end{array}}\right)\cdot \left({\begin{array}{cccccc}1&x_{12}&x_{13}&0&0&0\\x_{12}&1&x_{23}&0&0&0\\x_{13}&x_{23}&1&0&0&0\\0&0&0&s_{1}&0&0\\0&0&0&0&s_{2}&0\\0&0&0&0&0&s_{3}\end{array}}\right)\right)=x_{12}+s_{1}=-0.1}

حل هذه المسألة البرمجية شبه المحددة يعطي القيم الدنيا والقصوى لـρأج=x13 {\displaystyle \rho _{AC}=x_{13}\ }مثل-0.978{\displaystyle -0.978}و0.872{\displaystyle 0.872}على التوالى.

المثال 2

لننظر في المشكلة

تقليل(جتيx)2دتيx{\displaystyle {\frac {(c^{T}x)^{2}}{d^{T}x}}}
رهناً بـأx+ب0{\displaystyle Ax+b\geq 0}

حيث نفترض أندتيx>0{\displaystyle d^{T}x>0}حينماأx+ب0{\displaystyle Ax+b\geq 0}.

إدخال متغير مساعدت{\displaystyle t}يمكن إعادة صياغة المشكلة:

تقليلت{\displaystyle t}
رهناً بـأx+ب0،(جتيx)2دتيxت{\displaystyle Ax+b\geq 0,\,{\frac {(c^{T}x)^{2}}{d^{T}x}}\leq t}

في هذه الصيغة، يكون الهدف دالة خطية للمتغيراتx،ت{\displaystyle x,t}.

يمكن كتابة القيد الأول على النحو التالي:

التشخيص(أx+ب)0{\displaystyle {\textbf {diag}}(Ax+b)\geq 0}

حيث المصفوفةالتشخيص(أx+ب){\displaystyle {\textbf {diag}}(Ax+b)}هي مصفوفة مربعة قيم عناصر قطرها الرئيسي تساوي عناصر المتجهأx+ب{\displaystyle Ax+b}.

يمكن كتابة القيد الثاني على النحو التالي:

تدتيx-(جتيx)20{\displaystyle td^{T}x-(c^{T}x)^{2}\geq 0}

تعريفد{\displaystyle D}كما يلي

د=[تجتيxجتيxدتيx]{\displaystyle D=\left[{\begin{array}{cc}t&c^{T}x\\c^{T}x&d^{T}x\end{array}}\right]}

يمكننا استخدام نظرية مكملات شور لنرى أن

د0{\displaystyle D\succeq 0}

(بويد وفاندنبيرغ، 1996)

البرنامج شبه المحدد المرتبط بهذه المسألة هو

تقليلت{\displaystyle t}
رهناً بـ[التشخيص(أx+ب)000تجتيx0جتيxدتيx]0{\displaystyle \left[{\begin{array}{ccc}{\textbf {diag}}(Ax+b)&0&0\\0&t&c^{T}x\\0&c^{T}x&d^{T}x\end{array}}\right]\succeq 0}

المثال 3 (خوارزمية تقريب القطع الأقصى لـ Goemans-Williamson)

تُعدّ البرامج شبه المحددة أدوات مهمة لتطوير خوارزميات تقريبية لمسائل التعظيم الصعبة من نوع NP. تعود أول خوارزمية تقريبية قائمة على برنامج شبه محدد إلى ميشيل غويمانز وديفيد ب. ويليامسون (JACM، 1995). [ 1 ] : الفصل 1. درسوا مسألة القطع الأقصى : بالنظر إلى رسم بياني G = ( V , E )، المطلوب هو إخراج تجزئة للرؤوس V بحيث تُعظّم عدد الحواف المتقاطعة من جانب إلى آخر. يمكن التعبير عن هذه المسألة كبرنامج تربيعي صحيح .

تحقيق أقصى استفادة(أنا،ج)هـ1-vأناvج2،{\displaystyle \sum _{(i,j)\in E}{\frac {1-v_{i}v_{j}}{2}},}بحيث يكون كلvأنا{1،-1}{\displaystyle v_{i}\in \{1,-1\}}.

ما لم يكن P = NP ، لا يمكننا حل مسألة التعظيم هذه بكفاءة. ومع ذلك، لاحظ غومانز وويليامسون إجراءً عامًا من ثلاث خطوات لمعالجة هذا النوع من المسائل:

  1. قم بتحويل برنامج التربيع الصحيح إلى برنامج شبه محدد. (يمكن اشتقاق ذلك أيضًا باستخدام المستوى الأول من التسلسل الهرمي لمجموع المربعات .)
  2. حل مسألة البرمجة شبه المحددة (ضمن هامش خطأ إضافي صغير بشكل تعسفي)ϵ{\displaystyle \epsilon }).
  3. قم بتقريب حل SDP للحصول على حل تقريبي لبرنامج التربيع الصحيح الأصلي.

للحصول على أفضل النتائج، فإن الاسترخاء الطبيعي هو

الأعلى(أنا،ج)هـ1-vأنا،vج2،{\displaystyle \max \sum _{(i,j)\in E}{\frac {1-\langle v_{i},v_{j}\rangle }{2}},}بحيثvأنا2=1{\displaystyle \lVert v_{i}\rVert ^{2}=1}، حيث يكون التعظيم على المتجهات{vأنا}{\displaystyle \{v_{i}\}}بدلاً من الأعداد الصحيحة.

هذه مسألة برمجة شبه محددة (SDP) لأن دالة الهدف والقيود كلها دوال خطية لضرب المتجهات الداخلي. حل مسألة البرمجة شبه المحددة يعطي مجموعة من متجهات الوحدة فيRن{\displaystyle \mathbf {R^{n}} }بما أن المتجهات ليست بالضرورة على استقامة واحدة، فإن قيمة هذا البرنامج المُخفف لا يمكن أن تتجاوز قيمة برنامج الأعداد الصحيحة التربيعي الأصلي. وأخيرًا، يلزم إجراء عملية تقريب للحصول على التقسيم. يختار غومانز وويليامسون ببساطة مستوىً فائقًا عشوائيًا منتظمًا يمر بنقطة الأصل، ويقسمان الرؤوس وفقًا لموقع المتجهات المقابلة على هذا المستوى الفائق. يُظهر تحليل مباشر أن هذه العملية تحقق نسبة تقريب متوقعة (ضمان أداء) قدرها 0.87856 - ε. (القيمة المتوقعة للقطع هي مجموع احتمالية قطع الحافة على طولها، وهي تتناسب مع الزاوية).كوس-1vأنا،vج{\displaystyle \cos ^{-1}\langle v_{i},v_{j}\rangle }بين المتجهات عند نهايتي الحافة فوقπ{\displaystyle \pi }مقارنة هذا الاحتمال بـ(1-vأنا،vج)/2{\displaystyle (1-\langle v_{i},v_{j}\rangle )/{2}}(في التوقع تكون النسبة دائمًا على الأقل 0.87856.) بافتراض فرضية الألعاب الفريدة ، يمكن إثبات أن نسبة التقريب هذه هي الأمثل بشكل أساسي.

منذ الورقة البحثية الأصلية لجويمانز وويليامسون، تم تطبيق البرمجة شبه المحددة لتطوير العديد من خوارزميات التقريب. وفي وقت لاحق، طور براساد راغافيندرا إطارًا عامًا لمسائل إرضاء القيود استنادًا إلى فرضية الألعاب الفريدة . [ 4 ]

تطبيقات أخرى

طُبقت البرمجة شبه المحددة لإيجاد حلول تقريبية لمسائل التحسين التوافقي، مثل حل مسألة القطع الأقصى بنسبة تقريبية تبلغ 0.87856. كما تُستخدم البرمجة شبه المحددة في الهندسة لتحديد مخططات التنسيغريتي، وتظهر في نظرية التحكم كمتباينات خطية مصفوفية ، وفي مسائل معامل القطع الناقص العكسي كقيود محدبة وغير خطية وشبه محددة. [ 5 ] كما تُستخدم على نطاق واسع في الفيزياء لتقييد نظريات الحقول المطابقة باستخدام التمهيد المطابق . [ 6 ]

تعقيد وقت التشغيل

تُعرف مسألة الجدوى شبه المحددة (SDF) بأنها مسألة القرار التالية : بالنظر إلى مسألة برمجة شبه محددة (SDP)، يُحدد ما إذا كان لها حل ممكن واحد على الأقل. لم يكن التعقيد الزمني الدقيق لهذه المسألة معروفًا (حتى عام 1997). ومع ذلك، أثبت رامانا ما يلي: [ 2 ]

  • في نموذج آلة تورينج ، تكون مسألة SDF ضمن فئة NP إذا وفقط إذا كانت ضمن فئة co-NP. لذلك، فإن مسألة SDF ليست كاملة من فئة NP إلا إذا كانت NP=coNP.
  • في نموذج آلة بلوم-شوب-سميل ، تقع SDF في تقاطع NP و co-NP.

خوارزميات لحل مسائل البرمجة شبه المحددة

توجد عدة أنواع من الخوارزميات لحل مسائل البرمجة شبه المحددة (SDP). تُخرج هذه الخوارزميات قيمة مسألة البرمجة شبه المحددة (SDP) حتى خطأ إضافي.ϵ{\displaystyle \epsilon }في وقت يكون متعدد الحدود في حجم وصف البرنامج وسجل(1/ϵ){\displaystyle \log(1/\epsilon )}.

طريقة القطع الناقص

طريقة القطع الناقص هي طريقة عامة للبرمجة المحدبة، ويمكن استخدامها على وجه الخصوص لحل مسائل البرمجة شبه المحددة (SDP). في سياق مسائل البرمجة شبه المحددة، توفر طريقة القطع الناقص الضمان التالي: [ 1 ] : نظرية 2.6.1 : لنفترض مسألة برمجة شبه محددة بالصيغة المعادلة التالية:

الأعلىXSنج،Xرهناً بـأك،X=بك،ك=1،...،مX0.{\displaystyle {\begin{array}{rl}{\displaystyle \max _{X\in \mathbb {S} ^{n}}}&\langle C,X\rangle \\{\text{subject to}}&\langle A_{k},X\rangle =b_{k},\quad k=1,\ldots ,m\\&X\succeq 0.\end{array}}}

ليكن L هو الفضاء الجزئي الأفيني للمصفوفات في S n التي تحقق القيود المعادلاتية m ؛ لذلك يمكن كتابة SDP على النحو التالي:الأعلىXلج،X رهناً بـ X0{\displaystyle \max _{X\in L}\langle C,X\rangle {\text{ subject to }}X\succeq 0}لنفترض أن جميع المعاملات في مسألة البرمجة شبه المحددة (SDP) أعداد نسبية. ولتكن R حدًا أعلى معطى صراحةً لأقصى معيار فروبينيوس لحل ممكن، و ε > 0 ثابتًا. تُسمى المصفوفة X في S<sub> n</sub> عميقة من الرتبة ε إذا كانت كل مصفوفة Y في L <sub>n</sub> بمسافة فروبينيوس لا تتجاوز ε من X تحقق شرط الجدوى.Y0{\displaystyle Y\succeq 0}. يدلvدهـهـص:=رشفة{ج،X:X يكون ϵ-عميق}{\displaystyle v_{deep}:=\sup\{\langle C,X\rangle :X{\text{ is }}\epsilon {\text{-deep}}\}}. يُعيد الشكل الإهليلجي أحد المخرجات التالية:

  • مصفوفة X* في L (أي، تحقق جميع قيود المساواة الخطية بدقة)، بحيث تكون مسافة فروبينيوس بين X* وبعض الحلول الممكنة على الأكثر ε (أي، تحقق تقريبًا قيد المتباينة).X0{\displaystyle X\succeq 0})، وج،X*vدهـهـص-ϵ{\displaystyle \langle C,X^{*}\rangle \geq v_{deep}-\epsilon }(أي القيمة الموضوعية المثلى تقريبًا).
  • شهادة تفيد بأن المشكلة ليس لها حلول عميقة من الدرجة ε (أي أن المشكلة غير قابلة للحل تقريبًا).

وقت التشغيل متعدد الحدود في الترميزات الثنائية للمدخلات وفي log(R/ ε )، في نموذج آلة تورينج .

لاحظ أنه، بشكل عام، قد يكون R أسيًا مضاعفًا بالنسبة إلى n. في هذه الحالة، يكون ضمان وقت التشغيل لطريقة القطع الناقص أسيًا بالنسبة إلى n . ولكن في معظم التطبيقات، لا يكون R كبيرًا جدًا. في هذه الحالات، تُعد طريقة القطع الناقص الطريقة الوحيدة المعروفة التي تضمن وقت تشغيل متعدد الحدود في نموذج آلة تورينج. [ 1 ] : 23 ولكن عمليًا، لا يكون أداؤها جيدًا.

طرق النقاط الداخلية

تعتمد معظم البرامج على طرق النقاط الداخلية (CSDP، MOSEK ، SeDuMi، SDPT3 ، DSDP، SDPA). تتميز هذه الطرق بقوتها وكفاءتها في حل مسائل البرمجة شبه المحددة الخطية العامة، إلا أنها محدودة بكونها طرقًا من الدرجة الثانية، وتتطلب تخزين وتحليل مصفوفة كبيرة (وغالبًا ما تكون كثيفة). نظريًا، تعتمد أحدث خوارزميات البرمجة شبه المحددة عالية الدقة [ 7 ] [ 8 ] على هذا النهج.

طرق الرتبة الأولى

تتجنب طرق الرتبة الأولى لتحسين المخروط حساب وتخزين وتحليل مصفوفة هيسيان كبيرة، وتتميز بقدرتها على التعامل مع مسائل أكبر بكثير من طرق النقطة الداخلية، على حساب الدقة. تُطبَّق إحدى طرق الرتبة الأولى في برنامج Splitting Cone Solver (SCS). [ 9 ] وهناك طريقة أخرى من طرق الرتبة الأولى وهي طريقة الاتجاه المتناوب للمضاعفات (ADMM). [ 10 ] تتطلب هذه الطريقة في كل خطوة إسقاط المصفوفات شبه المحددة على المخروط.

طريقة الحزمة

يقوم برنامج ConicBundle بصياغة مسألة البرمجة شبه المحددة (SDP) كمسألة تحسين غير ملساء ، ويحلها باستخدام طريقة الحزمة الطيفية للتحسين غير الملساء. يُعد هذا النهج فعالاً للغاية لفئة خاصة من مسائل البرمجة شبه المحددة الخطية.

طرق حل أخرى

تتشابه الخوارزميات القائمة على طريقة لاغرانج المعززة (PENSDP) في سلوكها مع طرق النقطة الداخلية، ويمكن تخصيصها لبعض المسائل واسعة النطاق جدًا. وتستخدم خوارزميات أخرى معلومات منخفضة الرتبة وإعادة صياغة مسألة البرمجة شبه المحددة (SDP) كمسألة برمجة غير خطية (SDPLR، ManiSDP). [ 11 ]

الطرق التقريبية

تم اقتراح خوارزميات لحل مسائل البرمجة شبه المحددة (SDPs) تقريبًا. يهدف هذا النوع من الخوارزميات بشكل أساسي إلى تقليل التعقيد في التطبيقات التي تتطلب حلولًا تقريبية مع ضرورة تقليل التعقيد إلى أدنى حد. من أبرز الطرق المستخدمة في كشف البيانات في أنظمة MIMO اللاسلكية طريقة الاسترخاء شبه المحدد التقريبي المثلثي (TASER) [ 12 ] ، والتي تعتمد على عوامل تحليل Cholesky للمصفوفة شبه المحددة بدلًا من المصفوفة نفسها. تحسب هذه الطريقة حلولًا تقريبية لمسألة شبيهة بمسألة القطع الأقصى، وهي حلول غالبًا ما تكون قابلة للمقارنة مع الحلول الدقيقة، ولكن في 10-20 تكرارًا فقط للخوارزمية. وقد طور هازان [ 13 ] خوارزمية تقريبية لحل مسائل البرمجة شبه المحددة مع شرط إضافي يتمثل في أن يكون أثر مصفوفة المتغيرات مساويًا لـ 1.

خوارزميات المعالجة المسبقة

خوارزميات اختزال الوجوه هي خوارزميات تُستخدم لمعالجة مسائل البرمجة شبه المحددة مسبقًا من خلال فحص قيود المسألة. ويمكن استخدامها لـ

  • الكشف عن عدم وجود جدوى صارمة؛
  • حذف الصفوف والأعمدة الزائدة؛
  • قلل حجم مصفوفة المتغيرات. [ 14 ]

انظر أيضاً

مراجع

  1. 1 2 3 4 جارتنر، بيرند؛ ماتوسيك، جيري (2012)، جارتنر، بيرند؛ ماتوسيك، جيري (محرران)، “البرمجة شبه المحددة” ، خوارزميات التقريب والبرمجة شبه المحددة ، برلين، هايدلبرغ: سبرينغر، الصفحات من 15 إلى 25، دوى : 10.1007/978-3-642-22015-9_2 ، ISBN  978-3-642-22015-9تم الاطلاع عليه بتاريخ 31 ديسمبر 2023{{citation}}: CS1 maint: work parameter with ISBN ( link )
  2. 1 2 رامانا، موتاكوري ف. (1997). "نظرية الازدواجية الدقيقة للبرمجة شبه المحددة وآثارها على التعقيد" . البرمجة الرياضية . 77 (1): 129-162 . doi : 10.1007/BF02614433 . ISSN 0025-5610 . S2CID 12886462 .  
  3. فاندنبيرغ، ليفين؛ بويد، ستيفن (1996). "البرمجة شبه المحددة" . مجلة SIAM . 38 (1): 49-95 . doi : 10.1137/1038003 . ISSN 0036-1445 . 
  4. راغافيندرا، براساد (2008). "الخوارزميات المثلى ونتائج عدم التقريب لكل مسألة إرضاء القيود؟" . وقائع الندوة السنوية الأربعين لجمعية آلات الحوسبة حول نظرية الحوسبة . الصفحات 245-254 . doi : 10.1145/1374376.1374414 . ISBN  9781605580470. S2CID 15075197 . 
  5. هاراش، باستيان (2021)، "حل مسألة معامل القطع الناقص العكسي باستخدام البرمجة شبه المحددة غير الخطية المحدبة"، رسائل التحسين ، 16 (5): 1599-1609 ، arXiv : 2105.11440 ، doi : 10.1007/s11590-021-01802-4 ، S2CID 235166806 
  6. سيمونز-دافين، ديفيد (2015-02-06). "حلّ برنامج شبه محدد لـ Conformal Bootstrap". مجلة فيزياء الطاقة العالية . 2015 (6) 174. arXiv : 1502.02033 . Bibcode : 2015JHEP...06..174S . doi : 10.1007/JHEP06(2015)174 . S2CID 256009551 . 
  7. ^ جيانغ، هاوتيان؛ كاثوريا، تارون؛ لي، يين تات؛ بادمانابهان، سواتي؛ سونغ تشاو (نوفمبر 2020). “طريقة أسرع للنقاط الداخلية للبرمجة شبه المحددة”. الندوة السنوية الحادية والستون لـ IEEE لعام 2020 حول أسس علوم الكمبيوتر (FOCS) . دورهام، كارولاينا الشمالية، الولايات المتحدة الأمريكية: IEEE. ص 910 – 918. أرخايف : 2009.10217 . دوى : 10.1109/FOCS46700.2020.00089 . رقم ISBN  978-1-7281-9621-3. S2CID 221836388 . 
  8. ^ هوانغ ، بايخه. جيانغ، شونهوا؛ سونغ، تشاو؛ تاو، رونتشو؛ تشانغ ، رويزهي (2021/11/18). “حل SDP بشكل أسرع: إطار عمل قوي لإدارة المكافحة المتكاملة للآفات والتنفيذ الفعال”. أرخايف : 2101.08208 [ math.OC ].
  9. بريندان أودونوغ، إريك تشو، نيل باريك، ستيفن بويد، "التحسين المخروطي عبر تقسيم المشغل والتضمين الذاتي المزدوج المتجانس"، مجلة نظرية التحسين والتطبيقات، 2016، ص 1042-1068، https://web.stanford.edu/~boyd/papers/pdf/scs.pdf .
  10. وين، زايوين، دونالد غولدفراب، ووتاو ين. "طرق لاغرانج المعززة ذات الاتجاه المتناوب للبرمجة شبه المحددة." حساب البرمجة الرياضية 2.3-4 (2010): 203-230.
  11. بورر، صموئيل؛ مونتيرو، ريناتو دي سي (2003)، "خوارزمية برمجة غير خطية لحل البرامج شبه المحددة عبر تحليل الرتبة المنخفضة"، البرمجة الرياضية ، 95 (2): 329-357 ، CiteSeerX 10.1.1.682.1520 ، doi : 10.1007/s10107-002-0352-8 ، ISSN 1436-4646 ، S2CID 7691228   
  12. كاستانيدا، أ.؛ غولدشتاين، ت.؛ ستودر، س. (ديسمبر 2016). "الكشف عن البيانات في أنظمة لاسلكية متعددة الهوائيات كبيرة الحجم عبر الاسترخاء شبه المحدد التقريبي" . معاملات IEEE في الدوائر والأنظمة I: أوراق بحثية عادية . 63 (12): 2334-2346 . arXiv : 1609.01797 . Bibcode : 2016ITCSR..63.2334C . doi : 10.1109/TCSI.2016.2607198 . hdl : 20.500.11850/448631 . ISSN 1558-0806 . 
  13. هازان، إيلاد (2008). "حلول تقريبية متفرقة لبرامج شبه محددة" . في: لابير، إدواردو ساني؛ بورنشتاين، كلودسون؛ نوغيرا، لوانا تيتو؛ فاريا، لويربيو (محررون). LATIN 2008: المعلوماتية النظرية . سلسلة محاضرات في علوم الحاسوب. المجلد 4957. برلين، هايدلبرغ: سبرينغر. الصفحات 306-316 . doi : 10.1007/978-3-540-78773-0_27 . ISBN   978-3-540-78773-0.
  14. تشو، يوزيكسوان؛ باتاكي، غابور؛ تران-دينه، كوك (2019)، "Sieve-SDP: خوارزمية بسيطة لتقليل الوجه لمعالجة البرامج شبه المحددة مسبقًا" ، الحوسبة البرمجية الرياضية ، 11 (3): 503-586 ، arXiv : 1710.08954 ، doi : 10.1007/s12532-019-00164-4 ، ISSN 1867-2949 ، S2CID 53645581  
  • ليفين فاندنبيرغ، ستيفن بويد، "البرمجة شبه المحددة"، مجلة SIAM Review، العدد 38، مارس 1996، الصفحات  49-95. pdf
  • مونيك لوران، فرانز ريندل، "البرمجة شبه المحددة والبرمجة العددية الصحيحة"، التقرير PNA-R0210، CWI، أمستردام، أبريل 2002. optimization-online
  • إي. دي كليرك، "جوانب البرمجة شبه المحددة: خوارزميات النقطة الداخلية وتطبيقات مختارة"، دار نشر كلوير الأكاديمية، مارس 2002، رقم ISBN 1-4020-0547-4.
  • روبرت م. فرويند، "مقدمة في البرمجة شبه المحددة (SDP)"، مقدمة في البرمجة شبه المحددة