 Instance ./instances/generated_basic_3/instance-1.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 1/1 = 100.0%Full->Specific 1/1 = 100.0%Specific->Full 1/1 = 100.0%
Single goal instances: 0

Total time: 4.72s
 Instance ./instances/generated_basic_3/instance-2.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
unstack the blue block from on top of the red block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)
(unstack blue red)
(put-down blue)

-------- Ground truth plan ---------
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 2/2 = 100.0%Full->Specific 2/2 = 100.0%Specific->Full 1/2 = 50.0%
Single goal instances: 0

Total time: 10.12s
 Instance ./instances/generated_basic_3/instance-3.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the orange block is on top of the blue block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 2/3 = 66.67%Full->Specific 3/3 = 100.0%Specific->Full 2/3 = 66.67%
Single goal instances: 0

Total time: 16.45s
 Instance ./instances/generated_basic_3/instance-4.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(stack blue red)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(stack blue red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
put down the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up orange)
(put-down orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(stack blue red)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(stack blue red)

=============================================================================

Results:
Random 3/4 = 75.0%Full->Specific 3/4 = 75.0%Specific->Full 2/4 = 50.0%
Single goal instances: 1

Total time: 21.21s
 Instance ./instances/generated_basic_3/instance-5.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 4/5 = 80.0%Full->Specific 4/5 = 80.0%Specific->Full 3/5 = 60.0%
Single goal instances: 1

Total time: 26.76s
 Instance ./instances/generated_basic_3/instance-6.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the orange block is on top of the red block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 5/6 = 83.33%Full->Specific 5/6 = 83.33%Specific->Full 4/6 = 66.67%
Single goal instances: 1

Total time: 32.09s
 Instance ./instances/generated_basic_3/instance-7.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 6/7 = 85.71%Full->Specific 6/7 = 85.71%Specific->Full 5/7 = 71.43%
Single goal instances: 1

Total time: 36.89s
 Instance ./instances/generated_basic_3/instance-8.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the orange block
pick up the blue block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red orange)
(pick-up blue)
(put-down blue)

-------- Ground truth plan ---------
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 7/8 = 87.5%Full->Specific 7/8 = 87.5%Specific->Full 6/8 = 75.0%
Single goal instances: 2

Total time: 39.69s
 Instance ./instances/generated_basic_3/instance-9.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(put-down blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 8/9 = 88.89%Full->Specific 8/9 = 88.89%Specific->Full 7/9 = 77.78%
Single goal instances: 3

Total time: 44.61s
 Instance ./instances/generated_basic_3/instance-10.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 9/10 = 90.0%Full->Specific 9/10 = 90.0%Specific->Full 8/10 = 80.0%
Single goal instances: 3

Total time: 48.96s
 Instance ./instances/generated_basic_3/instance-11.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 10/11 = 90.91%Full->Specific 10/11 = 90.91%Specific->Full 9/11 = 81.82%
Single goal instances: 3

Total time: 53.76s
 Instance ./instances/generated_basic_3/instance-12.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 11/12 = 91.67%Full->Specific 11/12 = 91.67%Specific->Full 10/12 = 83.33%
Single goal instances: 3

Total time: 59.4s
 Instance ./instances/generated_basic_3/instance-13.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 12/13 = 92.31%Full->Specific 12/13 = 92.31%Specific->Full 11/13 = 84.62%
Single goal instances: 3

Total time: 64.28s
 Instance ./instances/generated_basic_3/instance-14.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block and the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 13/14 = 92.86%Full->Specific 12/14 = 85.71%Specific->Full 12/14 = 85.71%
Single goal instances: 3

Total time: 68.88s
 Instance ./instances/generated_basic_3/instance-15.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 14/15 = 93.33%Full->Specific 13/15 = 86.67%Specific->Full 13/15 = 86.67%
Single goal instances: 4

Total time: 72.18s
 Instance ./instances/generated_basic_3/instance-16.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on top of the red block and the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 15/16 = 93.75%Full->Specific 14/16 = 87.5%Specific->Full 14/16 = 87.5%
Single goal instances: 4

Total time: 78.05s
 Instance ./instances/generated_basic_3/instance-17.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the red block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange red)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(unstack orange red)
