Original: Tracking Functional Changes in Nonstationary Signals with Evolutionary Ensemble Bayesian Model for Robust Neural Decoding
Revised: Tracking Functional Changes in Nonstationary Signals with Evolutionary Ensemble Bayesian Model for Robust Neural Decoding

Original: Abstract
Revised: Abstract

Original: Neural signals are typical nonstationary data where the functional mapping betweenneural activities and the intentions (such as the velocity of movements) can occasionally change.
Revised: Neural signals are typical nonstationary data where the functional mapping betweenneural activities and the intentions (such as the velocity of movements) can occasionally change.

Original: Existing studies mostly use a fixed neural decoder, thus sufferingfrom an unstable performance given neural functional changes.
Revised: Existing studies mostly use a fixed neural decoder, thus sufferingfrom an unstable performance given neural functional changes.

Original: We propose anovel evolutionary ensemble framework (EvoEnsemble) to dynamically cope withchanges in neural signals by evolving the decoder model accordingly.
Revised: We propose anovel evolutionary ensemble framework (EvoEnsemble) to dynamically cope withchanges in neural signals by evolving the decoder model accordingly.

Original: EvoEnsembleintegrates evolutionary computation algorithms in a Bayesian framework where thefitness of models can be sequentially computed with their likelihoods according tothe incoming data at each time slot, which enables online tracking of time-varyingfunctions.
Revised: EvoEnsembleintegrates evolutionary computation algorithms in a Bayesian framework where thefitness of models can be sequentially computed with their likelihoods according tothe incoming data at each time slot, which enables online tracking of time-varyingfunctions.

Original: Two strategies of evolve-at-changes and history-model-archive are designed to further improve efficiency and stability.
Revised: Two strategies of evolve-at-changes and history-model-archive are designed to further improve efficiency and stability.

Original: Experiments with simulationsand neural signals demonstrate that EvoEnsemble can track the changes in functions effectively thus improving the accuracy and robustness of neural decoding.
Revised: Experiments with simulationsand neural signals demonstrate that EvoEnsemble can track the changes in functions effectively thus improving the accuracy and robustness of neural decoding.

Original: The improvement is most significant in neural signals with functional changes.
Revised: The improvement is most significant in neural signals with functional changes.

Original:  Introduction
Revised:  Introduction

Original: Nonstationary signals widely exist in the real world, where the properties and functions can changecontinuously over time.
Revised: Nonstationary signals widely exist in the real world, where the properties and functions can changecontinuously over time.

Original: Neural signals are typical nonstationary signals, where the inherent dynamicsin the neural systems, the plasticity of synapses driven by learning and adaptation contribute to thevariability of neural encoding of the brain [1, 2].
Revised: Neural signals are typical nonstationary signals, where the inherent dynamicsin the neural systems, the plasticity of synapses driven by learning and adaptation contribute to thevariability of neural encoding of the brain [1, 2].

Original: The nonstationary property of neural signals formsa challenging problem in the brain-computer interfaces (BCIs) field [3–6] because the decodingaccuracy will degrade over time given changing neural functions and a fixed neural decoder.
Revised: The nonstationary property of neural signals formsa challenging problem in the brain-computer interfaces (BCIs) field [3–6]. Because the decodingaccuracy will degrade over time given changing neural functions and a fixed neural decoder.

Original: Considering the nonstationary of neural signals the neural encoding model can be presented by:
Revised: Considering the nonstationary of neural signals the neural encoding model can be presented by:

Original: [Equation]
Revised: [Equation]

Original: where y t denotes the neural signal we observed at time t the function h t ( · ) is the neural encodingmodel that changes over time, and x t denotes the state to be encoded such as the velocity of acomputer cursor and q t is biological or external noises.
Revised: where y t denotes the neural signal we observed at time t the function h t ( · ) is the neural encodingmodel that changes over time and x t denotes the state to be encoded such as the velocity of acomputer cursor and q t is biological or external noises.

Original: Typical neural decoders such as OLE [7]and Kalman filters (KF) [8] mostly assume a stationary h t ( · ) , namely h t ( · ) ≡ h 0 ( · ) , ( t = 1 , 2 , 3 , ... ) ,which can be oversimplified especially for online BCI systems.
Revised: Typical neural decoders such as OLE [7]and Kalman filters (KF) [8] mostly assume a stationary h t ( · ) , namely h t ( · ) ≡ h 0 ( · ) , ( t = 1 , 2 , 3 , ... ) ,which can be oversimplified especially for online BCI systems.

Original: Recent studies showed that, inonline BCI control, neural encoding functions change significantly with the influence of real-timefeedback such as the speed of the cursor and errors in control [9, 10].
Revised: Recent studies showed that, inonline BCI control, neural encoding functions change significantly with the influence of real-timefeedback such as the speed of the cursor and errors in control [9, 10].

Original: The functional changes inneural encoding frequently occur over time, even in a single target reaching trial [11].
Revised: The functional changes inneural encoding frequently occur over time, even in a single target reaching trial [11].

Original: How to cope with the functional changes in the neural system?
Revised: How to cope with the functional changes in the neural system?

Original: Ideally, a neural decoder shouldbe capable of adjusting itself along with changes in neural signals.
Revised: Ideally, a neural decoder shouldbe capable of adjusting itself along with changes in neural signals.

Original: To this end, there are two main types of solutions.
Revised: To this end, there are two main types of solutions.

Original: The first one is re-calibration of neural decoders periodically or manually whenthe performance degrades [12, 13] to maintain the control accuracy.
Revised: The first one is re-calibration of neural decoders periodically or manually whenthe performance degrades [12, 13] to maintain the control accuracy.

Original: Brandman et al.
Revised: Brandman et al.

Original: proposed aframework for rapid calibration, which removed the traditional open-loop calibration phase andreduced the original 2-5 min calibration interval to 2-5 s with Bayesian parameter updating.
Revised: proposed aframework for rapid calibration, which removed the traditional open-loop calibration phase andreduced the original 2-5 min calibration interval to 2-5 s with Bayesian parameter updating.

Original: However,such a training process can still disturb the BCI users and usually can not cope with changes in theshort-term such as single trials.
Revised: However,such a training process can still disturb the BCI users and usually can not cope with changes in theshort-term such as single trials.

Original: Another way is to design an adaptive or dynamic model [14–16].
Revised: Another way is to design an adaptive or dynamic model [14–16].

Original: Wang et al.
Revised: Wang et al.

Original: proposed a framework that used dual state-space models to estimate both kinematics andneural tuning functions.
Revised: proposed a framework that used dual state-space models to estimate both kinematics andneural tuning functions.

Original: However, this method does not directly model the neural variability.
Revised: However, this method does not directly model the neural variability.

Original: Qi et al.proposed a novel dynamic ensemble Bayesian filter (DyEnsemble) which obtained the state-of-the-artperformance with nonstationary neural signals [17].
Revised: Qi et al.proposed a novel dynamic ensemble Bayesian filter (DyEnsemble) which obtained the state-of-the-artperformance with nonstationary neural signals [17].

Original: DyEnsemble constructs a pool of encodingmodels, and adaptively assembles a decoder from these models online according to neural signalswith a recursive Bayesian filter, which allows the neural decoder adjust its functions to cope withthe changes in neural signals.
Revised: DyEnsemble constructs a pool of encodingmodels, and adaptively assembles a decoder from these models online according to neural signalswith a recursive Bayesian filter, which allows the neural decoder adjust its functions to cope withthe changes in neural signals.

Original: However, DyEnsemble employs a static model pool, only addressingneural changes in a certain range.
Revised: However, DyEnsemble employs a static model pool, only addressingneural changes in a certain range.

Original: The ability can be limited given continuous functional changes inlong-term neural recordings.
Revised: The ability can be limited given continuous functional changes inlong-term neural recordings.

Original: Regarding the encoding changes in neural signals as a functional tracking problem, we propose anevolutionary ensemble Bayesian filter (EvoEnsemble) to track the neural encoding functions overtime by incorporating evolutionary computation in a recursive Bayesian framework.
Revised: Regarding the encoding changes in neural signals as a functional tracking problem, we propose anevolutionary ensemble Bayesian filter (EvoEnsemble) to track the neural encoding functions overtime by incorporating evolutionary computation in a recursive Bayesian framework.

