WO2021033695A1 - 化学構造発生装置、化学構造発生プログラム、及び化学構造発生方法 - Google Patents

化学構造発生装置、化学構造発生プログラム、及び化学構造発生方法 Download PDF

Info

Publication number
WO2021033695A1
WO2021033695A1 PCT/JP2020/031178 JP2020031178W WO2021033695A1 WO 2021033695 A1 WO2021033695 A1 WO 2021033695A1 JP 2020031178 W JP2020031178 W JP 2020031178W WO 2021033695 A1 WO2021033695 A1 WO 2021033695A1
Authority
WO
WIPO (PCT)
Prior art keywords
list
product
reactant
compound
chemical reaction
Prior art date
Application number
PCT/JP2020/031178
Other languages
English (en)
French (fr)
Inventor
純太 渕脇
嘉夫 滝本
Original Assignee
Jsr株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jsr株式会社 filed Critical Jsr株式会社
Priority to JP2021540953A priority Critical patent/JPWO2021033695A1/ja
Priority to CN202080058612.XA priority patent/CN114258573A/zh
Publication of WO2021033695A1 publication Critical patent/WO2021033695A1/ja
Priority to US17/671,745 priority patent/US20220172803A1/en

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C20/00Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
    • G16C20/10Analysis or design of chemical reactions, syntheses or processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0206Price or cost determination based on market factors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/04Manufacturing
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C10/00Computational theoretical chemistry, i.e. ICT specially adapted for theoretical aspects of quantum chemistry, molecular mechanics, molecular dynamics or the like
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C20/00Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
    • G16C20/70Machine learning, data mining or chemometrics

