خوارزمية كارماركر

خوارزمية كارماركر هي خوارزمية قدمها ناريندرا كارماركر في عام 1984 لحل مسائل البرمجة الخطية . كانت أول خوارزمية ذات كفاءة معقولة لحل هذه المسائل في زمن متعدد الحدود . طريقة الإهليلجي هي أيضا متعددة الحدود لكنها أثبتت أنها غير فعالة عمليا.

بجعل تدل على عدد المتغيرات و  على عدد وحدات بت في مدخلات الخوارزمية، خوارزمية كارماركر تحتاج إلى عملية على خانات , في المقابل تحتاج إلى عمليات بخوارزمية الاهليجي.

بالتالي زمن تشغيل خوارزمية كارماركر هو:

 

باستخدام الضرب القائم على FFT (انظر رمز O الكبير ).

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

الخوارزمية 
بالنظر في مشكلة البرمجة الخطية في شكل المصفوفة:

تحدد خوارزمية كارماركر الاتجاه التالي الممكن إلى المثالية وتوازن بمعامل .

وسع كامارك الطريقة  ، لتحل مسائل بقيود اعداد صحيحة والمسائل غير المحدبة.

 stopping criterion, .

  

 

 
   

 
   

 
   

 
   

 
   

 
     return unbounded

 
   end if

 
   

 
   

 
   

 
  end do

مثال 

بالنظر في البرنامج الخطي

 

حيث يوجد متغيرين  و 11 قيود مرتبطة باختلاف قيم  . يوضح هذا الشكل كل تكرار للخوارزمية كنقاط حمراء. وتظهر القيود كخطوط زرقاء.

جدل براءات الاختراع 
في الوقت الذي ابتكر فيه الخوارزمية، توظف كامارك بواسطة آي بي إم كزميل لما بعد الدكتوراه في مختبر أبحاث سان خوسيه في كاليفورنيا. في 11 أغسطس 1983 ، ألقى ندوة في جامعة ستانفورد لشرح الخوارزمية، وانتمائه لا يزال مدرجًا باسم آي بي إم. بحلول خريف عام 1983 ، بدأ كارماركر العمل في إيه تي آند تي وقدم مقالته إلى Symposium on Theory of Computing ACM لعام 1984 حول نظرية الحوسبة (STOC ، التي عقدت في 30 أبريل - 2 مايو 1984) موضحًا أن انتمائه لمختبرات بيل لإيه تي آند تي . بعد تطبيق الخوارزمية على تحسين شبكة هاتف إيه تي آند تي،  أدركوا أن اختراعه يمكن أن يكون ذا أهمية عملية. في أبريل 1985 ، تقدمت إيه تي آند تي بطلب للحصول على براءة اختراع على خوارزمية كارماركر.

المراجع 

 
 ناريندرا كارماركار (1984). " خوارزمية زمنية جديدة متعددة الحدود للبرمجة الخطية " ، Combinatorica ، المجلد 4 ، العدد. 4 ، ص.   373 – 395.

برمجة خطية
حساب المتغيرات