<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Zaporizhzhia,
Ukraine
y.fedorov@chdtu.edu.ua (E. Fedorov); o.nechyporenko@chdtu.edu.ua (O. Nechyporenko); a.karapetian@chdtu.edu.ua
(A. Karapetyan); t.utkina@chdtu.edu.ua (T. Utkina)</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Modified Kalman Filtering Method for Discrete Signal</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Eugene Fedorov</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Olga Nechyporenko</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Anait Karapetyan</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Tetyana Utkina</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Cherkasy State Technological University</institution>
          ,
          <addr-line>Shevchenko blvd., 460, Cherkasy, 18006</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2025</year>
      </pub-date>
      <volume>000</volume>
      <fpage>0</fpage>
      <lpage>0003</lpage>
      <abstract>
        <p>Currently, the development of discrete signal filtering methods that are used in computerized biometric identification systems is an urgent task.In the case of linear filtering, one of the most popular methods is the Kalman filter.A modified Kalman filtering method was proposed to improve the efficiency of digital filtering of a discrete signal. This method provides automation of parameter value determination and improves the speed and accuracy of Kalman filtering by using fewer parameters and identifying them based on immune metaheuristic methods. The proposed metaheuristic methods reduce the probability of convergence to a local extremum by using the Cauchy distribution and make parametric identification more accurate. Algorithms of immune metaheuristic methods for identifying Kalman filter parameters have been developed, which are designed for software implementation on the GPU using CUDA technology, which increases the accuracy of Kalman filtering. Further prospects of the study are to utilize the proposed immune metaheuristic methods for various general and special purpose intelligent systems.</p>
      </abstract>
      <kwd-group>
        <kwd>1 continuous optimization</kwd>
        <kwd>immune metaheuristics</kwd>
        <kwd>artificial immune network</kwd>
        <kwd>hybrid immune algorithm</kwd>
        <kwd>parametric identification of Kalman filter</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Currently, it is an urgent task to create digital filtering methods used for noise suppression, which are
used in computerized biometric identification systems as well as speech recognition and
understanding systems and computer vision [1-2].</p>
      <p>One of the popular methods of digital filtering is the use of recurrent neural networks. Such neural
networks include NARMANN, ENN, JNN, GRU, LSTM. The disadvantage of such neural networks is
the high computational complexity of identifying their parameters due to the lack of the ability to
parallelize the learning algorithm, a large number of connections between neurons and the correct
choice of activation functions and the number of neurons in the layers.</p>
      <p>Another popular digital filtering methods is smoothing adaptive linear filtering [3-4]. For
smoothing adaptive linear filtering, the identification of filter parameters plays an important role.</p>
      <p>Approximate methods of determining parameter values based on global search do not guarantee
convergence. Approximate methods of determining parameter values based on local search have a
high probability of hitting a local extremum. Exact methods of determining parameter values have
high computational complexity. Thus, the problem of insufficient quality of parametric identification
methods arises.</p>
      <p>Modern heuristics (or metaheuristics) are used to increase the speed of filter parameter
identification and reduce the probability of hitting a local extremum [5-6]. Metaheuristics expand the
capabilities of heuristics by combining heuristic methods based on a high-level strategy [7-8].
Metaheuristics often use the behavior of evolutionary and immune approaches [9-10]. Metaheuristics
are approximate and, as a rule, stochastic methods [11-12]. The most effective metaheuristics use
experience that accumulates during the search process and is stored in memory [13-14].</p>
      <p>The aim of the work is to improve the quality of Kalman filtering of a discrete signal using
immune metaheuristic methods.</p>
      <p>To achieve the stated goal, it is necessary to solve the following tasks:
1. Create a modified Kalman filtering method.
2. Develop a continuous optimization method based on an artificial immune network.
3. Create a continuous optimization method based on a hybrid immune algorithm.
4. Conduct a numerical study of the proposed methods of continuous optimization and Kalman
filtering.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Literature review</title>
      <p>In the pre-processing units of modern computer systems for speaker identification, multimodal
interface, medical and technical diagnostics, digital filtering methods are implemented that reduce
noise and allow analyzing the spectral features of the signal. Various digital filtering methods, from
recurrent neural networks to linear digital filters, require the use of methods for determining
parameter values. One of the popular approaches is metaheuristic.</p>
      <p>Currently, metaheuristics are divided into evolutionary, biological, non-nature-inspired, immune,
mathematical, physical, social, chemical. Most metaheuristics use stochastic search, which reduces the
probability of hitting a local extremum. Metaheuristics allow solving continuous optimization
problems (calculating the point at which the objective function reaches a maximum or minimum) and
discrete optimization problems (e.g., clustering, knapsack problem, traveling salesman problem,
assignment problem).</p>
      <p>Modern metaheuristics have one or more of the following disadvantages:
 the convergence of the method may not be ensured [15-16];
 the iteration number does not affect the solution finding process [17-18];
 only binary potential solutions are used [19-20];
 the metaheuristic method is associated with solving only one problem or there is only an
abstract set of operators of this method available [21-22];
 low accuracy of the method [23-24];
 there is no automation of the procedure of identification of method parameters [25-26];
 the method is not intended for solving problems of conditional optimization [27-28].</p>
      <p>Based on this, the problem of constructing high quality metaheuristic optimization methods needs
to be addressed. One of the most popular ones are immune metaheuristics.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Modified Kalman filtering method</title>
      <p>In this paper, it is assumed that for each moment of time n the state matrix A ( n )= A, the control
