src/prox_penalty/wave.rs

changeset 87
7b5404283df0
parent 75
677a5fd1b014
equal deleted inserted replaced
86:1c74bb0439a8 87:7b5404283df0
204 if config.fitness_merging { 204 if config.fitness_merging {
205 if let Some(f) = fitness { 205 if let Some(f) = fitness {
206 return μ.merge_spikes_fitness(config.merging, f, |&v| v).1; 206 return μ.merge_spikes_fitness(config.merging, f, |&v| v).1;
207 } 207 }
208 } 208 }
209 μ.merge_spikes(config.merging, |μ_candidate| { 209 μ.merge_spikes(config.merging, |μ_candidate, is_scaling| {
210 let mut d = &*τv + self.preapply(μ_candidate.sub_matching(μ_base)); 210 if is_scaling {
211 reg.verify_merge_candidate(&mut d, μ_candidate, τ, ε, config) 211 // Scaling heuristic is pointless without fitness-based merging
212 false
213 } else {
214 let mut d = &*τv + self.preapply(μ_candidate.sub_matching(μ_base));
215 reg.verify_merge_candidate(&mut d, μ_candidate, τ, ε, config)
216 }
212 }) 217 })
213 } 218 }
214 } 219 }
215 220
216 #[replace_float_literals(F::cast_from(literal))] 221 #[replace_float_literals(F::cast_from(literal))]

mercurial