Skip to content

Commit

Permalink
cumsum posture reward
Browse files Browse the repository at this point in the history
  • Loading branch information
Jackory committed Jun 7, 2022
1 parent 3dccc06 commit 84498f4
Showing 1 changed file with 9 additions and 6 deletions.
15 changes: 9 additions & 6 deletions envs/JSBSim/reward_functions/posture_reward.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import numpy as np
from wandb import agent
from .reward_function_base import BaseRewardFunction
from ..utils.utils import get_AO_TA_R

Expand Down Expand Up @@ -33,15 +34,17 @@ def get_reward(self, task, env, agent_id):
Returns:
(float): reward
"""
new_reward = 0
# feature: (north, east, down, vn, ve, vd)
ego_feature = np.hstack([env.agents[agent_id].get_position(),
env.agents[agent_id].get_velocity()])
enm_feature = np.hstack([env.agents[agent_id].enemies[0].get_position(),
env.agents[agent_id].enemies[0].get_velocity()])
AO, TA, R = get_AO_TA_R(ego_feature, enm_feature)
orientation_reward = self.orientation_fn(AO, TA)
range_reward = self.range_fn(R / 1000)
new_reward = orientation_reward * range_reward
for enm in env.agents[agent_id].enemies:
enm_feature = np.hstack([enm.get_position(),
enm.get_velocity()])
AO, TA, R = get_AO_TA_R(ego_feature, enm_feature)
orientation_reward = self.orientation_fn(AO, TA)
range_reward = self.range_fn(R / 1000)
new_reward += orientation_reward * range_reward
return self._process(new_reward, agent_id, (orientation_reward, range_reward))

def get_orientation_function(self, version):
Expand Down

0 comments on commit 84498f4

Please sign in to comment.