非最佳指数权重全部变成零
`optimize_acqf_mixed()` 会把 2,048 个初始候选的 LogEI 值转成轮盘选择概率。接近收敛时,最佳与其余候选的差距可超过浮点指数范围,非最佳权重全部下溢为 `0.0`;最佳点随后也被置零以避免重复选择,概率总和因此精确等于零。旧实现仍执行归一化,产生 `RuntimeWarning` 与整组 `NaN`,并可能让一次正常的 GP 优化试验失败。

面向机器学习与工程系统的自动超参数优化框架,通过可组合的 Sampler、Pruner、分布式 Study 与可视化工具组织搜索过程;GPSampler 使用高斯过程和采集函数,在连续与离散混合空间中选择下一组参数。
LogEI 的数学权重仍为正,浮点表示却可能把极小值压成精确零;数值退化应转化为收敛信号,而不是继续执行一次无意义的归一化。
−108.30SECOND−893.55GAP785.25exp(f − max(f))10 local searches · seed 22
probs /= probs.sum()probs / sum if sum > 0 else probs91 trials complete · no fabricated distribution
`optimize_acqf_mixed()` 会把 2,048 个初始候选的 LogEI 值转成轮盘选择概率。接近收敛时,最佳与其余候选的差距可超过浮点指数范围,非最佳权重全部下溢为 `0.0`;最佳点随后也被置零以避免重复选择,概率总和因此精确等于零。旧实现仍执行归一化,产生 `RuntimeWarning` 与整组 `NaN`,并可能让一次正常的 GP 优化试验失败。
零和不是“候选同样好”,而是除最佳点外已经没有可表示的改进权重,因此不能改成均匀分布去人为启动额外局部搜索。现有收敛逻辑本就根据非零概率数量缩减 warm start:只要保留全零向量,后续便会把附加搜索数降为零,并继续使用已经选出的最佳候选。
先计算一次 `probs_sum`,仅在它大于零时执行归一化,否则原样保留全零概率;正常的正权重路径完全不变。回归直接构造真实 GP 与 LogEI,使用默认的 2,048 个 Sobol 候选和 10 次局部搜索,并把 `RuntimeWarning` 提升为异常,锁定浮点下溢而非人工伪造的零向量。
默认 `GPSampler` 的 91 个连续试验现在可以完整结束;退化轮盘只保留最佳起点,不再把 `NaN` 概率传给随机选择,普通未收敛场景仍按原分布抽取附加起点。改动集中在 2 个文件,核心逻辑仅改 1 行并新增 33 行回归;GP 测试 297 项、Sampler 测试 14 项通过且 1 项跳过,13 项合并检查全部通过。