Abstract
The study of various living complex systems by system identification method is important, and the identification of the problem is even more challenging when dealing with a dynamic nonlinear system of discrete time. A well-established model based on kernel functions for input of the maximum length sequence (m-sequence) can be used to estimate nonlinear binary kernel slices using cross-correlation method. In this study, we examine the relevant mathematical properties of kernel slices, particularly their shift-and-product property and overlap distortion problem caused by the irregular shifting of the estimated kernel slices in the cross-correlation function between the input m-sequence and the system output. We then derive the properties of the inverse repeat (IR) m-sequence and propose a method of using IR m-sequence as an input to separately estimate odd- and even-order kernel slices to reduce the chance of kernel-slice overlapping. An instance of third-order Wiener nonlinear model is simulated to justify the proposed method.
1. Introduction
Living systems usually exhibit complex and nonlinear behaviors [1–3], which can be characterized by a mathematical model carefully tuned to represent the relationship between the input and output data. A linear system is capable of determining the input and output relationships through an impulse response function; however, for a nonlinear system, a higher order transfer function has to be used for this purpose. A nonlinear system can be typically modeled by Volterra or an equivalent Wiener series expansion, in which the Volterra or Wiener kernels to be estimated can fully define the system characteristics [4–6].
The kernel estimation for such nonlinear system usually requires the input signal to be a long Gaussian white noise to completely activate the underlying system. Under such conditions, Lee and Schetzen proposed a convenient cross-correlation method widely used to estimate the kernel functions [7, 8].
In several circumstances, particularly for a variety of living biosystems, input signals are constrained as a series of impulse trains instead of continuous signals, such as the Gaussian white noise [9, 10]. For instance, the auditory system is usually studied by stimulating the ear with a series of click sounds to activate the corresponding neurons in the cochlea and neural pathway to evaluate the hearing integrity [11, 12]. A well-studied impulse train for the input is a pseudorandom binary sequence called maximum length sequence (short for m-sequence), which has an important role in nonlinear system identification. The correlation property of an m-sequence is analogous to a Gaussian white noise such that to model the system by borrowing the idea of the cross-correlation method for Gaussian white noise input is possible. Hence, the binary kernels are defined using cross-correlation method for m-sequence inputs [3, 13–18].
Using the m-sequence approach, Sutter studied the binary kernel for identifying multifocal retinosystem through electroretinography and explained the visual function using the binary kernels [15]. Shi and Hecox transferred the m-sequence into an m-impulse sequence in a study on the nonlinear properties of the auditory system by measuring the electrical response from the scalp [16]. In a study on the dynamic characteristics of the primate retinal ganglion cell, Benardete and Victor developed a hybrid m-sequence allowing the summation of multiple m-sequences as input to estimate the main diagnostic kernel slice [17].
However, the binary kernel slices—derived by making use of the shift-and-product property of the m-sequence—are all laid in the first-order cross-correlation function between the m-sequence input and the system response, that is, the observed output. The specific location of any kernel slice in the cross-correlation function is determined through a complex shift function that cannot be explicitly determined. If the kernel slices are improperly arranged such that overlaps among neighboring slices occur, then the kernel estimation is inevitably distorted. A straightforward approach to solve this problem is to multiply the length of the input m-sequence, which is unfavorable for living systems with more or less time-varying property. Another approach to alleviate the overlap issue is to sparsify the impulse train of the m-sequence at risk of suffering the underestimation caused by the reduced number of available kernel slices [18].
In this study, we addressed the overlap problem through a new strategy using an inverse-repeat (IR) m-sequence. We will drive the estimation equations for the binary kernel slices corresponding to the IR m-sequence, through which the odd- and even-order kernel slices can be separately estimated and thus reduce the chance of slice overlapping. Last, a third-order nonlinear system is simulated to demonstrate the process of the proposed method.
2. Binary Kernel Identification for m-Sequence
2.1. The Properties of an m-Sequence
An m-sequence b[n] consisting of digit −1 and +1 that pseudorandomly occurred can be generated through the output of a linear circular shift register. The structure of which is determined through a primitive polynomial of degree r, which is also the degree of the periodical m-sequence [19, 20]. And the period or length of the m-sequence is L = 2r − 1. An m-sequence is called a balanced sequence because the number of −1 is 2r−1, which is just one more than the number of +1, that is, 2r−1 − 1. Two crucial properties of the m-sequence used in the present study are as follows.
(i) Shift-and-product property
| (1) |
where f p = f(j 1,…, j p−1) is referred to as shift function representing the circular shift lag of the m-sequence b[n]. The exact value of a shift function depends on the shifting lags of the m-sequences to be multiplied. This property indicates that the product of the m-sequences with different circular shifts is also the same m-sequence circular shifting to a lag determined by a shift function f p that is unknown a priori. A straightforward approach to calculate the specific value of a shift function is to compare bit-by-bit the original m-sequence b[n] and the resulting k-bit shifting version b[n − k] until b[n] = b[n − k], such that f p = k.
For j 1 = ⋯ = j p−1 = 0, that is, the product of the same j m-sequences, it yields
| (2) |
where {1} denotes an all-one sequence—all members of the sequence are 1s.
Equation (2) provides an exception for the shift-and-product property that an all-one sequence instead of an m-sequence is produced under a certain condition when multiplying the same m-sequences. When more than two different m-sequences are multiplied, we have another exception for the shift-and-product property:
| (3) |
Equation (3) implies that when dealing with higher-order kernels (p ≥ 3), the m-sequence should be selected with caution in case invalid results occur for the kernel estimation.
(ii) The autocorrelation function ϕ bb[n] is a periodical real value function with the same minimal period of L; that is,
| (4) |
In analogy to the Gaussian white noise method, this autocorrelation property of (4) is important to account for the derivation of the m-sequence in identifying a nonlinear system.
2.2. From Volterra Kernels to Binary Kernels
The output y[n] of a general Qth-order nonlinear dynamic system in response to the input b[n] can be modeled by a Volterra series expansion [5, 21],
| (5) |
where ℋp is called the pth-order Volterra operator which is defined as
| (6) |
where M represents the memory length of the dynamic system, and h p represents the pth-order Volterra kernel.
To estimate the Volterra kernel for Gaussian white noise, input is not theoretically feasible for the difficulty of nonorthogonality. Instead, it is preferred to estimate the Wiener kernel after the Gram-Schmidt orthogonal process on the Volterra series expansion [21]. This method can be extended to deal with m-sequence input yielding the so-called binary kernel estimation [13, 16]. A pth-order binary kernel is given by
| (7) |
where the pth-order cross-correlation of input b[n] and output y[n] is
| (8) |
Let k = k 1 and l i = k i+1 − k i, and then (7) and (8) become
| (9) |
| (10) |
According to the shift-and-product property, (10) becomes
| (11) |
which transfers the multivariable correlation function ϕ bpy[k, k + l 1,…, k + l 1 + ⋯+l p−1] into a single variable cross-correlation function ϕ by[k + f p]. Substituting (11) to (9) yields
| (12) |
Given l 1, l 1,…, l p−1, (12) presents a portion of the kernel function values along the diagonal and subdiagonal dimensions and is called binary kernel slice. Considering the confinement for the independent variables for w p, the kernel slice is probably unable to completely cover the true binary kernel along this dimension. Given the memory length similar to (6), all variables for pth-order kernel slice must be in the range of the memory length M; hence,
| (13) |
suggesting that w p is defined through the cross-correlation function ϕ by between f p and f p + (M − l 1 − ⋯−l p−1). Therefore, if the shift functions of two neighboring slices satisfy
| (14) |
that is, the interval between an arbitrary kernel slice of order s and another kernel slice of order q is less than the length of the prior slice, then a slice overlap occurs. The kernel slices overlapping condition is illustrated in Figure 1.
Figure 1.