(put-down orange)
(pick-up red)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 15/17 = 88.24%Full->Specific 15/17 = 88.24%Specific->Full 14/17 = 82.35%
Single goal instances: 4

Total time: 81.67s
 Instance ./instances/generated_basic_3/instance-18.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the orange block is on top of the blue block and the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 15/18 = 83.33%Full->Specific 16/18 = 88.89%Specific->Full 15/18 = 83.33%
Single goal instances: 4

Total time: 87.69s
 Instance ./instances/generated_basic_3/instance-19.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 16/19 = 84.21%Full->Specific 17/19 = 89.47%Specific->Full 16/19 = 84.21%
Single goal instances: 4

Total time: 91.84s
 Instance ./instances/generated_basic_3/instance-20.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
unstack the red block from on top of the orange block
stack the blue block on top of the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(unstack red orange)
(stack blue red)
(stack red orange)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 17/20 = 85.0%Full->Specific 18/20 = 90.0%Specific->Full 16/20 = 80.0%
Single goal instances: 5

Total time: 95.15s
 Instance ./instances/generated_basic_3/instance-21.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)
(put-down blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 17/21 = 80.95%Full->Specific 19/21 = 90.48%Specific->Full 16/21 = 76.19%
Single goal instances: 5

Total time: 100.49s
 Instance ./instances/generated_basic_3/instance-22.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
put down the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(put-down red)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 18/22 = 81.82%Full->Specific 19/22 = 86.36%Specific->Full 17/22 = 77.27%
Single goal instances: 6

Total time: 105.43s
 Instance ./instances/generated_basic_3/instance-23.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 19/23 = 82.61%Full->Specific 20/23 = 86.96%Specific->Full 18/23 = 78.26%
Single goal instances: 7

Total time: 110.95s
 Instance ./instances/generated_basic_3/instance-24.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the blue block
pick up the blue block
unstack the blue block from on top of the orange block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red blue)
(pick-up blue)
(unstack blue orange)
(put-down blue)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the blue block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red blue)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 20/24 = 83.33%Full->Specific 20/24 = 83.33%Specific->Full 18/24 = 75.0%
Single goal instances: 7

Total time: 114.61s
 Instance ./instances/generated_basic_3/instance-25.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 21/25 = 84.0%Full->Specific 21/25 = 84.0%Specific->Full 19/25 = 76.0%
Single goal instances: 7

Total time: 119.62s
 Instance ./instances/generated_basic_3/instance-26.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(put-down blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 22/26 = 84.62%Full->Specific 22/26 = 84.62%Specific->Full 19/26 = 73.08%
Single goal instances: 8

Total time: 124.5s
 Instance ./instances/generated_basic_3/instance-27.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the orange block is on top of the blue block and the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
pick up the red block
stack the red block on top of the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(pick-up red)
(stack red orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 22/27 = 81.48%Full->Specific 23/27 = 85.19%Specific->Full 19/27 = 70.37%
Single goal instances: 8

Total time: 128.87s
 Instance ./instances/generated_basic_3/instance-28.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 23/28 = 82.14%Full->Specific 24/28 = 85.71%Specific->Full 20/28 = 71.43%
Single goal instances: 8

Total time: 134.96s
 Instance ./instances/generated_basic_3/instance-29.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)
(put-down blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 24/29 = 82.76%Full->Specific 25/29 = 86.21%Specific->Full 20/29 = 68.97%
Single goal instances: 8

Total time: 141.8s
 Instance ./instances/generated_basic_3/instance-30.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(put-down blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 25/30 = 83.33%Full->Specific 26/30 = 86.67%Specific->Full 21/30 = 70.0%
Single goal instances: 9

Total time: 145.24s
 Instance ./instances/generated_basic_3/instance-31.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 26/31 = 83.87%Full->Specific 27/31 = 87.1%Specific->Full 22/31 = 70.97%
Single goal instances: 10

Total time: 149.11s
 Instance ./instances/generated_basic_3/instance-32.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue orange)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue orange)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(stack blue red)

-------- Ground truth plan ---------
(unstack blue orange)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 27/32 = 84.38%Full->Specific 27/32 = 84.38%Specific->Full 23/32 = 71.88%
Single goal instances: 10

Total time: 153.45s
 Instance ./instances/generated_basic_3/instance-33.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the red block
unstack the orange block from on top of the red block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange red)
(unstack orange red)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 28/33 = 84.85%Full->Specific 28/33 = 84.85%Specific->Full 23/33 = 69.7%
Single goal instances: 11