Original: Specifically,
Revised: Specifically,

Original: EvoEnsemble maintains a population (i.e., a set of candidate functions) to estimate the neuralfunctions, where the changing fitness of the population is dynamically computed by the likelihoodgiven neural signals (observation) over time.
Revised: EvoEnsemble maintains a population (i.e., a set of candidate functions) to estimate the neuralfunctions, where the changing fitness of the population is dynamically computed by the likelihoodgiven neural signals (observation) over time.

Original: In this way, the population evolution can be driven bythe changes in neural signals.
Revised: In this way, the population evolution can be driven bythe changes in neural signals.

Original: Meanwhile, the time-varying functions can be tracked by the posteriordistribution of the candidate functions with Bayesian model averaging rules.
Revised: Meanwhile, the time-varying functions can be tracked by the posteriordistribution of the candidate functions with Bayesian model averaging rules.

Original: The main contributions of this study can be summarized as follows: (1) We propose a new frameworkthat extends evolutionary computation in a Bayesian process to achieve robust state estimation withneural functional changes; (2) We propose a particle-based solution to simultaneously track thefunctional changes and estimate the state (e.g., the velocity of a cursor) sequentially online; (3) Twostrategies of evolve-at-changes and history-model-archive are proposed to improve the computationalefficiency and estimation stability.
Revised: The main contributions of this study can be summarized as follows: (1) We propose a new frameworkthat extends evolutionary computation in a Bayesian process to achieve robust state estimation withneural functional changes; (2) We propose a particle-based solution to simultaneously track thefunctional changes and estimate the state (e.g., the velocity of a cursor) sequentially online; (3) Twostrategies of evolve-at-changes and history-model-archive are proposed to improve the computationalefficiency and estimation stability.

Original: Experiments with simulations and neural signals demonstrate the superiority of EvoEnsemble againsttraditional decoders such as Kalman filters, and the improvement is most significant with functionalchanges in neural signals.
Revised: Experiments with simulations and neural signals demonstrate the superiority of EvoEnsemble againsttraditional decoders such as Kalman filters, and the improvement is most significant with functionalchanges in neural signals.

Original:  State-space formulation with time-varying neural functions
Revised:  State-space formulation with time-varying neural functions

Original: Considering the temporal changes in neural functions, the state-space model can be defined by
Revised: Considering the temporal changes in neural functions, the state-space model can be defined by

Original: [Equation] [Equation]
Revised: [Equation] [Equation]

Original: where t denotes the time slot.
Revised: where t denotes the time slot.

Original: x t ∈ R d z is the state we want to estimate; y t ∈ R d y is the observation;g ( · ) is the state transition function, with a Gaussian transition noise n t ; and h t ( · ) is the time-varyingobservation function which is dependent on t , with a Gaussian observation noise q t .
Revised: x t ∈ R d z is the state we want to estimate; y t ∈ R d y is the observation;g ( · ) is the state transition function, with a Gaussian transition noise n t ; and h t ( · ) is the time-varyingobservation function which is dependent on t , with a Gaussian observation noise q t .

Original: In a typical motor decoding problem, given a sequence of observed neural signals, a neural decoderaims to estimate the corresponding kinematic states in a sequential manner.
Revised: In a typical motor decoding problem, given a sequence of observed neural signals, a neural decoderaims to estimate the corresponding kinematic states in a sequential manner.

Original: Here we define the statex t with d z = 2 , which contains the velocities of movements in x-axis and y-axis, and y t is the firingrates of d y neurons.
Revised: Here we define the statex t with d z = 2 , which contains the velocities of movements in x-axis and y-axis, and y t is the firingrates of d y neurons.

Original: The EvoEnsemble approach consists of two phases, one is the calibration phase and the other isthe test phase.

Original: During the calibration phase, training sample pairs are collected and used to learnthe transition function, as well as a set of initial encoding models to approximate the time-varyingobservation function.

Original: Once the calibration phase is over, the transition function is fixed.

Original: Meanwhile, aset of initial particles are randomly drown from a Gaussian distribution, to approximate the posteriorof the kinematic states.

Original: During the test phase, the particle likelihoods and model likelihoods arecalculated through comparing the neural signals encoded by the models with the observed ones.

Original: Theobservation function changes along with the incoming neural signals through adaptively assemblingthe encoding models in the model pool, where the assembling weights (i.e., the posterior probabilitiesof the models) are updated from the model likelihood.

Original: When all models’ likelihoods in the model pool are small, the model pool will be updated by EvoEnsemble through a differential evolutionalgorithm, where model fitness is equal to the model likelihood.

Original:  Tracking functional changes with EvoEnsemble
Revised:  Tracking functional changes with EvoEnsemble

Original: EvoEnsemble tracks the changes of function h t ( · ) in Eq.
Revised: EvoEnsemble tracks the changes of function h t ( · ) in Eq.

Original: (3) with a population of candidate functions(model pool) which evolves with changes in data over time.
Revised: (3) with a population of candidate functions(model pool) which evolves with changes in data over time.

Original: Then it estimates h t ( · ) at each time slot tby assembling the candidate functions in the model pool with a Bayesian model averaging algorithm.
Revised: Then it estimates h t ( · ) at each time slot tby assembling the candidate functions in the model pool with a Bayesian model averaging algorithm.

Original: To this end, there are several key problems: 1) how to evolve the model pool over time; 2) how todynamically assemble the model pool to an optimized estimation of ht ( · ) ; and 3) how to sequentiallyestimate the state x t given h t ( · ) .
Revised: To this end, there are several key problems: 1) how to evolve the model pool over time; 2) how todynamically assemble the model pool to an optimized estimation of h

Original: Focusing on the problems above, the EvoEnsemble can be divided into three main components:1) a population evolution algorithm to evolve the model pool in time (See Fig.
Revised: Focusing on the problems above, the EvoEnsemble can be divided into three main components:1) a population evolution algorithm to evolve the model pool in time (See Fig.

Original: 1 above)
Revised: 1 above)

Original: ; 2) adynamic Bayesian model ensemble approach estimate h t ( · ) from the model pool (See Fig.
Revised: ; 2) adynamic Bayesian model ensemble approach estimate h t ( · ) from the model pool (See Fig.

Original: 1 below);and 3) a particle filter to estimate x t given h t ( · ) .
Revised: 1 below);and 3) a particle filter to estimate x t given h t ( · ) .

Original: Further, two strategies of evolve-at-changes andhistory-model-archive are proposed to improve the efficiency and stability of the sequential process.
Revised: Further, two strategies of evolve-at-changes andhistory-model-archive are proposed to improve the efficiency and stability of the sequential process.

Original: 3.1 Population evolution in the Bayesian framework
Revised: 3.1 Population evolution in the Bayesian framework

Original: In this section, we first introduce how to initialize the population, and then show how to dynamicallycompute the fitness of the population with the model likelihoods in the Bayesian framework.
Revised: In this section, we first introduce how to initialize the population, and then show how to dynamicallycompute the fitness of the population with the model likelihoods in the Bayesian framework.

Original: Afterthat, we present the evolutionary process with the differential evolution (DE) algorithm.
Revised: Afterthat, we present the evolutionary process with the differential evolution (DE) algorithm.

Original: 3.1.1 Population initialization
Revised: 3.1.1 Population initialization

Original: The candidate model pool, M = { m k ( · ) | k
Revised: The candidate model pool, M = { m k ( · ) | k

Original: = 1 , 2 , ..., N } , is first initialized by a set of encodingmodels that transform kinematics into neural signals.
Revised: = 1 , 2 , ..., N } , is first initialized by a set of encodingmodels that transform kinematics into neural signals.

Original: To enrich the diversity of the model pool,each model is trained with a different subset of the training data, which contains a randomly dividedsegment.
Revised: To enrich the diversity of the model pool,each model is trained with a different subset of the training data, which contains a randomly dividedsegment.

Original: Here we use linear encoding models and the models are fitted with the least square algorithm.
Revised: Here we use linear encoding models and the models are fitted with the least square algorithm.

Original: We denote the linear mapping matrix as M k , and its parameters as a vector p k .
Revised: We denote the linear mapping matrix as M k , and its parameters as a vector p k .

