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

في علوم الكمبيوتر وبحوث العمليات، تعد **خوارزميات التقريب** خوارزميات فعالة تعمل على إيجاد حلول تقريبية لمشاكل التحسين (وخاصة مشاكل مسائل NP صعبة) مع ضمانات قابلة للإثبات على مسافة الحل المرتجع إلى الحل الأمثل. تنشأ خوارزميات التقريب بشكل طبيعي في مجال علوم الكمبيوتر النظرية كنتيجة لتخمين P ≠ NP المعتقد على نطاق واسع. بموجب هذا التخمين، لا يمكن حل فئة واسعة من مشاكل التحسين بدقة في وقت متعدد الحدود. لذلك، يحاول مجال خوارزميات التقريب فهم مدى إمكانية تقريب الحلول المثلى لمثل هذه المشاكل في وقت متعدد الحدود. في الغالبية العظمى من الحالات، فإن ضمان مثل هذه الخوارزميات هو ضمان مضاعف يتم التعبير عنه بنسبة تقريب أو عامل تقريب، أي أن الحل الأمثل مضمون دائمًا ليكون ضمن عامل مضاعف (محدد مسبقًا) للحل المرتجع. ومع ذلك، هناك أيضًا العديد من خوارزميات التقريب التي توفر ضمانًا إضافيًا لجودة الحل المرتجع. من الأمثلة البارزة لخوارزمية التقريب التي توفر *كلاً* من الخوارزمية الكلاسيكية للنسترا وشمويس وتاردوس للجدولة على الآلات المتوازية غير ذات الصلة.

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

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

## مقدمة
ومن الأمثلة البسيطة على خوارزمية التقريب خوارزمية مشكلة الحد الأدنى لغطاء الرأس، حيث يكون الهدف هو اختيار أصغر مجموعة من الرؤوس بحيث تحتوي كل حافة في الرسم البياني المدخل على رأس واحد مختار على الأقل. إحدى الطرق للعثور على غطاء الرأس هي تكرار العملية التالية: العثور على حافة غير مغطاة، وإضافة كلتا نقطتيها النهائيتين إلى الغطاء، وإزالة جميع الحواف المتصلة بأي رأس من الرسم البياني. نظرًا لأن أي غطاء رأس للرسم البياني المدخل يجب أن يستخدم رأسًا مميزًا لتغطية كل حافة تم أخذها في الاعتبار في العملية (نظرًا لأنه يشكل مطابقة)، فإن غطاء الرأس الناتج يكون، بالتالي، أكبر بمرتين على الأكثر من الغطاء الأمثل. بعبارة أخرى، هذه  مع عامل تقريب يبلغ 2. وفقًا  الأخيرة، فإن هذا العامل هو الأفضل على الإطلاق.

تختلف مسائل NP صعبة بشكل كبير في إمكانية تقريبها؛ حيث يمكن تقريب بعضها، مثل مسألة حقيبة الظهر، ضمن عامل مضاعف 1 + \epsilon، لأي ثابت \epsilon > 0، وبالتالي إنتاج حلول قريبة بشكل تعسفي من الحل الأمثل (تسمى هذه العائلة من خوارزميات التقريب ). من المستحيل تقريب البعض الآخر داخل أي عامل ثابت، أو حتى متعدد الحدود، ما لم يكن P = NP، كما في حالة مشكلة المجموعة القصوى. لذلك، فإن إحدى الفوائد المهمة لدراسة خوارزميات التقريب هي التصنيف الدقيق لصعوبة العديد من مسائل NP صعبة، والتي تتجاوز تلك التي توفرها نظرية اكتمال NP-. بعبارة أخرى، على الرغم من أن المشكلات الكاملة NP قد تكون متكافئة (تحت التخفيضات في زمن كثير الحدود) مع بعضها البعض من منظور الحلول الدقيقة، فإن مشكلات التحسين المقابلة تتصرف بشكل مختلف تمامًا من منظور الحلول التقريبية.

## تقنيات تصميم الخوارزميات
توجد حاليًا عدة تقنيات راسخة لتصميم خوارزميات التقريب. وتشمل هذه التقنيات ما يلي:

