Skip to main content
Advertisement
Browse Subject Areas
?

Click through the PLOS taxonomy to find articles in your field.

For more information about PLOS Subject Areas, click here.

  • Loading metrics

Gridding discretization-based multiple stability switching delay search algorithm: The movement of a human being on a controlled swaying bow

  • Libor Pekař ,

    pekar@fai.utb.cz

    Affiliation Department of Automation and Control Engineering, Faculty of Applied Informatics, Tomas Bata University in Zlín, Zlín, Czech Republic

  • Radek Matušů ,

    Contributed equally to this work with: Radek Matušů, Roman Prokop

    Affiliation Regional Research Centre CEBIA-Tech, Faculty of Applied Informatics, Tomas Bata University in Zlín, Zlín, Czech Republic

  • Roman Prokop

    Contributed equally to this work with: Radek Matušů, Roman Prokop

    Affiliation Department of Mathematics, Faculty of Applied Informatics, Tomas Bata University in Zlín, Zlín, Czech Republic

Abstract

Delay represents a significant phenomenon in the dynamics of many human-related systems—including biological ones. It has i.a. a decisive impact on system stability, and the study of this influence is often mathematically demanding. This paper presents a computationally simple numerical gridding algorithm for the determination of stability margin delay values in multiple-delay linear systems. The characteristic quasi-polynomial—the roots of which decide about stability—is subjected to iterative discretization by means of pre-warped bilinear transformation. Then, a linear and a quadratic interpolation are applied to obtain the associated characteristic polynomial with integer powers. The roots of the associated characteristic polynomial are closely related to the estimation of roots of the original characteristic quasi-polynomial which agrees with the system′s eigenvalues. Since the stability border is crossed by the leading one, the switching root locus is enhanced using the Regula Falsi interpolation method. Our methodology is implemented on—and verified by—a numerical bio-cybernetic example of the stabilization of a human-being′s movement on a controlled swaying bow. The advantage of the proposed novel algorithm lies in the possibility of the rapid computation of polynomial zeros by means of standard programs for technical computing; in the low level of mathematical knowledge required; and, in the sufficiently high precision of the roots loci estimation. The relationship to the direct search QuasiPolynomial (mapping) Rootfinder algorithm and computational complexity are discussed as well. This algorithm is also applicable for systems with non-commensurate delays.

Introduction

The stability of Time Delay Systems (TDS) has been a challenging and intensively studied research topic over the past few decades [14]. It is, i.a., given by the fact that delay appears widely in many real-world systems—e.g. networked, mechanical, electrical, social, economical, etc. [57]. Moreover, delay can act as a factor that causes performance degradation and system instability; hence, the latencies and the after-effect phenomena should be considered in the models. Biological systems and human-body models are not unaffected; for instance, a robust estimator of neuronal interaction delays was proposed in [8]; the stabilization mechanism of unstable human quietstanding and motion was studied in [911]—where delays are, however, only marginally considered. The human nervous system with reflex delay can also be viewed as the cause of traffic jams [12]. Robust compensation of instability caused by delays for a human standing still was proposed by Asai, et al. [13]. Apart from the above-mentioned habitual studies that take fixed delay values into account; from the robustness point-of-view, it was desirable to also perform research on the influence of particular delay values on stability. This task gives rise to the notion of Delay Dependent Stability—(DDS), which means that the system remains stable in a finite set of delay intervals while taking into consideration fixed or variable system parameters.

Two basic families of DDS methods for computing the delay stability margins are paramount in the literature; namely, Time-domain Indirect and Frequency-domain Direct methods. The former group is based on the Lyapunov-Krasovskii or Lyapunov-Razumikhin approaches, and linear matrix inequalities [1417]; the Jensen inequality approach [18]; semi-definite programming methods [19]; or the descriptor system approach [20,21]. Such methods suffer from significant computational burdens and provide purely theoretical—and rather conservative results [22]. However, they can deal with both constant and time-varying delays and are even applicable to non-linear systems in most cases. To highlight some important results regarding time-varying delay systems, the maximal allowed upper bounds of multiple time-varying delays expressed in terms of several linear matrix inequalities (LMIs) were investigated e.g. in [23,24]. In [25,26], these bounds were derived from feasible LMIs by employing MATLAB® LMI Toolbox [27] to reach average consensus asymptotically; moreover, the rate of convergence was estimated. Compared to the presented paper, these methods provide only the upper bound, the given inequalities are obtained analytically and they are more mathematically involved; however, the domain of time-varying delays provides more general results. The latter family of frequency domain methods—usually better implementable and applicable—includes approaches based on various ideas, see e.g. [28] for their listing. Namely, from the historical point of view, methods based on the Rekasius substitution, giving rise to a delay-free Associated Characteristic Polynomial (ACP), constitute the group worthy of the highest research interest within this family [2931]. An interesting solution can be obtained via the argument principle [32]. Besides this, Schur-Cohn methods [3,33]—or those eliminating exponential (delay) terms from the Characteristic QuasiPolynomial (CQP) due to its symmetry [28,34]—have also attracted great attention from the control scientific community. The crucial step of these procedures rests in the determination of all characteristic roots (system poles), i.e. the characteristic quasipolynomial zeros located exactly on the imaginary axis—which expresses the stability margin. However, only the rightmost subset of poles makes the system switch from/to stability/instability, respectively. Hence, let the corresponding delays be called switching delays. The necessary condition for the existence of roots crossing the imaginary axis is that the so-called root tendency is nonzero [30,34]. The frequency-domain direct methods, which are of a low—or even none conservatism and computationally acceptable in many cases, were successfully applied to investigate the stability of communications [28], power [35], electromechanical [36], logistic [37]; and many other systems with constant time delay. Note, however, that they cannot be directly applied to nonlinear TDS, or those with time-varying delays.

In spite of all the favorable features introduced above, a significant disadvantage of many frequency-domain direct methods is that they are only applicable to systems (or models) with commensurate delays where the higher order of commensuracy yields the higher complexity of the analytically derived relations [6]. Motivated by the above deficiency—and also by the endeavor to use easily-accessible standard programs for technical computing (e.g. MATLAB®) by engineers and practitioners, this paper focuses on deriving a computationally simple—yet sufficiently rapid and accurate gridding algorithm for searching for delay margins in both commensurate and non-commensurate TDS with an arbitrary number of independent constant delays. Although the method is not derived analytically in terms of exact analytic formulas, but rather, in a numerical way, the techniques used enable one to retain a very low conservatism level and to reach a high degree of precision; i.e., a discrete time reformulation of the CQP by means of the iterative use of the bilinear transformation with pre-warping [38], followed by the utilization of linear interpolation to obtain the integer-powered ACP, means that the zeros can easily be computed. In addition, a linear, Regula Falsi (RF), interpolation concept is then used for the eventual switching delay estimation.

