public void Add(Velocity velocity) { if (Velocities.Length != velocity.Velocities.Length) { throw new ArgumentException("Both velocity vectors must be equal in length."); } for (int i = 0; i < Velocities.Length; i++) Velocities[i].Add(velocity.Velocities[i]); }
/// <summary> /// Creates particle for PSO algorithm that will traverse automata space. /// </summary> /// <param name="symbolCount"></param> /// <param name="stateCount"></param> /// <param name="seed"></param> public Particle(int symbolCount, int stateCount, int seed = 0) { Position = new Position(symbolCount, stateCount, seed); PersonalBestPosition = Position; _velocity = new Velocity(symbolCount, stateCount); }