An Application Of Dingo Optimization Algorithm (DOA) For Solving Continuous Engineering Problems

One of the classes of engineering problems in engineering design problems, where a set of variables is calibrated in order for the optimization function to have a minimal or maximal value. This function considers energy efficiency, cost efficiency, and production efficiency in engineering design. One of the ways such problems are solved is metaheuristics. In this paper, we demonstrate how Dingo Optimization Algorithm (DOA) can be used to solve certain optimization problems in mechanical engineering. Firstly, a brief review of the DOA and its biological inspiration is given, along with the most important formulae. The pseudo-code for this algorithm was written using MATLAB R2020a software suite. Dingo Optimization Algorithm (DOA) was used to optimize engineering problems, such as pressure vessel optimization, stepped cantilever beam, car side-impact, and cone clutch optimization. The results presented in this paper show that the DOA can produce relevant results in engineering design problems.


INTRODUCTION
Most engineering problems can be formulated as optimization problems.Different methods have been studied in mathematical programming, operations research, etc.Since 2000, quite a few novel metaheuristics have been developed to solve optimization problems better.Today, the most famous biologically inspired metaheuristic algorithms are Whale Optimization Algorithm (WOA), Genetic Algorithm (GA), Ant Colony Optimization (ACO), Differential Evolution (DE), Lion Optimization Algorithm (LOA), Grasshopper Optimization Algorithm (GOA), Sine Cosine Algorithm (SCA), Bat Algorithm (BA), Particle Swarm Optimization (PSO), Grey Wolf Optimizer (GWO), Simulated Annealing (SA), etc.The differential evolution algorithm (DE) was applied by Gašić, Abderazek for solving structural optimization problems [1].In the paper by Khalifeh et al. [2], Harris Hawks' Optimization (HHO) was used to optimize a practical problem of a city in Iran called Homashahr, where the problem was minimizing the cost of the water distribution network.The solution yielded by the algorithm was compared to the current cost of the network, and the algorithm optimized that cost.
In computer science, a particular class of problems exists called NP-complete problems or nondeterministic polynomial problems.The main characteristic of such problems is that the solution space is large to the extent that searching it systematically and in detail demands temporal and spacial computer resources in plethora.This means that a given problem' solution may be verified in polynomial time, but whether or not there is a solution cannot be determined.One method of solving such problems is using metaheuristics.Metaheuristics represent a semi-randomized approach to tackling the solution space.
There are two parts to each metaheuristic algorithm: exploration and exploitation.Since the search space is large, it must be explored using a randomized best-effort approach, which is done during prospecting.This performs "large hops" in solution space but does not pursue the best solution in detail.After a part of the solution, space is chosen, it is the job of exploitation to systematically search all possibilities in the vicinity.Metaheuristic algorithms may use one solution to solve a certain problem (called s-based or single solution metaheuristics) or a population of solutions (called p-based or population-based).S-based transforms a single solution to solve a problem, while the p-based uses a population of solutions to search the solution space and converge to the best member of the population.S-based metaheuristics conserve computer memory, but special considerations should be taken in exploring the neighborhood of a solution and the solution space.P-based metaheuristics cover the solution space better while lacking the flexibility and the memory efficiency of s-based metaheuristics.Typical representatives of the s-based metaheuristics are Local Search, Simulated Annealing, and Variable Neighborhood Search.In contrast, the typical representatives of the p-based Meta-heuristics are Whale Optimization Algorithm, Genetic Algorithm, and Ant Colony Optimization.
The whale optimization algorithm [8] (WOA) mimics the behavior of humpback whales.This algo-rithm was used to solve various optimization problems, such as the knapsack problem [9] and the traveling salesman problem [10].Other search agents are moving towards the prey, which is the current best solution, with varying strategies.In the exploration phase, each whale moves towards a random whale to further explore the search space, while in the exploitation phase, the whales encircle the prey and move towards it.
The swarm intelligence of ants inspires ant colony optimization [11] (ACO).The main characteristic of this algorithm is that each time a search agent solves the search space, he leaves a trail of pheromones behind.In time, this trail lingers, while if more and more ants go through the same route, the trail is strengthened.This pheromone trail may represent a part of the solution or the solution space and defines the motion of search agents in the next operation, with the parts of the solution where the pheromone trail is the strongest having the highest probability of being selected.This algorithm was used to solve, for instance, the traveling salesman problem [12] and engineering design problems [13].
Bats' echolocation inspires the Bat optimization algorithm [9] (BA).The spatial orientation of bats works so that a bat finds out about its surroundings based on the echo his shriek returns.The bats let out a shriek of random wavelength in a random search direction.Based on the average loudness of bats and the chosen direction, the bats move towards the prey, indicated by the best solution.This algorithm was used to solve engineering problems [14,15], as well as distribution generation problems [16].
A genetic algorithm [17] is a class of algorithms based on natural selection.First, a population is created, where each solution consists of parts called genes.A portion of the population is selected at the end of each iteration, based on a higher fitness value (goal function), to be further modified in the next iteration.Then, the selection is mutated using various operators by selecting a part of the solution and changing it somehow.This algorithm was applied in structural design [18] and fuel cell design [19] problems.
The sine cosine algorithm [20] bases the movement of the population on sine and cosine functions.The initial population is created randomly, and it moves towards or from the best solution using sine and cosinebased mathematical models.Several random and adaptive variables are present in the algorithm to better explore the solution space and achieve convergence.This algorithm has been used in solving a wide range of optimization problems [21,22].
Simulated annealing [23] is inspired by the annealing process in metallurgy.The main problem in optimization is getting stuck in local optima.This problem is particularly present in single-solution metaheuristics.In order to avoid this, the solution space must be explored in a certain manner.Simulated annealing does this by accepting worse solutions than the current best with a probability.As time or iterations pass, the probability of accepting a worse solution is lower, therefore focusing on the exploitation part of the algorithm.Simulated annealing was used in engineering problems [24,25].
The Grey wolf optimization [26] (GWO) draws inspiration from wolf packs.In the grey wolf hierarchy, there are alpha, beta, delta, and omega members.The wolves hunt the prey (best solution), each in their own manner.The alpha, beta, and delta are the second, third and fourth best search agents, while the omega wolves are other search agents.The main characteristic of this algorithm is that the alpha, beta, and delta wolves move directly towards the prey.In contrast, all other wolves move with a mean vector of movement vectors of alpha, beta, and delta wolves.This algorithm solved heat distribution [27] and mechanical design problems [28].
In this paper, the Dingo Optimization Algorithm (DOA) is used to solve selected engineering problems.The first problem is the optimization of a pressure vessel, where the main goal is to reduce the material, montage, and welding costs.This problem was solved by Differential Evolution (DE) algorithm in [29].The second engineering problem is stepped cantilever beam optimization, where the goal is to minimize the weight under a set of constraints.Gandomi used the cuckoo Search Algorithm (CSA) to solve this problem [30].
The third problem is the automobile side-impact optimization problem, intending to minimize total vehicle weight using eleven design variables.This problem was first subjected in a paper by Gu [31].The fourth and last engineering problem is cone coupling optimization.Better cone couplings have less volume, which is the optimal value for this problem.This example was defined in [32].
This paper consists of five sections.In section 1 brief introduction to the field of metaheuristics, engineering design problems, and used algorithms is given.In section 2, the Dingo Optimization Algorithm (DOA) is described in detail.In section 3, optimization models are discussed, and section 4 compares experimental results for the selected set of engineering problems in applied mechanics.Finally, in section 5, conclusions based on experimental results are discussed.