Total time: 157.83s
 Instance ./instances/generated_basic_3/instance-34.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
put down the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(put-down red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 29/34 = 85.29%Full->Specific 29/34 = 85.29%Specific->Full 24/34 = 70.59%
Single goal instances: 12

Total time: 161.65s
 Instance ./instances/generated_basic_3/instance-35.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 30/35 = 85.71%Full->Specific 30/35 = 85.71%Specific->Full 25/35 = 71.43%
Single goal instances: 12

Total time: 168.7s
 Instance ./instances/generated_basic_3/instance-36.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange red)
(stack orange blue)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(put-down red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack orange red)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange red)
(stack orange blue)

=============================================================================

Results:
Random 31/36 = 86.11%Full->Specific 31/36 = 86.11%Specific->Full 25/36 = 69.44%
Single goal instances: 13

Total time: 172.34s
 Instance ./instances/generated_basic_3/instance-37.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 32/37 = 86.49%Full->Specific 32/37 = 86.49%Specific->Full 26/37 = 70.27%
Single goal instances: 13

Total time: 178.07s
 Instance ./instances/generated_basic_3/instance-38.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
put down the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(put-down orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 33/38 = 86.84%Full->Specific 32/38 = 84.21%Specific->Full 27/38 = 71.05%
Single goal instances: 14

Total time: 183.69s
 Instance ./instances/generated_basic_3/instance-39.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 34/39 = 87.18%Full->Specific 33/39 = 84.62%Specific->Full 28/39 = 71.79%
Single goal instances: 14

Total time: 190.48s
 Instance ./instances/generated_basic_3/instance-40.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 35/40 = 87.5%Full->Specific 33/40 = 82.5%Specific->Full 29/40 = 72.5%
Single goal instances: 15

Total time: 195.86s
 Instance ./instances/generated_basic_3/instance-41.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the blue block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange blue)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the blue block
unstack the orange block from on top of the blue block
put down the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange blue)
(unstack orange blue)
(put-down orange)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(stack blue orange)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 35/41 = 85.37%Full->Specific 33/41 = 80.49%Specific->Full 29/41 = 70.73%
Single goal instances: 15

Total time: 199.87s
 Instance ./instances/generated_basic_3/instance-42.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
put down the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(put-down red)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 36/42 = 85.71%Full->Specific 34/42 = 80.95%Specific->Full 30/42 = 71.43%
Single goal instances: 16

Total time: 204.31s
 Instance ./instances/generated_basic_3/instance-43.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 37/43 = 86.05%Full->Specific 34/43 = 79.07%Specific->Full 30/43 = 69.77%
Single goal instances: 17

Total time: 209.51s
 Instance ./instances/generated_basic_3/instance-44.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 37/44 = 84.09%Full->Specific 35/44 = 79.55%Specific->Full 31/44 = 70.45%
Single goal instances: 17

Total time: 214.4s
 Instance ./instances/generated_basic_3/instance-45.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the orange block
unstack the orange block from on top of the blue block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red orange)
(unstack orange blue)
(stack orange blue)

-------- Ground truth plan ---------
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 38/45 = 84.44%Full->Specific 36/45 = 80.0%Specific->Full 31/45 = 68.89%
Single goal instances: 18

Total time: 218.14s
 Instance ./instances/generated_basic_3/instance-46.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue red)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue red)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue red)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 39/46 = 84.78%Full->Specific 37/46 = 80.43%Specific->Full 32/46 = 69.57%
Single goal instances: 18

Total time: 222.4s
 Instance ./instances/generated_basic_3/instance-47.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(stack red blue)

-------- Ground truth plan ---------
(unstack red orange)
(stack red blue)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
put down the orange block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(put-down orange)
(stack red blue)