# خوارزمية الجشع
# البحث المحلي
# الترقيم والبرمجة الديناميكية (والتي تُستخدم أيضًا في كثير من الأحيان )
# حل استرخاء البرمجة المحدب للحصول على حل كسري. ثم تحويل هذا الحل الكسري إلى حل قابل للتطبيق من خلال التقريب المناسب. تتضمن الاسترخاءات الشعبية ما يلي:
#* استرخاءات البرمجة الخطية
#* استرخاءات 
# الطرق الثنائية البدائية
# تركيب مزدوج
# تضمين المشكلة في بعض المقاييس ثم حل المشكلة بناءً على هذا المقياس. يُعرف هذا أيضًا بالتضمين المتري.
# - العينة العشوائية واستخدام العشوائية بشكل عام بالتزامن مع الأساليب المذكورة أعلاه.

## الضمانات اللاحقة
في حين أن خوارزميات التقريب توفر دائمًا ضمانًا لأسوأ حالة مسبقًا (سواء كان إضافيًا أو مضاعفًا)، فإنها توفر في بعض الحالات أيضًا ضمانًا لاحقًا يكون في كثير من الأحيان أفضل بكثير. هذا هو الحال غالبًا بالنسبة للخوارزميات التي تعمل عن طريق حل استرخاء محدب لمشكلة التحسين على المدخلات المحددة. على سبيل المثال، هناك خوارزمية تقريب مختلفة لتغطية الرأس الأدنى والتي تحل  للعثور على تغطية رأس تكون على الأكثر ضعف قيمة الاسترخاء. نظرًا لأن قيمة الاسترخاء لا تكون أكبر أبدًا من حجم غطاء الرأس الأمثل، فإن هذا يؤدي إلى خوارزمية تقريب أخرى ذات 2. في حين أن هذا مشابه للضمان المسبق لخوارزمية التقريب السابقة، فإن ضمان الأخيرة يمكن أن يكون أفضل بكثير (في الواقع عندما تكون قيمة استرخاء LP بعيدة عن حجم غطاء الرأس الأمثل).

## صلابة التقريب
ترتبط خوارزميات التقريب كمجال بحثي ارتباطًا وثيقًا ، حيث يتم إثبات عدم وجود خوارزميات فعالة بنسب تقريب معينة (بشرط فرضيات معروفة على نطاق واسع مثل تخمين P ≠ NP) عن طريق الاختزالات. في حالة مشكلة بائع السفر المتري، فإن أفضل نتيجة معروفة لعدم القدرة على التقريب تستبعد الخوارزميات التي تحتوي على نسبة تقريب أقل من 123/122 ≈ 1.008196 ما لم يكن P = NP، كاربينسكي، لامبيس، شميد. عندما يقترن هذا بمعرفة وجود خوارزمية التقريب 1.5 لكريستوفيدس، فإن هذا يخبرنا أن عتبة التقريب لبائع السفر المتري (إن وجدت) تقع في مكان ما بين 123/122 و1.5.

ورغم أن نتائج عدم التقريب قد تم إثباتها منذ سبعينيات القرن العشرين، فإن هذه النتائج تم الحصول عليها بوسائل مخصصة ولم يكن هناك فهم منهجي متاح في ذلك الوقت. لم يتم اكتشاف أدوات حديثة لإثبات نتائج عدم القدرة على التقريب إلا منذ نتائج عام 1990 التي توصل إليها فيجي، وجولدواسر، ولوفاسز، وسافرا، وسيجيدي حول عدم إمكانية تقريب المجموعة المستقلة و الشهيرة،. على سبيل المثال، تظهر نظرية بي سي بيه أن خوارزميات التقريب التي وضعها جونسون عام 1974 لمشكلة الحد الأقصى للإرضاء  والمجموعة المستقلة والتلوين تحقق جميعها نسبة التقريب المثلى، بافتراض أن P ≠ NP.

## العملية
ليست كل خوارزميات التقريب مناسبة للتطبيقات العملية المباشرة. تتضمن بعضها حل البرمجة الخطية غير التافهة / الاسترخاءات  (التي قد تستدعي في حد ذاتها )، أو هياكل البيانات المعقدة، أو التقنيات الخوارزمية المتطورة، مما يؤدي إلى مشكلات تنفيذ صعبة أو تحسين أداء وقت التشغيل (مقارنة بالخوارزميات الدقيقة) فقط على مدخلات كبيرة غير عملية. وبغض النظر عن قضايا التنفيذ ووقت التشغيل، فإن الضمانات التي توفرها خوارزميات التقريب قد لا تكون في حد ذاتها قوية بما يكفي لتبرير النظر فيها في الممارسة العملية. وعلى الرغم من عدم إمكانية استخدامها "خارج الصندوق" في التطبيقات العملية، فإن الأفكار والرؤى الكامنة وراء تصميم مثل هذه الخوارزميات يمكن في كثير من الأحيان دمجها بطرق أخرى في الخوارزميات العملية. بهذه الطريقة، فإن دراسة الخوارزميات حتى الأكثر تكلفة ليست مسعى نظريًا تمامًا لأنها يمكن أن تسفر عن رؤى قيمة.

