Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SearchLab Python.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
53.91 Кб
Скачать

4. Мини конкурс (до 2 дополнительных баллов)

Реализуйте ApproximateSearchAgent в searchAgents.py, который находит кратчайший путь через поле bigSearch. Если ваш агент найдет решение стоимостью не более 290, то вы получите 1 дополнительный балл. Если стоимость не превышает 280, то вы получите 2 дополнительных балла.

python pacman.py -l bigSearch –p ApproximateSearchAgent -z .5 -q

Время исполнения будет засекаться при отключенной опции отрисовки –g, время исполнения не должно превышать 30 секунд на нашей оценочной машине.

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

5. Глоссарий

Ниже приводится глоссарий ключевых объектов из кодовой базы по задачам поиска:

SearchProblem (search.py)

SearchProblem – абстрактный объект описывающий пространство состояний, функцию приемника, цену и функцию проверки цели в постановке задачи. Любые взаимодействия с SearchProblem должны осуществляться только через методы определенные в верхней части search.py

PositionSearchProblem (searchAgents.py)

Специализированный наследник SearchProblem, с которым вы будете работать; соответствует поиску одной точки (гранулы) в лабиринте

CornersProblem (searchAgents.py)

Специализированный наследник SearchProblem, который вы определите; соответствует поиску пути через все 4 угла лабиринта.

FoodSearchProblem (searchAgents.py)

Специализированный наследник SearchProblem, с которым вы будете работать; соответствует поиску пути для поедания всех точек (гранул) в лабиринте.

Search Function

Функция поиска, получающая на входе постановку задачи SearchProblem, выполняет некоторый алгоритм и возвращает последовательность действий ведущих к цели. Примерами функции поиска являются функции depthFirstSearch и breadthFirstSearch, которые вы должны будете написать. Одна функция поиска уже написана за вас, это tinyMazeSearch – плохая функция поиска, работающая корректно только для лабиринта tinyMaze.

SearchAgent

SearchAgent – класс, реализующий агента и осуществляющий планирование пути через функцию поиска. Вначале SearchAgent использует функцию поиска для планирования последовательности действия по достижению цели, а затем исполняет данную последовательность пошагово.

6. Требования к отчету

  1. Введение

  2. Достижение фиксированной точки в лабиринте

Задание 1 – 4

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

  1. Проходя через все углы

Задание 5 – 6

Опишите пространство состояний для задачи обхода всех углов лабиринта. Для разработанной эвристики приведите программный код с комментариями и кратко поясните принцип её работы. Зафиксируйте время выполнения кода и количество исследованных состояний. Предоставьте, как минимум, логическое обоснование того, что ваша эвристика допустима и монотонна.

  1. Поедая все гранулы

Задание 7

Для разработанной эвристики приведите программный код с комментариями и кратко поясните принцип её работы. Зафиксируйте время выполнения кода и количество исследованных состояний. Предоставьте, как минимум, логическое обоснование того, что ваша эвристика допустима и монотонна.

Задание 8

Приведите программный код с комментариями функции findPathToClosestDot и кратко поясните принцип её работы. Зафиксируйте время выполнения кода и количество исследованных состояний. Не забудьте ответить на вопросы к заданию.

  1. Мини конкурс

Задание 9

Для разработанного агента ApproximateSearchAgent приведите программный код с комментариями и кратко поясните принцип его работы. Зафиксируйте время выполнения кода и количество исследованных состояний.

  1. Вывод

1 Агент – объект, взаимодействующий с миром.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]