MCPcopy Index your code
hub / github.com/ddbourgin/numpy-ml / _init_params

Method _init_params

numpy_ml/rl_models/agents.py:901–943  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

899 self._init_params()
900
901 def _init_params(self):
902 E = self.env_info
903 assert not E["continuous_actions"], "Action space must be discrete"
904
905 obs_encoder = None
906 if E["continuous_observations"]:
907 obs_encoder, _ = tile_state_space(
908 self.env,
909 self.env_info,
910 self.n_tilings,
911 state_action=False,
912 obs_max=self.obs_max,
913 obs_min=self.obs_min,
914 grid_size=self.grid_dims,
915 )
916
917 self._create_2num_dicts(obs_encoder=obs_encoder)
918
919 # behavior policy is stochastic, epsilon-soft policy
920 self.behavior_policy = self.target_policy = self._epsilon_soft_policy
921 if self.off_policy:
922 # target policy is deterministic, greedy policy
923 self.target_policy = self._greedy
924
925 # initialize Q function
926 self.parameters["Q"] = defaultdict(np.random.rand)
927
928 # initialize returns object for each state-action pair
929 self.derived_variables = {"episode_num": 0}
930
931 self.hyperparameters = {
932 "agent": "TemporalDifferenceAgent",
933 "lr": self.lr,
934 "obs_max": self.obs_max,
935 "obs_min": self.obs_min,
936 "epsilon": self.epsilon,
937 "n_tilings": self.n_tilings,
938 "grid_dims": self.grid_dims,
939 "off_policy": self.off_policy,
940 "temporal_discount": self.temporal_discount,
941 }
942
943 self.episode_history = {"state_actions": [], "rewards": []}
944
945 def run_episode(self, max_steps, render=False):
946 """

Callers 1

__init__Method · 0.95

Calls 2

tile_state_spaceFunction · 0.85
_create_2num_dictsMethod · 0.80

Tested by

no test coverage detected