Illustration of overlapping condition for two arbitrary kernel slices. A piece of cross-correlation function contains qth- and sth-order kernel slices, that is, w s and w q, respectively. Corresponding shift functions f q and f s designate the beginnings of kernel slices. The duration of w q is dependent on memory length M and sum of shift lags (l 1 + ⋯+l q−1). According to (14), nonoverlap and overlap cases are presented in (a) and (b), respectively.
3. Estimate Binary Kernel Slices Using IR m-Sequence
3.1. The Properties of IR m-Sequence
The IR m-sequence of an m-sequence b[n] is defined as
| (15) |
where u[n] = {(−1)n} is a square wave-like function with alternates 1 and −1. Several useful properties of an IR m-sequence are given as follows [22, 23].
(i) The minimal period of a[n] is twice as that of b[n], and a[n] satisfies the inverse repeatability, that is,
| (16) |
(ii) The output y[n] of a nonlinear system in response to the input a[n] can also be modeled by Volterra series expansion. If we dichotomize y[n] into an odd-order response y o[n] = ∑ℋp b[n], p = odd, and even-order response y e[n] = ∑ℋp b[n], p is even, they satisfy,
| (17) |
(iii) The cross-correlation function of a[n] and b[n] is zero, that is,
| (18) |
(iv) The autocorrelation of a[n] is
| (19) |
If the minimal period of the m-sequence L is odd, then ϕ aa[n] = −ϕ aa[n + L]; that is, ϕ aa[n] is also inversely repeated. The proof of property (iv) is given in Appendix A.
(v) IR m-sequence a[n] also has the following shift-and-product property,
| (20) |
The proof of property (v) can be found in Appendix B. In reference to Volterra series expansion for a nonlinear system, this property for an IR m-sequence implies that the higher-order Volterra operators can be separated into odd- and even-order cases.
3.2. Odd- and Even-Order Kernel Slices for IR m-Sequences
Based on the above properties of the IR m-sequences, we can derive the binary kernel slices in response to an IR m-sequence. Let a[n] be the input of the system, and then the output of the Qth-order nonlinear system expressed in terms of Volterra series expansion is
| (21) |
Again, let k = k 1 and l i = k i+1 − k i, and, using IR m-sequence property (v), the Volterra operator on the input a[n] becomes
| (22) |
Exploiting (20) for the property (v) of the IR m-sequences, we can derive that the cross-correlation function between the m-sequences b[n] and odd-order Volterra series term ℋp a[n], (p = odd), is zero and that the cross-correlation function between IR m-sequences a[n] and even-order Volterra series term ℋp a[n] (p = even) is also zero; that is,
| (23) |
The proof for (23) is given in Appendix C.
We can derive the pth-order cross-correlation for IR m-sequence input a[n] with the same approach as that of getting (7)–(12) to give the expression of the pth-order kernel slices as
| (24) |
where, according to the definition of cross-correlation function, the right side member is
| (25) |
By exploiting the property (v) of an IR m-sequence {a[n]}, (25) can be separately formulated for p being odd and even,
| (26) |
Therefore, (24) becomes
| (27) |
Equation (27) indicates that the kernel slices of odd-order exist exclusively in the cross-correlation function between the IR m-sequence a[n] and output y[n], and likewise, kernel slices of even-order exist exclusively in the cross-correlation function between the m-sequence b[n] and output y[n].
According to (21), which expresses the output y[n] in terms of Volterra series expansion, we can rewrite the left-side member of (27) as ϕ ay[n] = ϕ aℋ0[n] + ϕ aℋ1[n]+⋯+ϕ aℋQ[n]. Moreover, (23) does not state even-order ϕ aℋi in the odd-order ϕ ay[n], or the even-order Volterra kernels are also excluded from the odd-order binary kernel slices. The similar argument can be obtained for the case of even-order binary kernel slices.
4. Simulation Results and Discussion
4.1. Nonlinear Wiener Model Generation
A general nonlinear dynamic system can be represented by a Wiener model consisting of two subsystems in cascade form [24]. This system consists of a dynamic linear subsystem g[n] followed by a static nonlinear subsystem m[·], as shown in Figure 2. The output of the dynamic subsystem g[·] is
| (28) |
where M represents the memory length of the system.
Figure 2.