Original: Thus, for linear case,the candidate model pool can also be denoted as M = { p k | k
Revised: Thus, for linear case,the candidate model pool can also be denoted as M = { p k | k

Original: = 1 , 2 , ..., N } , where p k is the k thindividual in the evolution population.
Revised: = 1 , 2 , ..., N } , where p k is the k thindividual in the evolution population.

Original: The specific operation of getting subset indices is given in
Revised: The specific operation of getting subset indices is given in

Original: Appendix A.
Revised: Appendix A.

Original: 3.1.2 Fitness definition by the model likelihood
Revised: 3.1.2 Fitness definition by the model likelihood

Original: The purpose of evolution is to search for the best individual in the population and evolve otherindividuals towards it.
Revised: The purpose of evolution is to search for the best individual in the population and evolve other individuals towards it.

Original: Therefore, a fitness function that evaluates the quality of the model plays acore role in evolutionary computation.
Revised: Therefore, a fitness function that evaluates the quality of the model plays acore role in evolutionary computation.

Original: In the Bayesian framework, the fitness of a model can be defined by its likelihood given observationdata.
Revised: In the Bayesian framework, the fitness of a model can be defined by its likelihood given observationdata.

Original: A model with a high likelihood demonstrates good fitness.
Revised: A model with a high likelihood demonstrates good fitness.

Original: Since the candidate models in the model pool are neural encoding functions, which predict neural signals given kinematic parameters,we firstly infer the prior distribution of kinematics, namely x t , by Eq.
Revised: Since the candidate models in themodel pool are neural encoding functions, which predict neural signals given kinematic parameters,we firstly infer the prior distribution of kinematics, namely x t , by Eq.

Original: (2), then for each candidatefunction m k ( · ) we can infer the neural signal ˆ y kt by Eq.
Revised: (2), then for each candidatefunction m k ( · ) we can infer the neural signal ˆ y kt by Eq.

Original: (3), and compute the likelihood l k of theobserved neural signal y kt given ˆ y kt .
Revised: (3), and compute the likelihood l k of theobserved neural signal y kt given ˆ y kt .

Original: The likelihood l k indicates the fitness of m k ( · ) .
Revised: The likelihood l k indicates the fitness of m k ( · ) .

Original: The fitnesscomputation process is specified as follows.
Revised: The fitnesscomputation process is specified as follows.

Original: Step1: Prior kinematics prediction.
Revised: Step1: Prior kinematics prediction.

Original: First, given the kinematics x t − 1 at time t − 1 , we can get theprior kinematics p ( x t | x t − 1 ) at time t through the state transition function g ( · ) in Eq.
Revised: First, given the kinematics x t − 1 at time t − 1 , we can get theprior kinematics p ( x t | x t − 1 ) at time t through the state transition function g ( · ) in Eq.

Original: Step2: Neural encoding with different models.
Revised: Step2: Neural encoding with different models.

Original: Second, we can generate different neural signalsfrom the prior kinematics with different encoding models in the model pool.
Revised: Second, we can generate different neural signalsfrom the prior kinematics with different encoding models in the model pool.

Original: The neural signalsencoded by the k th model at time t is ˆ y kt =
Revised: The neural signalsencoded by the k th model at time t is ˆ y kt =

Original: m k ( x t )
Revised: m k ( x t )

Original: =
Revised: =

Original: M k x t .
Revised: M k x t .

Original: Step3: Likelihood computing for each model.
Revised: Step3: Likelihood computing for each model.

Original: Third, we compute each model’s likelihood bycomparing its encoded neural signals ˆ y kt with the incoming neural signals y t .
Revised: Third, we compute each model’s likelihood bycomparing its encoded neural signals ˆ y kt with the incoming neural signals y t .

Original: One model’s likelihoodindicates how likely the observed neural signals are encoded by this model.
Revised: One model’s likelihoodindicates how likely the observed neural signals are encoded by this model.

Original: The more likely it is, thegreater the value is.
Revised: The more likely it is, thegreater the value is.

Original: The marginal likelihood of the k th model, given the observed neural signals attime t can be represented as follows:
Revised: The marginal likelihood of the k th model, given the observed neural signals attime t can be represented as follows:

Original: [Equation]
Revised: [Equation]

Original: where the p ( x t | y 0: t − 1 ) is the probability of a certain kinematic given all the neural signals before,and p k ( y t | x t ) is the model likelihood given the certain kinematic.
Revised: where the p ( x t | y 0: t − 1 ) is the probability of a certain kinematic given all the neural signals before, andp k ( y t | x t ) is the model likelihood given the certain kinematic.

Original: A particle-based solution towardsit will be given in Section 3.3, where the model likelihoods are obtained by summing the likelihoodsof a set of particles.
Revised: The particle-based solution towards itwill be given in Section 3.3.

Original: Step4:
Revised: Step4:

Original: Fitness definition by the model likelihood.
Revised: Fitness definition by the model likelihood.

Original: Finally, we define the fitness value of theindividual p k at time t using the likelihoods of recent time slots:
Revised: Finally, we define the fitness value of theindividual p k at time t using the likelihoods of recent time slots:

Original: [Equation]
Revised: [Equation]

Original: where l pre is the length of the recent time slots.
Revised: where l pre is the length of the recent time slots.

Original: Note that, the neural decoding is a sequential problem,and we do not update the model pool at each time point.
Revised: Note that, the neural decoding is a sequential problem,and we do not update the model pool at each time point.

Original: That is, we usually accumulate data forseveral previous time slots for one update process.
Revised: That is, we usually accumulate data forseveral previous time slots for one update process.

Original: 3.1.3 Population evolution with the DE
Revised: 3.1.3 Population evolution with the DE

Original: With the initial model pool and the fitness function, we can evolve the population with evolutionarycomputation algorithms.
Revised: With the initial model pool and the fitness function, we can evolve the population with evolutionarycomputation algorithms.

Original: We use the DE algorithm with real-value encoding rather than thoseevolutionary computation algorithms with binary encoding.
Revised: We use the DE algorithm with real-value encoding rather than thoseevolutionary computation algorithms with binary encoding.

Original: DE is a global optimization algorithmthat follows an iterative population initialization, mutation, crossover and selection procedure.
Revised: DE is a global optimization algorithmthat follows an iterative population initialization, mutation, crossover and selection procedure.

Original: Thecanonical DE is introduced in Appendix B, and here we present the DE in model evolution.
Revised: Thecanonical DE is introduced in Appendix B, and here we present the DE in model evolution.

Original: Current-to-pbest mutation.
Revised: Current-to-pbest mutation.

Original: Mutation obtains evolution directions from individual differences.
Revised: Mutation obtains evolution directions from individual differences.

Original: Amutated population of the G th generation { v kG | k
Revised: Amutated population of the G th generation { v kG | k

Original: = 1 , 2 , ..., N } comes from the parent population{ p kG | k
Revised: = 1 , 2 , ..., N } comes from the parent population{ p kG | k

Original: = 1 , 2 , ..., N } according to a certain mutation strategy.
Revised: = 1 , 2 , ..., N } according to a certain mutation strategy.

Original: To avoid the premature convergence problem and diverse the population [18], we adopt a“DE/current-to-pbest/1" with archive strategy following [19]:[Equation]
Revised: To avoid the premature convergence problem and diverse the population [18], we adopt a“DE/current-to-pbest/1" with archive strategy following [19]:

Original: [Equation]
Revised: [Equation]

Original: where p pbest G is randomly chosen from the top 100 ∗ p % of the population, and usually p ∈ [0 . 05 , 0 . 2] .r
Revised: where p pbest G is randomly chosen from the top 100 ∗ p % of the population, and usually p ∈ [0 . 05 , 0 . 2] .r

Original: 1 k and r 2 k are randomly selected indices in the range of [1 , N ] , being distinct from each other andalso the index k .
Revised: 1 k and r 2 k are randomly selected indices in the range of [1 , N ] , being distinct from each other andalso the index k .

Original: The F is a list of the positive mutation factor and ˜p r 2 k G is randomly selected from acollection storing the inferior individuals.
Revised: The F is a list of the positive mutation factor and ˜p r 2 k G is randomly selected from acollection storing the inferior individuals.

