Multirate method for co-simulation of electrical-chemical systems in multiscale modeling
A computational neuroscientist’s job is best described as simulating neurons on a computer, but how do we do it? The first step is always making a huge system of ordinary differential equations (ODEs). Then, the next step is to solve them on the computer. Solving them on a computer seems like the easy part, and indeed, there are many available algorithms to solve ODEs such as Forward Euler, or Runge-Kutta 4. So, it seems we just need to plug in the equations into the computer and solve them. If only it was that easy! There is still a lot of work being done to try to figure out the best algorithms to solve ODEs faster and with higher accuracy. Furthermore, putting even, the “simple” fly brain into a computer simulation can take hours to simulate only a few minutes. Thus, every increase in numerical speed and efficiency matters.
Ekaterina Brocke and her colleges have a new paper out in Journal of Computational Neuroscience that makes substantial improvement in solving those ODE’s more efficiently. The main concept behind their algorithm is the multi-rate integration method, or using multiple time steps to solve the ODE. Still, there are a lot of tiny details to fill out to make the algorithm better than the current benchmarks.
The traditional way to solve these problems has been to solve the whole ODE with a very small timestep of about 0.1 milliseconds. However, if your simulation is 60 seconds long then this is 600,000 timesteps. Depending on how big the simulation is, a single timestep can take a millisecond to 10 milliseconds to compute. Thus, a simulation for a minute could take upwards of 100 minutes to compute! is no easy task for even moderately complex neural simulations.
The main idea behind multi-rate simulation is to use multiple different timesteps for each subsystem roughly described by a different time scale for each subsystem. Neurons and neural networks do have multiple time scales. There are the fast-electrical signals, like action potentials, which happen on the scale of milliseconds. Then there are calcium signals and progress slower, on the scale of tens to hundreds of milliseconds. Then there is synaptic plasticity, which is on the scale of seconds.
The key for multi-rate integration is to use different sized time steps for each of these subsystems. Systems with slow time constants often do not need a small timesteps. Like-wise fast systems need lots of time steps for accurate solutions. However, if the whole system has only one timestep, then the timestep needs to be small. Multi-rate integration splits the system into subsystems using the small timesteps for the fast system, and the big timesteps for the large system. Because the slow system has less timesteps, it doesn’t add as much computation time. This has the advantage of shaving off a lot of useless calculations, and speeding up the simulation considerably.
One way to set this algorithm up is to solve the fast system first, then solve the slow system, then solve the super slow system (see above picture or figure 3). Notice that the fast system is only solved up to the next slow system time step then. Then the process repeats. Likewise, the slow system is solved only up to the next super slow time step. This way the system doesn’t get to far ahead of its self.
Turns out this isn’t the best way to write the algorithm, it is just the naïve first approach. There are a lot of details that need to be figured out. First and probably easiest, is one should solve the super-slow system first, then slow, and finally fast. This keeps the accuracy highest, and makes the simulation more accurate than the single rate simulation (see figures 7 and 8).
Another improvement is to use a variable time step, instead of a fixed-time step. A fixed-time step doesn’t change throughout the simulation; however, a variable-time step can change. When a neuron is firing it needs a smaller timestep in order to be accurate, yet when a neuron is silent, it doesn’t need as long of a time step. Thus variable-time steps can often be quicker and more accurate than their fixed time step counterparts. Variable time step has been an industry standard for a long time; ever sense Dr. Gear made the Backward Differential Formula of order 2 (BDF2). However, making it work in a multi-rate context is no easy task, and here Dr. Brocke and her colleges make it work for model neurons. Throughout their paper there are many smaller details to work out, but overall these two main ideas drive the algorithm. At the end, they are able to successfully simulate a sample problem faster and more accurately than their previously published algorithm
Source: Brocke, Ekaterina et al. “Multirate Method for Co-Simulation of Electrical-Chemical Systems in Multiscale Modeling.” Journal of Computational Neuroscience 42.3 (2017): 245–256. PMC. Web. 6 Sept. 2017.
By Alex White
Ekaterina Brocke and her colleges have a new paper out in Journal of Computational Neuroscience that makes substantial improvement in solving those ODE’s more efficiently. The main concept behind their algorithm is the multi-rate integration method, or using multiple time steps to solve the ODE. Still, there are a lot of tiny details to fill out to make the algorithm better than the current benchmarks.
The traditional way to solve these problems has been to solve the whole ODE with a very small timestep of about 0.1 milliseconds. However, if your simulation is 60 seconds long then this is 600,000 timesteps. Depending on how big the simulation is, a single timestep can take a millisecond to 10 milliseconds to compute. Thus, a simulation for a minute could take upwards of 100 minutes to compute! is no easy task for even moderately complex neural simulations.
The main idea behind multi-rate simulation is to use multiple different timesteps for each subsystem roughly described by a different time scale for each subsystem. Neurons and neural networks do have multiple time scales. There are the fast-electrical signals, like action potentials, which happen on the scale of milliseconds. Then there are calcium signals and progress slower, on the scale of tens to hundreds of milliseconds. Then there is synaptic plasticity, which is on the scale of seconds.
The key for multi-rate integration is to use different sized time steps for each of these subsystems. Systems with slow time constants often do not need a small timesteps. Like-wise fast systems need lots of time steps for accurate solutions. However, if the whole system has only one timestep, then the timestep needs to be small. Multi-rate integration splits the system into subsystems using the small timesteps for the fast system, and the big timesteps for the large system. Because the slow system has less timesteps, it doesn’t add as much computation time. This has the advantage of shaving off a lot of useless calculations, and speeding up the simulation considerably.
One way to set this algorithm up is to solve the fast system first, then solve the slow system, then solve the super slow system (see above picture or figure 3). Notice that the fast system is only solved up to the next slow system time step then. Then the process repeats. Likewise, the slow system is solved only up to the next super slow time step. This way the system doesn’t get to far ahead of its self.
Turns out this isn’t the best way to write the algorithm, it is just the naïve first approach. There are a lot of details that need to be figured out. First and probably easiest, is one should solve the super-slow system first, then slow, and finally fast. This keeps the accuracy highest, and makes the simulation more accurate than the single rate simulation (see figures 7 and 8).
Another improvement is to use a variable time step, instead of a fixed-time step. A fixed-time step doesn’t change throughout the simulation; however, a variable-time step can change. When a neuron is firing it needs a smaller timestep in order to be accurate, yet when a neuron is silent, it doesn’t need as long of a time step. Thus variable-time steps can often be quicker and more accurate than their fixed time step counterparts. Variable time step has been an industry standard for a long time; ever sense Dr. Gear made the Backward Differential Formula of order 2 (BDF2). However, making it work in a multi-rate context is no easy task, and here Dr. Brocke and her colleges make it work for model neurons. Throughout their paper there are many smaller details to work out, but overall these two main ideas drive the algorithm. At the end, they are able to successfully simulate a sample problem faster and more accurately than their previously published algorithm
Source: Brocke, Ekaterina et al. “Multirate Method for Co-Simulation of Electrical-Chemical Systems in Multiscale Modeling.” Journal of Computational Neuroscience 42.3 (2017): 245–256. PMC. Web. 6 Sept. 2017.
By Alex White
留言
張貼留言