در این مقاله به ابزارهای محاسباتی مورد استفاده در هوش مصنوعی پرداخته شده‌است.

جستجو و بهینه‌سازی
------------------

بسیاری از مشکلات در هوش مصنوعی می‌توانند از نظر تئوری با جستجوی هوشمندانه در میان بسیاری از راه حل‌های ممکن حل شوند: استدلال را می‌توان به انجام یک جستجو کاهش داد. به عنوان مثال، اثبات منطقی را می‌توان جستجوی مسیری دانست که از مقدمات به نتیجه می‌رسد، که هر مرحله، استفاده از یک قانون استنتاج است. الگوریتم‌های برنامه‌ریزی در درختان اهداف و اهداف فرعی جستجو کرده، تلاش می‌کنند برای یافتن راهی برای رسیدن به یک هدف، که فرایندی به نام تجزیه و تحلیل معنی و هدف است. الگوریتم‌های رباتیک برای حرکت دادن اندام‌ها و گرفتن اشیا از جستجوهای محلی در فضای پیکربندی استفاده می‌کنند. بسیاری از الگوریتم‌های یادگیری از الگوریتم‌های جستجو مبتنی بر بهینه‌سازی استفاده می‌کنند.

جستجوی ساده و کامل به ندرت برای بیشتر مشکلات دنیای واقعی کافی است: فضای جستجو (تعداد مکان‌های جستجو) به سرعت به اعداد نجومی می‌رسد. نتیجه جستجویی بسیار کند است یا هرگز کامل نمی‌شود. راه حل، برای بسیاری از مشکلات، استفاده از "اکتشافی "است که انتخاب‌ها را به نفع افرادی که احتمال بیشتری برای رسیدن به هدف دارند اولویت بندی می‌کند و این کار را در چند مرحله کوتاه‌تر انجام می‌دهد. در برخی از روشهای جستجو، روشهای اکتشافی همچنین می‌توانند به‌طور کامل برخی از گزینه‌هایی را که بعید است به یک هدف منجر شوند از بین ببرند (که "هرس درخت جستجو "نامیده می‌شود). روشهای ابتکاری "بهترین حدس" را برای مسیری که راه حل در آن نهفته‌است، ارائه می‌دهند. روشهای اکتشافی جستجو برای راه حل‌ها را به اندازه نمونه کوچکتر محدود می‌کند.

نوع مختلفی از جستجو در دهه ۱۹۹۰، بر اساس تئوری ریاضیات بهینه‌سازی، مورد توجه قرار گرفت. برای بسیاری از مشکلات، می‌توان جستجو را با نوعی حدس آغاز کرد و سپس حدس را به تدریج اصلاح کرد تا جایی که دیگر اصلاحاتی نتواند انجام شود. این الگوریتم‌ها را می‌توان به صورت کوهنوردی کور از تپه مشاهده کرد: ما جستجو را در یک نقطه تصادفی از چشم‌انداز آغاز می‌کنیم، و سپس، با پرش یا گام، حدس خود را در سربالایی حرکت می‌دهیم، تا اینکه به قله برسیم. سایر الگوریتم‌های بهینه‌سازی شبیه‌سازی بازپخت، جستجوی پرتو و بهینه‌سازی تصادفی هستند.

 ازدحام ذرات به دنبال مینیمم مطلق
محاسبات تکاملی از نوعی جستجوی بهینه‌سازی استفاده می‌کند. برای مثال، آنها ممکن است با جمعیت موجودات زنده (حدس) شروع شود و سپس به آن‌ها اجازه می‌دهد تغییر یابند و ترکیب شوند، و انتخاب تنها اصلح برای زنده ماندن هر نسل (پالایش حدس) اتفاق بیفتد. الگوریتم‌های تکاملی کلاسیک شامل الگوریتم‌های ژنتیک، برنامه‌نویسی بیان ژن و برنامه‌نویسی ژنتیکی است. \* همچنین، فرایندهای جستجوی توزیع شده می‌توانند از طریق الگوریتم‌های هوش ازدحام هماهنگ شوند. دو الگوریتم محبوب ازدحام مورد استفاده در بهینه‌سازی ازدحام ذرات (با الهام از هجوم پرندگان) و بهینه‌سازی کلنی مورچه‌ها (با الهام از مسیرهای مورچه ای) است.

منطق
----

منطق برای بازنمایی دانش و حل مسئله استفاده می‌شود، اما می‌تواند در مورد سایر مشکلات نیز کاربرد داشته باشد. به عنوان مثال، الگوریتم satplan از منطق برای برنامه‌ریزی استفاده می‌کند و برنامه‌نویسی منطق استقرایی روشی برای یادگیری است.

