Що таке повне пояснення для універсального пошуку?


13

Я читаю книгу на тему інформатики, але у неї відсутні деякі необхідні передумови. Зазвичай, коли я стикаюся з термінами, я не розумію, я просто шукаю їх, але для Universal Search я просто не зміг знайти пояснення, придатне для читача, без досвіду статистики / інформатики.

Я читав цю статтю про Універсальний пошук з Scholarpedia , яка, здається, висвітлює цю тему. Я вдячний поясненням того, що означає « Універсальний пошук» (або пошук Левіна ).

Відповіді:


15

Подумайте про це так. У вас є проблема з введенням x і ви знаєте, як перевірити рішення, якщо ви коли-небудь знайшли його (наприклад, зворотну частину матриці або все, що ви хочете уявити).

xx

iiii

Pss Pi=max{|P|,s}sP


3

Для того, щоб додати те, що сказав Pål GD, пам’ятайте, що ви запускаєте всі програми довжиною менше і дозволяєте їм запускатись не більше секунд. То може бути, що існує програма, яка отримує правильну відповідь довжиною 100 символів, але для запуску потрібно 120 секунд. Виклик цієї програми . У програмі ви перевірите цю програму, але це запускає занадто багато часу, щоб ви її відкинули. Перевіривши всі програми довжиною 100, ви виявите, що жодна з них не дає правильної відповіді, тому ви спробуйте програми довжиною та всі програми, які ви пробували раніше . Отже, ви спробуйтеi P i = 100 101 P i = 120 120 P i = 120 P | П | = 100 s = 120 i = m a x { | П | , s } P siiPi=100101 P, програма, яка (ми знаємо) дасть вам правильну відповідь, але це все ще забирає занадто багато часу, щоб ви відкинули її. Ми продовжуємо цей процес, поки не досягнемо . Потім ми спробуємо всі програми довжиною , і коли ми дістаємось до ми даємо їй працювати досить довго, щоб дати правильну відповідь. Тоді ми зупиняємось - ми знайшли потрібний алгоритм. Ітерація, на якій ми перебуваємо, становить , оскільки хоча тривалість програми менша (ми би написали ), нам довелося чекати, поки кількість часу, що пройшло, складе 120 секунд ( ). Отже, просто означає максимум довжини програмиi=120120Pi=120P|P|=100s=120i=max{|P|,s}Pі кількість часу, яке знадобилося для запуску .s

Інший спосіб дивитися на це є для програми , який приймає секунд , щоб зробити правильну відповідь, ми повинні перевірити , по крайней мереітерації та принаймні ітерації, перш ніж ми їх знайдемо, тому що якщотоді ми ще не перевірили цю програму, і якщо то ми не дозволили програмі працювати досить довго.с | П | s i < | П | i < sPs |P| si<|P|i<s

Зауважте, що цей спосіб пошуку гарантовано отримає вам відповідь лише за наявності; не гарантується знайти найкоротшу або швидку відповідь. Причина цього повинна бути очевидною, якщо ви вважаєте, що процес припиняється, як тільки він знайде програму, яка дає правильну відповідь.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.