تحليل وتصميم الخوارزميات

تحليل وتصميم الخوارزميات

تعريف الخوارزمية

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

وأول من ابتكر مفهوم الخوارزميات هو العالم الرياضي المسلم الشهير محمد بن موسى الخوارزمي. عاش الخوارزمي في مدينة بغداد بين عامي 780-847م، وكان ذلك في عهد الخليفة المأمون، وقد برز في الرياضيات والفلك، ومن أهمّ إنجازاته الرياضية وضعه لمبادئ علم الجبر، وتأليف كتابه الشهير الجبر والمقابلة، ومنه أُخِذت كلمة الجبر لتُتَرجَم إلى جميع لغات العالم، كما قدّم كتاباً آخر في الحساب، نُقِل إلى اللغة اللاتينية بعنوان (Algoritmi de nemero lndriun).

شروط الخوارزمية

يجب أن تتوفر في الخوارزمية مجموعة من الشروط، هي:

  • المدخلات (Input ): يجب أن تكون المدخلات صفراً، أو أكثر من ذلك.
  • المخرجات ( Output): يجب أن تكون المخرجات قيمةً على الأقل.
  • الوضوح (Definiteness): يجب أن تكون الخطوات واضحة وغير مبهمة، حتى تُفهَم بصورة سلسة لدى الناس، فمثلاً هذه العبارة: (Add 6 or 7 to x) غير واضحةK وبهذا فهي لا تستوفي شروط الخوارزمية.
  • المحدودية (Finiteness): تُحلّ كل خطوة من خطوات الخوارزمية بوقت وزمن معين، فمثلاً العبارة التالية: (قسمة الرقم 10 على الرقم3 بدقة عالية)، تعد غير محدودة ، وبهذا فهي لا تستوفي شروط الخوارزمية ولا يسمح وجودها في البرنامج.
  • المحلولية (Effectiveness): يجب أن تكون كل خطوة ممكنة الحل، فعلى سبيل المثال تعد العبارة التالية: ( 3/0 )عبارة مستحيلة الحل، لأنها قيمة غير معرفة.

كيفية تحليل الخوارزمية

يعرف تحليل الخوارزمية (بالإنجليزية: Algorithm Analysis) على أنه تحديد كفاءة الخوارزمية وجودتها، ومن ثم تطويرها بشكل أفضل، ويقاس مدى إنجازية وجودة الخوارزمية بمقياسين، هما:

  • مقياس تعقيدات الفراغ (Space Complexity): هو عبارة عن كمية الذاكرة التي يحتاجها البرنامج (من تشغيله إلى حين إكماله)، ويُينى هذا النوع على قسمين، هما:
    • القسم الثابت: هو القسم المستقل المخصص للمتغيرات البسيطة والمركبة، والثوابت والتعليمات.
    • القسم المتغير: يتكون هذا القسم من الفراغ الذي يحتاجه البرنامج من المتغيرات المركبة التي يعتمد حجمها على المسألة التي يُراد حلها.
  • تعقيدات الوقت (Time complexity): هي عبارة عن كمية الزمن اللازم لتكوين وتشكيل برنامج لحين انتهائه، ويتكون من: (T(P)= Const tp)
حيث إنّ الرمز (tp): يمثل وقت تشغيل البرنامج، والرمز (Const): ثابت يوقت التأليف.

تصميم الخوارزمية

المخططات

يُعرَّف المخطط (بالإنجليزيّة: Graph) بأنه مجموعة من العناصر التي تعبر عن الرؤوس (بالإنجليزيّة: Vertices)؛ بحيث ترتبط هذه العناصر مع بعضها البعض بعلاقات تسمى بالحواف (بالإنجليزيّة: Edges)، وتُقسَم المخططات إلى ثلاثة أنواع، هي:

  • المخطط غير المتجه: هو عبارة عن المخطط الذي ترتبط عناصره مع بعضها البعض بطريقة غير مرتبة، وبهذا فإن الاتجاهات مهمشة.
  • المخطط المتجه: هو عبارة عن المخطط الذي ترتبط عناصره مع بعضها البعض ضمن نمط وترتيب معين، وبهاذ فإن الاتجاهات (الأسهم) ضرورية ومهمة جداً.
  • المخطط المشترك: هو عبارة عن المخطط الذي يتضمن كلا النوعين السابقين، فمن العناصر ما يربطها علاقة متجهة ومنها ما يربطها علاقة غير متجهة.

