Пример: задача с запасным колесом |
Рассмотрим задачу смены колеса со стертой покрышкой. Точнее, цель состоит в том, чтобы на оси автомобиля было правильно смонтировано исправное запасное колесо, тогда как в начальном состоянии на оси имеется колесо со стертой покрышкой, а в багажнике находится исправное запасное колесо. Для того чтобы упростить эту задачу, рассмотрим чрезвычайно абстрактную ее версию, в которой не учитываются крепко прихваченные крепежные гайки или другие усложнения. Существуют только четыре действия: выемка запасного колеса из багажника, снятие колеса со стертой покрышкой с оси, установка запасного колеса на ось и оставление автомобиля без присмотра на ночь. Предполагается, что автомобиль находится в районе с исключительно неблагоприятной криминогенной обстановкой, поэтому результатом его пребывания ночью на улице становится исчезновение колес. Описание ADL этой задачи приведено в листинге 11.2. Обратите внимание на то, что оно является исключительно пропозициональным. Это описание превосходит по своим возможностям описание на языке Strips в том, что в его предусловии для действия Put On (Spare, Axle) (поместить запасное колесо на ось) используется отрицаемый предикат (отрицание предиката At (Flat, Axle) —на оси находится колесо со стертой покрышкой). Необходимости в этом можно избежать, применяя вместо него предикат Clear (Axle) (отсутствие колеса на оси), как будет показано в следующем примере. Листинг 11.2. Простая задача с запасным колесом
|