-------- Ground truth plan ---------
(unstack red orange)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(stack red blue)

-------- Ground truth plan ---------
(unstack red orange)
(stack red blue)

=============================================================================

Results:
Random 40/47 = 85.11%Full->Specific 38/47 = 80.85%Specific->Full 32/47 = 68.09%
Single goal instances: 19

Total time: 225.85s
 Instance ./instances/generated_basic_3/instance-48.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the blue block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red blue)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
unstack the blue block from on top of the orange block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(unstack blue orange)
(stack red blue)

-------- Ground truth plan ---------
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 40/48 = 83.33%Full->Specific 39/48 = 81.25%Specific->Full 32/48 = 66.67%
Single goal instances: 19

Total time: 229.21s
 Instance ./instances/generated_basic_3/instance-49.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)
(put-down blue)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 41/49 = 83.67%Full->Specific 40/49 = 81.63%Specific->Full 32/49 = 65.31%
Single goal instances: 19

Total time: 233.96s
 Instance ./instances/generated_basic_3/instance-50.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 42/50 = 84.0%Full->Specific 41/50 = 82.0%Specific->Full 33/50 = 66.0%
Single goal instances: 20

Total time: 238.62s
 Instance ./instances/generated_basic_3/instance-51.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the red block and the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the blue block on top of the red block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack blue red)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 42/51 = 82.35%Full->Specific 42/51 = 82.35%Specific->Full 34/51 = 66.67%
Single goal instances: 20

Total time: 242.81s
 Instance ./instances/generated_basic_3/instance-52.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 43/52 = 82.69%Full->Specific 43/52 = 82.69%Specific->Full 35/52 = 67.31%
Single goal instances: 21

Total time: 245.92s
 Instance ./instances/generated_basic_3/instance-53.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 44/53 = 83.02%Full->Specific 44/53 = 83.02%Specific->Full 36/53 = 67.92%
Single goal instances: 22

Total time: 250.11s
 Instance ./instances/generated_basic_3/instance-54.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 45/54 = 83.33%Full->Specific 45/54 = 83.33%Specific->Full 36/54 = 66.67%
Single goal instances: 22

Total time: 255.68s
 Instance ./instances/generated_basic_3/instance-55.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(put-down blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the red block is clear, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 46/55 = 83.64%Full->Specific 46/55 = 83.64%Specific->Full 36/55 = 65.45%
Single goal instances: 23

Total time: 259.96s
 Instance ./instances/generated_basic_3/instance-56.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(stack red blue)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the blue block from on top of the red block
put down the blue block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack blue red)
(put-down blue)
(stack orange blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(stack red blue)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(stack red blue)

=============================================================================

Results:
Random 47/56 = 83.93%Full->Specific 46/56 = 82.14%Specific->Full 36/56 = 64.29%
Single goal instances: 24

Total time: 264.87s
 Instance ./instances/generated_basic_3/instance-57.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 47/57 = 82.46%Full->Specific 47/57 = 82.46%Specific->Full 37/57 = 64.91%
Single goal instances: 24

Total time: 271.42s
 Instance ./instances/generated_basic_3/instance-58.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 48/58 = 82.76%Full->Specific 48/58 = 82.76%Specific->Full 38/58 = 65.52%
Single goal instances: 25

Total time: 275.18s
 Instance ./instances/generated_basic_3/instance-59.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 49/59 = 83.05%Full->Specific 49/59 = 83.05%Specific->Full 39/59 = 66.1%
Single goal instances: 26

Total time: 280.12s
 Instance ./instances/generated_basic_3/instance-60.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack red orange)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack red orange)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack red orange)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 50/60 = 83.33%Full->Specific 50/60 = 83.33%Specific->Full 40/60 = 66.67%
Single goal instances: 26

Total time: 284.62s
 Instance ./instances/generated_basic_3/instance-61.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 50/61 = 81.97%Full->Specific 51/61 = 83.61%Specific->Full 41/61 = 67.21%
Single goal instances: 26

Total time: 289.44s
 Instance ./instances/generated_basic_3/instance-62.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 51/62 = 82.26%Full->Specific 52/62 = 83.87%Specific->Full 42/62 = 67.74%
