7 from rospkg
import RosPack
9 ACTIONS = [(-0.8, 0.1), (0.8, 0.1), (0.5, 0.2),
10 (-0.5, 0.2), (0, 0.2), (0, 0.4)]
11 ACTION_COUNT = len(ACTIONS)
16 LASER_SAMPLE_COUNT = 8
18 MODEL_FILENAME = os.path.join(RosPack().get_path(
19 "reinforcement_learning"),
"policy_gradient.to")
25 DISCOUNT_FACTOR = 0.99
27 MAX_EPISODE_LENGTH = 5000
37 nn.Linear(LASER_SAMPLE_COUNT, 32),
41 nn.Linear(18, ACTION_COUNT),
46 return self.layers.forward(x)
49 if os.path.isfile(MODEL_FILENAME):
50 self.load_state_dict(torch.load(MODEL_FILENAME))
51 rospy.loginfo(
"Model parameters loaded.")
54 torch.save(self.state_dict(), MODEL_FILENAME)