Keywords

1 Introduction

Due to the importance of preventing unexpected structural failures, vibration-based damage detection methods have been widely investigated over the last few decades to monitor the health of various structures. These methods are considered as efficient and reliable non-destructive techniques for damage detection of structures. Generally, damaged structures problems can be divided into two main categories including forward problems and inverse problems. In the forward problems, the natural frequencies and mode shapes of a damaged structure are determined using damage size and location. In contrast, in the inverse problems, the damage size and location are determined using modal parameters of the damage [1]. In the forward problems, an experimental method is usually used to find the natural frequencies and mode shapes of a damaged structure. In addition, there are other methods, such as the finite element method (FEM) and damage modeling method to model and find the natural frequencies and mode shapes of a damaged structure. Also, in recent decades, many methods have been developed for solving inverse problems.

One of the most popular inverse damage detection methods is the optimization-based method. In this method, the optimization problem is formulated using the objective function based on modal parameters such as natural frequencies, mode shapes, and other modal damage indicators. Various researches have presented different optimization algorithms for finding optimum values of the optimization-based damage detection problems.

Dinh-Cong et al. [2] used the Jaya algorithm for detecting damage in plate-like structures. Gomes et al. [3] applied a sunflower optimization algorithm (SFOA) in order to identify damage in laminated composite plates. Mishra et al. [4] presented an antlion optimization algorithm (ALO) in order to identify damages in structures based on vibration data. Maity et al. [5] proposed a genetic algorithm (GA) for evaluating damages in structures based on changes in natural frequencies. In this study, it was demonstrated that GA can find damages with proper precision. Alexandrino et al. [6] presented a multi-objective GA in order to detect damages in a plate structure. In this robust optimization, authors demonstrated that using the multi-objective GA, artificial neural network (ANN), and fuzzy set theory as a tool for decision making in order to the best solution can be very useful. In Barman et al. [7], the performance of particle swarm optimization (PSO) algorithm and continuous ant colony optimization (ACOr) in order to detect damages in plane and space truss structure was compared. The proposed objective function was based on frequency and mode shapes. Another optimization-based algorithm is imperialist competitive (IC) algorithm. Gerist et al. [8] used the IC algorithm to detect damage in structures using a new objective function based on mode shapes. In Kim et al. [9], an optimization-based algorithm called differential evolution (DE) was applied to identify locations and severities in structures with multiple damages. Ding et al. [10] artificial bee colony (ABC) algorithm was applied to optimize the damage detection problem of a plate and a truss. A novel algorithm called P-NMA was proposed in order to damage the detection of structure based on vibration data [11]. The objective function used in this study was based on changes in frequencies before and after occurring damage in the structure. In a study [12], harmony search (HS) algorithm was proposed to identify damage under ambient vibration. Zhong et al. [13] utilized a method based on the MUSIC algorithm to identify near-field damage in a composite structure. Abdalla et al. [14] used the PSO algorithm for detecting damage in a cantilever beam. Yuan et al. [15] using an improved genetic algorithm and residual force method performed damage detection optimization.

According to the above cite references and literature review on damage detection using optimization algorithms, there is no study on compression of performance of PSO and GA in a vibration-based damage detection problem.

In this paper, a novel objective function based on the residual force vector is proposed. Then, the performance of two powerful algorithms called particle swarm optimization (PSO) algorithm and genetic algorithm (GA) for optimization of the proposed objective function is evaluated in terms of accuracy and computational time. The results are reported for several damage scenarios.

The rest of this study is organized as follows. Section 2 deals with the dynamic model for vibration-based damage detection. In this section, first, the residual force method (RFM) is introduced, and then the proposed objective function based on RFM is formulated. Section 3 presents the implementation of PSO and GA algorithms. In Sect. 4, numerical examples are presented to compare the performance of PSO and GA algorithms with the proposed objective function in various single and multiple damage scenarios. Finally, Sect. 5 concludes the current paper.

2 Dynamic Model for Vibration-Based Damage Detection

2.1 The Residual Force Method (RFM)

In this study, a new objective function inspired by the RFM is proposed to formulate damage detection optimization problem as an inverse problem. The proposed objective function does not require the mode shapes commonly used in conventional RFM-based objective function for damage detection of structures. Here, the main idea RFM is considered.