Single goal instances: 26

Total time: 293.96s
 Instance ./instances/generated_basic_3/instance-63.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 52/63 = 82.54%Full->Specific 53/63 = 84.13%Specific->Full 43/63 = 68.25%
Single goal instances: 26

Total time: 297.72s
 Instance ./instances/generated_basic_3/instance-64.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
unstack the blue block from on top of the orange block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(unstack blue orange)
(put-down blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 53/64 = 82.81%Full->Specific 54/64 = 84.38%Specific->Full 43/64 = 67.19%
Single goal instances: 26

Total time: 302.23s
 Instance ./instances/generated_basic_3/instance-65.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 53/65 = 81.54%Full->Specific 55/65 = 84.62%Specific->Full 44/65 = 67.69%
Single goal instances: 26

Total time: 307.11s
 Instance ./instances/generated_basic_3/instance-66.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on top of the orange block and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
unstack the blue block from on top of the orange block
put down the blue block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(unstack blue orange)
(put-down blue)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 54/66 = 81.82%Full->Specific 56/66 = 84.85%Specific->Full 45/66 = 68.18%
Single goal instances: 26

Total time: 313.52s
 Instance ./instances/generated_basic_3/instance-67.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)
(put-down blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 55/67 = 82.09%Full->Specific 57/67 = 85.07%Specific->Full 45/67 = 67.16%
Single goal instances: 27

Total time: 318.19s
 Instance ./instances/generated_basic_3/instance-68.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block and the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 56/68 = 82.35%Full->Specific 58/68 = 85.29%Specific->Full 46/68 = 67.65%
Single goal instances: 27

Total time: 322.71s
 Instance ./instances/generated_basic_3/instance-69.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 57/69 = 82.61%Full->Specific 59/69 = 85.51%Specific->Full 47/69 = 68.12%
Single goal instances: 27

Total time: 327.1s
 Instance ./instances/generated_basic_3/instance-70.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(put-down blue)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 58/70 = 82.86%Full->Specific 60/70 = 85.71%Specific->Full 47/70 = 67.14%
Single goal instances: 28

Total time: 332.31s
 Instance ./instances/generated_basic_3/instance-71.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)
(put-down blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 59/71 = 83.1%Full->Specific 61/71 = 85.92%Specific->Full 47/71 = 66.2%
Single goal instances: 29

Total time: 337.22s
 Instance ./instances/generated_basic_3/instance-72.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 60/72 = 83.33%Full->Specific 62/72 = 86.11%Specific->Full 48/72 = 66.67%
Single goal instances: 30

Total time: 342.83s
 Instance ./instances/generated_basic_3/instance-73.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
unstack the orange block from on top of the red block
stack the blue block on top of the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(unstack orange red)
(stack blue orange)
(stack orange red)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 61/73 = 83.56%Full->Specific 63/73 = 86.3%Specific->Full 48/73 = 65.75%
Single goal instances: 31

Total time: 345.71s
 Instance ./instances/generated_basic_3/instance-74.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(stack orange red)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(stack orange red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
put down the blue block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(put-down blue)
(stack orange red)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(stack orange red)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(stack orange red)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(stack orange red)

=============================================================================

Results:
Random 62/74 = 83.78%Full->Specific 63/74 = 85.14%Specific->Full 48/74 = 64.86%
Single goal instances: 32

Total time: 351.23s
 Instance ./instances/generated_basic_3/instance-75.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 63/75 = 84.0%Full->Specific 64/75 = 85.33%Specific->Full 49/75 = 65.33%
Single goal instances: 32

Total time: 355.41s
 Instance ./instances/generated_basic_3/instance-76.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
unstack the red block from on top of the orange block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on top of the red block and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(unstack red orange)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 64/76 = 84.21%Full->Specific 64/76 = 84.21%Specific->Full 50/76 = 65.79%
Single goal instances: 33

Total time: 359.58s
 Instance ./instances/generated_basic_3/instance-77.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the orange block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue orange)
(put-down blue)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 65/77 = 84.42%Full->Specific 65/77 = 84.42%Specific->Full 50/77 = 64.94%
Single goal instances: 34

Total time: 363.02s
 Instance ./instances/generated_basic_3/instance-78.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
pick up the orange block
put down the orange block
pick up the red block
put down the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)
(pick-up orange)
(put-down orange)
(pick-up red)
(put-down red)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 66/78 = 84.62%Full->Specific 66/78 = 84.62%Specific->Full 50/78 = 64.1%
Single goal instances: 35

