I am new to multi-agent robotic systems and I am currently studying consensus and flocking algorithm. Recently I implemented a simple integrator consensus algorithm that leads a group of N robots to a single point. The dynamics of robots are defined as $\dot{x}_i=u_i$ where $x_i$ is the position of robot $i$ and $u_i$ is its control law. I want to add a repulsive force between the robots ( between robot $i$ and robot $i-1$ for example) to my consensus law to study the behavior of the robots but I didn't figure out how to add it. My consensus law is defined as :

    X_dot=-L*X.' ;
    U(:,i)= X_dot(i,:).'
    % update the position of robot i using its dynamics

Where L is the laplacian matrix. The consensus law works fine, I just don't know how to add the repulsive force..

  • $\begingroup$ Depending on what aspects of flocking you are interested in, you might find the wikipedia page on "Boids" to be helpful. Over this past summer, I mentored two high school students learning Python, and they (we) wound up with quite respectable boid behavior, albeit in 2-D, by steering boids moving at constant speed. (If I had mentioned "Laplacian matrix" or showed them a dotted variable, I would have lost them!) Let me know if you want more details. $\endgroup$
    – r-bryan
    Dec 22, 2021 at 5:03


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.