Efficient simulation of point processes with applications to neurosciences
Simulation efficace de processus ponctuels avec applications aux neurosciences
Abstract
Stochastic and point processes are often used to model networks of spiking neurons. However, the number of neurons, even in a small mammal brain, is at least a few millions. There is therefore a strong need for efficient simulation algorithms. Nevertheless, traditional algorithms for point process simulation cannot simulate such large networks within a reasonable time and memory constraints.In this thesis, we introduce new simulation algorithms for large networks of point and stochastic processes. By using the time asynchrony of point processes, and discrete-event techniques from computer science, we managed to reduce the time complexity of the simulation algorithm from O(M^2 log(M)) to O(M log(M)), where M is the size of the network. The algorithm was successfully applied to reduce the execution time of large networks of Ornstein-Uhlenbeck processes and Hawkes processes.The new algorithm also displays a reduced memory complexity, from O(M^2) to O(M). However, the data structures for storing the connectivity matrices usually have a O(M^2) memory complexity. We proposed a new data structure for storing the connectivity matrix, based on its partial reconstruction when the simulation software needs access to one of the connections. This procedural connectivity is ensured by storing the internal state of a pseudo-random number generator, used to create the random connection matrix, instead of the connection matrix.With such a small imprint, our algorithm is able to simulate a network composed of millions of Hawkes processes within minutes, on a single core laptop computer, paving the way for easier study of brain-sized structures, and in particular functional connectivity inference.
Les processus stochastiques et ponctuels sont souvent utilisés pour modéliser les réseaux de neurones à impulsions. Cependant, le nombre de neurones, même dans le cerveau d'un petit mammifère, est d'au moins quelques millions. Il y a donc un fort besoin d'algorithmes et de logiciels de simulation efficaces. Néanmoins, les algorithmes traditionnels de simulation de processus ponctuels ne peuvent pas simuler de si grands réseaux dans un temps et avec des contraintes de mémoire raisonnables.Dans cette thèse, nous introduisons de nouveaux algorithmes de simulation pour les grands réseaux de processus ponctuels et stochastiques. En utilisant l'asynchronisme temporel des processus ponctuels et des techniques issues du monde de la simulation à événements discrets, nous avons réussi à réduire la complexité temporelle de l'algorithme de simulation de O(M^2 log(M)) à O(M log(M)), où M est la taille du réseau. L'algorithme a été appliqué avec succès pour réduire le temps d'exécution de grands réseaux de processus d'Ornstein-Uhlenbeck et de processus de Hawkes.Le nouvel algorithme présente également une complexité mémoire réduite, passant de O(M^2) à O(M). Cependant, les structures de données permettant de stocker les matrices de connectivité ont généralement une complexité mémoire de O(M^2). Nous avons proposé une nouvelle structure de données pour stocker la matrice de connectivité, basée sur la reconstruction partielle de la matrice de connexion lorsque le logiciel de simulation a besoin d'accéder à l'une des connexions.Avec une empreinte aussi faible, notre algorithme est capable de simuler un réseau composé de millions de processus de Hawkes en quelques minutes, sur un ordinateur portable à un seul cœur, ce qui ouvre la voie à une étude plus facile des structures cérébrales, et en particulier à l'inférence de la connectivité fonctionnelle.
Origin | Version validated by the jury (STAR) |
---|