The governing equation of motion in a FEM-based multi-degree system is expressed as [16]:

$$\left[ M \right]\left\{ {\ddot{x} \left( t \right)} \right\} + \left[ K \right]\left\{ {x\left( t \right)} \right\} = F\left( t \right)$$
(1)

where \(\left[ M \right]\) and \(\left[ K \right]\) are the global mass and stiffness matrices, respectively. \(\left\{ {\ddot{x} \left( t \right)} \right\}\) is the acceleration velocity, and \(\left\{ {x\left( t \right)} \right\}\) is the displacement vector caused by the applied force \(F\left( t \right)\). If \(F\left( t \right) = 0\), then the governing equation of motion of free vibration for the considered system is obtained as follows:

$$\left[ M \right]\left\{ {\ddot{x} \left( t \right)} \right\} + \left[ K \right]x(t) = 0$$
(2)

By considering the harmonic response \(\left\{ x \right\} = \left\{ \varphi \right\}e^{i\omega t}\) and the corresponding acceleration \(\left\{ {\ddot{x}} \right\} = - \omega^{2} \varphi e^{i\omega t}\), Eq. (2) can be obtained as:

$$\left[ M \right]\left\{ { - \omega^{2} \left\{ \varphi \right\}} \right\} + \left[ K \right]\left\{ \varphi \right\} = 0$$
(3)

For ith vibration mode, Eq. (3) is written as:

$$\left[ M \right]\left\{ { - \omega_{i}^{2} \left\{ {\varphi_{i} } \right\}} \right\} + \left[ K \right]\left\{ {\varphi_{i} } \right\} = 0$$
(4)

where \(\omega\) is the natural frequency of the system, and \(\varphi_{i}\) is its corresponding mode shape vector in ith mode. Equation (4) is called the ith eigenvalue equation. If \(\omega_{i}^{2} = \lambda_{i}\), Eq. (4) can be expressed in a standard form as follows:

$$\left[ M \right]\left\{ { - \lambda_{i} \left\{ {\varphi_{i} } \right\}} \right\} + \left[ K \right]\left\{ {\varphi_{i} } \right\} = 0$$
(5)

Using the finite element method, the global stiffness matrix \(\left[ K \right]\) can be written as follows:

$$\left[ K \right] = \mathop \sum \limits_{j = 1}^{m} \left[ k \right]_{j}$$
(6)

where m represents the number of elements and the local stiffness matrix for the jth element is denoted by \(\left[ k \right]_{j}\).

In this paper, the global stiffness matrix of a damaged structure is denoted by \(\left[ {K_{d} } \right]\). Thus, Eq. (6) for the damaged structure can be rewritten as:

$$\left[ {K_{d} } \right] = \mathop \sum \limits_{j = 1}^{m} \alpha_{j} \left[ k \right]_{j}$$
(7)

where \(\alpha_{j } \in \left[ {0,1} \right]\) represents a reduction of rigidity. If the value \(\alpha_{j}\) is 1, then the jth element is undamaged and in the case \(\alpha_{j}\) = 0, the jth element is completely damaged, and when 0 < αj < 1, the jth element is partially damaged.

By definition presented in Eq. (7), ith eigenvalue equation of a damaged structure can be obtained as:

$$\left[ M \right]\left\{ { - \lambda_{di} \left\{ {\varphi_{di} } \right\}} \right\} + \left[ {K_{d} } \right]\left\{ {\varphi_{di} } \right\} = 0$$
(8)

where \(\varphi_{di}\) is the ith mode shape vector of the damaged structure, and \(\lambda_{di}\) is the natural frequency of damaged structure in the ith mode. It should also be noted that the global mass matrix \(\left[ M \right]\) remains unchanged after occurring damage because physically, the reduction of mass of structure caused by occurring crack or damage is intangible.

Substituting Eq. (7) in Eq. (8), the following expression may be written:

$$R_{i} = \left[ M \right]\left\{ { - \lambda_{di} \left\{ {\varphi_{di} } \right\}} \right\} + \mathop \sum \limits_{j = 1}^{m} \alpha_{j} \left[ k \right]_{j} \left\{ {\varphi_{di} } \right\} = 0$$
(9)

