cleanup(fflag): delete dead use_noisy_nets + use_distributional — [FFLAG-013a]
GpuExperienceCollectorConfig.use_noisy_nets and use_distributional were both declared with "always enabled" comments on their default=true setters. Zero conditional readers anywhere — the GPU kernel always runs NoisyNet exploration and C51 distributional RL. Deleted fields + defaults + training_loop setters. Kept noisy_sigma_init, num_atoms, v_min, v_max since those are read. enable_action_masking left for human review — has real gating chain across collector config + trainer struct + training loop.
This commit is contained in:
@@ -200,12 +200,8 @@ pub struct ExperienceCollectorConfig {
|
||||
pub q_clip_max: f32,
|
||||
/// Huber loss kappa for TD error (robust priority). 0.0 = disabled (raw L1).
|
||||
pub huber_kappa: f32,
|
||||
/// D5: Whether to use NoisyNet exploration in the GPU kernel
|
||||
pub use_noisy_nets: bool,
|
||||
/// D5: Initial noise std dev for NoisyNet (Rainbow DQN default: 0.5)
|
||||
pub noisy_sigma_init: f32,
|
||||
/// D6: Whether to use C51 distributional RL
|
||||
pub use_distributional: bool,
|
||||
/// D6: Number of atoms in C51 distribution (default: 51)
|
||||
pub num_atoms: i32,
|
||||
/// D6: Minimum value support for C51 (default: -50.0)
|
||||
@@ -357,9 +353,7 @@ impl Default for ExperienceCollectorConfig {
|
||||
q_clip_min: -200.0, // Reward v6: tighter than old -500 but covers v_range + safety margin
|
||||
q_clip_max: 200.0,
|
||||
huber_kappa: 0.0,
|
||||
use_noisy_nets: true, // Rainbow DQN: NoisyNet exploration always enabled
|
||||
noisy_sigma_init: 0.5,
|
||||
use_distributional: true, // Rainbow DQN: C51 distributional RL always enabled
|
||||
num_atoms: 51, // C51 standard atom count
|
||||
// v_min/v_max: tight support for 16× atom resolution (delta_z=0.6 vs 9.6)
|
||||
v_min: -15.0,
|
||||
|
||||
@@ -1285,9 +1285,7 @@ impl DQNTrainer {
|
||||
} else {
|
||||
0.0
|
||||
},
|
||||
use_noisy_nets: true,
|
||||
noisy_sigma_init: self.hyperparams.noisy_sigma_init as f32,
|
||||
use_distributional: true,
|
||||
num_atoms: self.hyperparams.num_atoms as i32,
|
||||
v_min: self.hyperparams.v_min as f32,
|
||||
v_max: self.hyperparams.v_max as f32,
|
||||
|
||||
Reference in New Issue
Block a user