| 213 stats.merged += |
213 stats.merged += |
| 214 prox_penalty.merge_spikes_no_fitness(&mut μ, &mut τv, &μ_base, τ, ε, ins, ®); |
214 prox_penalty.merge_spikes_no_fitness(&mut μ, &mut τv, &μ_base, τ, ε, ins, ®); |
| 215 Ok(()) |
215 Ok(()) |
| 216 })?; |
216 })?; |
| 217 stats.inserted += μ.len() - μ_base.len(); |
217 stats.inserted += μ.len() - μ_base.len(); |
| 218 stats.pruned += prune_with_stats(&mut μ); |
218 // Prune. Do not prune new insertions on first round. |
| |
219 stats.pruned += prune_with_stats(&mut μ, μ_base.len()); |
| 219 |
220 |
| 220 // Update step length parameters |
221 // Update step length parameters |
| 221 let ω = pdpsconfig.acceleration.accelerate(&mut τ, &mut σ, γ); |
222 let ω = pdpsconfig.acceleration.accelerate(&mut τ, &mut σ, γ); |
| 222 |
223 |
| 223 // Do dual update |
224 // Do dual update |