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 between neural 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 ﬁxed neural decoder, thus suffering from 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 a novel evolutionary ensemble framework (EvoEnsemble) to dynamically cope with changes 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: EvoEnsemble integrates evolutionary computation algorithms in a Bayesian framework where the ﬁtness of models can be sequentially computed with their likelihoods according to the incoming data at each time slot, which enables online tracking of time-varying functions.

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 efﬁciency 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 simulations and 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 signiﬁcant 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 change continuously 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 dynamics in the neural systems, the plasticity of synapses driven by learning and adaptation contribute to the variability 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 forms a challenging problem in the brain-computer interfaces (BCIs) ﬁeld [3–9], because the decoding accuracy will degrade over time given changing neural functions and a ﬁxed 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 encoding model that changes over time, and x t denotes the state to be encoded such as the velocity of a computer 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 [10] and Kalman ﬁlters (KF) [11] mostly assume a stationary h t ( · ) , namely h t ( · ) ≡ h 0 ( · ) , ( t = 1 , 2 , 3 , ... ) , which can be oversimpliﬁed 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, in online BCI control, neural encoding functions change signiﬁcantly with the inﬂuence of real-time feedback such as the speed of the cursor and errors in control [12, 13].

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

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 should be 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 ﬁrst one is re-calibration of neural decoders periodically or manually when the performance degrades [15, 16] 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 a framework for rapid calibration, which removed the traditional open-loop calibration phase and reduced 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 the short-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 [17–19].

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 and neural 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 ﬁlter (DyEnsemble) which obtained the state-of-the-art performance with nonstationary neural signals [20].

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 encoding models, and adaptively assembles a decoder from these models online according to neural signals with a recursive Bayesian ﬁlter, which allows the neural decoder adjust its functions to cope with the 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 addressing neural 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 in long-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 an evolutionary ensemble Bayesian ﬁlter (EvoEnsemble) to track the neural encoding functions over time by incorporating evolutionary computation in a recursive Bayesian framework.

Original: Specifically,
Revised: Speciﬁcally,

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 neural functions, where the changing ﬁtness of the population is dynamically computed by the likelihood given 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 by the 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 posterior distribution 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 framework that extends evolutionary computation in a Bayesian process to achieve robust state estimation with neural functional changes; (2) We propose a particle-based solution to simultaneously track the functional changes and estimate the state (e.g., the velocity of a cursor) sequentially online; (3) Two strategies of evolve-at-changes and history-model-archive are proposed to improve the computational efﬁciency 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 against traditional decoders such as Kalman ﬁlters, and the improvement is most signiﬁcant with functional changes 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 deﬁned by

Original: [Equation]

Original: [Equation]
Revised: [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-varying observation 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 decoder aims 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 deﬁne the state x t with d z = 2 , which contains the velocities of movements in x-axis and y-axis, and y t is the ﬁring rates of d y neurons.

Original: The EvoEnsemble approach consists of two phases, one is the calibration phase and the other isthe test phase.
Revised: The EvoEnsemble approach consists of two phases, one is the calibration phase and the other is the 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.
Revised: During the calibration phase, training sample pairs are collected and used to learn the transition function, as well as a set of initial encoding models to approximate the time-varying observation function.

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

Original: Meanwhile, aset of initial particles are randomly drown from a Gaussian distribution, to approximate the posteriorof the kinematic states.
Revised: Meanwhile, a set of initial particles are randomly drown from a Gaussian distribution, to approximate the posterior of 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.
Revised: During the test phase, the particle likelihoods and model likelihoods are calculated 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.
Revised: The observation function changes along with the incoming neural signals through adaptively assembling the encoding models in the model pool, where the assembling weights (i.e., the posterior probabilities of 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.
Revised: When all models’ likelihoods in the model pool are small, the model pool will be updated by EvoEnsemble through a differential evolution algorithm, where model ﬁtness 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 t by 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 h t ( · ) ; 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 to dynamically assemble the model pool to an optimized estimation of h t ( · ) ; and 3) how to sequentially estimate the state x t given h t ( · ) .

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) a dynamic 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 ﬁlter 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 and history-model-archive are proposed to improve the efﬁciency 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 ﬁrst introduce how to initialize the population, and then show how to dynamically compute the ﬁtness 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: After that, 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 ﬁrst initialized by a set of encoding models 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 divided segment.

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 ﬁtted 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 th individual in the evolution population.

