fix: IQN num_quantiles 64→32 in all binaries + production config

Default was hardcoded as 64 in train_baseline_rl.rs and evaluate_baseline.rs,
overriding the config default of 32. Added num_quantiles=32 to production
config so it's explicit.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
jgrusewski
2026-04-19 13:06:58 +02:00
parent 9951b8b8cb
commit 64e6353a5d
3 changed files with 4 additions and 3 deletions

View File

@@ -91,6 +91,7 @@ her_ratio = 0.2
cql_alpha = 1.0
curiosity_weight = 0.1
iqn_lambda = 0.25
num_quantiles = 32
spectral_norm_sigma_max = 1.5
spectral_decoupling_lambda = 0.01
# With per-component clipping removed, raw gradient norms are ~4000.

View File

@@ -918,7 +918,7 @@ fn evaluate_dqn_fold(
let gamma = hp_f64(hp, "gamma").unwrap_or(0.95);
(10.0 / (1.0 - gamma) * 1.2).clamp(20.0, 300.0)
}) as f32,
iqn_num_quantiles: hp_usize(hp, "num_quantiles").unwrap_or(64),
iqn_num_quantiles: hp_usize(hp, "num_quantiles").unwrap_or(32),
..DQNConfig::default()
};
@@ -1086,7 +1086,7 @@ fn evaluate_dqn_fold_gpu(
let gamma = hp_f64(hp, "gamma").unwrap_or(0.95);
(10.0 / (1.0 - gamma) * 1.2).clamp(20.0, 300.0)
}) as f32,
iqn_num_quantiles: hp_usize(hp, "num_quantiles").unwrap_or(64),
iqn_num_quantiles: hp_usize(hp, "num_quantiles").unwrap_or(32),
..DQNConfig::default()
};

View File

@@ -402,7 +402,7 @@ fn build_dqn_hyperparams(
(10.0_f64 / (1.0 - gamma) * 1.2).clamp(20.0, 300.0)
}),
noisy_sigma_init: hp_f64(hp, "noisy_sigma_init").unwrap_or(0.5),
num_quantiles: hp_usize(hp, "num_quantiles").unwrap_or(64),
num_quantiles: hp_usize(hp, "num_quantiles").unwrap_or(32),
noisy_epsilon_floor: hp_f64(hp, "noisy_epsilon_floor").unwrap_or(0.05).into(),
hold_penalty_weight: hp_f64(hp, "hold_penalty_weight").unwrap_or(0.01),
max_position_absolute: hp_f64(hp, "max_position_absolute").unwrap_or(2.0),