PROBLEM: - PPO/DQN/TFT/MAMBA2 hyperopt stopped at 23/50 trials (46% completion) - Root cause: Optimizer incorrectly divided remaining trials by n_particles - Sequential execution (mutex-locked models) means 1 eval per iteration, not n_particles FIX: - Remove division by n_particles in PSO budget calculation - Each iteration now evaluates exactly 1 trial (sequential execution) - Expected: 3 initial + 47 PSO iterations = 50 trials total ✅ IMPACT: - All hyperopt runs will now complete full trial count - No performance impact (same execution pattern) - Fixes PPO, DQN, TFT, and MAMBA2 hyperopt early termination Files modified: - ml/src/hyperopt/optimizer.rs: Fix budget calculation (lines 320-328) - scripts/validate_gitlab_cicd.sh: Add CI/CD configuration validator - scripts/build_docker_images.sh: Fix entrypoint override for validation Testing: - Code compiles successfully (2m 27s build time) - GitLab CI/CD validator passes all checks - Will be validated in CI/CD pipeline 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
12 KiB
Executable File
12 KiB
Executable File