المسار

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

المخطط المتصل وغير المتصل

المخطط المتصل هو عبارة عن المخطط الذي يحتوي على مسارات بين كل نقطتين في المخطط، أما المخطط غير المتصل فهو المخطط الذي يحتوي على بعض العناصر غير المتصلة (المنفصلة).

طريقة الجموح

تعمل هذه الطريقة على حل مسائل الأمثلة التي غالباً ما تقوم بتكبيرها لشيء معين أو تصغيرها لنفس الشيء، كما هو الحال في الفوز والخسارة، وتحتوي هذه المسائل على العناصر الآتية، وهي:

  • دالة الهدف (بالإنجليزيّة: Objective Function)؛ بحيث يكون الحل ضمن شروط وقيود معينة للمسألة، وأفضل الحلول المقترحة والممكنة يُسمّى الحل الأفضل.
  • تُسمّى مجموعة القيود بالإنجليزيّة بـ (Constraints)، ويُسمّى الحل الذي يوصل إلى أحسن دالة هدف بالحل الأمثل.

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

تصاغ الخوارزمية بعدة طرق، بحيث تختلف هذه الطرق في بساطة الفهم والدقة، ومن أهمّ هذه الطرق ما يأتي:

  • صياغة الخوارزمية باللغة الطبيعية المستخدمة يومياً: يتم من خلال هذه الطريقة ترتيب خطوات الحل باللغة المستخدمة يومياً؛ سواءً كانت هذه اللغة هي العربية أو الإنجليزية، ومن الأمثلة البسيطة على هذه الطريقة المثال الآتي:

مثال: خوارزمية الاستيقاظ التي تبين الخطوات من لحظة الاستيقاظ من النوم إلى حين الذهاب إلى العمل:

الحل:

البداية.
النهوض من الفراش.
خلع ملابس النوم.
الاستحمام.
تجفيف الجسم من الماء.
ارتداء ملابس نظيفة.
تناول وجبة الفطور.
الذهاب إلى العمل.
النهاية.

يُلاحَظ في هذا المثال أنّ ترتيب الخطوات وعدم الاستغناء عن أي خطوة أمر مهمّ لتنفيذ الخوارزمية وإتمامها.

  • صياغة الخوارزمية بلغة رمزية خاصة: تُبنى هذه الطريقة على أسس ومفاهيم رياضية، ومن أهم الطرق الرمزية التي تمثّل الخوارزميات هي لغات البرمجة سي (بالإنجليزيّة: C)، والترميز الرياضي للمفاهيم بعدة أساليب كالأسلوب البياني.
  • صياغة الخوارزمية بطريقة بيانية: تُبنى هذه الطريقة على أسس هندسية، بحيث يتم تنفيذها عن طريق الأشكال الهندسية، وتعد المخططات الانسيابية من أكثر المخططات استخداماً في تنفيذ الخوارزميات.

الفرق بين الخوارزمية والبرنامج

هناك فرق بين البرنامج والخوارزمية؛ من حيث النظرية الاحتسابية، فالخوارزمية تحقق جميع الشروط التي تم ذكرها سابقاً (الشروط الخمسة)، ويمكن وصف الخوارزمية بعدة عبارات كلغة الخوارزمية، والمخططات الانسيابية، أما البرنامج فلا يحقق الشرط الثالث، ويوصَف البرنامج بلغة الحاسوب ، ومن هنا فإن:

البرنامج=خوارزمية هيكل بياني يبين أسلوب لتنظيم البيانات.

ويتطور البرنامج بعدة خطوات ومراحل، هي:

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

طريقة عمل مخلل ثوم والبصل

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

كلمات مؤثرة

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

طريقة الثوم لتطويل الشعر

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

ما هي فوائد بذور العنب