Original: See more details in Appendix C.
Revised: See more details in Appendix C.

Original: Crossover.
Revised: Crossover.

Original: Crossover randomly selects component from either parent or mutated vectors in eachdimension.
Revised: Crossover randomly selects component from either parent or mutated vectors in eachdimension.

Original: The individual after crossover is a D-dimension vector { u kG =
Revised: The individual after crossover is a D-dimension vector { u kG =

Original: u k 1 ,G , u k 2 ,G , ..., u kD,G } : [Equation] where j rand is randomly chosen from [1 , D ] , and the CR is a list of the positive crossover factor.
Revised: u k 1 ,G , u k 2 ,G , ..., u kD,G } :u kj,G = (cid:26) v kj,G , if rand (0 , 1) ≤ CR k or j = j rand p kj,G , otherwise , (7) where j rand is randomly chosen from [1 , D ] , and the CR is a list of the positive crossover factor.

Original: Selection.
Revised: Selection.

Original: In the selection stage, the fitness function f ( · ) determines whether an individual stays inthe new population or not:
Revised: In the selection stage, the fitness function f ( · ) determines whether an individual stays inthe new population or not:

Original: [Equation]
Revised: [Equation]

Original: Usually, one model pool evolution process iterates for hundreds of generations (mutation, crossover,selection) until it satisfies the pre-set conditions.
Revised: Usually, one model pool evolution process iterates for hundreds of generations (mutation, crossover,selection) until it satisfies the pre-set conditions.

Original: 3.2 Estimating h t ( · ) with dynamic Bayesian model ensemble
Revised: 3.2 Estimating h t ( · ) with dynamic Bayesian model ensemble

Original: A Bayesian model ensemble approach [17] is employed to estimate h t ( · ) at each time slot given themodel pool.
Revised: A Bayesian model ensemble approach [17] is employed to estimate h t ( · ) at each time slot given themodel pool.

Original: Specifically, h t ( · ) , can be represented as a weighted combination of models in the poolby:
Revised: Specifically, h t ( · ) , can be represented as a weighted combination of models in the poolby:

Original: [Equation]
Revised: [Equation]

Original: where w kt is the assembling weight, changing with neural signals over time.
Revised: where w kt is the assembling weight, changing with neural signals over time.

Original: It can be dynamicallyobtained with the dynamic Bayesian ensemble algorithm.
Revised: It can be dynamicallyobtained with the dynamic Bayesian ensemble algorithm.

Original: Specifically, the assembling weight w kt of each model m k ( · ) at time t is computed by the posteriorprobability of each model given the observation neural signals y t
Revised: Specifically, the assembling weight w kt of each model m k ( · ) at time t is computed by the posteriorprobability of each model given the observation neural signals y t

Original: [Equation]
Revised: [Equation]

Original: (10) where p ( h t ( · ) = m k ( · ) | y 0: t − 1 ) is the prior probability of m k ( · ) at time t , which is given by theposterior probability of m k ( · ) at time t − 1 ; and p k ( y t | y 0: t − 1 ) is the likelihood as in Eq.
Revised: where p ( h t ( · ) = m k ( · ) | y 0: t − 1 ) is the prior probability of m k ( · ) at time t , which is given by theposterior probability of m k ( · ) at time t − 1 ; and p k ( y t | y 0: t − 1 ) is the likelihood as in Eq.

Original: 3.3 Estimating x t with a particle-based solution
Revised: 3.3 Estimating x t with a particle-based solution

Original: With h t ( · ) at hand, we can estimate the posterior distribution of state x t by
Revised: With h t ( · ) at hand, we can estimate the posterior distribution of state x t by

Original: [Equation]
Revised: [Equation]

Original:  where p ( x t | h t ( · ) 
Revised: 11) where p ( x t | h t ( · ) =

Original: = m k ( · ) , y 0: t ) is the posterior probability of the state with association to the k thmodel, which can be estimated recursively with the Bayesian filter (i.e., the particle filter).
Revised: m k ( · ) , y 0: t ) is the posterior probability of the state with association to the k thmodel, which can be estimated recursively with the Bayesian filter.

Original: Andp ( h t ( · ) = m k ( · ) | y 0: t ) is the model weight coming from Eq.
Revised: And p ( h t ( · ) = m k ( · ) | y 0: t ) is themodel weight coming from Eq.

Original: (10) with Bayesian model averagingrules.
Revised: (10) with Bayesian model averaging rules.

Original: Specifically, we propose a particle-based solution to compute the model likelihoods and stateposterior simultaneously (see Appendix D for details).
Revised: Specifically, we propose a particle-based solution to compute the model likelihoods and state posteriorsimultaneously.

Original: Suppose there is a set of particles{ x (1) t , x (2) t , ..., x ( N par ) t } , and the normalised importance weights of particle s under the hypothesis h t ( · ) = m k ( · ) are given by ω k ( s ) t , s = 1 , 2 , ..., N par , the particle-based marginal likelihood canbe calculated as follows:
Revised: Suppose there is a set of particles { x (1) t , x (2) t , ..., x ( N par ) t } , and the normalised important weights of particle s under the hypothesis h t ( · ) = m k ( · ) are given by ω k ( s ) t , s = 1 , 2 , ..., N par ,the particle-based marginal likelihood can be calculated as follows:

Original: [Equation]
Revised: [Equation]

Original: where (cid:80) N par s =
Revised: where (cid:80) N par s =

Original: 1 ω k ( s ) t = 1 .
Revised: 1 ω k ( s ) t = 1 .

Original: Further, the particle-based state posterior can be calculated by:
Revised: Further, the particle-based state posterior can be calculated by:

Original: [Equation]

Original: [Equation]
Revised: [Equation]

Original: where δ is the Dirac delta function.
Revised: where δ is the Dirac delta function.

Original: When the N par → ∞ , the approximation approaches the trueposterior density.

Original: 3.4 Strategies for model pool update
Revised: 3.4 Strategies for model pool update

Original: We propose two strategies, namely evolve-at
Revised: We propose two strategies, namely evolve-at-changes and history-model-archive, to decide when toupdate and how to update the model pool, respectively.

Original: The evolve-at-changes strategy.
Revised: The evolve-at-changes strategy.

Original: The default setting of the EvoEnsemble is to update the modelpool at a regular interval t up .
Revised: The default setting of the EvoEnsemble is to update the modelpool at a regular interval t up .

Original: However, too large an interval may lead to untimely updates, whiletoo small an interval may lead to unnecessary updates.
Revised: However, too large an interval may lead to untimely updates, whiletoo small an interval may lead to unnecessary updates.

Original: Evolve-at-changes is a strategy to choosethe update time adaptively according to the models’ likelihoods.
Revised: Evolve-at-changes is a strategy to choosethe update time adaptively according to the models’ likelihoods.

Original: Specifically, we maintain a list oflog-likelihood L max-ever where keeps the maximum log-likelihoods of all the candidate models in eachtime slot.
Revised: Specifically, we maintain a list oflog-likelihood L max-ever where keeps the maximum log-likelihoods of all the candidate models in eachtime slot.

Original: Every time a new neural signal comes in, we average the latest three values in L max-ever ascurrent log-likelihood l cur , and average the three values before the latest three values in L max-ever asprevious log-likelihood l pre .
Revised: Every time a new neural signal comes in, we average the latest three values in L max-ever ascurrent log-likelihood l cur , and average the three values before the latest three values in L max-ever as previous log-likelihood l pre .

Original: Meanwhile, we add a ratio r up for flexibility.
Revised: Meanwhile, we add a ratio r up for flexibility.

Original: Thus, the model pool willupdate once l cur < r up · l pre .
Revised: Thus, the model pool willupdate once l cur < r up · l pre .

Original: Besides, we limit the interval between two updates to 3 or more.
Revised: Besides, we limit the interval between two updates to 3 or more.

Original: The history-model-archive strategy.
Revised: The history-model-archive strategy.

Original: The default setting of the EvoEnsemble is to update the modelpool using all individuals evolved by DE.
Revised: The default setting of the EvoEnsemble is to update the modelpool using all individuals evolved by DE.

