Skip to content

NoisyNetsStrategy ​

python
NoisyNetsStrategy(actor_reset_frequency: int = 0) -> None

Noisy Networks exploration strategy.

Exploration is inherent in the noisy layers - no explicit epsilon needed. The noise provides natural exploration, which diminishes as the network learns to set noise parameters to zero for reliable actions.

Initialize the NoisyNetsStrategy.

Parameters:

  • actor_reset_frequency (int) – How often to reset noise in the actor (0 = every num_environments steps).

Source

Methods ​

get_exploration_value ​

python
get_exploration_value(steps: int) -> float | None

Noisy nets don't have an explicit exploration value like epsilon.

Parameters:

  • steps (int) – The current step count.

Returns:

  • float | None – None (no explicit exploration rate).

Source

should_explore ​

python
should_explore(steps: int) -> bool

Noisy nets never explicitly explore - the noise in the network provides exploration.

Parameters:

  • steps (int) – The current step count.

Returns:

  • bool – Always False (greedy action selection, noise provides exploration).

Source

should_reset_noise ​

python
should_reset_noise(steps: int, num_environments: int) -> bool

Determine whether to reset noise in noisy layers.

Parameters:

  • steps (int) – The current step count.
  • num_environments (int) – The number of parallel environments.

Returns:

  • bool – True if noise should be reset based on the reset frequency.

Source

should_reset_noise_after_sync ​

python
should_reset_noise_after_sync() -> bool

Noisy nets MUST reset noise after syncing weights from learner. This ensures noisy weights are re-calculated from the new parameters.

Returns:

  • bool – True.

Source

Values ​

actor_reset_frequency ​

python
actor_reset_frequency = actor_reset_frequency

Source