1 Introduction

Evolutionary algorithms (EA) are commonly used for solving complex numerical optimization problems (i.e., multimodal, non-differentiable, highly nonlinear, and constrained design problems) [1,2,3,4,5,6,7]. EAs are population based, iterative, stochastic search mechanisms, searching for optimum solutions that belong to the related problem [8,9,10,11]. Random solution of a numerical optimization problem is demonstrated with a pattern containing individuals as the dimension of the problem [8, 12,13,14,15]. EAs can find the near optimum solution of a problem by using limited number of patterns. Patterns are kept in a pattern matrix having different patterns as the rows [8, 15]. Interaction models defined between the pattern matrix elements bring in collective search capability to EAs. EAs can be classified as swarm-inspired [1,2,3,4, 7,8,9,10,11,12,13], bio-inspired [16, 17], or nature-inspired [18, 19] algorithms. Bio-inspired EAs, the most frequently used EAs, simulate various genetic processes such as selection, mutation, and crossover analogically, with the help of the interaction models that they are using. EAs use interaction models to generate trial patterns by using the present patterns. If a trial pattern produces more feasible results than the pattern that it corresponds, then it is added to the pattern matrix instead of the related pattern at the next iteration. Problem-solving successes of EAs are generally sensitive to several parameters; i.e., structural properties of the problem, dimension of problem, initial form of the pattern matrix, random number generator that is being used, total number of function evaluation value.

EAs have been used in the solution of various structural engineering design problems [20, 21], such as communication applications [7], image processing applications [22], solution of some speech recognition problems [23], solution of sensor deployment problems [24], various data mining applications [25], design of IIR filters [26], video processing [27], and solution of other several engineering problems [28,29,30,31,32,33,34,35].

The nature of a numerical optimization problem defines whether it is a unimodal, multimodal, separable, non-separable, scalable or hybrid problem, or not [1, 10,11,12]. Unimodal problems have a single local solution, which is the same with the global solution. Multimodal problems have several global solutions. Therefore, in the solution of multimodal problems, EAs using interaction models that do not trap the local solutions should be used. In separable problems, since each variable is independent from the other variables, in the solution of this type of problems, each variable can be optimized independently. In non-separable problems, all variables have to be optimized together. In scalable problems, computational complexity of problem changes with changing dimension of problem. Problem-solving success of EAs is sensitive to whether they have trial pattern generation strategy appropriate to the nature of the related problem, or not.

EAs generally produce a trial pattern with the usage of a crossover process defined between the patterns or a mutation process based on a statistical distribution model. Pattern generation strategies used in EAs are frequently based on interaction between patterns. (i.e., swarming). EAs benefit from a trial pattern to evolve a pattern to a pattern that iteratively provides a better fitness value. In order to generate a trial pattern, patterns selected as the raw genetic material among the present patterns are mixed by using various pseudo-genetic operators. System equations defining the trial pattern generation processes used in EAs generally show important similarities [8]. Besides, usage style of the related system equations shows significant differences in EAs. The strategy that an EA uses for trial pattern generation influences its problem-solving success and speed. Researches continue to develop new EAs that can solve complex engineering problems.

This paper introduces WDE that can solve different types of numerical problems (i.e., separable, non-separable, unimodal, multimodal, and hybrid problems). WDE is a non-recursive, iterative algorithm; the swarming process of WDE is very efficient. Therefore, WDE is generally not trapped easily with local solution. This increases WDE’s success in solving numerical problems considerably. WDE uses a random crossover-based swarming strategy to generate interaction pattern. While evolving a pattern into a more feasible pattern, WDE produces a trial pattern by changing some randomly selected or all individuals of the related pattern with the related individuals of an interaction pattern. Though trial pattern generation strategy of WDE is very productive, there is a possibility of trapping to local solution in hybrid problems. Every pattern matrix of WDE evolves into a randomly selected and permuted pattern matrix to provide swarming in every iteration. While WDE generates a trial pattern by allowing the changing of only one individual for the first pattern matrix, it produces a trial pattern by allowing a randomly selected number of individuals for the second pattern matrix. WDE generates a trial pattern by allowing the changing of all individuals for the third pattern matrix.

In this paper, numerical optimization problem-solving capability of WDE is examined in detail by using CEC’ 2013 [36] numerical functional optimization problems. Cuckoo search algorithm (CS) [3, 8], artificial bee colony (ABC) [1], adaptive differential evolution algorithm (JADE) [37], and backtracking search optimization algorithm (BSA) [7] have been successful in the solution of many different engineering problems. Therefore, the success of WDE in the solution of functional optimization problems has been examined with statistical comparison with CS, ABC, JADE, and BSA. GPS-Based Geodesic network adjustment problem has been solved by using classical least square adjustment method and WDE. Engineering design problems have been solved by using PSO2011 [9], CPI-JADE [38], A+ [39], CS, ABC, JADE, BSA, and WDE.