Total time: 368.25s
 Instance ./instances/generated_basic_3/instance-79.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the orange block is on top of the red block and the red block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
unstack the orange block from on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 67/79 = 84.81%Full->Specific 66/79 = 83.54%Specific->Full 51/79 = 64.56%
Single goal instances: 36

Total time: 372.41s
 Instance ./instances/generated_basic_3/instance-80.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
put down the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)
(put-down red)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 68/80 = 85.0%Full->Specific 67/80 = 83.75%Specific->Full 51/80 = 63.75%
Single goal instances: 37

Total time: 376.18s
 Instance ./instances/generated_basic_3/instance-81.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)
(put-down blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 69/81 = 85.19%Full->Specific 68/81 = 83.95%Specific->Full 51/81 = 62.96%
Single goal instances: 37

Total time: 380.46s
 Instance ./instances/generated_basic_3/instance-82.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 70/82 = 85.37%Full->Specific 69/82 = 84.15%Specific->Full 52/82 = 63.41%
Single goal instances: 37

Total time: 386.92s
 Instance ./instances/generated_basic_3/instance-83.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the red block
unstack the red block from on top of the orange block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue red)
(unstack red orange)
(stack red orange)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the red block
unstack the red block from on top of the orange block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue red)
(unstack red orange)
(stack red orange)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the red block, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the red block is on top of the orange block, the blue block is on the table and the orange block is on the table.
My goal is to have that the red block is on top of the orange block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 70/83 = 84.34%Full->Specific 70/83 = 84.34%Specific->Full 52/83 = 62.65%
Single goal instances: 37

Total time: 390.88s
 Instance ./instances/generated_basic_3/instance-84.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
put down the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)
(pick-up orange)
(put-down orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 71/84 = 84.52%Full->Specific 71/84 = 84.52%Specific->Full 53/84 = 63.1%
Single goal instances: 38

Total time: 396.23s
 Instance ./instances/generated_basic_3/instance-85.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack red orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack red orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the blue block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up blue)
(put-down blue)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack red orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the blue block is clear, the red block is clear, the red block is on top of the orange block and the orange block is on the table.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack red orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(stack red orange)

=============================================================================

Results:
Random 72/85 = 84.71%Full->Specific 72/85 = 84.71%Specific->Full 53/85 = 62.35%
Single goal instances: 39

Total time: 401.16s
 Instance ./instances/generated_basic_3/instance-86.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
unstack the orange block from on top of the blue block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(unstack orange blue)
(stack orange blue)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 73/86 = 84.88%Full->Specific 73/86 = 84.88%Specific->Full 53/86 = 61.63%
Single goal instances: 40

Total time: 404.45s
 Instance ./instances/generated_basic_3/instance-87.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the blue block and the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the blue block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange blue)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(put-down orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is on top of the red block, the red block is on the table and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the red block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)
(pick-up orange)
(stack orange blue)

=============================================================================

Results:
Random 73/87 = 83.91%Full->Specific 74/87 = 85.06%Specific->Full 53/87 = 60.92%
Single goal instances: 40

Total time: 408.38s
 Instance ./instances/generated_basic_3/instance-88.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the orange block
pick up the orange block
stack the orange block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red orange)
(pick-up orange)
(stack orange blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the orange block is on top of the red block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the orange block is on top of the blue block, the red block is on the table and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
pick up the red block
stack the red block on top of the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(pick-up red)
(stack red blue)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 73/88 = 82.95%Full->Specific 75/88 = 85.23%Specific->Full 54/88 = 61.36%
Single goal instances: 40

Total time: 413.31s
 Instance ./instances/generated_basic_3/instance-89.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
put down the orange block
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(put-down orange)
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue red)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue red)

=============================================================================

