Skip to main content

Table 3 Service preconditions and effects

From: Service robot planning via solving constraint satisfaction problem

No.

Precondition

Effect

1

\(NOLocation(RobotApproach_t,RobotLocation_t)\)

\(DYStateNO_{t+1}(RobotApproach_t){:}=true\)

2

\(NOLocation(RobotApproach_t,RobotLocation_t)\)

\(DYStateNO_{t+1}(RobotApproach_t){:}=false\)

3

\(NOLocation(Approachres_t,RobotLocation_t)\)

\(RobotApproach_{t+1}{:}=Approachres_t\)

4

\(DYStateNO_t(N6)\wedge RobotLocation_t=MasterBedroom\)

\(RobotLocation_{t+1}{:}=LivingRoom\)

5

\(DYStateNO_t(N6)\wedge RobotLocation_t=LivingRoom\)

\(RobotLocation_{t+1}{:}=MasterBedroom\)

6

\(DYStateNO_t(N5)\wedge RobotLocation_t=MasterBedroom\)

\(RobotLocation_{t+1}{:}=WC1\)

7

\(DYStateNO_t(N6)\wedge RobotLocation_t=WC1\)

\(RobotLocation_{t+1}{:}=MasterBedroom\)

8

\(DYStateNO_t(N9)\wedge RobotLocation_t=WC2\)

\(RobotLocation_{t+1}{:}=LivingRoom\)

9

\(DYStateNO_t(N9)\wedge RobotLocation_t=LivingRoom\)

\(RobotLocation_{t+1}{:}=WC2\)

10

\(DYStateNO_t(N15)\wedge RobotLocation_t=Bedroom2\)

\(RobotLocation_{t+1}{:}=LivingRoom\)

11

\(DYStateNO_t(N15)\wedge RobotLocation_t=LivingRoom\)

\(RobotLocation_{t+1}{:}=Bedroom2\)

12

\(DYStateNO_t(N17)\wedge RobotLocation_t=LivingRoom\)

\(RobotLocation_{t+1}{:}=CarPorch\)

13

\(DYStateNO_t(N17)\wedge RobotLocation_t=CarPorch\)

\(RobotLocation_{t+1}{:}=LivingRoom\)

14

\(DYStateNO_t(N18)\wedge RobotLocation_t=LivingRoom\)

\(RobotLocation_{t+1}{:}=Bedroom3\)

15

\(DYStateNO_t(N18)\wedge RobotLocation_t=Bedroom3\)

\(RobotLocation_{t+1}{:}=LivingRoom\)

16

\(DYStateNO_t(N19)\wedge RobotLocation_t=LivingRoom\)

\(RobotLocation_{t+1}{:}=Kitchen\)

17

\(DYStateNO_t(N19)\wedge RobotLocation_t=Kitchen\)

\(RobotLocation_{t+1}{:}=LivingRoom\)

18

\(DYStateNO_t(N23)\wedge RobotLocation_t=Kitchen\)

\(RobotLocation_{t+1}{:}=WetKitchen\)

19

\(DYStateNO_t(N23)\wedge RobotLocation_t=WetKitchen\)

\(RobotLocation_{t+1}{:}=Kitchen\)

20

\(DYStateNO_t(N30)\wedge RobotLocation_t=WetKitchen\)

\(RobotLocation_{t+1}{:}=Garden\)

21

\(DYStateNO_t(N30)\wedge RobotLocation_t=Garden\)

\(RobotLocation_{t+1}{:}=WetKitchen\)

22

\(DYStateNO_t(N33)\wedge RobotLocation_t=LivingRoom\)

\(RobotLocation_{t+1}{:}=Garden\)

23

\(DYStateNO_t(N33)\wedge RobotLocation_t=Garden\)

\(RobotLocation_{t+1}{:}=LivingRoom\)

24

\(DYStateNO_t(RobotApproach_t)\wedge \)

 
 

\( DYAtMO_t(MOIDres_t)=RobotApproach_t\wedge \)

\(DYAtMO_{t+1}(MOIDres_t){:}=NRobot\wedge \)

 

\( NOLocation(RobotApproach_t,RobotLocation_t)\wedge \)

\(RobotHold_{t+1}{:}=true\)

 

\( \lnot RobotHold_t\)

 

25

\(DYStateNO_t(RobotApproach_t)\wedge \)

 
 

\( DYAtMO_t(RobotHoldres_t)=NRobot\wedge \)

\(DYAtMO_{t+1}(RobotHoldres_t){:}=RobotApproach_t\wedge \)

 

\( NOLocation(RobotApproach_t,RobotLocation_t)\wedge \)

\(RobotHold_{t+1}{:}=false\)

 

\(RobotHold_t\)

 

26

\(NOLocation(RobotApproach_t,RobotLocation_t)\)

\(DYTune_{t+1}(RobotApproach_t){:}=DYTune_{t}(RobotApproach_t)+1\)

27

\(NOLocation(RobotApproach_t,RobotLocation_t)\)

\(DYTune_{t+1}(RobotApproach_t){:}=DYTune_{t}(RobotApproach_t)-1\)