Original: The specific operation of getting subset indices is given in
Revised: The speciﬁc 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 deﬁnition 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 ﬁtness function that evaluates the quality of the model plays a core 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 ﬁtness of a model can be deﬁned by its likelihood given observation data.

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

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 the model pool are neural encoding functions, which predict neural signals given kinematic parameters, we ﬁrstly 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 candidate function 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 the observed 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 ﬁtness of m k ( · ) .

Original: The fitnesscomputation process is specified as follows.
Revised: The ﬁtness computation process is speciﬁed 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 the prior 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 signals from 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 signals encoded 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 by comparing 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 likelihood indicates 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, the greater 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 at time 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, and p 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: A particle-based solution towards it will be given in Section 3.3, where the model likelihoods are obtained by summing the likelihoods of a set of particles.

Original: Step4:
Revised: Step4:

Original: Fitness definition by the model likelihood.
Revised: Fitness deﬁnition 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 deﬁne the ﬁtness value of the individual 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 for several 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 ﬁtness function, we can evolve the population with evolutionary computation 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 those evolutionary 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 algorithm that 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: The canonical 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: A mutated 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 [21], we adopt a “DE/current-to-pbest/1" with archive strategy following [22]:

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] .

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: r 1 k and r 2 k are randomly selected indices in the range of [1 , N ] , being distinct from each other and also 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 a collection 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 each dimension.

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: uk 1 ,G , u k 2 ,G , ..., u kD,G } :
Revised: u

Original: [Equation]
Revised: [Equation]

Original: where j rand is randomly chosen from [1 , D ] , and the CR is a list of the positive crossover factor.
Revised: 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 ﬁtness function f ( · ) determines whether an individual stays in the 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 satisﬁes 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 [20] is employed to estimate h t ( · ) at each time slot given the model pool.

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

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 dynamically obtained 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: Speciﬁcally, the assembling weight w kt of each model m k ( · ) at time t is computed by the posterior probability 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: [Equation] where p ( h t ( · ) = m k ( · ) | y 0: t − 1 ) is the prior probability of m k ( · ) at time t , which is given by the posterior 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 ( · ) = 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: (11) where p ( x t | h t ( · ) = m k ( · ) , y 0: t ) is the posterior probability of the state with association to the k th model, which can be estimated recursively with the Bayesian ﬁlter (i.e., the particle ﬁlter).

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 the model 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: Speciﬁcally, we propose a particle-based solution to compute the model likelihoods and state posterior simultaneously (see Appendix D for details).

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 ( · )
Revised: 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 ( · )

Original: = m k ( · ) are given by ω k ( s ) t , s = 1 , 2 , ..., N par , the particle-based marginal likelihood canbe calculated as follows:
Revised: = 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 =1 ω k (

Original: 1 ω k ( s ) t = 1 .
Revised: [Equation] 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.
Revised: When the N par → ∞ , the approximation approaches the true posterior 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 to update 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 model pool 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, while too 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 choose the 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: Speciﬁcally, we maintain a list of log-likelihood L max-ever where keeps the maximum log-likelihoods of all the candidate models in each time 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 as current 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 ﬂexibility.

Original: Thus, the model pool willupdate once l cur < r up · l pre .
Revised: Thus, the model pool will update 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 model pool 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 the best model and leaves the model pool lacking diversity, which is insufﬁcient to characterize the variability 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 models in 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 ﬁnish, we randomly choose models in the history model archive, replacing the models in the evolved model pool.

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 deﬁne a ratio r pre to determine how many history models to be preserved in the main 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 ﬁnal 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 4.1 Performance with simulations

Original: 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, we simulate several conditions of changing functions, including functions with slow or rapid monotonic changes, 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), see details in Appendix D).

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: Speciﬁcally, the function’s ﬁrst parameter for conditions 1 - 4 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; (2) h 2 t = 1 .
Revised: (1) h 2 t = 7 E-4 t − 1 . 9; (2) h 2 t = 1 .

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