Original: However, DE tends to evolve the models all towards thebest model and leaves the model pool lacking diversity, which is insufficient to characterize thevariability of neural signals.
Revised: However, DE tends to evolve the models all towards thebest model and leaves the model pool lacking diversity, which is insufficient to characterize thevariability of neural signals.

Original: Thus, we establish a history model archive m his , to store the best modelsin each time slot, whose size is in line with the main model pool.
Revised: Thus, we establish a history model archive m his , to store the best modelsin each time slot, whose size is in line with the main model pool.

Original: When the iterations of DE finish,we randomly choose models in the history model archive, replacing the models in the evolved modelpool.
Revised: When the iterations of DE finish,we randomly choose models in the history model archive, replacing the models in the evolved modelpool.

Original: Again, we define a ratio r pre to determine how many history models to be preserved in themain model pool, which can be written as N pre = r pre · N .
Revised: Again, we define a ratio r pre to determine how many history models to be preserved in themain model pool, which can be written as N pre = r pre · N .

Original: So the final updated model pool is{ p k | k
Revised: So the final updated model pool is{ p k | k

Original: = 1 , 2 , ..., N } = { p r 1 his , p r 2 his , ..., p r N pre his , p N pre +1 , p N pre +2 , ..., p N } .
Revised: = 1 , 2 , ..., N } = { p r 1 his , p r 2 his , ..., p r N pre his , p N pre +1 , p N pre +2 , ..., p N } .

Original:  Experiments and results
Revised:  Experiments and results

Original: 4.1 Performance with simulations
Revised: 4.1 Performance with simulations

Original: To evaluate the performance of EvoEnsemble with different conditions of functional changes, wesimulate several conditions of changing functions, including functions with slow or rapid monotonicchanges, functions with slow or rapid non-monotonic changes, and a piece-wisely changing function(as shown by the red lines in Fig.
Revised: To evaluate the performance of EvoEnsemble with different conditions of functional changes, wesimulate several conditions of changing functions, including functions with slow or rapid monotonicchanges, functions with slow or rapid non-monotonic changes, and a piece-wisely changing function(as shown by the red lines in Fig.

Original: 2 (a), see details in Appendix D).
Revised: 2 (a)).

Original: Specifically, the function’sfirst parameter for conditions 1 - 4 is the same: h 1 t = 7 E-3 t + 1 , 1 ≤ t ≤ 300 , while the secondparameters are:
Revised: Specifically, the function’s first parameter for conditions 14 is the same: h 1 t = 7 E-3 t + 1 , 1 ≤ t ≤ 300 , while the second parameters are:

Original: (1) h 2 t = 7 E-4 t − 1 . 9;
Revised: (1) h 2 t = 7 E-4 t − 1 . 9;

Original: (2) h 2 t = 1 .
Revised: (2) h 2 t = 1 .

Original: 12 E-2 t + 2 . 6;(3)
Revised: 12 E-2 t + 2 . 6;

Original:  h 2 t = 9 . 8 E-6 t 2 − 2 .
Revised: (3) h 2 t = 9 . 8 E-6 t 2 − 2 .

Original: 8 E-3 t + 3 . 
Revised: 8 E-3 t + 3 . 4;

Original: 4;(4) h 2 t = −3 .
Revised: (4) h 2 t = −

Original: 43 E-5 t 2 + 4 . 2 E-3 t − 1 . 7;
Revised: [Equation]

Original: For condition 5, the parameters piece-wisely change over time:(5)
Revised: For condition 5, the parameters piece-wisely change over time:

Original: [Equation]
Revised: [Equation]

Original:  

Original: [Equation]
Revised: [Equation]

Original: 4 , 0 < t ≤ 168 , 1 E-2 t + 2 . 32 , 168 < t ≤ 345 , 5 . 77 , 345 < t ≤ 517 , − 2 E-2 t + 1 . 611 E1 , 517 < t ≤ 650; h 2 t =

Original:    5 , 0 < t ≤ 168 , − 2 E-2 t + 8 . 36 , 168 < t ≤ 345 , 1 . 46 , 345 < t ≤ 517 , 1 E-2 t − 3 .

Original: 71 , 517 < t ≤ 650 .

Original: Performance of functional tracking.
Revised: Performance of functional tracking.

Original: We first evaluate the functional tracking ability of EvoEnsemble with different conditions.
Revised: We first evaluate the functional tracking ability of EvoEnsemble with different conditions.

Original: Fig.
Revised: Fig.

Original: 2 (a) illustrates the ground truth (red lines) and the EvoEnsembleestimated (yellow lines) function’s parameters h 2 t compared with EvoEnsemble without DE-basedmodel evolution (blue lines).
Revised: 2 (a) illustrates the ground truth (red lines) and the EvoEnsembleestimated (yellow lines) function’s parameters h 2 t compared with EvoEnsemble without DE-basedmodel evolution (blue lines).

Original: Results demonstrate that EvoEnsemble tracks the changes in functionsclosely over time for all five conditions.
Revised: Results demonstrate that EvoEnsemble tracks the changes in functionsclosely over time for all five conditions.

Original: To further analyze how EvoEnsemble tracks the functionalchanges with the evolutionary model pool, we present the internal tracking process within EvoEnsemble in Fig.
Revised: To further analyze how EvoEnsemble tracks the functionalchanges with the evolutionary model pool, we present the internal tracking process within EvoEnsemble in Fig.

Original: 2 (b).
Revised: 2 (b).

Original: It shows that the candidate functions in the model pool can effectively followchanges of the true function h t with the model evolution process, such that the dynamic estimation ofh t is obtained.
Revised: It shows that the candidate functions in the model pool can effectively followchanges of the true function h t with the model evolution process, such that the dynamic estimation ofh t is obtained.

Original: To quantitively evaluate the functional tracking process, we compute the likelihoodof the functions estimated over time in Fig.
Revised: To quantitively evaluate the functional tracking process, we compute the likelihoodof the functions estimated over time in Fig.

Original: 2 (c).
Revised: 2 (c).

Original: EvoEnsemble keeps a high likelihood to theneural data with different changes, suggesting that EvoEnsemble can effectively capture the changingfunctions in time.
Revised: EvoEnsemble keeps a high likelihood to theneural data with different changes, suggesting that EvoEnsemble can effectively capture the changingfunctions in time.

Original: Performance of state estimation.
Revised: Performance of state estimation.

Original: Here we evaluate the state estimation performance with differentcriteria of correlation coefficient (CC), root mean squared error (RMSE), and determination ofcoefficients (R 2 ) between the estimated and ground-truth state sequences.
Revised: Here we evaluate the state estimation performance with differentcriteria of correlation coefficient (CC), root mean squared error (RMSE), and determination ofcoefficients (R 2 ) between the estimated and ground-truth state sequences.

Original: Fig.
Revised: Fig.

Original: 2 (d) illustrates the
Revised: 2 (d) illustrates the

Original: R 2 of the estimated states.
Revised: R 2 of the estimated states.

Original: Results show that, without the model evolution process, the performancedecreases gradually as the function changes, and the R 2 decrease to 0.552, 0, 0.187, 0, and 0.896 withthe five conditions respectively.
Revised: Results show that, without the model evolution process, the performancedecreases gradually as the function changes, and the R 2 decrease to 0.552, 0, 0.187, 0, and 0.896 withthe five conditions respectively.

Original: EvoEnsemble is more robust to functional changes that the R 2 s are0.975, 0.759, 0.970, 0.764, and 0.986 for the five conditions, respectively.
Revised: EvoEnsemble is more robust to functional changes that the R 2 s are0.975, 0.759, 0.970, 0.764, and 0.986 for the five conditions, respectively.

Original: Fig.
Revised: Fig.

Original: 2 (e) further comparethe state estimation performance with different neural decoders.
Revised: 2 (e) further comparethe state estimation performance with different neural decoders.

Original: Overall, EvoEnsemble achieves thesuperior performance with all the conditions, with stable high R 2 , CC and low RMSE.
Revised: Overall, EvoEnsemble achieves thesuperior performance with all the conditions, with stable high R 2 , CC and low RMSE.

Original: Specifically,
Revised: Specifically,