وفي حالات أخرى، حتى لو كانت النتائج الأولية ذات أهمية نظرية بحتة، فإنه مع مرور الوقت، ومع تحسن الفهم، قد يتم تحسين الخوارزميات لتصبح أكثر عملية. أحد الأمثلة على ذلك هو  الأولي لمسألة البائع المتجول بواسطة  (ومن قِبل جوزيف ميتشيل بشكل مستقل) والذي كان لديه وقت تشغيل محظور يبلغ n^{O(1/\epsilon)} لـ 1+\epsilon التقريب. ومع ذلك، في غضون عام تم دمج هذه الأفكار في مخطط زمني شبه خطي O(n\log n) خوارزمية لأي ثابت \epsilon > 0.

## بنية خوارزميات التقريب
نظرا لمشكلة التحسين:

\Pi: I \times S

أين \Pi هي مشكلة تقريبية، I مجموعة المدخلات و S مجموعة الحلول، يمكننا تعريف دالة التكلفة:

c: S \rightarrow \mathbb{R}^+

ومجموعة الحلول الممكنة:

\forall i \in I, S(i) = {s \in S: i\Pi_s}

إيجاد الحل الأفضل s^* لمشكلة التعظيم أو التصغير:

s^* \in S(i), c(s^*) = min/max \ c(S(i))

أعطيت حلا قابلا للتنفيذ s \in S(i)، مع s \neq s^*، نريد ضمانًا لجودة الحل، وهو الأداء الذي يجب ضمانه (عامل التقريب).

على وجه التحديد، وجود A_{\Pi}(i) \in S_i، تحتوي الخوارزمية على **عامل تقريب** (أو **نسبة تقريب**) \rho(n) لو \forall i \in I \ s.t. |i| = n، لدينا:

* لمشكلة *التقليل* : \frac{c(A_{\Pi}(i))}{c(s^*(i))}\leq\rho(n)، وهو ما يعني بدوره أن الحل الذي اتخذته الخوارزمية مقسومًا على الحل الأمثل يحقق نسبة \rho(n) ؛
* لمشكلة *التعظيم* : \frac{c(s^*(i))}{c(A_{\Pi}(i))}\leq\rho(n)، وهو ما يعني بدوره أن الحل الأمثل مقسومًا على الحل الذي اتخذته الخوارزمية يحقق نسبة \rho(n) ؛

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

## ضمانات الأداء
بالنسبة لبعض خوارزميات التقريب، من الممكن إثبات خصائص معينة حول تقريب النتيجة المثلى. على سبيل المثال، يتم تعريف **خوارزمية التقريب ''ρ*** *A* على أنها خوارزمية تم إثبات أن القيمة/التكلفة، *f* (*x*)، للحل التقريبي *A* (*x*) لحالة *x* لن تكون أكثر (أو أقل، اعتمادًا على الموقف) من عامل *ρ* مضروبًا في القيمة، OPT، للحل الأمثل.

:<math>\begin{cases}\mathrm{OPT} \leq f(x) \leq \rho \mathrm{OPT},\qquad\mbox{if } \rho > 1; \\ \rho \mathrm{OPT} \leq f(x) \leq \mathrm{OPT},\qquad\mbox{if } \rho < 1.\end{cases}</math>

يُطلق على العامل *ρ* اسم *ضمان الأداء النسبي*. تتمتع خوارزمية التقريب *بضمان أداء مطلق* أو *خطأ محدود* *c*، إذا تم إثبات ذلك لكل حالة *x*

:<math> (\mathrm{OPT} - c) \leq f(x) \leq (\mathrm{OPT} + c).</math>

وبالمثل، يتم تعريف *ضمان الأداء*، *R* (*x,y*)، لحل *y* لمثيل *x* على النحو التالي

:<math>R(x,y) =  \max \left ( \frac{OPT}{f(y)}, \frac{f(y)}{OPT} \right ),</math>

