Motor design method and related device based on action value judgment

Through the motor design method based on action value judgment, the value of motor design action is calculated using artificial intelligence network, and the problem of motor design relies on designer experience in the existing technology is solved, and efficient and high-quality motor design is achieved.

CN114117681BActive Publication Date: 2025-06-06SHENZHEN DIMAN DEEP TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111469326.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-03
Publication Date
2025-06-06
Estimated Expiration
2041-12-03

AI Technical Summary

Technical Problem

Existing motor design software is highly dependent on motor designers' design experience, resulting in different levels of motor products designed by designers using the same software to different levels of motor products.

Method used

The motor design method based on action value judgment is adopted, by obtaining the motor requirement information input by the user, calculating the action value of the candidate action, determining the action with the greatest action value as the target action, and outputting the motor design information including the information of the target action. This method uses the weight matrix obtained by artificial intelligence network training to calculate the action value, reducing the dependence on designer experience.

Benefits of technology

The ability to design motor products with high performance levels improves design efficiency, reduces the dependence on designer experience, and ensures consistency and high quality of design results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114117681B_ABST
    Figure CN114117681B_ABST
Patent Text Reader

Abstract

An embodiment of the present application discloses a motor design method based on action value judgment, including: obtaining motor requirement information input by a user; obtaining a first state through the motor requirement information; calculating the action value of a candidate action based on the first weight matrix and the first state, the candidate action representing an operation on a certain geometric dimension of the motor, and the action value representing the performance level of the motor when the corresponding action is taken; determining the action with the largest action value among the candidate actions as the target action; and outputting motor design information including information of the target action.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of motor design, and more particularly to a motor design method and related devices based on action value judgment. Background Art

[0002] Motor, commonly known as motor, refers to an electromagnetic device that realizes the conversion or transmission of electrical energy according to the law of electromagnetic induction. As a motor, it can provide power to the load, and as a generator, it can convert mechanical energy into electrical energy. Motors are widely used in many industries and have become an indispensable role in production and life.

[0003] Before using the motor, it is necessary to use motor design software to design a motor product that meets the requirements. Motor designers operate the motor design software based on their own motor design experience to design the motor product.

[0004] However, existing motor design software is highly dependent on the design experience of motor designers. Even if motor designers of different levels use the same motor design software, the motor products they design often have different performance levels or economic performance. Summary of the invention

[0005] The embodiments of the present application provide a motor design method and related devices based on action value judgment.

[0006] A motor design method based on action value judgment, comprising:

[0007] Get the motor requirement information input by the user;

[0008] Obtaining a first state through the motor requirement information, wherein the first state indicates a motor state in which each geometric dimension and each electromagnetic data of the motor has a unique value;

[0009] The action value of the candidate action is calculated according to the first weight matrix and the first state, wherein the first weight matrix is ​​a matrix obtained through training of an artificial intelligence network, the candidate action represents an operation on a certain geometric dimension of the motor, and the action value represents a performance level of the motor when a corresponding action is taken;

[0010] Determine the action with the greatest action value among the candidate actions as the target action;

[0011] Motor design information including information of the target motion is output.

[0012] Optionally, after obtaining the first state through the motor requirement information and before calculating the action value of the candidate action according to the first weight matrix and the first state, the method further includes:

[0013] determining the first state as a second state;

[0014] A third state, a first reward, and a second action are obtained according to the second state and the first action, wherein the first action is a random action, the third state is the state after the second state takes the first action, the first reward represents an evaluation from the second state to the third state, and the second action is a random action other than the first action;

[0015] determining and saving a candidate tuple, the candidate tuple comprising the second state, the first action, the third state, and the first reward;

[0016] Determine whether the number of candidate tuples is less than an upper limit value, where the upper limit value is a preset value;

[0017] If it is greater than or equal to, it is determined that the number of candidate tuples has reached the upper limit;

[0018] If it is less than, the third state is determined as the second state, and the second action is determined as the first action;

[0019] Return to execute to obtain the third state, the first reward and the second action according to the second state and the first action, until if it is greater than or equal to, it is determined that the number of the candidate tuples has reached the upper limit value;

[0020] Determine a tuple among the candidate tuples as a training tuple, wherein the training tuple includes a fourth state, a third action, a fifth state, and a second reward;

[0021] Determine the randomly initialized matrix as the second weight matrix;

[0022] Calculating by using the fourth state, the third action and the second weight matrix to obtain a predicted value;

[0023] Calculating by means of the fifth state, the fourth action and the second weight matrix to obtain a target value, wherein the fourth action represents all preset actions;

[0024] Based on a preset loss function, calculating the second reward, the maximum value among the target value and the predicted value to obtain a loss function value;

[0025] Based on a preset loss function, calculating the gradient of the loss function with respect to the second weight matrix;