matrix B ( n )=0, the control vector u ( n )=0, the process covariance matrix Q ( n )=Q= I Q σ 2Q, the
observation matrix H ( n ) are replaced by the vector h=1H σ 2H, the observed noise covariance matrix
R ( n ) is replaced by the scalar σ 2R, the observation vector z ( n ) is replaced by the scalar z ( n ), the
observation vector estimate ´z ( n ) is replaced by the scalar ´z ( n ), the error vector e ( n ) is replaced by
the scalar e ( n ), the error vector covariance matrix D ( n ) is replaced by the scalar d ( n ), and the
optimal Kalman gain matrix G ( n ) is replaced by the vector g ( n ). This reduces the amount of
computation and the amount of specified data.</p>
      <p>The modified Kalman filtering method for a discrete signal consists of the following stages:
1. Initialization.</p>
      <p>The initial estimation of the state vector ´s ( 0 ) of length m (in this work ´s ( 0 )=0) is set. The
covariance matrix of the state vector estimate C ( 0 ) is set with a size of mxm (in this work,
C ( 0 ) is filled with uniformly distributed values). In this work, the state matrix A of size mxm,
dispersion σ 2R, dispersion σ Q2 for calculating the matrix Q of size mxm, dispersion σ 2H for
calculating the vector h of length m are set.
2. Forecast stage.
2.1. Calculating the state vector estimate
In this work s ( n−1 )= A⋅ s ( n−2 ).
2.2. Calculating the covariance matrix of the state vector estimate
In this work C ( n−1 )= A⋅ C ( n−2 )⋅ AT +Q, where Q= I Q σ 2Q.
3. Update stage.
3.1. Calculating the estimate of the observation vector</p>
      <p>´s ( n−1 )= A ( n ) ´s ( n−2 )+ B ( n )u ( n ).</p>
      <p>C ( n−1 )= A ( n ) C ( n−2 ) AT ( n )+Q ( n ).</p>
      <p>2
In this work ´z ( n )=h⋅ ´s ( n−1 ), where h=1H σ H.
3.2. Calculating the error vector
In this work e ( n )= z ( n )− ´z ( n ).
3.3. Calculating the error vector covariance matrix
´z ( n )= H ( n ) ´s ( n−1 ).</p>
      <p>e ( n )= z ( n )− ´z ( n ).</p>
      <p>D ( n )= H ( n ) C ( n−1 ) H T ( n )+ R ( n ).</p>
      <p>In this work d ( n )=h⋅ C ( n−1 )⋅ hT + σ 2R, whereh=1H σ 2H.
3.4. Calculating the optimal Kalman gain matrix
In this work g ( n )=</p>
      <p>d ( n )
3.5. Updating the state vector estimate</p>
      <p>C ( n−1 ) hT</p>
      <p>G ( n )=</p>
      <p>C ( n−1 ) H T ( n )</p>
      <p>D ( n )</p>
      <p>.</p>
      <p>2
, where h=1H σ H.</p>
      <p>´s ( n )=´s ( n−1 )+G ( n ) e ( n ).</p>
      <p>In this work ´s ( n )=´s ( n−1 )+ g ( n ) e ( n ).
3.6. Updating the covariance matrix of the state vector estimate</p>
      <p>C ( n )=C ( n−1 )−G ( n ) H ( n ) C ( n−1 ).</p>
      <p>2</p>
      <p>In this work C ( n )=C ( n−1 )− g ( n )⋅ h⋅ C ( n−1 ), where h=1H σ H.
4. Selection of criteria for evaluating the effectiveness of the modified</p>
    </sec>
    <sec id="sec-4">
      <title>Kalman filtering method</title>
      <p>
        In this paper, to evaluate the effectiveness of the modified Kalman filtering method, the accuracy