Original: EvoEnsemble obtains CCs of 0.894, 0.905, 0.952, 0.895, and 0.997 with the five conditions, whichare 12.6%, 105.2%, 1.7%, 155.0%, and 4.7% higher than Kalman filters (see details in Appendix E).
Revised: EvoEnsemble obtains CCs of 0.894, 0.905, 0.952, 0.895, and 0.997 with the five conditions, whichare 12.6%, 105.2%, 1.7%, 155.0%, and 4.7% higher than Kalman filters (see details in Appendix D).

Original: These results suggest the necessity and importance of functional tracking for robust state estimationwith time-varying functions, and demonstrate that EvoEnsemble can track the changing functionseffectively to improve the accuracy and robustness of state estimation.
Revised: These results suggest the necessity and importance of functional tracking for robust state estimationwith time-varying functions, and demonstrate that EvoEnsemble can track the changing functionseffectively to improve the accuracy and robustness of state estimation.

Original: Effectiveness of the evolve-at-changes strategy.
Revised: Effectiveness of the evolve-at-changes strategy.

Original: The evolve-at-changes strategy aims to control‘when to update’ the model pool to balance the trade-off between efficiency and accuracy: frequentlyupdating the model pool helps track the changes in functions more precisely while requiring morecomputational costs.
Revised: The evolve-at-changes strategy aims to control‘when to update’ the model pool to balance the trade-off between efficiency and accuracy: frequentlyupdating the model pool helps track the changes in functions more precisely while requiring morecomputational costs.

Original: Here we compare the state estimation performance using different modelupdating rules with simulation 4.
Revised: Here we compare the state estimation performance using different modelupdating rules with simulation 4.

Original: Fig.
Revised: Fig.

Original: 3 (a) compares the log-likelihood of models and the stateestimation R 2 with five different settings of 1) no updating; 2) updating with a regular time interval;and 3) updating with the evolve-at-changes strategy.
Revised: 3 (a) compares the log-likelihood of models and the stateestimation R 2 with five different settings of 1) no updating; 2) updating with a regular time interval;and 3) updating with the evolve-at-changes strategy.

Original: Results demonstrate that with the proposedstrategy, EvoEnsemble achieves a high R 2 of 0.741 comparable to 0.764, while reducing 72.2%of model update costs, which well balances the efficiency and accuracy.
Revised: Results demonstrate that with the proposedstrategy, EvoEnsemble achieves a high R 2 of 0.741 comparable to 0.764, while reducing 72.2%of model update costs, which well balances the efficiency and accuracy.

Original: Fig.
Revised: Fig.

Original: 3 (b) analyzes theinfluence of updating ratio r up using R 2 together with the update timing (with the asterisks).
Revised: 3 (b) analyzes theinfluence of updating ratio r up using R 2 together with the update timing (with the asterisks).

Original: Resultsdemonstrate that the decoding performance is relatively stable when the update ratio is 0.4 to 0.9.
Revised: Resultsdemonstrate that the decoding performance is relatively stable when the update ratio is 0.4 to 0.9.

Original: Effectiveness of the history-model-archive strategy.
Revised: Effectiveness of the history-model-archive strategy.

Original: History-model-archive is proposed to improvethe stability of state estimation with the information of historical models.
Revised: History-model-archive is proposed to improvethe stability of state estimation with the information of historical models.

Original: Fig.
Revised: Fig.

Original: 3 (c) shows themaximum log-likelihoods of the models from the historical model pool (blue bars) and the currentmodel pool (red bars) after every update in condition 3, where a non-monotonic functional change isinvolved (as shown in the lower panel of Fig.
Revised: 3 (c) shows themaximum log-likelihoods of the models from the historical model pool (blue bars) and the currentmodel pool (red bars) after every update in condition 3, where a non-monotonic functional change isinvolved (as shown in the lower panel of Fig.

Original: 3 (c)).
Revised: 3 (c)).

Original: From time slots 0 to 150 where the functiongradually deviates from the initial, models in the current model pool gradually take the dominantpart to track the changing functions with model evolution.
Revised: From time slots 0 to 150 where the functiongradually deviates from the initial, models in the current model pool gradually take the dominantpart to track the changing functions with model evolution.

Original: While from time slots 180 to 300 wherethe function comes back to the initial, the likelihood of historical models gradually increases.
Revised: While from time slots 180 to 300 wherethe function comes back to the initial, the likelihood of historical models gradually increases.

Original: Wefurther evaluate the decoding performance of R 2 with different history preserve ratio r pre .
Revised: Wefurther evaluate the decoding performance of R 2 with different history preserve ratio r pre .

Original: Fig. 3(d) (above) shows that the history-model-archive strategy improves the decoding performance in allfive conditions.
Revised: Fig. 3(d) (above) shows that the history-model-archive strategy improves the decoding performance in allfive conditions.

Original: Fig.
Revised: Fig.

Original: 3 (d) (below) tests the influence of history preserve ratio ( r pre ) parameter in thehistory-model-archive strategy, which shows that the optimal r pre relies on the conditions of data.
Revised: 3 (d) (below) tests the influence of history preserve ratio ( r pre ) parameter in thehistory-model-archive strategy, which shows that the optimal r pre relies on the conditions of data.

Original: Thus r pre can be selected as a hyper parameter for each dataset.
Revised: Thus r pre can be selected as a hyper parameter for each dataset.

Original: 4.2 Performance with neural signals
Revised: 4.2 Performance with neural signals

Original: We evaluate our EvoEnsemble approach on four datasets with neural signals recorded from a macaquemonkey (Data-M) and a human with tetraplegia (Data-P1/2/3).
Revised: We evaluate our EvoEnsemble approach on four datasets with neural signals recorded from a macaquemonkey (Data-M) and a human with tetraplegia (Data-P1/2/3).

Original: Monkey neural datasets.
Revised: Monkey neural datasets.

Original: The monkey data is from the open Zenodo dataset [20] where the monkeyswere trained to perform a self-paced reaching task in an 8 ∗ 8 grid (as shown in Fig.
Revised: The monkey data is from the open Zenodo dataset [20] where the monkeyswere trained to perform a self-paced reaching task in an 8 ∗ 8 grid (as shown in Fig.

Original: 4 (a)).
Revised: 4 (a)).

Original: Neuralspike signals are recorded from the M1 area.
Revised: Neuralspike signals are recorded from the M1 area.

Original: We use the data segment of indy-2017012401, and weselect 20 channels according to the CC between neural signals and kinematics.
Revised: We use the data segment of indy-2017012401, and weselect 20 channels according to the CC between neural signals and kinematics.

Original: The neural data aresmoothed with a window of 3 time slots.
Revised: The neural data are smoothed with a window of 3 time slots.

Original: The hand velocities are obtained from the position by adiscrete derivative.
Revised: The hand velocities are obtained from the position by adiscrete derivative.

Original: Clinical neural datasets.
Revised: Clinical neural datasets.

Original: The clinical dataset was collected with a human subject, with two 96channel Utah arrays implanted in the left primary motor cortex.
Revised: The clinical dataset was collected with a human subject, with two 96channel Utah arrays implanted in the left primary motor cortex.

Original: All the clinical and experimentalprocedures were approved by the Medical Ethics Committee.
Revised: All the clinical and experimentalprocedures were approved by the Medical Ethics Committee.

Original: The BCI experiment paradigm is acenter-out 2D cursor control with eight directions (as shown in Fig.
Revised: The BCI experiment paradigm is acenter-out 2D cursor control with eight directions (as shown in Fig.

Original: 4 (b)).
Revised: 4 (b)).

Original: In the online closed-loop
Revised: In the online closed-loop

Original: BCI control, there is a calibration phase with two observation blocks and three ortho-impedanceassistant training blocks similar to [21], where the ortho-impedance assistance ratios of the threeblocks are 0.7,0.5, and 0.3 respectively.
Revised: BCI control, there is a calibration phase with two observation blocks and three ortho-impedanceassistant training blocks similar to [21], where the ortho-impedance assistance ratios of the threeblocks are 0.7,0.5, and 0.3 respectively.

Original: After the training blocks, a full brain control block whereno ortho-impedance assistance is applied.
Revised: After the training blocks, a full brain control block whereno ortho-impedance assistance is applied.