[0026] Calculating by using the second weight matrix and the gradient to obtain a third weight matrix;

[0027] Determine whether the loss function value is less than a preset threshold;

[0028] If yes, determining the third weight matrix as the first weight matrix;

[0029] If not, determining the third weight matrix as the second weight matrix, and determining another tuple in the candidate tuples as the training tuple;

[0030] Return to perform calculations through the fourth state, the third action and the second weight matrix to obtain a predicted value, until if yes, the third weight matrix is ​​determined as the first weight matrix.

[0031] Optionally, after returning to execute the third state, the first reward and the second action according to the second state and the first action until, if greater than or equal to, it is determined that the number of candidate tuples has reached the upper limit, and before determining one of the candidate tuples as a training tuple, the method further includes:

[0032] Randomly sorting and randomly extracting the candidate tuples to obtain screening tuples;

[0033] Determining a tuple in the candidate tuples as a training tuple includes:

[0034] Determine a tuple in the screening tuples as a training tuple;

[0035] If not, determining the third weight matrix as the second weight matrix, and determining another tuple in the candidate tuple as the training tuple, comprising:

[0036] If not, the third weight matrix is ​​determined as the second weight matrix, and another tuple in the screening tuple is determined as the training tuple.

[0037] Optionally, based on a preset loss function, calculating by the second reward, the maximum value of the target value and the predicted value to obtain a loss function value includes:

[0038] The loss function value is calculated by the following loss function:

[0039]

[0040] The w is the second weight matrix;

[0041] The r is the second reward;

[0042] The γ is a constant representing the discount rate, and its value range is 0.9 to 0.99;

[0043] The s is the fourth state;

[0044] a is the third action, a random action;

[0045] The Q(s,a,w) is the predicted value;

[0046] The s' is the fifth state, which is the state obtained after s takes a;

[0047] a' is the fourth action;

[0048] The Q(s',a',w) is the target value;

[0049] The maxQ(s',a',w) is the maximum value among the target values.

[0050] Optionally, calculating by the second weight matrix and the gradient to obtain a third weight matrix includes:

[0051] The third weight matrix is ​​calculated by the following formula:

[0052] w' = w - lr * grad;

[0053] The w' is the third weight matrix;

[0054] The w is the second weight matrix;

[0055] The lr is a preset correction parameter, and its value range is 0.01 to 0.001;

[0056] The grad is the gradient.

[0057] Optionally, after acquiring the motor requirement information input by the user and before obtaining the first state through the motor requirement information, the method further includes:

[0058] Determine whether there is a motor model matching the motor requirement information in the database;

[0059] If it exists, the motor model is called to process and the result is output;

[0060] If not, it is determined that the first state is obtained through the motor requirement information.

[0061] Optionally, after outputting the motor design information including the information of the target action, the method further includes:

[0062] Draw three-dimensional and two-dimensional drawings according to the motor design information;

[0063] Performing electromagnetic field finite element analysis according to the motor design information;

[0064] Performing a finite element analysis of the temperature field according to the motor design information;

[0065] Performing structural finite element analysis according to the motor design information;

[0066] Performing vibration and noise analysis according to the motor design information;

[0067] A system simulation analysis is performed based on the motor design information.

[0068] A motor design device, comprising:

[0069] An acquisition unit, used for acquiring motor requirement information input by a user;

[0070] A processing unit, configured to obtain a first state through the motor requirement information, wherein the first state indicates a motor state in which each geometric dimension and each electromagnetic data of the motor has a unique value;

[0071] a calculation unit, configured to calculate an action value of a candidate action according to the first weight matrix and the first state, wherein the first weight matrix is ​​a matrix obtained through training of an artificial intelligence network, the candidate action represents an operation on a certain geometric dimension of the motor, and the action value represents a performance level of the motor when a corresponding action is taken;

[0072] A determination unit, configured to determine the action with the greatest action value among the candidate actions as a target action;

[0073] The output unit is used to output the motor design information including the information of the target action.

[0074] A motor design device, comprising:

[0075] CPU, memory and input / output interface;

[0076] The memory is a short-term storage memory or a persistent storage memory;

[0077] The central processing unit is configured to communicate with the memory and execute instructions in the memory to perform the above method.

[0078] A computer-readable storage medium includes instructions. When the instructions are executed on a computer, the computer executes the above method.

[0079] It can be seen from the above technical solutions that the embodiments of the present application have the following advantages:

[0080] The motor requirement information input by the user is obtained, and then the first state is obtained. According to the first weight matrix and the first state, the action value of the candidate action is calculated, and finally the action with the largest action value among the candidate actions is determined as the target action, and the motor design information including the information of the target action is output. In this way, it is not necessary to rely on the design experience of the designer, and a motor product with a higher performance level can be designed, thereby improving the design efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0081] Figure 1 A schematic diagram of an embodiment of a motor design method based on action value judgment according to an embodiment of the present application;