حيث *f* (*y*) هي قيمة/تكلفة الحل *y* للمثال *x*. من الواضح أن ضمان الأداء أكبر من أو يساوي 1 ويساوي 1 فقط إذا كان *y* هو الحل الأمثل. إذا ضمنت الخوارزمية *A* إرجاع الحلول بضمان أداء لا يتجاوز *r* (*n*)، فيُقال أن *A* هي خوارزمية تقريب *r* (*n*) ولها *نسبة تقريب* *r* (*n*). على نحو مماثل، يُقال إن المشكلة التي تحتوي على خوارزمية تقريب *r* (*n*) *قابلة للتقريب* r (n) أو لها نسبة تقريب *r* (*n*).

بالنسبة لمشاكل التقليل، توفر الضمانتان المختلفتان نفس النتيجة، وبالنسبة لمشاكل التعظيم، فإن ضمان الأداء النسبي لـ ρ يعادل ضمان الأداء لـ <math>r = \rho^{-1}</math>. في الأدبيات، كلا التعريفين شائعان ولكن من الواضح أي تعريف يتم استخدامه، لأنه بالنسبة لمشاكل التعظيم، حيث ρ ≤ 1 بينما r ≥ 1.

*ضمان الأداء المطلق* <math>\Rho_A</math> لبعض خوارزميات التقريب *A*، حيث يشير *x* إلى حالة من المشكلة، وحيث <math>R_A(x)</math> هل ضمان أداء *A* على *x* (أي ρ لحالة المشكلة *x*) هو:

:<math> \Rho_A = \inf \{ r \geq 1 \mid R_A(x) \leq r, \forall x \}.</math>

وهذا يعني أن <math>\Rho_A</math> هو أكبر حد لنسبة التقريب، *r*، الذي نراه في جميع الحالات المحتملة للمشكلة. وبالمثل، *نسبة الأداء المقاربة* <math>R_A^\infty</math> يكون:

:<math> R_A^\infty = \inf \{ r \geq 1 \mid \exists n \in \mathbb{Z}^+, R_A(x) \leq r, \forall x, |x| \geq n\}. </math>

وهذا يعني أن هذا هو نفس *نسبة الأداء المطلقة*، مع حد أدنى *n* لحجم حالات المشكلة. يتم استخدام هذين النوعين من النسب لأن هناك خوارزميات يكون فيها الفرق بين الاثنين كبيرًا.



== مصطلحات إبسيلون ==
في الأدبيات، تعني نسبة التقريب لمشكلة التعظيم (التقليل) لـ *c* - ϵ (الحد الأدنى: *c* + ϵ) أن الخوارزمية لها نسبة تقريب لـ *c* ∓ ϵ لـ ϵ > 0 التعسفية ولكن النسبة لم يتم إظهارها (أو لا يمكن إظهارها) لـ ϵ = 0. ومن الأمثلة على ذلك النسبة المثلى لعدم إمكانية التقريب — عدم وجود تقريب - وهي 7 / 8 + ϵ لحالات  القابلة للإرضاء بسبب . كما ذكرنا سابقًا، عندما تكون *c* = 1، يُقال إن المشكلة لها .

قد يظهر مصطلح ϵ عندما تقدم خوارزمية التقريب خطأ مضاعفًا وخطأ ثابتًا بينما يصل الحد الأدنى الأمثل لحالات الحجم *n* إلى ما لا نهاية كما يفعل *n*. في هذه الحالة، تكون نسبة التقريب *c* ∓ *k* / أو بي تي = *c* ∓ o(1) لبعض الثوابت *c* و *k*. إذا كانت قيمة ϵ > 0 عشوائية، فيمكن اختيار قيمة *N* كبيرة بما يكفي بحيث يكون الحد *k* / أو بي تي < ϵ لكل *n ≥ N.* لكل قيمة ϵ ثابتة، يمكن حل الحالات ذات الحجم *n  0.

## الاستشهادات

## المراجع

* 
* Thomas H. Cormen، Charles E. Leiserson، Ronald L. Rivest, and Clifford Stein. *[[مقدمة في الخوارزميات (كتاب)|Introduction to Algorithms]]*, Second Edition. MIT Press and McGraw-Hill, 2001. ISBN&nbsp;0-262-03293-7. Chapter 35: Approximation Algorithms, pp.&nbsp;1022&#x2013;1056.
* Dorit S. Hochbaum, ed. *[[Approximation Algorithms for NP-Hard problems]]*, PWS Publishing Company, 1997. ISBN&nbsp;0-534-94968-1. Chapter 9: Various Notions of Approximations: Good, Better, Best, and More
* 

## وصلات خارجية
* بييرلويجي كريسينزي، فيجو كان، ماجنوس هالدورسون،  ، ''خلاصة وافية لمشاكل تحسين NP''.

تصنيف:نظرية التعقيد الحسابي