Antenna design method and apparatus

Through the iterative optimization of Bayesian optimization method and proxy model, the perturbation problem of arbitrary input distribution in antenna design is solved, efficient design parameter optimization is achieved, and antenna performance is improved.

WO2025025659A1PCT designated stage expired Publication Date: 2025-02-06HUAWEI TECH CO LTD

Patent Information

Application Number
PCT/CN2024/086086
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-07-28
Filing Date
2024-04-03
Publication Date
2025-02-06

AI Technical Summary

Technical Problem

When optimizing antenna design, it is difficult to effectively deal with input perturbations of any distribution type, and the calculation complexity is high and the inference efficiency is low.

Method used

Through multiple iterations, the proxy model is constructed using Bayesian optimization method, the covariance between multiple vectors is calculated, and the optimization direction is determined by applying the acquisition function, which is suitable for any input distribution type.

Benefits of technology

Under input perturbation of any distribution type, the design parameters that optimize the antenna average performance parameters are found, which reduces the computational complexity and improves the proxy model inference efficiency in the design parameter optimization process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024086086_06022025_PF_FP_ABST
    Figure CN2024086086_06022025_PF_FP_ABST
Patent Text Reader

Abstract

The present application belongs to the technical field of artificial intelligence (AI). Disclosed are an antenna design method and apparatus. The method comprises: determining design parameters of an antenna by means of a plurality of iterations, wherein an ith iteration process involves: acquiring a plurality of vectors from an optimizing space, wherein M elements in each vector are respectively used for representing M design parameters of the antenna; and inputting an input distribution of the M design parameters and the plurality of vectors into a surrogate model of Bayesian optimization (BO), so as to obtain a plurality of groups of prediction values of performance parameters of the antenna, wherein a processing process of the surrogate model includes calculating a covariance matrix of a plurality of random vectors, and a covariance between any two vectors is obtained by means of performing calculation on a sample set that is obtained by means of sampling the input distribution thereof. During a calculation process, an acceleration algorithm based on Nystrom approximation is used to reduce the complexity, so that design parameters of an antenna are quickly determined. The method can be applicable to inputting design parameters of any distribution type, and can greatly improve the inference efficiency of a design parameter optimization process.
Need to check novelty before this filing date? Find Prior Art

Description

Antenna design method and device

[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on July 28, 2023, with application number 202310940699.9 and invention name “Antenna Design Method and Device”, the entire contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the technical field of artificial intelligence (AI) in big data, and in particular to an antenna design method and device. Background Art

[0003] Bayesian Optimization (BO) is a sample-efficient global optimization algorithm that is often applied to various black-box optimization problems where verification is expensive. Each iteration of BO consists of two important steps: 1) Based on the existing observation data, a probability-based surrogate model is constructed to describe the relationship between the input x and output y of the objective function to be optimized. 2) An acquisition function is designed to utilize the modeling results of the surrogate model to guide optimization decisions and select the next query point. Iterations are repeated until the optimal value is found or the maximum number of iterations is reached. BO has been successfully applied to many optimization tasks, such as antenna design, neural network structure search, algorithm hyperparameter optimization, wireless network performance optimization, and robot control.

[0004] When optimizing complex problems, some randomness is inevitably introduced into the optimization process. For example, manufacturing tolerances and process limitations during the production of products like antennas, as well as environmental fluctuations and execution errors during the optimization process, can introduce random noise into the design parameter x during verification, causing it to be changed to x' and causing fluctuations in the optimization results. Existing techniques address this uncertainty by directly modeling the uncertain inputs. This involves constructing a proxy model between the uncertain inputs and the inputs of the objective function.

[0005] However, the proxy model constructed in the above-mentioned prior art is only applicable to the case where the disturbance type is a Gaussian-like distribution, and the calculation process of the optimization process is highly complex and the reasoning efficiency is low.

[0006] Summary of the Invention

[0007] The embodiments of the present application provide an antenna design method and device that can find design parameters that optimize the average antenna performance parameters under input disturbances of any distribution type. It has a wide range of applications and, after accelerated processing, can effectively reduce computational complexity and significantly improve the inference efficiency of the proxy model during the design parameter optimization process.

[0008] In a first aspect, the present application provides an antenna design method, the method comprising: determining the design parameters of the antenna through multiple iterations; wherein the i-th iteration process is: obtaining multiple vectors based on the optimization space, each of the multiple vectors contains M elements, and the M elements are respectively used to characterize the M design parameters of the antenna, and the optimization space is used to describe the value range of each design parameter in the M design parameters, and M and i are positive integers; obtaining the input distribution of the M design parameters, and inputting the input distribution of the M design parameters and the multiple vectors into the proxy model of Bayesian optimization BO to obtain multiple groups of predicted values ​​of the performance parameters of the antenna and multiple degrees of certainty corresponding to the multiple groups of predicted values; wherein the multiple groups of predicted values ​​and the multiple vectors are respectively used to characterize the M design parameters of the antenna ... Corresponding respectively, the multiple degrees of certainty are respectively used to describe the credibility of the multiple groups of prediction values, the processing process of the proxy model includes calculating the covariance of any two vectors among the multiple vectors, and the covariance between the any two vectors is calculated by sampling the input distribution; the multiple groups of prediction values ​​and the multiple degrees of certainty are processed based on the BO acquisition function to determine the first vector from the multiple vectors, and the output of the acquisition function corresponding to the first vector is the largest; and the first vector is input into the objective function to obtain a set of performance parameters of the antenna; when a set of performance parameters of the antenna meets the preset conditions or i is equal to the preset number of times, the M design parameters contained in the first vector are determined as the design parameters of the antenna.

[0009] The objective function is used to describe the relationship between the design parameters and the performance parameters of the antenna.

[0010] From the technical effect point of view, when the present application uses Bayesian optimization BO to design the antenna, since it is calculated by sampling the sample set obtained by sampling the input distribution of the antenna design parameters, the method of the present application does not require the input distribution of the design parameters to have a certain distribution law, and can be applied to any type of input distribution, with better adaptability.

[0011] In a feasible embodiment, the preset condition includes a set of reference performance parameters of the antenna. When the difference between the set of performance parameters of the antenna and the set of reference performance parameters is less than a preset threshold, the set of performance parameters of the antenna meets the preset condition.

[0012] From a technical perspective, the set of predicted values ​​with the smallest difference is the set of predicted values ​​that best meets the preset conditions. By using the M design parameters contained in the first vector corresponding to this set of predicted values ​​as antenna design parameters, the qualified rate of antennas manufactured on the production line can be maximized.

[0013] In a feasible embodiment, the method further includes: when a set of performance parameters of the antenna does not meet the preset conditions and i is not equal to the preset number of times, adding the first vector and a set of performance parameters of the antenna as a training data to the data set used to train the proxy model, and starting the next iteration.

[0014] From a technical perspective, when the i-th iteration does not meet the iteration termination condition, a new training data can be generated for subsequent updating of the parameters of the proxy model to improve the prediction accuracy of the proxy model and thereby improve the optimization results of the design parameters, that is, quickly iterating the design parameters that meet the preset conditions.

[0015] In a feasible embodiment, the multiple vectors include a second vector and a third vector, and the covariance between the second vector and the third vector is obtained by inputting the first sample set and the second sample set into the maximum mean difference (MMD) kernel function for processing; wherein, the m vectors included in the first sample set are obtained based on the second vector and the input distribution sampling, and the m vectors included in the second sample set are obtained based on the third vector and the input distribution sampling, and each vector in the first sample set and the second sample set contains M elements, and the M elements respectively represent the M design parameters.

[0016] From a technical perspective, the covariance between the second and third vectors is obtained by processing the sample set obtained by sampling the two vectors and the input distribution using the MMD kernel function. This calculation method does not require the input distribution to have a certain distribution law, and can be applied to any distribution law or irregular input distribution, with good adaptability.

[0017] In a feasible embodiment, the processing process of the MMD kernel function on the first sample set and the second sample set includes adding the first matrix to the second matrix and subtracting 2 times the third matrix; the first matrix is ​​obtained by multiplying the fourth matrix, the transposed matrix of the fourth matrix, and the pseudo-inverse matrix of the fourth matrix, and the fourth matrix is ​​obtained by processing h vectors in the first sample set by the MMD kernel function, where h is a positive integer less than m; the second matrix is ​​obtained by multiplying the fifth matrix, the transposed matrix of the fifth matrix, and the pseudo-inverse matrix of the fifth matrix, and the fifth matrix is ​​obtained by processing the h vectors in the second sample set by the MMD kernel function; the third matrix is ​​obtained by multiplying the sixth matrix, the transposed matrix of the sixth matrix, and the pseudo-inverse matrix of the sixth matrix, and the sixth matrix is ​​obtained by processing the h vectors in the first sample set and the h vectors in the second sample set by the MMD kernel function.

[0018] From a technical perspective, this method only needs to calculate the fourth matrix, the fifth matrix, and the sixth matrix to obtain the corresponding first matrix, the second matrix, and the third matrix. There is no need to calculate all the elements of the first matrix at one time, only a part of the elements needs to be calculated. This can greatly reduce the spatial complexity of the calculation, improve the model inference speed, and thus improve the optimization speed of the antenna design process.