Results:
Random 74/89 = 83.15%Full->Specific 76/89 = 85.39%Specific->Full 55/89 = 61.8%
Single goal instances: 41

Total time: 416.06s
 Instance ./instances/generated_basic_3/instance-90.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
unstack the blue block from on top of the orange block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)
(unstack blue orange)
(put-down blue)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 75/90 = 83.33%Full->Specific 77/90 = 85.56%Specific->Full 55/90 = 61.11%
Single goal instances: 41

Total time: 420.79s
 Instance ./instances/generated_basic_3/instance-91.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 76/91 = 83.52%Full->Specific 78/91 = 85.71%Specific->Full 56/91 = 61.54%
Single goal instances: 42

Total time: 425.82s
 Instance ./instances/generated_basic_3/instance-92.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(stack blue red)

-------- Ground truth plan ---------
(unstack blue orange)
(stack blue red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
pick up the orange block
put down the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(stack blue red)
(pick-up orange)
(put-down orange)

-------- Ground truth plan ---------
(unstack blue orange)
(stack blue red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the orange block is clear, the blue block is clear, the blue block is on top of the red block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the hand is empty, the blue block is on top of the orange block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
stack the blue block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(stack blue red)

-------- Ground truth plan ---------
(unstack blue orange)
(stack blue red)

=============================================================================

Results:
Random 77/92 = 83.7%Full->Specific 79/92 = 85.87%Specific->Full 57/92 = 61.96%
Single goal instances: 43

Total time: 429.99s
 Instance ./instances/generated_basic_3/instance-93.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
put down the blue block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange red)
(pick-up blue)
(put-down blue)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the blue block is clear, the orange block is clear, the hand is empty, the red block is on the table, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 78/93 = 83.87%Full->Specific 80/93 = 86.02%Specific->Full 58/93 = 62.37%
Single goal instances: 44

Total time: 433.08s
 Instance ./instances/generated_basic_3/instance-94.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the orange block is on top of the red block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
unstack the orange block from on top of the red block
put down the orange block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(unstack orange red)
(put-down orange)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the orange block is clear, the hand is empty, the red block is on top of the blue block, the blue block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the red block
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange red)
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 79/94 = 84.04%Full->Specific 81/94 = 86.17%Specific->Full 58/94 = 61.7%
Single goal instances: 44

Total time: 437.49s
 Instance ./instances/generated_basic_3/instance-95.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the orange block
put down the blue block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue orange)
(put-down blue)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the hand is empty, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the red block is clear, the hand is empty, the red block is on top of the orange block, the orange block is on top of the blue block and the blue block is on the table.
My goal is to have that the red block is on top of the blue block and the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the red block from on top of the orange block
put down the red block
unstack the orange block from on top of the blue block
put down the orange block
pick up the blue block
stack the blue block on top of the orange block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack red orange)
(put-down red)
(unstack orange blue)
(put-down orange)
(pick-up blue)
(stack blue orange)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 79/95 = 83.16%Full->Specific 82/95 = 86.32%Specific->Full 59/95 = 62.11%
Single goal instances: 44

Total time: 443.55s
 Instance ./instances/generated_basic_3/instance-96.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue red)
(stack blue orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
put down the red block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(put-down blue)
(pick-up red)
(put-down red)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue red)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the red block is clear, the blue block is on top of the orange block, the orange block is on the table and the red block is on the table.

My plan is as follows:

[PLAN]
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the blue block is on top of the red block, the red block is on the table and the orange block is on the table.
My goal is to have that the blue block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the blue block from on top of the red block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack blue red)
(stack blue orange)

-------- Ground truth plan ---------
(unstack blue red)
(stack blue orange)

=============================================================================

Results:
Random 80/96 = 83.33%Full->Specific 83/96 = 86.46%Specific->Full 59/96 = 61.46%
Single goal instances: 45

Total time: 447.5s
 Instance ./instances/generated_basic_3/instance-97.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the orange block is clear, the blue block is clear, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up orange)
(stack orange red)

=============================================================================

Results:
Random 81/97 = 83.51%Full->Specific 84/97 = 86.6%Specific->Full 60/97 = 61.86%
Single goal instances: 46