Weiner model representing a general nonlinear dynamic system in cascade form.
For simplicity, we simulate a three-order nonlinear system expressed in the second module m[·]. Then, the output is
| (29) |
Therefore, the output of the whole nonlinear system is expressed as a high-order convolution of the input and the Volterra kernels as
| (30) |
From (3), the following relationships between Volterra kernels and the parameter model hold
| (31) |
Let k = k 1, l 1 = k 2 − k 1, and l 2 = k 3 − k 2, and then the binary kernel slices can be associated with the Volterra kernel for this model [12] which is
| (32) |
In the present study, the memory length M = 10, impulse response function g[n] = e −n/2 · sin(2πn/5), and the third-order polynomial coefficients a 0 = 0, a 1 = 1.4, a 2 = 5, and a 3 = 10 are set.
We assume that S represents the total length of all the kernel slices spread along the cross-correlation function, as illustrated in Figure 1. To avoid the overlap among these slices, at least the length of the cross-correlation function, L ( = 2r − 1), should be larger than S, indicating that the degree of the m-sequence should satisfy the condition,
| (33) |
where ⌊(·)⌋ denotes the integer part of (·).
According to (13), the shift lags are set to start with minimal values min(l i) = 1, and we can obtain the total slice length for this three-order nonlinear system as S = 175 for M = 10, and the degree of the m-sequence should be r ≥ 8 to avoid the slice overlap.
4.2. Comparison of m- and IR m-Sequence Inputs
We select an arbitrary eight-degree m-sequence in this identification instance. Figure 3 shows the binary input m-sequence b[n], output signal y[n], and cross-correlation ϕ by[n]. The estimated kernel slices are plotted in solid trace superimposed on the cross-correlation signal (in dashed trace). The red trace segments indicate the occurrence of slice overlaps. According to the overlap condition defined in (14), a total of 10 overlaps occurred in the cross-correlation function.
Figure 3.