[0082] Figure 2 A schematic diagram of another embodiment of the motor design method based on action value judgment according to an embodiment of the present application;

[0083] Figure 3 A schematic diagram of an embodiment of a motor design device according to an embodiment of the present application;

[0084] Figure 4 A schematic diagram of another embodiment of the motor design device according to an embodiment of the present application. DETAILED DESCRIPTION

[0085] The embodiments of the present application provide a motor design method and related devices based on action value judgment.

[0086] Existing motor design methods are highly dependent on the design experience of motor designers. Even if motor designers of different levels use the same motor design software, the motor products they design often have different performance levels or economic performance. In order to solve this problem, the motor design method based on action value judgment disclosed in the embodiment of the present application has the basic principle of calculating the value of each possible design action for the current motor state and taking the design action with the highest value.

[0087] The following describes the motor design method and related devices based on action value judgment in an embodiment of the present application.

[0088] See also Figure 1 , an embodiment of the motor design method based on action value judgment of the embodiment of the present application includes:

[0089] 101. Obtain motor requirement information input by the user;

[0090] Obtain the motor requirement information input by the user. The motor requirement information includes parameters such as power, voltage, speed, number of phases, power factor, altitude, ambient temperature, etc. In addition, the user can input the motor requirement information through the interactive interface provided by the software.

[0091] 102. Obtain a first state through the motor requirement information;

[0092] The first state is obtained through the motor requirement information. Among them, the state represents the motor state in which each geometric dimension and each electromagnetic data of the motor has a unique value, and the first state is the initialized state. For the motor, it has geometric dimensions, such as the motor stator outer diameter dimension, the motor stator inner diameter dimension, the motor stator length dimension, the number of stator slots, the slot shape dimension, the rotor related dimensions, etc. It also has electromagnetic data, such as stator winding electrical density, stator magnetic flux density, efficiency, weight, etc. All these geometric dimensions and electromagnetic data have unique values ​​under a certain scheme, which constitutes a motor state.

[0093] 103. Calculate the action value of the candidate action according to the first weight matrix and the first state;

[0094] After obtaining the first state, the action value of the candidate action is calculated in combination with the first weight matrix. Among them, the first weight matrix is ​​a matrix obtained through training of the artificial intelligence network. The action represents the operation of a certain geometric dimension of the motor. For example, increasing the outer diameter of the stator is an action, reducing the outer diameter of the stator is also an action, increasing the length of the stator is an action, and keeping the length of the stator unchanged is also an action. There are multiple candidate actions, which are pre-set by humans to provide conditions for subsequent operations. The action value represents the performance level of the motor when the corresponding action is taken. The greater the action value, the higher the performance level.

[0095] 104. Determine the action with the greatest action value among the candidate actions as the target action;

[0096] After obtaining multiple action values ​​of multiple candidate actions, the action with the largest action value is determined as the target action. Since the action value represents the performance level of the motor when taking the corresponding action, the action with the largest action value has the highest performance level of the motor, and the corresponding action is determined to meet the design requirements.

[0097] 105. Output motor design information including information of the target action.

[0098] After the target action is determined, the motor design information including the information of the target action is outputted. For example, the motor design information may include basic performance information of the motor, the target action taken, the optimal state obtained, etc.

[0099] In the embodiment of the present application, the motor requirement information input by the user is obtained, and then the first state is obtained. According to the first weight matrix and the first state, the action value of the candidate action is calculated, and finally the action with the largest action value among the candidate actions is determined as the target action, and the motor design information including the information of the target action is output. In this way, it is not necessary to rely on the design experience of the designer, and a motor product with a higher performance level can be designed, thereby improving the design efficiency.

[0100] See also Figure 2 Another embodiment of the motor design method based on action value judgment of the embodiment of the present application includes:

[0101] 201. Obtaining motor requirement information input by a user;

[0102] Obtain the motor requirement information input by the user. The motor requirement information includes parameters such as power, voltage, speed, number of phases, power factor, altitude, ambient temperature, etc. In addition, the user can input the motor requirement information through the interactive interface provided by the software.

[0103] 202. Determine whether there is a motor model matching the motor requirement information in the database;

[0104] It is determined whether there is a motor model matching the motor requirement information in the database. If yes, step 203 is executed; if no, step 204 is executed.

[0105] 203. Call the motor model for processing and output the result;

[0106] If there is motor product information matching the motor requirement information in the database, relevant data of the corresponding motor product information in the database is called for processing to obtain a design result.

[0107] 204. Determine that the first state is obtained through the motor requirement information;

[0108] Prompt information is obtained that there is no motor model matching the motor requirement information in the database, and it is determined that the first state is obtained through the motor requirement information.

