ON THE ACCELERATION OF OPTIMIZATION METHODS FOR THE PROBLEM OF SYNTHESIS OF MULTILAYER OPTICAL COATINGS
Five ways to speed up the multidimensional search in order to solve the problem of synthesis of multilayer optical coatings by using the methods of zero and first orders have been considered. The first way is to use an analytical derivative for the target quality function of the multilayer coating. It allows us to calculate accurately (within the computer arithmetic) the value of the gradient of a smooth objective function and generalized gradient of a non-smooth objective one. The first way requires the same number of arithmetic operations as well as finite-difference methods of calculating the gradient and the generalized gradient. The second way is to use a speedy finding of the objective function gradient using the prefix- and suffix-arrays in the analytical method of calculating the gradient. This technique allows us to reduce the number of arithmetic operations thrice for large-scale problems. The third way is the use of tabulating the values of trigonometric functions to calculate the characteristic matrices. This technique reduces the execution time of multiplication operations of characteristic matrices ten times depending on the computer’s specifications. For some computer architectures, this advantage is more than 140 times. The fourth method is the use of the golden section method for the one-dimensional optimization in the problems of synthesis of optical coatings. In particular, when solving one partial problem it is shown that the ternary search method requires approximately 40% more time than the golden section method. The fifth way is to use the effective implementation of multiplication of two matrices. It lies in changing the order of the second and third cycles for the well-known method of multiplying two matrices and fixing in a common variable value of the element of the first matrix. This allows us to speed up significantly the multiplication operation of two matrices. For matrices having 1000 x 1000 dimension the acceleration is from 2 to 15 times, depending on the computer's specifications.