Рассел С., Норвиг П. Искусственный интеллект. Современный подход (2-е изд., 2006) (1245267), страница 163
Текст из файла (страница 163)
Теперь вернемся к примеру задачи, в которой нужно было добиться, чтобы цвет стула и стола совпадал, но на этот раз применим перепланирование. Предполагается Глава 12. Планирование и осуществление действий в реальном мире 597 наличие полностью наблюдаемой среды. В начальном состоянии стул окрашен синей краской, стол — зеленой, и имеются банка с синей краской и банка с красной краской. Таким образом, может быть сформулировано следующее определение задачи: 1пде(Со1от(СЬахт, В1ие) л Со1от(таЬ1е, Отееп) л СоптахпаСо1от(ВС, В1ие) л Ра1птСап(ВС)) л сопса1пасо1от(нс, нед) л Ра1пссап(нс) Ооа1(Со1от(СЬа1т, х) л Со1от(таЬ1е, х)) Астхоп(Радпс(оЬуест, со1от), Ртесопд: НаиеРахпт(со1от), ЕГГесе: Со1от(оЬуест, со1от)) Асехоп(ореп(сап), Ртесопд: РахптСап(сап) л Сопта1пеСо1от(сап, со1от) ЕГГесе: Наиерадпт(со1от)) Алгоритм Р1аппет агента должен предложить такой план: [5татсн Ореп (ВС); Рахпс ( таЬ1е, В1ие); Рдпдед) Теперь агент готов выполнить этот план.
Предположим, что все шло хорошо, поскольку агент успешно открыл банку с синей краской и нанес эту краску на стол. В этот момент агенты, описанные в предыдуших разделах, объявили бы о победе, поскольку они завершили все этапы в плане. Но агент, контролирующий выполнение, должен вначале проверить предусловие этапа Рйп15Ь, в котором сказано, что эти два предмета мебели должны иметь одинаковый цвет. Предположим, агент обнаружил, что стол и стул не имеют одинакового цвета, поскольку он не закрасил часть стола и осталось зеленое пятно.
Теперь агент должен определить, в какую позицию плана ыЬО1е р1ап он должен перейти и какая последовательность корректируюших действий позволяет в нее попасть. Агент обнаруживает, что текущее состояние идентично предусловию перед выполнением действия Раупс, поэтому агент выбирает пустую последовательность для тера1т и принимает, что его план р1ап должен быть таким же, как и только что выполненная последовательность [Раупс, Руп15Ь). После принятия этого нового плана контроль выполнения возобновляется и предпринимается попытка выполнить действие Ра1пг.
Такое поведение повторяется в цикле до тех пор, пока результаты восприятия не будут указывать, что стол полностью перекрашен. Но заслуживает внимания то, что этот цикл создается процессом "запланировать — выполнить — перепланировать", а не явным циклом в плане. Контроль действий — это очень простой метод контроля выполнения, но он может иногда приводить к поведению, которое нельзя назвать интеллектуальным. Например, предположим, что агент формирует план решения задачи по перекраске, предусмотрев окрашивание стула и стола в красный цвет.
Затем он открывает банку с красной краской и обнаруживает, что краски достаточно только для стула. При контроле действий неудача не была бы обнаружена до тех пор, пока не будет окрашен стул, поскольку в этот момент предусловие наиераупе (Ней) становится ложным. А фактически требуется обнаруживать неудачное завершение каждый раз, когда состояние является таковым, что оставшийся план больше не будет работать.
В методе ск контроля плана эта цель достигается путем проверки предусловий успеха всего оставшегося плана, т.е. предусловий каждого этапе в плане, за исключением 598 Часть гЧ. Плангирование тех предусловий, которые достигаются с помощью еще одного этапа в оставшемся плане. В условиях контроля плана выполнение поставленного под сомнение плана прекращается настолько быстро, насколько это возможно, а не продолжается до тех пор, пока фактически не возникнет неудачное завершение". В некоторых случаях такое поведение позволяет спасти агента от несчастья, когда поставленный под сомнение план завел бы его к тупик, из которого цель будет недостижима.
Модифицировать алгоритм планирования таким образом, чтобы в нем в каждом пункте план сверялся с прелусловиями успеха оставшегося плана, относительно несложно. Если же мы расширим контроль плана для проверки того, выполняются ли в текущем состоянии предусловия плана в любом будущем пункте, а не только в текущем пункте, то контроль плана позволит также воспользоваться преимуществом удачи, т.е. случай1юго успеха. Если кто-то вдруг придет на помощь и покрасит стол в красный цвет одновременно с тем, как агент красит в красный цвет стул, то предусловия завершения плана будут выполнены 1поскольку цель достигнута) и агент сможет раньше уйти с работы. До снх пор методы контроля и перепланирования рассматривались в полностью наблюдаемых вариантах среды. А если среда является частично наблюдаемой, то ситуация может стать гораздо более сложной.
Во-первых, обстоятельства могут так измениться в худшую сторону, что агент не сумеет этого обнаружить. Во-вторых, для "проверки предусловии" может потребоваться выполнение действий по получению информации с помощью датчиков, которые должны быть запланированы глибо на этапе планирования, что потребует от нас возврата к условному планированию, либо на этапе выполнения плана).
В наихудшем случае для осуществления любого действия по получению информации с помощью датчиков может потребоваться составление сложного плана, который сам требует контроля и поэтому применения лополнительных действий по сбору информации, и т.д. Если агент упорно добивается того, чтобы были проверены все предусловия, то может так и не перейти к фактическому выполнению каких-либо действий. Агент должен предпочесть в такой ситуации проверку лишь переменных, которые имеют важное значение, характеризуются значительной вероятностью того, что их значения окажутся неправильными, и не требуют слишком больших затрат на сбор информации об их значениях.
Это позволяет агенту отвечать должным образом на важные опасности, но не тратить время на проверку того, не падает ли небо на голову. Теперь, после описания одного из методов контроля и перепланирования, мы до: жны ответить на вопрос: "Будет ли он работать?" Этот вопрос — на удивление сложный.
Если под ним подразумевается: "Можем ли мы гарантировать, что агент всегда достигнет цели, даже в условиях неограниченной недетерминированности?", то ответ будет отрицательным, поскольку агент может неожиданно попасть в тупиковую ситуацию, как описано применительно к оперативному поиску в разделе 4.5. Е!апример, агент-пылесос может не знать, что его аккумуляторы способны разрялиться.
Но мы исключим из рассмотрения тупиковые ситуации, т.е. предположим, что агент может сформировать план достижения цели из любого состояния в своей среде. Если принять предположение, что среда действительно является недетерми- ~з Благодаря нспсльзованню контроля плана наш агент становится немного умнее, чем навозный жук гсм. с. 31). Наш агент заметил бы, что шарик навоза в его лапках отсутствует, н поэтому пегюпланнровал бы свои действия, побы получать ешс один шарик навоза н заткнуп нм свою норку. Глава 12.
Планирование и осуществление действий в реальном мире 599 нированной, в том смысле, что подобный план всегда имеет какой-то шанс на успех в любой конкретной попытке его выполнения, то агент в конечном итоге достигнет цели. Поэтому переплангируюший агент обладает способностями, аналогичными тем, которыми обладает агент, занимаюшийся условным планированием. В действительности можно молифицировать условный планировщик таким образом, чтобы он формировал только частичный план решения, который включает этапы в форме "дк <саве> еЬап р2апл е1ве дерйап". С учетом принятых выше предположений такой план может стать правильным решением первоначальной задачи, к тому же его формирование может оказаться намного дешевле по сравнению с созданием полного условного плана.
Непргиятности возникают, когда повторные попытки достижения цели агентом становятся бесплодными — когда они блокируются каким-то предусловием или результатом, о котором агент не знает. Например, если агенту выдали неправильную магнитную карточку-ключ от его номера в гостинице, то он не сможет открыть дверь, даже вставляя эту карточку и вынимая бесконечное количество раз'4. Одно из решений состоит в том, чтобы выбрать случайным образом один из множества возможных планов исправления ситуации, а не пытаться каждый раз выполнить один и тот же план.
В данном случае полезной альтернативной был бы план исправления ситуации, состоящий в том, чтобы снова подойти к администратору гостиницы и получить правильную карточку-ключ от комнаты. Учитывая то, что агент может оказаться неспособным отличать друг от друга действительно недетерминированный случай и случай, в котором все попытки будут напрасными, такой способ организации выполненгия плана, в котором предусмотрено использование нескольких вариантов исправления ситуации, в целом становится более целесообразным. Еше одним решением проблемы неправильных описаний действий является обучение. После нескольких попыток обучающийся агент должен быть способен модифицировать описание действия, в котором указано, что данный ключ открывает дверь.