Definitions

  • the present invention relates to a chemical structure generator, a chemical structure generation program, and a chemical structure generation method.
  • a trained model is generated by machine learning such as deep learning using a data set for learning, and then in the execution phase, a trained model generated in the learning phase is used, for example. Predict physical property values and search for molecules with desired physical properties.
  • the number of possible molecular structures relative to the number of atoms increases exponentially as the number of atoms increases, and a combinatorial explosion occurs. Therefore, it is not possible to comprehensively generate the structures of candidate molecules. It is impossible in reality.
  • the ratio of the number of available molecules, that is, the number of molecules that are actually stable and commercially available, to the number of possible molecular structures decreases sharply as the number of atoms increases. It is extremely inefficient in terms of time and economy to use learning data containing a large number of molecular structures that are not commercially available for machine learning. Therefore, a chemical structure generator capable of efficiently generating only commercially available and high-value molecules is desired.
  • An object of the present invention is to efficiently generate a molecular structure suitable for use as learning data for machine learning.
  • the chemical structure generator includes a generator and a control unit in order to solve the above-mentioned problems and achieve the object.
  • the generator generates a product list consisting of one or more compounds based on a reactant list consisting of one or more compounds and a chemical reaction list.
  • the control unit gives the product list to the generator as a new reactant list, updates the database having at least one of the reactant list and the product list, and updates the new reactant list and the chemical reaction. Have the generator generate a new product list based on the list.
  • the chemical structure generation program comprises a process of generating a product list consisting of one or more compounds based on a reactant list composed of one or more compounds and a chemical reaction list, and a product list.
  • the chemical structure generation method according to the present invention is a chemical structure generation method executed by a chemical structure generator, and is one or more based on a list of reactants composed of one or more compounds and a list of chemical reactions.
  • a product list consisting of compounds is generated, a product list is given as a new reactant list, a database having at least one of the reactant list and the product list is updated, and the new reactant list and the new reactant list and the product list are updated.
  • This is a method of generating a new product list based on a chemical reaction list.
  • FIG. 1 is a diagram showing an outline of a chemical structure generator according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing an example of a chemical reaction list in the chemical structure generator according to the first embodiment.
  • FIG. 3 is a diagram showing an example of a prohibited reaction list in the chemical structure generator according to the first embodiment.
  • FIG. 4 is a flowchart showing the flow of processing performed by the chemical structure generator according to the first embodiment.
  • FIG. 5 is a diagram illustrating a process performed by the chemical structure generator according to the first embodiment.
  • FIG. 6 is a flowchart illustrating the flow of processing in step S200 in FIG. 4 in more detail.
  • FIG. 7 is a diagram illustrating a process performed by the chemical structure generator according to the first embodiment.
  • FIG. 8 is a flowchart showing a flow of processing performed by the chemical structure generator according to the second embodiment.
  • FIG. 9 is a flowchart illustrating the flow of processing in step S200A in FIG. 8 in more detail.
  • FIG. 1 is a diagram showing an outline of a chemical structure generator 1 according to an embodiment of the present invention.
  • the chemical structure generator 1 includes a processing circuit 100, a storage unit 120, a database 110, an input device 130, and a display 140.
  • the processing circuit 100 includes a generation function 100a and a control function 100b.
  • the database 110 includes a reactant list 110a, which is a list of reactants of a chemical reaction, a product list 110b, which is a list of products of a chemical reaction, a chemical reaction list 110c, and prohibited.
  • the reaction list 110d and the numerical information list 110e are provided.
  • the chemical structure generator 1 is an apparatus for generating a chemical structure which is a basis of learning data used for machine learning as a reactant list 110a or a product list 110b.
  • the processing circuit 100 reads a program from the storage unit 120 and executes it to realize functions such as a generation function 100a and a control function 100b (for example, a CPU (Central Processing Unit), a GPU (Graphical Processing Unit), and an ASIC. (Application Special Integrated Circuit), PLD (Programmable Logical Device), etc.). That is, the processing functions by the generation function 100a, the control function 100b, and the like are stored in the storage unit 120 in the form of a program that can be executed by the processor. As a result, the processing circuit 100 in the state where the program is read has functions such as a generation function 100a and a control function 100b. That is, the generation function 100a and the control function 100b are examples of the generation unit and the control unit, respectively. The details of the processing of each function of the processing circuit 100 will be described later.
  • a generation function 100a and a control function 100b for example, a CPU (Central Processing Unit), a GPU (Graphical Processing Unit), and an ASIC. (Application Special
  • the database 110 is various databases referred to by the processing circuit 100 in the process in which the chemical structure generator 1 generates a new compound.
  • a reactant list 110a a product list 110b, a chemical reaction list 110c, and a prohibited reaction. It is composed of a list 110d, a numerical information list 110e, and the like. These databases are stored in the storage unit 120 as needed.
  • the chemical reaction list 110c, the prohibited reaction list 110d, and the numerical information list 110e are data used when the processing circuit 100 performs a process of generating a chemical structure.
  • the reactant list 110a or the product list 110b is the data that is the basis of the learning data used for the machine learning in the subsequent stage, and the chemical structure generator 1 performs the generation of these lists. It is one of the purposes of processing.
  • the reactant list 110a is a list of reactants and the like which are the basis of a chemical reaction, and is composed of compounds and the like representing the reactants. More precisely, the reactant list 110a comprises one or more elements, which are elements representing simple substances, compounds, operations that do not select reactants, or elements representing intramolecular reactions.
  • the k + 1 generation reactant list X k + 1 is the reaction product list X k of the k-generation may also completely comprise the reaction product list X k + 1 of the (k + 1) th generation, the reaction product of the k generation list X It does not have to contain k completely.
  • the reactant list X k of each generation may include, as an optional constituent requirement, the compounds x k1 ... X kn representing the reactants, as well as the special compounds x null , x intra, etc. representing the special operation. These special compounds will be described later.
  • the elements of the k-generation reactant list X k are the compounds x k1, x k2 ..., X kn representing the k-generation reactants.
  • the elements of the reaction list X k of the kth generation are, for example, x k1, x k2 ..., X kn , x null , x intra .
  • the product list 110b is a list of products of a chemical reaction, and is composed of a compound or the like representing the product. More precisely, the product list 110b consists of one or more elements, which are elements representing operations that do not select simple substances, compounds, reactants or elements representing intramolecular reactions.
  • the elements of the k + 1th generation reactant list X k + 1 are equal to the elements of the kth generation product list Y k.
  • the chemical reaction list 110c is a possible chemical reaction list, and the list of the partial structures of the reactants is associated with the list of the partial structures of the products produced by the chemical reaction performed using the reactants. List.
  • the chemical reaction list 110c contains information on the cost of the chemical reaction, if necessary.
  • FIG. 2 shows an example of a chemical reaction list 110c when there are two or one reactants and one corresponding product.
  • the first line of FIG. 2 describes a case where the structure "X 1 -CO-X 2 " is generated from the partial structure "X 1 -COOH” and the partial structure "X 2 -H".
  • the list ⁇ "X 1 -CO-X 2 " ⁇ , ⁇ "X 1 -COOH", "X 2 -H” ⁇ associated with is an example of the chemical reaction list 110c.
  • the second line of FIG. 2 describes the case where the structure "X 1 -CHOH-X 2 " is generated from the partial structure "X 1 -CO-X 2".
  • the partial structure list of the reactant ⁇ "X 1 -CO-X 2 " ⁇ is associated with the partial structure list of the product produced by the chemical reaction ("X 1 -CHOH-X 2 ").
  • the resulting list ⁇ "X 1 -CHOH-X 2 " ⁇ , ⁇ "X 1 -CO-X 2 " ⁇ is an example of the chemical reaction list 110c.
  • H 2 is also considered to be a partial structure, and can be expressed as ⁇ "X 1 -CHOH-X 2 " ⁇ , ⁇ "X 1 -CO-X 2 ", "H 2 " ⁇ . Good.
  • the structure "X 1 -CHX 3 -X 2 " is generated from the partial structure "X 1 -CHOH-X 2 " and the partial structure "X 3 -H". It is described when you do.
  • a partial structure list of the reactants ⁇ "X 1 -CHOH-X 2 ", "X 3 -H” ⁇ and a partial structure list of the product produced by the chemical reaction (“X 1 -CHX 3-" X 2 ") and is associated with the list ⁇ " X 1 -CHX 3 -X 2 " ⁇ , ⁇ " X 1 -CHOH-X 2 "," X 3 -H " ⁇ , chemical reaction list 110c This is an example.
  • the embodiment is not limited to this, and there are three or more reactants. May be good.
  • the partial structure list ⁇ A, B, C ⁇ of the reactant and the product produced by the chemical reaction are generated.
  • the list ⁇ D ⁇ , ⁇ A, B, C ⁇ associated with the partial structure list ⁇ D ⁇ is an example of the chemical reaction list 110c.
  • the list ⁇ "X 1 -COOH", “X 2 -H” ⁇ , ⁇ "X 1 -CO-X 2 " ⁇ associated with is an example of the chemical reaction list 110c.
  • the chemical reaction list 110c is different from the reactant list 110a and the product list 110b in that the elements are not updated for each generation, and the elements are fixed throughout the generations.
  • the forbidden reaction list 110d is a prohibited chemical reaction list, and the partial structure list of the reactant and the partial structure list of the product produced by the chemical reaction performed using the reactant are prohibited. It is an associated list with information that it is a chemical reaction.
  • the list ⁇ y q1 q2 ... qn; 1 , y q1 q2 ... qn; 2, ..., y q1 q2 ... qn; m ⁇ , ⁇ y q1, y q2 ... y qn ⁇ is the prohibited reaction list 110d.
  • the presence or absence of commercial value is determined for each field based on, for example, cost, stability, toxicity, and the like.
  • FIG. 3 shows an example of the prohibited reaction list 110d.
  • FIG. 3 is a diagram illustrating the processing related to the prohibited reaction list 110d.
  • FIG. 3 describes a case where the structure "X 1 -CO-X 2 " is generated from the partial structure "X 1 -COOH” and the partial structure "X 2 -H". Since there is no particular reason to limit the occurrence of such a structure, the occurrence of this structure is an allow.
  • the numerical information list 110e is a numerical information list showing the cost and the like of each compound in the reactant list 110a.
  • the numerical information list 110e will be described in detail in the second embodiment.
  • the storage unit 120 is a storage area for RAM (Random Access Memory), ROM (Read Only Memory), flash memory, hard disk, etc., and stores various programs executed by the processing circuit 100, execution results of the various programs, database 110, and the like.
  • RAM Random Access Memory
  • ROM Read Only Memory
  • flash memory hard disk, etc.
  • the input device 130 is a device for a user who uses the chemical structure generator 1 to perform various operations.
  • the input device 130 is composed of, for example, a mouse, a keyboard, a touch panel, or hardware keys.
  • the display 140 displays various information.
  • the display 140 displays a processing result of the CPU, a GUI (Graphical User Interface) for receiving various operations from the user, and the like.
  • the display 140 is composed of, for example, a liquid crystal display, an organic EL (Electro Luminescence) display, or a cathode ray tube display.
  • the input device 130 and the display 140 may be integrally configured, for example, in the form of a touch panel.
  • the embodiment is not limited to the above example.
  • the storage unit 120, the input device 130, the display 140, etc. are not essential components of the chemical structure generator 1, that is, the compound generator 1 includes the storage unit 120, the input device 130, the display 140, and the like. It does not have to be.
  • the storage unit 120, the input device 130, the display 140, and the like may be arranged outside the compound generator 1 via a network, and data may be exchanged with the processing circuit 100.
  • a trained model is generated by machine learning such as deep learning using a data set for learning, and then in the execution phase, a trained model generated in the learning phase is used, for example. Predict physical property values and search for molecules with desired physical properties.
  • the number of possible molecular structures relative to the number of atoms increases exponentially as the number of atoms increases, and a combinatorial explosion occurs. Therefore, it is not possible to comprehensively generate the structures of candidate molecules. It is practically impossible.
  • the ratio of the number of available molecules, that is, the number of molecules that are actually stable and commercially available, to the number of possible molecular structures decreases sharply as the number of atoms increases. It is extremely inefficient in terms of time and economy to use learning data containing a large number of molecular structures that are not commercially available for machine learning. Therefore, a chemical structure generator capable of efficiently generating only commercially available and high-value molecules is desired.
  • the processing circuit 100 included in the chemical structure generator 1 includes a generation function 100a and a control function 110b.
  • the processing circuit 100 is generated by the generation function 100a based on the reactant list 110a which is a list of reactants composed of one or more compounds and the chemical reaction list 110c which is a list of chemical reactions.
  • Generate a product list 110b which is a list of things.
  • the processing circuit 100 provides the product list 110b as a new reactant list to the program related to the generation function 100a by the control function 100b, and has a database having at least one of the reactant list 110a and the product list 110b. 110 is updated, and a new product list is generated by the program related to the generation function 100a based on the new reactant list and the chemical reaction list 110c.
  • the chemical structure generator 1 can efficiently generate high-quality learning data suitable as learning data for machine learning, and is generated using these learning data.
  • the efficiency of molecular design can be improved.
  • FIG. 4 is a flowchart showing the flow of processing performed by the chemical structure generator according to the first embodiment.
  • the processing circuit 100 starts the generation of the compound list by the generation function 100a (step S100).
  • the processing circuit 100 uses the generation function 100a to generate the p-generation product list Y p based on the p-generation reaction list X p , which is the reactant list 110a, and the chemical reaction list 110c. It is generated as a product list 110b. (Step S200). That is, the processing circuit 100 generates a product list 110b composed of one or more compounds based on the reactant list composed of one or more compounds in the reactant list 110a and the chemical reaction list 110c by the generation function 100a. .. The detailed processing of step S200 will be described again with reference to FIG.
  • the processing circuit 100, the control function 100b, a product list Y p of the p-generation, as a new reactant list (reactant of the p + 1 generation list X p + 1) gives the program according to the generating function 100a (Step S300). That is, the processing circuit 100 gives the product list Y p generated in step S200 to the program related to the generation function 100a as a new reactant list X p + 1 by the control function 100b.
  • the processing circuit 100 updates the database 110 having at least one list of the reactant list 110a and the product list 110b by the control function 100b.
  • updating the database 110 means an operation of changing the elements of the database 110 by adding a new element to the database 110, for example, a new reaction of some elements in the product list 110b. It means an operation or the like to be input to the database 110 as a new element of the object list 110a.
  • the processing circuit 100 updates the reactant list 110a in step S300 by the control function 100b.
  • the processing circuit 100 generates learning data in machine learning based on the updated reactant list 110a by a learning data generation function (not shown).
  • the processing circuit 100 associates the physical properties of the elements with each of the elements of the updated reactant list 110a by a learning data generation function (not shown), whereby the chemical structure and the physical properties of the chemical structure are associated with each other.
  • Supervised data in which values are associated with each other may be created, and the supervised data may be used as learning data in machine learning.
  • the processing circuit 100 By performing machine learning using such learning data to generate a trained model, it is possible to predict the physical property values of an unknown chemical structure, for example, a chemical structure having a desirable physical property value. Can be searched for.
  • the processing circuit 100 creates unsupervised data based on the updated reaction product list 110a by a learning data generation function (not shown), and the unsupervised data is used for learning in machine learning. It may be used as data.
  • the processing circuit 100 increments the value of p by 1 by the control function 100b (step S400).
  • step S500 Yes when the value of p is larger than the preset threshold value p max (step S500 Yes), the process is completed. That is, when the number of repeated generations p exceeds the preset threshold value p max , the processing circuit 100 having the control function 100b determines that the end condition of the product list creation process is satisfied, and ends the process. ..
  • the processing circuit 150 repeats the processing of steps S200 to S400.
  • the processing circuit 100 causes the program related to the generation function 100a to generate a new product list based on the new reactant list in step S300 and the chemical reaction list in the chemical reaction list 110c by the control function 100b.
  • the embodiment is not limited to the one that ends when the number of repetitions p exceeds a certain number of repetitions, as described above, and the processing circuit 100 includes the processing circuit 100.
  • the product list creation process may be terminated with another termination condition, for example, the number of elements in the generated product list has reached a certain value.
  • FIG. 5 shows an example of compounds sequentially produced by such treatment.
  • FIG. 5 is a diagram illustrating a process performed by the chemical structure generator according to the first embodiment.
  • the processing circuit 100 provides the 0th generation product list Y 0 as the 1st generation reactant list X 1 to the program related to the generation function 100a by the control function 100b. That is, the compound 11 is included in the reaction list X 1 of the first generation.
  • step S200 the processing circuit 100 produces the first generation of the compound 12a based on the compound 10a and the compound 11 and the compound 12b based on the compound 11 by the generation function 100a. Generated as a compound list Y 1.
  • step S300 the processing circuit 100, the control function 100b, a product list Y 1 of the first generation, as a reactant list X 2 of the second generation, giving the program according to the generating function 100a. That is, the compound 12a and compound 12b is contained in the reaction product list X 1 of the second generation.
  • the processing circuit 100 produces the compound 13a based on the compound 10b and the compound 12b and the compound 14 based on the compound 10a and the compound 13a by the generation function 100a.
  • the chemical structure generator 1 can efficiently and sequentially generate various compounds.
  • the chemical reaction for producing compound 13b from compound 12a and compound 11 corresponds to the chemical reaction included in the prohibited reaction list 110d.
  • the processing circuit 100 is the generated compound. 13b is not added to the product list.
  • step S200 of FIG. 4 is a flowchart illustrating the processing flow of step S200 in FIG. 4 in more detail.
  • the special compounds x null , x intra, etc. representing the special operation are included as optional constituent requirements. It may be included. And that will be described later in these special compounds, where, first, the reaction product list X k of each generation, a case which does not include these special compounds.
  • step S210 the processing circuit 100, the generation function 100a, the product list 110b, starts generating the product list Y p of the p-generation.
  • the processing circuit 100 has a generation function 100a, that is, a 0th generation reactant list X 0 , a 1st generation reactant list X 1 , a 2nd generation reactant list X 2 , ... Based on the list X p , the generation of the product list Y p of each p generation is started.
  • the product list Y p is an empty set.
  • the processing circuit 100 When processing is performed up to the p0th generation , the union of the product lists Y 0 , Y 1 ... Y p 0 generated in this way becomes the data used as the learning data for machine learning.
  • the processing circuit 100 generates data to be used as learning data for machine learning as a union of the generated product lists Y 0 , Y 1 ... Y p 0 by the generation function 100a.
  • step S220 the processing circuit 100 uses the generation function 100a to generate a 0th generation reactant list X 0 , a 1st generation reactant list X 1 , a 2nd generation reactant list X 2 , ...
  • One element is selected from any of the reactant lists of the reactant list X p of the above, and is extracted as the first element x m.
  • step S230 the processing circuit 100, the generation function 100a, the element from the reaction list X p of the p-generation selects one is extracted as a second element x n.
  • the processing circuit 100, the generation function 100a, the element from the reaction list X 1 of the first generation select one, elements x 11 a "CH 3 COOH" Extract as the second element x m.
  • the processing circuit 100 extracts one or more compounds from the reactant list by the generation function 100a.
  • the processing circuit 100 repeats the processing of steps S220 to S280 for various first elements x m and second elements x n by the generation function 100a.
  • the processing circuit 100 may perform the processes of steps S220 to S280 for all combinations of the first element x m and the second element x n, and conversely, the first element x n.
  • the processing of steps S220 to S280 may be performed only for a part of the possible combinations of the element x m and the second element x n.
  • step S240 and step S250 the processing circuit 100 selects the partial structure in which the chemical reaction is performed from the selected elements by the generation function 100a.
  • step S240 the processing circuit 100, the generation function 100a, the first element x m extracted in step S220, extracting a first partial structure y m.
  • the first element x m extracted in step S240 is "C 2 H 5 COOH”
  • this structure matches the structure in the form of "R-COOH”, so that the process is performed in step S240.
  • the processing circuit 100, the generation function 100a, y m a "H”, and extracts the first substructure y m.
  • step S250 the processing circuit 100 extracts the second partial structure y n from the second element x n extracted in step S240 by the generation function 100a.
  • the processing circuit 100 the generation function 100a, the various first substructure y m and a second partial structure y n, and repeats the processing of steps S240 ⁇ step S280.
  • the processing circuit 100 reads out the chemical reaction list 110c from the storage unit 120 by the generation function 100a, and whether or not the structures extracted in steps S240 and S250 are included in the chemical reaction described in the chemical reaction list 110c. To judge. A first substructure y m and the second substructure y m does not match with the chemical reaction list (step S260No), the new first substructure y m and a second partial structure y n, step The processes of S240 to S280 are repeated. On the other hand, when the first substructure y m and the second substructure y n match the chemical reaction list (step S260 Yes), the process proceeds to step S265.
  • the processing circuit 100 determines that it is possible to generate a new compound by the chemical reaction by the generation function 100a, and the processing proceeds to step S265.
  • the processing circuit 100 extracts from the chemical reaction list 110c a chemical reaction in which one or more compounds extracted in steps S220 and S230 serve as a reactant by the generation function 100a.
  • step S265 the processing circuit 100, the generation function 100a, reads the prohibition reaction list 110d from the storage unit 120, a second portion extracted by the first substructure y m and step S250 extracted in step S240 Determine if the structure y n matches the prohibition rule. If the first substructure y m and the second substructure y m coincides with the prohibited rule (step S265Yes), the combination of the partial structure, the processing circuit 100 does not perform a new process, a new for the first substructure y m and a second partial structure y n, the processing of steps S240 ⁇ step S280 are repeated.
  • the processing circuit 100 determines that the new compound produced by the chemical reaction has no commercial value due to the generation function 100a, and the processing circuit 100 determines that the combination of the partial structures has no commercial value. without new process, the new first substructure y m and a second partial structure y n, the processing of steps S240 ⁇ step S280 are repeated.
  • the process proceeds to step S270, and the obtained product is the product list Y. It is added to p.
  • the prohibition rule is defined on the basis of a chemical reaction
  • the case where the prohibition rule is a rule that defines a chemical reaction excluded from the chemical reaction list in step S260 has been described, but the embodiment includes this.
  • prohibition rules may be established on a product or reactant basis.
  • the prohibition rule, products or excluded from the product list Y p may be a rule defining a reactant corresponding to the product are excluded from the product list Y p.
  • processing circuit 100 may determine the product list Y p by generation function 100a.
  • step S270 the processing circuit 100 produces the product y mn based on the chemical reaction list by the generation function 100a.
  • the first element x m is "C 2 H 5 COOH”
  • the second element x n is “CH 4 "
  • the first substructure y n is "-COOH”
  • the first 2 substructures y m is "-H”
  • the chemical reaction list for ⁇ "X 1 -CO-X 2 ⁇ "X 1 -COOH", "X 2 -H” ⁇
  • processing The product y mn generated by the circuit 100 by the generation function 100a is "C 2 H 5- CO-CH 3 ".
  • step S275 the processing circuit 100 uses the generation function 100a to generate a product y mn in step S270, that is, a compound that is a candidate for the product list Y p, in the previously generated product list. It is determined whether or not it is contained therein, that is, whether or not it is a compound already produced in the previous treatment.
  • the processing circuit 100 determines that the product y mn generated in step S270 is included in the previously generated product list by the generation function 100a, that is, it has already been generated in the previous processing.
  • step S275 Yes When it is determined that the compound is a compound (step S275 Yes), the processing circuit 100 does not include the product y mn in the p-generation product list Y p , and the new first partial structure y m and The processing of steps S240 to S280 is repeated for the second partial structure y n.
  • step S280 the processing circuit 100 adds the product y mn to the p-generation product list Y p.
  • the processing circuit 100 is the product y nm of the chemical reaction extracted in step S260 by the generation function 100a, and the product produced in step S270 is a product composed of one or more compounds. Add to the list of Y p.
  • Processing circuit 100 the generation function 100a, the first element given x m and the second element x n, while changing the first substructure y m and a second partial structure y n, different first the first partial structure y m and a second partial structure y n, and repeats the processing of steps S240 ⁇ S280. Further, the processing circuit 100 repeats the processing of steps S220 to S280 for various first elements x m and second elements x n by the generation function 100a.
  • the embodiment is not limited to the above example.
  • the chemical reaction used for producing the compound is a chemical reaction for producing one product from two reactants (the number of dimensions of the reaction is 2) has been described, but the embodiment is this. Not limited to.
  • the chemical reaction used to produce a compound may be a chemical reaction (reactant having 3 dimensions) that produces one product from three reactants, or one reactant. It may be a chemical reaction that produces two products from the same, or it may be a chemical reaction that produces one product different from the reaction product from one reactant.
  • the processing circuit 100 uses the generation function 100a to display the first element x m1 from the reactant list of any of the 0 to p generation reactant lists X 0 to X p. Is extracted, and the second element x m2 is extracted from the reactant list of any of the 0 to X generation reactant lists X 0 to X p , and the third element is extracted from the p generation reactant list X p. Extract x m3.
  • the processing circuit 100 extracts the first partial structure y m1 from the first element x m1 by the generation function 100a, and the second element x m2 to the second portion.
  • the structure y m2 is extracted, and the third partial structure y m3 is extracted from the third element x m3.
  • the processing circuit 100 has various first partial structures y m1 and second elements for the combination of the first element x m1 , the second element x m2 , and the third element x m3 given by the generation function 100a.
  • the same processing is performed for the partial structure y m2 and the third partial structure y m3 , and these processings are performed for various combinations of the first element x m1 , the second element x m2 , and the third element x m3 . Do.
  • the processing circuit 100 extracts the element x m from the p-generation reactant list X p by the generation function 100 a. Further, instead of steps S240 ⁇ step S250, the processing circuit 100, the generation function 100a, extracts a partial structure y m from the elements x m.
  • step S260 the processing circuit 100, the generation function 100a, acquires the chemical reaction substructure y m matches from a chemical reaction list 110c, after performing the checking of the prohibition rule in step S265, in step S270, the chemical Based on the reaction list, two products ym : 1, ym ; 2 are produced.
  • step S275 after determining whether or not each of these products is a compound that has already been produced, if it is not a compound that has already been produced, in step S280, the product is produced in the pth generation. It is added to the object list Y p.
  • the chemical reaction used to produce the compound is, for example, a chemical reaction for producing a product "R-Br" from a reactant "R-OH", such as one product from one reaction product. It may be a chemical reaction that produces.
  • the chemical reaction can be expressed as, for example, ⁇ "R-Br" ⁇ , ⁇ "R-OH" ⁇ .
  • processing circuit 100 having a generating function 100a is, in step S220, from the reaction list X 0 - X p of the zeroth generation, second p-generation extracting first component x m, in step S230 ,
  • the processing circuit 100 having the generation function 100a may extract the second element x n from the reaction list X 0 to X p of the 0th generation to the p generation in step S230.
  • the special compound x null is a special element indicating an operation in which a compound is not selected, and when the special compound x null is selected, it is treated as if the compound was not selected.
  • the reactant list X p is a list of n + 1 elements consisting of n elements x 1 , x 2 ... x n , which are ordinary compounds, and x null , which is a special compound.
  • x null which is a special compound.
  • the processing circuit 100 has a reaction product of x k , x l , and x m due to the generation function 100a. The three-dimensional reaction that is an individual is extracted.
  • x- null is extracted once and two compounds other than x-null are extracted such as x k and x l , one compound is treated as not selected, and the processing circuit 100 is treated as having not been selected.
  • the generation function 100a extracts a two-dimensional reaction having two reactants, x k and x l. Further, x null are extracted twice, compounds other than x null is, when it is extracted one as x k, are treated as two compounds has not been selected, the processing circuit 100, generating function With 100a, a one-dimensional reaction in which the reactant is one x k is extracted.
  • the reactant list X p is made into a list of n + 1 elements composed of n compounds x 1 , x 2 ... X n and the special compound x null , and d elements are extracted from this list by allowing duplication.
  • the processing circuit 100 can count all the chemical reactions in which the number of reactants is 1 to d, that is, the reaction dimension is d or less, by the generation function 100a. That is, the reaction product list X p includes an operation of not selecting a compound as an element x null, and the processing circuit 100 extracts the element x null from the reaction unit list X p by the generation function 100a instead of extracting the compound. , it is possible to add a compound obtainable by chemical reaction in fewer reaction as compared to when no extract elements x null, the product list Y p.
  • reaction product list X p may include as elements of the operations that differ from one compound to the original compound to convert the structure of a single compound.
  • an operation such as an intramolecular reaction, isomerization, or substitution of a functional group can be considered. ..
  • FIG. 7 is a diagram illustrating a process performed by the chemical structure generator according to the first embodiment.
  • the processing circuit 100 having the generation function 100a uses a special element corresponding to the operation x intra to carry out the intramolecular reaction of the reaction product of the reaction, ⁇ “Compound 15”, x intra ⁇ , of the chemical reaction. After expressing the product as "Compound 17" and the chemical reaction as ⁇ "Compound 17" ⁇ , ⁇ "Compound 15", x intra ⁇ , the treatment described in FIG. 6 is performed.
  • Processing circuit 100 having a generating function 100a is an operation x intra performing intramolecular reaction, be treated as elements in the reaction list X p, subjected to intramolecular reaction to any of the compound in the reaction product list a compound obtainable Te be added to the product list Y p.
  • the processing circuit 100 having the generation function 100a is a molecule candidate obtained by, for example, an operation such as an intramolecular reaction. Can be systematically generated.
  • the product y nm produced by the processing circuit 100 by the generation function 100a in step S270 is usually some kind of chemical structure (compound), but the embodiment is not limited to this.
  • the processing circuit 100 may generate a special compound x null , x intra, or the like as a product y nm by the generation function 100a.
  • the processing circuit 100 generates x-null as a product in step S270 when all the elements selected as the reactants are x- null by the generation function 100a.
  • the processing circuit 100 generates x intra as a product in step S270 when all the elements selected as the reactants are x intra by the generation function 100a.
  • the processes of step S240, step S250, step S260, step S265, step S275 and the like in FIG. 6 do not need to be executed.
  • the processing circuit 100 is based on the reactant list composed of one or more compounds and the chemical reaction list by the generating function 100a.
  • a product list consisting of one or more compounds is generated, the product list is given as a new reactant list by the control function 100b, and a new product list is given to the generator based on the new reactant list and the chemical reaction list.
  • To generate it is possible to efficiently generate a molecular structure that is suitable for use as learning data for machine learning, is commercially valuable, and is actually manufacturable.
  • the chemical structure generator 1 assigns numerical information to each of the candidate compounds based on the numerical information list 110e, and controls based on the numerical information.
  • the numerical information given to each compound is, for example, information indicating the cost required to produce the compound.
  • the numerical information is given for each compound.
  • the p-th generation reactant list X p consists of compounds x 1 , x 2, ... X n , and the costs of producing compounds x 1 , x 2, ..., X n are w 1 , w 2, respectively.
  • each element of the numerical information list W p corresponding to the p-generation reactant list is w 1 , w 2, ... w n , respectively.
  • the processing circuit 100 calculates the numerical information for each compound by the generation function 100a. Specifically, the processing circuit 100 having the generation function 100a gives known numerical information as numerical information for a compound whose numerical information is known, and provides numerical information of other compounds to the synthetic route of the compound. Based on this, the numerical information is recursively defined based on the numerical information of the reaction product of the compound until the compound whose numerical information is known is reached.
  • FIGS. 8 and 9 are flowcharts showing a flow of processing performed by the chemical structure generator according to the second embodiment.
  • FIG. 8 is a flowchart showing the overall flow of processing
  • FIG. 9 is a flowchart illustrating the processing in step S200A of FIG. Note that, in FIGS. 8 and 9, the process already described in the first embodiment will not be repeated.
  • the processing circuit 100 starts the generation of the compound list by the generation function 100a (step S100A).
  • p generation numerical information list W p that corresponds to the reaction each reaction list X p and reactant list X p of the p-generation, to generate a respective compounds listed and numerical information list (a list of cost information).
  • Reactant list X 0 ' ⁇ x 1 (w 1 ), x 2 (w 2 ), which initially generated 2, ..., w n ⁇ and associated numerical information with the reactants based on them. ..., X n (w n ) ⁇ is initially generated and the compound list is started to be generated.
  • the object list Y p is generated as the product list 110b.
  • the processing circuit 100 also calculates the numerical information list W p corresponding to each product of the p-generation product list Y p by the generation function 100a. That is, the processing circuit 100 having a generating function 100a is a product list Y p of the p-generation, the numerical information on each product is produced in a form that is associated (step S200A). The detailed processing of step S200A will be described again with reference to FIG.
  • the processing circuit 100 uses the control function 100b to add a new product list Y p and a numerical information list W p corresponding to each of the products to a new reactant list (p + 1 generation reactant).
  • List X p + 1 ) and a new numerical information list W p + 1 are given to the program related to the generation function 100a (step S300A).
  • the processing circuit 100 having a control function 100b is numerical information on each product is associated with, the p-generation product list Y p new reactants list (the p + 1 generation reactant list X As p + 1 ), it is given to the program related to the generation function 100a.
  • the processing circuit 100 increments the value of p by 1 by the control function 100b (step S400). Subsequently, the processing circuit 100 determines whether or not the new reactant list Xp is an empty set by the control function 100b.
  • the processing circuit 100 having a generating function 100a performs control using the numerical information list W p, so to suppress the generated compound, p accordance becomes large, new reactants list The number of elements of X p decreases naturally. Therefore, the processing circuit 100 having the control function 100b can use p at which the new reactant list Xp becomes an empty set as an endpoint of processing related to p.
  • step S500A Yes when the new reactant list X p is an empty set (step S500A Yes), the process ends, and when the new reactant list X p is not an empty set (step S500A No), the process returns to step S200A.
  • a processing stop condition for example, a compound having a cost less than a given threshold value and having a high commercial value can be efficiently generated.
  • step S200A the details of the process of step S200A will be described with reference to FIG.
  • numerical information list W p that correspond to reactants each will be described which is information representing the cost of the respective said reactant product.
  • step S210A the processing circuit 100, the generation function 100a, the product list 110b, starts generating the product list Y p of the p-generation. Immediately after the processing circuit 100 starts generating the product list Y p by the generation function 100 a, the product list Y p is an empty set.
  • step S220A the processing circuit 100 uses the generation function 100a to generate a 0th generation reactant list X 0 , a 1st generation reactant list X 1 , and a 2nd generation reactant list.
  • X 2 , ... Reactant list of the first generation One element is selected from the reactant list of X p and extracted as the first element x m.
  • step S230A the processing circuit 100, the generation function 100a, the element from the reaction list X p of the p-generation selects one is extracted as a second element x n.
  • step S220 and step S230 the processing circuit 100 extracts one or more compounds from the reactant list by the generation function 100a.
  • the processing circuit 100 repeats the processing of steps S220A to S280A for various first elements x m and second elements x n by the generation function 100a.
  • step S231 the processing circuit 100 reacts with respect to a reaction including the first element x m selected in step S220A and the second element x n selected in step S230A by the generation function 100a.
  • (Sum of raw material costs) is calculated.
  • the cost of the product is the sum of the cost of the reactant (sum of the raw material costs) and the cost of carrying out the chemical reaction, but the allowable cost was exceeded at the time of the sum of the raw material costs. In that case, the cost of the product would exceed the maximum permissible cost, without considering the cost of the chemical reaction. Therefore, the processing circuit 100 having the generation function 100a performs the pruning process in step S232 before entering the loop related to the partial structure.
  • the sum of the cost of the reactant for example, the cost w m related to the first element x m selected in step S220A and the cost w n related to the second element x n selected in step S230A, is w m + w n.
  • the permissible cost is exceeded (step S232 No) in the processing circuit 100 having the generation function 100a, the first element x m and the second element x n selected in step S220A and step S230 are not appropriate elements. Then, the processes of steps S220A to S280A are repeated for the new first element x m and the second element x n.
  • the cost of the reactant for example, the sum of the cost w m related to the first element x m selected in step S220A and the cost w n related to the second element x n selected in step S230A is w m + w n. If the allowable cost is not exceeded (step S232 Yes), the process proceeds to step S240.
  • step S240 and step S250 the processing circuit 100 selects a partial structure in which the chemical reaction is carried out from the selected elements by the generation function 100a. For example, in step S240, the processing circuit 100, the generation function 100a, the first element x m extracted in step S220, extracting a first partial structure y m. Similarly, in step S240, the processing circuit 100 extracts the second partial structure y n from the second element x n extracted in step S230 by the generation function 100a.
  • the processing circuit 100 the generation function 100a, the various first substructure y m and a second partial structure y n, and repeats the processing of steps S240 ⁇ step S280A.
  • the processing circuit 100 reads out the chemical reaction list 110c from the storage unit 120 by the generation function 100a, and whether or not the structures extracted in steps S240 and S250 are included in the chemical reaction described in the chemical reaction list 110c. To judge. A first substructure y m and the second substructure y m does not match with the chemical reaction list (step S260No), the new first substructure y m and a second partial structure y n, step The processes of S240 to S280A are repeated. On the other hand, when the first substructure y m and the second substructure y n match the chemical reaction list (step S260 Yes), the process proceeds to step S270.
  • the processing circuit 100 extracts from the chemical reaction list 110c a chemical reaction in which one or more compounds extracted in steps S220A and S230A serve as a reactant by the generation function 100a.
  • step S270 the processing circuit 100 produces the product y mn based on the chemical reaction list by the generation function 100a.
  • step S275 the processing circuit 100 uses the generation function 100a to generate a product y mn in step S270, that is, a compound that is a candidate for the product list Y p, in the previously generated product list. It is determined whether or not it is contained therein, that is, whether or not it is a compound already produced in the previous treatment.
  • the processing circuit 100 determines that the product y mn generated in step S270 is included in the previously generated product list by the generation function 100a, that is, it has already been generated in the previous processing.
  • step S275 Yes When it is determined that the compound is a compound (step S275 Yes), the processing circuit 100 does not include the product y mn in the p-generation product list Y p , and the new first partial structure y m and The processing of steps S240 to S280 is repeated for the second partial structure y n.
  • step S275 No when the processing circuit 100 determines by the generation function 100a that the product mn produced in step S270 is not a compound already produced in the previous processing (step S275 No), the processing proceeds to step S271A. ..
  • step S271A the processing circuit 100 having the generation function 100a calculates the production cost w mn for the product y mn generated in step S270.
  • the production cost w mn is the sum of the sum of the costs of the reactants w m + w n and the cost z mn of the chemical reaction. That is, the processing circuit 100 having the generation function 100a provides the numerical information corresponding to each of the candidate compounds y mn of the product list Y p , which is the sum of the costs of the reactants as the raw materials of the candidate compounds w m + w n.
  • the processing circuit 100 having the generation function 100a acquires the cost z mn of the chemical reaction from the chemical reaction list 110c.
  • the chemical structure generator 1 stores the chemical reaction and the cost of the chemical reaction in the chemical reaction list 110c in association with each other in the storage unit 120.
  • step S272 the processing circuit 100 determines whether or not the generation cost w mn of the product y mm calculated in step S271A is equal to or less than the maximum allowable cost c max by the generation function 100a.
  • step S272 No the product y mn is not added to the product list Y p, the first partial new construction y m and the second The processing of steps S240 to S280A is repeated for the partial structure y n of.
  • step S272 Yes the process proceeds to step S280A.
  • the processing circuit 100 having a generating function 100a when generating the compound y mn that are candidates for product list Y p, generates cost w mn is a numerical value information corresponding to each compound y mn as a candidate Is calculated in step S271A, and based on the calculated production cost w mn , it is determined in step S272 whether or not the candidate compound y mn is included in the product list Y p.
  • step S280A the processing circuit 100 adds the product y mn to the p-generation product list Y p , and adds the product y mn production cost w mn to the p-generation numerical information list W. Add to p. In this way, the processing circuit 100, the generation function 100a, to add to the list of products Y p of one or more compounds.
  • Processing circuit 100 the generation function 100a, the first element given x m and the second element x n, while changing the first substructure y m and a second partial structure y n, different first the first partial structure y m and a second partial structure y n, and repeats the processing of steps S240 ⁇ S280A. Further, the processing circuit 100 repeats the processing of steps S220A to S280A for various first elements x m and second elements x n by the generation function 100a.
  • the embodiment is not limited to the above example.
  • numerical information list W p that correspond to the respective compound has been described for the case where information indicating the cost of the compound, the embodiment is not limited thereto.
  • numerical information list W p corresponding to each compound may be a score determined for each compound.
  • the processing circuit 100 having the generation function 100a is comprehensively based on various factors such as not only the price of a simple raw material but also the technical difficulty of handling, the ease of procurement of a raw material, and the market demand for each compound. The commercial usefulness may be determined and a score may be determined for each compound, and those having a high score or exceeding a certain threshold may be preferentially added to the next generation reactant list.
  • the score determined for each compound may be a score such that the higher the score, the more desirable compound is indicated, or conversely, the lower the score, the more desirable compound is indicated.
  • numerical information list W p that correspond to each compound, information about the physical properties of the compounds, for example, molecular weight, vapor pressure, boiling point, melting point, dipole moment, be oil-water partition coefficient (e.g., logP) or the like is used good.
  • processing circuit 100 having a generating function 100a is, when generating the product candidate to become the compounds of the list Y p, which further calculates numerical information corresponding to each compound a candidate, was calculated based on the information, the candidate compound to, has been described a case where determining whether to include the product list Y p.
  • processing circuit 100 having a generating function 100a is, when generating the candidate compound to the product list Y p, further calculates information that is not the numerical information corresponding to each compound a candidate, the calculated information based on the compound as a candidate, whether included in the product list Y p may be determined.
  • examples of information that is not numerical information include, for example, information on whether or not a specific substituent is contained, information on dangerous goods classification according to a public period, and the like.
  • the processing circuit 100 having the generation function 100a selects a compound whose candidate compound for the product list contains a specific substituent or is classified into a specific dangerous goods classification. Exclude from Y p.
  • the repetition processing according to the first element x m and the second element x n, the first element x m and the selection of the second element x n, numerical information list of each compound W p Although the case where the steps are sequentially performed regardless of the contents of the above is described, the embodiment is not limited to this.
  • the processing circuit 100 having the generation function 100a searches for the first element x m and the second element x n according to the priority based on the numerical information of each compound, for example, in the order of low cost or high score. , Candidate y mn of the product list Y p may be generated.
  • the cost of the compound is not limited to information indicating only the simple price of the compound, and includes various costs other than the price, such as the difficulty of safety management, the ease of procurement of raw materials, and the stability. You may.
  • the numerical information in the embodiment is not limited to the numerical information in the format of the scalar quantity, and may be the numerical information in the format of the vector quantity or the tensor quantity, if necessary.
  • the processing circuit 100 based on the reaction product list X 0 of the zeroth generation, has been described a case where successively produce a product list Y p of the p-generation. That is, in the embodiment, based on the 0th one initial list of reactants list X 0 generation, it has been described a case of generating one reactant list Y p.
  • the embodiment is not limited to this, and a plurality of reactant lists corresponding to each of the plurality of initial lists may be generated based on the plurality of initial lists.
  • a compound this compound itself is not necessarily the calculation target of this compound generator
  • two or more raw material groups for example, group A, group B, group C .
  • a compound list of a raw material group a compound list of A group, a compound list of B group, a compound list of C group, etc.
  • the processing circuit 100 has a generation function 100a, based on the 0th generation reaction product list X 0, A for the compound of the A group, and the p generation compound list Y p, A for the compound of the A group. , And based on the 0th generation reaction product list X 0 and B for the compound of the B group, the p generation compound list Y p and B for the compound of the B group are generated, and the 0th generation compound list for the compound of the C group is generated. Based on the reaction product lists X 0 and C of the generations, the p generation compound lists Y p and c for the compounds of the C group are generated.
  • the processing circuit 100 executes the process already described by the generation function 100a, with the permissible cost determined for each raw material group as the maximum permissible cost c max in step S272 of FIG. 9 for each of the raw material groups. do it.
  • the permissible cost determined for each raw material group as the maximum permissible cost c max in step S272 of FIG. 9 for each of the raw material groups. do it.
  • the total allowable cost c is given, and the ratio of the allowable cost of group A to the allowable cost of group B is Consider the case where it is set to 8: 2.
  • the processing circuit 100 is generated in the other raw material group in the processing of step S272 of FIG. 9 after proceeding with each processing in parallel or alternately for each of the raw material groups by the generation function 100a. Determine if the product production cost is less than or equal to the maximum permissible cost, with reference to the information on the permissible cost of the compound list. As an example, in the process of step S272 in the process of generating the compound list of group A, the sum of the production cost of the currently produced product and the minimum value of the production cost in the compound list of group B is the whole. If the permissible cost is exceeded, the processing circuit 100 does not add the product to the product list due to the generation function 100a.
  • the processing circuit 100 can simultaneously generate a compound list relating to two or more raw material groups in parallel.
  • the processing circuit 100 gives numerical information to each of the candidate compounds and controls the generation of the chemical structure. This makes it possible to more efficiently generate commercially valuable molecular structures suitable for use as learning data for machine learning.
  • a data processing system including a database having at least one list of a reactant list consisting of one or more compounds and a product list consisting of one or more compounds, and a chemical structure generator.
  • the chemical structure generator is A generator that generates the product list based on the reactant list and the chemical reaction list, The product list is given to the generator as a new reactant list, the database is updated, and a new product list is generated in the generator based on the new reactant list and the chemical reaction list. It is provided with a control unit to be operated.
  • Processing circuit 100a Generation function 100b Control function 110 Database 110a Reactant list 110b Product list 110c Chemical reaction list 110d Prohibition reaction list 110e Numerical information list 120 Storage unit 130 Input device 140 Display

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Chemical & Material Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Development Economics (AREA)
  • Analytical Chemistry (AREA)
  • Chemical Kinetics & Catalysis (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Databases & Information Systems (AREA)
  • Game Theory and Decision Science (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Educational Administration (AREA)
  • Primary Health Care (AREA)
  • Manufacturing & Machinery (AREA)

Abstract

本発明に係る化学構造発生装置は、発生部と、制御部とを備える。発生部は、1以上の化合物からなる反応物リストと、化学反応リストとに基づいて、1以上の化合物からなる生成物リストを生成する。制御部は、生成物リストを新たな反応物リストとして発生部に与えるとともに、反応物リストと生成物リストとのうち少なくとも一方のリストを有するデータベースの更新を行い、新たな反応物リスト及び化学反応リストに基づいて発生部に新たな生成物リストを生成させる。

Description

化学構造発生装置、化学構造発生プログラム、及び化学構造発生方法
 本発明は、化学構造発生装置、化学構造発生プログラム、及び化学構造発生方法に関する。
 コンピューターシミュレーションを用いて、機械学習により有用な性質をもつ分子を設計する方法に興味が持たれている。一例として、まず学習フェーズにおいて学習用のデータセットを用いて例えば深層学習等の機械学習により学習済モデルを生成し、続いて実行フェーズにおいて、学習フェーズにおいて生成された学習済モデルを用いて、例えば物性値の予測や、所望の物性を有する分子の探索を行う。
 ここで、例えば深層学習等の機械学習を行うためには大量の学習用データ(訓練データ)が必要になることから、質の良い学習用データをどのように効率よく生成するかが重要となる。このような観点から、機械学習の学習用データとして用いることが適切であるような分子の構造を自動的に発生させる化学構造発生装置が重要となる。
 ここで、原子数に対して可能な分子構造の数は、原子数が増大するにしたがって指数関数的に増大し、組み合わせ爆発がおこるため、候補となる分子の構造を網羅的に発生させるのは現実的には不可能である。加えて、利用可能な分子、すなわち、実際に安定に存在し、商業的に利用可能な分子の数の、ありうる分子構造の数に対する比は、原子数が増加すると急激に減少する。機械学習を行う上で、商業的に利用可能ではない分子構造を多数含む学習用データを用いることは時間的にも経済的にも極めて非効率的である。従って、商業的に利用可能であり価値の高い分子だけを効率的に発生させることのできる化学構造発生装置が望まれる。
国際公開第9501606号 米国特許出願公開第2018/096100号明細書 特開2001-058962号公報 国際公開第9736252号
 本発明は、機械学習の学習用データとして用いられるのに適切な分子構造を効率的に発生させることを目的とする。
 上述した課題を解決し、目的を達成するために、本発明に係る化学構造発生装置は、発生部と、制御部とを備える。発生部は、1以上の化合物からなる反応物リストと、化学反応リストとに基づいて、1以上の化合物からなる生成物リストを生成する。制御部は、生成物リストを新たな反応物リストとして発生部に与えるとともに、反応物リストと生成物リストとのうち少なくとも一方のリストを有するデータベースの更新を行い、新たな反応物リスト及び化学反応リストに基づいて発生部に新たな生成物リストを生成させる。
 また、本発明に係る化学構造発生プログラムは、1以上の化合物からなる反応物リストと、化学反応リストとに基づいて、1以上の化合物からなる生成物リストを生成する処理と、生成物リストを新たな反応物リストとして与える処理と、反応物リストと生成物リストとのうち少なくとも一方のリストを有するデータベースの更新を行う処理と新たな反応物リスト及び化学反応リストに基づいて新たな生成物リストを生成させる処理と、をコンピュータに実行させるプログラムである。
 また、本発明に係る化学構造発生方法は、化学構造発生装置により実行される化学構造発生方法であって、1以上の化合物からなる反応物リストと、化学反応リストとに基づいて、1以上の化合物からなる生成物リストを生成し、生成物リストを新たな反応物リストとして与え、反応物リストと生成物リストとのうち少なくとも一方のリストを有するデータベースの更新を行い、新たな反応物リスト及び化学反応リストに基づいて新たな生成物リストを生成させる方法である。
 本発明によれば、機械学習の学習用データとして用いられるのに適切な分子構造を効率的に発生させることができる。
図1は、本発明の実施形態に係る化学構造発生装置の概略を表す図である。 図2は、第1の実施形態に係る化学構造発生装置における化学反応リストの一例を示す図である。 図3は、第1の実施形態に係る化学構造発生装置における禁止反応リストの一例を示す図である。 図4は、第1の実施形態に係る化学構造発生装置が行う処理の流れを表すフローチャートである。 図5は、第1の実施形態に係る化学構造発生装置が行う処理について説明した図である。 図6は、図4におけるステップS200の処理の流れについてより詳細に説明したフローチャートである。 図7は、第1の実施形態に係る化学構造発生装置が行う処理について説明した図である。 図8は、第2の実施形態に係る化学構造発生装置が行う処理の流れを示すフローチャートである。 図9は、図8におけるステップS200Aの処理の流れについてより詳細に説明したフローチャートである。
 以下、添付図面を参照しながら、本発明の実施形態に係る化学構造発生装置を説明する。
(第1の実施形態)
 図1は、本発明の実施形態に係る化学構造発生装置1の概略を表す図である。化学構造発生装置1は、処理回路100と、記憶部120と、データベース110と、入力装置130と、ディスプレイ140とからなる。処理回路100は、発生機能100a、制御機能100bを備える。データベース110は、化学反応(chemical reaction)の反応物(reactant)等のリストである反応物リスト110a、化学反応の生成物(product)等のリストである生成物リスト110b、化学反応リスト110c、禁止反応リスト110d、数値情報リスト110eを備える。化学構造発生装置1は、機械学習に用いる学習用データの基になる化学構造を、反応物リスト110aまたは生成物リスト110bとして発生するための装置である。
 処理回路100は、プログラムを記憶部120から読み出して実行することで、発生機能100a、制御機能100b等の機能を実現するプロセッサ(例えば、CPU(Central Processing Unit)、GPU(Graphical Processing Unit)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)等)である。すなわち、発生機能100a、制御機能100b等による処理機能は、当該プロセッサにより実行可能なプログラムの形態で記憶部120に記憶される。これにより、プログラムが読み出された状態の処理回路100は、発生機能100a、制御機能100b等の機能を有する。すなわち、発生機能100a、制御機能100bは、それぞれ発生部、制御部の一例となる。なお、処理回路100が有する各機能の処理の詳細については後述する。
 データベース110は、化学構造発生装置1が新たな化合物を発生させる処理において処理回路100により参照される様々なデータベースであり、例えば、反応物リスト110a、生成物リスト110b、化学反応リスト110c、禁止反応リスト110d、数値情報リスト110eなどで構成される。これらのデータベースは、必要に応じて記憶部120に記憶される。
 なお、化学反応リスト110c、禁止反応リスト110d、数値情報リスト110eは、処理回路100が化学構造を発生する処理を行うに際して用いられるデータである。これに対して、反応物リスト110aまたは生成物リスト110bは、後段の機械学習に用いる学習用データの基になるデータであり、これらのリストの生成を行うことが、化学構造発生装置1が行う処理の一つの目的となる。
 反応物リスト110aは、化学反応の基となる反応物等のリストであり、反応物を表す化合物等で構成される。より正確には、反応物リスト110aは1以上の要素からなり、当該要素は、単体、化合物、反応物を選択しない操作を表す要素又は分子内反応を表す要素である。ここで、実施形態に係る化学構造発生装置1は、初期化合物から出発して反応物リストを逐次更新していく。従って、反応物リスト110aは、初期状態(第0世代(p=0))の反応物リストXと、第1世代の反応物リストXと、第2世代の反応物リストXと、・・・、第p世代の反応物リストXとからなる。ここで、第k+1世代の反応物リストXk+1は、第k世代の反応物リストXを完全に含んでもよいし、第k+1世代の反応物リストXk+1は、第k世代の反応物リストXを完全に含まなくてもよい。
 また、各世代の反応物リストXは、任意的構成要件として、反応物を表す化合物xk1…xknの他に、特殊操作を表す特殊化合物xnull、xintra等を含んでもよい。これらの特殊化合物については後述する。これらの特殊化合物を要素として含まない場合、第k世代の反応物リストXの要素は、第k世代の反応物を表す化合物xk1、k2…、xknとなる。逆に、これらの特殊化合物を要素として含む場合、第k世代の反応物リストXの要素は、例えば、xk1、k2…、xkn、xnull、xintraとなる。
 生成物リスト110bは、化学反応の生成物リストであり、生成物を表す化合物等で構成される。より正確には、生成物リスト110bは1以上の要素からなり、当該要素は、単体、化合物、反応物を選択しない操作を表す要素又は分子内反応を表す要素である。ここで、反応物リスト110aの場合と同様、生成物リスト110bは、第0世代(p=0)の生成物リストYと、第1世代の生成物リストYと、第2世代の生成物リストYと、・・・、第p世代の生成物リストYとからなる。
 なお、いくつかの実施形態においては、第k+1世代の反応物リストXk+1の要素は、第k世代の生成物リストYの要素と等しくなる。
 化学反応リスト110cは、可能な化学反応リストであり、反応物の部分構造のリストと、当該反応物を用いて行われる化学反応により生成される生成物の部分構造のリストとが、対応づけられたリストである。また、化学反応リスト110cは、必要に応じて、当該化学反応のコストに関する情報を含む。
 図2に、反応物が2つまたは1つであり、それに対応する生成物が1つである場合の化学反応リスト110cの一例が示されている。
 図2の1行目には、部分構造「X1-COOH」と、部分構造「X2-H」とから、構造「X1-CO-X2」が発生する場合について記載されている。かかる場合、反応物の部分構造リスト{「X1-COOH」,「X2-H」}と、当該化学反応により生成される生成物の部分構造リスト{「X1-CO-X2」}とが対応づけられたリスト{{「X1-CO-X2」}, {「X1-COOH」,「X2-H」}}が、化学反応リスト110cの一例となる。
 また、図2の2行目には、部分構造「X1-CO-X2」から、構造「X1-CHOH-X2」が発生する場合に記載されている。かかる場合、反応物の部分構造リスト{「X1-CO-X2」}と、当該化学反応により生成される生成物の部分構造リスト(「X1-CHOH-X2」)とが対応づけられたリスト{{「X1-CHOH-X2」}, {「X1-CO-X2」}}が、化学反応リスト110cの一例となる。また、本化学反応は、H2も部分構造と考え、{{「X1-CHOH-X2」}、{「X1-CO-X2」、「H2」}}と表現してもよい。
 また、図2の3行目には、例えば、部分構造「X1-CHOH-X2」と、部分構造「X3-H」とから、構造「X1-CHX3-X2」が発生する場合に記載されている。かかる場合、反応物の部分構造リスト{「X1-CHOH-X2」,「X3-H」}と、当該化学反応により生成される生成物の部分構造リスト(「X1-CHX3-X2」)とが対応づけられたリスト{{「X1-CHX3-X2」}, {「X1-CHOH-X2」,「X3-H」}}が、化学反応リスト110cの一例となる。
 なお、図2では、反応物が2つまたは1つであり、それに対応する生成物が1つである場合について説明したが、実施形態はこれに限られず、反応物は3つ以上であってもよい。例えば、部分構造Aと、部分構造Bと、部分構造Cとから、構造Dが発生する場合、反応物の部分構造リスト{A,B,C}と、当該化学反応により生成される生成物の部分構造リスト{D}とが対応づけられたリスト{{D},{A,B,C}}が、化学反応リスト110cの一例となる。
 また、上述の場合では、生成物が1つの場合について説明したが、実施形態はこれに限られず、生成物は2つ以上であってもよい。例えば、図2の1行目の逆反応として、部分構造「X1-CO-X2」から、構造「X1-COOH」と、構造「X2-H」とが発生する場合について考える。かかる場合、反応物の部分構造リスト{「X1-CO-X2」}と、当該化学反応により生成される生成物の部分構造リスト{「X1-COOH」, 「X2-H」}とが対応づけられたリスト{{「X1-COOH」, 「X2-H」}, { 「X1-CO-X2」 }}が、化学反応リスト110cの一例となる。
 以上の内容を式を用いて表現すると、例えば、部分構造yと部分構造yから新たな構造ykl'が生成される場合、リスト{{ykl'}, {y , y}}が、化学反応リスト110cとなる。また、一般的に、n個の部分構造yq1,  q2…qnから、新たなm個の構造yq1q2…qn;1、yq1q2…qn;2、…、yq1q2…qn;mが生成される場合、リスト{{yq1q2…qn;1、yq1q2…qn;2、…、yq1q2…qn;m},{yq1,  q2…qn}}が、化学反応リスト110cとなる。
 なお、いくつかの実施形態では、化学反応リスト110cは、反応物リスト110aや生成物リスト110bとは異なり、要素は世代ごとに更新されず、世代を通じて要素は固定される。
 禁止反応リスト110dは、禁止される化学反応リストであり、反応物の部分構造リストと、当該反応物を用いて行われる化学反応により生成される生成物の部分構造リストとが、それが禁止される化学反応である旨の情報とともに、対応づけられたリストである。
 例えば、部分構造yと部分構造yから新たな構造ykl'が生成される場合、生成される当該新たな構造に商業的価値がなく生成物としては適当でない場合、リスト{{ykl'},{y , y}}が、禁止反応リスト110dとなる。また、一般的に、n個の部分構造yq1,  q2…qnから、新たなm個の構造yq1q2…qn;1、yq1q2…qn;2、…、yq1q2…qn;mが生成される場合、当該生成物が商業的価値がない等の理由により生成物としては適当でない場合、リスト{{yq1q2…qn;1、yq1q2…qn;2、…、yq1q2…qn;m}、{yq1,  q2…qn}}が、禁止反応リスト110dとなる。なお、商業的価値の有無については、例えばコスト、安定性、毒性などの観点に基づいて、分野ごとに判断される。
 図3に、禁止反応リスト110dの一例が示されている。図3は、禁止反応リスト110dに係る処理について説明した図である。
 図3の上段には、部分構造「X1-COOH」と、部分構造「X2-H」とから、構造「X1-CO-X2」が発生する場合について記載されている。このような構造の発生を制限する理由は特にないことから、この構造の発生は、許可(Allow)となる。
 一方、図3の下段には、部分構造「X1-COOH」と、部分構造「X2-CO-CH2-CO-X3」とから、構造「Xx-CO-CHX1-CO-X」が発生する場合について記載されている。生成された構造が化学的に不安定であり、例えばある分野においては商業的価値がないと判断される場合、このような構造の発生は禁止され、この構造の発生は、禁止(Deny)となる。すなわち、リスト{{「X2-CO-CHX1-CO-X」}、{「X1-COOH」、「X2-CO-CH2-CO-X3」}}が、禁止反応リスト110dとなる。
 数値情報リスト110eは、反応物リスト110a中の各化合物それぞれのコスト等を表す数値情報リストである。数値情報リスト110eについては、第2の実施形態において詳しく説明する。
 記憶部120は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、ハードディスク等の記憶領域であり、処理回路100が実行する各種プログラム及び当該各種プログラムの実行結果、データベース110等を記憶する。
  入力装置130は、化学構造発生装置1を使用するユーザが各種の操作を行うためのデバイスである。入力装置130は、例えばマウス、キーボード、タッチパネル又はハードウェアキーで構成される。
 ディスプレイ140は、各種情報を表示する。例えば、ディスプレイ140は、CPUの処理結果や、ユーザから各種操作を受け付けるためのGUI(Graphical User Interface)等を表示する。ディスプレイ140は、例えば液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ又はブラウン管ディスプレイで構成される。なお、例えばタッチパネルのような形態で、入力装置130とディスプレイ140とが一体に構成されても良い。 
 なお、実施形態は上述の例に限られない。実施形態によっては、記憶部120、入力装置130、ディスプレイ140等は、化学構造発生装置1の必須の構成要素ではなく、すなわち化合物発生装置1は記憶部120、入力装置130、ディスプレイ140等を含まなくてもよい。また、別の例として、記憶部120、入力装置130、ディスプレイ140等は、例えば、ネットワークを介して化合物発生装置1の外に配置され、処理回路100とデータのやりとりが行われてもよい。
 続いて、実施形態に係る背景について説明する。
 コンピューターシミュレーションを用いて、機械学習により有用な性質をもつ分子を設計する方法に興味が持たれている。一例として、まず学習フェーズにおいて学習用のデータセットを用いて例えば深層学習等の機械学習により学習済モデルを生成し、続いて実行フェーズにおいて、学習フェーズにおいて生成された学習済モデルを用いて、例えば物性値の予測や、所望の物性を有する分子の探索を行う。
 ここで、例えば深層学習等の機械学習を行うためには大量の学習用データが必要になることから、質の良い学習用データをどのように効率よく生成するかが重要となる。このような観点から、機械学習の学習用データとして用いることが適切であるような分子の構造を自動的に発生させる化学構造発生装置が重要となる。
 ここで、原子数に対して可能な分子構造の数は、原子数が増大するにしたがって指数関数的に増大し、組み合わせ爆発がおこるため、候補となる分子の構造を網羅的に発生させるのは現実的に不可能である。加えて、利用可能な分子、すなわち、実際に安定に存在し、商業的に利用可能な分子の数の、ありうる分子構造の数に対する比は、原子数が増加すると急激に減少する。機械学習を行う上で、商業的に利用可能ではない分子構造を多数含む学習用データを用いることは時間的にも経済的にも極めて非効率的である。従って、商業的に利用可能であり価値の高い分子だけを効率的に発生させることのできる化学構造発生装置が望まれる。
 係る背景に鑑みて、実施形態に係る化学構造発生装置1の有する処理回路100は、発生機能100aと、制御機能110bとを備える。処理回路100は、発生機能100aにより、1以上の化合物からなる反応物のリストである反応物リスト110aと、化学反応のリストである化学反応リスト110cとに基づいて、1以上の化合物からなる生成物のリストである生成物リスト110bを生成する。処理回路100は、制御機能100bにより、生成物リスト110bを新たな反応物リストとして発生機能100aに係るプログラムに与えるとともに、反応物リスト110aと生成物リスト110bとのうち少なくとも一方のリストを有するデータベース110の更新を行い、当該新たな反応物リスト及び化学反応リスト110cに基づいて発生機能100aに係るプログラムに新たな生成物リストを生成させる。
 これにより、実施形態に係る化学構造発生装置1は、機械学習の学習用データとして適切な質の良い学習用データを効率的に発生させることができ、これらの学習用データを用いて生成された学習済モデルを用いることで、分子設計の効率を高めることができる。
 かかる処理の詳細について、図4~図7を用いて説明する。
 図4は、第1の実施形態に係る化学構造発生装置が行う処理の流れを表すフローチャートである。
 はじめに、処理回路100は、発生機能100aにより、化合物リストの生成を開始する(ステップS100)。処理回路100は、発生機能100aにより、初期状態においてはp=0として、第0世代の反応物リストXに基づいて、pを増加させながら、第p世代の反応物リストXを、当該化合物リストとして生成する。
 続いて、処理回路100は、発生機能100aにより、反応物リスト110aである第p世代の反応物リストXと、化学反応リスト110cとに基づいて、第p世代の生成物リストYを、生成物リスト110bとして生成する。(ステップS200)。すなわち、処理回路100は、発生機能100aにより、反応物リスト110aにおける1以上の化合物からなる反応物リストと、化学反応リスト110cとに基づいて、1以上の化合物からなる生成物リスト110bを生成する。ステップS200の詳細な処理については、図6であらためて説明する。
 続いて、処理回路100は、制御機能100bにより、第p世代の生成物リストYを、新たな反応物リスト(第p+1世代の反応物リストXp+1)として、発生機能100aに係るプログラムに与える(ステップS300)。すなわち、処理回路100は、制御機能100bにより、ステップS200で生成された生成物リストYを、新たな反応物リストXp+1として発生機能100aに係るプログラムに与える。
 また、かかる処理を実行するとともに、処理回路100は、制御機能100bにより、反応物リスト110aと生成物リスト110bとのうち少なくとも一方のリストを有するデータベース110の更新を行う。ここで、データベース110の更新を行うとは、データベース110に対して新たな要素を追加する等によりデータベース110の要素を変更する操作、例えば、生成物リスト110bのうち一部の要素を新たな反応物リスト110aの新たな要素としてデータベース110に入力する操作等を意味する。例えば、処理回路100は、制御機能100bにより、ステップS300において、反応物リスト110aの更新を行う。
 なお、このように更新されるデータベース110の少なくとも一部は、例えば機械学習における学習用データとして用いられる。一例として、処理回路100は、図示しない学習用データ生成機能により、更新された反応物リスト110aに基づいて、機械学習における学習用データを生成する。一例として、処理回路100は、図示しない学習用データ生成機能により、更新された反応物リスト110aの要素それぞれに対して、当該要素の物性値を対応づけることにより、化学構造と当該化学構造の物性値とが対応づけられた教師ありデータを作成し、当該教師ありデータが、機械学習における学習用データとして用いられても良い。このような学習用データを用いて機械学習が行われて学習済モデルが生成されることで、未知の化学構造の物性値を予測することができ、これにより、例えば望ましい物性値をもつ化学構造の探索を行うことができる。また、別の例として、処理回路100は、図示しない学習用データ生成機能により、更新された反応物リスト110aに基づいて、教師なしデータを作成し、当該教師なしデータが、機械学習における学習用データとして用いられても良い。
 続いて、処理回路100は、制御機能100bにより、pの値を1増加させる(ステップS400)。ここで、pの値が、事前に設定された閾値pmaxより大きい場合(ステップS500 Yes)、処理は完了する。すなわち、繰り返しの世代数pが、事前に設定された閾値pmaxを上回った場合、制御機能100bを有する処理回路100は、生成物リスト作成処理の終了条件を満たしたと判定し、処理を終了する。一方、pの値が、pmaxより小さい場合(ステップS500 No)、処理回路150は、ステップS200からステップS400の処理を繰り返す。すなわち、処理回路100は、制御機能100bにより、ステップS300における新たな反応物リスト及び化学反応リスト110cにおける化学反応リストに基づいて、発生機能100aに係るプログラムに、新たな生成物リストを生成させる。なお、生成物リスト作成処理の終了条件については、実施形態は、上述のように、繰り返しの世代数pが一定の繰り返し回数を超えたことをもって終了とするものに限られず、処理回路100は、例えば生成された生成物リストの要素数が一定の値に達した等、別の終了条件を持って生成物リスト作成処理を終了してもよい。
 図5に、かかる処理により順次生成される化合物の一例が示されている。図5は、第1の実施形態に係る化学構造発生装置が行う処理について説明した図である。
 化合物10a及び化合物10bは、初期状態、すなわちp=0において第0世代の反応物リストXに含まれる化合物の例を示している。p=0において、ステップS200において、処理回路100は、発生機能100aにより、化合物10a及び化合物10bに基づいて、化合物11を、第0世代の生成物リストYとして生成する。p=0において、ステップS300において、処理回路100は、制御機能100bにより、第0世代の生成物リストYを、第1世代の反応物リストXとして、発生機能100aに係るプログラムに与える。すなわち、化合物11は、第1世代の反応物リストXに含まれる。また、制御機能100bを有する処理回路100は、発生機能100aにより生成されたこれらの生成物リストを、記憶部120に記憶させる。続いて、ステップS400において、処理回路100は、制御機能100bにより、pの値を1増加させてp=1とする。
 続いて、p=1において、ステップS200において、処理回路100は、発生機能100aにより、化合物10a及び化合物11に基づいて、化合物12aを、化合物11に基づいて、化合物12bを、第1世代の生成物リストYとして生成する。p=1において、ステップS300において、処理回路100は、制御機能100bにより、第1世代の生成物リストYを、第2世代の反応物リストXとして、発生機能100aに係るプログラムに与える。すなわち、化合物12a及び化合物12bは、第2世代の反応物リストXに含まれる。続いて、ステップS400において、処理回路100は、制御機能100bにより、pの値を1増加させてp=2とする。
 以下同様に、処理回路100は、発生機能100aにより、化合物10b及び化合物12bに基づいて、化合物13aを生成し、化合物10a及び化合物13aに基づいて、化合物14を生成する。このようにして、化学構造発生装置1は、さまざまな化合物を、効率よく順次生成することができる。なお、図5において、化合物12a及び化合物11から、化合物13bを生成する化学反応は、禁止反応リスト110dに含まれる化学反応に該当するので、このような場合、処理回路100は、生成された化合物13bを、生成物リストに加えない。
 続いて、図6を用いて、図4のステップS200の処理の詳細について説明する。すなわち、図6のフローチャートは、図4におけるステップS200の処理の流れについてより詳細に説明したフローチャートである。
 なお、前述したように、各世代の反応物リストXは、任意的構成要件として、反応物を表す化合物xk1…xknの他に、特殊操作を表す特殊化合物xnull、xintra等を含んでもよい。これらの特殊化合物については後で説明することとし、ここでは、まず、各世代の反応物リストXが、これらの特殊化合物を含まない場合について説明する。
 また、以下、説明が複雑になるのを避けるため、図6においては、生成物リストの生成に用いられる化学反応が、2つの反応物から1つの生成物を生成する化学反応である場合について説明する。
 はじめに、ステップS210において、処理回路100は、発生機能100aにより、生成物リスト110bにおいて、第p世代の生成物リストYの生成を開始する。ここで、処理回路100は、発生機能100aにより、第0世代の反応物リストX、第1世代の反応物リストX、第2世代の反応物リストX、…第p世代の反応物リストXに基づいて、各p世代の生成物リストYの生成を開始する。処理回路100が発生機能100aにより生成物リストYの生成を開始した直後においては、生成物リストYは、空集合である。第p世代まで処理が行われる場合、このようにして、生成された生成物リストY、Y…Yp0の和集合が、機械学習の学習用データとして用いられるデータとなる。換言すると、処理回路100は、発生機能100aにより、生成された生成物リストY、Y…Yp0の和集合として、機械学習の学習用データとして用いられるデータを生成する。
 まず、ステップS220において、処理回路100は、発生機能100aにより、第0世代の反応物リストX、第1世代の反応物リストX、第2世代の反応物リストX、…第p世代の反応物リストXのいずれかの反応物リストから要素を一つ選択し、第1の要素xとして抽出する。
 例えば、第0世代の反応物リストX={x01、02}、第1世代の反応物リストX={x11、x12}としてx01=「CHOH」、x02=「CH」、x11=「CHCOOH」、x12=「CCOOH」、p=1の場合を考える。この場合、例えば、ステップS220において、処理回路100は、発生機能100aにより、第0世代の反応物リストXから要素を一つ選択し、要素x02=「CH」を、第1の要素xとして抽出する。また、別の例として、ステップS220において、処理回路100は、発生機能100aにより、第1世代の反応物リストXから要素を一つ選択し、要素x12=「CCOOH」を、第1の要素xとして抽出する。
 続いて、ステップS230において、処理回路100は、発生機能100aにより、第p世代の反応物リストXから要素を一つ選択し、第2の要素xとして抽出する。例えば、p=1の場合、ステップS230において、処理回路100は、発生機能100aにより、第1世代の反応物リストXから要素を一つ選択し、要素x11=「CHCOOH」を、第2の要素xとして抽出する。このようにして、ステップS220及びステップS230において、処理回路100は、発生機能100aにより、反応物リストから、1以上の化合物を抽出する。
 なお、処理回路100は、発生機能100aにより、様々な第1の要素x及び第2の要素xについて、ステップS220~ステップS280の処理を繰り返す。
 なお、当該繰り返し処理において、処理回路100は、すべての第1の要素x及び第2の要素xの組み合わせについてステップS220~ステップS280の処理を行ってもよいし、逆に、第1の要素x及び第2の要素xの取りうる組み合わせのうち一部の組み合わせについてのみ、ステップS220~ステップS280の処理を行ってもよい。
 続いて、ステップS240及びステップS250において、処理回路100は、発生機能100aにより、選択された要素から、化学反応が行われる部分構造を選択する。
 ステップS240において、処理回路100は、発生機能100aにより、ステップS220で抽出された第1の要素xから、第1の部分構造yを抽出する。例えば、ステップS240で抽出された第1の要素xが、「CCOOH」の場合、この構造は、「R-COOH」の形の構造とマッチすることから、ステップS240において、処理回路100は、発生機能100aにより、y=「COOH」として、第1の部分構造yを抽出する。また、部分構造の抽出の別の例として、ステップS240で抽出された第1の要素xが、「CCOOH」の場合、この構造は、「R-H」の形の構造とマッチすることから、ステップS240において、処理回路100は、発生機能100aにより、y=「H」として、第1の部分構造yを抽出する。
 また、同様に、ステップS250において、処理回路100は、発生機能100aにより、ステップS240において抽出された第2の要素xから、第2の部分構造yを抽出する。
 なお、処理回路100は、発生機能100aにより、様々な第1の部分構造y及び第2の部分構造yについて、ステップS240~ステップS280の処理を繰り返す。
 続いて、処理回路100は、発生機能100aにより、記憶部120から化学反応リスト110cを読み出し、ステップS240及びステップS250で抽出した構造が、化学反応リスト110cに記載された化学反応に含まれるかどうかを判定する。第1の部分構造yと第2の部分構造yとが、化学反応リストと一致しない場合(ステップS260No)、新たな第1の部分構造y及び第2の部分構造yについて、ステップS240~ステップS280の処理が繰り返される。一方、第1の部分構造yと第2の部分構造yが、化学反応リストと一致する場合(ステップS260 Yes)、処理は、ステップS265に進む。例えば、第1の部分構造yが、「COOH」であり、第2の部分構造yが「H」であった場合、これらの部分構造は、化学反応リスト{「X-CO-X」、{「X-COOH」、「X-H」}とマッチする。従って、このような場合、処理回路100は、発生機能100aにより、当該化学反応により新たな化合物を生成することが可能と判定し、処理はステップS265へと進む。
 このようにして、処理回路100は、発生機能100aにより、ステップS220及びS230で抽出された1以上の化合物が反応物となるような化学反応を化学反応リスト110cから抽出する。
 続いて、ステップS265において、処理回路100は、発生機能100aにより、記憶部120から禁止反応リスト110dを読み出し、ステップS240で抽出した第1の部分構造y及びステップS250で抽出した第2の部分構造yが、禁止規則と一致するかどうかを判定する。第1の部分構造yと第2の部分構造yとが、禁止規則と一致する場合(ステップS265Yes)、この部分構造の組み合わせについては、処理回路100は新たな処理を行わず、新たな第1の部分構造y及び第2の部分構造yについて、ステップS240~ステップS280の処理が繰り返される。例えば、第1の部分構造yが、「-COOH」であり、第2の部分構造yが「-CO-CH-CO-」であった場合、これらの部分構造は、禁止反応リスト{「X-CO-CHX-CO-X」、{「X-COOH」、「X-CO-CHX-CO-X」}とマッチする。従って、このような場合、処理回路100は、発生機能100aにより、当該化学反応により生成された新たな化合物について商業的な価値がないと判定し、この部分構造の組み合わせについては、処理回路100は新たな処理を行わず、新たな第1の部分構造y及び第2の部分構造yについて、ステップS240~ステップS280の処理が繰り返される。一方、第1の部分構造yと第2の部分構造yが、禁止規則と一致しない場合(ステップS265 No)、処理は、ステップS270に進み、得られた生成物が、生成物リストYに追加される。
 このようにして、処理回路100は、発生機能100aにより、禁止規則に更に基づいて、生成物リストYを生成する。なお、上述の例では、化学反応ベースで禁止規則を定める場合、すなわち禁止規則が、ステップS260における化学反応リストから除外される化学反応を定める規則である場合について説明したが、実施形態はこれに限られない。すなわち、生成物や反応物ベースで禁止規則を定めてもよい。換言すると、禁止規則は、生成物リストYから除外される生成物や、生成物リストYから除外される生成物に対応する反応物を定める規則であってもよい。なお、実施形態は上述の例に限られず、化学反応リストから除外される化学反応を定める規則である禁止規則ではなく、化学反応リストに組み入れられる化学反応を定める規則である許可規則に基づいて、処理回路100が発生機能100aにより生成物リストYを定めても良い。
 続いて、ステップS270において、処理回路100は、発生機能100aにより、化学反応リストに基づいて生成物ymnを生成する。例えば、第1の要素xが、「CCOOH」であり、第2の要素xが「CH」であり、第1の部分構造yが「-COOH」であり、第2の部分構造yが「-H」であり、当該化学反応リストが{「X-CO-X2」、{「X-COOH」、「X-H」}}の場合、処理回路100が発生機能100aにより生成する生成物ymnは、「C-CO-CH」となる。
 続いて、ステップS275において、処理回路100は、発生機能100aにより、ステップS270において生成された生成物ymn、すなわち生成物リストYの候補となる化合物が、以前に生成された生成物リストの中に含まれているかどうか、すなわち以前の処理においてすでに生成された化合物であるか否かについて判定を行う。処理回路100が、発生機能100aにより、ステップS270において生成された生成物ymnが、以前に生成された生成物リストの中に含まれていると判定した場合、すなわち以前の処理においてすでに生成された化合物であると判定した場合(ステップS275 Yes)、処理回路100は、当該生成物ymnについては、第p世代の生成物リストYに含めず、新たな第1の部分構造y及び第2の部分構造yについて、ステップS240~S280の処理を繰り返す。
 一方、処理回路100が、発生機能100aにより、ステップS270において生成された生成物ymnが、以前の処理においてすでに生成された化合物でないと判定した場合(ステップS275 No)、処理はステップS280に進み、処理回路100は、当該生成物ymnを、第p世代の生成物リストYに対して追加する。このようにして、処理回路100は、発生機能100aにより、ステップS260で抽出された化学反応の生成物ynmであって、ステップS270で生成された生成物を、1以上の化合物からなる生成物Yのリストに追加する。
 処理回路100は、発生機能100aにより、与えられた第1の要素x及び第2の要素xについて、第1の部分構造y及び第2の部分構造yを変えながら、様々な第1の部分構造y及び第2の部分構造yについて、ステップS240~S280の処理を繰り返す。また、処理回路100は、発生機能100aにより、様々な第1の要素x及び第2の要素xについて、ステップS220~ステップS280の処理を繰り返す。
 なお、実施形態は、上述の例に限られない。
 図6において、化合物の生成に用いられる化学反応が、2個の反応物から1個の生成物を生成する化学反応(反応の次元数が2)である場合について説明したが、実施形態はこれに限られない。一例として、化合物の生成に用いられる化学反応は、3個の反応物から1個の生成物を生成する化学反応(反応の次元数が3)であってもよく、また、1個の反応物から2個の生成物を生成する化学反応であってもよく、また1個の反応物から当該反応物とは異なる1個の生成物を生成する化学反応であってもよい。
 例えば、化合物の生成に用いられる化学反応が、3個の反応物から1個の生成物を生成する化学反応である場合について説明する。かかる場合、ステップS220~ステップS230に代えて、処理回路100は、発生機能100aにより、第0~p世代の反応物リストX~Xのいずれかの反応物リストから第1の要素xm1を抽出し、第0~p世代の反応物リストX~Xのいずれかの反応物リストから第2の要素xm2を抽出し、第p世代の反応物リストXから第3の要素xm3を抽出する。また、ステップS240~ステップS250に代えて、処理回路100は、発生機能100aにより、第1の要素xm1から第1の部分構造ym1を抽出し、第2の要素xm2から第2の部分構造ym2を抽出し、第3の要素xm3から第3の部分構造ym3を抽出する。処理回路100は、発生機能100aにより、与えられた第1の要素xm1、第2の要素xm2、第3の要素xm3の組み合わせについて、様々な第1の部分構造ym1、第2の部分構造ym2、第3の部分構造ym3について同様の処理を行い、これらの処理を、様々な、第1の要素xm1、第2の要素xm2、第3の要素xm3の組み合わせについて行う。
 また、例えば、化合物の生成に用いられる化学反応が、1個の反応物から2個の生成物を生成する化学反応である場合について説明する。かかる場合、ステップS220~ステップS230に代えて、処理回路100は、発生機能100aにより、第p世代の反応物リストXから要素xを抽出する。また、ステップS240~ステップS250に代えて、処理回路100は、発生機能100aにより、要素xから部分構造yを抽出する。ステップS260において、処理回路100は、発生機能100aにより、部分構造yがマッチする化学反応を化学反応リスト110cから取得し、ステップS265において禁止規則のチェックを行ったのち、ステップS270において、当該化学反応リストに基づいて、2つの生成物ym:1、m;2を生成する。ステップS275において、これらの生成物それぞれが、すでに生成された化合物であるか否かの判定を行ったのち、すでに生成された化合物でなければ、ステップS280において、生成物を、第p世代の生成物リストYに追加される。
 これらの処理は、化合物の生成に用いられる化学反応が、q個の反応物からr個の生成物を生成する化学反応である場合に、容易に一般化できる。
 なお、化合物の生成に用いられる化学反応は、例えば、反応物「R-OH」から、生成物「R-Br」を生成する化学反応のように、1個の反応物から1個の生成物を生成する化学反応であってもよい。当該化学反応は、例えば、{{「R-Br」}、{「R-OH」}}のように表現できる。
 また、実施形態では、発生機能100aを有する処理回路100が、ステップS220において、第0世代~第p世代の反応物リストX~Xから第1の要素xを抽出し、ステップS230において、第p世代の反応物リストXから第2の要素xを抽出する場合について説明したが、実施形態はこれに限られない。例えば、発生機能100aを有する処理回路100は、ステップS230においても、第0世代~第p世代の反応物リストX~Xから第2の要素xを抽出してもよい。
 続いて、図6において、反応物リストXが、特殊化合物xnullを要素として含む場合について説明する。特殊化合物xnullは、化合物を選択しない操作を示す特殊な要素であり、特殊化合物xnullが選択された場合には、化合物が選択されなかったものとして取り扱われる。
 例えば、反応物リストXが、通常の化合物であるn個の要素x、x…x及び特殊化合物xnullからなる要素n+1個のリストであり、このリストから、重複を許して3個の要素を抽出する場合を考える。特殊化合物xnull以外の化合物が、x、x、xのように3個抽出された場合、処理回路100は、発生機能100aにより、反応物がx、x、xの3個である3次元反応を抽出する。また、xnullが1回抽出され、xnull以外の化合物が、x、xのように2個抽出された場合、1個の化合物が選択されなかったものとして取り扱われ、処理回路100は、発生機能100aにより、反応物がx、xの2個である2次元反応を抽出する。また、xnullが2回抽出され、xnull以外の化合物が、xのように1個抽出された場合、2個の化合物が選択されなかったものとして取り扱われ、処理回路100は、発生機能100aにより、反応物がxの1個である1次元反応を抽出する。このように、反応物リストXを、n個の化合物x、x…x及び特殊化合物xnullからなる要素n+1個のリストとし、ここから重複を許してd個の要素を抽出することで、処理回路100は、発生機能100aにより、反応物の個数が1からdまでの、すなわち反応の次元がd以下の化学反応を、もれなく数え上げることができる。すなわち、反応物リストXが化合物を選択しない操作を要素xnullとして含み、処理回路100が発生機能100aにより、反応部リストXから、化合物の抽出に代えて要素xnullを抽出することで、要素xnullを抽出しなかった時と比較して少ない個数の反応物に係る化学反応により得られる化合物を、生成物リストYに追加することができる。
 また、反応物リストXは、ある一つの化合物の構造を変換してもとの化合物とは異なる一つの化合物とする操作を要素として含んでもよい。ここで、「ある一つの化合物の構造を変換してもとの化合物とは異なる一つの化合物とする操作」の例としては、分子内反応、異性化、官能基の置換等の操作が考えられる。
 かかる操作について、図7を用いて、分子内反応の場合を例にとり説明する。図7は、第1の実施形態に係る化学構造発生装置が行う処理について説明した図である。
 まず、分子内反応でない通常の化学反応の場合について説明する。反応物リストXの含まれる化合物xが、図7に示される化合物15である場合について考える。ここで、分子内反応でない通常の化学反応の場合、図7の中段に示されるように、化合物15が2分子集まって化合物16が生成される。かかる場合、当該化学反応の反応物は、{「化合物15」、「化合物15」}、当該化学反応の生成物は、「化合物16」、当該化学反応は、{{「化合物16」}、{{「化合物15」、「化合物15」}と表される。
 次に、分子内反応を含む場合について考える。分子内反応が存在する場合、図7の下段に示されるように、化合物15の1分子に分子内反応が起こることにより、化合物17が生成される。かかる場合、当該化学反応の反応物を、「化合物15」、当該化学反応の生成物を、「化合物17」、当該化学反応を、{「化合物17」、「化合物15」}と表現することも可能であるが、以下のように、発生機能100aを有する処理回路100は、分子内反応を行う操作xintraを、反応物リストXに含まれる要素として取り扱うこともできる。すなわち、発生機能100aを有する処理回路100は、当該反応の反応物を、分子内反応を行う操作xintraに対応する特殊要素を用いて、{「化合物15」、xintra}、当該化学反応の生成物を「化合物17」、当該化学反応を、{{「化合物17」}、{「化合物15」、xintra}}として表現した上で、図6で説明した処理を行う。発生機能100aを有する処理回路100は、分子内反応を行う操作xintraを、反応物リストXに含まれる要素として取り扱うことにより、反応物リストのいずれかの化合物に対して分子内反応を行って得られる化合物を生成物リストYに追加する。この例で示されるように、分子に対する操作を、分子の候補の集合に含まれる要素として取り扱うことにより、発生機能100aを有する処理回路100は、例えば分子内反応等の操作により得られる分子の候補を、系統的に発生させることができる。
 なお、ステップS270で処理回路100が発生機能100aにより生成する生成物ynmは、通常何らかの化学構造(化合物)であるが、実施形態はこれに限られない。例えば、ステップS270において、処理回路100は、発生機能100aにより、特殊化合物xnullやxintraなどを、生成物ynmとして発生させてもよい。例えば、処理回路100は、発生機能100aにより、反応物として選択されたすべての要素がxnullである場合、ステップS270において、xnullを、生成物として発生させる。また、処理回路100は、発生機能100aにより、反応物として選択されたすべての要素がxintraである場合、ステップS270において、xintraを、生成物として発生させる。なお、反応物として特殊化合物のみが選択された場合、図6のステップS240、ステップS250、ステップS260、ステップS265、ステップS275等の処理は実行されることを要しない。
 以上のように、第1の実施形態に係る化学構造発生装置1によれば、処理回路100は、発生機能100aにより、1以上の化合物からなる反応物リストと、化学反応リストとに基づいて、1以上の化合物からなる生成物リストを生成し、制御機能100bにより、生成物リストを新たな反応物リストとして与え、新たな反応物リスト及び化学反応リストに基づいて発生部に新たな生成物リストを生成させる。これにより、機械学習の学習用データとして用いられるのに適切な分子構造であって、商業的に価値がある分子構造、実際に製造可能な分子構造を効率的に発生させることができる。
(第2の実施形態)
 第2の実施形態においては、商業的に価値がある分子構造を更に効率的に発生させる方法として、候補となる化合物それぞれに数値情報を付与し制御を行うことで、商業的に価値がある分子構造を更に効率的に発生させる化学構造発生装置について説明する。
 第2の実施形態においては、化学構造発生装置1は、候補となる化合物それぞれについて、数値情報リスト110eに基づいて数値情報を付与し、当該数値情報を基に制御を行う。ここで、化合物それぞれに対して、付与される数値情報とは、例えば当該化合物を生成するのに必要なコストを示す情報である。
 典型的な場合においては、各化合物それぞれについて、当該数値情報が付与される。
 例えば、第p世代目の反応物リストXが、化合物x、x2、…xからなり、化合物x、x2、…、xを生成するコストがそれぞれ、w、w2、…、wである場合を考える。この場合、第p世代の反応物リストに対応する数値情報リストWの各要素は、それぞれ、w、w2、…wとなる。
 なお、発生機能100aを有する処理回路100は、反応物リスト110aと数値情報リスト110eとを統合して、化合物それぞれに対して、数値情報が属性(attribute)として設定された一つの化合物リストX’={x(w)、x(w)、…x(w)}を生成することもできる。
 なお、処理回路100は、発生機能100aにより、それぞれの化合物に対して、当該数値情報を算出する。具体的には、発生機能100aを有する処理回路100は、数値情報が既知である化合物については既知の数値情報を数値情報として与え、それ以外の化合物の数値情報については、当該化合物の合成経路に基づいて、当該化合物の反応物の数値情報を基に数値情報を、数値情報が既知であるような化合物にたどり着くまで再帰的に定義する。
 図8及び図9を用いて、かかる処理の流れについて具体的に説明する。図8及び図9は、第2の実施形態に係る化学構造発生装置が行う処理の流れを示すフローチャートである。図8は、処理の全体の流れを表すフローチャートであり、図9は、図8のステップS200Aの処理について説明したフローチャートである。なお、図8及び図9において、第1の実施形態ですでに説明した処理については、繰り返しての説明は割愛する。
 はじめに、処理回路100は、発生機能100aにより、化合物リストの生成を開始する(ステップS100A)。処理回路100は、発生機能100aにより、初期状態においてはp=0として、第0世代の反応物リストX及び、当該反応物に対する数値情報リストWに基づいて、pを増加させながら、第p世代の反応物リストX及び第p世代の反応物リストXの反応物それぞれに対応する数値情報リストWを、それぞれ化合物リスト及び数値情報リスト(コスト情報のリスト)として生成する。一例として、発生機能100aを有する処理回路100は、反応物リストX={x1、、…x}及び数値情報等の情報(コスト情報)のリストW={w、w2、…、}を初期生成し、それらを基に、反応物に数値情報が対応づけられた、反応物リストX’={x(w)、x(w)、…、x(w)}を初期生成し、化合物リストの生成を開始する。
 続いて、処理回路100は、発生機能100aにより、反応物リスト110aである第p世代の反応物リストXと、化学反応のリストである化学反応リスト110cとに基づいて、第p世代の生成物リストYを、生成物リスト110bとして生成する。この処理とともに、処理回路100は、発生機能100aにより、第p世代の生成物リストYの生成物それぞれに対応する数値情報リストWもあわせて算出する。すなわち、発生機能100aを有する処理回路100は、第p世代の生成物リストYを、各生成物に数値情報が対応づけられた形で生成する(ステップS200A)。ステップS200Aの詳細な処理については、図9であらためて説明する。
 続いて、処理回路100は、制御機能100bにより、第p世代の生成物リストY及び当該生成物それぞれに対応する数値情報リストWを、それぞれ新たな反応物リスト(第p+1世代の反応物リストXp+1)及び新たな数値情報リストWp+1として、発生機能100aに係るプログラムに与える(ステップS300A)。このように、制御機能100bを有する処理回路100は、各生成物に数値情報が対応づけられた、第p世代の生成物リストYを新たな反応物リスト(第p+1世代の反応物リストXp+1)として、発生機能100aに係るプログラムに与える。
 続いて、処理回路100は、制御機能100bにより、pの値を1増加させる(ステップS400)。続いて、処理回路100は、制御機能100bにより、新たな反応物リストXが空集合か否かを判定する。第2の実施形態においては、発生機能100aを有する処理回路100は、数値情報リストWを用いた制御を行い、生成される化合物を抑制するので、pが大きくなるに従い、新たな反応物リストXの要素数が自然に減少していく。従って、制御機能100bを有する処理回路100は、新たな反応物リストXが空集合になるpをもって、pに関する処理のエンドポイントとすることができる。
 すなわち、新たな反応物リストXが空集合の場合(ステップS500A Yes)、処理は終了し、新たな反応物リストXが空集合でない場合(ステップS500A No)、処理はステップS200Aに戻る。このような処理の停止条件を行うことで、例えばコストが与えられた閾値未満の化合物であって、商業的に価値の大きい化合物を、効率よく発生させることができる。
 続いて、図9を用いて、ステップS200Aの処理の詳細について説明する。なお、図9においては、反応物それぞれに対応する数値情報リストWが、当該反応物それぞれの生成物としてのコストを表す情報である場合について説明する。
 なお、図6と同様、図9においては、生成物リストの生成に用いられる化学反応が、2つの反応物から1つの生成物を生成する化学反応である場合について説明するが、実施形態は、すでに述べたように、反応物または生成物の数がこれと異なる場合にも、同様に適用できる。
 はじめに、ステップS210Aにおいて、処理回路100は、発生機能100aにより、生成物リスト110bにおいて、第p世代の生成物リストYの生成を開始する。処理回路100が発生機能100aにより生成物リストYの生成を開始した直後においては、生成物リストYは、空集合である。
 第1の実施形態と同様に、ステップS220Aにおいて、処理回路100は、発生機能100aにより、第0世代の反応物リストX、第1世代の反応物リストX、第2世代の反応物リストX、…第p世代の反応物リストXのいずれかの反応物リストから要素を一つ選択し、第1の要素xとして抽出する。
 続いて、ステップS230Aにおいて、処理回路100は、発生機能100aにより、第p世代の反応物リストXから要素を一つ選択し、第2の要素xとして抽出する。このようにして、ステップS220及びステップS230において、処理回路100は、発生機能100aにより、反応物リストから、1以上の化合物を抽出する。
 なお、処理回路100は、発生機能100aにより、様々な第1の要素x及び第2の要素xについて、ステップS220A~ステップS280Aの処理を繰り返す。
 続いて、ステップS231において、処理回路100は、発生機能100aにより、ステップS220Aで選択された第1の要素xと、ステップS230Aで選択した第2の要素xとを含む反応について、反応物のコスト(原料コストの和)を算出する。ここで、生成物のコストは、反応物のコスト(原料コストの和)と、化学反応を行うのに係るコストとの和であるが、原料コストの和の時点で許容コストを超過していた場合、化学反応に係るコストを考えるまでもなく、生成物のコストが、最大許容コストを超過することになる。従って、発生機能100aを有する処理回路100は、部分構造に係るループに入る前のステップS232において、枝刈り処理を行う。
 すなわち、反応物のコスト、例えばステップS220Aで選択された第1の要素xに係るコストwと、ステップS230Aで選択した第2の要素xに係るコストwの和w+wが、許容コストを超えた場合(ステップS232 No)、発生機能100aを有する処理回路100は、ステップS220A及びステップS230で選択された第1の要素x及び第2の要素xは適切な要素でないと判断し、新たな第1の要素x及び第2の要素xについて、ステップS220A~ステップS280Aの処理を繰り返す。一方、反応物のコスト、例えばステップS220Aで選択された第1の要素xに係るコストwと、ステップS230Aで選択した第2の要素xに係るコストwの和w+wが、許容コストを超えない場合(ステップS232 Yes)、処理はステップS240へと進む。
 続いて、ステップS240及びステップS250において、処理回路100は、発生機能100aにより、選択された要素から、化学反応が行われる部分構造を選択する。例えば、ステップS240において、処理回路100は、発生機能100aにより、ステップS220で抽出された第1の要素xから、第1の部分構造yを抽出する。また、同様に、ステップS240において、処理回路100は、発生機能100aにより、ステップS230において抽出された第2の要素xから、第2の部分構造yを抽出する。
 なお、処理回路100は、発生機能100aにより、様々な第1の部分構造y及び第2の部分構造yについて、ステップS240~ステップS280Aの処理を繰り返す。
 続いて、処理回路100は、発生機能100aにより、記憶部120から化学反応リスト110cを読み出し、ステップS240及びステップS250で抽出した構造が、化学反応リスト110cに記載された化学反応に含まれるかどうかを判定する。第1の部分構造yと第2の部分構造yとが、化学反応リストと一致しない場合(ステップS260No)、新たな第1の部分構造y及び第2の部分構造yについて、ステップS240~ステップS280Aの処理が繰り返される。一方、第1の部分構造yと第2の部分構造yが、化学反応リストと一致する場合(ステップS260 Yes)、処理は、ステップS270に進む。
 このようにして、処理回路100は、発生機能100aにより、ステップS220A及びS230Aで抽出された1以上の化合物が反応物となるような化学反応を化学反応リスト110cから抽出する。
 続いて、ステップS270において、処理回路100は、発生機能100aにより、化学反応リストに基づいて生成物ymnを生成する。
 続いて、ステップS275において、処理回路100は、発生機能100aにより、ステップS270において生成された生成物ymn、すなわち生成物リストYの候補となる化合物が、以前に生成された生成物リストの中に含まれているかどうか、すなわち以前の処理においてすでに生成された化合物であるか否かについて判定を行う。処理回路100が、発生機能100aにより、ステップS270において生成された生成物ymnが、以前に生成された生成物リストの中に含まれていると判定した場合、すなわち以前の処理においてすでに生成された化合物であると判定した場合(ステップS275 Yes)、処理回路100は、当該生成物ymnについては、第p世代の生成物リストYに含めず、新たな第1の部分構造y及び第2の部分構造yについて、ステップS240~S280の処理を繰り返す。
 一方、処理回路100が、発生機能100aにより、ステップS270において生成された生成物ymnが、以前の処理においてすでに生成された化合物でないと判定した場合(ステップS275 No)、処理はステップS271Aに進む。
 ステップS271Aにおいて、発生機能100aを有する処理回路100は、ステップS270において生成された生成物ymnについて、生成コストwmnの算出を行う。ここで、生成コストwmnは、反応物のコストの和w+wと、化学反応のコストzmnとの和である。すなわち、発生機能100aを有する処理回路100は、生成物リストYの候補となる化合物ymnそれぞれに対応する数値情報を、候補となる化合物の原料となる反応物のコストの和w+wと、反応物から候補となる化合物ymnを生成する化学反応{ymn、{xm、}}に係るコストzmnとの和を用いて生成する。ここで、発生機能100aを有する処理回路100は、化学反応のコストzmnを、化学反応リスト110cから取得する。化学構造発生装置1は、化学反応リスト110cに、化学反応と、当該化学反応のコストとを、関連付けて記憶部120に保存する。
 続いて、ステップS272において、処理回路100は、発生機能100aにより、ステップS271Aで算出された生成物ymmの生成コストwmnが、最大許容コストcmax以下であるか否かを判定する。生成コストwmnが、最大許容コストcmax以下でない場合、(ステップS272 No)、当該生成物ymnは、生成物リストYに追加されず、新たな第1の部分構造y及び第2の部分構造yについて、ステップS240~ステップS280Aの処理が繰り返される。一方、生成コストwmnが、最大許容コストcmax以下である場合、(ステップS272 Yes)、処理はステップS280Aに進む。
 このように、発生機能100aを有する処理回路100は、生成物リストYの候補となる化合物ymnを生成する際に、候補となる化合物ymnそれぞれに対応する数値情報である生成コストwmnをステップS271Aにおいて算出し、算出した数値情報である生成コストwmnに基づいて、ステップS272において、候補となる化合物ymnを、生成物リストYに含めるか否かを決定する。
 すなわち、反応物リストXに含まれる反応物のそれぞれには、反応物のコストを表す情報が対応づけられ、発生機能100aを有する処理回路100は、反応物のコストを表す情報にもとづいて、生成物リストYの候補となる化合物ymnのコストwmnをステップS271Aにおいて算出し、算出した生成物リストYの候補となる化合物ymnのコストwmnを、ステップS272において予め設定された閾値である最大許容コストcmaxと比較し、コストwmnが閾値である最大許容コストcmaxを上回る場合(ステップS272 No)、候補となる化合物ymnを、生成物リストYに含めない。
 ステップS280Aにおいて、処理回路100は、当該生成物ymnを、第p世代の生成物リストYに対して追加し、生成物ymnの生成コストwmnを、第p世代の数値情報リストWに対して追加する。このようにして、処理回路100は、発生機能100aにより、1以上の化合物からなる生成物Yのリストに追加する。
 処理回路100は、発生機能100aにより、与えられた第1の要素x及び第2の要素xについて、第1の部分構造y及び第2の部分構造yを変えながら、様々な第1の部分構造y及び第2の部分構造yについて、ステップS240~S280Aの処理を繰り返す。また、処理回路100は、発生機能100aにより、様々な第1の要素x及び第2の要素xについて、ステップS220A~ステップS280Aの処理を繰り返す。
 実施形態は、上述の例に限られない。
 実施形態では、化合物それぞれに対応する数値情報リストWが、当該化合物のコストを表す情報である場合について説明したが、実施形態は、これに限られない。例えば、化合物それぞれに対応する数値情報リストWは、化合物ごとに定められたスコアであってもよい。一例として、発生機能100aを有する処理回路100は、化合物ごとに、単純な原料の価格のみならず、取扱いの技術的難易度、原料の調達容易性、マーケット需要など様々な要因を基に総合的な商業的有用性を判断して化合物ごとにスコアを定め、当該スコアが高い、あるいは一定の閾値を上回るものを優先的に次の世代の反応物リストに追加してもよい。ここで、化合物ごとに定められるスコアは、スコアが高いほど望ましい化合物を示すようなスコアであってもよいし、逆にスコアが低いほど望ましい化合物を示すようなスコアであってもよい。また、化合物それぞれに対応する数値情報リストWの例として、化合物の物性に関する情報、例えば、分子量、蒸気圧、沸点、融点、双極子モーメント、油水分配係数(例えばlogP)等が用いられても良い。
 また、実施形態では、発生機能100aを有する処理回路100が、生成物リストYの候補となる化合物を生成する際に、候補となる化合物それぞれに対応する数値情報を更に算出し、算出した数値情報に基づいて、候補となる化合物を、生成物リストYに含めるか否かを決定する場合について説明した。しかしながら、実施形態はこれに限られない。例えば、発生機能100aを有する処理回路100が、生成物リストYの候補となる化合物を生成する際に、候補となる化合物それぞれに対応する数値情報ではない情報を更に算出し、算出した情報に基づいて、候補となる化合物を、生成物リストYに含めるか否かを決定してもよい。ここで、数値情報ではない情報の例としては、例えば特定の置換基を含むか否かの情報や、公的期間による危険物分類等の情報が挙げられる。かかる場合、例えば、発生機能100aを有する処理回路100は、生成物リストの候補となる化合物が、特定の置換基を含んでいたり、または特定の危険物分類に分類される化合物を、生成物リストYから除外する。
 図9のフローチャートにおける、第1の要素x及び第2の要素xに係る繰り返し処理について、第1の要素x及び第2の要素xの選択を、化合物それぞれの数値情報リストWの内容によらず順次行う場合について説明したが、実施形態はこれに限られない。発生機能100aを有する処理回路100は、化合物それぞれの数値情報に基づく優先順位に従って、例えばコストの低い順やスコアの高い順に従って、第1の要素x及び第2の要素xの探索を行い、生成物リストYの候補ymnを発生させてもよい。
 また、実施形態において、化合物のコストとは、化合物の単純な価格のみを示す情報に限られず、例えば安全管理の難易度や原料の調達容易性や安定性等、価格以外の種々のコストを含めてもよい。
 また、実施形態における数値情報は、スカラー量の形式での数値情報に限定されず、必要に応じて、ベクトル量またはテンソル量の形式での数値情報であってもよい。
 なお、実施形態では、処理回路100が、第0世代の反応物リストXに基づいて、第p世代の生成物リストYを順次生成していく場合について説明した。すなわち、実施形態では、第0世代の反応物リストXという1つの初期リストをもとに、1つの反応物リストYを生成する場合について説明した。しかしながら、実施形態はこれに限られず、複数の初期リストをもとに、当該複数の初期リストそれぞれに対応する複数の反応物リストを生成してもよい。
 例えば、ある化合物(この化合物自体は必ずしも本化合物発生装置の計算対象ではない)が2以上の原料群(例えば、A群、B群、C群・・・)を必要とする場合に、それぞれの原料群の化合物リスト(A群の化合物リスト、B群の化合物リスト、C群の化合物リスト・・・)を、許容コスト内で生成する場合を考える。
 この時、例えば、処理回路100は、発生機能100aにより、A群の化合物に関する第0世代の反応物リストX0、Aを基に、A群の化合物に関する第p世代の化合物リストYp、Aを生成し、B群の化合物に関する第0世代の反応物リストXを基に、B群の化合物に関する第p世代の化合物リストYを生成し、C群の化合物に関する第0世代の反応物リストX0、Cを基に、C群の化合物に関する第p世代の化合物リストY、cを生成する。
 まず第1のケースとして、各原料群のそれぞれに、許容コストが定められている場合を考える。かかる場合、処理回路100は、発生機能100aにより、各原料群のそれぞれについて、各原料群について定められた許容コストを、図9のステップS272における最大許容コストcmaxとして、すでに説明した処理を実行すればよい。例えば、A群及びB群の2つの2種類の原料群の化合物リストを生成する場合であって、全体の許容コストcが与えられ、またA群の許容コストとB群の許容コストの比が8:2と定められている場合を考える。この場合、処理回路100は、A群については、許容コストはcmax=0.8cであり、B群については、許容コストはcmax=0.2cであるとして、それぞれの処理を行う。
 次に、第2のケースとして、各原料群のそれぞれではなく、原料群全体で、許容コストが定められている場合を考える。かかる場合、処理回路100は、発生機能100aにより、各原料群のそれぞれについて、並行または交互にそれぞれの処理を進めたうえで、図9のステップS272の処理において、他の原料群において生成されている化合物リストの許容コストに関する情報を参照しながら、生成物の生成コストが最大許容コスト以下かどうかを判定する。一例として、A群の化合物リストを生成する処理におけるステップS272の処理において、現在生成されている生成物の生成コストと、B群の化合物リストの中の生成コストの最小値との和が、全体の許容コストを上回った場合、処理回路100は、発生機能100aにより、当該生成物を、生成物リストに追加しない。
 以上の処理を行うことで、処理回路100は、2以上の原料群に関する化合物リストを同時並列的に生成することができる。
 このように、第2の実施形態では、処理回路100は、候補となる化合物それぞれに数値情報を付与し化学構造発生の制御を行う。これにより、機械学習の学習用データとして用いられるのに適切な、商業的に価値がある分子構造を更に効率的に発生させることができる。
 このように、本発明の実施形態によれば、機械学習の学習用データとして用いられるのに適切な分子構造を効率的に発生させることができる。
 なお、本発明の実施形態は、例として提示されたものにすぎず、種々の置き換え、変更等を行うことができる。
 上述の実施形態に関して、発明の選択的な特徴として以下の付記を開示する。
 (付記)
 1以上の化合物からなる反応物リストと、1以上の化合物からなる生成物リストとのうち少なくとも一方のリストを有するデータベースと、化学構造発生装置とを備えるデータ処理システムであって、
 前記化学構造発生装置は、
 前記反応物リストと、化学反応リストとに基づいて、前記生成物リストを生成する発生部と、
 前記生成物リストを新たな反応物リストとして前記発生部に与えるとともに、前記データベースの更新を行い、前記新たな反応物リスト及び前記化学反応リストに基づいて前記発生部に新たな生成物リストを生成させる制御部とを備える。
100 処理回路
100a 発生機能
100b 制御機能
110 データベース
110a 反応物リスト
110b 生成物リスト
110c 化学反応リスト
110d 禁止反応リスト
110e 数値情報リスト
120 記憶部
130 入力装置
140 ディスプレイ

Claims (16)

  1.  1以上の化合物からなる反応物リストと、化学反応リストとに基づいて、1以上の化合物からなる生成物リストを生成する発生部と、
     前記生成物リストを新たな反応物リストとして前記発生部に与えるとともに、前記反応物リストと前記生成物リストとのうち少なくとも一方のリストを有するデータベースの更新を行い、前記新たな反応物リスト及び前記化学反応リストに基づいて前記発生部に新たな生成物リストを生成させる制御部とを備える、化学構造発生装置。
  2.  前記発生部は、前記反応物リストから、1以上の化合物を抽出し、前記化学反応リストから、前記1以上の化合物が反応物になるような化学反応を抽出し、前記化学反応の生成物を前記1以上の化合物からなる生成物リストに追加する、請求項1に記載の化学構造発生装置。
  3.  前記発生部は、生成される前記生成物リストから除外される生成物、又は前記化学反応リストから除外される化学反応を定める規則である禁止規則に更に基づいて、前記生成物リストを生成する、請求項1又は2に記載の化学構造発生装置。
  4.  前記発生部は、前記生成物リストの候補となる化合物が、以前に生成された生成物リストの中に含まれているか否かを判定し、前記候補となる化合物が、以前に生成された生成物リストの中に含まれていると判定した場合、前記候補となる化合物を、前記生成物リストに含めない、請求項1~3のいずれか一つに記載の化学構造発生装置。
  5.  前記反応物のそれぞれには、情報が対応づけられ、
     前記発生部は、前記生成物リストの候補となる化合物を生成する際に、前記候補となる化合物それぞれに対応する情報を更に算出し、算出した前記情報に基づいて、前記候補となる化合物を、前記生成物リストに含めるか否かを決定する、請求項1~4のいずれか一つに記載の化学構造発生装置。
  6.  前記反応物のそれぞれに対応づけられる前記情報は、数値情報である、請求項5に記載の化学構造発生装置。
  7.  前記反応物のそれぞれに対応づけられる前記数値情報は、前記反応物のそれぞれの生成物としてのコストを表す情報であり、
     前記発生部は、前記候補となる化合物それぞれに対応する数値情報を、当該候補となる化合物の原料となる前記反応物のコストと、当該反応物から当該候補となる化合物を生成する化学反応に係るコストとの和を用いて生成する、請求項6に記載の化学構造発生装置。
  8.  前記反応物のそれぞれには、数値情報が対応づけられ、
     前記発生部は、前記数値情報に基づく優先順位に従って、前記生成物リストの候補を発生させる、請求項1~4のいずれか一つに記載の化学構造発生装置。
  9.  前記反応物のそれぞれには、前記反応物のコストを表す情報が対応づけられ、
     前記発生部は、前記反応物のコストを表す情報に基づいて、前記生成物リストの候補となる化合物のコストを算出し、算出した前記生成物リストの候補となる化合物のコストを予め設定された閾値と比較し、
     前記コストが前記閾値を上回る場合、前記候補となる化合物を、前記生成物リストに含めない、請求項5又は6に記載の化学構造発生装置。
  10.  前記反応物リストは、化合物を選択しない操作を、要素として含み、
     前記発生部は、前記反応物リストから、化合物の抽出に代えて前記要素を抽出することで、前記要素を抽出しなかった時と比較して少ない個数の反応物に係る化学反応により得られる化合物を前記生成物リストに追加する、請求項1~9のいずれか一つに記載の化学構造発生装置。
  11.  前記反応物リストは、ある1つの化合物の構造を変換して前記化合物とは異なる1つの化合物とする操作を要素として含む、請求項1~10のいずれか一つに記載の化学構造発生装置。
  12.  前記発生部は、分子内反応を行う操作を、前記反応物リストに含まれる要素として取り扱うことにより、前記反応物リストのいずれかの化合物に対して分子内反応を行って得られる化合物を前記生成物リストに追加する、請求項1~11のいずれか一つに記載の化学構造発生装置。
  13.  前記制御部は、前記発生部が生成した前記生成物リストを、前記データベースとして記憶部に記憶させる、請求項1~12のいずれか一つに記載の化学構造発生装置。
  14.  更新される前記データベースの少なくとも一部は、機械学習における学習用データとして用いられる、請求項1に記載の化学構造発生装置。
  15.  1以上の化合物からなる反応物リストと、化学反応リストとに基づいて、1以上の化合物からなる生成物リストを生成する処理と、
     前記生成物リストを新たな反応物リストとして与える処理と、
     前記反応物リストと前記生成物リストとのうち少なくとも一方のリストを有するデータベースの更新を行う処理と、
     前記新たな反応物リスト及び前記化学反応リストに基づいて新たな生成物リストを生成させる処理と、
     をコンピュータに実行させる、化学構造発生プログラム。
  16.  化学構造発生装置により実行される化学構造発生方法であって、
     1以上の化合物からなる反応物リストと、化学反応リストとに基づいて、1以上の化合物からなる生成物リストを生成し、
     前記生成物リストを新たな反応物リストとして与え、
     前記反応物リストと前記生成物リストとのうち少なくとも一方のリストを有するデータベースの更新を行い、
     前記新たな反応物リスト及び前記化学反応リストに基づいて新たな生成物リストを生成させる、化学構造発生方法。
PCT/JP2020/031178 2019-08-19 2020-08-18 化学構造発生装置、化学構造発生プログラム、及び化学構造発生方法 WO2021033695A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021540953A JPWO2021033695A1 (ja) 2019-08-19 2020-08-18
CN202080058612.XA CN114258573A (zh) 2019-08-19 2020-08-18 化学结构产生装置、化学结构产生程序以及化学结构产生方法
US17/671,745 US20220172803A1 (en) 2019-08-19 2022-02-15 Chemical structure generating device, chemical structure generating program, and chemical structure generating method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-149873 2019-08-19
JP2019149873 2019-08-19

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/671,745 Continuation US20220172803A1 (en) 2019-08-19 2022-02-15 Chemical structure generating device, chemical structure generating program, and chemical structure generating method

Publications (1)

Publication Number Publication Date
WO2021033695A1 true WO2021033695A1 (ja) 2021-02-25

Family

ID=74660988

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/031178 WO2021033695A1 (ja) 2019-08-19 2020-08-18 化学構造発生装置、化学構造発生プログラム、及び化学構造発生方法

Country Status (4)

Country Link
US (1) US20220172803A1 (ja)
JP (1) JPWO2021033695A1 (ja)
CN (1) CN114258573A (ja)
WO (1) WO2021033695A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220198106A1 (en) * 2020-12-22 2022-06-23 Toyota Research Institute, Inc. Simulating tangible material selection processes to determine an optimal tangible material selection process

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030203400A1 (en) * 2000-06-10 2003-10-30 Wolfgang Strehlau Computer-aided optimization of substance libraries
WO2014034577A1 (ja) * 2012-08-27 2014-03-06 株式会社京都コンステラ・テクノロジーズ 化合物設計装置、化合物設計方法、及びコンピュータプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030203400A1 (en) * 2000-06-10 2003-10-30 Wolfgang Strehlau Computer-aided optimization of substance libraries
WO2014034577A1 (ja) * 2012-08-27 2014-03-06 株式会社京都コンステラ・テクノロジーズ 化合物設計装置、化合物設計方法、及びコンピュータプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YOSHIKAWA, SHUNSUKE: "Research on construction of virtual compound library by graph structure transformation with directionality", IPSJ TECHNICAL REPORT BIO INFORMATION SCIENCE (BIO)[ONLINE], no. 12, March 2015 (2015-03-01), pages 1 - 6 *

Also Published As

Publication number Publication date
JPWO2021033695A1 (ja) 2021-02-25
US20220172803A1 (en) 2022-06-02
CN114258573A (zh) 2022-03-29

Similar Documents

Publication Publication Date Title
JP6278639B2 (ja) 初期データ可視化に基づいた、データのための代替可視化の決定方法
Olson et al. Automating biomedical data science through tree-based pipeline optimization
Holland Genetic algorithms and adaptation
Kicinger et al. Evolutionary computation and structural design: A survey of the state-of-the-art
Chaves et al. Adaptive biased random-key genetic algorithm with local search for the capacitated centered clustering problem
Toroslu et al. Genetic algorithm for the personnel assignment problem with multiple objectives
US20070005522A1 (en) Resource assignment optimization using direct encoding and genetic algorithms
Langeveld et al. Set-based particle swarm optimization applied to the multidimensional knapsack problem
Doush et al. Flow shop scheduling with blocking using modified harmony search algorithm with neighboring heuristics methods
Basgalupp et al. Software effort prediction: A hyper-heuristic decision-tree based approach
Kabir et al. Chemical reaction optimization for RNA structure prediction
WO2021033695A1 (ja) 化学構造発生装置、化学構造発生プログラム、及び化学構造発生方法
Czajkowski et al. Evolutionary induction of global model trees with specialized operators and memetic extensions
Zhang et al. An indexed set representation based multi-objective evolutionary approach for mining diversified top-k high utility patterns
Czajkowski et al. Steering the interpretability of decision trees using lasso regression-an evolutionary perspective
Gómez-Méndez et al. Regression with missing data, a comparison study of techniques based on random forests
Sadeghi et al. RCDR: a recommender based method for computational drug repurposing
Nguyen et al. Generating reaction trees with cascaded variational autoencoders
Mehrotra et al. A branch-and-price approach for graph multi-coloring
Attar et al. Automatic generation of adaptive network models based on similarity to the desired complex network
Stone et al. On the synthesis of perturbative heuristics for multiple combinatorial optimisation domains
Stone et al. Automatic generation of constructive heuristics for multiple types of combinatorial optimisation problems with grammatical evolution and geometric graphs
Hafner et al. Functional Ball Dropping: A superfast hypergraph generation scheme
Belabed et al. Association rules algorithms for data mining process based on multi agent system
Pereira et al. Hierarchical classification of transposable elements with a weighted genetic algorithm

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20853955

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021540953

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20853955

Country of ref document: EP

Kind code of ref document: A1