[0019] In a feasible implementation, the method further includes: before acquiring the multiple vectors from the optimization space, training the proxy model using the dataset of the proxy model.

[0020] From a technical perspective, before the proxy model performs inference in each iteration, training the proxy model with an updated dataset can improve the prediction accuracy of the proxy model and thereby improve the optimization results of the design parameters, that is, quickly iterating the design parameters that meet the preset conditions.

[0021] In a feasible implementation manner, the input distribution is obtained by statistically analyzing production data, and the input distribution of each design parameter is characterized by a probability distribution or a Gaussian distribution.

[0022] From the perspective of technical effects, this application has no requirements for the input distribution of design parameters and can be applied to any type of input distribution with good adaptability.

[0023] In a feasible embodiment, the M design parameters include one or more of the thickness, material dielectric constant and shape parameters of the antenna; the performance parameters include one or more of the scattering parameters, radiation pattern, and sidelobe width of the antenna.

[0024] In a second aspect, the present application provides an antenna design device, which determines the design parameters of the antenna through multiple iterations, and the device includes: an acquisition unit, which is used to obtain multiple vectors based on the optimization space during the i-th iteration, each of the multiple vectors contains M elements, and the M elements are respectively used to characterize the M design parameters of the antenna, and the optimization space is used to describe the value range of each design parameter in the M design parameters, M and i are positive integers; and obtain the input distribution of the M design parameters; a processing unit, which is used to obtain the input distribution of the M design parameters, and input the input distribution of the M design parameters and the multiple vectors into the proxy model of Bayesian optimization BO to obtain multiple groups of predicted values ​​of the performance parameters of the antenna and multiple degrees of certainty corresponding to the multiple groups of predicted values; wherein, The multiple groups of prediction values ​​correspond to the multiple vectors respectively, and the multiple degrees of certainty are used to describe the credibility of the multiple groups of prediction values ​​respectively. The processing process of the proxy model includes calculating the covariance of any two vectors among the multiple vectors, and the covariance between the any two vectors is calculated by sampling the input distribution; and processing the multiple groups of prediction values ​​and the multiple degrees of certainty based on the BO acquisition function to determine the first vector from the multiple vectors, and the output of the acquisition function corresponding to the first vector is the largest; inputting the first vector into the objective function to obtain a set of performance parameters of the antenna; a determination unit is used to determine the M design parameters contained in the first vector as the design parameters of the antenna when a set of performance parameters of the antenna meets the preset conditions or i is equal to a preset number of times.

[0025] In a feasible embodiment, the preset condition includes a set of reference performance parameters of the antenna. When the difference between the set of performance parameters of the antenna and the set of reference performance parameters is less than a preset threshold, the set of performance parameters of the antenna meets the preset condition.

[0026] In a feasible embodiment, the processing unit is also used to: when a set of performance parameters of the antenna does not meet the preset conditions and i is not equal to the preset number of times, add the first vector and a set of performance parameters of the antenna as a training data to the data set used to train the proxy model, and start the next iteration.

[0027] In a feasible embodiment, the multiple vectors include a second vector and a third vector, and the covariance between the second vector and the third vector is obtained by inputting the first sample set and the second sample set into the maximum mean difference (MMD) kernel function for processing; wherein, the m vectors included in the first sample set are obtained based on the second vector and the input distribution sampling, and the m vectors included in the second sample set are obtained based on the third vector and the input distribution sampling, and each vector in the first sample set and the second sample set contains M elements, and the M elements respectively represent the M design parameters.

[0028] In a feasible embodiment, the processing process of the MMD kernel function on the first sample set and the second sample set includes adding the first matrix to the second matrix and subtracting 2 times the third matrix; the first matrix is ​​obtained by multiplying the fourth matrix, the transposed matrix of the fourth matrix, and the pseudo-inverse matrix of the fourth matrix, and the fourth matrix is ​​obtained by processing h vectors in the first sample set by the MMD kernel function, where h is a positive integer less than m; the second matrix is ​​obtained by multiplying the fifth matrix, the transposed matrix of the fifth matrix, and the pseudo-inverse matrix of the fifth matrix, and the fifth matrix is ​​obtained by processing the h vectors in the second sample set by the MMD kernel function; the third matrix is ​​obtained by multiplying the sixth matrix, the transposed matrix of the sixth matrix, and the pseudo-inverse matrix of the sixth matrix, and the sixth matrix is ​​obtained by processing the h vectors in the first sample set and the h vectors in the second sample set by the MMD kernel function.

[0029] In a feasible implementation manner, the processing unit is further configured to: before acquiring the plurality of vectors from the optimization space, train the proxy model using the dataset of the proxy model.

[0030] In a feasible implementation manner, the input distribution is obtained by statistically analyzing production data, and the input distribution of each design parameter is characterized by a probability distribution or a Gaussian distribution.

[0031] In a feasible embodiment, the M design parameters include one or more of the thickness, material dielectric constant and shape parameters of the antenna; the performance parameters include one or more of the scattering parameters, radiation pattern, and sidelobe width of the antenna.

[0032] In a third aspect, the present application provides a computer device, comprising at least one processor, a memory and an interface circuit, wherein the memory, the interface circuit and the at least one processor are interconnected via lines, and instructions are stored in the at least one memory; when the instructions are executed by the processor, any method described in the first aspect above is implemented.

[0033] In a fourth aspect, the present application provides a chip system, which includes at least one processor, a memory and an interface circuit, wherein the memory, the interface circuit and the at least one processor are interconnected through lines, and instructions are stored in the at least one memory; when the instructions are executed by the processor, any method described in the first aspect above is implemented.

[0034] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program. When the computer program is executed, the method described in any one of the above-mentioned first aspects is implemented.

[0035] In a sixth aspect, an embodiment of the present application provides a computer program product, which includes instructions. When the instructions are executed, the method described in any one of the above-mentioned first aspects is implemented. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] The following is an introduction to the drawings used in the embodiments of this application.

[0037] FIG1 is a schematic diagram of a system architecture provided by an embodiment of the present application;

[0038] FIG2 is a schematic diagram of another system architecture provided in an embodiment of the present application;

[0039] FIG3 is a schematic diagram of the structure of a convolutional neural network provided in an embodiment of the present application;

[0040] FIG4 is a schematic diagram of the structure of another convolutional neural network provided in an embodiment of the present application;

[0041] FIG5 is a schematic diagram of a chip hardware structure provided in an embodiment of the present application;

[0042] FIG6 is a schematic diagram of a flow chart of an antenna design method provided in an embodiment of the present application;

[0043] FIG7 is a schematic diagram of a process of processing a first sample set and a second sample set by an MMD kernel function provided in an embodiment of the present application;

[0044] FIG8 is a schematic diagram of another MMD kernel function processing process of the first sample set and the second sample set provided by an embodiment of the present application;

[0045] FIG9 is a schematic diagram of an execution process of an antenna design method provided in an embodiment of the present application;

[0046] FIG10 is a code example of BO in an antenna design method provided in an embodiment of the present application;

[0047] FIG11 is a code example for accelerating the reasoning speed of a proxy model provided by an embodiment of the present application;

[0048] FIG12 is a schematic structural diagram of an antenna design device provided in an embodiment of the present application;

[0049] FIG13 is a schematic structural diagram of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0050] The following describes the embodiments of the present application in conjunction with the accompanying drawings. In the description of the embodiments of the present application, unless otherwise specified, " / " represents or, for example, A / B can represent A or B; "and / or" in the text is merely a description of the association relationship between associated objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, in the description of the embodiments of the present application, "multiple" refers to two or more than two.

[0051] The terms "first", "second", "third" and "fourth" in the specification and claims of this application and the accompanying drawings are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units that are not listed, or may optionally include other steps or units that are inherent to these processes, methods, products or devices. Reference to "embodiments" herein means that the specific features, structures or characteristics described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0052] The following are the professional terms involved in this application

[0053] (1) Bayesian Optimization (BO): It is an iterative parameter adjustment method that can find the parameter value that (approximately) minimizes the loss function in a multidimensional domain with a relatively small number of steps, thereby optimizing the output value of the objective function. Bayesian optimization consists of a surrogate model and an acquisition function. The surrogate model is used to model the relationship between the input and the output value of the objective function. The acquisition function obtains the next query point based on the output value of the surrogate model, so that the query point can be subsequently verified using the objective function and a new observation point (i.e., a piece of training data used to train the surrogate model) can be generated.

[0054] (2) Kernel function: A function that takes a vector in the original space as input and returns the dot product of the vector in the feature space (the transformed data space, which may be high-dimensional) is called a kernel function.

[0055] (3) Covariance: This is used to represent the overall error of two variables, which is different from the variance that represents the error of only one variable. If the two variables have the same changing trends, that is, if one is greater than its expected value and the other is also greater than its expected value, then the covariance between the two variables is positive. If the two variables have opposite changing trends, that is, if one is greater than its expected value and the other is less than its expected value, then the covariance between the two variables is negative.