In the above equation, \(R_{i}\) is called the residual force vector for the ith mode. It is obvious that by setting a proper set of \(\alpha_{j}\) and having \(\lambda_{di}\) and \(\varphi_{di}\), the value of the residual force vector \(R_{i}\) will be 0.

2.2 Proposed Objective Function Based on RFM

Due to \(\left\{ {\varphi_{di} } \right\} \ne 0,\) Eq. (9) can be simplified as follows:

$$F_{i} = \left[ M \right]\left\{ { - \lambda_{di} } \right\} + \mathop \sum \limits_{j = 1}^{m} \alpha_{j} \left[ k \right]_{j} = 0$$
(10)

In this paper, the proposed objective function based on Eq. (10) is expressed as:

$$F_{i} = \sqrt {\mathop \sum \limits_{e = 1}^{n} \left( {\left[ M \right]\left\{ { - \lambda_{ie} } \right\} + \mathop \sum \limits_{j = 1}^{m} \alpha_{j} \left[ k \right]_{je} - \left[ M \right]\left\{ { - \lambda_{die} } \right\} - \mathop \sum \limits_{j = 1}^{m} \alpha_{dj} \left[ k \right]_{je} } \right)^{2} }$$
(11)

where e is element number, and n is the total number of elements in the considered structure. Also, i is vibration mode number. Therefore, the proposed optimization objective function of this study is formulated as follows:

Minimize

$$F_{i} = \sqrt {\mathop \sum \limits_{e = 1}^{n} \left( {\left[ M \right]\left\{ { - \lambda_{ie} } \right\} + \mathop \sum \limits_{j = 1}^{m} \alpha_{j} \left[ k \right]_{je} - \left[ M \right]\left\{ { - \lambda_{die} } \right\} - \mathop \sum \limits_{j = 1}^{m} \alpha_{dj} \left[ k \right]_{je} } \right)^{2} }$$
(12)

subjected to

$$\alpha_{j } \in \left[ {0,1} \right]$$

where \(\alpha_{j }\) is design variables of the above objective function for damage detection problem, and also, d stands for ‘damage.

3 Implementation of PSO and GA Algorithms

3.1 PSO Algorithm

Particle swarm optimization (PSO) is an optimization method inspired by social behavior between birds in a flock. This algorithm uses swarm intelligence in order to optimize objective functions [17]. In PSO, each bird is symbolically represented as a particle (solution) in the n-dimensional search space.

The first step of this technique is initialization with a random population and then evolving over a generation in order to find an optimum solution. In this process, each particle has a changing velocity and position. Changing particle’s position is done using information obtained from the previous position as well as its current velocity. Particles know their best position (personal best) and the best position among personal bests (global best). This principle is mathematically expressed as follows [18]:

$$V_{in}^{k + 1} = wV_{in}^{k} + c_{1} \times rand_{1} \left( {p_{in} - X_{in}^{k} } \right) + c_{2} \times rand_{2} \left( {p_{gn} - X_{in}^{k} } \right)$$
(13)
$$X_{in}^{k + 1} = X^{k}_{in} + V_{in}^{k + 1}$$
(14)

In the above expressions, w is the inertia weight factor; \(V_{in}^{k}\) is particle’s velocity i at iteration k in the dimension of the search space n; \(p_{in}\) denotes the best personal position experienced by the particle i considering its fitness value; \(c_{1}\) and \(c_{2}\) denotes acceleration coefficients, \(rand_{1}\) and \(rand_{2}\) represent random values (between 0 and 1) to ensure converging PSO algorithm around an extended search space; \(X_{in}^{k}\) is particle’s current position i at iteration k in the dimension of the search space n; and \(p_{gn}\) is the global best position of the particle in search space.

Equations (13) and (14) express that at every iteration k + 1 the new position of the particle i is determined through adding its current velocity (\(V_{in}^{k + 1}\)) to its position (\(X_{in}^{k}\)).

3.2 GA Algorithm

