Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Розділ 2.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
325 Кб
Скачать
☆

2.2. Пошук рішень інтелектуальної задачі у просторі станів. Методи сліпого та евристичного пошуків

2.2.1. Пошук рішень інтелектуальної задачі у просторі станів.

Від обраного методу пошуку, тобто стратегії виведення, залежатиме порядок застосування та спрацювання правил. Процедура вибору зводиться до визначення напрямку пошуку і способу його здійснення.[3]

При розробці стратегії управління виводу важливо відповісти на два питання. Перше питання: яку точку в просторі станів прийняти в якості вихідної? Від вибору цієї точки залежить і метод здійснення пошуку - в прямому або зворотному напрямку. Другий - якими методами можна підвищити ефективність пошуку рішення? Ці методи визначаються вибраною стратегією перебору - глибину, в ширину, за підзадач чи інакше. Розглянемо основні методи здійснення пошуку.

При зворотному порядку виведення спочатку висувається певна гіпотеза, а потім механізм виводу як би повертається назад, переходячи до фактів, намагаючись знайти ті, які підтверджують гіпотезу. Якщо вона виявилася правильною, то вибирається наступна гіпотеза, що деталізує першу і є по відношенню до неї підціллю. Далі відшукуються факти, що підтверджують істинність підпорядкованої гіпотези. Виведення такого типу називається керованим цілями. Зворотний пошук застосовується в тих випадках, коли цілі відомі і їх порівняно небагато. [3]

В системах з прямим виведенням по відомим фактам відшукується висновок, який із цих фактів слідує. Якщо такий висновок вдається знайти, то він заноситься в робочу пам'ять. Пряме виведення називають виведенням, керованим даними, або виведенням, керованим антецедентами.

Існують системи, в яких виведення ґрунтується на поєднанні згаданих вище методів - зворотного і обмеженого прямого. Такий комбінований метод отримав назву циклічного.

Розглянемо основні принципи алгоритмів пошуку рішень або стратегії виведення.

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

Розбиття на підзадачі - передбачає виділення підзадач, вирішення яких розглядається як досягнення проміжних цілей на шляху до кінцевої мети. Прикладом, що підтверджує ефективність розбиття на підзадачі, є пошук несправностей в комп'ютері - спочатку виявляється підсистема, яка відмовила, (живлення, пам'ять і т. д.), що значно звужує простір пошуку. Якщо вдається правильно зрозуміти сутність завдання і оптимально розбити її на систему ієрархічно пов'язаних цілей-підцілей, то можна домогтися того, що шлях до її вирішення в просторі пошуку буде мінімальний.

Альфа-бета алгоритм дозволяє зменшити простір станів шляхом видалення гілок, неперспективних для успішного пошуку. Тому переглядаються тільки ті вершини, в які можна потрапити в результаті наступного кроку, після чого неперспективні напрями виключаються. Альфа-бета алгоритм знайшов широке застосування в основному в системах, орієнтованих на різні ігри, наприклад в шахових програмах.

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

Рис. 2.2.Пошук рішення у просторі станів

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

Причому якщо така послідовність не одна і заданий критерій оптимальності, то пошук зводиться до пошуку оптимальної послідовності.

Р озглянемо процедуру побудови графа станів на прикладі обрання маршруту. Необхідно вийти з вершини А, обійти пункти B, C, D і повернутися у пункт А.Заборонено відвідувати B, C, D більше, ніж один раз.

С

Рис. 2.3. Обрання маршруту

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

Початковим буде стан А, а цільовими будуть слова, що починаються і закінчуються літерою А і включають по одному разу найменування усіх пунктів.

Стани, які описуються словами, що містять повторювані букви, є недопустимими.

Оператори відповідають обранню того чи іншого маршруту.

На графі станів початковою вершиною є А.

На дугах показані відстані, які проходить робот при переході з одного стану в інший.

Рис. 2.4. Відстані при переході з одного стану в інший

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

  1. сліпий перебір;

  2. упорядкований перебір.

Стратегії пошуку відрізняються правилами розміщення вершин у переліки.