ما هي الخوارزمية ؟
الخوارزمية هي مجموعة من الخطوات الرياضية والمنطقية والمتسلسلة اللازمة لحل مشكلة ما. وسميت الخوارزمية بهذا الاسم نسبة إلى العالم أبو جعفر محمد بن موسى الخوارزمي الذي ابتكرها في القرن التاسع الميلادي. الكلمة المنتشرة في اللغات اللاتينية والأوروبية هي «algorithme» وفي الأصل كان معناها يقتصر على خوارزمية لتراكيب ثلاثة فقط وهي: التسلسل والاختيار والتكرار.
تنشأ خوارزميات الوقت شبه متعددة الحدود عادةً في التخفيضات من مشكلة NP-hard لمشكلة أخرى. على سبيل المثال ، يمكن للمرء أن يأخذ مثالاً على مشكلة صلبة في NP ، على سبيل المثال 3SAT ، وتحويلها إلى مثيل لمشكلة أخرى B ، لكن حجم المثيل يصبح . formula_24في هذه الحالة ، لا يثبت هذا الخفض أن المشكلة B هي NP-hard ؛ هذا التخفيض يظهر فقط أنه لا توجد خوارزمية زمن متعددة الحدود لـ B ما لم يكن هناك خوارزمية زمن متعددة الحدود لـ 3SAT (وبالتالي كل NP ). وبالمثل ، هناك بعض المشاكل التي نعرف خوارزميات وقت شبه متعدد الحدود ، ولكن لا توجد خوارزمية زمن متعددة الحدود.هذه المشاكل تنشأ في خوارزميات التقريب. مثال مشهور هو مشكلة شجرة ستاينر الموجهة ، والتي يوجد بها خوارزمية تقريب زمني متعددة الحدود تحقق عامل تقريب لـ (n عدد الرؤوس) ، لكن إظهار وجود مثل هذه الخوارزمية متعددة الحدود الزمنية هو مشكلة مفتوحة.formula_27