The controlled Volterra integral equations (VIE) are very momentous, because these equations arise in modelling many classes of phenomena. Many problems in economics, biology, epidemiology, and memory effects can be modeled as Volterra control problems [34]. Since the analytical methods based on the necessary conditions obtained using the Pontryagin’s maximum principle and dynamic programming have less implementation ability, different numerical approaches have been devised to overcome the problems arising from the application of analytical methods [812, 34, 35, 40, 46].

In this paper, we have introduced a spectral approach based on collocation method to obtain optimal control of systems governed by VIE. Spectral techniques have been demonstrated to provide effective and flexible methods to solve diverse problems numerically [57, 44, 46, 47]. The presented method consists of reducing the OCP to a non-linear programming (NLP) by first expanding the state and control functions in terms of Lagrange interpolating polynomial with unknown coefficients. These polynomials together with numerical integration and collocation approach are utilized to convert OCP to finite-dimensional programming problem. Since the resulted finite-dimensional programming problem is large scale, there are various optimization methods which can be implemented to solve it. It is tried that to find a method which is useable and effective on solving these problems in large-scale setting. Metaheuristic methods are becoming one of the important tools for producing robust and efficient methods that compute approximate solutions of problems with high quality in reasonable computation time. Therefore, metaheuristic methods are applied for solving real-world optimization problems [18, 19, 24, 30, 33, 42, 43]. Among those metaheuristic algorithms, tabu search (TS) [18] is one of the most efficient memory-based methods. However, the original TS cannot completely exert the optimization problems. The modified versions of the TS have been presented to ameliorate its performance, for example, One of the enhanced versions of the TS is referred to as directed tabu search (DTS) [26]. DTS has shown a notable performance when used to solve non-linear continuous optimization problems. Due to its neighborhood mechanisms, DTS had quick convergence, since it detected promising search directions in the neighborhood of a global minimum. Indeed, the slow convergence of TS was overcome by incorporating local search strategies, such as the Nelder–Mead (NM) method [39] and the adaptive pattern search (APS) [25], into the main algorithm. On the other hand, the DTS has been successfully applied to various real-world optimization problems [26, 28, 29, 31, 38, 41]. Therefore, we survey application of DTS to solve OCP and use the values of the parameters that are required in the implementation of the DTS method of Hedar and Fukushima [26].

This paper is arranged as follows: OCP is defined in Sect. 2. In Sect. 3, we illustrate that how the pseudo-spectral method using Lagrange interpolation polynomials converts the continuous OCP to a finite-dimensional optimization problem. Directed tabu search algorithm is exerted to solve this non-linear optimization problem which has global convergence. In Sect. 4, basic convergence results are given. Section 5 contains numerical examples that demonstrate the efficiency and accuracy of the proposed framework. Section 6 ends this paper with a brief conclusion.

The formulation of optimal control problem

In the present work, we focus on a numerical approach to solve the following OCP of non-linear VIE:

Problem \(\mathcal {A}\): Specify the real-valued continuous optimal control \(u^*(t)\) and the corresponding optimal state \(x^*(t)\), \(t\in [0,1]\), that maximize (or minimize) the functional

$$\begin{aligned} {\mathcal {J}}(x,u)=\int _{0}^{1}{\mathcal {F}}(t,x(t),u(t)){\mathrm{d}}t, \end{aligned}$$

subject to state dynamics

$$\begin{aligned} x(t)=y(t)+\int _{0}^{t}{\mathcal {K}}(s,t,x(s),u(s)){\mathrm{d}}s. \end{aligned}$$

It is assumed that \(\mathcal {F}\), \(\mathcal {K}\) and y are real valued and continuously differentiable with respect to their arguments, and both x and u belong to Sobolev space \(W^{l,\infty }\). The interval [0, 1] can be transformed to an arbitrary interval [ab] via a proper change of variable. It is also supposed that the optimal control of this problem is unique. Analytical discussions about the existence and uniqueness for optimal control of systems governed by non-linear VIE 2 can be found in [1, 27] and references there in.

The method of discretization

