Quantcast
Channel: How to recognize a STRIPS planning problem has no solution? - Computer Science Stack Exchange
Viewing all articles
Browse latest Browse all 2

How to recognize a STRIPS planning problem has no solution?

$
0
0

Strips –Stands for STanford Research Institute Problem Solver (1971).

STRIPS Pseudo code -

STRIPS(stateListstart, stateListgoals)1.Set state = start2.Set plan = []3.Set stack = goals4.while stack is not empty do     1.STRIPS-Step()5.Return planSTRIPS-Step()switch top of stack t:1.case this a goal that matches state:    1.pop stack2.case this an unsatisfied conjunctive-goal:    1.select an ordering for the sub-goals    2.push the sub-goals into stack3.case this a simple unsatisfied goal    1.choose an operator op whose add-list matches t    2.replace the twith op    3.push preconditions of op to stack4.case this an operator    1.pop stack    2.state = state + t.add-list -t.delete-list    3.plan = [plan | t]

Some explanations -

state - is a list of predicates.

stack - is a stack which includes both predicates or operations.

[plan | t] - add the opreration t to list plan.

If the stack gets empty, it means that plan holds the solution plan.

Since the algorithm is running while stack is not empty do, how can I recognize that there is no solution (i.e plan) which led to the goal state ?

Those who are not familiar with this algorithm, you can see its running example here. Brief introduction: imagine a crane which picks boxes and put them each other , so operation can be put box A on box B and state can be box A is on box B .


Viewing all articles
Browse latest Browse all 2

Latest Images

Trending Articles





Latest Images