فوائد بذور العنب حسب درجة الفعالية تختلف فعالية بذور العنب ومُستخلصها في تزويد الجسم بالفوائد الصحيّة، وفي الآتي تفصيلٌ لذلك: احتمالية فعاليتها (Possibly Effective) التخفيف من أعراض القصور الوريديّ المزمن: (بالإنجليزية: Chronic venous insufficiency) وهو حالةٌ مرضيّةٌ تحدث في حال عدم قدرة الأوردة على إعادة ضخ الدم من السّاقَين إلى القلب، مما قد يؤدي إلى حدوث بعض المشاكل، مثل: دوالي السّاقين ، أو انتفاخٍ في الكاحل، أو ألمٍ، أو حكّة، أو تشنجِ الساق خاصّة عند النوم. وقد يُساعد مُستخلص بذور العنب
طريقة عمل بفتيك اللحمة المفرومة

طريقة عمل بفتيك اللحمة المفرومة

البفتيك البفتيك هو لحم ظهر العجل الصغير، ويتميّز بلونه الأحمر الداكن، كما يتميّز بطعمه اللذيذ والطريّ، كما يتميّز بسعراته الحرارية القليلة، حيث يُنصح متبعو الحمية الغذائية بتناوله، ويُمكن تحضيره بالعديد من الطرق مثل: صينية البفتيك، وأصابع البفتيك، وستيك البفتيك وغيرها، وفي هذا المقال سنتحدث عن كيفيّة تحضير البفتيك باللحمة المفرومة بطريقتين مختلفتين. أصابع البفتيك باللحم المفرومة المكوّنات نصف كيلوغرام من البفتيك المقطع. ربع كأس من كلّ من: الماء، و اللحمة المفرومة ناعماً. بصلتان مفرومتان
بحث عن فضل الأم وواجبنا نحوها

بحث عن فضل الأم وواجبنا نحوها

الأم لقد أوصى الله تعالى بالأمّ، وأوصّى بحفظها ورعايتها، حيث قال الله تعالى في كتابه العزيز : (وَوَصَّيْنَا الْإِنسَانَ بِوَالِدَيْهِ حَمَلَتْهُ أُمُّهُ وَهْنًا عَلَى وَهْنٍ وَفِصَالُهُ فِي عَامَيْنِ أَنِ اشْكُرْ لِي وَلِوَالِدَيْكَ إِلَيَّ الْمَصِيرُ)، ولقد كان برّ الأمّ والإحسان إليها من أخلاق الأنبياء، ثمّ إنّ كمال الإحسان يتحقّق من خلال الإحسان إلى الأمّ، فالأمّ هي روح البيت، وسعادة القلب، وبرؤيتها يطيب العيش، وتسعد النّفس، والأمّ تعطي وتبذل كلّ ما في وسعها دون انتظار مقابلٍ، فهمّها رؤية
جامعة برمنغهام (إحدى جامعات الطابوق الأحمر)

جامعة برمنغهام (إحدى جامعات الطابوق الأحمر)

تأسيس جامعة برمنغهام تأسست جامعة برمنغهام(University of Birmingham) عام 1900م، في مدينة برمنغهام في إنجلترا، وهي جامعة بحثية عامة تمثل نموذجًا فريدًا للتعليم العالي والبحث العلمي. وهي من الجامعات ذات التاريخ الطويل والمتميز في مجال التعليم، وتعد اليوم واحدة من أكبر الجامعات في المملكة، ولديها فرع في الإمارات العربية المتحدة ( دبي)، نالت الجامعة العديد من الجوائز والتصنيفات القيمة منذ تأسيسها حتّى الآن، وإليها يعزى العديد من الاكتشافات الطبية التي قدمت خدمة جليلة للعالم كلّه. وجامعة برمنغهام
نبذة عن ثلاثية نجيب محفوظ

نبذة عن ثلاثية نجيب محفوظ

نبذة عن ثلاثية نجيب محفوظ تعدُّ ثلاثية نجيب محفوظ من أهم أعماله، وقد أدرجها اتحاد كتاب العرب ضمن أفضل مئة رواية عربية في تاريخ الأدب العربي ، وهي سلسلة من ثلاث روايات هي: بين القصرين صدرت عام 1956م، قصر الشوق صدرت عام 1957م، السكرية 1957م، وسمِّيت كل رواية على اسم الحي الذي تدور فيه أحداث الرواية، وقد حظيت باهتمام كبير من قبل النقاد، ولاقت قبولًا واسعًا ووضعت نجيب محفوظ ضمن أفضل الكتاب العرب والعالميين. تلخيص ثلاثية نجيب محفوظ تدور ثلاثية نجيب محفوظ حول عدة أجيال مصرية خلال النصف الأول من