Differential evolutionary algorithm (DE) is a statistical, powerful, and widely used evolutionary computation algorithm developed to solve real-valued numerical optimization problems. DE is robust, its implementation is relatively easy, and its structure is simple. DE is used in the solution of unimodal, multimodal, and hybrid problem types. DE also has some disadvantages. The success of DE shows the sensitivity to the problem type. DE suffers from premature convergence, especially when solving multimodal and hybrid problems. The global search capability of DE is sufficient for many problem types. However, the local search ability of DE is weak. Also, DE suffers from low convergence speed. The standard DE tends to rapidly reduce the diversity of the population. This restricts DE’s search ability. The performance of DE generally decreases rapidly as the search space size increases. DE is sensitive to the selection of control parameters, and it is time-consuming and difficult to tune them for different problems. The success of DE depends on the crossover and mutation strategy it uses at the moment. DE is not strong enough to determine efficient evolutionary direction and evolutionary step size [7, 8, 15].

The need to develop a method that does not have the inherent limitations of DE has motivated the development of WDE. The problem-solving success of the WDE is, to a large extent, not dependent on the problem type, as opposed to the DE. Also, WDE does not need to use a different mutation process like DE for each problem type. The crossover and mutation process of WDE is different from the crossover and mutation processes of DE; they are simpler and much more efficient. Compared to DE, WDE has the ability to determine very efficient evolutionary search direction and evolutionary step. In addition, WDE does not allow the diversity of the population to decline rapidly. For this reason, it may continue to do efficient searches in progressive iterations, contrary to DE. Because WDE does not have a control parameter in practice, the time-consuming and difficult parameter tuning process of DE is not available in WDE.

This paper is organized as follows: In Sect. 2, nomenclature is given. In Sects. 3 and 4, weighted differential evolution algorithm (WDE) and experiments are presented, respectively. In Sect. 5, conclusions and possible research directions are given.

2 Nomenclature

Symbol

Meaning/definition

\({\mathcal{F}}\)

Objective function

lowup

Search Limits

N

Size of population

D

Dimension of problem

MaxCycle

Maximum number of iterations

gmin

Global minimum

gbest

Global minimizer

\(\kappa _{(\cdot )} \sim U(0,1),\kappa _{(\cdot )} \ne 0\)

Uniform random number

\(\lambda _{(\cdot )} \sim N(0,1)\)

Normal random numbers

\(\alpha ,\beta \sim U(0,1)\)

Uniform random numbers

\(P_{(i0,j0)} \,\,\,\,\vert \,\,\,P_{(i0,j0)} \,\sim \mathrm{\mathbf{U}}(low_{(j0)}, up_{(j0)} )\)

Patterns of pattern matrix

\(fitP_{(i0)}\)

Fitness values of \(P_{i0=1:N} \)

\(\text{ permute() }\)

Permuting function

\(^{\circ }\)

Hadamart operator

3 Weighted differential evolution algorithm (WDE)

WDE is a bi-population based, iterative, evolutionary search algorithm developed to solve real-valued numerical optimization problems. WDE has been designed as a global minimizer algorithm. WDE can perform bounded or unbounded search. The elitist EAs are generally successful in solving the unimodal problems. However, the elitist behavior that an EA exhibits may cause it to be trapped with local solutions. Therefore, partially elitist functioning of an EA accelerates its convergence to solution and prevents it from being trapped with local solutions.

The initialization process of WDE includes defining the initial population (i.e., pattern matrix; P). P is computed by using Eq. 1;

$$\begin{aligned} {P_{(i0,j0)}}\sim {\mathbf{{U}}}\left( {lo{w_{(j0)}},u{p_{(j0)}}} \right) \,\,\,|\,\,\,\left( {\underbrace{2N}_{\mathrm{rows}},\underbrace{D}_{\mathrm{colums}}} \right) \leftarrow size\left( P \right) \end{aligned}$$
(1)

Here, \({}i0=[1:2N],\,\,{}{}j0=[1:D]{}{},where{}\,\,\,{}\,\,i0,\,\,j0\in \mathrm{Z}^{+}.\) In Eq. 1, N is the pattern vector number, and D is the problem dimension. \(low_{j0}, up_{j0}\) are the lower and upper search limits of the \(j0th\) parameter. \(U(\cdot )\) denotes the continuous uniform distribution. The objective function value of \(P_{i0}\) is computed by using Eq. 2;

$$\begin{aligned} fit{P_{(i0)}} = {\mathcal{F}}\left( {{P_{(i0)}}} \right) \end{aligned}$$
(2)

In Eq. 2, \(\mathcal{F}\) denotes the objective function. The first selection process of WDE generates a sub-pattern matrix, SubP, from P. WDE generates SubP by randomly selecting N pattern vectors from P in each iteration where\(\left( {\underbrace{N}_{\mathrm{rows}},\underbrace{D}_{\mathrm{colums}}} \right) \leftarrow size\left( {SubP} \right)\). SubP is defined by using Eq. 3;