[0109] 205. Obtain a first state through the motor requirement information;

[0110] The first state is obtained through the motor requirement information. Specifically, a motor design agent is constructed, and then the motor environment is built, and the first state is obtained in combination with the motor requirement information. The motor design agent is a program, similar to a motor design engineer, responsible for communicating with the motor environment, and can perform actions, sampling, and calculate losses.

[0111] For the motor, it has geometric dimensions, such as the outer diameter of the motor stator, the inner diameter of the motor stator, the length of the motor stator, the number of stator slots, the slot shape, and the rotor-related dimensions. It also has electromagnetic data, such as stator winding electric density, stator magnetic flux density, efficiency, weight, etc. All these geometric dimensions and electromagnetic data constitute the motor environment. Under a certain scheme, each geometric dimension and each electromagnetic data of the motor environment has a unique value, which constitutes a motor state. Among them, the first state is the initialized state.

[0112] 206. Determine the first state as a second state;

[0113] The first state is determined as the second state. Specifically, the first state value is determined as the initial value of the second state, and the second state does not represent a specific state, and its value will change through the following steps.

[0114] 207. Obtain a third state, a first reward, and a second action according to the second state and the first action;

[0115] After the second state is obtained, the first action is taken to obtain the third state, the first reward and the second action. The first action is a random action, which is obtained by the motor design agent calling the motor environment sampling module for random sampling. The third state is the state after the second state takes the first action.

[0116] Reward is an evaluation of an action. The standard of reward can be set manually according to the demand to evaluate the action. For example, if the action of increasing the outer diameter of the stator is taken, the corresponding electromagnetic data will change accordingly, and the values ​​of stator winding electric density, stator tooth magnetic density and efficiency will change. Set the standard, reward_J is the reward for stator winding electric density. When the stator winding electric density is greater than 8A / mm^2 and less than 10A / mm^2, reward_J=0, otherwise, reward_J=-10; reward_B is the reward for stator tooth magnetic density. When the stator tooth magnetic density is greater than 1.5T and less than 1.8T, reward_B=0, otherwise reward_B=-10; reward_eff is the efficiency reward, reward_eff=motor efficiency*1000. The reward for this action is specified as Reward=reward_J+reward_B+reward_eff, and the reward can be calculated.

[0117] The first reward represents the evaluation of the second state taking the first action to the third state, where the second action is a random action other than the first action.

[0118] 208. Determine and save candidate tuples;

[0119] Determine and save the candidate tuple. Specifically, after obtaining the second state, the first action, the third state, and the first reward, these four quantities are used as a candidate tuple. Build a motor design experience container, set its capacity to maxsize, and then save the candidate tuple to the motor design experience container. The motor design experience container can solve the problems of insufficient experience in the early stage of motor design, low utilization of existing experience, and strong experience correlation. In addition, if a new tuple enters the motor design experience container, the new tuple is stored in it, and the oldest tuple is deleted, always keeping the capacity of the motor design experience container at maxsize.

[0120] 209. Determine whether the number of the candidate tuples is less than an upper limit value;

[0121] It is determined whether the number of candidate tuples is less than an upper limit value, wherein the upper limit value is a preset value, that is, the size of the motor design experience container maxsize. If not, step 210 is executed, and if yes, step 211 is executed, and then step 207 is executed.

[0122] 210. Determine that the number of the candidate tuples has reached the upper limit;

[0123] Determine that the number of candidate tuples has reached the upper limit. When the number of candidate tuples reaches maxsize, that is, the motor design experience container is full, proceed to the next application operation.

[0124] 211. Determine the third state as the second state, and determine the second action as the first action;

[0125] If the motor design experience container is not filled, the third state is determined as the second state, and the second action is determined as the first action, so as to repeat the above related steps to obtain a new tuple.

[0126] For ease of understanding, the process from step 206 to step 211 is described below by way of example. For example, the initial state is determined to be the initial value s1 of the second state, the motor design agent calls the motor environment sampling module for random sampling to obtain the current value a1 of the first action, the current value s2 of the third state can be obtained through s1 and a1, the current value r1 of the first reward and the current value a2 of the second action can be obtained according to a1, the new tuple is determined to be (s1, a1, s2, r1), and the tuple is saved in the motor design experience container. If the motor design experience container is not filled, the next tuple is determined to be (s2, a2, s3, r2), and so on, repeating maxsize times to obtain multiple tuples.

[0127] 212. Randomly sort and randomly extract the candidate tuples to obtain screening tuples;

[0128] After obtaining the candidate tuples, we randomly sort and randomly extract them to obtain the screening tuples. By random sorting and random extraction, we can cut off the time correlation between tuples. For example, the candidate tuples are:

[0129] (s1, a1, s2, r1)

[0130] (s2, a2, s3, r2)

[0131] (s3, a3, s4, r3)

