خوارزمية كارماركر هي خوارزمية قدمها ناريندرا كارماركر في عام 1984 لحل مسائل البرمجة الخطية . كانت أول خوارزمية ذات كفاءة معقولة لحل هذه المسائل في زمن متعدد الحدود . طريقة الإهليلجي هي أيضا متعددة الحدود لكنها أثبتت أنها غير فعالة عمليا.
بجعل تدل على عدد المتغيرات و على عدد وحدات بت في مدخلات الخوارزمية، خوارزمية كارماركر تحتاج إلى عملية على خانات , في المقابل تحتاج إلى عمليات بخوارزمية الاهليجي.
بالتالي زمن تشغيل خوارزمية كارماركر هو:
باستخدام الضرب القائم على FFT (انظر رمز O الكبير ).
تندرج خوارزمية كارماركر ضمن فئة أساليب النقاط الداخلية : لا يتبع التخمين الحالي للحل حدود المجموعة الممكنة كما هو الحال في طريقة simplex ، لكنه يتحرك بداخل المنطقة الممكنة، مما يحسن تقريب الحل الأمثل بكسر واضح مع كل التكرار، والوصول إلى الحل الأمثل مع البيانات المنطقية.[1]
الخوارزمية
بالنظر في مشكلة البرمجة الخطية في شكل المصفوفة:
Maximise cTx
.Ax ≤ b
Subject to
تحدد خوارزمية كارماركر الاتجاه التالي الممكن إلى المثالية وتوازن بمعامل 0 < γ ≤ 1.[2][3][4][5]
وسع كامارك الطريقة [6][7][8][9] ، لتحل مسائل بقيود اعداد صحيحة والمسائل غير المحدبة.[10]
Input: A, b, c, ,stopping criterion, γ.
do whilestopping criterionnot satisfied
ifthen
return unbounded
end if
end do
مثال
بالنظر في البرنامج الخطي
حيث يوجد متغيرين و 11 قيود مرتبطة باختلاف قيم . يوضح هذا الشكل كل تكرار للخوارزمية كنقاط حمراء. وتظهر القيود كخطوط زرقاء.
جدل براءات الاختراع
في الوقت الذي ابتكر فيه الخوارزمية، توظف كامارك بواسطة آي بي إم كزميل لما بعد الدكتوراه في مختبر أبحاث سان خوسيه في كاليفورنيا. في 11 أغسطس 1983 ، ألقى ندوة في جامعة ستانفورد لشرح الخوارزمية، وانتمائه لا يزال مدرجًا باسم آي بي إم. بحلول خريف عام 1983 ، بدأ كارماركر العمل في إيه تي آند تي وقدم مقالته إلى Symposium on Theory of Computing ACM لعام 1984 حول نظرية الحوسبة (STOC ، التي عقدت في 30 أبريل - 2 مايو 1984) موضحًا أن انتمائه لمختبرات بيل لإيه تي آند تي . بعد تطبيق الخوارزمية على تحسين شبكة هاتف إيه تي آند تي، [11] أدركوا أن اختراعه يمكن أن يكون ذا أهمية عملية. في أبريل 1985 ، تقدمت إيه تي آند تي بطلب للحصول على براءة اختراع على خوارزمية كارماركر.
المراجع
Adler، Ilan؛ Karmarkar، Narendra؛ Resende، Mauricio G.C.؛ Veiga، Geraldo (1989). "An Implementation of Karmarkar's Algorithm for Linear Programming". Mathematical Programming. ج. 44 ع. 1–3: 297–335. DOI:10.1007/bf01587095.
^Karmarkar، N. (1984). "A new polynomial-time algorithm for linear programming". Combinatorica. ج. 4 ع. 4: 373–395. DOI:10.1007/BF02579150.
^Karmarkar، Narendra K. (1989). "Power Series Variants of Karmarkar-Type Algorithms". AT&T Technical Journal. ج. 68 ع. 3: 20–36. DOI:10.1002/j.1538-7305.1989.tb00316.x.
^Karmarkar N. K., Lagarias, J.C., Slutsman, L., and Wang, P., Power Series Variants of KarmarkarType Algorithm, AT & T technical Journal 68, No. 3, May/June (1989).
^Karmarkar, N.K., Interior Point Methods in Optimization, Proceedings of the Second International Conference on Industrial and Applied Mathematics, SIAM, pp. 160181 (1991)
^Karmarkar, N. K. and Kamath, A. P., A continuous Approach to Deriving Upper Bounds in Quadratic Maximization Problems with Integer Constraints, Recent Advances in Global Optimization, pp. 125140, Princeton University Press (1992).
^26. Karmarkar, N. K., Thakur, S. A., An Interior Point Approach to a Tensor Optimisation Problem with Application to Upper Bounds in Integer Quadratic Optimization Problems, Proceedings of Second Conference on Integer Programming and Combinatorial Optimisation, (May 1992).
^27. Kamath, A., Karmarkar, N. K., A Continuous Method for Computing Bounds in Integer Quadratic Optimisation Problems, Journal of Global Optimization (1992).
^Karmarkar, N. K., Beyond Convexity: New Perspectives in Computational Optimization. Springer Lecture Notes in Computer Science LNCS 6457, Dec 2010
^Sinha L.P., Freedman, B. A., Karmarkar, N. K., Putcha, A., and Ramakrishnan K.G., Overseas Network Planning, Proceedings of the Third International Network Planning Symposium, NETWORKS' 86, Tarpon Springs, Florida (June 1986).