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

في علم الحاسوب ، خوارزمية البحث هي خوارزمية مصممة لحل مشكلة بحثية . تعمل خوارزميات البحث على استرجاع المعلومات المخزنة ضمن بنية بيانات معينة ، أو المحسوبة في فضاء البحث لمجال المشكلة، سواء كانت قيمًا منفصلة أو متصلة .
على الرغم من أن محركات البحث تستخدم خوارزميات البحث، إلا أنها تنتمي إلى دراسة استرجاع المعلومات ، وليس إلى علم الخوارزميات.
تعتمد خوارزمية البحث المناسبة غالبًا على بنية البيانات المراد البحث فيها، وقد تشمل أيضًا معرفة مسبقة بالبيانات. ويمكن تسريع خوارزميات البحث أو تحسين كفاءتها من خلال هياكل قواعد بيانات مصممة خصيصًا، مثل أشجار البحث ، وخرائط التجزئة ، وفهارس قواعد البيانات . [ 1 ] [ 2 ]
يمكن تصنيف خوارزميات البحث، بناءً على آلية عملها، إلى ثلاثة أنواع: الخطية، والثنائية، والتجزئة. تفحص خوارزميات البحث الخطية كل سجل بحثًا عن السجل المرتبط بمفتاح الهدف بشكل خطي. [ 3 ] أما البحث الثنائي، أو البحث بنصف الفاصل الزمني، فيستهدف مركز بنية البحث بشكل متكرر ويقسم مساحة البحث إلى نصفين. تُحسّن خوارزميات البحث المقارن من البحث الخطي عن طريق استبعاد السجلات تباعًا بناءً على مقارنات المفاتيح حتى يتم العثور على السجل المستهدف، ويمكن تطبيقها على هياكل البيانات ذات الترتيب المحدد. [ 4 ] تعمل خوارزميات البحث الرقمي بناءً على خصائص الأرقام في هياكل البيانات باستخدام مفاتيح رقمية. [ 5 ] وأخيرًا، تقوم التجزئة بربط المفاتيح بالسجلات مباشرةً بناءً على دالة تجزئة . [ 6 ]
غالبًا ما تُقيّم الخوارزميات بناءً على تعقيدها الحسابي ، أو أقصى وقت تشغيل نظري لها. على سبيل المثال، تتمتع دوال البحث الثنائي بتعقيد أقصى قدره O (log n ) ، أو وقت لوغاريتمي. بعبارة أخرى، فإن الحد الأقصى لعدد العمليات اللازمة للعثور على الهدف هو دالة لوغاريتمية لحجم فضاء البحث.
تطبيقات خوارزميات البحث
تشمل التطبيقات المحددة لخوارزميات البحث ما يلي:
- مشاكل في التحسين التوافقي ، مثل:
- مشكلة توجيه المركبات ، وهي شكل من أشكال مشكلة أقصر مسار
- مشكلة حقيبة الظهر : بالنظر إلى مجموعة من العناصر، لكل منها وزن وقيمة، حدد عدد كل عنصر لتضمينه في المجموعة بحيث يكون الوزن الإجمالي أقل من أو يساوي حدًا معينًا وتكون القيمة الإجمالية أكبر ما يمكن.
- مشكلة جدولة مواعيد الممرضات
- مشاكل في إرضاء القيود ، مثل:
- مشكلة تلوين الخريطة
- حلّ لغز سودوكو أو الكلمات المتقاطعة
- في نظرية الألعاب ، وخاصة نظرية الألعاب التوافقية ، اختيار أفضل خطوة للقيام بها تالياً (كما هو الحال مع خوارزمية minmax ).
- إيجاد تركيبة أو كلمة مرور من بين جميع الاحتمالات
- تحليل عدد صحيح إلى عوامله الأولية (مشكلة مهمة في علم التشفير )
- تحسين محركات البحث (SEO) وتحسين المحتوى لبرامج زحف الويب
- تحسين عملية صناعية، مثل التفاعل الكيميائي ، عن طريق تغيير معايير العملية (مثل درجة الحرارة والضغط ودرجة الحموضة).
- استرجاع سجل من قاعدة بيانات
- إيجاد القيمة القصوى أو الدنيا في قائمة أو مصفوفة
- التحقق مما إذا كانت قيمة معينة موجودة في مجموعة من القيم
الصفوف الدراسية
لمساحات البحث الافتراضية
تُستخدم خوارزميات البحث في الفضاءات الافتراضية في مسألة إرضاء القيود ، حيث يتمثل الهدف في إيجاد مجموعة من القيم المُخصصة لمتغيرات معينة تُحقق معادلات ومتباينات / معادلات رياضية محددة . كما تُستخدم هذه الخوارزميات عندما يكون الهدف هو إيجاد قيمة مُخصصة لمتغير ما تُعظم أو تُصغر دالة معينة لتلك المتغيرات. تشمل خوارزميات هذه المسائل البحث الشامل الأساسي (المعروف أيضًا بالبحث "الساذج" أو "غير المُستنير")، ومجموعة متنوعة من الطرق الاستدلالية التي تحاول استغلال المعرفة الجزئية حول بنية هذا الفضاء، مثل الاسترخاء الخطي، وتوليد القيود، ونشر القيود .
تُعدّ خوارزميات البحث المحلي فئة فرعية مهمة ، إذ تنظر إلى عناصر فضاء البحث على أنها رؤوس رسم بياني، وتُحدد حوافها بمجموعة من القواعد الاستدلالية المناسبة للحالة. وتقوم هذه الخوارزميات بمسح الفضاء بالانتقال من عنصر إلى آخر على طول الحواف، على سبيل المثال وفقًا لمعيار الانحدار الأسرع أو معيار الأفضل أولًا ، أو في بحث عشوائي . وتشمل هذه الفئة مجموعة واسعة من أساليب الاستدلال الميتاهوريستية العامة ، مثل التلدين المحاكي ، والبحث المحظور ، وفرق A ، [ 7 ] والبرمجة الجينية ، التي تجمع بين قواعد استدلالية عشوائية بطرق محددة. أما عكس البحث المحلي فهو أساليب البحث الشامل. ويُمكن تطبيق هذا الأسلوب عندما يكون فضاء البحث غير محدود، وتكون جميع جوانب الشبكة المُعطاة متاحة للكيان الذي يُشغّل خوارزمية البحث. [ 8 ]
خوارزميات البحث الشجري هي خوارزميات بحث محلية في الرسوم البيانية، مصممة للعمل بكفاءة على الرسوم البيانية الموجهة غير الدورية ذات جذر واحد أو عقدة بداية واحدة ( الأشجار ). تجتاز خوارزميات البحث الشجري عقد الشجرة بترتيب محدد، وفقًا لخوارزمية مصممة لتطبيق معين. تشمل أمثلة خوارزميات البحث الشجري الطرق الشاملة، مثل البحث العميق أولًا والبحث العرضي أولًا ، بالإضافة إلى خوارزميات تقليم الأشجار القائمة على الاستدلال ، مثل التراجع ، والتفرع والتقييد ، وتقليم ألفا-بيتا . على عكس خوارزميات ما وراء الاستدلال ، التي قد تحدد فقط ترتيب اجتياز هو الأفضل من الناحية الاحتمالية، فإن العديد من طرق البحث الشجري تضمن إيجاد الحل الأمثل تمامًا، إذا أُتيح لها الوقت الكافي. في الرياضيات والمنطق، يُطلق على هذا ضمان " الكمال ".
تُشكل الخوارزميات المستخدمة لاستكشاف شجرة اللعبة في الألعاب متعددة اللاعبين، مثل الشطرنج أو الطاولة ، فئة فرعية مهمة أخرى، حيث تتكون عقدها من جميع حالات اللعبة الممكنة التي قد تنجم عن الوضع الحالي. والهدف في هذه المسائل هو إيجاد النقلة التي توفر أفضل فرصة للفوز، مع الأخذ في الاعتبار جميع النقلات الممكنة للخصم (أو الخصوم). وتظهر مسائل مشابهة عندما يتعين على البشر أو الآلات اتخاذ قرارات متتالية لا تخضع نتائجها لسيطرتهم الكاملة، كما هو الحال في توجيه الروبوتات أو في تخطيط استراتيجيات التسويق أو المالية أو العسكرية . وقد دُرست هذه المسألة - البحث التوافقي - على نطاق واسع في سياق الذكاء الاصطناعي . ومن أمثلة الخوارزميات في هذه الفئة خوارزمية مينيمكس ، وتقليم ألفا-بيتا ، وخوارزمية A* ومتغيراتها.
بالنسبة للهياكل الفرعية لهيكل معين
تُعدّ خوارزميات الرسوم البيانية ، ولا سيما خوارزميات اجتياز الرسوم البيانية ، فئة فرعية مهمة وخضعت لدراسات مستفيضة ، وذلك لإيجاد بنى فرعية محددة في رسم بياني مُعطى، مثل الرسوم البيانية الفرعية والمسارات والدوائر وما إلى ذلك. ومن الأمثلة على ذلك خوارزمية ديكسترا ، وخوارزمية كروسكال ، وخوارزمية أقرب جار ، وخوارزمية بريم .
ومن الفئات الفرعية المهمة الأخرى لهذه الفئة خوارزميات البحث عن السلاسل النصية ، التي تبحث عن أنماط داخل السلاسل النصية. ومن الأمثلة الشهيرة على ذلك خوارزميتا بوير-مور وكنوث -موريس-برات ، بالإضافة إلى العديد من الخوارزميات القائمة على بنية بيانات شجرة اللواحق .
ابحث عن القيمة القصوى لدالة ما
في عام 1953، ابتكر الإحصائي الأمريكي جاك كيفر بحث فيبوناتشي الذي يمكن استخدامه لإيجاد الحد الأقصى لدالة أحادية النمط وله العديد من التطبيقات الأخرى في علوم الكمبيوتر.
لأجهزة الكمبيوتر الكمومية
توجد أيضًا طرق بحث مصممة خصيصًا للحواسيب الكمومية ، مثل خوارزمية غروفر ، وهي نظريًا أسرع من البحث الخطي أو البحث الشامل حتى بدون استخدام هياكل البيانات أو الطرق الاستدلالية. ورغم أن الأفكار والتطبيقات الكامنة وراء الحواسيب الكمومية لا تزال نظرية تمامًا، فقد أُجريت دراسات باستخدام خوارزميات مثل خوارزمية غروفر، والتي تحاكي بدقة النسخ الفيزيائية الافتراضية لأنظمة الحوسبة الكمومية. [ 9 ]
انظر أيضاً
- الاستقراء العكسي – عملية الاستدلال العكسي بالتسلسل
- ذاكرة قابلة للعنونة بالمحتوى - نوع من أنواع أجهزة ذاكرة الكمبيوتر
- التطور ثنائي المرحلة – عملية تدفع التنظيم الذاتي داخل الأنظمة التكيفية المعقدة
- مشكلة البحث الخطي – مشكلة البحث الحسابي
- لا يوجد شيء مجاني في البحث والتحسين – متوسط تكلفة الحل هو نفسه مع أي طريقة
- نظام التوصية – نظام للتنبؤ بتفضيلات المستخدمين ، ويستخدم أيضًا أساليب إحصائية لترتيب النتائج في مجموعات بيانات ضخمة جدًا
- محرك البحث (الحوسبة) – نظام يساعد في البحث عن المعلومات
- لعبة البحث – لعبة ثنائية اللاعبين ذات محصلة صفرية
- خوارزمية الاختيار – طريقة لإيجاد أصغر قيمة k
- برنامج حل المسائل الرياضية
- خوارزمية الفرز – خوارزمية تقوم بترتيب القوائم ، وهي ضرورية لتنفيذ بعض خوارزميات البحث.
- محرك بحث الويب – نظام برمجي للعثور على المعلومات ذات الصلة على صفحات الويب، ويعرض أوصافًا مختصرة لمواقع إعادة التوجيه.
فئات:
- التصنيف: خوارزميات البحث
مراجع
الاقتباسات
- ^ بيم وفيتش 2002 ، ص. 39.
- ↑ كنوت 1998 ، §6.5 ("الاسترجاع على المفاتيح الثانوية").
- ↑ كنوت 1998 ، §6.1 ("البحث التسلسلي").
- ↑ كنوت 1998 ، §6.2 ("البحث عن طريق مقارنة المفاتيح").
- ↑ كنوت 1998 ، §6.3 (البحث الرقمي).
- ↑ كنوت 1998 ، §6.4، (التجزئة).
- ↑ تالوكدار، ساروش؛ بيرنتزن، لارس؛ جوف، أندرو؛ دي سوزا، بيدرو (1998-12-01). "الفرق غير المتزامنة: مخططات التعاون للوكلاء المستقلين". مجلة الاستدلال . 4 (4): 295-321 . doi : 10.1023/A:1009669824615 . ISSN 1572-9397 .
- ↑ هنتر، أ.هـ؛ بيبنجر، نيكولاس (4 يوليو 2013). "البحث المحلي مقابل البحث العالمي في مخططات القنوات". الشبكات: رحلة دولية . arXiv : 1004.2526 .
- ↑ لوبيز، جي في؛ غورين، تي؛ لارا، إل (26 فبراير 2008). "محاكاة خوارزمية البحث الكمومي لغروفر في حاسوب كمومي من نوع إيزينغ-سلسلة الدوران النووي مع اقترانات الجوار الأول والثاني". مجلة الفيزياء ب: الفيزياء الذرية والجزيئية والبصرية . 41 (5) 055504. arXiv : 0710.3196 . Bibcode : 2008JPhB...41e5504L . doi : 10.1088/0953-4075/41/5/055504 . S2CID 18796310 .
فهرس
الكتب
- كنوت، دونالد (1998). الفرز والبحث . فن برمجة الحاسوب . المجلد 3 ( الطبعة الثانية). ريدينغ، ماساتشوستس: أديسون-ويسلي بروفيشنال.
مقالات
- بيم، بول؛ فيش، فيث (أغسطس 2002). "الحدود المثلى لمسألة السلف والمسائل ذات الصلة" . مجلة علوم الحاسوب والنظم . 65 (1): 38-72 . doi : 10.1006/jcss.2002.1822 . S2CID 1991980 .
- شميتو، توماس؛ شميتو، فيث إي. (1 أغسطس 2002). "الحدود المثلى لمسألة السلف والمسائل ذات الصلة" . مجلة علوم الحاسوب والنظم . 65 (1): 38-72 . doi : 10.1006/jcss.2002.1822 .
روابط خارجية
- خوارزميات البحث على الإنترنت
- دوال الترتيب
- خوارزميات البحث
