Анализ методов интеллектуального планирования.

С (R2): holding (х)(R2): ontable (х), clear (х), handempty (R2): holding (х)

R3: stack (х,у) - положить кубик на другой кубик

C(R3): holding (х) & clear (у)(R3): handempty, on (x,y), clear (x)(R3): holding (x), clear (y)4: unstack (x,y) - снять кубик с другою кубика

C(R4): handempty & on(x,y) & clear (x)(R4): holding (x), clear (y)(R4): handempty, on(x,y), clear (x)

Начальное состояние s0 и цель G изображены на рис.3.

Таким образом, цель G= {On (А,В) & On (В,С)}.

Поскольку цель G является составной, то STRIPS расщепляет её на отдельные компоненты - On (А,В) и On (В,С), которые помещаются в стек и удовлетворяются по очереди.

Рисунок 3 - Аномалия Суссмана

Положим, что On (А,В) наверху стека, тогда планировщик находит следующую последовательность правил для удовлетворения On (А,В):

UNSTACK(C,A), PUTDOWN(C), PICKUP(A), STACK (A,B).

Применяет найденную последовательность к состоянию So. Получается ситуация, изображённая на рис.4, в которой On (А,В) выполнима. Цель On (А,В) удаляется из стека целей. On (А.В) удовлетворено.

Далее, из ситуации на рисунке 4 , удовлетворяется следующая цель в стеке - On (В,С). В результате имеем: UNSTACK(C,A), PUTDOWN(C), PICKUP(A), STACK (A,B), UNSTACK(A.B). PUTDOWN(A) PICKUP(B), STACK (B.C).

Рисунок 4 - Удовлетворение первой цели

Применяем последовательность подчёркнутых правил. И, получаем ситуацию на рисунке 5. Цель On (В,С) удовлетворена и удаляется из стека. Однако цель Оn(А,В), удовлетворённая на предыдущем этапе, перестает быть выполнимой.

И, поэтому, теперь планировщик пытается из ситуации на рисунке 5 удовлетворить On (А,В). Это приводит к добавлению ещё двух правил к имеющейся последовательности.

Рисунок 5 - Удовлетворение второй цели

В результате получаем план:

(C,A), PUTDOWN(C),

PICKUP(A), STACK (A,B), UNSTACK(A,B), PUTDOWN(A), PICKUP(B),STACK (B,C), PICKUP(A), STACK (А.В)

Подчёркнутые правила применяются. Цель On (А,В) & On (В,С) достигается. План построен.

Однако существует другой план, содержащий меньше действий:

UNSTACK(C,A), PUTDOWN(C), PICKUP(B), STACK (B,C), PICKUP(A), STACK(A,B)

Рассмотрим вычислительную сложность задачи STRIPS-планирования.

Описание задачи классического планирования в терминах STRIPS допускается любым планировщиком. Поэтому рассмотрим вычислительную сложность задачи STRIPS-планирования [23,17, 22].

Далее будем рассматривать случай разрешимой задачи планирования, вычислительная сложность которой (таблица 1), варьируется от постоянного времени до EXPSPACE-полноты в зависимости от ограничений, накладываемых на язык домена, планирования Р.

Таблица 1 - Вычислительная сложность задачи планирования

предикаты не содержат функциональные символы

не априорно

есть

есть/нет

1

ExpSpase-полна

NExpTime-полна

нет

есть

2

NExpTime-полна

NExpTime-полна

нет

3

ExpSpase-полна

NExpTime-полна

нет

4

Pspace-полна

PSpace-полна

априорно

есть

есть/нет

5

Pspace

PSpace

нет

есть

6

NP

NP

нет

7

P

NP

нет

8

NLogSpace

NP

Все предикаты 0-местные

не априорно

есть

есть/нет

9

PSpace-полна

PSpace-полна

нет

есть

10

NP-полна

NP-полна

нет

11

P

NP-полна

нет

12

NLogSpace-полна

NP-полна

априорно

есть/нет

есть/нет

13

постоянное время

постоянное время

Перейти на страницу: 1 2 3 4 5 6 7 8 9