The problem 1 is not complex enough to have time comparison, but we can observe different strategies.
time step 0: MOVE R2 R1
time step 1: PUSH BOX1 R1 R2
time step 2: PUSH BOX1 R2 R3
time step 3: TURN_ON_LIGHT R3 BOX1
time step 4: GRAB SMALL4 R3 LEFT
GRAB SMALL3 R3 RIGHT
time step 5: PUSH BOX1 R3 R2
time step 6: PUSH BOX1 R2 R1
time step 7: RELEASE SMALL3 R1 RIGHT
RELEASE SMALL4 R1 LEFT
time step 8: PUSH BOX1 R1 R2
time step 9: TURN_ON_LIGHT R2 BOX1
time step 10: GRAB SMALL2 R2 RIGHT
time step 11: PUSH BOX1 R2 R1
time step 12: RELEASE SMALL2 R1 RIGHT
Memory used: 0.09 MBytes for domain representation
2.50 MBytes for graph
0.04 MBytes for exclusions
0.04 MBytes for memoization
0.14 MBytes for wave front
step 0: MOVE R2 R1
1: PUSH BOX1 R1 R2
2: TURN_ON_LIGHT R2 BOX1
3: GRAB SMALL2 R2 LEFT
4: MOVE R2 R1
5: RELEASE SMALL2 R1 LEFT
6: MOVE R1 R2
7: PUSH BOX1 R2 R3
8: TURN_ON_LIGHT R3 BOX1
9: GRAB SMALL3 R3 LEFT
10: GRAB SMALL4 R3 RIGHT
11: MOVE R3 R2
12: MOVE R2 R1
13: RELEASE SMALL3 R1 LEFT
14: RELEASE SMALL4 R1 RIGHT
(move r2 r1)
(push box1 r1 r2)
(turn_on_light r2 box1)
(grab small2 r2 right)
(move r2 r1)
(release small2 r1 right)
(move r1 r2)
(push box1 r2 r3)
(turn_on_light r3 box1)
(grab small3 r3 left)
(grab small4 r3 right)
(move r3 r2)
(move r2 r1)
(release small3 r1 left)
(release small4 r1 right)