I recently found a 2000 paper titled “On the Simulation of Large Populations of Neurons” by A. Omurtag, B. W. Knight, and L. Sirovich. This paper shows two difference approaches to solving large populations of neurons. One can simulate their behavior computationally or one might choose to describe their behavior with some clever math. Today I want to discuss the clever math.
Note: I just recently installed the MathJax WordPress plugin to display LaTex so until I get use to it some equations might show up a little weird.
I would like to start with a well known equation used in fluid dynamics, the continuity equation for an incompressible flow. The fundamental requirement of incompressible flow is that the density, , is constant within an infinitesimal volume, , which moves with velocity, . Thus:
Conservation of mass requires that the time derivative of equal the mass flux, , across the boundary of the volume.
Applying the divergence theorem grants us the following expression:
Plugging the first equation for into the previous equation gives us:
Thus the integrands must be equal and we are left with the following result:
This result facilitates more interesting conclusions in fluid dynamics, an exercise I will leave to the reader.
The reason I bring this up is because in the paper I’m reading the authors take a similar approach in analyzing large populations of neurons. Assuming that the population of neurons within a network is constant one can also write a continuity equation in a similar fashion. Although is the case of neural networks the vector of parameters are flowing in phase space.
I find the connection here to be quite enlightening yet somewhat forced at the moment. I still need to work with this approach to discover what merit it has. Just thought I’d share, I highly recommend looking through the paper.
So today starts the first week of “classes” (granted, this being the start of my second year in graduate school I don’t have many classes) and I’ve been trying to make my way through this book. It is quite a dense read. I have problems reading it for too long and find myself taking breaks about every 30 minutes or so. Nonetheless, I find it an important read and I wish to continue throughout the semester and will eventually finish it.
The first chapter starts with the morphology of a neuron, spiking / propagation of an action potential, discussion of spiking thresholds, what makes neurons different, and a little bit about different mathematical tools. The second chapter (were I currently am) talks about the electrical and Nernst potentials at play and how neurons are effected by their dynamics.
I picked up this book and one other book after reading a 2010 paper by Goltsev et all titled “Stochastic cellular automata model of neural networks”. There I was able to recreate the synchronous activity they observed. Interest in this topic brought me to a more recent 2013 paper by Wilten Nicola and Sue Ann Campbell titled “Bifurcations of large networks of two-dimensional integrate and fire neurons”. I never finished this paper, I only found it and skimmed over it.
I think tomorrow a better use of my time will be to start making my way through the 2013 paper and read my book when I stop making progress on the paper (and just repeat this process).
I recently stumbled upon a website called “Game Jolt“. I updated two of my recent games/demos. The website seems to have a ton of traffic which is an awesome way to test prototypes/game ideas with others and receive feedback. I’m still new to site so I’m not sure what all it has to offer but hopefully a few people will find my game interesting and stay in contact. I find that being apart of a small community really helps motivate me to work on projects that I would have otherwise left alone.
With the big game jam coming up soon I’m hoping to lay a foundation for Lurid with the core components consisting of – SDL library, Tiled map support, and Famitracker 8bit audio support. We’ll see what happens, if the core could be built in C++ I’ll be a happy guy.
The 27th Ludum Dare is starting August 23rd and I’m pretty excited! It’s the first weekend after classes start so I should have to time to play around and make something cool. I was thinking about trying to incorporate some game design elements I hope to implement in Lurid. One mechanic I’ve been planning on working out is the “battle system” (if Lurid ends up have a battle system at all, I’m not sure yet). I want to make it something like the battle system in the original legend of Zelda for the NES but we’ll see. I also think it would be cool to write it all in C along with the SDL library. I’ll also most likely be doing the pixel art myself which should be shitty but fun nonetheless! I might even try to stream it all on Twitch! We’ll see though :)