Estimation process of kernel slices in cross-correlation function between m-sequence input and output from nonlinear system in the present study.
The kernel slices estimated for the IR m-sequence input a[n] are shown in Figure 4. The odd- and even-order kernel slices are separated into two traces of the cross-correlation, as indicated in (27). All slices are notably separated without any overlap.
Figure 4.

Odd- and even-order kernel slices separately displayed in two cross-correlation functions for IR m-sequence method.
The distortion severity due to overlapping does not display in Figure 3 without the true kernels. Therefore, we extract and compare the estimated and the true kernel slices for the second- and third-order systems in Figures 5 and 6, respectively. These are two-dimensional illustration, where the kernel slices with different lags are plotted by projecting them to the main-diagonal direction of that order. Notably, the length of the kernel slices decreases with increasing values of shift lags. The kernel slices with the length less than four data samples were excluded in Figures 5 and 6 for less practical significance.
Figure 5.

Second-order kernel slices extracted from cross-correlation function. True values are also plotted in black traces with circle markers, and estimated kernel slices are plotted in red and blue traces for m- and IR m-sequence methods, respectively.
Figure 6.
Third-order kernel slices extracted from cross-correlation functions. True kernel slices are plotted in black traces with circle markers, and estimated kernel slice values are plotted in red and blue traces for m- and IR m-sequence methods.
Six second-order kernel slices estimated by the m-sequence (in read traces) and proposed IR m-sequence (in blue traces) methods are shown in Figure 5. The true or theoretical kernel slices are also given as a benchmark. Four kernel slices determined using the m-sequence evidently deviated from the true values; however, no such distortion was observed for IR m-sequence method.
A series of third-order kernel slices are shown in Figure 6. Similar to Figure 5, IR m-sequence method shows more consistent results with the true values. However, the third-order kernel slices for l 1 = 4 show a slightly opposite behavior that needs to be accounted for, because no overlap occurs at these affected kernel slices. This inconsistency is only observable at a significantly small scale (see the amplitude scales in Figure 6) caused by approximating the orthogonality of the IR m-sequence and has no appreciable effects upon practical application. Alternatively, increasing the length of the m-sequence will alleviate this problem. Further analysis of this intrinsic property is beyond the scope of the present study and more details can be found in [25, 26].
5. Conclusion
The shift-and-product property of the m- and IR m-sequence is crucial in the derivation of new properties to address the overlap problem for short-length m-sequence. It is apparently not beneficial to use a redundantly higher order m-sequence or to sacrifice the number of the estimated slices using sparse m-sequence. In this study, we alternatively propose an approach by introducing the IR m-sequence. We provide and prove several relevant properties of the IR m-sequence allowing the estimation of the binary kernel slices. By examining the special shift-and-product properties of the IR m-sequence derived for odd and even shifts, the odd- and even-order kernel slices can be separately represented in the cross-correlation functions, such that the chance of overlapping significantly decreases. Furthermore, this separation will be useful in some special applications where only odd- or even-order kernel slices might be of significant interest.
Acknowledgments
This work was supported by the National Natural Science Foundation of China (no. 61172033 and no. 61271154). The authors would like to thank the reviewers for their valuable comments and contributions to the improvement of this work.
Appendices
A. The Proof of (19)
Given an IR m-sequence a[n], using (15) which relates it to the corresponding m-sequence b[n], we have the autocorrelation function
| (A.1) |
Since b[n] and u[n] are uncorrelated, (A.1) becomes
| (A.2) |
Since u[n] = {(−1)n}, it is easy to get that ϕ uu[n] = u[n] = {(−1)n}, and then (19) is proved.
B. The Proof of (20)
According to the relationship between a[n] and b[n] in (15), and the shift-and-product property in (1), the shift-and-product of a[n] becomes
| (B.1) |
Since u[n] = {(−1)n}, n = 0,1,…, 2L − 1, we get
| (B.2) |
Equation (B.1) is rewritten as
| (B.3) |
Because the relationship between u[n] and its circular shift to k lag is u[n] = (−1)k u[n − k], then the left-side member of (B.3) for odd number p becomes
| (B.4) |
C. The Proof of (23)
According to the shift-and-product property of IR m-sequence in (20), the pth-order Volterra series term becomes
| (C.1) |
If p is odd, the cross-correlation between ℋp a[n] and b[n] is
| (C.2) |
If p is even, by the similar process, the cross-correlation between ℋp a[n] and a[n] is
| (C.3) |
According to the property (iii) of IR m-sequence in (18) which tells that the cross-correlation between a[n] and b[n] is zero, we can get that both (C.2) and (C.3) are zero. Equation (23) is thus proved.
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
References
- 1.Z V. Nonlinear Dynamic Modeling of Physiological Systems. Hoboken, NJ, USA: Wiley-IEEE Press; 2004. [Google Scholar]
- 2.Pinter R. B., Nabet B. Nonlinear Vision: Determination of Neural Receptive Fields, Function, and Networks. Boca Raton, Fla, USA: CRC Press; 1992. [Google Scholar]
- 3.Lavoie B. A., Mehta R., Thornton A. R. D. Linear and nonlinear changes in the auditory brainstem response of aging humans. Clinical Neurophysiology. 2008;119(4):772–785. doi: 10.1016/j.clinph.2007.12.004. [DOI] [PubMed] [Google Scholar]
- 4.Wu M. C.-K., David S. V., Gallant J. L. Complete functional characterization of sensory neurons by system identification. Annual Review of Neuroscience. 2006;29:477–505. doi: 10.1146/annurev.neuro.29.051605.113024. [DOI] [PubMed] [Google Scholar]
- 5.Franz M. O., Schölkopf B. A unifying view of Wiener and Volterra theory and polynomial kernel regression. Neural Computation. 2006;18(12):3097–3118. doi: 10.1162/neco.2006.18.12.3097. [DOI] [PubMed] [Google Scholar]
- 6.Eggermont J. J. Wiener and Volterra analyses applied to the auditory system. Hearing Research. 1993;66(2):177–201. doi: 10.1016/0378-5955(93)90139-R. [DOI] [PubMed] [Google Scholar]
- 7.Lee Y. W., Schetzen M. Measurement of the Wiener kernels of a non-linear system by cross-correlation. International Journal of Control. 1965;2(3):237–254. [Google Scholar]
- 8.Orcioni S., Pirani M., Turchetti C. Advances in Lee-Schetzen method for Volterra filter identification. Multidimensional Systems and Signal Processing. 2005;16(3):265–284. doi: 10.1007/s11045-004-1677-7. [DOI] [Google Scholar]
- 9.Marmarelis V. Z., Berger T. W. General methodology for nonlinear modeling of neural systems with Poisson point-process inputs. Mathematical Biosciences. 2005;196(1):1–13. doi: 10.1016/j.mbs.2005.04.002. [DOI] [PubMed] [Google Scholar]
- 10.Kolokotronis N., Gatt G., Kalouptsidis N. On the generation of sequences simulating higher order white noise for system identification. Signal Processing. 2004;84(5):833–852. doi: 10.1016/j.sigpro.2004.01.003. [DOI] [Google Scholar]
- 11.Burkard R. F., Don M., Eggermont J. J. Auditory Evoked Potentials: Basic Principles and Clinical Application. Philadelphia, Pa, USA: Lippincott Williams & Wilkins; 2007. [Google Scholar]
- 12.Baldwin M., Watkin P. Predicting the degree of hearing loss using click auditory brainstem response in babies referred from newborn hearing screening. Ear and Hearing. 2013;34(3):361–369. doi: 10.1097/AUD.0b013e3182728b88. [DOI] [PubMed] [Google Scholar]
- 13.Sutter E. E. A practical nonstochastic approach to nonlinear time-domain analysis. In: Marmarelis V. Z., editor. Advanced Methods of Physiological Systems Modeling. Los Angeles, Calif, USA: University of Southern California; 1987. pp. 303–315. [Google Scholar]
- 14.Lineton B., Kuponiyi O., Thornton A. R. D. The effect of stimulus rate and time-separation on Volterra slices of otoacoustic emissions. Hearing Research. 2008;239(1-2):34–53. doi: 10.1016/j.heares.2008.01.006. [DOI] [PubMed] [Google Scholar]
- 15.Sutter E. E. Imaging visual function with the multifocal m-sequence technique. Vision Research. 2001;41(10-11):1241–1255. doi: 10.1016/S0042-6989(01)00078-5. [DOI] [PubMed] [Google Scholar]
- 16.Shi Y., Hecox K. E. Nonlinear system identification by m-pulse sequences: application to brainstem auditory evoked responses. IEEE Transactions on Biomedical Engineering. 1991;38(9):834–845. doi: 10.1109/10.83603. [DOI] [PubMed] [Google Scholar]
- 17.Benardete E. A., Victor J. D. An extension of the m-sequence technique for the analysis of multi-input nonlinear systems. In: Vasilis Z., Marmarelis Z., editors. Advanced Methods of Physiological System Modeling. Berlin, Germany: Springer; 1994. pp. 87–110. [Google Scholar]
- 18.Chen H.-W., Aine C. J., Best E., et al. Nonlinear analysis of biological systems using short M-sequences and sparse-stimulation techniques. Annals of Biomedical Engineering. 1996;24(4):513–536. doi: 10.1007/BF02648113. [DOI] [PubMed] [Google Scholar]
- 19.Tan A. H., Godfrey K. R. The generation of binary and near-binary pseudorandom signals: an overview. IEEE Transactions on Instrumentation and Measurement. 2002;51(4):583–588. doi: 10.1109/TIM.2002.802243. [DOI] [Google Scholar]
- 20.Mitra A. On the construction of M-sequences via primitive polynomials with a fast identification method. International Journal of Computer Science. 2008;3(3):158–163. [Google Scholar]
- 21.Schetzen M. Nonlinear system modeling based on the Wiener theory. Proceedings of the IEEE. 1981;69(12):1557–1573. doi: 10.1109/PROC.1981.12201. [DOI] [Google Scholar]
- 22.Srinivasan R., Rengaswamy R. Use of inverse repeat sequence (IRS) for identification in chemical process systems. Industrial and Engineering Chemistry Research. 1999;38(9):3420–3429. doi: 10.1021/ie980761z. [DOI] [Google Scholar]
- 23.Stan G.-B., Embrechts J. J., Archambeau D. Comparison of different impulse response measurement techniques. Journal of the Audio Engineering Society. 2002;50(4):249–262. [Google Scholar]
- 24.Giri F., Bai E. W. Block-Oriented Nonlinear System Identification. Berlin, Germany: Springer; 2010. [DOI] [Google Scholar]
- 25.Yen-Jone Z. Inverse-repeat m sequence and system identification. Automatica Sinica. 1979;5(2):107–115. [Google Scholar]
- 26.Ream N. Nonlinear identification using inverse-repeat m sequences. Proceedings of the Institution of Electrical Engineers. 1970;117(1):213–218. doi: 10.1049/piee.1970.0048. [DOI] [Google Scholar]