[0132] (s4, a4, s5, r4)

[0133] (s5, a5, s6, r5)

[0134] (s6, a6, s7, r6) ......

[0135] (sn, an, sn+1, rn).

[0136] After random sorting and random extraction, the filter tuple is:

[0137] (s3, a3, s4, r3)

[0138] (s6, a6, s7, r6)

[0139] (s1, a1, s2, r1)

[0140] (s5, a5, s6, r5).

[0141] 213. Determine a tuple in the screening tuple as a training tuple;

[0142] A tuple in the screening tuples is determined as a training tuple, wherein the training tuple includes a fourth state, a third action, a fifth state, and a second reward, for training.

[0143] 214. Determine the randomly initialized matrix as a second weight matrix;

[0144] The randomly initialized matrix is ​​determined as the second weight matrix. Specifically, a matrix is ​​initialized by a software program, and then the matrix is ​​determined as the second weight matrix for training. The second weight matrix does not refer to a specific matrix, and it will change through the following steps.

[0145] 215. Calculate using the fourth state, the third action, and the second weight matrix to obtain a predicted value;

[0146] The fourth state, the third action and the second weight matrix are used to calculate and obtain the predicted value. Specifically, a deep artificial intelligence network is first constructed, and then the value prediction network with the same structure as the deep artificial intelligence network is built using the deep artificial intelligence network as a template, and the fourth state, the third action and the second weight matrix are input into the value prediction network to calculate and obtain the predicted value.

[0147] 216. Calculate using the fifth state, the fourth action, and the second weight matrix to obtain a target value;

[0148] The fifth state, the fourth action and the second weight matrix are used to calculate and obtain the target value. The fourth action represents all preset actions. Specifically, a value target network with the same structure as the deep artificial intelligence network is built using the constructed deep artificial intelligence network as a template, and the fifth state, the fourth action and the second weight matrix are input into the value target network to calculate and obtain the target value, which has multiple target values.

[0149] 217. Based on a preset loss function, calculate the loss function value by using the second reward, the maximum value of the target value, and the predicted value;

[0150] The loss function value is calculated by the following loss function:

[0151]

[0152] The w is the second weight matrix;

[0153] The r is the second reward;

[0154] The γ is a constant representing the discount rate, and its value range is 0.9 to 0.99;

[0155] The s is the fourth state;

[0156] a is the third action, a random action;

[0157] The Q(s,a,w) is the predicted value;

[0158] The s' is the fifth state, which is the state obtained after s takes a;

[0159] a' is the fourth action, representing all preset actions;

[0160] The Q(s',a',w) is the target value;

[0161] The maxQ(s',a',w) is the maximum value among the target values.

[0162] 218. Based on a preset loss function, calculate the gradient of the loss function with respect to the second weight matrix;

[0163] Based on the preset loss function, the gradient of the loss function with respect to the second weight matrix is ​​calculated, wherein the gradient can be understood as the partial derivative of the loss function with respect to the second weight matrix.

[0164] 219. Perform calculation using the second weight matrix and the gradient to obtain a third weight matrix;

[0165] The third weight matrix is ​​calculated by the following formula:

[0166] w' = w - lr * grad;

[0167] The w' is the third weight matrix;

[0168] The w is the second weight matrix;

[0169] The lr is a preset correction parameter, and its value range is 0.01 to 0.001;

[0170] The grad is the gradient.

[0171] 220. Determine whether the loss function value is less than a preset threshold;

[0172] It is determined whether the loss function value is less than a preset threshold value, wherein the preset threshold value can be determined according to the requirements, for example, it can be set to 0.00001, and the specific details are not limited here. If yes, step 221 is executed, if not, step 222 is executed, and then step 215 is executed.

[0173] 221. Determine the third weight matrix as the first weight matrix;

[0174] If the loss function value is less than the preset threshold, the third weight matrix is ​​determined as the first weight matrix, and the matrix training process ends.

[0175] 222. Determine the third weight matrix as the second weight matrix, and determine another tuple in the screening tuple as the training tuple;

[0176] If the loss function value is greater than or equal to the preset threshold, the third weight matrix is ​​determined as the second weight matrix, and another tuple in the screening tuple is determined as the training tuple, and the next round of training is continued. Specifically, the weight matrix of the value prediction network is updated in reverse, so that the weight matrix just obtained is the weight matrix of the value prediction network.