$$\begin{aligned} SubP = {P_{(k)}}\,\,\,|\,\,\,\,\{ \,k = {j_{(1:N)}}\,\,|\,\,j = permute\,(1:2N) \end{aligned}$$
(3)

In Eq. 3, \(permute\left( \cdot \right)\) denotes the permuting function. The objective function values, fitSubP, of the pattern vectors of SubP are defined in Eq. 4;

$$\begin{aligned} fitSubP=fitP_{(k)} \end{aligned}$$
(4)

The mutation process aims to generate new pattern vectors, i.e., TempP. WDE regenerates \(TempP_{index=1:N} =\left[ {\begin{array}{l} TempP_{1} \\ \ldots \\ TempP_{N} \\ \end{array}} \right]\) in each iteration by using Eq. 5;

$$\begin{aligned} TempP_{(index)} =\sum {(w\circ P_{(l)} )} \,\,\,\,\vert \,\,\,\,l=j\backslash k\,\,\,(see\,\,Eq. 3\,\,for\,\,j,k) \end{aligned}$$
(5)

where \(index=1:N\) and \(index\in \mathrm{Z}^{+}\). In Eq.5, \(w^{*}=\kappa _{(N)}^{3} {}{}\,\,\,\vert \,\,\,{}{}[N,1]=size(w^{*})\) where \(w^{*}:=\frac{w^{*}}{\sum {w^{*}} }\) and \(w=w^{*}\times \varDelta\) where \(\varDelta = {\left[ 1 \right] _{\left( {1,D} \right) }}\).

WDE updates the initial \(M_{\left( {1:N,1:D} \right) } =0\) in each iteration by using Eq. 6, and uses the updated M to control the mutation process;

$$\begin{aligned} \text{ M }_{(index,J)}\,{\text{:=}} 1 \end{aligned}$$
(6)

In Eq. 6, \(J=V\left( {1:\left\lceil {K\times D} \right\rceil } \right) \,\,\,\,\vert \,\,\,\,{\text{ V}}={\text{ permute }}\left( {j0} \right) .\)K is defined with the rule in Eq. 7;

$$\begin{aligned} {\mathrm{If}}\,\,\,\alpha <\beta \,\,\,\mathrm{then}\,\,\,\,K=\kappa _{(1)}^{3} \,\,\,\,\mathrm{else}\,\,\,K=(1-\kappa _{(1)}^{3}) \end{aligned}$$
(7)

In Eq. 7, \(\alpha , \beta , \kappa \sim U(0,1),\,\,\left( \cdot \right) =size(\kappa _{(.)}\).

In WDE, \(\kappa _{(\cdot )}\) generates \(\left( \cdot \right)\)-sized real-valued uniform random number, each time it is used. In WDE, the evolutionary step size (i.e., scale factor), F, is computed by using the rule given in Eq. 8;

$$\begin{aligned} {\mathrm{if}\,\,\,\alpha <\beta \,} {\mathrm{then}} F&= {} [\lambda _{(D)}^{3} ]'\,\,\,{}{}\vert \,\,\,\,{}{}[\underbrace{1}_{\mathrm{rows}},\underbrace{D}_{\mathrm{columns}}]=size(F) \nonumber \\ {\mathrm{else}} F&= {} (\lambda _{(N)}^{3} \times \varDelta )\,\,\,{}\vert {}\,\,\,\,{}[\underbrace{N}_{\mathrm{rows}},\underbrace{D}_{\mathrm{columns}}]=size(F) \end{aligned}$$
(8)

In WDE, trial vector, T, is generated by using Eq. 9;

$$\begin{aligned} T=SubP+F\times M\circ \left( {TempP-SubP_{(m)}} \right) \,\,\,\,\,\,\vert \,\,\,\,\,\,m=permute(i)\vert m\ne [1:N] \end{aligned}$$
(9)

here, \(i=1:N\,\,|\,\,i \in \mathrm{Z}^{+}\). \(T\notin \left[ {{\begin{array}{*{20}c} {low} &{} {up} \\ \end{array} }} \right]\) values are updated by using Eqs. 10 and 11;

$$\begin{aligned}&\text{ if }\,\,\,\,\left( {T_{(i,j0)} <low_{(j0)} } \right) \,\,\,\,\,\text{ then }\,\,\,T_{(i,j0)} =low_{(j0)} +\kappa _{(1)}^{3} \left( {up_{(j0)} -low_{(j0)} } \right) \end{aligned}$$
(10)
$$\begin{aligned}&\text{ if }\,\,\,\,\left( {T_{(i,j0)} >up_{(j0)} } \right) \,\,\,\,\,\text{ then }\,\,\,T_{(i,j0)} =up_{(j0)} +\kappa _{(1)}^{3} \left( {low_{(j0)} -up_{(j0)} } \right) \end{aligned}$$
(11)

The objective function values of \(T_{i=1:N}\) vectors are computed by using Eq. 12;

$$\begin{aligned} fitT={\mathcal{F}}(T) \end{aligned}$$
(12)

T and fitT are used in order to update SubP and fitSubP as per the greedy-selection rule. The relevant updating process of WDE is defined by using the rule given in Eq. 13;

$$\begin{aligned} \text{ if }\,\,\,\left( {fitT_{(i^{*})} <fitSubP_{(i^{*})} } \right) \,\,\,\,\text{ then }\,\,\,\,[SubP_{(i^{*})} ,fitSubP_{(i^{*})} ]:=[T_{(i^{*})} ,fitT_{(i^{*})} ]\,\vert \,i^{*}\in i \end{aligned}$$
(13)

The updated SubP and fitSubP are used in order to update \(P_{(l)}\) and \(fitP_{(l)}\) values. The relevant updating process of WDE is shown in Eq. 14;

$$\begin{aligned}{}[P_{(l)} ,fitP_{(l)} ]:=[SubP,fitSubP] \end{aligned}$$
(14)

Here, see Eq. 5 for l. WDE achieves the searched global solution by using Eq. 15;

$$\begin{aligned}{}[gmin,gbest]=[fitP_{(\gamma )} ,P_{(\gamma )} ]{}\,\,\,\,{}\vert \,\,\,{}{}fitP_{(\gamma )} =\min (fitP){}\,\,\,,\,\,\,\,\gamma \in i \end{aligned}$$
(15)

The pseudo-code of the WDE is given in Fig. 1. The values of the parameters used in WDE can be determined randomly. In that case, WDE theoretically has no control parameter. Since the values of the parameters used in WDE are determined randomly, WDE has no parameter tuning process. Therefore, it is easy to use.

Fig. 1
figure 1

Pseudo-code of the WDE. The unoptimized MATLAB code of the WDE is publicly available at [40]

The novelties of WDE introduced herein are as follows:

  • The swarming process of WDE uses new stochastic mutation control mechanism.

  • WDE’ s system equation is partially similar to the system equation of differential evolution algorithm [15], but WDE’ s direction vector generation strategy is different.

  • The direction vectors generated in WDE are composed of the mixed vectors of different pattern vectors.

  • WDE uses a new method for boundary control.

  • The values of all parameters used in WDE are determined randomly. Therefore, WDE does not waste time to initial parameter tuning.

  • Since it has a non-recursive structure, WDE can be parallelized easily. Therefore, it is rather fast.

Similarities and differences between WDE and comparison algorithms are listed below:

  • WDE does not partially or totally act elitist like ABC, CS, and JADE.

  • WDE uses sub-populations for interacting pattern matrices.

  • Mutation and crossover strategies of WDE are different than those of comparison algorithms.

  • WDE is a bijective search algorithm like BSA.

  • WDE does not have any control parameters.

  • Boundary control mechanism of WDE is unique to itself.

  • Though basic system equations of WDE are somehow similar to DE/rand/1/bin [15], BSA, ABC, and CS, usage style of these equations are quite different than other algorithms.

  • WDE is structurally non-recursive as different from DE/rand/1/bin [15], ABC, and JADE [37]. Therefore, it can be parallelized without being modified.

  • Functioning of WDE is analogically based on the cooperation of bio-interacting sub-populations.

  • Functioning of WDE may be explained with the usage of bio-inspired evolutionary optimization processes (i.e., initialization, selection, mutation, and recombination/crossover) just like other EAs.

4 Experiments

Numerical optimization problem-solving capability of WDE that is introduced in this paper is examined by using CEC’ 2013s benchmark problems (i.e., F1–F28) [36] that consist of very complex problems.

In this paper, in order to examine the success of WDE in the solution of real-world engineering problems, one geometric optimization problem (i.e., GPS network adjustment problem ), F29 [41,42,43], and 4 engineering design problems have been used [2, 31].

Benchmark problems (i.e., F1–F28) have been solved for 50 trials by using a different initial population each time. The same initial population has been used for each algorithm in the experiments. Dimension of pattern matrix is 30, and stopping conditions used in the experiments are given below:

  1. 1.

    Stop if the absolute value of the solution obtained for the algorithm is smaller than \(10^{-16}\).

  2. 2.

    Stop if a better solution at the end of the last 200,000 function evaluations has not been obtained.

  3. 3.

    Stop when the function evaluation number reaches to 2,000,000.

In the tests performed in this paper, solutions obtained with WDE and comparison algorithms were pairwisely compared by using two-tailed Wilcoxon signed-rank test [44]. For Wilcoxon signed-rank tests that have been carried out in this paper, \(H_{0}\) hypothesis is defined as ‘data come from distributions with equal medians.’ ‘Significance level’ is used as \(\alpha =0.05\). If a corrected p value lower than or equal to \(\alpha\) value is produced in a test, then \(H_{0}\) hypothesis is rejected for that test. Alternative hypothesis is determined as \(F_{A} < F_{B}\). The validity of the alternative hypothesis is decided on by looking at whether Algorithm A provides a statistically better solution than Algorithm B or not, and the sizes of ranks provided by Wilcoxon signed-rank test (i.e., \(R^{+},R^{-}\) as in [43]).

Initial values of control parameters of the proposed algorithm and the comparison algorithms used in this paper are given in Table 1.

Table 1 Initial values of control parameters of the proposed algorithm and the comparison algorithms

4.1 Numerical function optimization problems: F1–F28

In this section, success of WDE in numerical function optimization problems has been examined with detailed applications. Basic statistical evaluations of the results (i.e., mean value of global minimum values (Ave), standard deviation value of global minimum values (Std), and runtime value in seconds (t (s)) obtained in the test performed by using F1–F28 are given in Table 2. The best ‘Ave’ values are marked with bold font in Table 2.

Mersenne Twister has been used in the tests as pseudo-random number generator [45].

Results that belong to the comparison of CEC’ 2013 [36] benchmark problem (i.e., F1–F28)-solving successes of WDE and comparison algorithms by using Wilcoxon signed-rank test [39] (\(p=0.05)\) are given in Table 3.

On the last row of Table 3, results obtained from WDE and comparison algorithms have been compared as (\(+,=,-\)) where (+) is the benchmark function number that WDE obtains a statistically better result than the related comparison algorithm, (=) is the benchmark function number that the performances of WDE and the related comparison algorithm are statistically equal and (−) is the benchmark function number that the related comparison algorithm obtains a statistically better result than WDE.

In the solution of CEC’ 2013 benchmark problems, when results of WDE and comparison algorithms were examined in (\(+,=,-\)) format, the following results are obtained as given in Table 3: CS (22,1,5), ABC (18,6,4), JADE (22,4,2), BSA (13,8,7). Accordingly, WDE had statistically better results (66.96%) than comparison algorithms in 75 out of a total of 112 piecewise comparisons. Successes of WDE and comparison algorithms are statistically similar in 19 (16.96%) comparisons. Comparison algorithms achieved statistically better results than WDE only in 18 comparisons (16.07%).

Table 2 Results that belong to tests carried out by using F1–F28
Table 3 Comparison of CEC’ 2013 benchmark problem (i.e., F1–F28)-solving successes of WDE and comparison algorithms by using Wilcoxon signed-rank test (\(p=0.05\))

4.2 GPS baseline network adjustment problem (F29)

GPS network adjustment problem is a geometric optimization problem widely encountered in Geodesy [41,42,43]. In this paper, in order to review WDE’s capability of solving the geometric optimization problems, the GPS Network defined in [41] has been adjusted by using WDE . The relevant GPS network includes 6 geodesic points defined as \(\text{ point}_{\text{ i }} =\left\langle {x,y,z} \right\rangle \,\,\,\vert \,\,\,i=1:6\). \(\text{ point }_{\text{1,2 }}\) are the fixed values in solution of the GPS network adjustment problem. \(\text{ points }_{\text{1,2 }}\) are given in Table 4. The baseline values of the relevant GPS Network are given in Table 5.

Table 4 Coordinates of fixed points; 1, 2 [41]
Table 5 The baseline values used in GPS baseline network adjustment problem (i.e., F29) [41]

The covariance values of the relevant observations are necessary for least squares adjustment (LSA) [41]. The related covariance values are given in page 323 of [41] for F29. WDE does not need covariance values in order to adjust the GPS network. On the relevant GPS Network, 13 baselines have been observed. Therefore, totally \(13\times 3=39\) observation equations have been acquired. \(\text{ points }_{\text{3:6 }}\) have totally \(4\times 3=12\) unknowns. Consequently, the relevant GPS network includes \(39-12=27\) redundant observations. Therefore, in this problem \(\text{ degree-of-freedom }=27\) [41]. In the adjustment process, the optimal values of totally 12 coordinate values of \(\text{ point }_{3\,\,:\,\,6}\) have been searched. Therefore, the problem dimension of the GPS baseline network adjustment problem is 12. According to definition, \(C_{1:6} =\left[ {{\begin{array}{*{20}c} {\text{ point }_{\text{1 }} } &{} {\text{ point }_{2} } &{} {\ldots } &{} {\text{ point }_{6} } \\ \end{array} }} \right] ^{\mathrm{T}}.\) In the objective function used for WDE, the baseline values have been computed by using \(f=C_{from} -C_{to} \,\,\,\vert \,\,\,\,\{from,to\}\in \left\{ {1:6} \right\}\). The relevant residual values, \(\nu\), have been acquired by using Eq. 16;

$$\begin{aligned} v=f-\left[ {\varDelta x} {\varDelta y}{\varDelta z} \right] _{\,1\,\,:\,\,13} \end{aligned}$$
(16)

In order to protect the centeroid of the GPS network during the search process, \(v:=v-mean(v)\) update has been made. mean(v) denotes the mean values of the residuals. The objective function used by WDE in order to adjust the GPS Network is given in Eq. 17;

$$\begin{aligned} \mathop {\mathrm{{argmin}}}\limits _{\mathrm{{poin}}{\mathrm{{t}}_{3\,\,:\,\,6}}} \,\,\,v^{\mathrm{T}}v \end{aligned}$$
(17)

While solving the GPS network adjustment problem by using WDE, the pattern matrix dimension has been selected as \(N=20\). The problem dimension is \(D=12\). WDE does not use the search space limits while solving the GPS network adjustment problem.

Table 6 The coordinates of the adjusted network points obtained with solution of the GPS network adjustment problem and the coordinate differences

The initial pattern matrix has been generated by using \(P_{(i0,j0)} \sim \mathrm{\mathbf{U}}\left( {0,1} \right)\). The global minimum value WDE has acquired in the final iteration is 0.0026484.

The coordinates of the adjusted network points obtained with solution of the GPS network adjustment problem and the relevant coordinate differences are given in Table 6.

When the adjusted-coordinates given in Table 6 have been compared by using Anova test, \(p\,\,\hbox {value}=0.00000\) has been obtained for X, Y, and Z. Therefore, the means values of the relevant adjusted-coordinates obtained by using LSA and WDE for p value \(<0.05\) are statistically equal. The loop closure values, \(\varDelta err_{loop}\), computed after the adjustment are given in Table 7.

Table 7 Post-adjustment loop closure values (in m); \(\varDelta err_{loop} =err_{LSA}-err_{WDE}\)

When the \(\varDelta err_{loop}\) values have been compared statistically by using Anova test, \(p\,\,\hbox {value} =4.2603e{-}08\) has been obtained. In that case, it can be said that the differences between \(err_{LSA}\) and \(err_{WDE}\) are not statistically significant for \(p\,\,\hbox {value}<0.05\). In that case, the mean of \(err_{LSA}\) and \(err_{WDE}\) belongs to an equal population. Therefore, LSA and WDE have reached statistically the same success for the \(\varDelta err_{loop}\) values in solution of the GPS network adjustment problem.

The mean and standard deviation values of the residuals obtained after completion of the adjustment process are given in Table 8.

Table 8 Mean and standard deviation values of residuals

After a review of Table 8, it is possible to say that the GPS network adjustment results achieved by using WDE protect the centeroid of the relevant network better than LSA.

The standard deviation values, \(m_{0}\), of the residuals computed for the baselines are given in Table 9.

Table 9 \(m_{0}\) values of the residual values obtained by using LSA and WDE

After a review of Table 9, it can be said that WDE has obtained a better \(m_{0}\) value compared to LSA. Therefore, WDE is successful in adjustment of the relevant GPS network.

In solution of the GPS network adjustment problem, WDE provides the following advantages in comparison to LSA:

  • There is no statistical difference between the results obtained in solution of the GPS network adjustment problem by using WDE or LSA. However, in order to achieve the solution, LSA uses a mathematical model that is much more complex than the mathematical model used by WDE.

  • In order to solve the relevant problem, LSA needs covariance values. However, WDE uses only the observed baseline parameters and fixed point parameters to solve the relevant problem.

  • WDE protects the centeroid of the relevant network more accurately.

  • WDE is capable of obtaining better \(m_{0}\) values than LSA.

4.3 Engineering design problems: F29–F32

F29–F32 are nonlinear constrained engineering optimization problems, and they were widely analyzed in optimization literature [2, 31]. Therefore, F29–F32 also were solved in this study:

  • Pressure-vessel design problem, F29 [2, 31],

  • Speed-reducer design problem, F30 [2],

  • Tension/compression string design problem, F31 [2, 31],

  • Welded-beam design problem, F32 [2, 31],

In this paper, the constrained handling method [2, 45, 46] used in [2] is employed to solve F29–F32 problems.

In the solution of F29–F32, problem-solving successes of particle swarm optimization algorithm (PSO2011) [2, 13], cumulative-information-based differential evolution algorithm (CPI-JDE) [38], Advanced Artificial Cooperative Search Algorithm (A+) [39], CS, ABC, JADE, BSA, and WDE (proposed) were compared. CPI-JDE and JADE are relatively new, and they are very successful DE algorithms.

Statistical results that WDE and comparison algorithms have obtained for F29–F32 are given in Table 10. When Table 10 is examined, WDE is seen to have obtained better results than PSO2011, CPI-JADE, ABC, and A+. Related problem-solving successes of WDE, JADE, BSA, and CS are statistically similar to a large extent.

Table 10 The mean-solution (Ave) and standard deviation of mean-solution (Std) values obtained by the relevant algorithms for the F29–F32

The detailed definitions of the mechanical-engineering-based nonlinear constrained optimization problems (i.e., F29–F32) are given in Sects. 4.4, 4.5, 4.6, and 4.7.

4.4 Pressure-vessel design problem: F29

This problem aims the design of a compressed air storage tank under a working pressure of 3000 psi and a minimum volume of \(750\,ft^3\), the schematic structure of which is shown in Fig. 2.

Fig. 2
figure 2

The schematic structure of pressure-vessel design problem

The mathematical model of this problem is defined in Eq. 18 [2, 31].

$$\begin{aligned} \mathop {\mathrm{argmin}}\limits _x \,\,\,f(x) = 0.6224 \cdot x_1 \cdot x_3 \cdot x_4 + 19.84 \cdot x_1^2 \cdot x_3 + 1.7781 \cdot x_2 \cdot x_3^3 + 3.1661 \cdot x_1^2 \cdot x_4 \end{aligned}$$
(18)

Subject to:

$$\begin{aligned} c_1 (x) &= - x_1 + 0.0193 \cdot x_3 \le 0 \\ c_2 (x) &= - x_2 + 0.0954 \cdot x_3 \le 0 \\ c_3 (x) &= - \pi \cdot x_3^2 \cdot x_4 - \frac{4}{3} \cdot \pi \cdot x_3^3 + 1,296,000 \le 0 \\ c_4 (x) &= x_4 - 240 \le 0 \\ \end{aligned}$$
(19)

where the bounds are,

$$\begin{aligned} 0.0625 \le x_1 ,x_2 \le 6.1875 \end{aligned}$$
(20)

and

$$\begin{aligned} 10 \le x_3 ,x_4 \le 200 \end{aligned}$$
(21)

4.5 Speed-reducer design problem: F30

This problem aims the design of the speed reducer shown in Fig. 3.

Fig. 3
figure 3

Speed-reducer problem

The mathematical model of this problem is defined in Eq. 22 [2, 31].

$$\begin{aligned} \mathop {\mathrm{argmin}\,}\limits _x \,\,f(x)&= {} 0.7854 \cdot x_1 \cdot x_2^2 \cdot (3.3333 \cdot x_3^2 + 14.9334 \cdot x_3 - 43.0934) \nonumber \\&-\, 1.508 \cdot x_1 \cdot (x_6^2 + x_7^2 ) + 7.4777 \cdot (x_6^2 + x_7^2 )\nonumber \\&+\, 0.78054 \cdot (x_4 \cdot x_6^2 + x_5 \cdot x_7^2 ) \end{aligned}$$
(22)

Subject to

$$\begin{aligned} c_1 (x)&= {} \frac{{27}}{{x_1 \cdot x_2^2 \cdot x_3 }} - 1 \le 0 \nonumber \\ c_2 (x)&= {} \frac{{397.5}}{{x_1 \cdot x_2^2 \cdot x_3^2 }} - 1 \le 0 \nonumber \\ c_3 (x)&= {} \frac{{1.93 \cdot x_4^3 }}{{x_2 \cdot x_3 \cdot x_6^4 }} - 1 \le 0 \nonumber \\ c_4 (x)&= {} \frac{{1.93 \cdot x_5^3 }}{{x_2 \cdot x_3 \cdot x_7^4 }} - 1 \le 0 \nonumber \\ c_5 (x)&= {} \frac{1}{{110 \cdot x_6^3 }}\sqrt{\left( {\frac{{750.0 \cdot x_4 }}{{x_2 \cdot x_3 }}} \right) ^2 + 16.9 \cdot 10^6 } - 1 \le 0 \nonumber \\ c_6 (x)&= {} \frac{1}{{85 \cdot x_7^3 }}\sqrt{\left( {\frac{{750.0 \cdot x_5 }}{{x_2 \cdot x_3 }}} \right) ^2 + 157.5 \cdot 10^6 } - 1 \le 0 \nonumber \\ c_7 (x)&= {} \frac{{x_2 \cdot x_3 }}{{40}} - 1 \le 0 \nonumber \\ c_8 (x)&= {} \frac{{5 \cdot x_2 }}{{x_1 }} - 1 \le 0 \nonumber \\ c_9 (x)&= {} \frac{{x_1 }}{{12 \cdot x_2 }} - 1 \le 0 \nonumber \\ c_{10} (x)&= {} \frac{{1.5 \cdot x_6 + 1.9}}{{x_4 }} - 1 \le 0 \nonumber \\ c_{11} (x)&= {} \frac{{1.5 \cdot x_7 + 1.9}}{{x_5 }} - 1 \le 0 \end{aligned}$$
(23)

where the bounds are,

$$\begin{aligned}&\mathrm{{2}}.\mathrm{{6}} \le x_\mathrm{{1}} \le \mathrm{{3}}.\mathrm{{6}} \nonumber \\&0.\mathrm{{7}} \le x_\mathrm{{2}} \le 0.\mathrm{{8}} \nonumber \\&\mathrm{{17}} \le x_\mathrm{{3}} \le \mathrm{{28}} \nonumber \\&\mathrm{{7}}.\mathrm{{3}} \le x_\mathrm{{4}} \le \mathrm{{8}}.\mathrm{{3}} \nonumber \\&\mathrm{{7}}.\mathrm{{8}} \le x_\mathrm{{5}} \le \mathrm{{8}}.\mathrm{{3}} \nonumber \\&\mathrm{{2}}.\mathrm{{9}} \le x_\mathrm{{6}} \le \mathrm{{3}}.\mathrm{{9}} \nonumber \\&\mathrm{{5}}.0 \le x_\mathrm{{7}} \le \mathrm{{5}}.\mathrm{{5}} \end{aligned}$$
(24)

4.6 Tension/compression spring design problem: F31

The aim of this problem is to determine the values of the relevant parameters minimizing the weight of a tension/compression spring under various constraints [2, 31, 46, 47]. The schematic structure of a tension/compression spring is shown in Fig. 4.

Fig. 4
figure 4

Tension/compression spring problem

The mathematical model of this problem is defined in Eq. 25 [2, 32].

$$\begin{aligned} \mathop {\mathrm{{argmin}}}\limits _x \,\,\,f(x) = (x_3 + 2) \cdot x_1^2 \cdot x_2 \end{aligned}$$
(25)

Subject to

$$\begin{aligned} c_1 (x)&= {} 1 - \frac{{x_2^3 \cdot x_3 }}{{71785 \cdot x_1^4 }} \le 0 \nonumber \\ c_2 (x)&= {} \frac{{4x_2^2 - x_1 \cdot x_2 }}{{12566 \cdot x_1^3 \cdot x_2 - x_1^4 }} + \frac{1}{{5108 \cdot x_1 }} - 1 \le 0 \nonumber \\ c_3 (x)&= {} 1 - \frac{{140.45 \cdot x_1 }}{{x_2^2 \cdot x_3 }} \le 0\nonumber \\ c_4 (x)&= {} \frac{{x_1 + x_2 }}{{1.50}} - 1 \le 0 \end{aligned}$$
(26)

where the bounds are

$$\begin{aligned} 0.05\le & {} x_1 \le 2.0 \nonumber \\ 0.25\le & {} x_2 \le 1.3 \nonumber \\ 2.0\le & {} x_3 \le 15.0 \end{aligned}$$
(27)

4.7 Welded-beam design problem: F32

This problem aims dimensioning of the welded steel beam [2, 31], the structure of which is shown in Fig. 5, and determining the welding length value.

Fig. 5
figure 5

The schematic structure of welded-beam design problem

The mathematical model of this problem is given in Eq. 28;

$$\begin{aligned} \mathop {\mathrm{{argmin}}}\limits _x \,\,f(x) = 1.10471 \cdot x_1^2 \cdot x_2 + 0.04811 \cdot x_3 \cdot x_4 \cdot (14 + x_2 ) \end{aligned}$$
(28)

Subject to

$$\begin{aligned} c_1 (x)&= {} t(x) - t_{\max } \le 0 \nonumber \\ c_2 (x)&= {} \sigma (x) - \sigma _{\max } \le 0 \nonumber \\ c_3 (x)&= {} x_1 - x_4 \le 0 \nonumber \\ c_4 (x)&= {} 0.10471 \cdot x_1^2 + 0.04811 \cdot x_3 \cdot x_4 \cdot (14 + x_2 )\nonumber \\&-\, 5 \le 0 \nonumber \\ c_5 (x)&= {} 0.125 - x_1 \le 0 \nonumber \\ c_6 (x)&= {} \delta (x) - \delta _{\max } \le 0 \nonumber \\ c_7 (x)&= {} P - P_c (x) \le 0 \end{aligned}$$
(29)

where

$$\begin{aligned} t(x)&= {} \sqrt{t_1^2 + \frac{{2 \cdot t_1 \cdot t_2 \cdot x_2 }}{{2 \cdot R}} + t_2^2 } \nonumber \\ t_1&= {} \frac{P}{{\sqrt{2} \cdot x_1 \cdot x_2 }}\nonumber \\ t_2&= {} \frac{{M \cdot R}}{J} \nonumber \\ M&= {} P \cdot \left( {L + \frac{{x_2 }}{2}} \right) \nonumber \\ R&= {} \sqrt{\frac{{x_2^2 }}{4} + \left( {\frac{{x_1 + x_3 }}{2}} \right) ^2 } \nonumber \\ J&= {} 2 \cdot \left\{ {\sqrt{2} \cdot x_1 \cdot x_2^{} \cdot \left[ {\frac{{x_2^2 }}{{12}} + \left( {\frac{{x_1 + x_3 }}{2}} \right) ^2 } \right] } \right\} \nonumber \\ \sigma (x)&= {} \frac{{6 \cdot P \cdot L}}{{x_4 \cdot x_3^2 }} \nonumber \\ \delta (x)&= {} \frac{{4 \cdot P \cdot L^3 }}{{E \cdot x^4 \cdot x_3^3 }} \nonumber \\ P_c (x)&= {} \frac{{4.013 \cdot \sqrt{E \cdot G \cdot x_3^2 \cdot x_4^6 /36} }}{{L^2 }}\left( {1 - \frac{{x^3 }}{{2 \cdot L}} \cdot \sqrt{\frac{E}{{4 \cdot G}}} } \right) \end{aligned}$$
(30)

The material properties and constraint values used above are given as follows:

$$\begin{aligned} P&= {} 6000 \nonumber \\ L&= {} 14 \nonumber \\ \delta _{\max }&= {} 0.25 \nonumber \\ E&= {} 30 \cdot 10^6 \nonumber \\ G&= {} 12 \cdot 10^6 \nonumber \\ t_{\max }&= {} 13,600 \nonumber \\ \sigma _{\max }&= {} 30,000 \end{aligned}$$
(31)

where the bounds are,

$$\begin{aligned}&0.1 \le x_1 \le 2 \nonumber \\&0.1 \le x_2 \le 10 \nonumber \\&0.1 \le x_3 \le 10 \nonumber \\&0.1 \le x_4 \le 2 \end{aligned}$$
(32)

5 Conclusions and possible research directions

The determination of most feasible evolution direction and evolutionary step size is the most important problem that is encountered in evolutionary computation. Determination of the most feasible evolutionary direction depends on the type of the problem to a high extent. WDE, introduced in this paper, uses fully randomized control parameters, hence it does not have any control parameters in practice. WDE uses swarmmized sub-pattern matrices in order to generate unique direction patterns. This property of WDE facilitates its solving problems of different types to a high extent. The simple strategy that WDE uses for evolutionary step size generation brings in a quite feasible local and global search capability. Functioning of WDE consists of classic genetic processes (i.e., selection, mutation, crossover). WDE is a bijective, non-recursive, swarm-based global search algorithm. Performed tests show that WDE is statistically very successful in the solution of numerical function optimization problems. WDE is also quite successful in the solution of real-world design problems. As demonstrated by the statistical results obtained by the extensive tests that have been carried out, WDE is shown to be quite successful in the solution of complex numerical problems.

In this paper, the general structure of WDE and the problem-solving success are examined. In order to further develop WDE in the future, the possibilities for using different chaotic maps can be explored. In future studies, the performance of WDE in solution of large-scale optimization problems can be examined.

As a consequence, WDE has a potential to be used in the solution of various engineering design problems, signal processing applications, and various industrial design problems.