In this contribution, the designed algorithm is applied to the stability delay margin analysis of a control system with a human on a swaying bow [39]. The skater balances on a hemispheric base and remotely steers the power input to the servo that causes the angle deviation from the bow horizontal position; and consequently, the angle between the skater and the bow symmetry axis is the controlled system output. For fixed controller parameters’ values, switching delays decide about the marginal balance values that cause stability/instability feedback behavior. The model is specified, i.a., by the fact that the delay-free feedback system is unstable—which indicates that the delay margins have upper and lower bounds. Moreover, the unstable controlled plan includes two independent delays that can generally be viewed as non-commensurate ones. Note that a problem of stabilizing the skater moving on a skateboard affected by reflex delay (with a different model of the dynamics) was recently solved in [40].

The efficiency and asymptotical complexity of the proposed algorithm is benchmarked against the possibility of seeking out switching delays by using the direct QuasiPolynomial mapping Rootfinder (QPmR) algorithm [4143] that proved to be suitable for finding the quasipolynomial zeros within a selected complex plane rectangular region. A detailed example of the use of the algorithm, which provides the reader with real time requirements and the accuracy obtained in comparison to trial-and-error switching delays search procedures, is introduced for illustration as well.

Thorough the paper, , , , denote the set of, respectively, complex numbers, real numbers, positive and non-negative integers. The n-dimensional Euclidean space is denoted as and let . For , Re(s) and Im(s) denote, respectively, the real part and imaginary part of s. The empty set is denoted as ∅. The notation d(s|a) means a polynomial in variable s, the coefficients of which are determined by the parameter a under some particular operation.

Methods

The general TDS model and its spectrum

Let, (1) stand for the Laplace transfer function in of a single-input single-output linear time-invariant TDS with multiple delays as a frequency-domain model where n(s, τ), d(s, τ) are quasipolynomials of the general form: , in which , represent independent delays: and . Let be the associated exponential polynomial related to x(s, τ). If, , then the system defined in Eq (1) is designated as retarded; otherwise, the system is of a neutral type.

In the following section, we assume that there are no common roots of the numerator and denominator in Eq (1). Under this assumption, the system poles (characteristic roots) si agree with the zeros of d(s, τ), i.e. si ≔ {s:d(s, τ) = 0}, and thus: CQP ≡ d(s, τ). Let us denote the spectrum of the system as Σ ≔{si}, the set of all zeros of da(s,) as Σa and introduce some basic spectral properties that are utilizable in this study.

Property 1 [4,6,44]: The system defined in Eq (1) has the following properties:

  1. If nonzero dij, λij,k exist (where dij stands for the real-valued coefficient in d(s,) for si with jth delay) for some positive τk and some i, j, k, then the number of poles is infinite.
  2. For a retarded system, for any with |β| < ∞, only a finite number of poles are located in the half-plane Re(s) > β; while infinitely many others are located in Re(s) < β.
  3. For a neutral system, a vertical chain of poles (si) exists at γ ≔ max ReΣa such that limi→∞ Re(si) = γ, limi→∞ Im(si) = ∞ for |si| < |si+1| .
  4. Let , then the number of poles with is always finite, and they are isolated.
  5. Isolated poles behave continuously and smoothly with respect to τ on .
  1. If one defines the spectral abscissa as the function: α(τ)≔τ ↦ sup Re Σ, for which the following holds true (Property 2): Function α(τ) may be nonsmooth and hence, not differentiable; e.g. in points with more than one real pole or conjugated pairs with the same maximum real part [45].
  2. It is non-Lipschitz, for instance, at points where the maximum real part has a multiplicity greater than one [46].

Rephrasing Property 2 –especially the second paragraph, abrupt changes may occur in the value of α(τ); however, such cases are rather rare—in at most, a finite number of delay vector points.

TDS stability

Proposition 1 [3,4]: The system as in Eq (1) with a fixed τ is exponentially stable if α(τ) < 0 for retarded systems; and if α(τ) < −ε, ε > 0 for neutral systems.