The genetic algorithm (GA) is an optimization inspired by Charles Darwin’s theory of evolution. Using GA, the process of natural selection is numerically simulated to solve an optimization problem. The aim of GA is to find an approximate optimal solution by presenting a set of optimal points. This process is started with selecting the fittest individuals in a population. Then, the selected individuals produce offspring that inherit the features of their parents. Then, the produced offspring is added to the next generation. The parents that have better relative fitness their offspring have more chance of surviving. The process continues to the end of the process to obtain the fittest and best individuals. Here, each individual represents a solution for the optimization problem; therefore, the fittest individual corresponds to the best solution for the optimization problem [19]. Generally, there are five main phases in the structure of the genetic algorithm, namely initial population, fitness function, selection, crossover, and mutation.

In the initial population phase, initialization is performed to set individuals as an initial population. Each individual in this population is considered as a solution for the optimization problem. Each individual is described by a series of variables called genes. A set of genes form a string that is named a string or chromosome. In other words, each chromosome represents a corresponding solution. In the fitness function phase, individuals are fitted in order to obtain a fitness score for each individual. The fitness score is the criteria for selecting individuals to be reproduced [20]. The fittest individuals are selected in the selection phase for transmitting them to the next generation. In this phase, two pairs of parents are selected according to their corresponding fitness scores. There is more chance for individuals that have high fitness for being chosen to reproduce [21]. Crossover phase is one of the most important phases in the structure of the genetic algorithm. A crossover point randomly is selected in order to mate between all pair of parents [22]. The final phase in the structure of the genetic algorithm is related to mutation. In a few offspring, some genes are subjected to the mutation randomly. It occurs for maintaining diversity among individuals and preventing premature convergence. The GA algorithm terminates if the generation has converged and the produced offspring are remarkably distinct from the prior generation. In such a condition, the genetic algorithm provides a solution to the optimization problem.

4 Numerical Examples

Four cantilever beams shown in Fig. 1 are considered in order to compare the performances of GA and PSO algorithms with experimental data obtained from FEM. Two types of damage scenarios called single damage scenarios (cases 1 and 2) and multiple damage scenarios (cases 1 and 2) are addressed. In the first case of the single damage scenario, element 3 is damaged by reducing 30% in damage index. The second case of the single damage scenario, element 2 is damaged by reducing 10% in damage index. In the first case of the multiple damage scenario, element 1, element 2, and element 5 are damaged by reducing 80%, 30%, and 70% in damage index, respectively.

Fig. 1
figure 1

Damage scenarios in four studied beams in details: a single damage scenario—case 1, b single damage scenario—case 2, c multiple damage scenario—case 1, d multiple damage scenario—case 2

The finite element method is used in order to obtain frequencies of damaged beams in different mentioned scenarios. Beams are divided into five elements. The effective stiffness matrix \(\left[ {K^{e} } \right]\) and the effective mass matrix \(\left[ {{\text{m}}^{e} } \right]\) for each element of beams are written as follows:

$$[{\text{K}}^{e} ] = \left[ {\begin{array}{*{20}c} {\frac{12EI}{{l_{e}^{3} }}} & {\frac{6EI}{{l_{e}^{2} }}} & {\frac{ - 12EI}{{l_{e}^{3} }}} & {\frac{6EI}{{l_{e}^{2} }}} \\ {\frac{6EI}{{l_{e}^{2} }}} & {\frac{4EI}{{l_{e} }}} & {\frac{ - 6EI}{{l_{e}^{2} }}} & {\frac{2EI}{{l_{e} }}} \\ {\frac{ - 12EI}{{l_{e}^{3} }}} & {\frac{ - 6EI}{{l_{e}^{2} }}} & {\frac{12EI}{{l_{e}^{3} }}} & {\frac{ - 6EI}{{l_{e}^{2} }}} \\ {\frac{6EI}{{l_{e}^{2} }}} & {\frac{2EI}{{l_{e} }}} & {\frac{ - 6EI}{{l_{e}^{2} }} } & {\frac{4EI}{{l_{e} }}} \\ \end{array} } \right]$$
(15)
$$[m^{e} ] = \left[ {\begin{array}{*{20}c} {\frac{{156\rho Al_{e} }}{420}} & {\frac{{22\rho Al_{e}^{2} }}{420}} & {\frac{{54\rho Al_{e} }}{420}} & {\frac{{ - 13\rho Al_{e}^{2} }}{420}} \\ {\frac{{22\rho Al_{e}^{2} }}{420}} & {\frac{{4\rho Al_{e}^{3} }}{420}} & {\frac{{13\rho Al_{e}^{2} }}{420}} & {\frac{{ - 3\rho Al_{e}^{3} }}{420}} \\ {\frac{{54\rho Al_{e} }}{420}} & {\frac{{13\rho Al_{e}^{2} }}{420}} & {\frac{{156\rho Al_{e} }}{420}} & {\frac{{ - 22\rho Al_{e}^{2} }}{420}} \\ {\frac{{ - 13\rho Al_{e}^{2} }}{420}} & {\frac{{ - 3\rho Al_{e}^{3} }}{420}} & {\frac{{ - 22\rho Al_{e}^{2} }}{420}} & {\frac{{4\rho Al_{e}^{3} }}{420}} \\ \end{array} } \right]$$
(16)