[0177] For ease of understanding, the process from step 213 to step 222 is described below by way of example. For example, a tuple (s1, a1, s2, r1) in the screening tuple is determined as a training tuple, and the second weight matrix w1 is obtained by software initialization, and s1, a1, and w1 are input into the value prediction network to obtain a predicted value Q (s1, a1, w1). The state s2 obtained after s1 takes a1, a2 representing all preset actions, and w1 are input into the value target network to obtain multiple target values ​​Q (s2, a2, w1), and the maximum value maxQ (s2, a2, w1) is selected, and then based on the preset loss function, the current loss function value, the current gradient, and the third weight matrix w2 are calculated. Determine whether the current loss function value is less than 0.00001. If so, the training is terminated, and w2 is the desired result. If it is greater than or equal to, then w2 and another new tuple (s5, a5, s6, r5) in the filter tuple are input into the value prediction network to obtain the predicted value Q (s5, a5, w2), and then input into the value target network to obtain the target value maxQ (s6, a6, w1). The weight matrix of the value target network is fixed for a period of time. Its function is to solve the problem of unstable value prediction and to calculate the gradient of the loss function. Then the loss function value and the new weight matrix are calculated for judgment, and so on.

[0178] 223. Calculate the action value of the candidate action according to the first weight matrix and the first state;

[0179] After obtaining the first state, the action value of the candidate action is calculated in combination with the first weight matrix. Among them, the first weight matrix is ​​a matrix obtained through training of the artificial intelligence network. The action represents the operation of a certain geometric dimension of the motor. For example, increasing the outer diameter of the stator is an action, reducing the outer diameter of the stator is also an action, increasing the length of the stator is an action, and keeping the length of the stator unchanged is also an action. There are multiple candidate actions, which are pre-set by humans to provide conditions for subsequent operations. The action value represents the performance level of the motor when the corresponding action is taken. The greater the action value, the higher the performance level.

[0180] 224. Determine the action with the greatest action value among the candidate actions as the target action;

[0181] After obtaining multiple action values ​​of multiple candidate actions, the action with the largest action value is determined as the target action. Since the action value represents the performance level of the motor when taking the corresponding action, the action with the largest action value has the highest performance level of the motor, and the corresponding action is determined to meet the design requirements.

[0182] 225. Outputting motor design information including information of the target action;

[0183] After the target action is determined, the motor design information including the information of the target action is outputted. For example, the motor design information may include basic performance information of the motor, the target action taken, the optimal state obtained, etc.

[0184] 226. Draw three-dimensional and two-dimensional drawings according to the motor design information;

[0185] According to the motor design information, drawing software is automatically called to draw three-dimensional and two-dimensional drawings.

[0186] 227. Perform electromagnetic field finite element analysis according to the motor design information;

[0187] According to the motor design information, electromagnetic field finite element analysis software is automatically called to perform electromagnetic field finite element analysis.

[0188] 228. Performing a finite element analysis of the temperature field according to the motor design information;

[0189] According to the motor design information, the temperature field finite element analysis software is automatically called to perform the temperature field finite element analysis.

[0190] 229. Perform structural finite element analysis according to the motor design information;

[0191] According to the motor design information, structural finite element analysis software is automatically called to perform structural finite element analysis.

[0192] 230. Perform vibration and noise analysis according to the motor design information;

[0193] According to the motor design information, vibration and noise analysis software is automatically called to perform vibration and noise analysis.

[0194] 231. Perform system simulation analysis based on the motor design information.

[0195] According to the motor design information, the simulation software is automatically called to perform system simulation analysis.

[0196] In this embodiment, the motor requirement information input by the user is obtained. If there is no existing motor model, the first state is obtained through the motor requirement information, and the first weight matrix is ​​obtained through artificial intelligence network training. Then, according to the first weight matrix and the first state, the action value of the candidate action is calculated, and finally the action with the largest action value among the candidate actions is determined as the target action, and the motor design information including the information of the target action is output. In this way, it is not necessary to rely on the design experience of the designer, and a motor product with a higher performance level can be designed, thereby improving the design efficiency.

[0197] The following describes the motor design device of the present application embodiment. Figure 3, an embodiment of the motor design device of the present application embodiment includes:

[0198] An acquisition unit 301 is used to acquire motor requirement information input by a user;

[0199] A processing unit 302 is used to obtain a first state through the motor requirement information, wherein the first state indicates a motor state in which each geometric dimension and each electromagnetic data of the motor has a unique value;

[0200] A calculation unit 303 is used to calculate the action value of the candidate action according to the first weight matrix and the first state, the first weight matrix is ​​a matrix obtained through artificial intelligence network training, the candidate action represents an operation on a certain geometric dimension of the motor, and the action value represents the performance level of the motor when the corresponding action is taken;

[0201] A determination unit 304, configured to determine the action with the greatest action value among the candidate actions as a target action;

[0202] The output unit 305 is used to output the motor design information including the information of the target action.

[0203] In this embodiment, the acquisition unit 301 acquires the motor requirement information input by the user, and then obtains the first state. The calculation unit 303 calculates the action value of the candidate action according to the first weight matrix and the first state. Finally, the determination unit 304 determines the action with the largest action value among the candidate actions as the target action, and the output unit 305 outputs the motor design information including the information of the target action. In this way, it is possible to design motor products with higher performance levels without relying on the design experience of the designer, thereby improving the design efficiency.

