Multi-objective molecular optimization methods, devices, media, and equipment based on data analysis
By employing a data-analysis-based multi-objective molecular optimization method, utilizing an encoder-decoder model and a hybrid optimization strategy, the problems of slow speed and insufficient accuracy in existing multi-objective molecular optimization techniques are solved, achieving fast and accurate multi-objective molecular optimization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-01-29
- Publication Date
- 2026-04-03
AI Technical Summary
Existing molecular optimization methods cannot quickly and accurately handle complex multi-objective optimization problems in multi-objective optimization scenarios. In particular, the traditional MOEA/D algorithm has high computational costs when dealing with molecular optimization, resulting in slow convergence speed or getting trapped in local optima.
A multi-objective molecular optimization method based on data parsing is adopted. A pre-trained encoder-decoder model is used to map molecular sequences to a continuous latent space. The method combines zero-order local optimization strategy and evolutionary search strategy to achieve multi-objective optimization by balancing global exploration and local fine search.
It achieves rapid convergence in multi-objective optimization while ensuring the accuracy and diversity of optimization results, generating a set of Pareto optimal solutions that converge quickly.
Smart Images

Figure CN121601082B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the interdisciplinary field of computer-aided drug design and artificial intelligence, and in particular to a multi-objective molecular optimization method, apparatus, medium and device based on data analysis. Background Technology
[0002] Molecular optimization is a core component in fields such as drug discovery, materials science, and bioengineering. Its goal is to enhance one or more desired properties by structurally modifying lead molecules. Existing molecular optimization methods typically map molecular sequences to a continuous latent space using pre-trained encoder-decoder models and iteratively optimize based on property evaluation using zero-order gradient descent. However, this method primarily addresses single-objective molecular optimization problems and cannot effectively handle complex multi-objective optimization scenarios. In multi-objective situations, conflicts often exist between properties; for example, improving efficacy may reduce similarity, leading to difficulties in exploring the Pareto front. On the other hand, decomposition-based multi-objective evolutionary algorithms (MOEA / D) are a representative method for solving multi-objective optimization problems. However, traditional MOEA / D suffers from high computational costs for its evolutionary operator operations when handling molecular optimization, making it inefficient in exploring the high-dimensional latent space defined by deep learning models, resulting in slow convergence or getting trapped in local optima.
[0003] Therefore, there is an urgent need for a multi-objective molecular optimization method based on data analysis to solve the problem that existing technologies cannot quickly and accurately perform multi-objective optimization of molecules. Summary of the Invention
[0004] In view of this, this application provides a multi-objective molecular optimization method, apparatus, medium and device based on data analysis, the main purpose of which is to solve the problem that it is currently impossible to perform multi-objective optimization of molecules quickly and accurately.
[0005] To address the aforementioned problems, this application provides a multi-objective molecular optimization method based on data analysis, comprising:
[0006] Based on the lead molecule sequence, initial perturbation potential vectors corresponding to each sub-problem are generated respectively, and each sub-problem is determined in advance based on multiple target attributes;
[0007] Based on the initial neighborhood corresponding to each subproblem, the initial perturbation potential vector corresponding to the subproblem is iteratively optimized for a predetermined number of rounds to obtain the target optimization vector corresponding to each initial perturbation potential vector. In each round of iterative optimization, a zero-order local optimization strategy or an evolutionary search strategy is randomly adopted as the target optimization strategy to perform iterative optimization based on the target optimization strategy.
[0008] For each of the aforementioned target optimization vectors, a target molecule sequence corresponding to each target optimization vector is generated to obtain the target optimization result.
[0009] Optionally, the step of generating initial perturbation potential vectors corresponding to each sub-problem based on the leader molecule sequence specifically includes:
[0010] The lead molecule sequence is encoded to generate an initial potential vector;
[0011] Based on each of the sub-problems, the initial potential vector is subjected to Gaussian perturbation to obtain the initial perturbation potential vector corresponding to each of the sub-problems.
[0012] Optionally, the step of performing iterative optimization on the initial perturbation potential vector corresponding to each sub-problem for a predetermined number of rounds based on the initial neighborhood corresponding to each sub-problem to obtain the target optimization vector corresponding to each initial perturbation potential vector specifically includes:
[0013] Based on the initial perturbation potential vectors, determine the initial ideal vectors for the corresponding subproblems, and determine the initial neighborhood of each subproblem;
[0014] For the initial perturbation potential vector of the target, a zero-order local optimization strategy or an evolutionary search strategy is randomly determined as the target optimization strategy for the current iteration.
[0015] Based on the target initial perturbation potential vector and the initial neighborhood, the target optimization strategy is used to determine the optimized current optimization vector;
[0016] Based on the current iteration round number, determine whether the predetermined optimization stopping condition is met. If the predetermined optimization stopping condition is not met, update the initial ideal vector based on the current optimization vector to obtain the current ideal vector, and update the initial neighborhood based on the current ideal vector to obtain the current neighborhood. Randomly determine a zero-order local optimization strategy or an evolutionary search strategy as the target optimization strategy for the next iteration optimization. Based on the current neighborhood and the current optimization vector, perform the next iteration optimization using the target optimization strategy. Until the predetermined optimization stopping condition is met, use the current optimization vector as the target optimization vector of the target initial perturbation potential vector.
[0017] Optionally, when the target optimization strategy is a zero-order local optimization strategy, the step of determining the optimized current optimization vector based on the target initial perturbation potential vector and the initial neighborhood using the target optimization strategy specifically includes:
[0018] Construct an achievement scalar loss function based on each target attribute;
[0019] The initial neighborhood is uniformly sampled on a unit sphere to obtain a predetermined number of random sampling vectors. Each random sampling vector is then normalized to obtain a normalized target sampling vector.
[0020] Based on the target initial perturbation potential vector and each target sampling vector, the first loss value before sampling and the second loss value after sampling are calculated using a predetermined achievement scalar loss function.
[0021] The estimated gradient is determined based on the first loss value and the second loss value;
[0022] The initial perturbation potential vector of the target is optimized based on the estimated gradient to obtain the current optimized vector.
[0023] Optionally, when the target optimization strategy is an evolutionary search strategy, the step of determining the optimized current optimization vector based on the target initial perturbation potential vector and the initial neighborhood using the target optimization strategy specifically includes:
[0024] A sampling vector is randomly determined from the initial neighborhood;
[0025] Based on the target initial perturbation potential vector and the sampling vector, an initial optimization vector is generated using simulated binary crossover;
[0026] The initial optimized vector is mutated to obtain the current optimized vector.
[0027] Optionally, the step of updating the initial ideal vector based on the current optimized vector to obtain the current ideal vector, and updating the initial neighborhood based on the current ideal vector to obtain the current neighborhood, specifically includes:
[0028] For each target attribute, calculate the target vector based on the current optimization vector;
[0029] The initial ideal vector is updated based on the target vector to obtain the current ideal vector;
[0030] Based on the current ideal vector, the current optimization vector, and the weight vector corresponding to the target sub-problem, the initial neighborhood is updated to obtain the current neighborhood.
[0031] Optionally, generating a target molecule sequence corresponding to each of the target optimization vectors specifically includes:
[0032] Each of the target optimization vectors is decoded to generate a target molecule sequence corresponding to each target optimization vector.
[0033] To address the aforementioned problems, this application provides a multi-target molecular optimization device based on data analysis, comprising:
[0034] The first generation module is used to generate initial perturbation potential vectors corresponding to each subproblem based on the lead molecule sequence.
[0035] The optimization module is used to perform iterative optimization on the initial perturbation potential vector corresponding to each sub-problem for a predetermined number of rounds based on the initial neighborhood corresponding to each sub-problem, so as to obtain the target optimization vector corresponding to each initial perturbation potential vector. In each round of iterative optimization, a zero-order local optimization strategy or an evolutionary search strategy is randomly adopted as the target optimization strategy, so as to perform iterative optimization based on the target optimization strategy.
[0036] The second generation module is used to generate target molecule sequences corresponding to each of the target optimization vectors, so as to obtain target optimization results.
[0037] To address the aforementioned problems, this application provides a storage medium storing a computer program that, when executed by a processor, implements the steps of the data analysis-based multi-objective molecular optimization method described above.
[0038] To address the aforementioned problems, this application provides an electronic device, comprising at least a memory and a processor, wherein the memory stores a computer program, and the processor, when executing the computer program in the memory, implements the steps of any of the aforementioned multi-objective molecular optimization methods based on data analysis.
[0039] This application discloses a multi-objective molecular optimization method, apparatus, medium, and device based on data parsing. It uses a pre-trained encoder-decoder data parsing method to map discrete molecular representations to a continuous latent space for optimization. Within the MOEA / D framework, subproblems are updated using zero-order optimization as a local search strategy with a certain probability (the loss function is constructed from a scalarization function). Otherwise, traditional genetic operations and updates are employed, thus balancing global exploration and local fine-grained search. This achieves a hybrid optimization search strategy combining zero-order optimization local strategies and evolutionary search strategies. This ensures accurate multi-objective optimization of molecules while improving optimization speed, enabling rapid convergence of optimization results.
[0040] The above description is only an overview of the technical solution of this application. In order to better understand the technical means of this application and to implement it in accordance with the contents of the specification, and to make the above and other objects, features and advantages of this application more obvious and understandable, the following are specific embodiments of this application. Attached Figure Description
[0041] Various other advantages and benefits will become apparent to those skilled in the art upon reading the following detailed description of preferred embodiments. The accompanying drawings are for illustrative purposes only and are not intended to limit the scope of this application. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings:
[0042] Figure 1 This is a flowchart illustrating a multi-objective molecular optimization method based on data analysis, as described in an embodiment of this application.
[0043] Figure 2 This is a schematic diagram of population initialization in the data analysis-based multi-objective molecular optimization method of this application;
[0044] Figure 3 This is a schematic diagram of the hybrid optimization search strategy of zero-order optimization and decomposition strategy in this application;
[0045] Figure 4 A comparison of the hypervolume index of the Pareto front obtained by this application and the zero-order optimization algorithm based on weighted summation loss for nine different lead molecules.
[0046] Figure 5 This is a structural block diagram of a multi-target molecular optimization device based on data analysis, according to another embodiment of this application.
[0047] Figure 6 This is a structural block diagram of an electronic device according to another embodiment of this application. Detailed Implementation
[0048] Various embodiments and features of this application are described herein with reference to the accompanying drawings.
[0049] It should be understood that various modifications can be made to the embodiments described herein. Therefore, the above description should not be considered as limiting, but merely as an example of embodiments. Other modifications within the scope and spirit of this application will be apparent to those skilled in the art.
[0050] The accompanying drawings, which are included in and form part of this specification, illustrate embodiments of the present application and, together with the general description of the present application given above and the detailed description of the embodiments given below, serve to explain the principles of the present application.
[0051] These and other features of this application will become apparent from the following description of preferred forms of embodiments given as non-limiting examples, with reference to the accompanying drawings.
[0052] It should also be understood that although this application has been described with reference to some specific examples, those skilled in the art can certainly implement many other equivalent forms of this application.
[0053] The above and other aspects, features and advantages of this application will become more apparent when taken in conjunction with the accompanying drawings and in view of the following detailed description.
[0054] Specific embodiments of this application are described thereafter with reference to the accompanying drawings; however, it should be understood that the claimed embodiments are merely examples of this application, which can be implemented in various ways. Well-known and / or repeated functions and structures are not described in detail to avoid unnecessary or redundant details that could obscure the application. Therefore, the specific structural and functional details claimed herein are not intended to be limiting, but merely to serve as a representative basis for teaching those skilled in the art to use this application in a variety of substantially any suitable detailed structures.
[0055] This specification may use the phrases “in one embodiment,” “in another embodiment,” “in yet another embodiment,” or “in other embodiments,” all of which may refer to one or more of the same or different embodiments according to this application.
[0056] This application provides a multi-objective molecule optimization method based on data analysis, such as... Figure 1 As shown, it includes the following steps:
[0057] Step S101: Based on the lead molecule sequence, generate initial perturbation potential vectors corresponding to each sub-problem, wherein each sub-problem is determined in advance based on multiple target attributes;
[0058] In this step, the multi-objective molecular optimization problem actually refers to: given a leader molecule sequence... The goal is to generate a set of optimized molecular sequences. This makes multiple target attributes (e.g., QED, logP, Tanimoto similarity, etc.) to obtain Pareto optimal balance (not generally, but transforming the problem into a multi-objective problem of minimizing each objective). Among these, the attribute evaluation function... It can be obtained through the RDKit open-source toolkit for chemical information processing. The number of sub-problems (i.e., population size) can be set and adjusted according to actual needs.
[0059] In the specific implementation process, this step can be based on the encoder of the leader molecule sequence. Encode to generate initial latent vectors Then, based on each of the sub-problems, the initial potential vector is... Gaussian perturbation is applied to each subproblem to obtain the initial perturbation potential vector corresponding to each subproblem. Thus, the initial perturbation potential vector set is obtained. In other words, a variational autoencoder can be used to spatialize molecular sequences. Mapping to a low-dimensional continuous latent space That is, the encoder. molecular sequence Encode as a latent vector Initial latent vector .
[0060] Step S102: Based on the initial neighborhood corresponding to each sub-problem, perform iterative optimization for a predetermined number of rounds on the initial perturbation potential vector corresponding to the sub-problem to obtain the target optimization vector corresponding to each initial perturbation potential vector. In each round of iterative optimization, a zero-order local optimization strategy or an evolutionary search strategy is randomly adopted as the target optimization strategy to perform iterative optimization based on the target optimization strategy.
[0061] In the specific implementation of this step, for subproblem i, an initial neighborhood can be predefined. Before each iteration, a zero-order local optimization strategy or an evolutionary search strategy can be randomly determined as the target optimization strategy. Then, based on the initial neighborhood of subproblem i... The initial perturbation potential vector of subproblem i is obtained by employing an objective optimization strategy (zero-order local optimization strategy or evolutionary search strategy). Perform iterative optimization in the current round to obtain the current optimized vector, and update the initial neighborhood based on the current optimized vector for use in the next round of iterative optimization; until the number of iteration rounds reaches the predetermined number of rounds, the current optimized vector is determined as the target optimized vector.
[0062] Step S103: For each of the target optimization vectors, generate a target molecule sequence corresponding to each of the target optimization vectors to obtain the target optimization result.
[0063] In the specific implementation process, this step can decode each of the target optimization vectors to generate the target molecule sequence corresponding to each of the target optimization vectors.
[0064] Specifically, the optimization vectors for each objective can be decoded based on the decoder in the pre-trained encoder-decoder model. (Decoder) latent vectors Decoding back to molecular sequence .
[0065] In this embodiment, a pre-trained encoder-decoder data parsing method is used to map the discrete molecular representation to a continuous latent space for optimization. Within the MOEA / D framework, the subproblem updates its solution with a certain probability using zero-order optimization as a local search strategy (the loss function is constructed from a scalarization function). Otherwise, traditional genetic operations and updates are used, thereby balancing global exploration and local fine-grained search. This achieves a hybrid optimization search strategy that combines zero-order optimization local strategy or evolutionary search strategy. This ensures accurate multi-objective optimization of the molecule while improving the optimization speed, enabling the optimization results to converge quickly.
[0066] Based on the above embodiments, another embodiment of this application provides a multi-objective molecule optimization method based on data analysis, specifically including the following steps:
[0067] Step S201: Encode the lead molecule sequence to generate an initial potential vector;
[0068] Step S202: Based on each of the sub-problems, the initial potential vector is subjected to Gaussian perturbation to obtain the initial perturbation potential vector corresponding to each of the sub-problems;
[0069] In this step, each sub-problem is pre-determined based on multiple target attributes. The number of sub-problems (i.e., population size) can be set and adjusted according to actual needs.
[0070] Step S203: Determine the initial ideal vector of the corresponding subproblem based on each of the initial perturbation potential vectors, and determine the initial neighborhood of each subproblem;
[0071] In this step, a domain can be defined for each subproblem i. And based on the initial perturbation potential vector Determine the initial ideal vector / initial ideal point of subproblem i .
[0072] in, .in, Indicates to The molecular sequence obtained after decoding; This represents the attribute evaluation function for the j-th target attribute; express The attribute evaluation result of the molecular sequence obtained after decoding under the j-th target attribute.
[0073] In this embodiment, the multi-objective molecule optimization problem refers to optimizing a single lead molecule sequence. Generate a set of optimized molecular sequences. This makes multiple target attributes (e.g., QED class drug properties, logP, Tanimoto similarity, etc.) to obtain Pareto optimal balance (not generally, but transforming the problem into a multi-objective problem of minimizing each objective). Among these, the attribute evaluation function... It can be obtained through the RDKit chemical information processing open-source toolkit.
[0074] Step S204: For the target initial perturbation potential vector, randomly determine the zero-order local optimization strategy or evolutionary search strategy as the target optimization strategy for the current round of iteration optimization;
[0075] In the specific implementation process, probability parameters can be preset in this step. ,For example Then, for the i-th subproblem in the current round of optimization iteration, a random number r can be generated; if the random number... If the zero-order local optimization strategy is determined, then the target optimization strategy for the current round of optimization iteration is determined; otherwise, if If so, the evolutionary search strategy is determined as the target optimization strategy for the current round of optimization iteration.
[0076] Step S205: Based on the target initial perturbation potential vector and the initial neighborhood, the target optimization strategy is used to determine the optimized current optimization vector;
[0077] In the specific implementation of this step, since the target optimization strategy may be a zero-order local optimization strategy or an evolutionary search strategy, the specific iterative optimization process includes the following two cases:
[0078] Scenario 1: For zero-order optimization of local strategies, the specific iterative optimization process is as follows:
[0079] Step 1: Construct an achievement scalar loss function based on each target attribute;
[0080] The achievement scalar loss function in this step is as follows:
[0081]
[0082] in, This represents the weight vector corresponding to the i-th subproblem. Specifically, the RieszEnergy method from the pymoo library can be used to pre-generate the weight vectors corresponding to each subproblem, thereby obtaining the weight vector set. . It is an ideal vector.
[0083] In this step, the aforementioned achievement scalar loss function is weighted... Aggregating multiple objectives / objective attributes guides zero-order optimization towards the Pareto front direction favored by the subproblem.
[0084] Step 2: Perform uniform sampling on a unit spherical surface on the initial neighborhood to obtain a random sampling vector with a predetermined number of samples. Each random sampling vector is normalized to obtain the normalized target sampling vector;
[0085] Step 3: Based on the initial perturbation potential vector of the target and each of the target sampling vectors Using a predetermined achievement scalar loss function, the first loss value before sampling and the second loss value after sampling are calculated respectively.
[0086] In this step, it can be specifically based on the target's initial perturbation potential vector. Calculate the first loss value using the achievement scalar loss function described above. Based on the target's initial perturbation potential vector and each of the target sampling vectors Calculate the second loss value ;
[0087] Step 4: Determine the estimated gradient based on the first loss value and the second loss value;
[0088] In this step, the gradient estimation formula is as follows:
[0089]
[0090] in, , representing the dimension of the latent space; For smoothing parameters, they are preset and obtained, for example... ; The number of queries is preset, for example... .
[0091] Step 5: Optimize the target initial perturbation potential vector based on the estimated gradient to obtain the optimized current vector.
[0092] In this step, the hidden space vector can be updated using the following optimization formula to obtain the optimized current vector.
[0093]
[0094] in, The learning rate can be preset, for example... ; Operation representation will Cut off within -1 to 1.
[0095] In the specific implementation process of this step, after obtaining the current optimization vector, it is possible to further determine whether the molecular sequence corresponding to the current optimization vector is valid. That is, if the molecular sequence corresponding to the current optimization vector is valid... If invalid (i.e., the decoded SMILES have a syntax error or the molecules are unstable), then fall back to That is, repeat step two to resample the initial neighborhood using a unit spherical uniform sampling method until a valid molecular sequence is obtained. That is, to obtain the current optimization vector. .
[0096] Scenario 2: For the evolutionary search strategy, the specific iterative optimization process is as follows:
[0097] Step 1: Randomly determine a sampling vector from the initial neighborhood;
[0098] In this step, the initial perturbation potential vector corresponding to the i-th sub-problem is... It can be started from the initial neighborhood of the i-th subproblem. Randomly select a sampling vector / parent individual .
[0099] Step 2: Based on the target initial perturbation potential vector and the sampling vector The initial optimization vector is generated using simulated binary crossover (SBX);
[0100] In this step, a crossover operation can be performed, that is, based on the target's initial perturbation potential vector. and sampling vector Use simulated binary crossover (SBX) to generate offspring With a crossover probability of 0.9 and a distribution exponent of 20 (operating in the latent space), the initial optimization vector is obtained. .
[0101] Step 3: Perform a mutation operation on the initial optimized vector to obtain the current optimized vector.
[0102] In this step, the mutation operation can be performed using a polynomial mutation operator, i.e. Among them, the probability of mutation. Distribution index 20, of which This is the current optimized vector.
[0103] Step S206: Based on the current iteration optimization round number, determine whether the predetermined optimization stopping condition is met. If the predetermined optimization stopping condition is not met, update the initial ideal vector based on the current optimization vector to obtain the current ideal vector, and update the initial neighborhood based on the current ideal vector to obtain the current neighborhood. Randomly determine a zero-order local optimization strategy or an evolutionary search strategy as the target optimization strategy for the next iteration optimization. Based on the current neighborhood and the current optimization vector, perform the next iteration optimization using the target optimization strategy. Until the predetermined optimization stopping condition is met, use the current optimization vector as the target optimization vector of the target initial perturbation potential vector.
[0104] In the specific implementation process, the maximum number of iterations for optimization can be preset in this step. ,For example Therefore, the current iteration optimization round number can be compared with the maximum iteration optimization round number of 5000. If the current iteration optimization round number is less than 5000, it is determined that the predetermined optimization stopping condition has not been met. Then, the initial ideal vector can be updated based on the current optimization vector to obtain the current ideal vector, and the initial neighborhood can be updated based on the current ideal vector to obtain the current neighborhood. Then, the current neighborhood is used as the initial neighborhood, the current ideal vector is used as the initial ideal vector, and the current optimization vector is used as the initial potential perturbation vector. The above step S204 is repeated until the current iteration optimization round number reaches the maximum iteration optimization round number of 5000, and the current optimization vector is used as the target optimization vector.
[0105] In the specific implementation process of this step, updating the initial ideal vector / initial ideal point based on the current optimized vector, obtaining the current ideal vector / current ideal point, and updating the initial neighborhood based on the current ideal vector to obtain the current neighborhood specifically includes: for each target attribute Based on the current optimization vector Calculate the target vector Update the initial ideal vector based on the target vector to obtain the current ideal vector; update the initial neighborhood based on the current ideal vector, the current optimization vector, and the weight vector corresponding to the target sub-problem to obtain the current neighborhood.
[0106] The formula for calculating the target vector is as follows:
[0107]
[0108] That is, it can be based on the subvector corresponding to each target attribute j in the target vector. This is used to update the initial ideal vector / initial ideal point. That is, if... ,but .
[0109] When updating the neighborhood, for the initial neighborhood Each subproblem in ,if Then replace .
[0110] Step S207: Decode the target optimization vector corresponding to each of the initial perturbation potential vectors to generate the target molecule sequence corresponding to each of the target optimization vectors.
[0111] In the specific implementation of this step, for each initial perturbation potential vector corresponding to sub-problem i, steps S204-S206 are executed sequentially to obtain the target optimization vector for each initial perturbation potential vector. Finally, each target optimization vector is decoded to obtain the optimized target molecular sequences, that is, to generate a set of optimized molecular sequences. .
[0112] In this embodiment, a pre-trained encoder-decoder data parsing method is used to map the discrete molecular representation to a continuous latent space for optimization. Within the MOEA / D framework, the subproblem updates its solution with a certain probability using zero-order optimization as a local search strategy (the loss function is constructed from a scalarization function). Otherwise, traditional genetic operations and updates are used, thereby balancing global exploration and local fine-grained search. This achieves a hybrid optimization search strategy that combines zero-order optimization local strategy or evolutionary search strategy. This ensures accurate multi-objective optimization of the molecule while improving the optimization speed, enabling the optimization results to converge quickly.
[0113] Based on the above embodiments, the following describes the scheme of this application in conjunction with a typical multi-objective molecular optimization task based on data analysis. The specific optimization process is as follows:
[0114] Step 1: Initialize problem definition and model preparation.
[0115] Step 1.1: For a given lead molecule For example, given a SMILES string "CCN(C[C@@H]1CCOC1)C(=O)c1ccnc(Cl)c1", optimize its drug similarity (QED) and Tanimoto similarity to the lead molecule as two target attributes. To uniformly address the minimization problem, the target attribute is transformed into... , .
[0116] Step 1.2: Load the pre-trained encoder-decoder model, which will... Encode as initial latent vector This application employs a pre-trained encoder-decoder model, which is an existing model and whose pre-trained weights can be obtained from publicly available sources.
[0117] Step 2: Algorithm initialization.
[0118] Step 2.1: Set the termination criterion, and set the maximum number of objective function evaluations / maximum number of iterations. , Set population size (i.e., setting the number of subproblems N), neighborhood size The weight vector set is generated using the Riesz Energy method from the pymoo library. .
[0119] Step 2.2: Set probability parameters Additionally, the number of queries for the zero-order local optimization strategy is set. Smoothing parameters Learning rate Number of iterations (Only one gradient estimation and update is performed).
[0120] Step 2.3: Generate the initial population :from Starting from this point, 10 initial perturbation latent vectors are generated using Gaussian perturbations (mean 0, variance 0.5) (ensuring that each...). (For valid SMILES sequences).
[0121] Step 2.4: Calculate each Target vector .
[0122] Step 2.5: For each subproblem Define the initial neighborhood That is, based on the Euclidean distance of the weight vector, the closest Sub-problems to determine the field .
[0123] Step 2.6: Initialize ideal points / initial ideal vectors : .
[0124] Figure 2 The diagram illustrates the population initialization process, from the leader molecule to the potential spatial perturbation, and then to the calculation of the target vector.
[0125] Step 3: Iterative optimization process.
[0126] Step 3.1: In each generation of evolution, for each subproblem arrive According to probability Implement a hybrid optimization strategy. That is, generate random numbers. (Uniformly distributed in [0,1]). If If the condition is met, a zero-order optimization local strategy is adopted; otherwise, an evolutionary search strategy is executed.
[0127] Figure 3 The diagram illustrates the principle of the hybrid optimization search strategy proposed in this application: the upper path employs a zero-order local optimization strategy under the condition that the selection probability is 0.5, while the lower path uses an evolutionary search operation; the child solutions of both update the subproblem. neighborhood and ideal point .
[0128] Step 3.2: The specific process of zero-order optimization of local strategies is as follows:
[0129] Step 3.2.1: For the subproblem To optimize this, we construct a scalar loss function, defined as follows:
[0130]
[0131] The loss function is weighted. By aggregating two objectives to be optimized, the zero-order optimization is guided to search for the Pareto front, which is preferred by the subproblem.
[0132] Step 3.2.2: Initialize the current latent vector .
[0133] Step 3.2.3: For arrive (Only one iteration):
[0134] Step 3.2.3.1: In Neighborhood unit spherical uniform sampling Random directions Using zero-mean isotropic Gaussian vectors and normalization .
[0135] Step 3.2.3.2: Calculate the first loss value before sampling. and the second loss value after sampling Loss function evaluation The assessment needs to be decoded first. Then, the attribute values are calculated using RDKit.
[0136] Step 3.2.3.3: Calculate the estimated gradient.
[0137]
[0138] in, , , .
[0139] Step 3.2.3.4: Update the latent space vector.
[0140]
[0141] in, , Operation representation will Cut off within -1 to 1.
[0142] Step 3.2.3.5: If If invalid (decoded SMILES syntax error or unstable molecules), then fall back to That is, repeat step 3.2.3.1.
[0143] Step 3.2.4: Obtain the optimized candidate solution .
[0144] Step 3.2.5: Calculate the current optimization vector Target vector .
[0145] Step 3.2.6: Update the ideal point / ideal vector For each ,if ,but .
[0146] Step 3.2.7: Update the neighborhood For the neighborhood Each subproblem in , Then replace .
[0147] In another case, if ,but:
[0148] Step 3.3: Employ an evolutionary search strategy, which can be the traditional MOEA / D evolutionary search strategy. The specific process is as follows:
[0149] Step 3.3.1: Let the parent individual From sub-problems neighborhood Randomly select another parent individual / sampling vector .
[0150] Step 3.3.2: Perform crossover operation: based on the initial perturbation potential vector and sampling vector Use simulated binary crossover (SBX) to generate offspring / initial optimized vectors. Crossover probability 0.9, distribution exponent 20 (operation in latent space).
[0151] Step 3.3.3: Perform a mutation operation on the initial optimized vector to obtain the current optimized vector. , Using the polynomial mutation operator, the mutation probability Distribution index 20.
[0152] Step 3.3.4: Calculate the current optimization vector Target vector .
[0153] Step 3.3.5: Update the ideal point / ideal vector For each ,if ,but .
[0154] Step 3.3.6: Update the neighborhood For the neighborhood Each subproblem in ,if Then replace .
[0155] Repeat the above process until the current iteration round reaches the maximum number of iterations for optimization. .
[0156] Step 4: Output the results.
[0157] Step 4.1: From the final population Extract the non-dominated solutions / objective optimization vectors. Decode these non-dominated solutions / objective optimization vectors to obtain the optimized target molecule sequences, thus obtaining the target molecule sequence set.
[0158] Step 4.2: Users can weigh and select the final candidate molecules for downstream wet laboratory validation based on this information.
[0159] In this embodiment, a pre-trained encoder-decoder data parsing method is used to map discrete molecular representations to a continuous latent space for optimization. Within the framework of the decomposition-based multi-objective evolutionary algorithm MOEA / D, sub-problems use zero-order optimization as a local search strategy to update their solutions with a certain probability (the loss function is constructed from a scalarization function). Otherwise, traditional genetic operations and updates are employed, thus balancing global exploration and local fine-grained search. Specifically, this application combines the efficient local search capability of zero-order optimization ZOO with the global exploration and Pareto front construction capabilities of the multi-objective evolutionary algorithm MOEA / D, achieving rapid optimization while ensuring the accuracy of the optimization results. This application implements a hybrid optimization strategy, that is, within the MOEA / D framework, local search based on zero-order optimization ZOO replaces traditional evolutionary operators, thereby providing a multi-objective molecular optimization algorithm framework capable of simultaneously optimizing multiple molecular properties. It can provide users with a diverse and rapidly converging Pareto solution set, solving the problem in existing technologies that cannot perform fast and accurate multi-objective optimization of molecules.
[0160] Ten randomly selected leader molecules from the ZINC dataset are as follows:
[0161] C[C@@H](C(=O)C1=c2ccccc2=[NH+]C1)[NH+]1CCC[C@@H]1[C@@H]1CC=CS1;
[0162] CC(=O)NCCNC(=O)c1cnn(-c2ccc(C)c(Cl)c2)c1C1CC1;
[0163] CCN(C[C@@H]1CCOC1)C(=O)c1ccnc(Cl)c1;
[0164] Cc1ccccc1C[S@](=O)CCCc1ccccc1;
[0165] CSCC(=O)NNC(=O)c1c(O)cc(Cl)cc1Cl;
[0166] c1ccc(-c2cc(N3C[C@H]4[C@@H]5CC[C@@H](O5)[C@H]4C3)c3ccccc3[nH+]2)cc1;
[0167] Cc1cc(CNC(=O)Nc2cc(-c3ccccc3)on2)no1;
[0168] Cc1ccn2c(=O)c(C(=O)Nc3n[n-]c(C(F)(F)F)n3)cnc2c1;
[0169] CN(Cc1ccncc1)C(=O)c1ccc(I)cc1;
[0170] COc1ccccc1N1CCN(c2ccc(=O)n(CC(=O)NC3CC3)n2)CC1;
[0171] The aforementioned 10 lead molecules are used to evaluate the performance of this application. The method of this application is denoted as MOEA / D-ZOO, and the baseline method is the zero-order optimization algorithm (denoted as ZOO-WS) built on the original QMO based on weighted summation loss, using the same objective function evaluation count as the termination condition.
[0172] For the same leader molecule (C[C@@H](C(=O)C1=c2ccccc2=[NH+]C1)[NH+]1CCC[C@@H]1[C@@H]1CC=CS1), this application compares the Pareto front with that of a zero-order optimization algorithm based on weighted summation loss, and compares the objective function values of the solutions on each front. The solution set generated by the method proposed in this application is superior to the baseline algorithm in both convergence and diversity. The majority of the solution set of the baseline algorithm is dominated by the solution obtained in this application, indicating that this application can explore the Pareto front more effectively and generate a better trade-off solution.
[0173] Figure 4 The following is a comparison chart of Pareto front hypervolume indices for the following nine lead molecules.
[0174] CC(=O)NCCNC(=O)c1cnn(-c2ccc(C)c(Cl)c2)c1C1CC1;
[0175] CCN(C[C@@H]1CCOC1)C(=O)c1ccnc(Cl)c1;
[0176] Cc1ccccc1C[S@](=O)CCCc1ccccc1;
[0177] CSCC(=O)NNC(=O)c1c(O)cc(Cl)cc1Cl;
[0178] c1ccc(-c2cc(N3C[C@H]4[C@@H]5CC[C@@H](O5)[C@H]4C3)c3ccccc3[nH+]2)cc1;
[0179] Cc1cc(CNC(=O)Nc2cc(-c3ccccc3)on2)no1;
[0180] Cc1ccn2c(=O)c(C(=O)Nc3n[n-]c(C(F)(F)F)n3)cnc2c1;
[0181] CN(Cc1ccncc1)C(=O)c1ccc(I)cc1;
[0182] COc1ccccc1N1CCN(c2ccc(=O)n(CC(=O)NC3CC3)n2)CC1;
[0183] The solution set distribution for each leader molecule in this application is more advanced than the results of the baseline algorithm. Figure 4 Furthermore, a quantitative evaluation was conducted using the hypervolume index (higher is better, with the ideal point as a reference). The results show that, among the nine lead molecules, the hypervolume values of this application are higher than those of the baseline algorithm for eight, and close to the hypervolume index of the baseline method for one. This fully verifies the competitiveness of the hybrid strategy in this application in terms of convergence and diversity.
[0184] Another embodiment of this application provides a multi-target molecular optimization device based on data analysis, such as... Figure 5 As shown, it includes:
[0185] The first generation module 11 is used to generate initial perturbation potential vectors corresponding to each sub-problem based on the lead molecule sequence.
[0186] Optimization module 12 is used to perform iterative optimization of the initial perturbation potential vector corresponding to each sub-problem for a predetermined number of rounds based on the initial neighborhood corresponding to each sub-problem, so as to obtain the target optimization vector corresponding to each initial perturbation potential vector. In each round of iterative optimization, a zero-order local optimization strategy or an evolutionary search strategy is randomly adopted as the target optimization strategy to perform iterative optimization based on the target optimization strategy.
[0187] The second generation module 13 is used to generate target molecule sequences corresponding to each of the target optimization vectors, so as to obtain target optimization results.
[0188] In this embodiment, the first generation module is specifically used to: encode the lead molecule sequence to generate an initial potential vector; and perform Gaussian perturbation processing on the initial potential vector based on each of the sub-problems to obtain an initial perturbation potential vector corresponding to each of the sub-problems.
[0189] In this embodiment, the optimization module is specifically used for: determining the initial ideal vector of each subproblem based on the initial perturbation potential vectors, and determining the initial neighborhood of each subproblem; randomly determining a zero-order local optimization strategy or an evolutionary search strategy as the target optimization strategy for the current iteration optimization for the target initial perturbation potential vector; determining the optimized current optimization vector based on the target initial perturbation potential vector and the initial neighborhood using the target optimization strategy; determining whether a predetermined optimization stopping condition is met based on the current iteration optimization round number; if the predetermined optimization stopping condition is not met, updating the initial ideal vector based on the current optimization vector to obtain the current ideal vector, updating the initial neighborhood based on the current ideal vector to obtain the current neighborhood, randomly determining a zero-order local optimization strategy or an evolutionary search strategy as the target optimization strategy for the next iteration optimization, and performing the next iteration optimization based on the current neighborhood and the current optimization vector using the target optimization strategy; until the predetermined optimization stopping condition is met, using the current optimization vector as the target optimization vector of the target initial perturbation potential vector.
[0190] In this embodiment, when the target optimization strategy is a zero-order local optimization strategy, the optimization module is specifically used to: construct an achievement scalar loss function based on each target attribute; perform uniform sampling on the initial neighborhood to obtain a predetermined number of random sampling vectors; normalize each random sampling vector to obtain a normalized target sampling vector; calculate a first loss value before sampling and a second loss value after sampling based on the target initial perturbation potential vector and each target sampling vector using the predetermined achievement scalar loss function; determine the estimated gradient based on the first loss value and the second loss value; and optimize the target initial perturbation potential vector based on the estimated gradient to obtain the optimized current optimization vector.
[0191] In this embodiment, when the target optimization strategy is an evolutionary search strategy, the optimization module is specifically used to: randomly determine a sampling vector from the initial neighborhood; generate an initial optimization vector using simulated binary crossover based on the target initial perturbation potential vector and the sampling vector; and perform a mutation operation on the initial optimization vector to obtain the optimized current optimization vector.
[0192] In this embodiment, the optimization module is specifically used for: calculating the target vector based on the current optimization vector for each target attribute; updating the initial ideal vector based on the target vector to obtain the current ideal vector; and updating the initial neighborhood based on the current ideal vector, the current optimization vector, and the weight vector corresponding to the target sub-problem to obtain the current neighborhood.
[0193] In this embodiment, the second generation module is specifically used to: decode each of the target optimization vectors respectively, and generate target molecule sequences corresponding to each of the target optimization vectors.
[0194] This application presents a multi-objective molecular optimization device based on data parsing. It maps discrete molecular representations to a continuous latent space for optimization using a pre-trained encoder-decoder data parsing method. Within the MOEA / D framework, subproblems update their solutions using zero-order optimization as a local search strategy with a certain probability (the loss function is constructed from a scalarization function). Otherwise, traditional genetic operations and updates are employed, thereby balancing global exploration and local fine-grained search. This achieves a hybrid optimization search strategy that combines zero-order optimization local strategies with evolutionary search strategies. As a result, it can ensure accurate multi-objective optimization of molecules while improving optimization speed, enabling rapid convergence of optimization results.
[0195] Another embodiment of this application provides a storage medium storing a computer program, which, when executed by a processor, implements the following method steps:
[0196] Step 1: Based on the lead molecule sequence, generate the initial perturbation potential vector corresponding to each sub-problem. Each sub-problem is determined in advance based on multiple target attributes.
[0197] Step 2: Based on the initial neighborhood corresponding to each sub-problem, perform iterative optimization for a predetermined number of rounds on the initial perturbation potential vector corresponding to the sub-problem to obtain the target optimization vector corresponding to each initial perturbation potential vector. In each round of iterative optimization, a zero-order local optimization strategy or an evolutionary search strategy is randomly adopted as the target optimization strategy to perform iterative optimization based on the target optimization strategy.
[0198] Step 3: For each of the target optimization vectors, generate the target molecule sequence corresponding to each target optimization vector to obtain the target optimization result.
[0199] The specific implementation process of the above method steps can be found in any of the above embodiments of the multi-objective molecular optimization method based on data analysis, and will not be repeated here.
[0200] The storage medium in this application optimizes discrete molecular representations by mapping them to a continuous latent space using a pre-trained encoder-decoder data parsing method. Within the MOEA / D framework, subproblems update their solutions using zero-order optimization as a local search strategy with a certain probability (the loss function is constructed from a scalarization function). Otherwise, traditional genetic operations and updates are employed, thus balancing global exploration and local fine-grained search. This achieves a hybrid optimization search strategy that combines zero-order optimization local strategies with evolutionary search strategies. Consequently, it ensures accurate multi-objective optimization of molecules while improving optimization speed, enabling rapid convergence of optimization results.
[0201] Another embodiment of this application provides an electronic device, such as... Figure 6 As shown, it includes at least a memory 1 and a processor 2. The memory 1 stores a computer program, and the processor 2 performs the following method steps when executing the computer program in the memory 1:
[0202] Step 1: Based on the lead molecule sequence, generate the initial perturbation potential vector corresponding to each sub-problem. Each sub-problem is determined in advance based on multiple target attributes.
[0203] Step 2: Based on the initial neighborhood corresponding to each sub-problem, perform iterative optimization for a predetermined number of rounds on the initial perturbation potential vector corresponding to the sub-problem to obtain the target optimization vector corresponding to each initial perturbation potential vector. In each round of iterative optimization, a zero-order local optimization strategy or an evolutionary search strategy is randomly adopted as the target optimization strategy to perform iterative optimization based on the target optimization strategy.
[0204] Step 3: For each of the target optimization vectors, generate the target molecule sequence corresponding to each target optimization vector to obtain the target optimization result.
[0205] The specific implementation process of the above method steps can be found in any of the above embodiments of the multi-objective molecular optimization method based on data analysis, and will not be repeated here.
[0206] The electronic device in this application optimizes discrete molecular representations by mapping them to a continuous latent space using a pre-trained encoder-decoder data parsing method. Within the MOEA / D framework, subproblems are updated with zero-order optimization as a local search strategy with a certain probability (the loss function is constructed from a scalarization function). Otherwise, traditional genetic operations and updates are used, thus balancing global exploration and local fine-grained search. This achieves a hybrid optimization search strategy that combines zero-order optimization local strategy with evolutionary search strategy. This ensures accurate multi-objective optimization of molecules while improving optimization speed, enabling the optimization results to converge quickly.
[0207] The above embodiments are merely exemplary embodiments of this application and are not intended to limit this application. The scope of protection of this application is defined by the claims. Those skilled in the art can make various modifications or equivalent substitutions to this application within its substance and scope of protection, and such modifications or equivalent substitutions should also be considered to fall within the scope of protection of this application.
Claims
1. A multi-objective molecular optimization method based on data analysis, characterized in that, include: Based on the lead molecule sequence, initial perturbation potential vectors corresponding to each sub-problem are generated respectively, and each sub-problem is determined in advance based on multiple target attributes; Based on the initial perturbation potential vectors, determine the initial ideal vectors for the corresponding subproblems, and determine the initial neighborhood of each subproblem; For the initial perturbation potential vector of the target, a zero-order local optimization strategy or an evolutionary search strategy is randomly determined as the target optimization strategy for the current iteration. Based on the target initial perturbation potential vector and the initial neighborhood, the target optimization strategy is used to determine the optimized current optimization vector; Based on the current iteration round number, determine whether the predetermined optimization stopping condition is met. If the predetermined optimization stopping condition is not met, update the initial ideal vector based on the current optimization vector to obtain the current ideal vector, and update the initial neighborhood based on the current ideal vector to obtain the current neighborhood. Randomly determine a zero-order local optimization strategy or an evolutionary search strategy as the target optimization strategy for the next iteration. Based on the current neighborhood and the current optimization vector, perform the next iteration optimization using the target optimization strategy. Until the predetermined optimization stopping condition is met, use the current optimization vector as the target optimization vector of the target initial perturbation potential vector. For each of the aforementioned target optimization vectors, a target molecule sequence corresponding to each target optimization vector is generated to obtain the target optimization result.
2. The method as described in claim 1, characterized in that, The process of generating initial perturbation potential vectors corresponding to each sub-problem based on the leader molecule sequence specifically includes: The lead molecule sequence is encoded to generate an initial potential vector; Based on each of the sub-problems, the initial potential vector is subjected to Gaussian perturbation to obtain the initial perturbation potential vector corresponding to each of the sub-problems.
3. The method as described in claim 1, characterized in that, When the target optimization strategy is a zero-order local optimization strategy, the step of determining the optimized current optimization vector based on the target initial perturbation potential vector and the initial neighborhood using the target optimization strategy specifically includes: Construct an achievement scalar loss function based on each target attribute; The initial neighborhood is uniformly sampled on a unit sphere to obtain a predetermined number of random sampling vectors. Each random sampling vector is then normalized to obtain a normalized target sampling vector. Based on the target initial perturbation potential vector and each target sampling vector, the first loss value before sampling and the second loss value after sampling are calculated using a predetermined achievement scalar loss function. The estimated gradient is determined based on the first loss value and the second loss value; The initial perturbation potential vector of the target is optimized based on the estimated gradient to obtain the current optimized vector.
4. The method as described in claim 1, characterized in that, When the target optimization strategy is an evolutionary search strategy, the step of determining the optimized current optimization vector based on the target initial perturbation potential vector and the initial neighborhood using the target optimization strategy specifically includes: A sampling vector is randomly determined from the initial neighborhood; Based on the target initial perturbation potential vector and the sampling vector, an initial optimization vector is generated using simulated binary crossover; The initial optimized vector is mutated to obtain the current optimized vector.
5. The method as described in claim 1, characterized in that, The process of updating the initial ideal vector based on the current optimized vector to obtain the current ideal vector, and updating the initial neighborhood based on the current ideal vector to obtain the current neighborhood, specifically includes: For each target attribute, calculate the target vector based on the current optimization vector; The initial ideal vector is updated based on the target vector to obtain the current ideal vector; Based on the current ideal vector, the current optimization vector, and the weight vector corresponding to the target sub-problem, the initial neighborhood is updated to obtain the current neighborhood.
6. The method as described in claim 1, characterized in that, The step of generating target molecule sequences corresponding to each of the target optimization vectors specifically includes: Each of the target optimization vectors is decoded to generate a target molecule sequence corresponding to each target optimization vector.
7. A multi-objective molecular optimization device based on data analysis, characterized in that, include: The first generation module is used to generate initial perturbation potential vectors corresponding to each subproblem based on the lead molecule sequence. An optimization module is used to determine the initial ideal vector of the corresponding subproblem based on each of the initial perturbation potential vectors, and to determine the initial neighborhood of each subproblem; For the initial perturbation potential vector of the target, a zero-order local optimization strategy or an evolutionary search strategy is randomly determined as the target optimization strategy for the current iteration. Based on the target initial perturbation potential vector and the initial neighborhood, the target optimization strategy is used to determine the optimized current optimization vector; Based on the current iteration round number, determine whether the predetermined optimization stopping condition is met. If the predetermined optimization stopping condition is not met, update the initial ideal vector based on the current optimization vector to obtain the current ideal vector, and update the initial neighborhood based on the current ideal vector to obtain the current neighborhood. Randomly determine a zero-order local optimization strategy or an evolutionary search strategy as the target optimization strategy for the next iteration. Based on the current neighborhood and the current optimization vector, perform the next iteration optimization using the target optimization strategy. Until the predetermined optimization stopping condition is met, use the current optimization vector as the target optimization vector of the target initial perturbation potential vector. The second generation module is used to generate target molecule sequences corresponding to each of the target optimization vectors, so as to obtain target optimization results.
8. A storage medium, characterized in that, The storage medium stores a computer program, which, when executed by a processor, implements the steps of the multi-objective molecular optimization method based on data analysis as described in any one of claims 1-6.
9. An electronic device, characterized in that, It includes at least a memory and a processor, wherein the memory stores a computer program, and the processor, when executing the computer program in the memory, implements the steps of the multi-objective molecular optimization method based on data analysis as described in any one of claims 1-6.
Citation Information
Patent Citations
A method for solving low-carbon workshop scheduling based on an improved whale optimization algorithm
CN109886589A
Synthesis gas production optimization method based on multi-objective particle swarm optimization algorithm
CN115374697A