[0056] Please refer to Figure 1, which is a schematic diagram of a system architecture provided in an embodiment of the present application, and is used to describe the system architecture of a computer device 100 for executing the antenna design method of the present application. As shown in Figure 1, the system architecture of the computer device may include an application layer 110, an operating system 120, and a device layer 130.

[0057] Optionally, the computer device 100 may be a personal computer, tablet, mobile phone or other intelligent terminal device or a server, etc., which is not limited in this application.

[0058] Optionally, the application layer 110 may include a machine learning framework 112 and a Bayesian optimization module 111 constructed based on the machine learning framework, which includes a proxy model and an acquisition function. The Bayesian optimization module 111 is used to perform the iterative optimization process in the antenna design method of the present application.

[0059] Optionally, the operating system 120 may include a file system 121, a block layer 122, and device drivers 123. The file system 121 manages and schedules file storage space, providing the logical and physical structures and storage methods for files. The block layer 122 is the interface through which the file system 121 accesses the device layer 130, connecting the file system 121 and the device drivers 123. The block layer 122 is used to encapsulate and decapsulate related requests. The device drivers 123 may include display drivers, camera drivers, audio drivers, and sensor drivers, among others.

[0060] Optionally, the device layer 130 may include a memory 131 , a network card 132 , and a processor 133 .

[0061] In some feasible implementations, program execution can be divided into user mode and kernel mode. When a program runs in user mode, the processor can only access data in a portion of the memory and is not allowed to access peripheral devices such as the hard disk and network interface card. When a program runs in kernel mode, the processor can access all data in the memory, including peripheral devices such as the hard disk and network interface card. At the same time, the processor can also switch itself from one program to another. Typically, application programs in the application layer 110 run in user mode, and the operating system 120 runs in kernel mode.

[0062] During the process of the computer device 100 running the above-mentioned Bayesian optimization module 111, the application layer 110 first initiates a read / write request; the file system 121 determines the logical address of the data corresponding to the read / write request in the memory 131; the block layer 122 is used to distribute the read / write request to the device driver 123; the device driver 123 is used to encapsulate the read / write request, and send the encapsulated read / write request and the logical address corresponding to the read / write request to the memory 131; the memory 131 unpacks the encapsulated read / write request, and converts the logical address corresponding to the read / write request into the corresponding physical address in the memory 131; and then writes data to or reads data from the physical address based on the read / write request.

[0063] The memory 131 stores a data set for training the above-mentioned agent model.

[0064] Optionally, the memory 131 can be any one of random access memory (RAM), read-only memory (ROM) or flash memory; wherein RAM includes static random access memory (SRAM) and dynamic random access memory (DRAM), and ROM includes erasable programmable ROM (EPROM) and electrically erasable programmable read-only memory (EEPROM).

[0065] Please refer to Figure 2, which illustrates another system architecture provided by an embodiment of the present application. As shown in Figure 2, data acquisition device 260 is used to collect historical data on various design parameters during the antenna production process and store it in database 230. Training device 220 trains the agent model in this application based on the historical data on each set of design parameters maintained in database 230 and the antenna performance corresponding to each set of historical data.

[0066] Each set of design parameters includes values ​​for different types of design parameters (i.e., M different design parameters in the following examples). Each set of design parameters and its corresponding antenna performance constitutes a piece of training data. Each set of design parameters includes uncertainty (caused by factors such as the manufacturing process), meaning each set of design parameters can be directly measured from actual manufactured products.

[0067] The above-mentioned design parameters include one or more of the thickness, material dielectric constant and shape parameters of the antenna.

[0068] The above antenna performance includes one or more of scattering parameters, radiation pattern, and sidelobe width.

[0069] The antenna design method in this application is mainly implemented through Bayesian BO optimization, which requires the use of a proxy model 201 and an acquisition function 202. Furthermore, the proxy model 201 can be a machine learning model, specifically a mathematical model or a deep learning model.

[0070] In the example given in Figure 2, the proxy model 201 and the acquisition function 202 are deployed on the same execution device 210, but they can also be deployed on different execution devices, that is, the antenna design in this application can be executed by multiple devices in cooperation, and this application does not limit this.

[0071] Specifically, in the antenna design method, proxy model 201 and acquisition function 202 are used to perform the iterative process of Bayesian optimization. Proxy model 201 is used to output a predicted value of the objective function and the degree of confidence of the predicted value based on a set of input design parameters (i.e., M design parameters in the following embodiments). Acquisition function 202, based on the output of proxy model 201, determines the next set of design parameters for iteration. Once a set of design parameters that meets the iteration termination criteria is found, this set of design parameters is output as the optimization result and sent to user equipment 240.

[0072] The user request sent by the user equipment 240 is an optimization request for antenna design parameters, and these requests may include one or more of voice and text.

[0073] Figure 2 can also be a functional block diagram of the antenna design process. Specifically, the execution device 210 and data storage system 250 can be integrated into the user device 240 if the user device 240 has relatively strong data processing capabilities. In some embodiments, the execution device 210 can be a separate device from the user device 240. The data storage system 250, database 230, training device 220, and data acquisition device 260 can be integrated with the execution device 210 or located on other servers in the cloud or on the Internet, although this application does not limit this.

[0074] The data acquisition device 260 may be a terminal device or an input / output interface of a server or cloud, and may be an interactive layer (interface) for obtaining query statements and returning reply statements.

[0075] In this application, the agent model 201 can be a deep learning model, so the training and reasoning principles of the deep learning model will be briefly introduced below.

[0076] The architecture of a deep learning model can be a deep neural network. The work of each layer in a deep neural network can be expressed mathematically as To describe: From a physical perspective, the work of each layer in a deep neural network can be understood as completing the transformation from input space to output space (i.e., from the row space to the column space of a matrix) through operations on five input spaces (a set of input vectors). These five operations include: 1. Dimensionality increase / decrease; 2. Zoom in / out; 3. Rotation; 4. Translation; 5. "Bending". Operations 1, 2, and 3 are represented by Completed, operation 4 is completed by +b, and operation 5 is implemented by a(). The word "space" is used here because the object being classified is not a single thing, but a class of things, and space refers to the collection of all individuals of this class of things. Among them, W is a weight vector, and each value in the vector represents the weight value of a neuron in this layer of the neural network. This vector W determines the spatial transformation from the input space to the output space described above, that is, the weight W of each layer controls how to transform the space. The purpose of training a deep neural network is to eventually obtain the weight matrix of all layers of the trained neural network (the weight matrix formed by many layers of vectors W). Therefore, the training process of a neural network is essentially to learn how to control spatial transformation, and more specifically to learn the weight matrix.

[0077] Because we want the output of a deep neural network to be as close as possible to the desired predicted value, we can compare the current network's prediction with the desired target value and then update the weight vectors of each layer of the neural network based on the difference between the two. (Of course, before the first update, there is usually an initialization process, which preconfigures the parameters of each layer in the deep neural network.) For example, if the network's prediction is too high, the weight vectors are adjusted to predict a lower value. This adjustment is repeated until the neural network can predict the desired target value. Therefore, it is necessary to predefine "how to compare the difference between the predicted value and the target value." This is the loss function (or objective function), which is a key equation used to measure the difference between the predicted and target values. For example, a higher loss function output (loss) indicates a greater difference, so training a deep neural network becomes a process of minimizing this loss.

[0078] In Figure 2 , agent model 201 trained by training device 220 can be applied to various systems or devices. Execution device 210 is configured with I / O interface 212 for data exchange with external devices. A "user" can input data, i.e., a user request, into I / O interface 212 via user device 240 .

[0079] The execution device 210 can call data, code, etc. in the data storage system 250 , and can also store data, instructions, etc. in the data storage system 250 .

[0080] The calculation module 211 can recognize the user request input by the user. After recognizing the optimization request for the antenna design parameters, the proxy model 201 and the acquisition function 202 are used to process the input data (corresponding to the M design parameters in the embodiment below) during each iteration, and a set of design parameters (i.e., M design parameters) that meet the iteration termination conditions are returned to the user. The M design parameters are the optimization results.

[0081] Finally, the I / O interface 212 returns the obtained M design parameters to the user device 240 and presents them to the user on the user device 240.

[0082] On a deeper level, the training device 220 can train models related to specific scenarios based on different data according to different scenario requirements to provide users with better results.

[0083] In the scenario shown in Figure 2 , during the first iteration, the user can manually specify a set of design parameters to be input into execution device 210, for example, by operating within the interface provided by I / O interface 212. Alternatively, user device 240 can automatically input a set of design parameters for the first iteration into I / O interface 212. If user device 240 automatically generating a set of design parameters for the first iteration requires user authorization, the user can set the corresponding permissions within user device 240. The user can view the optimization results output by execution device 210 on user device 240, which can be presented in a textual format or other form. User device 240 can also serve as a data acquisition terminal, storing the correspondence between the collected design parameters and antenna performance in database 230 for use in the training process.

