خوارزمية البحث

تمثيل مرئي لجدول التجزئة ، وهو بنية بيانات تسمح باسترجاع المعلومات بسرعة

في علم الحاسوب ، خوارزمية البحث هي خوارزمية مصممة لحل مشكلة بحثية . تعمل خوارزميات البحث على استرجاع المعلومات المخزنة ضمن بنية بيانات معينة ، أو المحسوبة في فضاء البحث لمجال المشكلة، سواء كانت قيمًا منفصلة أو متصلة .

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

تعتمد خوارزمية البحث المناسبة غالبًا على بنية البيانات المراد البحث فيها، وقد تشمل أيضًا معرفة مسبقة بالبيانات. ويمكن تسريع خوارزميات البحث أو تحسين كفاءتها من خلال هياكل قواعد بيانات مصممة خصيصًا، مثل أشجار البحث ، وخرائط التجزئة ، وفهارس قواعد البيانات . [ 1 ] [ 2 ]

يمكن تصنيف خوارزميات البحث، بناءً على آلية عملها، إلى ثلاثة أنواع: الخطية، والثنائية، والتجزئة. تفحص خوارزميات البحث الخطية كل سجل بحثًا عن السجل المرتبط بمفتاح الهدف بشكل خطي. [ 3 ] أما البحث الثنائي، أو البحث بنصف الفاصل الزمني، فيستهدف مركز بنية البحث بشكل متكرر ويقسم مساحة البحث إلى نصفين. تُحسّن خوارزميات البحث المقارن من البحث الخطي عن طريق استبعاد السجلات تباعًا بناءً على مقارنات المفاتيح حتى يتم العثور على السجل المستهدف، ويمكن تطبيقها على هياكل البيانات ذات الترتيب المحدد. [ 4 ] تعمل خوارزميات البحث الرقمي بناءً على خصائص الأرقام في هياكل البيانات باستخدام مفاتيح رقمية. [ 5 ] وأخيرًا، تقوم التجزئة بربط المفاتيح بالسجلات مباشرةً بناءً على دالة تجزئة . [ 6 ]

غالبًا ما تُقيّم الخوارزميات بناءً على تعقيدها الحسابي ، أو أقصى وقت تشغيل نظري لها. على سبيل المثال، تتمتع دوال البحث الثنائي بتعقيد أقصى قدره O (log n ) ، أو وقت لوغاريتمي. بعبارة أخرى، فإن الحد الأقصى لعدد العمليات اللازمة للعثور على الهدف هو دالة لوغاريتمية لحجم فضاء البحث.

تطبيقات خوارزميات البحث

تشمل التطبيقات المحددة لخوارزميات البحث ما يلي:

الصفوف الدراسية

لمساحات البحث الافتراضية

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

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

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

تُشكل الخوارزميات المستخدمة لاستكشاف شجرة اللعبة في الألعاب متعددة اللاعبين، مثل الشطرنج أو الطاولة ، فئة فرعية مهمة أخرى، حيث تتكون عقدها من جميع حالات اللعبة الممكنة التي قد تنجم عن الوضع الحالي. والهدف في هذه المسائل هو إيجاد النقلة التي توفر أفضل فرصة للفوز، مع الأخذ في الاعتبار جميع النقلات الممكنة للخصم (أو الخصوم). وتظهر مسائل مشابهة عندما يتعين على البشر أو الآلات اتخاذ قرارات متتالية لا تخضع نتائجها لسيطرتهم الكاملة، كما هو الحال في توجيه الروبوتات أو في تخطيط استراتيجيات التسويق أو المالية أو العسكرية . وقد دُرست هذه المسألة - البحث التوافقي - على نطاق واسع في سياق الذكاء الاصطناعي . ومن أمثلة الخوارزميات في هذه الفئة خوارزمية مينيمكس ، وتقليم ألفا-بيتا ، وخوارزمية A* ومتغيراتها.

بالنسبة للهياكل الفرعية لهيكل معين

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

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

ابحث عن القيمة القصوى لدالة ما

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

لأجهزة الكمبيوتر الكمومية

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

انظر أيضاً

فئات:

  • التصنيف: خوارزميات البحث

مراجع

الاقتباسات

  1. ^ بيم وفيتش 2002 ، ص. 39.
  2. كنوت 1998 ، §6.5 ("الاسترجاع على المفاتيح الثانوية").
  3. كنوت 1998 ، §6.1 ("البحث التسلسلي").
  4. كنوت 1998 ، §6.2 ("البحث عن طريق مقارنة المفاتيح").
  5. كنوت 1998 ، §6.3 (البحث الرقمي).
  6. كنوت 1998 ، §6.4، (التجزئة).
  7. تالوكدار، ساروش؛ بيرنتزن، لارس؛ جوف، أندرو؛ دي سوزا، بيدرو (1998-12-01). "الفرق غير المتزامنة: مخططات التعاون للوكلاء المستقلين". مجلة الاستدلال . 4 (4): 295-321 . doi : 10.1023/A:1009669824615 . ISSN 1572-9397 . 
  8. هنتر، أ.هـ؛ بيبنجر، نيكولاس (4 يوليو 2013). "البحث المحلي مقابل البحث العالمي في مخططات القنوات". الشبكات: رحلة دولية . arXiv : 1004.2526 .
  9. لوبيز، جي في؛ غورين، تي؛ لارا، إل (26 فبراير 2008). "محاكاة خوارزمية البحث الكمومي لغروفر في حاسوب كمومي من نوع إيزينغ-سلسلة الدوران النووي مع اقترانات الجوار الأول والثاني". مجلة الفيزياء ب: الفيزياء الذرية والجزيئية والبصرية . 41 (5) 055504. arXiv : 0710.3196 . Bibcode : 2008JPhB...41e5504L . doi : 10.1088/0953-4075/41/5/055504 . S2CID 18796310 . 

فهرس

الكتب

مقالات