[0204] The functions and processes performed by each unit in the motor design device of this embodiment are similar to those of the aforementioned Figure 1 to Figure 2 The functions and processes performed by the motor design device are similar and will not be repeated here.

[0205] Figure 4 4 is a schematic diagram of the structure of a motor design device provided in an embodiment of the present application. The motor design device 400 may include one or more central processing units (CPU) 401 and a memory 405. The memory 405 stores one or more application programs or data.

[0206] The memory 405 may be a volatile storage or a persistent storage. The program stored in the memory 405 may include one or more modules, each of which may include a series of instruction operations in the motor design device 400. Furthermore, the central processor 401 may be configured to communicate with the memory 405 and execute a series of instruction operations in the memory 405 on the motor design device 400.

[0207] The motor design device 400 may also include one or more power supplies 402, one or more wired or wireless network interfaces 403, one or more input and output interfaces 404, and / or one or more operating systems, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.

[0208] The CPU 401 can execute the aforementioned Figure 1 to Figure 2 The operations performed by the motor design device in the illustrated embodiment will not be described in detail here.

[0209] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0210] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, 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 an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.

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

[0212] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0213] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, read-only memory), random access memory (RAM, random access memory), disk or optical disk and other media that can store program code.

Claims

1. A motor design method based on action value judgment, It is characterized in that include: Get the motor requirement information input by the user; Obtaining a first state through the motor requirement information, wherein the first state indicates a motor state in which each geometric dimension and each electromagnetic data of the motor has a unique value; Calculate the action value of the candidate action according to the first weight matrix and the first state, wherein the first weight matrix is ​​a matrix obtained through training of an artificial intelligence network, the candidate action represents an operation on one of the geometric dimensions of the motor, and the action value represents the performance level of the motor when the corresponding action is taken; Determine the action with the greatest action value among the candidate actions as the target action; outputting motor design information including information of the target motion; After obtaining the first state through the motor requirement information, and before calculating the action value of the candidate action according to the first weight matrix and the first state, the method further includes: determining the first state as a second state; A third state, a first reward, and a second action are obtained according to the second state and the first action, wherein the first action is a random action, the third state is the state after the second state takes the first action, the first reward represents an evaluation from the second state to the third state, and the second action is a random action other than the first action; Determine and save a current candidate tuple, wherein the candidate tuple includes the second state, the first action, the third state, and the first reward; Determine whether the cumulative number of the candidate tuples is less than an upper limit value, where the upper limit value is a preset value; If it is greater than or equal to, it is determined that the cumulative number of the candidate tuples has reached the upper limit value; If it is less than, the third state is determined as the second state, and the second action is determined as the first action; Return to execute to obtain the third state, the first reward and the second action according to the second state and the first action, until if it is greater than or equal to, it is determined that the number of the candidate tuples has reached the upper limit value; Determine a tuple among the candidate tuples as a training tuple, wherein the training tuple includes a fourth state, a third action, a fifth state, and a second reward; Determine the randomly initialized matrix as the second weight matrix; Calculating by using the fourth state, the third action and the second weight matrix to obtain a predicted value; Calculating by means of the fifth state, the fourth action and the second weight matrix to obtain a target value, wherein the fourth action represents all preset actions; Based on a preset loss function, calculating the second reward, the maximum value among the target value and the predicted value to obtain a loss function value; Based on a preset loss function, calculating the gradient of the loss function with respect to the second weight matrix; Calculating by using the second weight matrix and the gradient to obtain a third weight matrix; Determine whether the loss function value is less than a preset threshold; If yes, determining the third weight matrix as the first weight matrix; If not, determining the third weight matrix as the second weight matrix, and determining another tuple in the candidate tuples as the training tuple; Return to perform calculations through the fourth state, the third action and the second weight matrix to obtain a predicted value, until if yes, the third weight matrix is ​​determined as the first weight matrix.

2. The motor design method according to claim 1, It is characterized in that Returning to execute the third state, the first reward and the second action according to the second state and the first action, until if it is greater than or equal to, it is determined that the number of the candidate tuples has reached the upper limit value, and before determining one of the candidate tuples as a training tuple, the method further includes: Randomly sorting and randomly extracting the candidate tuples to obtain screening tuples; Determining a tuple in the candidate tuples as a training tuple includes: Determine a tuple in the screening tuples as a training tuple; If not, determining the third weight matrix as the second weight matrix, and determining another tuple in the candidate tuple as the training tuple, comprising: If not, the third weight matrix is ​​determined as the second weight matrix, and another tuple in the screening tuple is determined as the training tuple.