[0084] It is worth noting that Figure 2 is only a schematic diagram of a system architecture provided by an embodiment of the present invention. The positional relationship between the devices, components, modules, etc. shown in Figure 2 does not constitute any limitation. For example, in Figure 2, the data storage system 250 is an external memory relative to the execution device 210. In other cases, the data storage system 250 can also be placed in the execution device 210.

[0085] Please refer to Figure 3, which is a structural diagram of a convolutional neural network provided in an embodiment of the present application. When the proxy model in the present application is a deep learning model, it can be used to characterize its internal structure.

[0086] A convolutional neural network (CNN) is a deep neural network with a convolutional structure and a deep learning architecture. Deep learning architectures use machine learning algorithms to perform multiple levels of learning at different levels of abstraction. As a deep learning architecture, a CNN is a feed-forward artificial neural network in which individual neurons respond to overlapping regions in an input image.

[0087] As shown in FIG3 , a convolutional neural network (CNN) 100 may include an input layer 110 , a convolutional layer / pooling layer 120 , wherein the pooling layer is optional, and a neural network layer 130 .

[0088] Convolutional layer:

[0089] As shown in Figure 3, convolutional / pooling layers 120 may include layers 121-126. In one implementation, layer 121 is a convolutional layer, layer 122 is a pooling layer, layer 123 is a convolutional layer, layer 124 is a pooling layer, layer 125 is a convolutional layer, and layer 126 is a pooling layer. In another implementation, layers 121 and 122 are convolutional layers, layer 123 is a pooling layer, layers 124 and 125 are convolutional layers, and layer 126 is a pooling layer. That is, the output of a convolutional layer can serve as the input to a subsequent pooling layer, or as the input to another convolutional layer to continue the convolution operation.

[0090] Taking the convolution layer 121 as an example, the convolution layer 121 can include many convolution operators, which are also called kernels. Their role in this application is equivalent to a filter that extracts specific information from the input speech or semantic information. The convolution operator can essentially be a weight matrix, which is usually predefined.

[0091] The weight values ​​in these weight matrices need to be obtained through a lot of training in practical applications. The weight matrices formed by the weight values ​​obtained through training can extract information from the input data (i.e., multiple vectors in each iteration process and the input distribution of each design parameter), thereby helping the convolutional neural network 100 to make correct predictions.

[0092] When the convolutional neural network 100 has multiple convolutional layers, the initial convolutional layer (for example, 121) often extracts more general features, which can also be called low-level features. As the depth of the convolutional neural network 100 increases, the features extracted by the later convolutional layers (for example, 125) become more and more complex, such as high-level semantic features. Features with higher semantics are more suitable for the problem to be solved.

[0093] Pooling layer:

[0094] Since it is often necessary to reduce the number of training parameters, it is often necessary to periodically introduce a pooling layer after the convolution layer, that is, as shown in the example 120 in Figure 3, each layer 121-126 can be a convolution layer followed by a pooling layer, or multiple convolution layers can be followed by one or more pooling layers.

[0095] Neural Network Layer 130:

[0096] After being processed by the convolution layer / pooling layer 120, the convolution neural network 100 is still insufficient to output the required output information. Because as mentioned above, the convolution layer / pooling layer 120 only extracts features and reduces the parameters brought by the input data. However, in order to generate the final output information (the required class information or other relevant information), the convolution neural network 100 needs to use the neural network layer 130 to generate one or a group of outputs of the required number of classes. Therefore, the neural network layer 130 may include multiple hidden layers (131, 132 to 13n as shown in Figure 3) and an output layer 140. The parameters contained in the multiple hidden layers can be pre-trained based on the relevant training data of the specific task type.

[0097] After the multiple hidden layers in the neural network layer 130, that is, the last layer of the entire convolutional neural network 100 is the output layer 140. The output layer 140 has a loss function similar to the classification cross entropy, which is specifically used to calculate the prediction error. Once the forward propagation of the entire convolutional neural network 100 (the propagation from 110 to 140 in Figure 3 is forward propagation) is completed, the back propagation (the propagation from 140 to 110 in Figure 3 is back propagation) will begin to update the weight values ​​and biases of the aforementioned layers to reduce the loss of the convolutional neural network 100 and the error between the result output by the convolutional neural network 100 through the output layer and the ideal result.

[0098] It should be noted that the convolutional neural network 100 shown in Figure 3 is only an example of a convolutional neural network. In specific applications, the convolutional neural network can also exist in the form of other network models. For example, as shown in Figure 4, multiple convolutional layers / pooling layers are run in parallel, and the extracted features are input into the neural network layer 130 for processing.

[0099] In this solution, the deep learning model having the structure shown in FIG3 and FIG4 can be the agent model 201 in BO optimization, which is used to generate the predicted value of the objective function and the certainty of the predicted value.

[0100] Please refer to Figure 5, which is a schematic diagram of the chip hardware structure provided by an embodiment of the present application. As shown in Figure 5, the neural network processing unit (NPU) 50 is mounted on the host CPU (Host CPU) as a coprocessor, and the host CPU assigns tasks. The core part of the NPU is the operation circuit 503, and the controller 504 controls the operation circuit 503 to extract data from the memory (weight memory or input memory) and perform operations.

[0101] In some implementations, the arithmetic circuit 503 includes multiple processing units (PEs). In some implementations, the arithmetic circuit 503 is a two-dimensional systolic array. The arithmetic circuit 503 can also be a one-dimensional systolic array or other electronic circuitry capable of performing mathematical operations such as multiplication and addition. In some implementations, the arithmetic circuit 503 is a general-purpose matrix processor.

[0102] For example, assume there are input matrix A, weight matrix B, and output matrix C. The arithmetic circuit retrieves the corresponding data of matrix B from weight memory 502 and caches it on each PE in the arithmetic circuit. The arithmetic circuit retrieves the data of matrix A from input memory 501 and performs a matrix operation on matrix B. The partial or final matrix result is stored in accumulator 508.

[0103] The vector calculation unit 507 can further process the output of the operation circuit, such as vector multiplication, vector addition, exponential operation, logarithmic operation, size comparison, etc. For example, the vector calculation unit 507 can be used for network calculations of non-convolutional / non-FC layers in a neural network, such as pooling, batch normalization, local response normalization, etc.

[0104] In some implementations, the vector calculation unit 507 can store the processed output vector to the unified memory 506. For example, the vector calculation unit 507 can apply a nonlinear function to the output of the operation circuit 503, such as a vector of accumulated values, to generate an activation value. In some implementations, the vector calculation unit 507 generates a normalized value, a merged value, or both. In some implementations, the processed output vector can be used as an activation input to the operation circuit 503, for example, for use in a subsequent layer in a neural network.

[0105] The unified memory 506 is used to store input data and output data.

[0106] The memory unit access controller 505 (Direct Memory Access Controller, DMAC) moves the input data in the external memory to the input memory 501 and / or the unified memory 506, stores the weight data in the external memory into the weight memory 502, and stores the data in the unified memory 506 into the external memory.

[0107] The bus interface unit (BIU) 510 is used to implement interaction between the main CPU, DMAC and instruction fetch memory 509 through the bus.

[0108] An instruction fetch buffer 509 connected to the controller 504 is used to store instructions used by the controller 504 .

[0109] The controller 504 is used to call the instructions cached in the instruction fetch memory 509 to control the working process of the computing accelerator.

[0110] Generally, the unified memory 506, the input memory 501, the weight memory 502 and the instruction fetch memory 509 are all on-chip memories, and the external memory is a memory outside the NPU, which can be a double data rate synchronous dynamic random access memory (DDR SDRAM), a high bandwidth memory (HBM) or other readable and writable memory.

[0111] Please refer to Figure 6, which is a flow chart of an antenna design method provided in an embodiment of the present application. This antenna design method uses Bayesian optimization (BO) to iterate and select design parameters that achieve preset product performance targets. The BO process selects antenna design parameters through multiple iterations, where the i-th iteration includes the following steps:

[0112] Step S610: Obtain multiple vectors based on the optimization space, each of the multiple vectors contains M elements, and the M elements are respectively used to characterize M design parameters of the antenna. The optimization space is used to describe the value range of each design parameter in the M design parameters, and M and i are positive integers.

[0113] The shape parameters may further include one or more parameters such as the length and width of each branch on the antenna and the angle between any two branches.

[0114] Each of the M design parameters corresponds to a value range, and the optimization space includes the value range of each design parameter. The values ​​of the M design parameters included in each of the multiple vectors are all within the corresponding value range.

[0115] In any two iterations of the multiple iterations, the number of the multiple vectors obtained from the optimization space may be the same or different.

[0116] If the number of the above-mentioned multiple vectors is i, then the i vectors can be equivalent to a matrix with M rows and i columns.

[0117] In the following embodiments, the number of the multiple vectors is described by taking i as an example.

[0118] Step S620: Obtain the input distribution of the M design parameters, and input the input distribution of the M design parameters and the multiple vectors into the proxy model of the Bayesian optimization BO to obtain multiple groups of predicted values ​​of the antenna performance parameters and multiple degrees of certainty corresponding to the multiple groups of predicted values; wherein the multiple groups of predicted values ​​correspond to the multiple vectors respectively, and the multiple degrees of certainty are respectively used to describe the credibility of the multiple groups of predicted values. The processing process of the proxy model includes calculating the covariance of any two vectors among the multiple vectors, and the covariance between the any two vectors is calculated by sampling the input distribution. The sample set obtained.