در تحقیقات هوش مصنوعی از چندین شکل مختلف منطق استفاده شده‌است. منطق گزاره ای شامل توابع حقیقت مانند «یا» و «نیست». منطق مرتبه اول سورها و محمول را می‌افزاید، و می‌تواند حقایق در مورد اشیاء، خواص آنها، و روابط خود را با یکدیگر بیان کنند. نظریه مجموعه‌های فازی "گزارشی از حقیقت" (بین ۰ تا ۱) را به عبارات مبهمی مانند "آلیس پیر است" (یا ثروتمند، بلند قد یا گرسنه) اختصاص می‌دهد که از نظر زبان بسیار نادرست هستند و نمی‌توانند کاملاً درست یا نادرست باشند. منطق فازی با موفقیت در سیستم‌های کنترل به کار می‌رود تا به متخصصان اجازه دهد قوانین مبهمی مانند "اگر نزدیک ایستگاه مقصد هستید و سریع حرکت می‌کنید، فشار ترمز قطار را افزایش دهید". این قوانین مبهم می‌توانند به صورت عددی در سیستم اصلاح شوند. منطق فازی نمی‌تواند در پایگاه‌های دانش به خوبی مقیاس بندی شود. بسیاری از محققان هوش مصنوعی، صحت استفاده از استنباط‌های منطق فازی را زیر سؤال می‌برند.

منطق پیش فرض، منطق غیر یکنواخت و خلاصه فرم‌های منطقی هستند که برای کمک به استدلال پیش فرض و مشکل صلاحیت طراحی شده‌اند. چندین پسوند منطق طراحی شده‌اند که مسئولیت رسیدگی به حوزه‌های خاص از دانش، مانند: منطق توصیفی؛ حساب وضعیت، حساب رویداد و حساب روان (برای نمایش وقایع و زمان)؛ حساب علیت؛ حساب باور (تجدید نظر در باور)؛ و منطق معین. منطق‌هایی برای مدل‌سازی جملات متناقض یا متناقض ناشی از سیستم‌های چند عاملی نیز طراحی شده‌است، مانند منطق‌های متناقض.

منابع
-----

1. ↑  Search algorithms:
2. ↑  Forward chaining, backward chaining, Horn clauses, and logical deduction as search:
3. ↑  State space search and planning:
4. ↑  Moving and configuration space:
5. ↑  Uninformed searches (breadth first search, depth first search and general state space search):
6. ↑  Heuristic or informed searches (e.g. , greedy best first and A\*):
7. ↑  Tecuci, Gheorghe (March–April 2012). "Artificial Intelligence". *Wiley Interdisciplinary Reviews: Computational Statistics*. **4** (2): 168–180. doi:10.1002/wics.200.
8. ↑  Optimization searches:
9. ↑  Genetic programming and genetic algorithms:
10. ↑  Artificial life and society based learning:
11. ↑  Logic:
12. 1 2  "ACM Computing Classification System: Artificial intelligence". ACM. 1998. ~I.2.3 and ~I.2.4. Archived from the original on 12 October 2007. Retrieved 30 August 2007.
13. ↑  Satplan:
14. ↑  Explanation based learning, relevance based learning, inductive logic programming, case based reasoning:
15. ↑  Propositional logic:
16. ↑  First-order logic and features such as equality:
17. ↑  منطق فازی:
18. ↑  "What is 'fuzzy logic'? Are there computers that are inherently fuzzy and do not apply the usual binary logic?". *Scientific American* (به انگلیسی). Retrieved 5 May 2018.
19. ↑  Default reasoning and default logic, non-monotonic logics, circumscription, closed world assumption, abduction (Poole *et al.* places abduction under "default reasoning". Luger *et al.* places this under "uncertain reasoning"):
20. ↑  Representing categories and relations: Semantic networks, description logics, inheritance (including frames and scripts):
21. ↑  Representing events and time:Situation calculus, event calculus, fluent calculus (including solving the frame problem):
22. ↑  Causal calculus:
23. ↑  "The Belief Calculus and Uncertain Reasoning", Yen-Teh Hsia
24. ↑  Representing knowledge about knowledge: Belief calculus, modal logics:

### منابع

* Russell, Stuart J. ; Norvig, Peter (2003). Artificial Intelligence: A Modern Approach (2nd ed.). Upper Saddle River, New Jersey: Prentice Hall. ISBN 978-0-13-790395-5.CS1 maint: ref=harv (link)
* Poole, David; Mackworth, Alan; Goebel, Randy (1998). Computational Intelligence: A Logical Approach. New York: Oxford University Press. ISBN 978-0-19-510270-3.CS1 maint: ref=harv (link)
* Luger, George; Stubblefield, William (2004). Artificial Intelligence: Structures and Strategies for Complex Problem Solving (5th ed.). Benjamin/Cummings. ISBN 978-0-8053-4780-7.CS1 maint: ref=harv (link)
* Nilsson, Nils (1998). Artificial Intelligence: A New Synthesis. Morgan Kaufmann. ISBN 978-1-55860-467-4.CS1 maint: ref=harv (link)