3. The motor design method according to claim 1, It is characterized in that Based on a preset loss function, a loss function value is obtained by calculating the second reward, the maximum value of the target value, and the predicted value, including: The loss function value is calculated by the following loss function: The w is the second weight matrix; The r is the second reward; The γ is a constant representing the discount rate, and its value range is 0.9 to 0.99; The s is the fourth state; a is the third action, a random action; The Q(s,a,w) is the predicted value; The s' is the fifth state, which is the state obtained after s takes a; a' is the fourth action; The Q(s',a',w) is the target value; The maxQ(s',a',w) is the maximum value among the target values.

4. The motor design method according to claim 1, It is characterized in that The third weight matrix is ​​obtained by calculating the second weight matrix and the gradient, including: The third weight matrix is ​​calculated by the following formula: w' = w - lr * grad; The w' is the third weight matrix; The w is the second weight matrix; The lr is a preset correction parameter, and its value range is 0.01 to 0.001; The grad is the gradient.

5. The motor design method according to claim 1, It is characterized in that After obtaining the motor requirement information input by the user and before obtaining the first state through the motor requirement information, the method further includes: Determine whether there is a motor model matching the motor requirement information in the database; If it exists, the motor model is called to process and the result is output; If not, it is determined that the first state is obtained through the motor requirement information.

6. The motor design method according to claim 1, It is characterized in that After outputting the motor design information including the information of the target action, the method further includes: Draw three-dimensional and two-dimensional drawings according to the motor design information; Performing electromagnetic field finite element analysis according to the motor design information; Performing a temperature field finite element analysis according to the motor design information; Performing structural finite element analysis according to the motor design information; Performing vibration and noise analysis according to the motor design information; A system simulation analysis is performed based on the motor design information.

7. A motor design device, It is characterized in that include: An acquisition unit, used for acquiring motor requirement information input by a user; A processing unit, configured to obtain a first state through the motor requirement information, wherein the first state indicates a motor state in which each geometric dimension and each electromagnetic data of the motor has a unique value; a calculation unit, configured to calculate an action value of a candidate action according to a first weight matrix and the first state, wherein the first weight matrix is ​​a matrix obtained through training of an artificial intelligence network, the candidate action represents an operation on a certain geometric dimension of the motor, and the action value represents a performance level of the motor when a corresponding action is taken; A determination unit, configured to determine the action with the greatest action value among the candidate actions as a target action; an output unit, configured to output motor design information including information of the target action; The computing unit is also used for: determining the first state as a second state; A third state, a first reward, and a second action are obtained according to the second state and the first action, wherein the first action is a random action, the third state is the state after the second state takes the first action, the first reward represents an evaluation from the second state to the third state, and the second action is a random action other than the first action; Determine and save a current candidate tuple, wherein the candidate tuple includes the second state, the first action, the third state, and the first reward; Determine whether the cumulative number of the candidate tuples is less than an upper limit value, where the upper limit value is a preset value; If it is greater than or equal to, it is determined that the cumulative number of the candidate tuples has reached the upper limit value; If it is less than, the third state is determined as the second state, and the second action is determined as the first action; Return to execute to obtain the third state, the first reward and the second action according to the second state and the first action, until if it is greater than or equal to, it is determined that the number of the candidate tuples has reached the upper limit value; Determine a tuple among the candidate tuples as a training tuple, wherein the training tuple includes a fourth state, a third action, a fifth state, and a second reward; Determine the randomly initialized matrix as the second weight matrix; Calculating by using the fourth state, the third action and the second weight matrix to obtain a predicted value; Calculating by means of the fifth state, the fourth action and the second weight matrix to obtain a target value, wherein the fourth action represents all preset actions; Based on a preset loss function, calculating the second reward, the maximum value among the target value and the predicted value to obtain a loss function value; Based on a preset loss function, calculating the gradient of the loss function with respect to the second weight matrix; Calculating by using the second weight matrix and the gradient to obtain a third weight matrix; Determine whether the loss function value is less than a preset threshold; If yes, determining the third weight matrix as the first weight matrix; If not, determining the third weight matrix as the second weight matrix, and determining another tuple in the candidate tuples as the training tuple; Return to perform calculations through the fourth state, the third action and the second weight matrix to obtain a predicted value, until if yes, the third weight matrix is ​​determined as the first weight matrix.

8. A motor design device, It is characterized in that include: CPU, memory and input / output interface; The memory is a short-term storage memory or a persistent storage memory; The central processing unit is configured to communicate with the memory and execute instructions in the memory to perform the method according to any one of claims 1 to 6.

9. A computer-readable storage medium, It is characterized in that The method comprises instructions, which, when executed on a computer, cause the computer to execute the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Winding for a rotating electrical machine and method for designing such a winding

    CA2913502A1

  • Permanent magnet motor optimization design method considering disturbance type design variable intervals

    CN106295004A