The constant properties of the considered beams are listed in Table 1. After producing frequencies of damaged beams using FEM in order to generate corresponding objective functions, GA and PSO algorithms are used in order to detect damages in the mention scenarios.

Table 1 Constant properties of considered beams

Parameters settings in PSO and GA algorithms are listed in Tables 2 and 3, respectively.

Table 2 PSO parameters setting
Table 3 GA parameters setting

Results obtained from FEM, GA, and PSO for the single damage scenario and multiple damage scenarios are listed in Tables 4 and 5, respectively. As mentioned, represents a reduction of rigidity. If the value of the damage index \(\alpha_{j}\) is 1, then the jth element is undamaged and in the case \(\alpha_{j}\) = 0, the jth element is completely damaged, and when 0 < \(\alpha_{j}\) < 1, the jth element is partially damaged.

Table 4 Damage index obtained GA and PSO compared with those determined in FEM for the single damage scenario
Table 5 Damage index obtained GA and PSO compared with those determined in FEM for the multiple damage scenario

The results of the current study are graphically presented in Figs. 2, 3, 4, 5, 6, 7, 8, 9.

Fig. 2
figure 2

Damage indices for single damage scenario, case 1

Fig. 3
figure 3

Evolutionary process in single damage scenario, case 1

Fig. 4
figure 4

Damage indices for single damage scenario, case 2

Fig. 5
figure 5

Evolutionary process in single damage scenario, case 2

Fig. 6
figure 6

Damage indices for multiple damage scenario, case 1

Fig. 7
figure 7

Evolutionary process in multiple damage scenario, case 1

Fig. 8
figure 8

Damage indices for multiple damage scenario, case 2

Fig. 9
figure 9

Evolutionary process in multiple damage scenario, case 2

Results reported in Tables 4 and 5 as well as Figs. 2, 3, 4, 5, 6, 7, 8, 9 demonstrate that the PSO algorithm can detect the location and severity of damaged areas of the beam in all four cases with high accuracy. Therefore, in terms of the accuracy of the solution, the PSO algorithm is a more efficient algorithm than the GA algorithm for detecting damages through the proposed objective function. This is because of the nature of the discreteness of the PSO algorithm and the proposed objective function. Also, in terms of convergence of the two compared algorithms, according to results, PSO indicates better convergence to the optimum solution over 700 generations in all scenarios than the GA algorithm. Finally, in terms of run time, according to Table 6, the GA algorithm indicates less elapsed time, but in trading off between accuracy, convergence, and elapsed times of the two algorithms, it is concluded that the PSO algorithm is further efficient than GA algorithm.

Table 6 Time elapsed by GA and PSO algorithms for different damage scenarios

5 Conclusions

In this study, a damage detection method is presented in order to compare and estimate the performance of the PSO algorithm with the GA algorithm for a proposed objective function based on the residual force method. Two damage scenarios called the single damage scenario and the multiple damage scenario in the form of four damage cases are considered in order to find the location and severity of damages in damaged elements. The experimental data are obtained from FEM as a criterion for comparing the results of PSO and GA algorithms. PSO and GA algorithms optimize the proposed objective function and achieve different results. Findings indicated high efficiency of the proposed method using the PSO algorithm in all damage cases. It is concluded that the PSO algorithm is more suitable than the GA algorithm.