Pseudo-spectral approaches are powerful tools that are frequently employed in various fields of numerical analysis. These methods have a higher order of accuracy in the case of smooth solution of any considered problem. In this section, implementation of the pseudo-spectral method on problem \(\varvec{\mathcal {A}}\) is given. At first, the control and state functions are approximated in terms of \(M\)th degree Lagrange interpolating polynomials of the form

$$\begin{aligned} x(t)\simeq {\mathcal {X}}^M(t)=\sum _{k=0}^{M-1}\overline{x}_{k}^{M}\psi _k(t), \end{aligned}$$
$$\begin{aligned} u(t)\simeq {\mathcal {U}}^M(t)= \sum _{k=0}^{M-1}\overline{u}_{k}^{M}\psi _k(t), \end{aligned}$$

where \(\psi _k(t)\) for \(k=0,\ldots ,M-1\) are the Lagrange interpolating polynomials defined by

$$\begin{aligned} \psi _k(t)=\prod _{i=0,i\ne k}^{M-1}\left( \frac{t-\tau _i}{\tau _k-\tau _i}\right) , \end{aligned}$$

in which \(\tau _i\), \(i=0,1,\ldots , M-1\) can be Gauss–Legendre (GL) or Gauss–Chebyshev (GC) nodes. GC nodes are the roots of Chebyshev polynomial of the first kind in \([-1,1]\) [36]. These nodes in the interval [0, 1] are defined by

$$\begin{aligned} \tau _i=\frac{1}{2}+\frac{1}{2}\cos \left( \frac{2i+1}{2M}\pi \right) ,\ \ i=0,1,\ldots ,M-1. \end{aligned}$$

GL nodes are the zeros of Legendre polynomial. Explicit formulas for GL nodes are not known. However, they can be computed numerically using existing subroutines [14]. The best choice of interpolation points to ensure uniform convergence is GC nodes (see Section 2.2 [36]). It can be verified that