DINGO OPTIMIZATION ALGORITHM
Dingoes are mammals that live predominantly in Australia and represent an ancient lineage of dogs [33].The name "dingo" stems from the Dharug language used by the Indigenous Australians of the Sydney area.The word "dingo" stands for "dog" in their language.The taxonomy of this species is unclear since the scientific community cannot agree whether dingoes are a subspecies of dogs or wolves or an entire species on their own.There are four taxonomical terms for the dingo: Canis familiaris, Canis familiaris dingo, Canis dingo, and Canis lupus dingo.The main characteristic of dingoes that inspired this algorithm is the social hierarchy.When dingos hunt, they either hunt alone or in cooperative packs.The typical diet consists of small game such as rabbits, rodents, birds, and lizards.This species is not a carnivorous one since dingos can also eat fruits and plants.When near human settlements, they may scavenge for food, a common occurrence in their Asian range.In Figure 1, a typical representation of the hunting behavior of dingos is given.The pack is led by its most dominant member, male or female.Their responsibility is to make decisions for the pack, select sleeping places, and lead the hunt.The second level in the hierarchy is the beta dingo, which is the mediator between the alpha and the rest of the pack.Also, if the alpha dies, the beta takes over his place.Other pack members are the subordinates, who follow alphas and betas.Dingoes have highly developed communication, which exchanges information about the pack, a form of greeting, contesting dominance, etc.Eight sound classes with 19 sound types have been identified, most of which are barking, howling, and other sounds.Dingoes are said to be intelligent predators.This is reflected in the behavior that dingoes try to find the weak spot of the animal they're hunting and exploit it.Usually, they prey on young, vulnerable, and wounded animals.They feed on small prey, such as fish, insects, crabs, frogs, rabbits, and large prey, such as kangaroos, cattle, water buffalo, and feral horses.Hunting strategy is characterized in their phases as follows, as shown in Figure 1: Chasing and approaching Encircling and harassing Attack Two main parts of this algorithm are exploration and exploitation.Exploration (represented in Figure 1 (a), also called the encircling phase) serves to explore the problem space as broadly as possible.In contrast, exploitation (represented in Figure 1 (b), also called the attack phase) serves to converge to a current best solution in the final iterations of the algorithm.The best search agent is the goal or aim prey, while the other search agents change their strategies to get closer to prey whilst exploring the search space to their fullest.In the encircling phase, dingoes move according to equations (1)-( 5): Here, vectors a1 and a2 represent vectors of random variables in [0,1].In these formulae, vector D represents the distance vector, while the vector P represents the position vector.The subscript d represents the dingos, while the subscript p represents the prey.Here, the prey refers to the best search agent, while the dingos refer to all other search agents.Vectors A B determine the portion of the solution space around the prey to which other dingoes converge.B It is used to determine whether the prey is moving away from the search agent or the prey is chased by the pack, indicated by values less than -1 in the first case and greater than 1 in the second case.In the hunting phase, a common supposition in the case of this class of biologically inspired algorithms is that the members of the pack (other search agents) have a good intuition about where the prey (the best search agent) is located.In this phase, the alpha and beta are the two best solutions in the dingo pack, shown in the formulae by their subscripts, while other dingoes follow them, updating their positions accordingly.The movement equations are ( 6)- (11), given below: The intensities of each dingo are calculated as follows: ( ) ( ) ( ) If the position is not updated, the hunt is over, and dingoes proceed to attack the prey.The value b is linearly decreased with a number of iterations.The values α D are in the range [-3b, 3b].Therefore, as iterations pass, this range is shortened, and the dingoes slowly come to a stop.
The pseudo-code for this algorithm is given below: Input: The population of dingoes

