Multi-Agent Reinforcement Learning on Active Particles

Ensemble of N point particles travelling at a fixed speed \(|u|=1\).

The reinforcement learning agent \(i\) that has available as state the distance \(r_{ij}\), direction vector \(\boldsymbol{r}_{ij}\), and angles \(\theta_{ij}\) to the M nearest neighbours \(j=1,\dots,M\). The action determines the wished new direction \(u=(u_x, u_y, u_z)\) of the particle. The reward is computed as the sum of a pairwise potential between the neihest neighbours

\[r_t=\sum_{i=0}^{M}V(r)\]

As example potential is the Lennard-Jones potential as well as its harmonic approximation. The particles orientation is updated by rotating the current orientation by an angle \(\alpha\) towards the wished new direction. Then it moves by updating the position as \(x\rightarrow x+\Delta t u\).

Example

Verbous example with Newton policy \(a=-dV(r)/dr / \|dV(r)/dr\|\) and visualisation turned on can be run using

python main.py --visualize 1 --numIndividuals 10 --numTimesteps 100 --numNearestNeighbours 5