[0119] Specifically, the above-mentioned multiple groups of prediction values ​​are calculated by inputting the covariance matrix (when the number of multiple vectors is i, the dimension of the covariance matrix is ​​i*i) into the Gaussian Process (GP) regression model, and the elements in the covariance matrix are the covariances between two vectors in the i vectors.

[0120] The input distribution of the M design parameters can be obtained by statistically analyzing historical production data. Specifically, the specific values ​​corresponding to the various design parameters after actual production can be obtained by statistically analyzing the antenna products produced on the production line.

[0121] Furthermore, the input distribution of the various design parameters mentioned above can be represented by a form that does not have a definite distribution law, such as probability distribution, or a form that has a definite distribution law, such as Gaussian distribution.

[0122] The probability distribution can be further characterized by a probability density function (as shown in formula (1)) or a probability model (as shown in formula (2)).

[0123] Where x represents the design parameter; and GMM represent the distribution range of the design parameters.

[0124] In this application, the surrogate model is used to model the relationship between the design parameters (i.e., the input i vectors) and the predicted values ​​of the objective function output (i.e., the performance parameters). That is, the output of the surrogate model includes the predicted values ​​of the performance parameters and the degree of certainty of the predicted values.

[0125] The objective function is used to characterize the relationship between the design parameters and performance parameters of the antenna. The input of the objective function is the design parameters of the antenna, and the output is the performance parameters of the antenna.

[0126] The above performance parameters include one or more of the antenna's scattering parameters, radiation pattern, and sidelobe width.

[0127] The degree of certainty described above is used to describe the degree of confidence in the predicted value output by the proxy model. For example, the degree of certainty for each performance parameter may range from [0 to 1]. The closer the degree of certainty is to 1, the more reliable the proxy model's output of that performance parameter is, while the closer the degree of certainty is to 0, the less reliable the proxy model's output of that performance parameter is.

[0128] The calculation process of the predicted values ​​of the above performance parameters will be described in detail below:

[0129] After receiving the input vectors i and the input distribution of the design parameters, the proxy model first calculates the covariance matrix i*i. The covariance matrix i*i is then input into the GP regression model to calculate the predicted values ​​of the above performance parameters. The process of calculating the predicted values ​​using the GP regression model is not detailed in this application.

[0130] The specific process of calculating the covariance matrix i*i using input data is as follows:

[0131] Each element in the covariance matrix i*i is the covariance of two vectors in the i vectors, including the covariance of the same vector itself. Specifically, taking the fourth vector in the i vectors (any one of the i vectors) as an example, the covariance matrix i*i contains the i covariances calculated separately for the fourth vector and the i vectors.

[0132] The specific calculation process of the covariance matrix i*i is shown in formula (3):

[0133] Wherein, c(i) represents the i-th vector among the above i vectors, and * represents the covariance of two vectors.

[0134] The covariance of any two vectors in the above formula (3) is calculated by sampling the two vectors and the input distribution of the design parameters to obtain a sample set. By calculating the above vector covariance on the sample set obtained by sampling, the Bayesian optimization method of the present application can be applied to the optimization of design parameters of any input distribution type, that is, it is not restricted by the input distribution type of the design parameters and has good adaptability.

[0135] The following describes the calculation process of the covariance using the second and third vectors among the i vectors as an example, where the second and third vectors are any two vectors among the i vectors.

[0136] First, sampling is performed based on the second vector and the input distribution of M design parameters to obtain a first sample set containing m vectors. Then, sampling is performed based on the third vector and the input distribution of M design parameters to obtain a second sample set containing m vectors. Each vector in the first sample set and the second sample set contains M elements, each of which represents the aforementioned M design parameters.

[0137] Specifically, the process of sampling to obtain the first sample set is described using the second vector as an example: the second vector contains M elements, each representing a design parameter. Taking the first design parameter (e.g., with coordinates (0.3, 0.4)) among these M elements as an example, the m first design parameters contained in each of the m vectors in the first sample set are sampled from the range represented by the distribution center ((0.3, 0.4)) and the input distribution of the first design parameter.

[0138] Similarly, the second sample set can be obtained by sampling in the same way.

[0139] Based on the above sampling process, the covariance between the second vector and the third vector is obtained by inputting the first sample set and the second sample set into the maximum mean difference (MMD) kernel function for processing.

[0140] The process of processing the first and second sample sets to obtain the covariance between the second and third vectors can be described by the flowchart shown in Figure 7. As shown in Figure 7, sampling is performed based on the input distribution of the second vector and M design parameters to obtain a first sample set containing m vectors, and sampling is performed based on the input distribution of the third vector and M design parameters to obtain a second sample set containing m vectors. The first and second sample sets are then input into the MMD kernel function to obtain the covariance between the second and third vectors.

[0141] The following will describe the specific process of processing the first sample set and the second sample set through the MMD kernel function to obtain the covariance between the second vector and the third vector in conjunction with Figure 8. The Nystrom acceleration method used in this process can effectively reduce the spatial complexity of the calculation, accelerate the reasoning process of the proxy model, and thus improve the speed of the antenna optimization process.

[0142] The processing of the first sample set and the second sample set by the MMD kernel function includes adding the first matrix to the second matrix and subtracting 2 times the third matrix.

[0143] The first matrix is ​​obtained by multiplying the fourth matrix, the transposed matrix of the fourth matrix, and the pseudo-inverse matrix of the fourth matrix. The fourth matrix is ​​obtained by processing the h vectors in the first sample set using the MMD kernel function. The second matrix is ​​obtained by multiplying the fifth matrix, the transposed matrix of the fifth matrix, and the pseudo-inverse matrix of the fifth matrix. The fifth matrix is ​​obtained by processing the h vectors in the second sample set using the MMD kernel function. The third matrix is ​​obtained by multiplying the sixth matrix, the transposed matrix of the sixth matrix, and the pseudo-inverse matrix of the sixth matrix. The sixth matrix is ​​obtained by processing the h samples in the first sample set and the h vectors in the second sample set using the MMD kernel function. Wherein, h is a positive integer less than m.

[0144] Specifically, as shown in Figure 8, first, h vectors are selected from the first sample set as the first sample subset, and h vectors are selected from the second sample set as the second sample subset. Then, the h vectors in the first sample subset are processed by the MMD kernel function to obtain a fourth matrix. Then, based on the fourth matrix, the transposed matrix of the fourth matrix and the pseudo-inverse matrix of the fourth matrix are calculated. Next, the first matrix is ​​obtained by multiplying the fourth matrix, the transposed matrix of the fourth matrix, and the pseudo-inverse matrix of the fourth matrix.

[0145] Similarly, the second sample subset is processed using the MMD kernel function through the same calculation process to obtain a fifth matrix, a transposed matrix of the fifth matrix, a pseudo-inverse matrix of the fifth matrix, and the second matrix.

[0146] The first sample subset and the second sample subset are simultaneously processed using the MMD kernel function to obtain a sixth matrix, a transposed matrix of the sixth matrix, a pseudo-inverse matrix of the sixth matrix, and a third matrix. Finally, the covariance between the second vector and the third vector is obtained by adding the first matrix and the second matrix and subtracting twice the third matrix.

[0147] The specific calculation processes of the fourth matrix, the fifth matrix, and the sixth matrix can be expressed by formulas (4), (5), and (6), respectively:

[0148] In which, the number of vectors in the first sample set and the second sample set is m; x is a vector in the first sample set, y is a vector in the second sample set; MMD kernel is the MMD kernel function; subscripts 1, h, and m represent the number of each vector in the sample set or sample subset.

[0149] Optionally, the first matrix can be calculated by the following formula (7): O=UU + U T (7)

[0150] Among them, O is the first matrix, U is the fourth matrix, U T is the transposed matrix of the fourth matrix, U + is the pseudo-inverse matrix of the fourth matrix.

[0151] Similarly, the second matrix and the third matrix can also be calculated based on similar calculation rules, which will not be described in detail here.

[0152] Optionally, the process of calculating the covariance between the second vector and the third vector using the first matrix, the second matrix, and the third matrix can be expressed by formula (8):

[0153] Among them, Cov(x,y) is the covariance between the second vector and the third vector, U, V, and W represent the fourth matrix, the fifth matrix, and the sixth matrix respectively. For XX, 1 n XX, where x and y are vectors in the first sample set and the second sample set respectively.

[0154] Optionally, formulas (9), (10), and (11) are examples of three characteristic kernel functions provided in the embodiments of the present application, and do not constitute a limitation on the kernel function used in the technical solution of the present application. The output of the three characteristic kernel functions is an element in the covariance matrix i*i, that is, the covariance of any two vectors, and the input is the vectors in the first sample set and the second sample set.

