You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Over the past decades, the study of systems of particles has become an important
24
24
part of many research areas, from theoretical physics to applied biology and
25
-
computational mathematics. One of the main motivations is the modelling of large
25
+
computational mathematics. One of the main motivations in Mathematical Biology is the modelling of large
26
26
animal societies and the emergence of complex patterns from simple behavioral rules, e.g. the flock of birds, fish schools, ant colonies etc. In the microscopic
27
27
world, particle systems are used to model a wide range of phenomena,
28
28
from the collective motion of spermatozoa to the anarchical development of
@@ -34,21 +34,28 @@ These models are usually based on Partial Differential Equations (PDE) derived
34
34
using phenomenological considerations which are often difficult to justify
35
35
mathematically [@degond_continuum_2008; @dimarco_self-alignment_2016; @degond_bulk_2021]. Finally, inspired by models in Biology, there is an ever growing
36
36
literature on the design of algorithms based on the simulation of *artificial*
37
-
particle systems to solve tough optimization problems [@kennedy_particle_1995; @pinnau_consensus-based_2017; @totzeck_trends_2021; @grassi_particle_2020] and to construct new more efficient Markov Chain Monte Carlo methods [@del_moral_measure-valued_1998; @del_moral_mean_2013; @doucet_sequential_2001; @cappe_population_2004; @clarte_collective_2021].
37
+
particle systems to solve tough optimization problems [@kennedy_particle_1995; @pinnau_consensus-based_2017; @totzeck_trends_2021; @grassi_particle_2020] and to construct new more efficient Markov Chain Monte Carlo methods [@del_moral_measure-valued_1998; @del_moral_mean_2013; @doucet_sequential_2001; @cappe_population_2004; @clarte_collective_2021]. The simulation of systems of particles is also at the core of Molecular Dynamics [@leihmkuhler], although the present library is not specifically written for this purpose. The `SiSyPHE` library builds on recent advances in hardware and software
38
+
for the efficient simulation of large scale interacting *mean-field* particle systems,
39
+
both on the GPU and on the CPU. The versatile object-oriented Python interface of the library is designed for the simulation and comparison of new and classical many-particle models of collective dynamics in Mathematics and Active Matter Physics, enabling ambitious numerical experiments and leading to novel conjectures and results.
38
40
39
41
# Statement of need
40
42
41
-
The `SiSyPHE` library builds on recent advances in hardware and software
42
-
for the efficient simulation of large scale interacting *mean-field* particle systems,
43
-
both on the GPU and on the CPU. The implementation is based on recent libraries
43
+
A major difficulty in the simulation of systems of particles is the high computational cost, typically quadratic in the number of particles, which prevents large scale experiments. The implementation of `SiSyPHE` is based on recent libraries
44
44
originally developed for machine learning purposes to significantly accelerate
45
-
tensor (array) computations, namely the `PyTorch` package [@paszke_pytorch_2019] and the `KeOps` library [@charlier_kernel_2021].
46
-
The versatile object-oriented Python interface is well suited to the comparison
47
-
of new and classical many-particle models, enabling ambitious numerical
48
-
experiments and leading to novel conjectures. The SiSyPHE library speeds up
49
-
both traditional Python and low-level implementations by one to three orders
45
+
tensor (array) computations, namely the `PyTorch` package [@paszke_pytorch_2019] and the `KeOps` library [@charlier_kernel_2021]. On a GPU, the `SiSyPHE` library speeds up both traditional Python and low-level implementations by one to three orders
50
46
of magnitude for systems with up to several millions of particles.
51
47
48
+
In addition, to the best of our knowledge, only model-specific packages such as [@motsch_vicsek_microflat_2016] are available. The `SiSyPHE` library includes within a common framework the implementation of many classical models and their variants as well as recent models for which no implementation was previously available. All the models detailed in the Example gallery of the documentation are directly taken from the literature on collective dynamics in Mathematics and Active Matter Physics. Moreover, the `SiSyPHE` library is designed in such a way that new custom models can easily be added in order to facilite the study and comparison of models from a research perspective.
49
+
50
+
The development of the `SiSyPHE` library was initially motivated by the study of *body-oriented particles*[@giacomin_alignment_2019].
51
+
The (formal) derivation of a macroscopic PDE model from the particle system has lead to a novel conjecture
52
+
which postulates the existence of a class of so-called *bulk topological states* in [@degond_bulk_2021]. The quantitative comparison
53
+
between this theoretical prediction and the numerical simulation of the particle system in a suitable regime (with more than
54
+
$10^6$ particles) has confirmed the existence of these new states of matter. The study of their physical properties
55
+
which are observed in the numerical experiments but not readily explained by the PDE model is an ongoing work.
56
+
57
+
# A typical example
58
+
52
59
A typical model which is implemented in the `SiSyPHE` library is the variant of the Vicsek model
53
60
introduced by @degond_continuum_2008 and defined by the system of $2N$ Stratonovich Stochastic Differential Equations
54
61
\begin{equation}\label{eq:sde}
@@ -66,21 +73,13 @@ function vanishing at infinity which models the visual perception of the particl
66
73
in the Vicsek model, the vision of the particles depends on the distance between them.
67
74
With the target given by \autoref{eq:target}, each particle tries to adopt the average orientation of its neighbors, which is a typical *flocking* behavior.
68
75
69
-
On a computer, the time-continuous system given by \autoref{eq:sde} needs to be discretized first. Then, at each time step,
76
+
On a computer, the time-continuous system given by \autoref{eq:sde} needs to be discretized first. For the Vicsek model, a natural discretization method is the (geometric) Euler-Maruyama scheme [@kloeden; @piggott]. In general, the discretization method depends on the model considered as illustrated in the Example gallery. Then, at each time step,
70
77
the most expensive operation is the computation of the target given by \autoref{eq:target}, which requires $\mathcal{O}(N)$
71
78
operations for each of the $N$ particles. The total simulation cost is thus $\mathcal{O}(N^2T)$ where $T$ is the
72
79
total number of iterations. Within the framework of the `KeOps` library on which `SiSyPHE` is based,
73
80
the computation of the target \autoref{eq:target} is called a *kernel operation* which is efficiently carried out
74
-
using a *symbolic* definition of the $N\times N$ interaction matrix whose $(i,j)$-entry is $K(|X^j_t-X^i_t)$. The computation of the target is then understood as a symbolic matrix-vector product between the interaction matrix and the vector of orientations.
75
-
76
-
To the best of our knowledge only model-specific packages such as [@motsch_vicsek_microflat_2016] are available. The `SiSyPHE` library includes within a common framework the implementation of many classical models and their variants as well as recent models for which no implementation was previously available. All the models detailed in the Example gallery of the documentation are directly taken from the literature on collective dynamics in Mathematics and Active Matter Physics. Moreover, the `SiSyPHE` library is designed in such a way that new custom models can easily be added in order to facilite the study and comparison of models from a research perspective.
81
+
using a *symbolic* definition of the $N\times N$ interaction matrix whose $(i,j)$-entry is $K(|X^j_t-X^i_t|)$. The computation of the target is then understood as a symbolic matrix-vector product between the interaction matrix and the vector of orientations.
77
82
78
-
The development of the `SiSyPHE` library was initially motivated by the study of *body-oriented particles*[@giacomin_alignment_2019].
79
-
The (formal) derivation of a macroscopic PDE model from the particle system has lead to a novel conjecture
80
-
which postulates the existence of a class of so-called *bulk topological states* in [@degond_bulk_2021]. The quantitative comparison
81
-
between this theoretical prediction and the numerical simulation of the particle system in a suitable regime (with more than
82
-
$10^6$ particles) has confirmed the existence of these new states of matter. The study of their physical properties
83
-
which are observed in the numerical experiments but not readily explained by the PDE model is an ongoing work.
0 commit comments