criterion is chosen, which means choosing such values of the parameters A, σ Q2, σ 2H, σ 2R, that provide a
minimum root mean square error
(
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
(
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
(
        <xref ref-type="bibr" rid="ref3">3</xref>
        )
(
        <xref ref-type="bibr" rid="ref4">4</xref>
        )
(
        <xref ref-type="bibr" rid="ref5">5</xref>
        )
(
        <xref ref-type="bibr" rid="ref6">6</xref>
        )
(
        <xref ref-type="bibr" rid="ref7">7</xref>
        )
(
        <xref ref-type="bibr" rid="ref8">8</xref>
        )
F =
√ nmax ∑ ( y ( n )−´z ( n ))2
      </p>
      <p>1
nmac
n=1
→</p>
      <p>
        min ,
A ,σQ2 ,σ2H ,σ2R
(
        <xref ref-type="bibr" rid="ref9">9</xref>
        )
where y ( n ) – noise-free countdown,
´z ( n ) – observation evaluation,
nmax – number of observations.
      </p>
      <p>In accordance with the selected criterion, immune metaheuristic methods for identifying
parameters A, σ Q2, σ 2H, σ 2R are proposed in this paper.</p>
    </sec>
    <sec id="sec-5">
      <title>5. Modified artificial immune network method</title>
      <p>The artificial immune network was proposed by Timmis, Neal, Hunt and later modified by de Castro,
von Zuben and is based on the hypothesis of representing the immune system as an idiotypic network.
The disadvantage of the clonal selection theory is that it assumes that a set of cells remains unexcited
when there is no antigen.</p>
      <p>Scientist Erne proposed a hypothesis according to which the immune system is a regulated
network of molecules and cells that recognize each other even in the absence of an antigen. Such
structures are often called idiotypic networks, they serve as a basis for studying the behavior of the
immune system. Erne's theory is interpreted as a system of differential equations describing the
dynamics of the concentration of lymphocyte clones and the corresponding immunoglobulin
molecules. The theory of idiotypic regulation is based on the assumption that different lymphocyte
clones are not isolated from each other, but maintain communication through interactions of their
receptors located on the surface of the lymphocyte.</p>
      <p>In formulating the foundations of his theory, Jerne introduced the concepts of formal and
functional networks. Formal networks serve to study issues of repertoire (recruitment), dualism and
suppression. When considering functional networks, a quantitative picture of the theory is presented.</p>
      <p>A probabilistic approach to studying idiotypic networks based on the work of Jerne was proposed
by the scientist Perelson. This approach is extremely formalized and is mainly associated with the
description of phase transitions. Perelson divided the plane of phase variables of the considered
system of equations into a subcritical region, a transition region, and a postcritical region. Over the
past 20 years, Jerne's proposed immune network theory has received considerable attention, which
has led to a detailed study of many computational aspects of the corresponding mathematical models.</p>
      <p>The modified artificial immune network method consists of the following steps:
1. Initialization.
1.1. Setting the search area: cell length M , minimum and maximum values of cell components
x mji nmjax, j∈ 1 , M . Setting the maximum number of iterations N , population size K , number of
clones LC.
1.2. Setting the cost function (target function) F ( x )→ min, where x – cell (real vector containing
x
A, σ Q2, σ 2H, σ 2 ).</p>
      <p>R
1.3. Setting search parameters: mutation parameter α, compression threshold ε, where α &gt;0 (the
higher the α , the lower the mutation probability), ε &gt;0. The paper it is proposed to use δ ( x mja x mjin,
0&lt; δ &lt;1 , instead of parameter α.
1.4. Creating an initial population P.
1.4.1. Cell number k =1, P=∅ .</p>
      <p>
        1.4.2. Generating a random cell xk=( xk 1 , ... , xkM ), xkj= x mji nmjaxmjin, where U (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        ) – a function that
returns a standard uniformly distributed random number.
      </p>
      <p>1.4.3. If xk∉ P, then P= P∪ { xk }, k =k +1.
1.4.4. If k ≤ K , then move to step 1.4.2.
1.5. Determine the best cell by the target function
x¿=arg min F ( xk ), k ∈ 1 , K .</p>
      <p>xk
2. Iteration number n=0.
3. Calculating the affinity of population cells P
Φ ( xk )=1−</p>
      <p>F ( xk )− min F ( xi )</p>
      <p>i∈ 1, K
max F ( xi )− min F ( xi )
i∈ 1, K i∈ 1, K
4. Order the population P by the target function, i.e. F ( xk )&lt; F ( xk +1 ).
5. Determine the best cell by the target function</p>
      <p>, Φ ( xk )∈ [ 0,1], k ∈ 1 , K .
6. Determining the global best cell. If F ( xk¿ )&lt; F ( x¿ ), then x¿= xk¿.
7. Calculating the average cost value
k ¿=arg min F ( xk ), k ∈ 1 , K .</p>
      <p>k
F¯ source= 1 ∑K F ( xk ).</p>
      <p>K k=1
8. Creating the best mutated clones set H .
8.1. Set k =1, H =∅ .</p>
      <p>~
8.2. Creating clones set Pk={~xkl } for a population cell xk.
8.3. Creating mutated clones set P´k.
8.3.1. Clone number l=1, P´k =∅ .
8.3.2. Creating a cell (the paper proposes to use the Cauchy distribution)</p>
      <p>
        x´klj=~xklj + δ ( x mja x mjin−Φ(~xkl), j∈ 1 , M ,
where Cauc h y (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        ) – a function that returns a standard Cauchy distributed random number.
8.3.3. Cell correction x´kl
      </p>
      <p>x´klj=max ¿ x mji n´klj ¿, x´klj=min ¿ x mja x´klj ¿, j∈ 1 , M .
8.3.4. Calculating P´k = P´k∪ { x´kl }.
8.3.5. If l &lt; LC, then l=l +1, go to step 8.3.2.
8.5. Calculating H = H ∪ {hk }.
8.6. If k &lt; K , then k =k +1, go to step 8.2.
9. Calculating the average cost value
8.4. Determining the best element of set P´k by the target function hk =arg min F ( x´kl ).
x´kl
F¯ mutate= 1 ∑K F ( hk ).</p>
      <p>K i=1
10. If F¯ mutate ≥ F¯ source, then move to step 8.
11. Compressing the set H and replacing population cells P with elements of the set H .
11.1. Set k =1, m=1.
11.2. Forming the ε - neighborhood of the mth element of the set H</p>
      <p>
        U hm , ε={hl∨ ρ ( hm , hl ) ≤ ε , l∈ 1 , K },
where ρ – the distance between hm and hl (e.g. Euclidean distance).
(
        <xref ref-type="bibr" rid="ref10">10</xref>
        )
(
        <xref ref-type="bibr" rid="ref11">11</xref>
        )
(
        <xref ref-type="bibr" rid="ref12">12</xref>
        )
(
        <xref ref-type="bibr" rid="ref13">13</xref>
        )
(
        <xref ref-type="bibr" rid="ref14">14</xref>
        )
(
        <xref ref-type="bibr" rid="ref15">15</xref>
        )
(
        <xref ref-type="bibr" rid="ref16">16</xref>
        )
13.1. Calculating xk=( xk 1 , ... , xkM ), xkj= x mji nmjaxmjin.
13.2. If k &lt; K , then k =k +1, go to step 13.1.
14. If n&lt; N −1, then n=n+1, go to step 3.
      </p>
      <p>The result is x¿.</p>
    </sec>
    <sec id="sec-6">
      <title>6. Algorithm of the modified artificial immune network method</title>
      <p>The algorithm of the modified artificial immune network method, designed for implementation on
GPU using CUDA technology, is shown in Figure 1.</p>
      <p>This block diagram functions as follows.</p>
      <p>Step 1 – Set the maximum number of iterations N , population size K , number of clones LC,
parameter δ for generating a new solution, compression threshold ε, where 0&lt; δ &lt;1, ε &gt;0.</p>
      <p>Step 2 – Create an initial population P, using K ⋅ M threads that are grouped into K
onedimensional blocks. Each thread calculates xkj= x mji nmjaxmjin.
¿
Step 3 – Determine the best cell by the target function x =arg min F ( xk ), k ∈ 1 , K .
xk
Step 4 – Set the iteration number n=0.</p>
      <p>Step 5 – Calculate the minimum value of the target function a in the current population P, using
K threads that are grouped into one one-dimensional block. In this block, the minimum of K elements
of the form F ( xk ) is calculated based on the reduction.</p>
      <p>Step 6 – Calculate the maximum value of the target function b in the current population P, using
K threads that are grouped into one one-dimensional block. In this block, the maximum of K
elements of the form F ( xk ) is calculated based on the reduction.</p>
      <p>Step 7 – Calculate the affinity Φ ( xk ) for each cell xk of population P, using K threads that are
grouped into one one-dimensional block Φ ( xk )= b− F ( xk ) .</p>
      <p>b−a
Step 8 – Order population P by the target function, i.e. F ( xk )&lt; F ( xk+1 ).
¿
Step 9 – Determine the best cell by the target function k =arg min F ( xk ), k ∈ 1 , K .
k
Step 10 – Determine the global best cell. If F ( xk¿ )&lt; F ( x¿ ), then x¿= xk¿.</p>
      <p>Step 11 – Calculate the average cost value F¯ source, using K threads that are grouped into one
onedimensional block. In this block, the sum of K elements of type F ( xk ) is calculated based on the
K
reduction.</p>
      <p>Step 12 – Set the cell number k =1.</p>
      <p>~</p>
      <p>Step 13 – Create clones set Pk={~xkl } for population cell xk.
are</p>
      <p>
        Step 14 – Generate a mutant clones set P´k for a population cell xk, using LC⋅ M threads that
grouped into LC one-dimensional blocks. Each thread calculates
x´klj=~xklj+ α1 e−Φ(~xkl) Cauc h y (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        ).
      </p>
      <p>Step 15 – Perform the correction of the mutant clones set P´k for the population cell xk, using
LC⋅ M threads, that are grouped into LC one-dimensional blocks. Each thread calculates
x´klj=max ¿ x mji n´klj ¿, x´klj=min ¿ x mja x´klj ¿.</p>
      <p>Step 16 – Determine the best mutated clone by the target function for each population cell xk
Step 17 – If k &lt; K , then k =k +1, go to step 13.</p>
      <p>Step 18 – Calculate the average cost value F¯mutate, using K threads that are grouped into one
onedimensional block. In this block, the sum of K elements of the form F ( hk ) is calculated based on the
K
reduction.</p>
      <p>Step 19 – If F¯mutate ≥ F¯ source, then go to step 12.</p>
      <p>Step 20 – Compute a distances set { ρ ( hm , hl ) }, using K ⋅ K threads that are grouped into K
onedimensional blocks. Each thread computes ρ ( hm , hl ).</p>
      <p>Step 21 – Compress set H and replace population cells P with elements of set H .
Step 22 – If k = K , then go to step 24.</p>
      <p>Step 23 – Initialize the last K −k population cells P, using ( K −k )⋅ M threads that are grouped
intoK −k one-dimensional blocks. Each thread calculates xkj= x mji nmjaxmjin.</p>
      <p>Step 24 – If n&lt; N −1, then n=n +1, go to step 5.</p>
    </sec>
    <sec id="sec-7">
      <title>7. Modified hybrid immune algorithm method</title>
      <p>The hybrid immune algorithm was proposed by scientists Lucinska and Wierzchon and is a
modification of the artificial immune network. Its distinctive feature is the use of two types of
mutations.</p>
      <p>
        The modified hybrid immune algorithm method consists of the following steps:
1. Initialization.
1.1. Setting the search area: cell length M , minimum and maximum values of cell components
x mji n mjax, j∈ 1 , M . Setting the maximum number of iterations N , population size K , number of
clones LC, memory size LM .
1.2. Setting the cost function (target function) F ( x ) → min, where x – cell (real vector).
x
11.3. Setting the search parameters: compression threshold ε, maximum cell age amax, memory size
excess coefficient α , where ε &gt;0, amax – is a natural number, α &gt;1.
1.4. Creating an initial population P.
1.4.1. Cell number k =1, P=∅ .
1.4.2. Generating a random cell xk =( xk 1 , ... , xkM ), xkj= x mji nmjaxmjin, where U (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        ) – a function that
returns a standard uniformly distributed random number.
1.4.3. Setting the age of cell ak=1.
1.4.4. If ( xk , ak )∉ P, then P= P∪ {( xk , ak ) }, k =k +1.
1.4.5. If k ≤ K , then move to step 1.4.2.
1.5. Creating the initial set of sets of mutated clones { P´1 , ... , P´K }.
1.5.1. Cell number k =1.
1.5.2. Mutated clone number l=1, P´k =∅ .
1.5.3. Creating a randomly mutated clone x´kl=( x´kl 1 , ... , x´klM ), x´klj= x mji nmjaxmjin.
1.5.4. Generating a random vector of standard deviations σ´ klj=( σ´ kl 1 , ... , σ´ klM ), σ´ klj=U (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        ).
1.5.5. If x´kl∉ P´k∧ x´kl ≠ xk, then P´k = P´k∪ {( x´kl , σ´ kl ) }, l=l +1.
1.5.6. If l ≤ LC, then move to step 1.5.3.
1.5.7. If k &lt; K , то k =k +1, go to step 1.5.2.
1.6 Initializing a set of memory cells Q=∅ .
2. Iteration number n=0.
3. Creating the best mutated clones set H ❑.
3.1. Cell number k =1, H =∅ .
      </p>
      <p>
        ~
3.2. Creating a set of clones Pk={(~xkl , ~akl ) } for a population cell ( xk , ak ).
3.3. Modification of a set of mutated clones P´k.
3.3.1. Clone number l=1.
3.3.2. Set λ=U (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        ).
3.3.3. If λ &gt; 0.2, then calculation of the vector of standard deviations
      </p>
      <p>
        σ´ klj={2(~xlσk´j −klj ,x´klj ) , FF (( x´x´kklljj ))&lt;≥ FF ((~~xxkklljj )), j∈ 1 , M ,
creation of a cell (the work suggests using the Cauchy distribution)
x´klj= σ´ klj Cauchy (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        )+~xklj, j∈ 1 , M ,
(
        <xref ref-type="bibr" rid="ref17">17</xref>
        )
(
        <xref ref-type="bibr" rid="ref18">18</xref>
        )
where Cauc h y (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        ) – a function that returns a standard Cauchy distributed random number.
3.3.4. Cell correction x´kl
3.3.6. If l &lt; LC, then l=l +1, go to step 3.3.2.
3.4. Determining the best mutated clone of set P´k by the target function
      </p>
    </sec>
    <sec id="sec-8">
      <title>8. Algorithm of the modified hybrid immune algorithm method</title>
      <p>The algorithm of the modified hybrid immune algorithm method, designed for implementation on
GPU using CUDA technology, is shown in Figure 2.</p>
      <p>U qi , ε={ql∨ ρ ( qi , ql ) ≤ ε , l∈ 1 ,∨Q∨¿ }¿,
where ρ – the distance between qi and q j (e.g. Euclidean distance).
7.3. If ¿ U qi , ε∨¿∅ or max U qi , ε=qi, then q˘m=qi, m=m+1, Q˘ =Q˘ ∪ {q˘m }.
7.4. If i &lt; LM , then i=i +1, go to step 7.2.
7.5. Set Q=Q˘ .
7.6. Order the set Q by the target function, i.e. F ( qi )&lt; F ( qi+1 ).
7.7. If ¿ Q∨¿ LM, then remove from the ordered set Q the last worst ¿ Q∨− LM cells by the target
function.
8. Determining the best memory cell of the set Q by the target function
x¿=arg min F ( qi ).</p>
      <p>
        qi
(
        <xref ref-type="bibr" rid="ref19">19</xref>
        )
(
        <xref ref-type="bibr" rid="ref20">20</xref>
        )
(21)
This block diagram functions as follows.
      </p>
      <p>Step 1 – Set the maximum number of iterations N , population size K , number of clones LC,
memory size LM, compression threshold ε, maximum cell age amax, memory oversize factor α , where
ε &gt;0, amax is a natural number, α &gt;1.</p>
      <p>Step 2 – Create an initial population P={( xk , ak ) }, using K ⋅ M threads that are grouped into
K one-dimensional blocks. Each thread of each kth block calculates xkj= x mji nmjaxmjin, ak=1.</p>
      <p>Step 3 – Set the cell number k =1.</p>
      <p>
        Step 4 – Generate a set of mutated clones P´k={( x´kl , σ´ kl ) }, using L ⋅ M threads that are grouped
into LCone-dimensional blocks. Each thread calculates x´klj= x mji nmjaxmjin C
, σ´ klj=U (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        ).
      </p>
      <p>Step 5 – If k &lt; K , then k =k +1, go to step 4.</p>
      <p>Step 6 – Initialize a set of memory cells Q=∅ .</p>
      <p>Step 7 – Set the iteration number n=0.</p>
      <p>Step 8 – Set the cell number k =1.</p>
      <p>Step 9 – Create clone set ~Pk={~xkl } for population cell ( xk , ak ).</p>
      <p>
        Step 10 – Calculate λl=U (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        ), l∈ 1 , LC.
      </p>
      <p>Step 11 – Modify the set of mutated clones P´k for population cell ( xk , ak ), using LC⋅ M strands
that are grouped into LCone-dimensional blocks. Each strand of each lth block calculates:
2(~xlkj− x´klj ) ,</p>
      <p>σ´ klj ,
If λl&gt;0.2, then σ´ klj={</p>
      <p>
        F ( x´klj )&lt; F (~xklj ), x´klj= σ´ klj Cauc h y (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        )+~xklj,
      </p>
      <p>F ( x´klj )≥ F (~xklj )</p>
      <p>
        If λl ≤ 0.2, then x´kl=~xkl, j=round ( 1+( M −1 )U (
        <xref ref-type="bibr" rid="ref1">0,1</xref>
        )), x´klj= x mji nmjaxmjin.
      </p>
      <p>Step 12 – Perform the correction of the modified set of mutated clones P´k for the population cell
( xk , ak ) using LC⋅ M strands, which are grouped intoLC one-dimensional blocks. Each thread of
each lth block calculates:</p>
      <p>If λl&gt;0.2, then x´klj=max ¿ x mji n´klj ¿, x´klj=min ¿ x mja x´klj ¿.</p>
      <p>Step 13 – Determine the best mutated clone by the target function for each population cell
( xk , ak )
Step 17 – If ¿ Q∨¿ α ⋅ LM, then move to step 20.</p>
      <p>Step 18 – Compute distance set { ρ ( qi , ql ) } using Q⋅ Q threads that are grouped into Q
one¿
Step 20 – Determine the best memory cell of the set Q by the target function x =arg min F ( qi ),
qi
dimensional blocks. Each thread calculates ρ ( qi , ql ).</p>
      <p>Step 19 – Compress set Q.
k ∈ 1 , K .</p>
      <p>Step 21 – If n&lt; N −1, then n=n+1, go to step 8.</p>
    </sec>
    <sec id="sec-9">
      <title>9. Experiments and results</title>
      <p>The numerical study of the proposed metaheuristic methods was carried out using the Python
package in the Google Colab environment. Numerical experiments were carried out using the CUDA
parallel information processing technology on a GeForce 920M video card with 1025 threads in a
onedimensional block.</p>
      <p>In this work, the following parameters were used for the modified artificial immune network
method: the maximum number of iterations N =100, population size K =20, number of clones
LC=10, parameter for generating a new solution δ =0.1, and compression threshold ε =0.1.</p>
      <p>In this work, the following parameters were used for the modified hybrid immune algorithm
method: maximum number of iterations N =100, population size K =20, number of clones LC=10,
memory size LM =10, compression threshold ε =0.1, maximum cell age amax, and memory oversize
factor α =1.5.</p>
      <p>In the work, a one-dimensional signal was generated, to which additive Gaussian noise with zero
mathematical expectation and dispersion of 135 was added.</p>
      <p>In the work, the following root mean square errors were calculated based on the formulas:
RM S yz=√
RM Sx ´z=√</p>
      <p>1 ∑200 ( y ( n )− z ( n ))2,
200 n=1</p>
      <p>1 ∑200 ( x ( n )−´z ( n ))2,
200 n=1
(22)
(23)
where y ( n ) – noise-free countdown,
z ( n ) – observation (noise-free countdown),
´z ( n ) – observation evaluation.</p>
      <p>Table 1 presents the root mean square errors for immune metaheuristic methods. For all three
methods RM S yz=9.25.</p>
      <p>For example, for the modified hybrid immune algorithm method, the following parameter values
were obtained:
The advantage of using the proposed immune metaheuristic methods:
1. Automation of determination of Kalman filtering parameters A, σ Q2, σ 2H, σ 2 .</p>
      <p>R
2. Immune metaheuristic methods, due to their stochastic nature, reduce the probability of
convergence to a local extremum.
3. For immune metaheuristic methods, it is proposed to replace the Gaussian distribution with the
Cauchy distribution, which is long-tailed, i.e. to reduce the probability of convergence to a local
extremum.
4. According to Table 1, the modified hybrid immune algorithm method gives the best results in
terms of the root mean square error.
5. According to Figure 3 and Figure 4, the original signal without noise and the filtered signal differ
insignificantly, while there is a significant difference between the original signal without noise and
the signal with noise.</p>
      <p>Conclusions
1. A modified Kalman filtering method was developed that provides automation of parameter value
determination and increases the speed and accuracy of Kalman filtering by using fewer parameters
and identifying them based on immune metaheuristic methods.
2. A modified artificial immune network method was created that reduces the probability of
convergence to a local extremum by using the Cauchy distribution and makes the proposed
method more accurate than the existing one.
3. A modified hybrid immune algorithm method was developed, which, by using the Cauchy
distribution, reduces the probability of convergence to a local extremum and makes the proposed
method more accurate than the existing one.
4. Algorithms of immune metaheuristic methods for identifying Kalman filter parameters have
been developed, which are intended for software implementation on GPU using CUDA technology,
which increases the accuracy of Kalman filtering. The numerical studies conducted have confirmed
the operability of the developed software and allow us to recommend it for practical use.
5. Further research prospects include the use of the proposed immune metaheuristic methods for
various general-purpose and special-purpose intelligent systems, for example, for training neural
networks.</p>
    </sec>
    <sec id="sec-10">
      <title>Declaration on Generative AI</title>
      <p>During the preparation of this work, the authors used Grammarly in order to: Grammar and spelling
check. After using this tool, the authors reviewed and edited the content as needed and take full
responsibility for the publication’s content.
[21] A. Slowik, Swarm Intelligence Algorithms, A Tutorial, 1st ed., Boca Raton, FL: Chapman and</p>
      <p>Hall/CRC, New York, 2021. doi: 10.1201/9780429422614.
[22] O. Bozorg Haddad, M. Solgi, H. Loaiciga, Meta-heuristic and Evolutionary Algorithms for
Engineering Optimization, Hoboken, New Jersey: Wiley &amp; Sons, 2017. doi:
10.1002/9781119387053.
[23] K.-L. Du, M. N. S. Swamy, Search and Optimization by Metaheuristics. Techniques and</p>
      <p>Algorithms Inspired by Nature, Charm: Springer, 2016. doi: 10.1007/978-3-319-41192-7.
[24] A. Kaveh, T. Bakhshpoori, Metaheuristics Outlines, MATLAB Codes and Examples, Cham:</p>
      <p>Springer, 2019. doi: 10.1007/978-3-030-04067-3.
[25] A. Nayyar, D.-N. Le, N. G. Nguyen, Advances in Swarm Intelligence for Optimizing Problems in
Computer Science, 1st ed., Boca Raton, FL: Chapman and Hall/CRC, New York, 2018. doi:
10.1201/9780429445927.
[26] H. Emami, Anti-coronavirus optimization algorithm, Soft Computing, vol. 26 (2022) 4991-5023.</p>
      <p>doi:10.1007/s00500-022-06903-5.
[27] A. M. Khalid, K. M. Hosny, S. Mirjalili, COVIDOA: a novel evolutionary optimization algorithm
based on coronavirus disease replication lifecycle, Neural Computing and Applications, vol. 34
(2022) 22465-22492. doi:10.1007/s00521-022-07639-x.
[28] A. Al-Betar, Z. A. A. Alyasseri, M. A. Awadallah, I. A. Doush, Coronavirus herd immunity
optimizer (CHIO), Neural Computing and Applications, vol.33 (2021) 5011-5042.
doi:10.1007/s00521-020-05296-6.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>S.</given-names>
            <surname>Guo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Zhang</surname>
          </string-name>
          , Ya. Liu,
          <article-title>Differential privacy Kalman filtering for graphical dynamic systems: Performance improvement and privacy calibration</article-title>
          ,
          <source>Digital Signal Processing</source>
          , vol.
          <volume>152</volume>
          ,
          <issue>104589</issue>
          (
          <year>2024</year>
          ). doi: https://doi.org/10.1016/j.dsp.
          <year>2024</year>
          .
          <volume>104589</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>Sh</surname>
          </string-name>
          .
          <string-name>
            <surname>Zhong</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Peng</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>He</surname>
            , Zh. Feng,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          <article-title>Wang, Kalman filtering based on dynamic perception of measurement noise</article-title>
          ,
          <source>Mechanical Systems and Signal Processing</source>
          , vol.
          <volume>213</volume>
          ,
          <issue>111343</issue>
          (
          <year>2024</year>
          ). doi: https://doi.org/10.1016/j.ymssp.
          <year>2024</year>
          .
          <volume>111343</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A.</given-names>
            <surname>Kh</surname>
          </string-name>
          . Roonizi,
          <article-title>Kalman filter/smoother-based design and implementation of digital IIR filters</article-title>
          ,
          <source>Signal Processing</source>
          , vol.
          <volume>208</volume>
          (
          <year>2023</year>
          )
          <fpage>1</fpage>
          -
          <lpage>10</lpage>
          . doi: https://doi.org/10.1016/j.sigpro.
          <year>2023</year>
          .
          <volume>108958</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>M.</given-names>
            <surname>Cheng</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Fang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.M.</given-names>
            <surname>Navon</surname>
          </string-name>
          , Ch. Pain,
          <article-title>Ensemble Kalman filter for GAN-ConvLSTM based long lead-time forecasting</article-title>
          ,
          <source>Journal of Computational Science</source>
          , vol.
          <volume>69</volume>
          (
          <year>2023</year>
          )
          <fpage>1</fpage>
          -
          <lpage>16</lpage>
          . doi: https://doi.org/10.1016/j.jocs.
          <year>2023</year>
          .
          <volume>102024</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>X.-S.</given-names>
             
            <surname>Yang</surname>
          </string-name>
          ,
          <article-title>Nature-inspired Algorithms</article-title>
          and Applied Optimization, Charm: Springer,
          <year>2018</year>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>642</fpage>
          -29694-9.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>A.</given-names>
            <surname>Nakib</surname>
          </string-name>
          ,
          <string-name>
            <surname>El-G. Talbi</surname>
          </string-name>
          ,
          <source>Metaheuristics for Medicine and Biology</source>
          , Berlin: Springer-Verlag,
          <year>2017</year>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>662</fpage>
          -54428-0.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>S.</given-names>
            <surname>Subbotin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Oliinyk</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Levashenko</surname>
          </string-name>
          , E. Zaitseva,
          <article-title>Diagnostic rule mining based on artificial immune system for a case of uneven distribution of classes in sample</article-title>
          ,
          <source>Communications</source>
          , volume
          <volume>3</volume>
          (
          <year>2016</year>
          )
          <fpage>3</fpage>
          -
          <lpage>11</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>X.-S.</given-names>
            <surname>Yang</surname>
          </string-name>
          ,
          <article-title>Optimization Techniques and Applications with Examples</article-title>
          , Hoboken, New Jersey: Wiley &amp; Sons,
          <year>2018</year>
          . doi:
          <volume>10</volume>
          .1002/9781119490616.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>T.</given-names>
            <surname>Neskorodieva</surname>
          </string-name>
          , E. Fedorov,
          <string-name>
            <given-names>M.</given-names>
            <surname>Chychuzhko</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Chychuzhko</surname>
          </string-name>
          ,
          <source>Metaheuristic Method for Searching Quasi-Optimal Route Based On the Ant Algorithm and Annealing Simulation, Radioelectronic and Computer Systems</source>
          <volume>1</volume>
          (
          <year>2022</year>
          )
          <fpage>92</fpage>
          -
          <lpage>102</lpage>
          . doi:
          <volume>10</volume>
          .32620/reks.
          <year>2022</year>
          .
          <volume>1</volume>
          .07.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>A.</given-names>
            <surname>Vasuki</surname>
          </string-name>
          , Nature Inspired Optimization Algorithms, 1st ed.,
          <string-name>
            <surname>Boca</surname>
            <given-names>Raton</given-names>
          </string-name>
          , FL: Chapman and Hall/CRC, New York,
          <year>2020</year>
          . doi:
          <volume>10</volume>
          .1201/9780429289071.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>H.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Huang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <article-title>An effective metaheuristic algorithm for flowshop scheduling with deteriorating jobs</article-title>
          ,
          <source>Journal of Intelligent Manufacturing</source>
          , vol.
          <volume>30</volume>
          (
          <year>2019</year>
          )
          <fpage>2733</fpage>
          -
          <lpage>2742</lpage>
          . doi:
          <volume>10</volume>
          .1007/s10845-018-1425-8.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>C.</given-names>
            <surname>Blum</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. R.</given-names>
            <surname>Raidl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Hybrid</given-names>
            <surname>Metaheuristics</surname>
          </string-name>
          . Powerful Tools for Optimization, Charm: Springer,
          <year>2016</year>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>319</fpage>
          -30883-8.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>R.</given-names>
            <surname>Martí</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. M.</given-names>
            <surname>Pardalos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. G. C.</given-names>
            <surname>Resende</surname>
          </string-name>
          , Handbook of Heuristics, Charm: Springer,
          <year>2018</year>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>319</fpage>
          -07124-4.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>B.</given-names>
            <surname>Chopard</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Tomassini</surname>
          </string-name>
          , An Introduction to Metaheuristics for Optimization, Springer, New York,
          <year>2018</year>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>319</fpage>
          -93073-2.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>J.</given-names>
            <surname>Radosavljević</surname>
          </string-name>
          , Metaheuristic Optimization in Power Engineering, New York: Institution of Engineering and Technology,
          <year>2018</year>
          . doi:
          <volume>10</volume>
          .1049/PBPO131E.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>N. S.</given-names>
            <surname>Jaddi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Alvankarian</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Abdullah</surname>
          </string-name>
          ,
          <article-title>Kidney-inspired algorithm for optimization problems</article-title>
          ,
          <source>Communications in Nonlinear Science and Numerical Simulation</source>
          <volume>42</volume>
          (
          <year>2017</year>
          )
          <fpage>358</fpage>
          -
          <lpage>369</lpage>
          . doi:
          <volume>10</volume>
          .1016/j.cnsns.
          <year>2016</year>
          .
          <volume>06</volume>
          .006.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Tian</surname>
          </string-name>
          , R. Cheng, X. Zhang, Y. Jin,
          <article-title>PlatEMO: A MATLAB platform for evolutionary multiobjective optimization</article-title>
          ,
          <source>IEEE Computational Intelligence Magazine</source>
          <volume>12</volume>
          (
          <year>2017</year>
          )
          <fpage>73</fpage>
          -
          <lpage>87</lpage>
          . doi:
          <volume>10</volume>
          .1109/
          <string-name>
            <surname>MCI</surname>
          </string-name>
          .
          <year>2017</year>
          .
          <volume>2742868</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>E.</given-names>
            <surname>Fedorov</surname>
          </string-name>
          , М. Chychuzhko,
          <string-name>
            <given-names>V.</given-names>
            <surname>Chychuzhko</surname>
          </string-name>
          ,
          <article-title>Approaches to the creation of a software agent based on meta-heuristic and artificial neural networks</article-title>
          ,
          <source>Radioelectronic and Computer Systems</source>
          , vol.
          <volume>1</volume>
          (
          <year>2019</year>
          )
          <fpage>58</fpage>
          -
          <lpage>65</lpage>
          . doi: https://doi.org/10.32620/reks.
          <year>2019</year>
          .
          <volume>1</volume>
          .06.
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>E.</given-names>
            <surname>Fedorov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Nechyporenko</surname>
          </string-name>
          ,
          <article-title>Methods for Solving the Traveling Salesman Problem Based on Reinforcement Learning and Metaheuristics</article-title>
          ,
          <source>in: CEUR Workshop Proceedings</source>
          ,
          <year>2022</year>
          , vol.
          <volume>3309</volume>
          , pp.
          <fpage>94</fpage>
          -
          <lpage>103</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>A.</given-names>
             
            <surname>Shukla</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Tiwari</surname>
          </string-name>
          , Discrete Problems in Nature Inspired Algorithms, 1st ed.,
          <string-name>
            <surname>Boca</surname>
            <given-names>Raton</given-names>
          </string-name>
          , FL: Chapman and Hall/CRC, New York,
          <year>2019</year>
          . doi:
          <volume>10</volume>
          .1201/9781351260886.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>