...

/

Particle Competition Algorithm

Particle Competition Algorithm

Learn about the particle competition algorithm for community detection.

Let’s learn about the particle competition algorithm in this lesson. This algorithm uses concepts from genetic algorithms to find communities inside a complex network. Unlike the Louvain method, it doesn’t try to maximize modularity but rather uses the dynamics of movements inside the network to define the communities.

Understanding the particle competition algorithm

Unlike the Louvain algorithm, to use the particle competition algorithm, we need to define how many communities we’re trying to find inside the network. Let’s say we’re looking for kk communities.

Then, at the start of the algorithm, we put kk particles on the network, each one being one different community. These particles are entities that travel over the network and are put randomly on the nodes of the network.

Press + to interact
Initial particle positions in random nodes
Initial particle positions in random nodes

Then, we’re going to start iterating over the network. At each timestamp, the particle will choose a node to visit. When a particle visits a node, its dominance over this node increases. If a rival particle visits that node, the original particle dominance is reduced, and the newer particle dominance increases.

Press + to interact
Particles starting to assert dominance over nodes
Particles starting to assert dominance over nodes

As time goes by, we expect the dominance of particles to converge to regions of our complex network. So, in the end, we’ll end up with each region of dominance being a community identified by each ...