[0155] Here, K is the covariance between the two vectors. It is the output result of MMD kernel function calculation. are the input distributions of the two design parameters in the two vectors of the first sample set and the second sample set respectively. l is the length scale, which is a parameter of the GP regression model used to control the adaptability of the GP regression model to the data. α iis the signal variance, which is also a parameter of the GP regression model. It determines the average distance between the model's predicted value and its mean. x and y are the vectors in the first and second sample sets, respectively. The MMD kernel functions contained in the three formulas are used to calculate the covariance between any two vectors in the first sample set and the second sample set.

[0156] After obtaining the predicted value and the degree of certainty of the predicted value through the i-th iterative process, the following step S630 is executed.

[0157] Step S630: Process the multiple groups of predicted values ​​and the multiple degrees of certainty based on the acquisition function of the BO to determine a first vector from the multiple vectors, where the output of the acquisition function corresponding to the first vector is the largest; and input the first vector into the objective function to obtain a set of performance parameters of the antenna.

[0158] Specifically, first, the multiple groups of prediction values ​​and the multiple degrees of certainty are respectively input into the acquisition function of the BO to obtain multiple acquisition values; the multiple acquisition values ​​correspond to the multiple groups of prediction values ​​respectively, and the multiple acquisition values ​​include the first acquisition value with the largest value, and a group of prediction values ​​corresponding to the first acquisition value corresponds to the first vector among the multiple vectors.

[0159] Among them, the acquisition function in BO is a function defined based on the inference result of the proxy model, which is used to balance the random exploration and the utilization of the proxy model when selecting the next query point (query point). That is, the acquisition function can choose to believe the uncertainty of the proxy model or perform random exploration to determine the next query point (that is, the first vector mentioned above). In the above process, an optimizer is usually used to find the input value that maximizes the acquisition function, and this is used as the next query point. This application does not expand on the specific processing process of the acquisition function.

[0160] Then, the first vector is input into the objective function to obtain a set of performance parameters of the antenna.

[0161] The objective function is used to characterize the relationship between the design parameters and performance parameters of the antenna. The input of the objective function is the design parameters of the antenna, and the output is the performance parameters of the antenna.

[0162] Step S640: When a set of performance parameters of the antenna meets a preset condition or i is equal to a preset number, the M design parameters included in the first vector are determined as the design parameters of the antenna.

[0163] The preset conditions include a set of reference performance parameters for the antenna. When the difference between the set of performance parameters for the antenna and the set of reference performance parameters is less than a preset threshold, the set of performance parameters for the antenna meets the preset conditions. The iterative process ends at this point.

[0164] Specifically, the set of antenna performance parameters includes one or more performance parameters. The difference between the set of antenna performance parameters and a set of reference performance parameters can be calculated by subtracting the values ​​of the same type of performance parameters in the set of antenna performance parameters from the reference performance parameters and taking the absolute value. The differences between the various performance parameters are then averaged or summed as the difference between the set of antenna performance parameters and the set of reference performance parameters. This application may also use other methods to calculate the difference, which are not limited here.

[0165] Optionally, the above method also includes: when a set of performance parameters of the antenna does not meet the preset conditions and i is not equal to the preset number of times, adding the first vector and a set of performance parameters of the antenna as a training data to the data set used to train the proxy model, and starting the next iteration.

[0166] Specifically, when a set of predicted values ​​output by the proxy model does not meet the above preset conditions and i is not equal to the preset number of times, a new training data will be generated and the next iteration process will be carried out according to the above steps.

[0167] Optionally, the method further includes: before obtaining the multiple vectors from the optimization space, training the proxy model using the dataset of the proxy model.

[0168] Since each iteration generates new training data and updates the dataset used to train the proxy model, using the updated dataset to train the proxy model before each inference can train a more accurate proxy model, improve the accuracy of the proxy model, and then select design parameters that better meet the requirements, thereby improving the qualification rate of antenna products.

[0169] The M design parameters include one or more of the thickness, material dielectric constant and shape parameters of the antenna.

[0170] The above performance parameters include one or more of the antenna's scattering parameters, radiation pattern, and sidelobe width.

[0171] Please refer to Figure 9, which is a flow chart of an antenna design method provided in an embodiment of the present application.

[0172] As shown in FIG9 , during each iteration, one or more vectors containing design parameters and the input distribution of each design parameter are input into the proxy model of the BO module. The proxy model performs inference to obtain multiple sets of predicted values ​​for the antenna's performance parameters and multiple degrees of certainty corresponding to the multiple sets of predicted values. Then, by obtaining the result of the function based on the proxy model, the first vector with the largest value is determined from the one or more vectors. The first vector is input into the objective function to obtain a set of performance parameters for the corresponding antenna. Next, it is determined whether the iteration termination condition is met: that is, whether the set of performance parameters of the antenna meets the preset condition or whether the number of iterations meets the preset number. If the judgment result is yes, the M design parameters contained in the first vector are used as the design parameters of the antenna. Otherwise, the first vector and the set of performance parameters of the antenna are added as a piece of training data (i.e., the new observation point in FIG9 ) to the data set used to train the proxy model, and the next iteration process is started.

[0173] Specifically, the specific execution process of each step in Figure 9 can be found in the corresponding description in the above embodiment, and will not be repeated here.

[0174] The BO module in FIG. 9 may be deployed in the application layer 110 in the architecture of FIG. 1 .

[0175] Please refer to Figure 10, which is a code example of BO in an antenna design method provided in an embodiment of the present application.

[0176] As shown in FIG10 , Algorithm 1 is a robust Bayesian optimization Robust BO algorithm provided in an embodiment of the present application, which can adapt to any input distribution.

[0177] The input of this algorithm includes: the number of initial design parameters (Initial Sample Number), query budget (Query Budget), input uncertainty model (Input Uncertainty Model), standard deviation of measurement error (Measurement Noise Std), sample size (Sampling Size), and sample subset size (Sub-Sampling Size).

[0178] The output of the algorithm includes: optimization results, that is, the determined design parameters.

[0179] The first line of code indicates the selection of antenna design parameters to be optimized and their evaluation (i.e., the function value of the objective function). The second line of code indicates the initialization of the training dataset by randomly selecting multiple design vectors, calling the objective function, and querying the corresponding objective function value. Lines 3-9 of code represent the iterative process: sampling the input distribution of each design parameter, establishing a proxy model, training the proxy model and accelerating model inference, optimizing the design parameters based on the output of the proxy model, obtaining new observation points, and updating them to the dataset. The tenth line of code indicates the end of the iterative process. The eleventh line of code indicates the output of the above optimization results.

[0180] Specifically, the specific process of each step in Algorithm 1 can be found in the corresponding description in the above embodiment, and will not be repeated here.

[0181] Please refer to Figure 11, which is a code example for accelerating the reasoning speed of the proxy model provided in an embodiment of the present application.

[0182] As shown in FIG11 , the algorithm (ie, Algorithm 3 in FIG11 ).

[0183] The input of the algorithm is: Input Uncertainty Model of the design parameter input distribution, Data X, the data set used to train the proxy model, Sampling Size, and Sub-Sampling Size.

[0184] The output of this algorithm is: covariance matrix A Covariance Matrix (that is, the aforementioned covariance matrix i*i).

[0185] Lines 1-4 of the code represent sampling from the output distribution of each design parameter to obtain sample sets and sample subsets. Lines 5-8 of the code represent sequentially calculating each element in the covariance matrix.

[0186] Specifically, the specific calculation process of Algorithm 3 can be found in the corresponding description in the aforementioned method embodiment, which will not be repeated here.

[0187] Please refer to Table 1, which shows the comparison of the model inference speed of the BO method and the empirical method in the embodiment of this application.

[0188] As shown in Table 1, when the sample set size is 100, the inference time of the proxy model in the empirical method is about 8.117 seconds, while the inference speed of the proxy model in the BO method of the present application is only about 0.780 seconds. When the sample set size is 1000, the inference time of the proxy model in the empirical method is about 840.715 seconds, while the inference speed of the proxy model in the BO method of the present application is only about 21.473 seconds. It can be seen that the method of the present application can significantly improve the speed of the inference model, and thus can quickly obtain the optimization results of the antenna design parameters.

[0189] Table 1: Comparison of model inference speed between the Bo method in this application and traditional optimization methods

[0190] In addition to being applicable to the aforementioned antenna design parameter optimization embodiments, the BO method in this application can also be applied to other scenarios:

[0191] For example: Network parameter optimization scenario

[0192] The process of determining network parameters using the BO method in this scenario is similar to the antenna design method in the aforementioned embodiment, requiring multiple iterations, but the proxy model's inputs and outputs differ. In this scenario, the parameters to be optimized include base station parameters such as antenna transmit power, electronic downtilt, azimuth, beam type, and co- and inter-frequency handoff parameters. In this scenario, multiple vectors are input during the i-th iteration, each of which contains G base station parameters. These G network parameters include one or more of the aforementioned base station parameters, where G is a positive integer.