Original: We use the training blocks for decoder training, and thesixth block for the test.
Revised: We use the training blocks for decoder training, and thesixth block for the test.

Original: Neural signals are sorted manually before each day’s experiment.
Revised: Neural signals are sorted manually before each day’s experiment.

Original: Similar to
Revised: Similar to

Original: Data-M, 20 neurons with top CCs between neural signals and kinematics are selected.
Revised: Data-M, 20 neurons with top CCs between neural signals and kinematics are selected.

Original: Data-P1/2/3were collected in 20201208/09/14 respectively.
Revised: Data-P1/2/3were collected in 20201208/09/14 respectively.

Original: Neural decoding performance.
Revised: Neural decoding performance.

Original: The neural decoding performance with Data-M and Data-P1/2/3is presented in Table 1 and Fig.
Revised: The neural decoding performance with Data-M and Data-P1/2/3is presented in Table 1 and Fig.

Original: 4 (c).
Revised: 4 (c).

Original: Overall, EvoEnsemble outperforms the other decoders in allthe datasets.
Revised: Overall, EvoEnsemble outperforms the other decoders in allthe datasets.

Original: Compared with the static decoders such as the Kalman filter, EvoEnsemble obtains
Revised: Compared with the static decoders such as the Kalman filter, EvoEnsemble obtains

Original: CCs of 0.764, 0.547, 0.561 and 0.487 with Data-M and Data-P1/2/3 respectively, which are 7.2%,39.2%, 26.1% and 43.2% higher than the Kalman filter.
Revised: CCs of 0.764, 0.547, 0.561 and 0.487 with Data-M and Data-P1/2/3 respectively, which are 7.2%,39.2%, 26.1% and 43.2% higher than the Kalman filter.

Original: The improvement is most significant in the
Revised: The improvement is most significant in the

Original: Data-P datasets with closed-loop BCI control.
Revised: Data-P datasets with closed-loop BCI control.

Original: We think it is partly because that the feedback in theclosed-loop BCI control process may lead to frequent functional changes in neural signals (as shownin Fig. S1).
Revised: We think it is partly because that the feedback in theclosed-loop BCI control process may lead to frequent functional changes in neural signals (as shownin Fig. S1).

Original: The functional changes lead to unstable performance with static approaches of particlefilters (PF) and Kalman filters, such that low CCs of 0.337, 0.437, 0.343 (PF) and 0.393, 0.445,0.340 (KF) are obtained.
Revised: The functional changes lead to unstable performance with static approaches of particlefilters (PF) and Kalman filters, such that low CCs of 0.337, 0.437, 0.343 (PF) and 0.393, 0.445,0.340 (KF) are obtained.

Original: With the DyEnsemble approach [17] where the neural decoder dynamicallyadjusts along with changes in neural signals, the performance increases to 0.513, 0.485, and 0.472for the three datasets respectively.
Revised: With the DyEnsemble approach [17] where the neural decoder dynamicallyadjusts along with changes in neural signals, the performance increases to 0.513, 0.485, and 0.472for the three datasets respectively.

Original: However, without the model evolution process, the performanceis limited given substantial changes in functions (in Data-P1/2, see Fig. S1).
Revised: However, without the model evolution process, the performanceis limited given substantial changes in functions (in Data-P1/2, see Fig. S1).

Original: While EvoEnsemblefurther improves the performance by 6.6% and 15.7% on Data P1/2 with the functional trackingability.
Revised: While EvoEnsemblefurther improves the performance by 6.6% and 15.7% on Data P1/2 with the functional trackingability.

Original: [Table]

Original: The three adaptive neural decoders of Kalman filter (recalib), DyEnsemble and EvoEnsemble obtainhigher performance compared with static ones.
Revised: The three adaptive neural decoders of Kalman filter (recalib), DyEnsemble and EvoEnsemble obtainhigher performance compared with static ones.

Original: Kalman filter (recalib) recalibrates the neural decoderevery 20 time slots to cope with changes in neural functions [13]; and DyEnsemble increases themodel pool with two strategies of connection dropout and weight perturbation [17].
Revised: Kalman filter (recalib) recalibrates the neural decoderevery 20 time slots to cope with changes in neural functions [13]; and DyEnsemble increases themodel pool with two strategies of connection dropout and weight perturbation [17].

Original: Comparedwith the Kalman filter (recalib), EvoEnsemble improves the CCs by 8.4%, 14.7%, 2.4% and 10.9%with the four datasets respectively; and the improvement are 4.5%, 6.6%, 15.7% and 3.2% respectively compared with the DyEnsemble approach.
Revised: Comparedwith the Kalman filter (recalib), EvoEnsemble improves the CCs by 8.4%, 14.7%, 2.4% and 10.9%with the four datasets respectively; and the improvement are 4.5%, 6.6%, 15.7% and 3.2% respec- [Table] Kalman [Table]