Original: 8 E-3 t + 3 . 4;(4) h 2 t = − 3 .
Revised: 8 E-3 t + 3 . 4; (4) h 2 t = − 3 .

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

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]

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 ﬁrst 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 EvoEnsemble estimated (yellow lines) function’s parameters h 2 t compared with EvoEnsemble without DE-based model 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 functions closely over time for all ﬁve 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 functional changes 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 follow changes of the true function h t with the model evolution process, such that the dynamic estimation of h 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 likelihood of 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 the neural data with different changes, suggesting that EvoEnsemble can effectively capture the changing functions 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 different criteria of correlation coefﬁcient (CC), root mean squared error (RMSE), and determination of coefﬁcients (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 performance decreases gradually as the function changes, and the R 2 decrease to 0.552, 0, 0.187, 0, and 0.896 with the ﬁve 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 are 0.975, 0.759, 0.970, 0.764, and 0.986 for the ﬁve conditions, respectively.

Original: Fig.
Revised: Fig.

Original: 2 (e) further comparethe state estimation performance with different neural decoders.
Revised: 2 (e) further compare the 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 the superior performance with all the conditions, with stable high R 2 , CC and low RMSE.

Original: Specifically,
Revised: Speciﬁcally,

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 ﬁve conditions, which are 12.6%, 105.2%, 1.7%, 155.0%, and 4.7% higher than Kalman ﬁlters (see details in Appendix E).

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 estimation with time-varying functions, and demonstrate that EvoEnsemble can track the changing functions effectively 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 efﬁciency and accuracy: frequently updating the model pool helps track the changes in functions more precisely while requiring more computational 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 model updating 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 state estimation R 2 with ﬁve 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 proposed strategy, 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 efﬁciency 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 the inﬂuence 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: Results demonstrate 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 improve the 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 the maximum log-likelihoods of the models from the historical model pool (blue bars) and the current model pool (red bars) after every update in condition 3, where a non-monotonic functional change is involved (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 function gradually deviates from the initial, models in the current model pool gradually take the dominant part 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 where the 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: We further evaluate the decoding performance of R 2 with different history preserve ratio r pre . Fig.(d)

Original: Fig. 3(d) (above) shows that the history-model-archive strategy improves the decoding performance in allfive conditions.
Revised: (above) shows that the history-model-archive strategy improves the decoding performance in all ﬁve 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 inﬂuence of history preserve ratio ( r pre ) parameter in the history-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 macaque monkey (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 [23] where the monkeys were 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: Neural spike 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 we select 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 a discrete 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 experimental procedures 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 a center-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-impedance assistant training blocks similar to [24], where the ortho-impedance assistance ratios of the three blocks 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 where no 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 the sixth 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/ were 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/ is 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 all the datasets.

Original: Compared with the static decoders such as the Kalman filter, EvoEnsemble obtains
Revised: Compared with the static decoders such as the Kalman ﬁlter, 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 ﬁlter.

Original: The improvement is most significant in the
Revised: The improvement is most signiﬁcant 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 the closed-loop BCI control process may lead to frequent functional changes in neural signals (as shown in 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 particle ﬁlters (PF) and Kalman ﬁlters, 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 [20] where the neural decoder dynamically adjusts along with changes in neural signals, the performance increases to 0.513, 0.485, and 0. for 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 performance is 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 EvoEnsemble further improves the performance by 6.6% and 15.7% on Data P1/2 with the functional tracking ability.

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 ﬁlter (recalib), DyEnsemble and EvoEnsemble obtain higher 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 ﬁlter (recalib) recalibrates the neural decoder every 20 time slots to cope with changes in neural functions [16]; and DyEnsemble increases the model pool with two strategies of connection dropout and weight perturbation [20].

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: Compared with the Kalman ﬁlter (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.

Original: The results demonstrate the superior ability of
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 tracking performance 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 subﬁgure, the red line indicates the function parameter computed in every temporal time slot given neural signals and the true movement trajectories, which we regard as the ground truth of the parameter [Table] over 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 is limited with a ﬁxed 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 functional changes in a certain range, and face difﬁculties 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 other hand, the EvoEnsemble model can closely follow the changes in the parameters over time, such that it 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 neural decoding under functional changes in neural signals.

Original: It incorporates evolutionary computation ina Bayesian filter framework which enables the temporal evolution of neural decoder driven by themodel likelihood given incoming neural signals.
Revised: It incorporates evolutionary computation in a Bayesian ﬁlter framework which enables the temporal evolution of neural decoder driven by the model 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 neural signals strongly demonstrate the necessity and importance of the functional tracking for robust state estimation 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 effectively with 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 efﬁciency of the evolution process, since it requires 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 on improving the efﬁciency 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 beneﬁcial to a wide range of problems in the nonstationary signal processing area.  Acknowledgment

Revised: This work was partly supported by the grants from National Key R&D Program of China (2018YFA0701400), Key R&D Program of Zhejiang (2022C03011), Natural Science Foundation of

Revised: China (61906166, U1909202, 61925603), the Fundamental Research Funds for the Central Universities, the Starry Night Science Fund of Zhejiang University Shanghai Institute for Advanced Study (SN-ZJU-SIAS-002) and the Lingang Laboratory (LG-QS-202202-04).

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 on how 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 justiﬁcation to your answer , either by referencing the 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 proprietary.
Revised: [No] The code and the data are 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 instructions block and only keep the Checklist section heading above along with the questions/answers below.

Original: For all authors... (a) Do the main claims made in the abstract and introduction accurately reflect the paper’s contributions and scope?
Revised: For all authors... (a) Do the main claims made in the abstract and introduction accurately reﬂect 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] We believe our work is relevant to basic decoding algorithm design and we do not forsee any negative impact rather positive one.
Revised: [N/A] We believe our work is relevant to basic decoding algorithm design and we do not forsee any negative impact rather positive one.

Original: Our work can help people with tetraplegia control the external devices more stably.
Revised: Our work can help people with tetraplegia 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 to them?

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

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

Original: [N/A](b) Did you include complete proofs of all theoretical results?
Revised: [N/A] (b) Did you include complete proofs of all theoretical results?

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

Original: If you ran experiments... (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: If you ran experiments... (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 the simulation 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 they were 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. [-
-] and Table
Revised: 2, Fig. [-
-]4 and Table(d)

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: Did you include the total amount of compute and the type of resources used (e.g., type of 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... (a) If your work uses existing assets, did you cite the creators?
Revised: If you are using existing assets (e.g., code, data, models) or curating/releasing new assets... (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] (c) Did you include any new assets either in the supplemental material or as a URL?
Revised: [N/A] (c) Did you include any new assets either in the supplemental material or as a URL?

Original: [N/A] (d) Did you discuss whether and how consent was obtained from people whose data you’re using/curating?
Revised: [N/A] (d) Did you discuss whether and how consent was obtained from people whose data you’re 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 information or offensive content?
Revised: (e) Did you discuss whether the data you are using/curating contains personally identiﬁable 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... (a) Did you include the full text of instructions given to participants and screenshots, if applicable?
Revised: If you used crowdsourcing or conducted research with human subjects... (a) Did you include the full text of instructions given to participants and screenshots, if applicable?

Original: [N/A] (b) Did you describe any potential participant risks, with links to Institutional Review Board (IRB) approvals, if applicable?
Revised: [N/A] (b) Did you describe any potential participant risks, with links to Institutional Review Board (IRB) approvals, if applicable?

Original: [N/A] (c) Did you include the estimated hourly wage paid to participants and the total amount spent on participant compensation?
Revised: [N/A] (c) Did you include the estimated hourly wage paid to participants and the total amount spent on participant compensation?

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