We want to add a feature to merge boids when they are closer than a defined treshold. A union-find data structure will be used for clustering. This will be done in the method mergeBoids defined in BoidLogic by creating a new boid between the two original ones, with the size which is the sum of both sizes and the velocity is the average, such that the moment of inertia of the system is conserved.
Sequences operations, Higher Order Functions, Data structures
Joe will work on documentation and testing. David will work on the implementation of the feature.
One could make the physics simulation more accurate by considering the mass of the boids such that a forces affect the boids differently depending on their mass due to Newton's second law. Another possible feature would be tu use a more efficient data structure to represend boids, such as a quadtree or another spacial partitioning data structure to reduce the time complexity of the simulation.