Note that, if γ < 0 (including infinity); then a TDS is so-called formally stable and Proposition 1 can collapse into the condition α(τ) < 0. The value of γ is, moreover, sensitive to even infinitesimal delay deviations (see item 4) of Property 1). This feature gives rise to the notion of strong stability—which means that a system is preserved from formal instability under small delay changes [4] (i.e. . The necessary and sufficient strong stability condition can be expressed as: (2)

To avoid dealing with a potentially infinite chain of vertical system poles reaching or crossing the imaginary axis, retarded and/or strongly stable neutral systems satisfying Eq (2) are the only ones to be further considered in this study.

Let us now define some other useful notions regarding TDS stability with respect to delay values. A TDS is said to be DDS, if it is exponentially stable for some delay vectors values: , constituting open sets (regions) of stabilizing delays. The root tendency (RT) is defined as: (3)

Crossing delays τc,i, and the corresponding crossing frequencies, ωc,i, satisfy: (4)

For switching delays , and the corresponding switching frequencies , the condition in Eq (4) holds—and moreover, the corresponding pole () on the imaginary axis is the leading (furthest right) one; i.e. , and the imaginary axis is crossed with a non-zero velocity [17,30,47], i.e.: (5)

Let us denote the set of all switching delays and frequencies as: and , respectively. It is evident from Proposition 1, that stability may only be violated at switching delays, while poles cross the imaginary axis at switching frequencies. This is the key idea of the direct frequency-domain methods cited above. Apart from the cases listed in Property 2, such an imaginary axis crossing is smooth.

Model of a human being on a controlled swaying bow

In this study, we are concerned with a DDS stability analysis of a control system with a model of a (human) skater on a remotely-controlled swaying bow, see Fig 1. The skater controls the power input, P(t) to the servo—giving rise to the angle deviation, u(t) from the horizontal position, and consequently, the angle between the skater and the bow symmetry axis, y(t) emerges.

thumbnail
Fig 1. A skater on a remotely controlled swaying bow.

The skater can send remote signals to the servomechanism (the rectangle labeled as Servo) that exerts power P in order to cause a horizontal-angle input deviation of u. The horizontal asymmetry yields the deviation of angle y from the bow symmetry axis—which is then taken as the system output.

https://doi.org/10.1371/journal.pone.0178950.g001

If friction is neglected, the following transfer function: (u(t) → y(t)) can be written: (6) for some particular bow parameters, where delay τ1 expresses the skater’s reaction time, and τ2 means the latency. Nominal controlled system parameters and delay values may be read for instance as: a = −1, b = 0.2, τ1 = 0.3, τ2 = 0.1, as given in [39]. It can be computed that, for such parameters, the controlled TDS is unstable since it has the spectral abscissa value of α = 0.9534.

Let us now assume that the habitual simple negative control feedback loop is applied to a plant given in Eq (6), to restore stability. Let the control loop be equipped with a finite-dimensional linear controller governed by the transfer function: (7) which gives the following retarded CQP: (8)

An optimal spectral abscissa minimizing procedure for the above introduced parameters, see [48], yields the result:

By considering this fixed setting, the nominal spectral abscissa of the control feedback loop is read as follows: α((0.3,0.1)) = −1.4454; while the delay-free case is: α((0,0)) = 0.1323. This means that system stability is delay dependent, and some switching delays might be found for fixed controlled plant and controller parameters.

Discretization tools and techniques

This section intends to provide the reader with the basics of computational discretization techniques and implements useful for the course of the below proposed algorithm.

ACP polynomial approximation.

The DDS algorithm introduced further on, in the results section, is designed to be practically implementable by means of most standard programs and utilities for scientific computing—without the necessity of the use of special software. Motivated by this, the first crucial step is to suggest a sufficiently accurate polynomial approximation of the CQP, resulting in the ACP, the leading zeros of which are close to those of the CQP, and can easily be computed.

The concept is based on the successive (iterative) discretization of the CQP, depending on the current leading pole estimation; i.e., a digital-filter-like implementation of the CQP is obtained. The Tustin (or bilinear) transformation is: (9) and represents a standard technique for the corresponding designing of the digital filter to a continuous-time model, where T is the sampling period; and q expresses the shifting operator that agrees with z-1 in the z-transform [9]. Let us recall that the mapping given in Eq (9) stems from the Taylor series expansion of the mutual relation between the s-plane and the z-plane: (10)

The crucial feature of this mapping is that it preserves stability, i.e. the poles in the complex left-half s-plane fall into the interior of the unit circle in the z-plane, and vice versa.

However, it is also known that—for finite-dimensional systems—the transformation given by Eq (9) does not preserve frequencies (i.e. so-called frequency warping occurs). The mutual relations are: (11) where ω, ωd stand for the frequency of the continuous-time model and the corresponding digital filter, respectively. Our intention is to make the ACP a digital implementation of the CQP, for which the imaginary part of the leading (dominant) root—after the use of the substitution as per Eq (10)—matches that of the CQP; which, i.a., means that both the corresponding switching imaginary poles might coincide. Hence, the CQP ought to be rescaled so that ωd—calculated from Eq (11), equals the desired (original, non-scaled) ω. This idea yields the eventual pre-warping filter design mapping as follows: (12)

The task of the choice of T is not unambiguous. With respect to delta models and derivative discretization, the value of T in Eqs (9) or (12) should be sufficiently small; while, on the contrary—the lower T is, the higher ACP degree is obtained. Note that for the z-transform, a recommendation for periodic systems has been given as: T = [0.2/ω0,0.5/ω0], where ω0 expresses the frequency of undumped oscillations [49]. Adopting the basic knowledge about a second order finite-dimensional model: ω0 = |s0|, where s0 means a pole from the conjugate pair, one can write the interval as: (13)

Note that for infinite-dimensional systems; s0 can be taken as the dominant pole.

The specific feature of TDSs is that the CQP includes exponential terms that are not subjected to either Eqs (9) or (12). In fact, the bilinear transformation acts only on s-powers in the CQP corresponding to output derivatives in the system model. Exponentials are processed by natural shifting: (14)

Switching delay estimation.

Once the ACP is found for each grid node given by the delay discretization, i.e. for a particular value of τ, its leading zero is calculated—thus expressing the estimation of the leading zero of the CQP. As the gridding may be very sparse, the imaginary axis can usually be leaped over. A smoother switching delay estimation—and thus, that of the switching pole, can be made by the linear RF interpolation as follows: (15) where is the estimation of the kth element of the switching delay vector; τk,j, τk,j+1 stand for the delay elements in the jth and (j + 1)th nodes, respectively; and represents the zeros of the ACP in the corresponding nodes. To rephrase, Eq (15) approximates the zero of the function: . Let us recall that the necessary stability switching condition formulated in Eq (5) must hold for the eventual value of .

QPmR overview

The QPmR mapping algorithm was designed to compute all quasipolynomial zeros located in a given region in . Its leading idea is as follows: Let, s = β + jω, , and thus split the CQP into two real functions R(β,ω)≔Re{d(β + jω,)}, I(β,ω)≔Im{d(β + jω,)}. The region of interest is covered by a rectangular mesh grid: . Then, the zero of the CQP can be found by the intersection of the curves given by the solutions of: R(β,ω) = 0, I(β,ω) = 0, within the gridded region. The accuracy of the zeros is subsequently increased by the Newton method.

The original version (v.1) was designed by Vyhlídal and Zítek [41], and implemented in Matlab based on the use of the Symbolic Math Toolbox. However, the toolbox led to a relatively large computational time. The QPmR was improved in the consecutive work [42], where optimization via the reduction of the scanned regions was implemented. This was achieved by using the argument principle and spectrum distribution analysis [50]. As a result, a significant reduction of computational time was obtained; however, the complexity of the algorithm increased rapidly. The enhanced algorithm was implemented once again in Matlab, as an advanced QPmR (aQPmR). The up-to-date version (v.2) of the algorithm was published in [43]. The authors avoided the use of the Symbolic Math Toolbox—and included the recursive grid density adaptation, which resulted in at least twice as fast computing rates.

Naturally, the QPmR can be utilized for switching delay searches, either as a trial-and-error procedure when directly searching within the given delay range, or as a tool for the evaluation of CQP zeros, instead of the polynomial approximation introduced above. Note however, that the attention of this paper is, i.a., devoted to achieving the goal of avoiding the necessity of using special software tools. Our intention is to employ the QPmR as a benchmark for the algorithm presented herein.

Results and discussion

Prior to the presentation of the proposed DDS algorithm and its implementation on stability margin detection when remote controlling a skater on a swaying bow, some additional methods have to be derived and computational ideas formulated.

Integer-powers polynomial interpolation

The discrete-time formulation of exponentials given by Eq (14) generally results in: ; thus, it is necessary to apply an interpolation: in order to acquire a polynomial with integer powers. A possible way to cope with this task is presented in the following theorem.

Theorem 1: A term , where , 0 < m < 1 can be approximated in the neighborhood of arbitrary as:

  1. Linear interpolation: (16)
  2. Quadratic interpolation: (17) The proof of Theorem 1 is provided in the Appendix.

Corollary 1: If Eq (16) is performed at z0 = 1, which agrees with s0 = 0 in the s-plane, the natural and intuitive result: z−(n+m) ≈ (1 − m)zn + mz−(n+1) is obtained—which expresses the linear distribution in the accordance with the “closeness” of m to 0 or 1.

In our algorithm, the value z0 is selected as the leading (dominant, right-hand most) pole s0 subjected to Eq (10).

Successive leading pole estimation

Once the ACP in z-1 is found by using Eqs (9) or (12), (14), (16) or (17), its dominant root can be computed simply by means of standard engineering computing software, which is a benefit of the algorithm presented below. In order to obtain a more precise estimation, the iterative procedure rather than a single-step calculation is used. It initially adopts the result obtained from the preceding delay discretization grid node (or more precisely, from the nearest previously solved node)—providing the preliminary estimation of the particular dominant pole: . The choice of ω in Eq (12) and the time period in Eq 13 in its ith iteration is given by: and the interpolation introduced in Eqs (16) or (17) is performed at —resulting from by means of Eq (10), which gives rise to the ACP as where stand for the parameters′ values that determine the polynomial coefficients. In every single iteration step, the updated leading root of the ACP is subjected to Eq (10) so as to consequently update: . In fact, the root closest to the preceding one is evaluated as the leading one for the next iteration step. The iterative procedure for the particular node of the grid is terminated if for a selected ε > 0.

The motivation for the iterative calculation of the ACP in the neighborhood of the currently found leading pole can be explained as follows: The pole furthest right of the CQP spectrum is the only decisive one with respect to TDS stability—as clear from Proposition 1. Let this pole: s0, be isolated and known for a particular τ0 exactly. Due to Property 1, for any ε > 0, there exists δ > 0 such that if: τ1 = τ0 + Δτ,‖Δτ‖ < δ, the corresponding root s1≔{s → min|ss0|:d(s, τ1) = 0} satisfies |s1s0| < ε. Hence, for a sufficiently small; roots s0 and s1 are close to each other. Let us assume the ACP as: and calculate its leading zero (i.e. that with the maximum modulus). It is supposed that resulting from via the exact mapping given in Eq (10) is located in the vicinity of s0 with . Now, by the iterative calculation of , the corresponding s-plane maps of their zeros, , should satisfy and hence, there exists a descending sequence: which converges for a suitable choice of T. A problem can emerge from Property 2 if for some δ > 0 and any Δτ due to the spectral abscissa discontinuity; however, such cases are rare and can be omitted in practice—since, for instance, the imaginary axis cannot be crossed by a multiple real pole [30,50]. Moreover, only strongly stable systems are taken into consideration.

Switching delay search algorithm

The proposed gridding switching delay search algorithm poses the main goal of this study and, it is summarized below by using ordered steps and a flowchart. The framework of the algorithm consists of the following steps: initialization, ACP computation and seeking its zeros, as well as switching delays and poles′ values enhancement.

Firstly, the mesh grid of delays within the selected ranges must be created, hence: τk,j+1 = τk,j + Δτk,j, τk,0 = 0, k = 1…L, j = 0…N − 1. The discretization step Δτk,j has to be chosen according to the minimum acceptable estimation error. Note, however, that numerical results have shown that this value may be approximately 103-times higher than eventual obtained accuracy. The counter of found switching delays (poles) are to be initialized as well, i = 1, and select the admissible convergence error while computing the ACP, ε > 0. The initial leading pole, , can easily be calculated exactly for τ = 0 as the rightmost zero of the polynomial d(s,0).

In each node of the grid (implemented as nested loops over τk), the iterative polynomial estimation of the CQP, i.e. the ACP, is computed. Once the final estimations of the dominant poles , in two subsequent grid nodes are found, see the preceding section for details, the test whether the imaginary axis has been crossed is executed. If it passes, the RF as in Eq (15) is successively performed to receive and updated values of , are computed by iterations for each k. The eventual delay vector has to be subjected to the RT condition test formulated in Eq (5). Estimations of switching delays (), switching poles () and their imaginary parts (), i.e. switching frequencies, are obtained as the algorithm outputs. The algorithm summary is as follows (Algorithm 1):

  1. For a neutral TDS—verify the strong stability condition in Eq (2). If it does not pass, terminate the algorithm.
  2. For the given d(s, τ), define the mesh grid: τk,j+1 = τk,j + Δτk,j, τk,0 = 0, k = 1…L, j = 0…N − 1 for a selected delay range, initialize the counter: i = 1 and choose ε > 0. Set: .
  3. Compute: (18)
  4. For: (j1 = 0…N − 1, for (j2 = 0…N − 1… (for jL = 0…N − 1 do steps 5–11)).
  5. If: j1 = j2 = … = jL = 0, the inner loop is finished; if not, define: (19) and set: (20)
  6. Compute: according to Eqs (9) or (12), (14), (16) or (17). Find its roots (zi) and subject them to Eq (10), which yield si. Define: (21)
  7. While , set ; and then go to step 6.
  8. Set: ; if , the inner loop is finished (see step 4); otherwise, i = i + 1 and go to step 9 (RF).
  9. Set where function is defined in Eq (15) and perform the cycle given in step 10.
  10. For: k = M − 1,…,1 do: If jk = 0, set and go back to step 10; or else, set and (22) and then compute the leading root from as in steps 6–7. Update values and find the leading root from according to the cycle in steps 6 and 7 again, and update the value . Then: . When the loop is finished, consolidate and go to step 11.
  11. Update , . Compute the leading zero iteratively: from in accordance with steps 6–7. Set .
  12. Outputs: .

A flowchart of Algorithm 1, beneficial particularly for practitioners, is depicted in Fig 2.

thumbnail
Fig 2. A Flowchart diagram of Algorithm 1.

The flowchart diagram displays the designed DDS algorithm. Its step-by-step formulation is presented in Algorithm 1. The ellipse expresses the starting point, and the oval means the termination point. The rhomb, the trapezium and the square stand for the condition, the output and the execution block, respectively.

https://doi.org/10.1371/journal.pone.0178950.g002

Application of the algorithm to the model of a skater

The particular example presented herein, is aimed at Algorithm 1′s accuracy and speed verification, and demonstrates its usability and applicability in bio-cybernetics, by means of the estimation of the stability switching delays for the control loop of a model of a skater on a controlled swaying bow (see Eq (6) and Fig 1) and equipped with the controller given by Eq (7). A set of tests includes the determination of a suitable value of T, the comparison of the use of the linear and quadratic interpolations is according to Eqs (16) and (17) respectively, and the demonstration of the pre-warping asset.

Prior to the presentation of the course of Algorithm 1 itself, let us perform some numerical tests to determine a suitable value of T.

Sampling period determination.

Let a particular delay vector be chosen and fixed as: τ = (0.07,0.07), and let us parameterize T as: (23) with respect to the upper bound of the condition given by Eq (13). Let us assume moreover, that the leading zero of d(s,(0.07,0.06)) is known exactly—the use of the QPmR with the precision of 10−9 gives the value: s0 = 0.024805739 ± 3.905723903i—which is used as the initial estimation. An accuracy comparison of leading pole estimations by means of the ACP described in steps 6 and 7 of Algorithm 1 is shown in Table 1. Both the first and second order interpolations as in Eqs (16) and (17) respectively are included—and, moreover, the beneficial impact of pre-warping governed by the Eq (11) is demonstrated. The error expresses the distance of the approximated leading pole from s0 = 0.007985448 ± 3.868912827i; found by the QPmR with the above-mentioned precision. The admissible iteration error was set to: ε = 10−6 (see step 1 of Algorithm 1) and the maximum acceptable number of iteration steps was set to 200. The eventual approximated leading pole loci are given to the reader in S1 Table.

As can be seen from Table 1, the degree of precision is one to three orders better with the use of pre-warping than the bilinear transformation without it. Notice moreover, that it is necessary to perform a lower number of iterations to reach the desired ε for higher kT—yet, the value is bounded.

Generally, high values of kT require enormous number of iterations—or even cause divergence—and, the error thus increases slightly. The growth of the error value can be explained as follows. Algorithm 1 uses the bilinear (Tustin) transformation as in Eqs (9) or (12) to get the associated polynomial, and the (back) transformation from the s-plane to the z-plane via the exponential formula as in Eq (10). Geometrically, the conformal mapping (Eq (9)) maps the closed left-hand side of the complex s-plane inside the circle in the z-plane with the radius of 1/T, i.e., linearly with respect to kT. The transformation according to Eq (10) provides the map inside the unit circle, i.e. the radius does not depend on the value of kT. From the operator point of view, the Tustin formula represents the trapezoidal (feedback-feedforward) form of the derivative approximation. It is closely related to the delta transform. Hence, intuitively, the shorter the step T is (i.e. the higher kT is), the approximation more precise is. However, the latter formula agrees with the transition from the z-transform to the s-transform (or vice-versa). It is well know that the z-transform fails for a very small values of the time period T (for instance, transfer function poles from the transfer function in s collapse to the point 1 in the z-plane). Moreover, the division be a very small number induces numerical problems when computing. The algorithm has to respect a compromise between both the principles. Due the properties of the z-transform and because of the numerical representation of real numbers inside the computer, the value of T must be sufficiently high, i.e. the value of kT can not be excessively high.

Only a slight improvement is achieved by means of a quadratic interpolation—which is, however, sacrificed by the necessity of more iteration steps. In fact, two leading roots of the ACP do not constitute a complex conjugate pair due to complex polynomial coefficients. It should be noted that the quadratic interpolation yields better mutual convergence of these roots with ascending kT.

The advantage of the iterative calculation of the ACP can be demonstrated for instance, by the evolution of the error —see steps 6 and 7 of Algorithm 1 for ; and s0 stands for the exact dominant system pole—with kT = 15 and pre-warping as: {23.7,5.1,5}·10−6. Note that ω in Eq (12) has been set as: .

It seems from Table 1 that the suitable value of T lies approximately in the interval kT ∈ [10,25]. Now, let us perform the second test as follows: Let the leading zero of d(s,(0.06,0)) be known exactly and perform Algorithm 1 in a degenerate form for τ1 ∈ [0.06,0.07], τ2 ∈ [0,0.2] with Δτ = 0.01. The numerical results are summarized in Table 2, where expresses the switching delay estimation, s0 is the corresponding leading system pole calculated by the QPmR, the error means the minimum distance of from the one found by the QPmR with the delay resolution of Δτ = 10−7; and the number of iterations (itermax) expresses the mean value rounded to the nearest integer.

Again, it can be deduced from Table 2 that the use of pre-warping brings about a significant improvement of the switching delay estimation. The quadratic interpolation however, does not come up to expectations; nevertheless, it can reduce the number of iterations for the ACP in a specific range of kT and results in a better mutual approach to the leading complex pair. In order to also include the time consumption factor—given mainly by the number of iterations, the eventual range of kT for this example is approximately: kT ∈ [3,15] for Eq (9) and kT ∈ [3,20] for Eq (13)–which goes beyond the suggestion formulated in Eq (13) and stands somewhere between the z-transform and derivative discretization. Hence, after some additional numerical experiments for the switching delay search herein below, we finally decided to set a uniform kT = 8. Let us recall that T is adapted according to Eq (23) in every single iteration step of the ACP calculation with respect to the leading pole estimation ().

Switching delay computation.

As the final numerical experiment—the complete course of Algorithm 1 is performed and its results are presented here below. Let the particular region be selected as: R1τ1 × τ2 ∈ [0,0.8]×[0,0.8], with Δτ = 0.01, i.e. N = 80, and ε = 10−6. The linear interpolation formula, according to Eq (16), is used. Entries of the found values are depicted in Fig 3 and compared with the stable/unstable region calculated by the QPmR of a rough delay resolution of Δτ = 0.01. Supporting files S2A, S2B and S2C Table display signs of the rightmost CQP roots from the QPmR, computed leading roots of the ACP along the stability border lines (with the use of pre-warping), and particular values of and , respectively.

thumbnail
Fig 3. Switching delays found by Algorithm 1.

Delay values computed by using pre-warping are indicated by circles and a joint via the solid line; the ones without pre-warping are represented by diamonds and joint by the dashed line. Results are back-grounded stability/instability regions computed by the QPmR with Δτ = 0.01.

https://doi.org/10.1371/journal.pone.0178950.g003

During computation, we have observed that the convergence of the ACP estimation may be poor when the leading pair of poles found is sufficiently far from the imaginary axis; or, when α(τ) is near to its extreme (minimum). In such cases, the problem was solved by an interim small change in kT. Both the plots in Fig 3 displaying results with/without the use of pre-warping, are almost indistinguishable by sight; hence, to provide the reader with results in more detail, select subsets R2 ≔ [0.05,0.1] × [0.05,0.1] and R3 ≔ [0.069,0.81] × [0.063,0.075] of R1 and display found switching delay pairs back-grounded by stable/unstable grid nodes computed by using the QPmR with the gridding Δτ = 0.005 and Δτ = 0.01, respectively, see Fig 4A and 4B.

thumbnail
Fig 4. Details of Fig 3 in selected regions.

Two regions were selected, a moderately detailed one R2 (A) and a very detailed one R3 (B). The stable and unstable areas found by the QPmR for Δτ = 0.005 and Δτ = 0.001, respectively, are indicated as well.

https://doi.org/10.1371/journal.pone.0178950.g004

Table 3 includes the estimated switching delays, the corresponding leading roots found by the QPmR with the precision of 10−9, the error with the same meaning as in Table 2 and the RT vector within the region R2.

thumbnail
Table 3. Highlighted results of Algorithm 1—Inside region R2.

https://doi.org/10.1371/journal.pone.0178950.t003

As can be seen from Table 3, the results correspond to those in Table 2—and, once again, one can state that the use of pre-warping mapping gives two orders higher precision. The overall closeness to the stability bound computed by the QPmR is very good.

Fig 5A, 5B and 5C display feedback output responses for τ = (0.3,0.1), τ = (0.0700747,0.74643) and τ = (0.04,0.04) respectively, when there is the reference step change Δr = 5° = π/36rad from the zero steady state on the control feedback input at time t = 10s, to verify the result in the time domain. Apparently, delay values from the region determined as stable (namely, the nominal ones) yield a stable step response (5A); while the ones selected from Table 2 as switching delay result in a steady periodic output of a skater’s position angle deviation (see 5B), and the third chosen delays give unstable response (5C). Let us recall that—amazingly, smaller delay values deteriorate stability in this case. Note that S1 File includes simulation MATLAB® (Simulink) scheme of the control loop.

thumbnail
Fig 5. Time domain results verification.

The three plots of the system’s step reference time responses for three different delay vectors are displayed. Whereas the nominal setting τ = (0.3,0.1) (A) gives a stable response asymptotically tracing the reference signal, the second option τ = (0.0700747,0.74643) (B) indicates the stability border by steady oscillations, and the last one: τ = (0.04,0.04) (C), gives unstable oscillations with a rising amplitude.

https://doi.org/10.1371/journal.pone.0178950.g005

Computational complexity

Although it is definitely not a difficult or crucial task in the case of the DDS algorithm introduced here, the (asymptotical) computational complexity should be discussed anyway. Parameterized statements are presented first, followed by practically measured data from the above numerical bio-cybernetic example. The basic general facts about Algorithm 1 are going to be presented, as well as the complexity of the QPmR.

The course of Algorithm 1 can be divided into two parts: a cyclic and a non-cyclic one. The non-cyclic part of the program implementation has the time consumption ϑnc; consisting of the initialization and the CQP definition. The cyclic one has two subdivisions: with, or without, the RF, ϑc,nRF, ϑc,RF, respectively. The former one mainly includes the iterative polynomial approximation and the leading zero calculation, whereas the latter one expresses time for the successive RF interpolation when the imaginary axis is crossed. The following statement can be formulated:

Proposition 2: The computational complexity of Algorithm 1 reads: (24)

The proof of Proposition 2 is given in the Appendix.

As mentioned above, the QPmR can be used in Algorithm 1 instead of steps 6 and 7 to avoid the computation of the ACP; or within the direct procedure, in which for a sufficiently fine grid of discretized delays, the CQP zeros inside a defined region are computed. Regarding the latter case, its complexity can be expressed simply as: (25) where NQPmR stands for the number of delay discretization steps for the QPmR; ϑQPmR,nc represents the time that the initialization of the QPmR takes outside the cycle, and ϑQPmR,c means the time period of the QPmR course over a grid node itself. Note that the duration ϑQPmR,c significantly depends on the selected region for computation of the zeros, its density, and the desired eventual accuracy.

Real computation time efficiency.

Finally, let us provide the reader with the concise real computation-time requirements of Algorithm 1, compared to the use of the QPmR for direct leading pole computation inside a defined region. The particular variables and symbols were defined in Eqs (24) and (25). Computational tests were performed by means of a laptop equipped with 32b Windows® 7 Professional, running on an Intel® Core2 DuoCPU P8700@2.53GHz, 4GB memory, in the Matlab® 7.11.0.584 (2010b) environment.

The whole course of the final computing test introduced above of Algorithm 1 took 2595 s, which gives the following mean durations of particular operations: ϑnc = 0.54s, ϑc,nRF = 0.36s, ϑc,RF = 1.64s for found c1 = 1.75; hence, it can be calculated that c2 = 2.66.

Now, let us consider the QPmR and two possible search rectangles in the complex plane and their corresponding computed precisions. The first is chosen as a region of the size with its center in , which expresses the currently found leading pole estimation (in the ith iteration). For such a case, we have measured the mean values ϑQPmR,nc = 0.66s and ϑQPmR,nc = 0.62s (for the selected precision of 10−8). The second rectangle has the fixed size of [1×1] centered in ; again, for which we have obtained ϑQPmR,nc = 0.68s and ϑQPmR,nc = 0.47s (for the reduced precision of 10−7). These results imply that the use of the QPmR for seeking the leading pole instead of the ACP roots computing introduced in Algorithm 1 does not yield a shorter computation time. Moreover, the direct trial-and-error use of the QPmR is hardly applicable; for instance, if the latter region is considered with the discretization step of Δτ = 0.001 (for a sufficiently smooth result), the overall computation time would approximately be 3 · 105 s; see Eq (25).

Conclusions

The formulation of a novel gridding multiple stability switching delay search algorithm and its verification by a numerical bio-cybernetic example of a human being on a remotely controlled swaying bow were the main objectives of this contribution. The proposed DDS algorithm can be fitted into a group of frequency-domain direct methods, based on an effort to find all characteristic roots (poles) located on the stability border, i.e. on the imaginary axis. Within these methods, it is usually only the upper and lower bounds on the imaginary parts of such poles that can be found by the elimination of delays from the characteristic quasipolynomial [28,33,34]. If the delays are commensurate, a procedure can be relatively fast; however, in the general case of non-commensurate delays, a computationally-lengthy iterative reduction procedure ought to be performed [31]. The algorithm presented herein can deal with non-commensurate delays by more effectively omitting a complex mathematical apparatus. The main advantages of the algorithm reside in the fact that it utilizes basic mathematical operations and standard software tools solely; thus, it is simple to implement by engineers and practitioners.

The effectiveness, simplicity, rapidity and accuracy of the gridding algorithm have been tested by the numerical example. The simple control feedback loop with delays system—applied to a skater on a swaying bow, is controlled by a conventional controller. For such a configuration, the marginal stability values of the delay vector were found by the proposed DDS algorithm; these results can be utilized practically, e.g. in biomechanics. The example presented here, proved that the procedure is computationally more effective than the direct use of the QPmR algorithm [43].

The formulation of the Algorithm 1 introduced above, represents its basic version. There are some natural possibilities regarding how to suggest a modification—for instance, the delays′ discretization can be performed with diverse settings for some k1k2 rather than a constant N, or with a non-constant Δτk,j for various k,j. In addition, it is not necessary to take τk,0 = 0; however, in such a case, a sufficiently accurate estimation of the primal pole has to be made, e.g. by means of the QPmR. These topics might be solved in future research. Its applicability is limited to retarded and strongly stable neutral delay systems—which also yields further natural possible research directions. In addition, the numerical example has shown that the crucial step consists in the determination of a suitable sampling period that influences the accuracy and the convergence rate.

Appendix

Proof of Theorem 1: Assume the linear interpolation first. Then, this can be written: (26) where the left-hand factor has the integer exponent 1 − m ∈ (0,1). Let the intention be to find: such that z1−ma0 + a1z. Now employ the Taylor series expansion at any z0: (27) for some emerging from the remainder. If |zz0| is sufficiently small, the last term can be neglected. Then, by substituting Eqs (27) into (26) and applying simple algebra on Eq 26 the eventual formula—as in Eq (16) is obtained.

Now consider a proof of Eq (17) and use an analogous idea. Hence: (28) where 2 − m ∈ (1,2). The Taylor series expansion of the latter term can be given as: (29) for some . Again, the cubic term can be cancelled from Eq (29) for some z sufficiently close to z0, and by combining Eqs (29) and (28)—these yield Eq (17), finally.

Proof of Proposition 2: The cyclic part must act in every grid node, the overall number of which is (N +1)L. Only if the imaginary axis is crossed by the leading pole, is the RT part applied in addition. This happens approximately once or a few times (c1 < N) during the inner-most loop course—and this loop is entered (N +1)L−1 times.

The right-hand side of Eq (24) can be obtained by the supposition that the polynomial approximation is the most time consumptive operation. Whereas, outside the RF, there is only one approximation—the number of 2(L − 1) + 1 = 2L − 1 such operations inside the RF is performed, i.e. where assumes other low-time consuming operations within the cycle. Substituting this and into the left-hand side of Eq (24), the right-hand value is obtained. Note that for a particular N, L one can also write C(N, L) = ϑnc + c3(2L + N)(N + 1)L−1ϑc,nRF, c3 > 0.

Supporting information

S1 Table. The eventual approximated leading pole loci for Table 1.

Leading pole estimations of the ACP received from steps 6 and 7 of Algorithm 1, which gives rise to errors introduced in Table 1.

https://doi.org/10.1371/journal.pone.0178950.s001

(XLSX)

S2 Table. Results of the numerical experiment according to Algorithm 1.

Signs of the rightmost quasipolynomial roots from the QPmR for Fig 3 are given in part A: The data table includes signs of the CQP roots calculated via the QPmR that give rise to the stable and unstable regions in Fig 3. Computed leading roots of the ACP along the stability border line of Fig 3 are provided in part B: The table displays the computed leading roots of the ACP for delay values in the vicinity of the stability border and also their real parts for some other selected delays, as in Fig 3. The pre-warping strategy is used here. Computed switching delays and poles for Fig 3 are introduced in part C: In the table, the reader can find values sets of and for both the strategies (with or without pre-warping) to support data in Fig 3.

https://doi.org/10.1371/journal.pone.0178950.s002

(XLSX)

S1 File. A simulation scheme of the skater stabilization.

This *.mdl file from MATLAB® enables to test the feedback response for various τ1 and τ2 that can be set inside the "Skater model" block.

https://doi.org/10.1371/journal.pone.0178950.s003

(MDL)

Author Contributions

  1. Conceptualization: LP.
  2. Data curation: LP.
  3. Formal analysis: LP.
  4. Investigation: LP.
  5. Methodology: LP.
  6. Project administration: LP RM RP.
  7. Resources: LP RM RP.
  8. Software: LP.
  9. Supervision: RP.
  10. Validation: LP RM.
  11. Visualization: LP RM.
  12. Writing – original draft: LP RM RP.
  13. Writing – review & editing: LP.

References

  1. 1. Abusaksaka AB and Partington JR. BIBO stability of some classes of delay systems and fractional systems. Syst Control Lett. 2014; 64: 43–46.
  2. 2. Bonnet C, Fioravanti AR and Partington JR. Stability of neutral systems with commensurate delays and poles asymptotic to the imaginary axis. SIAM J Control Optim. 2011(2); 49: 498–516.
  3. 3. Gu K, Kharitonov VL, Chen J. Stability of time-delay systems. 2nd ed. Boston: Birkhäuser; 2003.
  4. 4. Michiels W and Niculescu SI. Stability and stabilization of time-delay Systems. 1st ed. Philadelphia: SIAM; 2007.
  5. 5. Chiasson J, Loiseau JJ, editors. Applications of time delay systems. 1st ed. New York: Springer; 2007.
  6. 6. Sipahi R, Vyhlídal T, Niculescu SI, Pepe P, editors. Time delay systems: Methods, applications and new trends. 1st ed. New York: Springer; 2012.
  7. 7. Zhang W, Branicky MS, Phillips SM. Stability of networked control systems. IEEE Contr Syst Mag. 2001; 21(1): 84–99.
  8. 8. Wibral M, Pampu M, Priesemann V, Siebenhünher F, Siewert H, Linder M, et al. Measuring information-transfer delays. PLoS ONE. 2013; 8(2): e55809. pmid:23468850
  9. 9. Saha DJ, Morasso P. Stabilization strategies for unstable dynamics. PLoS ONE. 2012; 7(1): e30301. pmid:22279580
  10. 10. Suzuki Y, Nomura T, Casadio M, Morasso P, Intermittent control with ankle, hip, and mixed strategies during quietstanding: A theoretical proposal based on a double inverted pendulum model. J Theor Biol. 2012; 310: 55–79. pmid:22732276
  11. 11. Zenzeri J, De Santis D, Morasso P. Strategy switching in the stabilization of unstable dynamics. PLoS ONE. 2014; 9(6): e99087. pmid:24921254
  12. 12. Orosz G, Wilson RE, Stepan G. Traffic jams: dynamics and control. Phil Trans R Soc A. 2010; 368: 4455–4479. pmid:20819817
  13. 13. Asai Y, Tasaka Y, Nomura K, Nomura T, Casadio M, Morasso P, et al. A model of postural control in quiet standing: Robust compensation of delay-induced instability using intermittent activation of feedback control. PLoS ONE. 2009; 4(7): e6169. pmid:19584944
  14. 14. Li X, De Souza CE. Delay-dependent robust stability and stabilization of uncertain linear delay systems: A linear matrix inequality approach. IEEE T Automat Contr. 1997; 42(8): 1144–1148.
  15. 15. Pepe P, Jiang ZP. A Lyapunov—Krasovskii methodology for ISS and iISS of time-delay systems. Syst Control Lett. 2006; 55(12): 1006–1014.
  16. 16. Cao J. Improved delay-dependent exponential stability criteria for time-delay system. J Franklin Inst. 2013; 350: 790–801.
  17. 17. Talebi S, Ataei M, Ekramian M. Guaranteed interval of delay for a class of non-linear control systems. T I Meas Control 2015; 38(3): 365–369.
  18. 18. Zhu XL, Yang GH. Jensen inequality approach to stability analysis of discrete-time systems with time-varying delay. In: Proceedings of American Control Conference; 2008 June 11–13; Seattle, WA. p. 1644–1649.
  19. 19. Moon YS, Park P, Kwon WH, Lee YS. Delay dependent robust stabilization of uncertain state-delayed systems. Int J Control. 2001; 74(14): 1447–1455.
  20. 20. Fridman E, Shaked U. A descriptor system approach to H1 control of linear time-delay systems. IEEE T Automat Contr. 2002; 47(2): 253–270.
  21. 21. Xu S, Lam J, Zou Y. Simplified descriptor system approach to delay-dependent stability and performance analyses for time-delay systems. IEE P-Contr Theor Ap. 2005; 152(2): 147–151.
  22. 22. Kwon OM, Park MJ, Park JH, Lee SM, Cha EJ. Improved robust stability criteria for uncertain discrete-time systems with interval time-varying delays via new zero equalities. IET Control Theory A. 2012; 6(16): 2567–2575.
  23. 23. Zhang Q, Niu Y, Wang L, Shen L, Zhu H. Average consensus seeking of high-order continuous-time multi-agent systems with multiple time-varying communication delays. Int J Control Autom Syst. 2011 9: 1209–1218.
  24. 24. Yu H, Xia X, Zhang T. A less conservative method for average consensus with multiple time-varying delays. In: Proceedings of IEEE Africon; 2011 September 13–15; Livingstone, Zambia; 2011. p. 423–429.
  25. 25. Shang Y. Continuous-time average consensus under dynamically changing topologies and multiple time-varying delays. Appl Math Comput. 2014; 244: 1745–1757.
  26. 26. Shang Y. Average consensus in multi-agent systems with uncertain topologies and multiple time-varying delays. Linear Algebra Appl. 2014; 459: 411–429.
  27. 27. Gahinet P, Nemirovski A, Laub AJ, Chilali M. LMI Control Toolbox User’s Guide, The Math Works, Natick, MA, 1995.
  28. 28. Sönmez S, Ayasun S, Nwankpa CO. An exact method for computing delay margin for stability of load frequency control systems with constant communication delays. IEEE T Power Syst. 2015; 31(1): 370–377.
  29. 29. Rekasius ZV. A stability test for systems with delays. In: Proceedings of the Joint Automatic Control Conference; 1980 December; San Francisco, CA; Amer. Inst. of Chemical Engineers; 1980. Paper no: TP9-A.
  30. 30. Olgac N, Sipahi R. A practical method for analyzing the stability of neutral type LTI-time delayed systems. Automatica. 2004; 40(5): 847–853.
  31. 31. Delice II, Sipahi R. Delay-independent stability test for systems with multiple-delays. IEEE T Automat Contr. 2012, 57(4): 963–972.
  32. 32. Xu Q, Stepan G, Wang Z. Delay-dependent stability analysis by using delay-independent integral evaluation. Automatica 2016; 70(C): 153–157.
  33. 33. Chen J, Gu G, Nett CN. A new method for computing delay margins for stability of linear delay systems. Syst Control Lett. 1995; 26(2): 107–117.
  34. 34. Walton KE, Marshall JE. Direct method for TDS stability analysis. IEE P-Contr Theor Ap. 1987; 134(2): 101–107.
  35. 35. Ayasun S, Gelen A. Stability analysis of a generator excitation control system with time delays. Electr Eng. 2010; 91(6): 347–355.
  36. 36. Ji JC. Stability and bifurcation in an electromechanical system with time delays. Mech Res Commun. 2003; 30(3): 217–225.
  37. 37. Song Y, Peng Y. Stability and bifurcation analysis on a logistic model with discrete and distributed delays. Appl Math Comput. 2006; 181(2): 1745–1757.
  38. 38. Oppenheim A. Discrete time signal processing. Upper Saddle River, NJ: Pearson Higher Education; 2010.
  39. 39. Zítek P, Kučera V, Vyhlídal T. Meromorphic observer-based pole assignment in time delay systems. Kybernetika. 2008; 44(5): 633–648.
  40. 40. Varszegi B, Takacs D, Stepan G, Hogan SJ. Stabilizing skateboard speed-wobble with reflex delay, J R Soc Interface. 2016; 13(121): 20160345. pmid:27534701
  41. 41. Vyhlídal T, Zítek P. Quasipolynomial mapping algorithm rootfinder for analysis of time delay systems. In: Proceedings of the IFAC Workshop on Time-Delay Systems (TDS 2003); 2003 September 8–10; Rocquencourt, France. Rocquencourt: INRIA; 2003. p. 1–6.
  42. 42. Vyhlídal T, Zítek P. Mapping based algorithm for large-scale computation of quasipolynomial zeros. IEEE T Automat Contr. 2009; 54(1): 171–177.
  43. 43. Vyhlídal T, Zítek P. QPmR—Quasi-polynomial root-finder: Algorithm update and examples. In: Vyhlídal T, Lafay JF, Sipahi R, editors. Delay systems: From theory to numerics and applications. New York: Springer; 2014. p. 299–312. https://doi.org/10.1007/978-3-319-01695-5_22
  44. 44. Hale JK, Verduyn Lunel SM. Introduction to Functional Differential Eqs. 1st ed. New York: Springer; 1993.
  45. 45. Vanbiervliet T, Verheyden K, Michiels W, Vandewalle S. A nonsmooth optimization approach for the stabilization of time-delay systems. ESAIM Contr Optim Ca. 2008; 14(3): 478–493.
  46. 46. Burke J, Lewis AS, Overton ML. A robust gradient sampling algorithm for nonsmooth, nonconvex optimization. SIAM J Optim. 2005; 15(3): 751–779.
  47. 47. Walton KE, Marshall JE. Direct method for TDS stability analysis. IEE Proc-D. 1987 134(2): 101–107.
  48. 48. Pekař L, Prokop R. Algebraic optimal control in RMS ring: A case study. Int J Math Comput Simulat. 2013; 7(1): 59–68.
  49. 49. Balátě J. [Automatic control]. 1st ed. Prague: BEN Publishing; 2004. Czech.
  50. 50. Bellmann R, Cooke KL. Differential-difference Equations. New York: Academic Press; 1969.