Total time: 452.95s
 Instance ./instances/generated_basic_3/instance-98.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the blue block is on the table, the orange block is clear, the hand is empty, the red block is clear, the orange block is on the table and the red block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the blue block is on top of the red block, the orange block is on top of the blue block and the red block is on the table.
My goal is to have that the red block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the blue block
put down the orange block
unstack the blue block from on top of the red block
put down the blue block
pick up the red block
stack the red block on top of the blue block
[PLAN END]
--------- Extracted plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

-------- Ground truth plan ---------
(unstack orange blue)
(put-down orange)
(unstack blue red)
(put-down blue)
(pick-up red)
(stack red blue)

=============================================================================

Results:
Random 82/98 = 83.67%Full->Specific 85/98 = 86.73%Specific->Full 61/98 = 62.24%
Single goal instances: 47

Total time: 457.87s
 Instance ./instances/generated_basic_3/instance-99.pddl
=================================== (GOAL ORDERING CHANGE) SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the orange block is on top of the blue block and the red block is on top of the orange block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Specific->Full SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the blue block is on the table, the hand is empty, the red block is clear, the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the orange block is clear, the hand is empty, the red block is on top of the blue block, the orange block is on top of the red block and the blue block is on the table.
My goal is to have that the red block is on top of the orange block and the orange block is on top of the blue block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
unstack the orange block from on top of the red block
put down the orange block
unstack the red block from on top of the blue block
put down the red block
pick up the orange block
stack the orange block on top of the blue block
pick up the red block
stack the red block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

-------- Ground truth plan ---------
(unstack orange red)
(put-down orange)
(unstack red blue)
(put-down red)
(pick-up orange)
(stack orange blue)
(pick-up red)
(stack red orange)

=============================================================================

Results:
Random 83/99 = 83.84%Full->Specific 86/99 = 86.87%Specific->Full 62/99 = 62.63%
Single goal instances: 47

Total time: 463.32s
 Instance ./instances/generated_basic_3/instance-100.pddl
=================================== (GOAL ORDERING CHANGE) FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the orange block
pick up the orange block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue orange)
(pick-up orange)
(stack orange red)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Specific->Full FAILURE ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the orange block
unstack the orange block from on top of the red block
stack the orange block on top of the red block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue orange)
(unstack orange red)
(stack orange red)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)

=============================================================================
=================================== Full->Specific SUCCESS ===================================
I am playing with a set of blocks where I need to arrange the blocks into stacks. Here are the actions I can do

Pick up a block
Unstack a block from on top of another block
Put down a block
Stack a block on top of another block

I have the following restrictions on my actions:
I can only pick up or unstack one block at a time.
I can only pick up or unstack a block if my hand is empty.
I can only pick up a block if the block is on the table and the block is clear. A block is clear if the block has no other blocks on top of it and if the block is not picked up.
I can only unstack a block from on top of another block if the block I am unstacking was really on top of the other block.
I can only unstack a block from on top of another block if the block I am unstacking is clear.
Once I pick up or unstack a block, I am holding the block.
I can only put down a block that I am holding.
I can only stack a block on top of another block if I am holding the block being stacked.
I can only stack a block on top of another block if the block onto which I am stacking the block is clear.
Once I put down or stack a block, my hand becomes empty.

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the hand is empty, the blue block is clear, the blue block is on top of the orange block, the red block is on the table and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]

[STATEMENT]
As initial conditions I have that, the blue block is clear, the orange block is clear, the hand is empty, the orange block is on top of the red block, the red block is on the table and the blue block is on the table.
My goal is to have that the blue block is on top of the orange block and the orange block is on top of the red block.

My plan is as follows:

[PLAN]
--------- GPT3 response ---------
pick up the blue block
stack the blue block on top of the orange block
[PLAN END]
--------- Extracted plan ---------
(pick-up blue)
(stack blue orange)

-------- Ground truth plan ---------
(pick-up blue)
(stack blue orange)

=============================================================================

Results:
Random 83/100 = 83.0%Full->Specific 87/100 = 87.0%Specific->Full 62/100 = 62.0%
Single goal instances: 47

Total time: 466.69s