[0193] During the i-th iteration, the multiple vectors and the input distribution of each network parameter are input into the BO proxy model to obtain multiple sets of predicted values ​​for network performance and multiple degrees of certainty corresponding to each set of predicted values. Then, by obtaining the result of the function based on the output of the proxy model, the vector with the largest value is determined from the multiple vectors, and this vector is input into the objective function to obtain a corresponding set of objective function values. Next, a determination is made as to whether the iteration termination condition is met: that is, whether the set of objective function values ​​meets the preset condition or the number of iterations meets the preset number. If the judgment result is yes, the G base station parameters contained in the vector are determined as the network parameters to be configured. Otherwise, the vector and the set of objective function values ​​are added as a piece of training data to the dataset used to train the proxy model, and the next iteration process begins.

[0194] The input distribution of base station parameters can be obtained through business knowledge analysis or based on historical data statistics.

[0195] Among them, network performance parameters include user downlink peak / average rate, signal interference intensity, user balance degree, network resource utilization, etc.

[0196] Specifically, the specific iterative calculation process of the BO method in this scenario can be found in the description of the method embodiments in Figures 3 to 11 above, and will not be repeated here.

[0197] Please refer to Figure 12, which is a schematic diagram of the structure of an antenna design device provided in an embodiment of the present application. As shown in Figure 11, the device includes an acquisition unit 1210, a processing unit 1220 and a determination unit 1230. The device determines the design parameters of the antenna through multiple iterations.

[0198] The acquisition unit 1210 is used to obtain multiple vectors based on the optimization space during the i-th iteration process, each of the multiple vectors contains M elements, and the M elements are respectively used to characterize the M design parameters of the antenna, and the optimization space is used to describe the value range of each design parameter in the M design parameters, M and i are positive integers; and obtain the input distribution of the M design parameters. The processing unit 1220 is configured to obtain the input distribution of the M design parameters and input the input distribution of the M design parameters and the multiple vectors into a proxy model of a Bayesian optimization (BO) to obtain multiple sets of predicted values ​​for the antenna's performance parameters and multiple degrees of certainty corresponding to the multiple sets of predicted values. The multiple sets of predicted values ​​correspond to the multiple vectors, and the multiple degrees of certainty are used to describe the credibility of the multiple sets of predicted values. The processing process of the proxy model includes calculating the covariance between any two vectors in the multiple vectors, where the covariance between the two vectors is calculated using a sample set obtained by sampling the input distribution. Furthermore, the multiple sets of predicted values ​​and the multiple degrees of certainty are processed based on an acquisition function of the BO to determine a first vector from the multiple vectors, the first vector corresponding to the maximum output of the acquisition function. The first vector is input into an objective function to obtain a set of performance parameters for the antenna. The determining unit 1230 is configured to determine the M design parameters included in the first vector as the design parameters of the antenna when the set of performance parameters of the antenna meets a preset condition or i is equal to a preset number of times.

[0199] In a feasible embodiment, the preset condition includes a set of reference performance parameters of the antenna. When the difference between the set of performance parameters of the antenna and the set of reference performance parameters is less than a preset threshold, the set of performance parameters of the antenna meets the preset condition.

[0200] In a feasible embodiment, the processing unit is also used to: when a set of performance parameters of the antenna does not meet the preset conditions and i is not equal to the preset number of times, add the first vector and a set of performance parameters of the antenna as a training data to the data set used to train the proxy model, and start the next iteration.

[0201] In a feasible embodiment, the multiple vectors include a second vector and a third vector, and the covariance between the second vector and the third vector is obtained by inputting the first sample set and the second sample set into the maximum mean difference (MMD) kernel function for processing; wherein, the m vectors included in the first sample set are obtained based on the second vector and the input distribution sampling, and the m vectors included in the second sample set are obtained based on the third vector and the input distribution sampling, and each vector in the first sample set and the second sample set contains M elements, and the M elements respectively represent the M design parameters.

[0202] In a feasible embodiment, the processing process of the MMD kernel function on the first sample set and the second sample set includes adding the first matrix to the second matrix and subtracting 2 times the third matrix; the first matrix is ​​obtained by multiplying the fourth matrix, the transposed matrix of the fourth matrix, and the pseudo-inverse matrix of the fourth matrix, and the fourth matrix is ​​obtained by processing h vectors in the first sample set by the MMD kernel function, where h is a positive integer less than m; the second matrix is ​​obtained by multiplying the fifth matrix, the transposed matrix of the fifth matrix, and the pseudo-inverse matrix of the fifth matrix, and the fifth matrix is ​​obtained by processing the h vectors in the second sample set by the MMD kernel function; the third matrix is ​​obtained by multiplying the sixth matrix, the transposed matrix of the sixth matrix, and the pseudo-inverse matrix of the sixth matrix, and the sixth matrix is ​​obtained by processing the h vectors in the first sample set and the h vectors in the second sample set by the MMD kernel function.

[0203] In a feasible implementation manner, the processing unit is further configured to: before acquiring the plurality of vectors from the optimization space, train the proxy model using the dataset of the proxy model.

[0204] In a feasible implementation manner, the input distribution is obtained by statistically analyzing production data, and the input distribution of each design parameter is characterized by a probability distribution or a Gaussian distribution.

[0205] In a feasible embodiment, the M design parameters include one or more of the thickness, material dielectric constant and shape parameters of the antenna; the performance parameters include one or more of the scattering parameters, radiation pattern, and sidelobe width of the antenna.

[0206] Specifically, the specific execution process of each unit in the above-mentioned antenna design device can be found in the description of the above-mentioned method embodiment, and will not be repeated here.

[0207] Please refer to Figure 13, which is a schematic diagram of the structure of a computer device provided in an embodiment of the present application. It can serve as a specific implementation of the antenna design apparatus in Figure 12 or an example of the hardware structure of the computer device in Figure 1. As shown in Figure 13, the computer device includes a processor 1301, a memory 1302, and an interface circuit 1303, which communicate with each other via a bus 1304. The computer device can be used to execute the aforementioned antenna design method. During the i-th iteration of the aforementioned method:

[0208] Processor 1301 is used to obtain multiple vectors based on the optimization space during the i-th iteration process, each of the multiple vectors contains M elements, and the M elements are respectively used to characterize the M design parameters of the antenna, and the optimization space is used to describe the value range of each design parameter in the M design parameters, M and i are positive integers; and obtain the input distribution of the M design parameters. Processor 1301 is further configured to obtain the input distribution of the M design parameters and input the input distribution of the M design parameters and the multiple vectors into a proxy model of a Bayesian optimization (BO) to obtain multiple sets of predicted values ​​for the antenna's performance parameters and multiple degrees of certainty corresponding to the multiple sets of predicted values. The multiple sets of predicted values ​​correspond to the multiple vectors, and the multiple degrees of certainty are used to describe the degree of confidence of the multiple sets of predicted values. The processing of the proxy model includes calculating the covariance between any two vectors from the multiple vectors, where the covariance between the two vectors is calculated using a sample set obtained by sampling the input distribution. Furthermore, based on an acquisition function of the BO, the multiple sets of predicted values ​​and the multiple degrees of certainty are processed to determine a first vector from the multiple vectors, the first vector corresponding to the maximum output of the acquisition function. The first vector is input into an objective function to obtain a set of performance parameters for the antenna. Processor 1301 is further configured to determine the M design parameters included in the first vector as the design parameters of the antenna when the set of performance parameters for the antenna meets a preset condition or i is equal to a preset number of times.

[0209] Memory 1302 is also used to store the aforementioned multiple vectors, antenna design parameters, input distributions of the design parameters, and datasets for training the agent model. When such datasets exceed a certain size, they can be stored on other computing devices. In this case, the computing device communicates with the other computing devices storing the datasets via interface circuit 1303.

[0210] Specifically, the specific process of the above-mentioned computer device executing the antenna design method can be found in the description of the above-mentioned embodiment, which will not be repeated here.

[0211] An embodiment of the present application provides a chip system, which includes at least one processor, a memory and an interface circuit. The memory, the interface circuit and the at least one processor are interconnected by lines, and instructions are stored in the at least one memory. When the instructions are executed by the processor, some or all of the steps of any one of the aforementioned antenna design method embodiments are implemented.

[0212] An embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed, some or all of the steps of any one of the above-mentioned antenna design method embodiments are implemented.

[0213] An embodiment of the present application provides a computer program product, which includes instructions. When the instructions are executed by a processor, some or all of the steps of any one of the above-mentioned antenna design method embodiments are implemented.

[0214] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, please refer to the relevant description of other embodiments. It should be noted that for the aforementioned method embodiments, in order to simplify the description, they are all expressed as a series of action combinations, but those skilled in the art should know that this application is not limited to the order of the actions described, because according to this application, some steps may be performed in other orders or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required for this application.

[0215] In the several embodiments provided in this application, it should be understood that the disclosed devices can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the above-mentioned units is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, and the indirect coupling or communication connection of devices or units can be electrical or other forms.

