Рассел С., Норвиг П. Искусственный интеллект. Современный подход (2-е изд., 2006) (1245267), страница 24
Текст из файла (страница 24)
К тому же многие варианты среды являются эпизодическими на более высоких уровнях по сравнению с отдельными действиями агента. Например, шахматный турнир состоит из ряда игр; каждая игра является эпизодом, поскольку (вообше говоря) от ходов, сделанных в предыдущей игре, не зависит то, как повлияют на общую производительность агента ходы, сделанные им в текушей игре. С другой стороны, принятие решений в одной и той же игре, безусловно, происходит последовательно.
Репозитарий кода, который относится к данной книге (ахша. с в . Ьегке2еу. ес)и), включает реализации многих вариантов среды, наряду с имитатором среды обгцего назначения, который помегцает одного или нескольких агентов в моделируемую среду, наблюдает за их поведением в течение определенного времени и оценивает их действия в соответствии с заданными показателями производительности. Такие эксперименты часто выполняются применительно не к одному варианту среды, а ко многим вариантам, сформированным на основе некоторого Ъ. класса вариантов среды. Например, чтобы оценить действия водителя такси в моделируемой ситуации дорожного движения, может потребоваться провести много сеансов моделирования с различными условиями графика, освегцения и погоды. Если бы мы спроектировали этого агента для одного сценария, то могли бы лучше воспользоваться специфическими свойствами данного конкретного случая, но не имели бы возможности определить приемлемый проект решения задачи автоматизированного вождения в целом.
По этой причине репозитарий кода включает также Ж генератор вариантов среды для каждого класса вариантов среды; этот генератор выбирает определенные варианты среды (с некоторой вероятностью), в которых выполняется проверка агента. Например, генератор вариантов среды пылесоса инициализирует случайным образом такие исходные данные, как распределение мусора и местонахождение агента. Дело в том, что наибольший интерес представляет то, какую среднюю производительность будет иметь данный конкретный агент в некотором классе вариантов среды. Рациональный агент для определенного класса вариантов среды максимизирует свою среднюю производительность.
Процесс разработки класса вариантов среды и оценки в них различных агентов иллюстрируется в упр. 2.7 — 2.12. 2.4. СТРУКТУРА АГЕНТОВ До сих пор в этой книге свойства агентов рассматривались на основании анализа их поведения — действий, выполняемых агентом после получения любой заданной последовательности актов восприятия. Теперь нам поневоле придется сменить тему 9! Глава 2. Интеллектуальные агенты и перейти к описанию того, как организовано их внутреннее функционирование.
Задача искусственного интеллекта состоит в разработке 'гк программы агента, которая реализует функцию агента, отображая восприятия на действия. Предполагается, что эта программа должна работать в своего рода вычислительном устройстве с физическими датчиками и исполнительными механизмами; в целом эти компоненты именуются в данной книге гв архитектурой, а структура агента условно обозначается следующей формулой: Агент = Архитектура + Программа Очевидно, что выбранная программа должна быть подходящей для этой архитектуры.
Например, если в программе осуществляется выработка рекомендаций по выполнению таких действий, как игам (ходьба), то в архитектуре целесообразно предусмотреть использование опорно-двигательного аппарата. Архитектура может представлять собой обычный персональный компьютер или может быть воплощена в виде роботизированного автомобиля с несколькими бортовыми компьютерами, видеокамерами и другими датчиками. Вообще говоря, архитектура обеспечивает передачу в программу результатов восприятия, полученных от датчиков, выполнение программы и передачу исполнительным механизмам вариантов действий, выбранных программой, по мере их выработки. Основная часть данной книги посвяшена проектированию программ агентов, а главы 24 и 25 касаются непосредственно датчиков и исполнительных механизмов. Программы агентов Все программы агентов, которые будут разработаны в этой книге, имеют одну и ту же структуру: они принимают от датчиков в качестве входных данных результаты текущего восприятия и возвращают исполнительным механизмам выбранный вариант действия'.
Необходимо указать на различие между программой агента, которая принимает в качестве входных данных результаты текущего восприятия, и функцией агента, которая принимает на входе всю историю актов восприятия. Программа агента получает в качестве входных данных только результаты текущего восприятия, поскольку больше ничего не может узнать из своей среды; если действия агента зависят от всей последовательности актов восприятия, то агент должен сам запоминать результаты этих актов восприятия. Для описания программ агентов будет применяться простой язык псевдокода, который определен в приложении Гь (Оперативный репозитарий кода содержит реализации на реальных языках программирования.) Например, в листинге 2.1 показана довольно несложная программа агента, которая регистрирует последовательность актов восприятия, а затем использует полученную последовательность для доступа по индексу к таблице действий и определения того, что нужно сделать.
Таблица явно отображает функцию агента, воплощаемую данной программой агента. Чтобы создать рационального агента таким образом, проектировгцики должны сформировать ь Существуют и другие варианты структуры программы агента, например, можно было бы использовать в виде программ агентов сопроцедурм, которые действуют асинхронно со средой. Каждая такая сопроцедура имеет входной и выходной порты, а се работа организована в виде цикла, в котором из входного порта считываются результаты восприятий, а в выходной порт записываются варианты действий. 92 Часть 1.
Искусственный интеллект таблицу, которая содержит подходящее действие для любой возможной последова- тельности актов восприятия. Листинг 2Л. Процжмма таь1е-пкйчеп-лдепв, которая вызывается поСлЕ каждого ВОСприятИя новых данных и каждый раз возвравмет вариант действия; программа репктряруьт последовательность актов восврвятня с вспаяьзвваняем своей собственной закрытой структуры данных Евпсеьоп тао1е-пгьчеп-Адепс 1регсерс] кееитпв действие ассдоп веаейс: регсерсз, последовательность актов восприятия, первоначально пустая Санте, таблица действий, индексированная по последовательностям актов восприятия и полностью заданная с самого начала добавить результаты восприятия регсерс к концу последовательности регсеосз ассдоп ь — ьоокцр(регсерсз, саые) кееикп ассдоп Анализ того, почему такой подход к созданию агента, основанный на использовании таблицы, обречен на неудачу, является весьма поучительным.
Допустим, что Р— множество возможных актов восприятия, а Т вЂ” срок существования агента (обшее количество актов восприятия, которое может быть им получено). Поисковая таблица будет содержать Х 'Т (Р~'записей. с=1 Рассмотрим автоматизированное такси: визуальные входные данные от одной телекамеры поступают со скоростью примерно 27 мегабайтов в секунду (30 кадров в секунду, 640х480 пикселов с 24 битами информации о цвете). Согласно этим данным поисковая таблица, рассчитанная на ! час вождения, должна содержать количество записей, превышающее 10зьо саю км ооо И даже поисковая таблица для шахмат (крошечного, хорошо изученного фрагмента реального мира) имела бы, по меньшей мере, 10цм записей.
Ошеломляющий размер этих таблиц (притом что количество атомов в наблюдаемой вселенной не превышает 10") означает, что, во-первых, ни один физический агент в нашей вселенной не имеет пространства для хранения такой таблицы, во-вторых, проектировщик не сможет найти достаточно времени для создания этой таблицы, в-третьих, ни один агент никогда не сможет обучиться тому, что содержится во всех правильных записях этой таблицы, на основании собственного опыта, и, в-четвертых, даже если среда достаточно проста для того, чтобы можно было создать таблицу приемлемых размеров, все равно у проектировщика нет руководящихх сведений о том, как следует заполнять записи подобной таблицы.