Главная arrow Поиск arrow Формулировка задачи
Как начинался компьютер
Компьютерная революция
Двоичный код
Разработки военных лет
Интегральные микросхемы
Микрокомпьютер
Персоны
Сеть
Язык компьютера
Развитие ПО
Гибкие системы
Средства разработки
Информатика
Вычислительная наука
Операционные системы
Искусственный интеллект
Предыстория
Поиск
Знания и рассуждения
Логика
Робототехника
 

 
Формулировка задачи Печать
В предыдущем разделе была предложена формулировка задачи переезда в Бухарест в терминах начального состояния, функции определения преемника, проверки цели и стоимости пути. Эта формулировка кажется приемлемой, но в ней все же не учитываются слишком многие аспекты реального мира.

Сравним простое выбранное нами описание состояния, In {Arad), с действительным путешествием по стране, в котором состояние мира должно учитывать так много факторов: попутчиков, текущие радиопередачи, вид из окна, наличие поблизости представителей сил правопорядка, расстояние до ближайшей остановки на отдых, состояние дороги, погоду и т.д. Все эти соображения исключены из наших описаний состояния, поскольку они не имеют отношения к задаче поиска маршрута поездки в Бухарест.

Процесс удаления деталей из представления называется абстрагированием. Кроме абстрагирования описаний состояний, необходимо абстрагировать сами действия. Любое действие по вождению влечет за собой много следствий. Такие действия не только изменяют местонахождение автомобиля и его пассажиров, но и занимают время, приводят к потреблению топлива, влекут за собой загрязнение окружающей среды и влияют на самого агента (как говорится, путешествия расширяют кругозор).

В нашей формулировке учитывается только изменение местонахождения. Кроме того, существует много действий, которые мы вообще не рассматриваем: включение радиоприемника, осмотр окрестностей из окна, замедление движения по требованию дорожной полиции и т.д. К тому же, безусловно, действия здесь не задаются на уровне «поворота рулевого колеса влево на три градуса».

Можно ли достичь большей точности определения приемлемого уровня абстракции? Будем считать, что выбранные нами абстрактные состояния и действия соответствуют большим множествам более подробных описаний состояния мира, а также более детализированным последовательностям действий. Теперь рассмотрим решение абстрактной задачи, например поиска пути от Арада до Бухареста через города Сибиу, Рымнику-Вылча и Питешти. Это абстрактное решение соответствует большому количеству более подробных инструкций по преодолению пути.

Например, можно вести автомобиль между городами Сибиу и Рымнику-Вылча с включенным радиоприемником, а затем выключить его на всю оставшуюся часть путешествия. Абстракция является действительной, если мы можем преобразовать любое абстрактное решение в такое решение, которое подходит для более детально описанного мира; достаточным условием является то, что для любого детализированного состояния, которое представляет собой «пребывание в городе Арад», существует детализированный путь в некоторое состояние, соответствующее «пребыванию в городе Сибиу», и т.д.

Абстракция является полезной, если осуществление каждого из действий, предусмотренных в решении, становится проще по сравнению с первоначальной задачей; в этом случае действия являются достаточно простыми для того, чтобы они могли быть выполнены без дальнейшего поиска или планирования со стороны обычного агента, занимающегося вождением автомобиля. Поэтому выбор хорошей абстракции сводится к исключению максимально возможного количества подробностей и вместе с тем к сохранению способности оставаться действительной и обеспечению того, чтобы абстрактные действия были легко осуществимыми. Если бы не было возможности создавать полезные абстракции, то интеллектуальные агенты не могли бы успешно действовать в реальном мире.