ما هي الخوارزمية
ما هي الخوارزمية
ما هي الخوارزمية؟ تعد الخوارزميات ضرورية في الحوسبة، خاصة في علوم البيانات والتعلم الآلي. يصف مصطلح “الخوارزمية” اسم عالم الرياضيات الفارسي الكبير الخوارزمي الذي عاش حوالي عام 820 والذي أدخل الحساب العشري (من الهند) إلى الغرب وقام بتدريس القواعد الحسابية الأولية المرتبطة به. وفي وقت لاحق، تم توسيع مفهوم الخوارزمية ليشمل كائنات معقدة بشكل متزايد: النصوص والصور والصيغ المنطقية والأشياء المادية، من بين أمور أخرى.
ما هي الخوارزمية؟
الخوارزمية هي في الواقع إجراء تدريجي. إنها مجموعة من القواعد التي يجب اتباعها لأداء مهمة أو حل مشكلة.
قبل وقت طويل من ظهور أجهزة الكمبيوتر، كان البشر يستخدمون الخوارزميات بالفعل. يمكن اعتبار وصفات الطبخ أو العمليات الحسابية أو حتى تعليمات تجميع قطعة أثاث خوارزميات.
في مجال برمجة الكمبيوتر، الخوارزميات هي مجموعات من القواعد التي تخبر الكمبيوتر بكيفية تنفيذ مهمة ما. في الواقع، برنامج الكمبيوتر عبارة عن خوارزمية تخبر الكمبيوتر بالخطوات التي يجب اتخاذها وبأي ترتيب لتنفيذ مهمة محددة. وهي مكتوبة باستخدام لغة البرمجة. وعلى مستوى البيانات الضخمة والذكاء الإصطناعي، تقوم الخوارزميات بتحليل المعلومات والبيانات الواردة من المستهلكين والمستخدمين النهائيين.
تحتوي كل خوارزمية على مدخل، يُعرف باسم الإدخال، ومخرج، يُعرف باسم الإخراج، وبينهما التعليمات أو تسلسل الخطوات التي يجب اتباعها. يجب ترتيب هذه الخطوات، وقبل كل شيء، يجب أن تكون سلسلة محدودة من العمليات التي تسمح لنا بالتوصل إلى حل معين.
ما هي خصائص الخوارزميات؟
بغض النظر عن الإستخدام الممنوح للخوارزميات، فإن جميعها تشترك في الخصائص التالية:
- البداية والنهاية: يبدأان من حالة أولية ينفذان منها سلسلة من التعليمات للوصول إلى حالة نهائية للخروج أو الإكتمال.
- الدقة: يجب أن تشير إلى ترتيب واضح ومحدد ومنطقي لتعليمات تنفيذ كل خطوة، دون أي مجال للغموض.
- التسلسل: يجب عليهم اتباع سلسلة من الخطوات المنظمة والمفهومة والمحددة مسبقًا.
- كاملة: يجب أن يأخذوا في الإعتبار جميع الإحتمالات والعروض التقديمية للمشكلة لتنفيذ الحل الدقيق.
- محدود: يجب أن يكون عدد خطوات تنفيذ المهمة محدودًا لإتمامها.
- الملخص: أنها تمثل دليلاً أو نموذجاً لترتيب العمليات.
أنواع الخوارزميات
اعتمادًا على نظام الإشارات الخاص بها، أي كيفية وصف الخطوات الواجب اتباعها، يمكن أن تكون الخوارزميات:
- الكمية والنوعية: سواء كانت تعمل من خلال الحسابات الرياضية أو التسلسل المنطقي.
- حسابية أو غير حسابية: سواء كانت تتطلب استخدام جهاز كمبيوتر لحل أو تنفيذ مهمة معينة أم لا.
اعتمادًا على وظيفتها واستراتيجيتها، أي ما تفعله وكيف تفعله، هناك خمسة أنواع من الخوارزميات:
-
خوارزميات البحث
تلك التي تقوم بالبحث عن عنصر أو أكثر لها مجموعة من الخصائص ضمن بنية بيانات معينة. يمكن أن تكون عمليات البحث:
- متسلسل: يقومون بمقارنة العنصر المطلوب البحث عنه مع كل عنصر في المجموعة، حتى يتم العثور عليه.
- ثنائي: يقارن عنصر البحث بعنصر موجود في منتصف سلسلة مرتبة لتحديد ما إذا كانا متساويين.
-
خوارزمية الفرز
تُستخدم لإعادة ترتيب عناصر القائمة. تقوم خوارزمية الفرز بوضع عناصر القائمة بترتيب معين. يمكن أن يكون، على سبيل المثال، ترتيبًا رقميًا أو معجميًا. غالبًا ما تكون هذه الخوارزمية مهمة كخطوة أولى في حل المشكلات الأكثر تعقيدًا.
هناك العديد من خوارزميات الفرز، مع مزاياها وعيوبها. وهنا بعض الأمثلة:
- الفرز الخطي: تتيح لك خوارزميات الفرز الخطي العثور على أصغر العناصر في القائمة، وفرزها، وإضافتها إلى قائمة جديدة، وإزالتها من القائمة الأصلية. تتكرر هذه العملية حتى تصبح القائمة الأصلية فارغة.
- الفرز الفقاعي: يتكون الفرز الفقاعي من مقارنة العنصرين الأولين من القائمة وعكسهما إذا كان الأول أكبر من الثاني. يتم تكرار هذه العملية لكل زوج من العناصر المتجاورة في القائمة، حتى يتم فرز القائمة بأكملها.
- الفرز بالإدراج: وأخيرًا، يتكون الفرز بالإدراج من مقارنة كل عنصر في القائمة بالعناصر السابقة حتى يتم العثور على عنصر أصغر. يتم عكس العنصرين، وتتكرر العملية حتى يتم فرز القائمة بأكملها.
-
الخوارزميات الجشعة
هذا نوع من الخوارزميات يتم تطبيقه على مشاكل التحسين ويستخدم لإتخاذ قرارات منطقية للوصول إلى حل نهائي عالمي. لا يمكن التراجع عن هذه الخوارزميات بمجرد اتخاذ القرار بتشغيلها.
-
البرمجة الديناميكية
يرتبط هذا النوع من الخوارزميات بالطريقة التي تتم بها معالجة النتيجة. يعتمد حل عنصر ما على حل سلسلة من المسائل الأصغر، فمع حل المسائل الفرعية، يتم تخزين الحلول بحيث لا يكون من الضروري حسابها مرة أخرى. مع البرمجة الديناميكية، يتم تقليل وقت تنفيذ الخوارزمية.
-
الخوارزميات الإحتمالية
يعتمد هذا النوع من الخوارزميات نتائجه على الصدفة، بحيث يمكن، بشكل عام، الحصول على حل جيد لأي توزيع عشوائي للمدخلات. تمثل الفرصة تحسين الوقت فيما يتعلق بما إذا كان قد تم تحديد البديل الأفضل لكل حالة على حدة. وبالتالي، يتم الحصول على حل جيد للمشكلة لأي توزيع لبيانات الإدخال.
كيف يتم استخدام الخوارزميات في الحوسبة؟
في مجال الحوسبة، الخوارزميات موجودة في كل مكان. في الواقع، فهي العمود الفقري للحوسبة، حيث أن الخوارزمية تعطي الكمبيوتر مجموعة محددة من التعليمات.
هذه التعليمات هي التي تسمح للكمبيوتر بأداء المهام. برامج الكمبيوتر هي بدورها خوارزميات مكتوبة بلغات البرمجة.
تلعب الخوارزميات أيضًا دورًا أساسيًا في عمل الشبكات الإجتماعية، على سبيل المثال. إنهم يقررون أي المشاركات يتم عرضها أو الإعلانات التي يتم تقديمها للمستخدم.
في محركات البحث، الخوارزميات هي التي تعمل على تحسين عمليات البحث، والتنبؤ بما سيكتبه المستخدمون، وأكثر من ذلك بكثير. وبالمثل، تعتمد منصات مثل Netflix، أو YouTube، أو Amazon، أو Spotify على الخوارزميات لمحركات التوصيات الخاصة بها.
وفي نهاية المقال ومن خلال موقع المقالات العربية، نكون قد تحدثنا عن ما هي الخوارزمية، ما هي خصائص الخوارزميات؟ أنواع الخوارزميات، كيف يتم استخدام الخوارزميات في الحوسبة؟