private void UpdateGlobalBest() { if (SwarmBestQuality == null) { SwarmBestQuality = new DoubleValue(); } SwarmBestQuality.Value = Maximization ? Quality.Max(v => v.Value) : Quality.Min(v => v.Value); BestRealVector = (RealVector)RealVector[Quality.FindIndex(v => v.Value == SwarmBestQuality.Value)].Clone(); }