Original: The results demonstrate the superior ability of
Revised: recalib) [ [Table] DyEnsemble [17] [Table]

Revised: EvoEnsemble (ours)

Revised: [Table]

Revised: tively compared with the DyEnsemble approach.

Revised: The results demonstrate the superior ability of

Original: EvoEnsemble in accurate and robust neural decoding with neural functional changes.
Revised: EvoEnsemble in accurate and robust neural decoding with neural functional changes.

Original: Functional tracking performance.
Revised: Functional tracking performance.

Original: In Fig.
Revised: In Fig.

Original: 4 (d), we further illustrate the functional trackingperformance of EvoEnsemble with and without the model evolution process.
Revised: 4 (d), we further illustrate the functional trackingperformance of EvoEnsemble with and without the model evolution process.

Original: In each subfigure,the red line indicates the function parameter computed in every temporal time slot given neuralsignals and the true movement trajectories, which we regard as the ground truth of the parameterover time.
Revised: In each subfigure,the red line indicates the function parameter computed in every temporal time slot given neuralsignals and the true movement trajectories, which we regard as the ground truth of the parameterover time.

Original: The yellow lines indicate the estimation of the parameters with both EvoEnsemble (right)and EvoEnsemble (w/o DE) (left).
Revised: The yellow lines indicate the estimation of the parameters with both EvoEnsemble (right)and EvoEnsemble (w/o DE) (left).

Original: Results demonstrate that, although EvoEnsemble (w/o DE)demonstrates its model adaptation ability to a certain extent, the range of functional adjustment islimited with a fixed model pool.
Revised: Results demonstrate that, although EvoEnsemble (w/o DE)demonstrates its model adaptation ability to a certain extent, the range of functional adjustment islimited with a fixed model pool.

Original: Thus EvoEnsemble (w/o DE) can be effective with slight functionalchanges in a certain range, and face difficulties with substantial changes in functions.
Revised: Thus EvoEnsemble (w/o DE) can be effective with slight functionalchanges in a certain range, and face difficulties with substantial changes in functions.

Original: On the otherhand, the EvoEnsemble model can closely follow the changes in the parameters over time, such thatit improves the functional tracking ability as well as the neural decoding accuracy (see Fig.
Revised: On the otherhand, the EvoEnsemble model can closely follow the changes in the parameters over time, such thatit improves the functional tracking ability as well as the neural decoding accuracy (see Fig.

Original: S2 and
Revised: S2 and

Original: Fig.
Revised: Fig.

Original: S3 for more examples).
Revised: S3 for more examples).

Original:  Conclusions
Revised:  Conclusions

Original: We propose an evolutionary ensemble Bayesian model (EvoEnsemble) for accurate and robust neuraldecoding under functional changes in neural signals.
Revised: We propose an evolutionary ensemble Bayesian model (EvoEnsemble) for accurate and robust neuraldecoding under functional changes in neural signals.

Original: It incorporates evolutionary computation ina
Revised: It incorporates evolutionary computation ina

Original: Bayesian filter framework which enables the temporal evolution of neural decoder driven by themodel likelihood given incoming neural signals.
Revised: Bayesian filter framework which enables the temporal evolution of neural decoder driven by themodel likelihood given incoming neural signals.

Original: Experiments with both simulations and neuralsignals strongly demonstrate the necessity and importance of the functional tracking for robust stateestimation with time-varying functions.
Revised: Experiments with both simulations and neuralsignals strongly demonstrate the necessity and importance of the functional tracking for robust stateestimation with time-varying functions.

Original: EvoEnsemble can track the changing functions effectivelywith both simulation and neural signals to improve the accuracy and robustness in state estimation.
Revised: EvoEnsemble can track the changing functions effectivelywith both simulation and neural signals to improve the accuracy and robustness in state estimation.

Original: One limitation of our approach is the computational efficiency of the evolution process, since itrequires hundreds of generations for one model pool update process.
Revised: One limitation of our approach is the computational efficiency of the evolution process, since itrequires hundreds of generations for one model pool update process.

Original: Our future work may focus onimproving the efficiency of evolutionary computation.
Revised: Our future work may focus onimproving the efficiency of evolutionary computation.

Original: The framework of EvoEnsemble is beneficialto a wide range of problems in the nonstationary signal processing area.
Revised: The framework of EvoEnsemble is beneficialto a wide range of problems in the nonstationary signal processing area.

Original: Checklist
Revised: Checklist

Original: The checklist follows the references.
Revised: The checklist follows the references.

Original: Please read the checklist guidelines carefully for information onhow to answer these questions.
Revised: Please read the checklist guidelines carefully for information onhow to answer these questions.

Original: For each question, change the default [TODO] to [Yes] , [No] or[N/A] .
Revised: For each question, change the default [TODO] to [Yes] , [No] or[N/A] .

Original: You are strongly encouraged to include a justification to your answer , either by referencingthe appropriate section of your paper or providing a brief inline description.
Revised: You are strongly encouraged to include a justification to your answer , either by referencingthe appropriate section of your paper or providing a brief inline description.

Original: For example:
Revised: For example:

Original: • Did you include the license to the code and datasets?
Revised: • Did you include the license to the code and datasets?

Original: [Yes] See Section ?? .
Revised: [Yes] See Section ?? .

Original: • Did you include the license to the code and datasets?
Revised: • Did you include the license to the code and datasets?

Original: [No] The code and the data are
Revised: [No] The code and the data are

Original: proprietary.
Revised: proprietary.

Original: • Did you include the license to the code and datasets?
Revised: • Did you include the license to the code and datasets?

Original: [N/A]Please do not modify the questions and only use the provided macros for your answers.
Revised: [N/A] Please do not modify the questions and only use the provided macros for your answers.

Original: Note that theChecklist section does not count towards the page limit.
Revised: Note that the Checklist section does not count towards the page limit.

Original: In your paper, please delete this instructionsblock and only keep the Checklist section heading above along with the questions/answers below.1.
Revised: In your paper, please delete this instructionsblock and only keep the Checklist section heading above along with the questions/answers below.

Original: For all authors...
Revised: For all authors...

Original: (a) Do the main claims made in the abstract and introduction accurately reflect the paper’s contributions and scope?
Revised: (a) Do the main claims made in the abstract and introduction accurately reflect the paper’s contributions and scope?

Original: [Yes] We clearly state our work in the abstract andintroduction.
Revised: [Yes] We clearly state our work in the abstract and introduction.

Original: (b) Did you describe the limitations of your work?
Revised: (b) Did you describe the limitations of your work?

Original: [Yes] See Section 5.
Revised: [Yes] See Section 5.

Original: (c) Did you discuss any potential negative societal impacts of your work?
Revised: (c) Did you discuss any potential negative societal impacts of your work?

Original: [N/A]
Revised: [N/A]

Original: We believe our work is relevant to basic decoding algorithm design and we do not forsee
Revised: Webelieve our work is relevant to basic decoding algorithm design and we do not forsee

Original: any negative impact rather positive one.
Revised: any negative impact rather positive one.

Original: Our work can help people with tetraplegia
Revised: Our work can help people with tetraplegia

Original: control the external devices more stably.
Revised: control the external devices more stably.

Original: (d) Have you read the ethics review guidelines and ensured that your paper conforms tothem?
Revised: (d) Have you read the ethics review guidelines and ensured that your paper conforms tothem?

Original: [Yes]
Revised: [Yes]2.

Original: If you are including theoretical results...
Revised: If you are including theoretical results...

Original: (a) Did you state the full set of assumptions of all theoretical results?
Revised: (a) Did you state the full set of assumptions of all theoretical results?

Original: [N/A](b)
Revised: [N/A]

Original:  Did you include complete proofs of all theoretical results?
Revised: (b) Did you include complete proofs of all theoretical results?

Original: [N/A]3.
Revised: [N/A]3.

Original: If you ran experiments...
Revised: If you ran experiments...

Original: (a) Did you include the code, data, and instructions needed to reproduce the main experimental results (either in the supplemental material or as a URL)?
Revised: (a) Did you include the code, data, and instructions needed to reproduce the main experimental results (either in the supplemental material or as a URL)?

Original: [Yes] We provide the simulation data and code with instructions in the Appendix.
Revised: [Yes] We provide thesimulation data and code with instructions in the Appendix.

Original: (b) Did you specify all the training details (e.g., data splits, hyperparameters, how they were chosen)?
Revised: (b) Did you specify all the training details (e.g., data splits, hyperparameters, how theywere chosen)?

Original: [Yes] We specify the parameter settings in the Appendix.
Revised: [Yes] We specify the parameter settings in the Appendix.

Original: (c) Did you report error bars (e g., with respect to the random seed after running experi- ments multiple times)?
Revised: (c) Did you report error bars (e.g., with respect to the random seed after running experiments multiple times)?

Original: [Yes] See Fig.
Revised: [Yes] See Fig.

Original: 2, Fig. 

Revised: 2, Fig.

Original: and Table
Revised: and Table

Original: (d) Did you include the total amount of compute and the type of resources used (e.g., typeof GPUs, internal cluster, or cloud provider)?
Revised: (d) Did you include the total amount of compute and the type of resources used (e.g., typeof GPUs, internal cluster, or cloud provider)?

Original: [Yes] We only run on a basic computer.
Revised: [Yes] We only run on a basic computer.

Original: If you are using existing assets (e g., code, data, models) or curating/releasing new assets...
Revised: If you are using existing assets (e.g., code, data, models) or curating/releasing new assets...

Original: (a) If your work uses existing assets, did you cite the creators?
Revised: (a) If your work uses existing assets, did you cite the creators?

Original: [Yes] See Section 4.3.
Revised: [Yes] See Section 4.3.

Original: (b) Did you mention the license of the assets?
Revised: (b) Did you mention the license of the assets?

Original: [N/A]
Revised: [N/A]

Revised: [Table]

Original: (c) Did you include any new assets either in the supplemental material or as a URL?
Revised: (c) Did you include any new assets either in the supplemental material or as a URL?

Original: [N/A]
Revised: [N/A]

Original: (d) Did you discuss whether and how consent was obtained from people whose data you’re
Revised: (d) Did you discuss whether and how consent was obtained from people whose data you’re

Revised: [Table]

Original: using/curating?
Revised: using/curating?

Original: [Yes] See Section 4.3.
Revised: [Yes] See Section 4.3.

Original: (e) Did you discuss whether the data you are using/curating contains personally identifiable
Revised: (e) Did you discuss whether the data you are using/curating contains personally identifiable

Revised: [Table]

Original: information or offensive content?
Revised: information or offensive content?

Original: [Yes] See Section 4.3.
Revised: [Yes] See Section 4.3.

Original: If you used crowdsourcing or conducted research with human subjects...
Revised: If you used crowdsourcing or conducted research with human subjects...

Original: (a) Did you include the full text of instructions given to participants and screenshots, if applicable?
Revised: (a) Did you include the full text of instructions given to participants and screenshots, ifapplicable?

Original: [N/A]
Revised: [N/A]

Original: (b) Did you describe any potential participant risks, with links to Institutional Review
Revised: (b) Did you describe any potential participant risks, with links to Institutional Review

Original: Board (IRB) approvals, if applicable?
Revised: Board (IRB) approvals, if applicable?

Original: [N/A]
Revised: [N/A]

Original: (c) Did you include the estimated hourly wage paid to participants and the total amount
Revised: (c) Did you include the estimated hourly wage paid to participants and the total amount

Original: spent on participant compensation?
Revised: spent on participant compensation?

Original: [N/A]
Revised: [N/A]