[0216] The units described above as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0217] As described above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the above embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. An antenna design method, characterized in that: The method comprises: The design parameters of the antenna are determined through multiple iterations; wherein the i-th iteration process is: Based on obtaining multiple vectors in the optimization space, each of the multiple vectors includes M elements, and the M elements are respectively used to characterize M design parameters of the antenna, and the optimization space is used to describe the value range of each design parameter in the M design parameters, and M and i are positive integers; Obtain the input distribution of the M design parameters, and input the input distribution of the M design parameters and the multiple vectors into the proxy model of the Bayesian optimization BO, to obtain multiple groups of predicted values ​​of the performance parameters of the antenna and multiple degrees of certainty corresponding to the multiple groups of predicted values; wherein the multiple groups of predicted values ​​correspond to the multiple vectors respectively, and the multiple degrees of certainty are respectively used to describe the credibility of the multiple groups of predicted values, and the processing process of the proxy model includes calculating the covariance of any two vectors in the multiple vectors, and the covariance between the any two vectors is calculated by sampling the input distribution. Processing the multiple groups of predicted values ​​and the multiple degrees of certainty based on the acquisition function of the BO to determine a first vector from the multiple vectors, the output of the acquisition function corresponding to the first vector being the largest; and inputting the first vector into an objective function to obtain a set of performance parameters of the antenna; When a set of performance parameters of the antenna meets a preset condition or i is equal to a preset number, the M types of design parameters included in the first vector are determined as the design parameters of the antenna.

2. The method according to claim 1, characterized in that The preset condition includes a set of reference performance parameters of the antenna. When the difference between the set of performance parameters of the antenna and the set of reference performance parameters is less than a preset threshold, the set of performance parameters of the antenna meets the preset condition.

3. The method according to claim 1 or 2, characterized in that: The method further comprises: When a set of performance parameters of the antenna does not meet the preset condition and i is not equal to the preset number of times, the first vector and a set of performance parameters of the antenna are added as a training data to the data set used to train the proxy model, and the next iteration is started.

4. The method according to any one of claims 1 to 3, characterized in that The multiple vectors include a second vector and a third vector, and the covariance between the second vector and the third vector is obtained by inputting the first sample set and the second sample set into a maximum mean difference (MMD) kernel function for processing; Among them, the m vectors contained in the first sample set are obtained based on the second vector and the input distribution sampling, the m vectors contained in the second sample set are obtained based on the third vector and the input distribution sampling, and each vector in the first sample set and the second sample set contains M elements, and the M elements respectively represent the M design parameters.

5. The method according to claim 4, characterized in that The processing process of the MMD kernel function on the first sample set and the second sample set includes adding the first matrix to the second matrix and subtracting 2 times of the third matrix; The first matrix is ​​obtained by multiplying a fourth matrix, a transposed matrix of the fourth matrix, and a pseudo-inverse matrix of the fourth matrix, and the fourth matrix is ​​obtained by processing h vectors in the first sample set by the MMD kernel function, where h is a positive integer less than m; The second matrix is ​​obtained by multiplying a fifth matrix, a transposed matrix of the fifth matrix, and a pseudo-inverse matrix of the fifth matrix, and the fifth matrix is ​​obtained by processing h vectors in the second sample set by the MMD kernel function; The third matrix is ​​obtained by multiplying the sixth matrix, the transposed matrix of the sixth matrix, and the pseudo-inverse matrix of the sixth matrix, and the sixth matrix is ​​obtained by processing the h vectors in the first sample set and the h vectors in the second sample set by the MMD kernel function.

6. The method according to any one of claims 1 to 5, characterized in that The method further comprises: Before acquiring a plurality of vectors from the optimization space, the proxy model is trained using the data set of the proxy model.

7. The method according to any one of claims 1 to 6, characterized in that The input distribution is obtained by statistically analyzing production data, and the input distribution of each design parameter is obtained by probability distribution or Gaussian distribution. To characterize.

8. The method according to any one of claims 1 to 7, characterized in that The M design parameters include one or more of the thickness, material dielectric constant and shape parameter of the antenna; The performance parameters include one or more of the scattering parameters, radiation pattern, and side lobe width of the antenna.

9. An antenna design device, characterized in that: The device determines the design parameters of the antenna through multiple iterations, and the device includes: An acquisition unit is used to acquire multiple vectors based on the optimization space in the i-th iteration process, each of the multiple vectors includes M elements, and the M elements are respectively used to characterize M design parameters of the antenna, and the optimization space is used to describe the value range of each design parameter in the M design parameters, and M and i are positive integers; and obtain the input distribution of the M design parameters; A processing unit, used for obtaining the input distribution of the M design parameters, and inputting the input distribution of the M design parameters and the multiple vectors into a proxy model of a Bayesian optimization BO, to obtain multiple groups of predicted values ​​of the performance parameters of the antenna and multiple degrees of certainty corresponding to the multiple groups of predicted values; wherein the multiple groups of predicted values ​​correspond to the multiple vectors respectively, and the multiple degrees of certainty are respectively used to describe the credibility of the multiple groups of predicted values, and the processing process of the proxy model includes calculating the covariance of any two vectors among the multiple vectors, and the covariance between the any two vectors is calculated by a sample set obtained by sampling the input distribution; and processing the multiple groups of predicted values ​​and the multiple degrees of certainty based on an acquisition function of the BO to determine a first vector from the multiple vectors, and the output of the acquisition function corresponding to the first vector is the largest; inputting the first vector into an objective function to obtain a set of performance parameters of the antenna; A determination unit is used to determine the M design parameters included in the first vector as the design parameters of the antenna when a set of performance parameters of the antenna meets a preset condition or i is equal to a preset number of times.

10. The device according to claim 9, characterized in that The preset condition includes a set of reference performance parameters of the antenna. When the difference between the set of performance parameters of the antenna and the set of reference performance parameters is less than a preset threshold, the set of performance parameters of the antenna meets the preset condition.

11. The device according to claim 9 or 10, characterized in that The processing unit is also used for: When a set of performance parameters of the antenna does not meet the preset condition and i is not equal to the preset number of times, the first vector and a set of performance parameters of the antenna are added as a training data to the data set used to train the proxy model, and the next iteration is started.

12. The device according to any one of claims 9 to 11, characterized in that The multiple vectors include a second vector and a third vector, and the covariance between the second vector and the third vector is obtained by inputting the first sample set and the second sample set into a maximum mean difference (MMD) kernel function for processing; Among them, the m vectors contained in the first sample set are obtained based on the second vector and the input distribution sampling, the m vectors contained in the second sample set are obtained based on the third vector and the input distribution sampling, and each vector in the first sample set and the second sample set contains M elements, and the M elements respectively represent the M design parameters.

13. The device according to claim 12, characterized in that The processing process of the MMD kernel function on the first sample set and the second sample set includes adding the first matrix to the second matrix and subtracting 2 times of the third matrix; The first matrix is ​​obtained by multiplying a fourth matrix, a transposed matrix of the fourth matrix, and a pseudo-inverse matrix of the fourth matrix, and the fourth matrix is ​​obtained by processing h vectors in the first sample set by the MMD kernel function, where h is a positive integer less than m; The second matrix is ​​obtained by multiplying a fifth matrix, a transposed matrix of the fifth matrix, and a pseudo-inverse matrix of the fifth matrix, and the fifth matrix is ​​obtained by processing h vectors in the second sample set by the MMD kernel function; The third matrix is ​​obtained by multiplying the sixth matrix, the transposed matrix of the sixth matrix, and the pseudo-inverse matrix of the sixth matrix, and the sixth matrix is ​​obtained by processing the h vectors in the first sample set and the h vectors in the second sample set by the MMD kernel function.

14. The device according to any one of claims 9 to 13, characterized in that The processing unit is also used for: Before acquiring a plurality of vectors from the optimization space, the proxy model is trained using the data set of the proxy model.

15. The device according to claim 14, characterized in that The input distribution is obtained by statistics of production data, and the input distribution of each design parameter is characterized by probability distribution or Gaussian distribution.

16. The device according to any one of claims 9 to 15, characterized in that The M design parameters include one or more of the thickness, material dielectric constant and shape parameter of the antenna; The performance parameters include one or more of the scattering parameters, radiation pattern, and side lobe width of the antenna.

17. A computer device, characterized in that: The computer device includes at least one processor, a memory and an interface circuit, the memory, the interface circuit and the at least one processor are interconnected via lines, and instructions are stored in the at least one memory; when the instructions are executed by the processor, any method described in claims 1-8 is implemented.

18. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed, the method according to any one of claims 1 to 8 is implemented.

19. A computer program product, characterized in that The computer program product comprises instructions, and when the instructions are executed, the method according to any one of claims 1 to 8 is implemented.

Citation Information

Patent Citations

  • Antenna design method and device

    CN119442824A

  • Electromechanical cooperative design method for skin antenna based on parallel Bayesian optimization

    CN109063266A

  • Antenna optimization method based on multi-output Gaussian process Bayesian optimization

    CN113076699A

  • Design method and device of multiband antenna, storage medium and electronic equipment

    CN113420496A

  • Antenna weight parameter optimization method and device

    CN114519295A

Cited By

  • Design method and system of double-frequency yagi antenna

    CN119740500A

  • Aircraft aerodynamic data generation method, device, equipment and medium

    CN121365253A