$$\begin{aligned} \psi _k(\tau _i)=\delta _{ki}=\left\{ \begin{array}{cc} 1 &{} i=k, \\ 0 &{} i\ne k. \end{array}\right. \end{aligned}$$

The approximation process of problem \(\mathcal {A}\) includes the discretization of both the cost function and the controlled integral equation constraint.

Controlled integral equation discretization

We discretize Eq. 2 using shifted GC nodes, \(t_p\), \( p=0,1,\ldots ,M-1\), as follows:

$$\begin{aligned} x(t_p)=y(t_p)+\int _{0}^{t_p}{\mathcal {K}}(s,t_p,x(s),u(s)){\mathrm{d}}t. \end{aligned}$$

We should notice that GC nodes should be transformed into the interval [0, 1]. By substituting 3 in 7, we obtain

$$\begin{aligned} {\mathcal {X}}^M(t_p)\approx y(t_p)+\int _{0}^{t_p}{\mathcal {K}}(s,t_p,{\mathcal {X}}^M(s),{\mathcal {U}}^M(s)){\mathrm{d}}t. \end{aligned}$$

The GL quadrature formula is utilized to approximate the integral term in Eq. 8. For this purpose, this change of variable must be made with the following form:

$$\begin{aligned} b_p(\tau )=\frac{t_p}{2}(\tau +1). \end{aligned}$$

Then, by applying GL quadrature for approximating the integral, we derive

$$\begin{aligned} {\mathcal {X}}^M(t_p)\approx \end{aligned}$$
$$\begin{aligned} y(t_p)+\frac{t_p}{2}\sum _{j=0}^{M-1}w_j{\mathcal {K}}\left( b_{p}^{j} ,t_p,{\mathcal {X}}^M(b_{p}^{j}),{\mathcal {U}}^M(b_{p}^j)\right) , \end{aligned}$$
$$\begin{aligned} p=0,2,\ldots ,M-1, \end{aligned}$$

where \(b_{p}^j={b_p}(\tau _j)\), and \(\tau _j\)s are the GL nodes, in the interval \([-1,1]\), and \(w_j\)s are the corresponding weights. The quadrature weight, \(w_j\), can be obtained from the following relation:

$$\begin{aligned} w_j=\frac{2}{\big (1-\tau _j^2\big )[{\mathcal {L}}'_{M}(\tau _j)]^2},\ \ \ \ j=0,\ldots , M-1. \end{aligned}$$

In Eq. 11, \({\mathcal {L}}_M\) is Legendre polynomial of degree M;  For more details about these polynomials, see Tohidi and Samadi [48]. Finally, the controlled Volterra integral Eq. 2 is reduced to M non-linear algebraic equations given in Eq. 10.

Cost functional discretization

For approximating the cost functional stated in Eq. 1, we utilize the GL quadrature after the proper interval transformation

$$\begin{aligned} \int _{0}^{1}{\mathcal {F}}(t,x(t),u(t))&\approx \frac{1}{2}\int _{-1}^{1}{\mathcal {F}}\left( \frac{\tau +1}{2},{\mathcal {X}}^M\left( \frac{\tau +1}{2}\right) ,{\mathcal {U}}^M\left( \frac{\tau +1}{2}\right) \right) {\mathrm{d}}\tau \nonumber \\&\approx \sum _{j=0}^{M-1}w'_j{\mathcal {F}}\left( \tau '_j,{\mathcal {X}}^M(\tau '_j),{\mathcal {U}}^M(\tau '_j)\right) , \end{aligned}$$

where \(w'_j=\frac{1}{2}w_j\) and \(\tau '_j=\frac{\tau _j+1}{2},\) and \(\tau _j\) and \(w_j\) are GL nodes and weights stated in Eq. 11.

The discretized optimization problem

Finally, problem \(\mathcal {A}\) is approximated by the following NLP:

$$\begin{aligned} \min {\mathcal {J}}^M(X,U) \end{aligned}$$

subject to

$$\begin{aligned} \ \ \ \ \ \ \ \ \ \ \ {\mathcal {K}}_p(X,U)=-y(t_p),\ \ \ p=0,1,\ldots ,M-1, \end{aligned}$$

where \(X=(\overline{x}_{0}^{M},\overline{x}_{1}^{M},\ldots ,\overline{x}_{M-1}^{M})\) and \(U=(\overline{u}_{0}^{M},\overline{u}_{1}^{M},\ldots ,\overline{u}_{M-1}^{M})\) are the unknown parameters of our discrete problem, and

$$\begin{aligned} {\mathcal {J}}^M(X,U):=\sum _{j=0}^{M-1}w'_j{\mathcal {F}}(\tau '_j,{\mathcal {X}}^M(\tau '_j),{\mathcal {U}}^M(\tau '_j)), \end{aligned}$$


$$\begin{aligned} {\mathcal {K}}_p(X,U):=\frac{t_p}{2}\sum _{j=0}^{M-1}w_j{\mathcal {K}}(b_{p}^{j} ,t_p,{\mathcal {X}}^M(b_{p}^{j}),{\mathcal {U}}^M(b_{p}^j))-{\mathcal {X}}^M(t_p), \end{aligned}$$
$$\begin{aligned} p=0,1,\ldots ,M-1. \end{aligned}$$

As shown above, the resulted discrete problem can be reformulated as the following non-linear programming problem:

Problem \({\mathcal {A}}^{M}\): Find (XU) that minimize

$$\begin{aligned} {\mathcal {J}}^M(X,U)=\sum _{j=0}^{M-1}{\mathcal {F}}(\tau '_j,{\mathcal {X}}^M(\tau '_j),{\mathcal {U}}^M(\tau '_j))w'_j, \end{aligned}$$

subject to

$$\begin{aligned} {\mathcal {K}}_p(X,U)+y(t_p)=0,\ \ \ \ p=0,1,\ldots , M-1. \end{aligned}$$

When the continuous problem \(\mathcal {A}\) is discretized, the infinite-dimensional problem \(\mathcal {A}\) is reduced to the finite-dimensional non-linear optimization problem \({\mathcal {A}}^{M}\). Many well-developed NLP techniques can be used to solve this problem [32]. The method has been used to solve the non-linear constrained optimization problem which is based on DTS method.

Directed tabu search

DTS is one of the recent development metaheuristics proposed for combinatorial optimization problems. In the DTS method, three search procedures were used: Exploration, Diversification, and Intensification. In the Exploration Search, a local search procedure is applied to produce trial moves, based on the Nelder–Mead method (NM) and the adaptive pattern search method (APS). Besides, memory elements called Tabu Region (TR), Semi-TR, and a multi-ranked Tabu List (TL) were presented to obtain anti-cycling rules. Visited Regions List (VRL) was also presented for the Diversification Search to diversify the search to unvisited areas of the solution region. At last, supposing that one of the best points generated by the Exploration and Diversification Searches was close to a global solution, the Intensification Search was utilized again as the final step to rectify the best solutions visited so far. Indeed, the Exploration and Diversification search processes were congregated to prepare the DTS main loop and were repeated until the termination conditions were satisfied. Therewith, the Exploration Search process was comprised as an inner loop within the diversification loop [26].

Here, the DTS method applies pattern search to get better performance. The main operators used in the DTS are:

Memory elements Memory elements are used to provide anti-cycling rules and to diversify the search to unvisited areas of the solution space.

  • TL Due to the recency and objective function values, solutions are ranked and saved in the TL.

  • VRL The centers of the visited regions and the frequency of them are saved in the VRL for generating new diverse solutions.

  • TR and Semi-TR No new trial solution is allowed to be generated in a TR. A Semi-TR is a neighbor region around TR. New trial solutions are generated in a Semi-TRs, so that returning back to a visited TR is avoided.

APS In the APS method, the approximate descent direction method is used to find promising directions.

Exploration search In exploration search process, trial solutions are generated based on neighborhood region structures and the APS procedure.

Diversification search While the exploration search is taking a long time to improve the current solution, then the VRL is called to generate new diverse solutions.

Intensification search In this phase, NM method IS applied starting from some of the best solution found till now.

In the DTS method, the exploration, diversification, and intensification search procedures are applied to develop the search process on a global strategy. Indeed, these search procedures are used to get a vast exploration and an extensive diversification. The DTS has been used in this work is stated in Algorithm 1.

Algorithm 1. Directed Tabu Search

  1. 1.

    Initialization. Select an initial solution, and set the TL and the VRL to be empty.

  2. 2.

    Exploration-Diversification Search (Main Loop). Repeat this main loop steps until a predefined number of consecutive main iterations fail to obtain improvement or the main loop iteration counter exceeds a predefined maximum number.

  3. 2.1.

    Exploration Search (Inner Loop). Repeat this inner loop steps until a predefined number of consecutive inner iterations fail to obtain improvement or the inner loop iteration counter exceeds a predefine maximum number.

  4. 2.1.1.

    Search Directions. Generate search directions based on the APS strategy. If the current solution lies in a Semi-TR, then generate search directions to point outside the TR.

  5. 2.1.2.

    Neighborhood Search. Generate neighborhood trial moves based on tabu restriction and aspiration criterion. While a better movement is found during this process, stop generating points and go to Step 2.1.4.

  6. 2.1.3.

    Local Search. Apply a predefine number of iterations of the NM method starting from the current solution.

  7. 2.1.4.

    Parameter Update. Replace the element with the smallest membership value in TL with the current solution and re-rank the TL elements, and update the VRL.

  8. 2.2.

    Diversification Search. Generate a diverse solution, and update the TL and VRL.

  9. 3.

    Intensification Search. Apply a complete NM method starting from some elite solutions in the TL.

Theoretical consideration

In numerical schemes, discussion on convergence of an propounded algorithm is essential. The convergence of discretization methods for OCP is a topic of active research [4, 13, 16, 16, 17, 2022]. In this section, we investigate the following questions:

  1. 1.

    Does the discretized problem \({\mathcal {A}}^M\) admit a feasible solution?

  2. 2.

    Does a sequence of discretized optimal solutions of problems \({\mathcal {A}}^M\) converge to the optimal solution of problem \({\mathcal {A}}\)?

In Theorem 1, it has been proven that the feasibility of discretized problems \({\mathcal {A}}^M\) is guaranteed if a solution to the continuous-time problem \(\mathcal {A}\) exists? It should be noted that the convergence analysis of the proposed scheme can be done using similar idea provided in [48]. First, we need the following lemma and definition.

Definition 1

[21] A function \({\mathcal {Q}}:[0,1]\rightarrow {\mathfrak {R}}\) belongs to Sobolev space, \(W^{l,p}\), if its jth weak derivative, \({\mathcal {Q}}^{(j)}\), lies in \(L^p[0,1]\) for all \(0\le {j}\le {l}\).

Lemma 1

[20] Given any function \({\mathcal {Q}}(t)\in {W^{l,\infty }},t\in [0,1],\) there is a polynomial \({\mathcal {P}}^M(t)\) of degree M or less, such that

$$\begin{aligned} \left| {\mathcal {Q}}(t)-{\mathcal {P}}^M(t)\right| \le CC_{\circ }M^{-l},\ \ \ \forall {t}\in [0,1], \end{aligned}$$

where C is a constant independent of M and \(C_\circ =\Vert {\mathcal {Q}}\Vert _{W^{l,\infty }}\).

Remark 1

The computational interval can be transformed from [0, 1] to [ab] via an affine transformation.

Theorem 1

(Existence) [48] Let (x(t), u(t)) be a feasible solution for problem \(\mathcal {A}\) and x(t) and u(t) belong to \(W^{l,\infty }\) with \(l\ge {2}.\) Then, there exists a positive integer \(M_{1}\), such that, for any \(M>M_{1}\), problem \({\mathcal {A}}^M\) has a feasible solution, \(({\mathcal {X}}^M(t_p),{\mathcal {U}}^M(t_p))\) and this feasible solution also satisfies in the following inequalities:

$$\begin{aligned} \Vert x(t_p)-{\mathcal {X}}^M(t_p)\Vert _{\infty }\le L_1(M-1)^{1-l}\ \ p=0,1,\ldots ,M-1 \end{aligned}$$
$$\begin{aligned} \Vert u(t_p)-{\mathcal {U}}^M(t_p)\Vert _{\infty }\le L_2(M-1)^{1-l}\ \ p=0,1,\ldots ,M-1 \end{aligned}$$

in which \(t_p\) is Gauss–Legendre node or Gauss–Chebyshev node, and \(L_{1}\) and \(L_{2}\) are positive constant independent of M.

We establish in Theorem 1 the existence of feasible solutions for discretized problem \({\mathcal {A}}^M\). The next theorem demonstrates that there exists a sequence of optimal solutions of problems \({\mathcal {A}}^M\) converging to an optimal solution of problem \(\mathcal {A}\)? Let \(X^*=[{\overline{x}}_{0}^{M*},\overline{x}_{1}^{M*},\ldots ,\overline{x}_{M-1}^{M*}]^T\) and \(U^*=[\overline{u}_{0}^{M*},\overline{u}_{1}^{M*},\ldots ,\overline{u}_{M-1}^{M*}]^T\) be the optimal solutions of the problem \({\mathcal {A}}^{M}\). The approximate optimal control and state are

$$\begin{aligned} {{\mathcal {X}}^M}^{*}(t)=\sum _{i=0}^{M-1}\overline{x}_{i}^{M*}\psi _{i}(t), \ \ \ \ \ {{\mathcal {U}}^M}^*(t)=\sum _{i=0}^{M-1}\overline{u}_{i}^{M*}\psi _{i}(t). \end{aligned}$$

The next theorem will be demonstrated the convergence of the sequence \(\{({{\mathcal {X}}^M}^{*}(t_p),{{\mathcal {U}}^M}^{*}(t_p))\}_{M=M_1}^{\infty }\).

Theorem 2

(Convergence of optimal solutions) [48] Let \(\{({{\mathcal {X}}^M}^{*}(t_p),{{\mathcal {U}}^M}^{*}(t_p)),0\le {p}\le {M-1}\}_{M=M_1}^{\infty }\) be a sequence of optimal solutions to problem \(\mathcal {A}\). If \(\lim _{M\rightarrow \infty }{{\mathcal {X}}^M}^{*}(t_0)=\tilde{x}_0\), \(\lim _{M\rightarrow \infty }{{\mathcal {U}}^M}^{*}(t_0)=\tilde{u}_0\) and the function sequence \(\{({{\mathcal {X}}^{M}}^{*'}(t),{{\mathcal {U}}^{M}}^{*'}(t)),i=0,1,2,\ldots ,M-1\}_{M=M_1}^{\infty }\) has a subsequence that uniformly converges to the continuous functions \(\{p(t),q(t)\}\) on [0, 1], then \(\tilde{x}(t)=\int _{t_0}^{t}p(\tau )d\tau +\tilde{x_0}\) and \(\tilde{u}(t)=\int _{t_0}^{t}q(\tau )d\tau +\tilde{u_0}\) are the optimal solution of problem \(\mathcal {A}\).

Illustrative examples

In this section, two numerical examples are considered to illustrate the effectiveness of the pseudo-spectral method along with DTS scheme. The numerical results obtained from our propounded method is also compared with the results in other works in [35, 48]. The following numerical implementation is performed using Mathematica.

Example 1

Consider the minimization of functional

$$\begin{aligned} {\mathcal {J}}=\int _{0}^{1}(x(t)-\sin (t))^2+(u(t)-t)^2{\mathrm{d}}t, \end{aligned}$$

subject to Borzabadi et al. [13]

$$\begin{aligned} x(t)=y(t)+\int _{0}^{t}u(s)(x(s)+t){\mathrm{d}}s, \end{aligned}$$

where \( y(t)=t\cos (t)-\frac{1}{2}t^{3}.\)

The optimal value of cost function is \(\mathcal {J}^*=0\). The optimal control \(u^*(t)\) and corresponding optimal state \(x^*(t)\) are as follows:

$$\begin{aligned} \left\{ \begin{array}{c} x^*(t)=\sin (t),\\ u^*(t) =t.\ \ \ \ \ \ \end{array}\right. \end{aligned}$$

The approximate solutions for both state and control functions together with the exact solutions are depicted in Figs. 1 and 2. The blue lines in the figures indicate the exact optimal solutions and the red lines are the approximate solutions. The absolute errors of cost functional value, \(E^{\mathcal {J}}\), for example 1, are compared with those obtained from the methods Maleknejad and Almasieh [35] and Tohidi and Samadi [48] in Table 1.

Table 1 Numerical results of Example 1
Fig. 1
figure 1

Exact and approximate optimal control

Fig. 2
figure 2

Exact and approximate optimal state

Example 2

Consider the minimization of the cost functional

$$\begin{aligned} {\mathcal {J}}=\int _{0}^{1}(x(t)-e^{-t^2})^2+(u(t)-t)^2{\mathrm{d}}t, \end{aligned}$$

subject to the controlled Volterra integral

$$\begin{aligned} x(t)=y(t)-\int _{0}^{t}u(s)t x(s){\mathrm{d}}s. \end{aligned}$$

where \(y(t)=e^{-t^2}+\frac{t(1-e^{-t^2})}{2}.\) This problem has the optimal solutions \(u^*(t)=t\) and \(x^*(t)=e^{-t^2}.\) Figures 3 and 4 show the exact and approximate optimal control and state. Table 2 gives the results obtained from our proposed scheme and the methods in Maleknejad and Almasieh [35] and Tohidi and Samadi [48].

Fig. 3
figure 3

Exact and approximate optimal control

Fig. 4
figure 4

Exact and approximate optimal state

Table 2 Numerical results of Example 2

At the end, we answer a natural question: are there advantages of the proposed pseudo-spectral method along with DTS method compared with the existing ones? To answer this, we summarize what we have observed from numerical experiments and theoretical results as follows:

  • As seen in Examples 1 and 2, the proposed method with a few collocation points has satisfactory results with respect to other methods.

  • The proposed orthogonal collocation method leads to rapid convergence, as the number of collocation points increases. The main reason for this fast convergence is that the DTS explore the global search space using local information about promising search direction.


In this study, an advanced numerical PS method has been proposed for solving optimal control of Volterra integral equation by means of Lagrange polynomials via collocation method. The problem has been reduced to a finite-dimensional parametric optimization, and there exist many effective algorithms which can be applied to solve the NLP. To solve this problem, directed tabu search (DTS) method is applied. This algorithm comes from the incorporation of a modified Tabu Search (TS) with two local optimizer methods. The local optimizers are direct search methods, which aim to find a better solution neighbor to the present best solution by conducting the intensification and diversification along the move direction of the best solution in the area. The results indicate that using DTS could help to get better solutions of problems than available approximate methods. Illustrative examples have shown the validity, applicability, and efficiency of the proposed method. The method is in the case of optimal control of systems governed by VIE which is applicable in the field of practical science and engineering [34].