{'fraction_non_alphanumeric': 0.02431847684984855, 'fraction_numerical': 0.005019472090004327, 'mean_word_length': 4.9049565661727135, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Ultrasonic NDT optimization using Randomized Adaptive Differential Evolution

Ultrasonic non-destructive testing (UT) enables to control the integrity of critical parts. The design of transducers and the optimization of inspection procedures might be involved tasks due to the possibly large number of parameters to consider. For complex configurations, experts generally have to perform a parametric study using simulation tools, which can be time-consuming and fastidious. Here, an automatic method for the optimization of inspection parameters (positioning, setting and/or designing the transducer) is proposed. It uses an evolutionary algorithm linked with forward modelling algorithms that are already implemented in the ultrasonic module of CIVA. The method is then successfully tested on a realistic UT application of nozzle inspection, and further extended to handle constraints and achieve specific accuracy in order to optimize the design of a transducer.


Introduction
Ultrasonic non-destructive testing (NDT) aims at the control of the integrity of critical components or structures by performing and interpreting more or less complex echograms. Because of the evolution of technologies in industry, ultrasonic testing (UT) has to be adapted to new materials or increasingly complicated geometries, which makes harder a proper design of the inspection tool and conditions of this inspection. Also, if phased-array techniques [1] improve performances and capabilities of UT, they also complicate the design of transducers themselves. So, UT experts have to carry out more and more parametric studies by means of simulation tools in order to optimize the transducer design, its displacement, and the overall setting.
Such a work can be performed by means of ultrasonic simulation tools as those available in CIVA (the NDT software platform developed by CEA LIST) which brings together various models and enables to simulate a wide range of configurations [2]. But such studies can still be fastidious and take a long time. Moreover, since only few solutions are tested at the end, there remains a risk to only find a local optimum design solution.
The aim of this contribution is to introduce and investigate in preliminary fashion an optimization tool which could solve a number of NDT problems by using forward models as those implemented within CIVA. In Section 2, one briefly describes the Evolutionary Algorithm (EA) that has been chosen as main tool and one tests it on a UT application. In section 3, one shows how one is able to solve constrained problems and to take into account the accuracy of variables.

Optimization method
Many EA have been introduced in the literature [3], so choosing one or another is difficult and rather hard to justify in practice unless thorough comparisons. In UT field, Yand et al. [4] have used a Genetic Algorithm to design a sparse array transducer by activating only 16 elements on a 32-element linear phased array. Lupien et al. [5] have proposed a software that optimizes the emission surface and the layout of a phased-array transducer in order to ensure the beam width at several depths using an Evolution Strategy. Yet, if EAs appear powerful to solve many kinds of problems with few adaptations, they also involve a high number of forward-model computations.
Here, one has focused onto the so-called Randomized Adaptive Differential Evolution (RADE) [6] in view of what appears to be its good performance, its good ability to solve engineering optimization problems, and also the small number of tuning parameters involved. RADE aims at the evolution of a population of candidate solutions using evolution theory metaphor in order to build up an optimal solution.
A candidate solution is a n-dimensional vector, where n is the number of variables of the problem. Its ability is given by the objective function evaluated for this solution. In the present case, variables should correspond with CIVA parameters and objective functions should be computed using forward ultrasonic models implemented within it. Those obviously depend upon the problem at hand and will be given for all examples next. As is usual, the candidate solution associated with the least value of the objective function is sought.

Randomized Adaptive Differential Evolution
This algorithm is derived from Differential Evolution [7], an auto-regulation of the mutation factor being enforced. Standard evolutionary operators are used: mutation, crossover, and selection. The first step is the initialization of the population by a uniformly distributed random set within the search range. Then, mutated solutions are created by adding perturbations to parent solutions. Next, crossover combines variables between mutated and parent solutions. Last, the selection keeps solutions that improve on the objective function so CIVA simulation is run at this step. This evolution as described is performed until stopping criteria are fulfilled and each loop is called a generation.
Characteristic of the approach are three factors: population size (NP), a large value favouring robustness and a small value favouring speed (with the risk to only find a local optimum), choice of the mutation type (both implemented herein); Rand that favours diversity and Best that favours convergence (with the risk to prematurely converge); and crossover rate (Cr), a large value then meaning intensive exploration of the search space and a small value intensive exploitation of history.

UT application
This algorithm has been tested on a nozzle inspection (figure 2) to optimize the detection of one given plane flaw using a flexible 8×8-element probe operated at 2 MHz frequency. The objective is to maximize the amplitude of the corner echo of the breaking back-wall flaw. The variables of the problem are the position of the transducer: y (vertical position), θ (angular position) and α (rotation on itself); and of the focal point: x, y and z (in Cartesian coordinates). The amplitude maximization depends upon three objectives regarding the beam: achievement of a small angular deviation (for the directivity), being as close as possible with the normal of the defect in the horizontal plane projection (in order to be specular to the defect), and positioning the probe close enough to the defect (in order to focus in the near field and to reduce attenuation loss). Improving on one objective might make others worsen because of the geometry. Yet the non-trivial solution that is found by RADE is 5dB better in terms of the objective function than the one found by the expert (figure 3).

Constraint and accuracy handling (illustrated)
Some UT problems are more constrained than others (or, say, more a priori information is available) when an optimization is to be performed. In the first part of this section, such a constrained problem is described. Then, the constraint and accuracy handling as implemented in the proposed solution are presented and illustrated. Corresponding results are then reported.

UT application
The aim is to design a transducer which is able to detect a back-wall crack with pressure waves at 45° within a stainless steel pipe affected by structure noise. So, one has to maximize the signal-to-noise ratio by optimizing the focal characteristics of the beam with the additional constraint that the transducer should be displaced by hand, which means that it should not be too bulky. A dual element probe operated at 500 KHz (figure 4) has been chosen in order to reduce noise effects, grating lobe effects, and to improve focusing. To optimize the transducer arrays (E) and (R), the following variables have been defined: the number of rows and columns of the arrays, the incident and orthogonal lengths of elements, the angle and the distance between arrays. Table 1 provides the range in which the solution has to lie and the accuracy below which the information is useless. Constraints that depend on several variables have also been defined: the number of elements should be less than 64, the incident dimension of E and R should be less than 71 mm, and their orthogonal dimension less than 51 mm.

Constraint handling
Two kinds of constraints should be taken into account: bounded and inequality constraints.
The bounded constraints guarantee that all solutions evaluated remain within the search range. If a variable is out, it is put back into it by axial symmetry on the closest boundary.
Inequality constraints are inequality relationships which involve several variables and have to be respected. Three are given in our application. For example, the constraint on the total number of elements is given by the relation: number of rows × number of columns × 2 ≤ 64. Then, according to Deb [8], two kinds of solutions are considered: feasible ones respect all constraints and unfeasible ones violate at least one. Consequently, feasible solutions are favoured vs. unfeasible ones.

Accuracy handling
Since the accuracy is of any use under a step given by the end-user, solutions that are too close to one another should not be computed. So, one has developed the following accuracy handling. First, the search space is sampled using the precision step. When a new trial solution is created, the algorithm finds the closest solution on the grid (one denotes it as "formatted solution"). Yet, one has to care for preservation of diversity since loss of diversity leads to being unable to generate new solutions. That is, if the formatted solution has already been computed, accuracy handling finds the closest noncomputed solution on the grid within the neighbourhood.
As a conclusion, computation time is saved since solutions too close to one another are not computed, and the optimal solution found makes sense, in the design point of view, since it does not have unusable digits.

Optimization
To optimize the UT application introduced in section 3.1, the objective function has been computed by simulation of the defect response (figure 5) in a component containing four side-drilled holes (SDH). The goal is to guarantee that the transducer is focusing at 70 mm depth, so an objective function that maximizes the amplitude of this SDH is defined to that effect. To guarantee also that the amplitude of this SDH is maximum compared with the amplitude of other SDHs (figure 6) is achieved by using a penalization method for solutions which not respect it.  In Table 2 solutions obtained by RADE and an expert are compared. In terms of amplitude, RADE solution is 1 dB better than the one provided by the expert. This solution has been found for a population size NP = 30, a Rand mutation type, and a crossover rate Cr = 0.2. The evolution of the best solution's objective function for 200 generations is depicted in figure 7. It takes about 5 hours on a Core2Duo 2.66 GHz CPU with 3 Go of memory.

Conclusion
In this paper, one has proposed to use forward modelling tools found within the ultrasonic module of CIVA in combination with the Randomized Adaptive Differential Evolution so as to optimize UT inspections. In addition, the algorithm has been improved in order to solve constrained optimizations problems which better describe realistic UT situations, and to account for accuracy in the variables that saves time of computation and yields realistic solutions. The approach has been successfully tested on two realistic applications. Future works will be on further testing for other UT applications, especially in the case of multi-objective problems, and on stopping test criteria as well.