PROBLEM FORMULATION
In this section, each optimization problem is described in detail, namely: fitness or goal function, the practical basis for the problem, which parameter it is consisted of, and which conditions are required of the variables.
In each example, the fitness function is denoted by f(x), while the i-th constraint is represented by g i (x).Every step of this process was done using the MATLAB R2020a software suite.

Example 1
The primary concern for designing a pressure vessel (Figure 2) is to reduce the costs of material, montage, and welding.The problem takes into account the following variables: shell thickness (denoted by x 1 , in Figure 2), dish end thickness (denoted by x 2 , T s in Figure 2), shell radius (denoted by x 3 , R in Figure 2), shell length (denoted by x 4 , in figure 2).

Example 2
A cantilever beam (Figure 3) is an important element in mechanical engineering, whose design is to be handled with utmost care.Minimization of the said beam's weight represents the main goal in design.As seen in Figure 3, the beam consists of five hollow box-shaped bearings and square-shaped frames.The lengths of the five bearings are this problem's variables.Due to the fact that the beams' basis is a square for each beam, the values for h i and b i are the same and are the five variables used in this model.

Figure 3. Stepped cantilever beam design problem
The mathematical formulation constraints of this problem are described in Eqs. ( 22) to ( 24 The considered variable ranges are described in Eq (24).The automobile (Figure 4) is exposed to a side impact, taking into consideration the procedures of the EEVC, which is short for the European Enhanced Vehicle-Safety Committee.The aim is to minimize the car's total weight using eleven mixed variables.Eleven variables should be optimized: the thickness of the B-Pillar inner (x 1 ), the thickness of the B-Pillar reinforcement (x 2 ), the thickness of the floor side inner (x 3 ), the thickness of the cross members (x 4 ), the thickness of the door beam (x 5 ), the thickness of the door beltline reinforcement (x 6 ), the thickness of the roof rail (x 7 ), the thickness of the materials of B-pillar inner (x 8 ), the thickness of the materials of floor side inner (x 9 ), barrier height (x 10 ) and hitting position (x 11 ).( ) 1.98 4.90 6.67 6.98 4.01 1.78 2.73 x (25) subject to ( ) ( ) 1 2 3 4 5 6 7 0.5 , , , , , ,

Example 4
The cone clutch (Figure 5) problem must be designed to minimize the volume coupling and be subjected to two constraints.Problem variables in the case of this problem are the inner radius x 1 and the outer radius x 2 of the coupling.

Figure 5. Cone clutch design problem
The goal function in the case of this problem is: ( ) ( ) while the conditions to be met are:

RESULTS AND DISCUSSION
This section gives the results obtained by using DOA on a set of selected engineering problems.
In the case of the pressure vessel problem, what has been considered a good result for the goal function is 5885.3327,with the results shown in Table 1.

Table 1. Comparison of results for the pressure vessel
Variables GWO [30] GOA [31] WCA [32] DOA As the results show, DOA has shown better results than current literature.
In the case of the cantilever beam design problem, the results are presented in Table 2.The results from the literature, where the ALO, MMA, and GOA methods are used for this problem, are to be found in the same table.As can be seen from the results, the DOA gives near-optimal results, close to the MMA, ALO, and GOA methods.
For the problem of a car side impact, the results are displayed in Table 3, along results obtained by MFO, GOA, and WOA methods.In the case of car side impact optimization, DOA gives the same result as MFO and GOA, while WOA gives slightly worse results.
The DOA, GWO, GOA, and WCA algorithms were found in the literature for the case of the cone clutch problem.The result comparison is given in Table 4.

Table 4. Comparison of results for the cone clutch
Variables GWO [30] CS [36] GOA [ As can be seen from Table 4, the DOA gives better results than all three algorithms.
As can be seen from comparing the results to the solutions in the literature, the DOA has shown to obtain optimal or near-optimal solutions in the case of given engineering problems.This indicates that the DOA has the potential for solving this class of optimization problems.

CONCLUSION
This paper describes the DOA algorithm and applies it to a selected set of engineering problems.This set com-prises pressure vessel, cantilever beam, car side-impact, and cone clutch design problems, which are described in detail, and highlighted by figures, goal function, and constraints descriptions.
The chosen input parameters are 100 search agents and 500 iterations of the algorithm.This is because, as was discovered during the research, increasing the values of these input parameters did not yield better solutions.
In the case of pressure vessel optimization, the DOA gives better results than the methods it was compared to.In the case of the other three optimization problems, namely: cantilever beam, cone clutch, and car side impact problem, the DOA yielded near-optimal solutions.The main downside to this algorithm, as is with all p-based metaheuristic algorithms, is that it is computationally intensive.Therefore, the DOA should be tested on problems with more dimensions.Since the results of this paper have been compared to the results found in the literature, the DOA yielded optimal or near-optimal results.This means that the algorithm should be tested to solve other mechanical design problems, which could represent the basis for future work.The results are shown in this paper, considering that with this amount of search agents and iteration count, nearoptimal or better results, compared to the current literature, were obtained, paving the way for testing this algorithm further in the area of mechanical design.The main downside to this algorithm, as is with all p-based metaheuristic algorithms, is that it is computationally intensive, which should hinder problems with a large number of dimensions.The algorithm's parameters should be tuned for the problems where the optimal solution was not found with the help of metaheuristic algorithms.Some of the problems could potentially have better solutions outside the defined lower and upper bounds, leading to further research.Because metaheuristic algorithms use stochastics to move through the solution space, different random number generators and varying seed values should be tested to find better solutions for optimization problems.

Figure 1 .
Figure 1.Hunting behavior of dingoes: (a) chase and approach the prey, (b) encircle and harass the prey, (c) attack and hunt down the prey

( 13 )( 15 ) 1 ( 17 )
D n (i = 1, 2, …, n) Output: The best dingo.(This being the case of minimization problem) (1) Generate initial search agents D in (2) Initialize the value of b , A , and B (3) While Termination conditions not reached do (4) Evaluate each dingo's fitness and intensity cost.(5) α D = dingo with the best search (6) β D = dingo with the second-best search Estimate the fitness and intensity cost of dingoes (14) Record the value of α F , β F and o F Record the value of b , A , and B (16) Iteration = Iteration + Check if Iteration >= Stopping criteria (18) Output End while

Figure 4 .
Figure 4. Car model for side impact design problem The mathematical formulation constraints of this problem are described in Eqs.(25) to (38) : the paper[29]. ):