ICAPS05 WS6 - icaps 2005

icaps05.uni.ulm.de

ICAPS05 WS6 - icaps 2005

V (〈Gunach, s〉) = max

{G2,G3}

s

Macro 3

Macro 2

{G3}

g2

{G2}

g3

{}

g3

{}

g2


V (〈{}, s〉) = 0 (2)

0, max

macroi∈Adesire

Add G1

Remove G1

{G1,G2,G

3}

s

Macro 1

Macro 3

caction(macroi, s)

+R(gi)

+V (〈Gunach − gi, gi〉)

Figure 5: Modification of desire space for addition or removal of a goal

Goal Addition

Algorithm 2 describes a process for adding goal g to desire

state d. For desire state d in the model, a new macro action is

added for achieving goal g and the resulting desire state d ′ is

created. The children of d are added to d ′ . After the addition

of the children, the value of d ′ can be calculated, selecting

the best macro to execute in that desire state. The new goal

g are then added to each of the children of d, constructing

the model while executing depth-first traversal of the tree.

Finally, the value of s is updated, possibly changing the best

macro to execute.

Algorithm 2 AddGoal(d,g)

d ′ = new STATE(〈d.Gunach, g〉)

d.Gunach = d.Gunach + g

for all i ∈ d.children do

ADDCHILD(d ′ , i)

end for

UPDATE(V (d ′ ))

for all i ∈ d.children do

ADDGOAL(i,g)

end for

d.children = d.children + d ′

UPDATE(V (d))

Model modification saves computational cost compared

to building a new model by reusing calculations for subpaths

that do not contain the new task. Figure 5 shows the result

of adding g1 to a model that already includes g2 and g3. Desire

states marked in gray are replicated from the original

Macro 2

{G2,G3}

g1

{G1,G3}

g2

{G1,G2}

g3

{G3}

g2

{G2}

g3

{G3}

g1

{G1}

g3

{G2}

g1

{G1}

g2

{}

g3

{}

g2

{}

g1


ICAPS 2005

model into the resulting model through ADDCHILD in the

algorithm described above.

Additionally, since values are accumulated from the end

of the path back towards the head of the path, some desire

state nodes are shown with multiple incoming edges. The

value for these nodes needs only be calculated a single time,

cached, then reused for each of the incoming edges. Replication

saves the computational cost of recalculating the values

for states which will have equivalent values to preexisting

states.

Algorithm 2 is essentially a depth-first search, but was

included to illustrate how new nodes are added into the

model during the search process. Heuristic usage can modify

the presented algorithm to a best-first search to further

reduce computational costs, though the complexity level is

not changed.

Goal Modification

The rewards associated with goals may change. This may be

due to the passage of time or acquisition of new information.

States in which the goal has been achieved are not affected

by any change in the value of that goal. Only those states

leading up to achievement of that goal are affected. Similar

to the addition of goals, desire state values can be updated by

a single traversal of the graph. By intelligently caching the

value calculation results large sections of the desire space

are not touched.

The overall objective when handling dynamic goals is to

reuse the calculations that stay static across changes. In each

of the removal, addition, or modification cases, the desire

space is divided into sections by the appropriate macro ac-

54 Workshop on Planning under Uncertainty for Autonomous Systems

(3)

More magazines by this user
Similar magazines