Information processing program, information processing method, and information processing device

JP2026143062APending Publication Date: 2026-09-08FUJITSU LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025030451
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-02-27
Publication Date
2026-09-08

AI Technical Summary

Benefits of technology

【0008】 一態様によれば、最適化計算を実施する際にかかる処理量を低減し易くすることが可能になる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026143062000001_ABST
    Figure 2026143062000001_ABST
Patent Text Reader

Abstract

To make it easier to reduce the amount of processing required when performing optimization calculations. [Solution] The information processing device 100 uses a first optimization calculation method 101 to calculate a density matrix corresponding to each fragment 111 based on predetermined parameters. If a predetermined termination condition is not met, the information processing device 100 uses a second optimization calculation method 102 to update predetermined parameters to maintain consistency between fragments 111. Here, the second optimization calculation method 102 requires less computation than the first optimization calculation method 101. As a result, the information processing device 100 can easily reduce the amount of processing required when performing optimization calculations to update predetermined parameters. Therefore, the information processing device 100 can, for example, easily analyze the structure or properties of molecules that are candidates for drugs or materials, and can contribute to fields such as drug discovery or material development.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing program, an information processing method, and an information processing apparatus. [Background technology]

[0002] Traditionally, quantum chemical calculations have been used in fields such as drug discovery and materials development to analyze the structure or properties of molecules that are candidates for drugs or materials. Quantum chemical calculations, for example, calculate the energy of a molecule. This energy can be either ground energy or excitation energy. To reduce the processing load of quantum chemical calculations, there is a molecular decomposition technique that divides the molecular structure into multiple fragments before calculating the energy.

[0003] Prior art examples include a molecular partitioning method called BE (Bootstrap Embedding), which repeatedly performs a series of processes such as calculating a density matrix corresponding to a fragment and performing optimization calculations to maintain consistency between fragments. Another example is a molecular partitioning method called DMET (Density Matrix Embedding Theory), which treats the interactions between fragments as bus orbitals. [Prior art documents] [Non-patent literature]

[0004] [Non-Patent Document 1] Ye, Hong-Zhou, Henry K. Tran, and Troy Van Voorhis. “Bootstrap embedding for large molecular systems.” Journal of Chemical Theory and Computation 16.8 (2020): 5035-5046. [Non-Patent Document 2] Knizia, Gerald, and Garnet Kin-Lic Chan. “Density matrix embedding: A simple alternative to dynamical mean-field theory.” Physical review letters 109.18 (2012): 186404. [Overview of the Initiative] [Problems that the invention aims to solve]

[0005] However, with conventional techniques, even when using molecular decomposition methods, it can be difficult to reduce the processing load of quantum chemical calculations. For example, there is a problem in that the processing load tends to increase when performing optimization calculations to maintain consistency between fragments.

[0006] In one aspect, the present invention aims to make it easier to reduce the amount of processing required when performing optimization calculations. [Means for solving the problem]

[0007] According to one embodiment, an information processing program, information processing method, and information processing device are proposed that use a first optimization calculation method to calculate a density matrix corresponding to each of a plurality of fragments obtained by dividing the molecular structure based on predetermined parameters, and if a predetermined termination condition is not met, use a second optimization calculation method which requires less computation than the first optimization calculation method, refer to the Jacobian approximation formula, and update the predetermined parameters according to the Newton-Krylov method based on the calculated density matrix to maintain consistency between the plurality of fragments, and repeat the process until the predetermined termination condition is met. [Effects of the Invention]

[0008] According to one embodiment, it becomes easier to reduce the amount of processing required when performing optimization calculations. [BRIEF DESCRIPTION OF THE DRAWINGS]

[0009] [Figure 1] FIG. 1 is an explanatory diagram showing one example of the information processing method according to an embodiment. [Figure 2] FIG. 2 is an explanatory diagram showing one example of an information processing system 200. [Figure 3] FIG. 3 is a block diagram showing a hardware configuration example of an information processing apparatus 100. [Figure 4] FIG. 4 is a block diagram showing a functional configuration example of the information processing apparatus 100. [Figure 5] FIG. 5 is an explanatory diagram showing an operation example of the information processing apparatus 100. [Figure 6] FIG. 6 is a flowchart showing one example of the overall processing procedure. [MODE FOR CARRYING OUT THE INVENTION]

[0010] Hereinafter, with reference to the drawings, embodiments of an information processing apparatus 100, an information processing method, and an information processing program according to the present invention will be described in detail.

[0011] (One Example of the Information Processing Method According to the Embodiment) FIG. 1 is an explanatory diagram showing one example of the information processing method according to an embodiment. The information processing apparatus 100 is a computer for reducing the amount of processing required when performing optimization calculation in the process of performing quantum chemical calculation using a molecular division method. The information processing apparatus 100 is, for example, a server or a PC (Personal Computer).

[0012] Here, quantum chemical calculations involve calculating the energy of a molecule using, for example, a specific optimization calculation method. This energy can be either the ground energy or the excitation energy. Examples of optimization calculation methods include CC (Coupled-Cluster), FCI (Full Configuration Interaction), or VQE (Variational Quantum Eigen-solver). CC, for example, is CCSD (Coupled-Cluster calculation with Single and Double excitations).

[0013] Here, the processing load of quantum chemical calculations tends to increase as the size of the molecule increases. Size refers to factors such as the number of atoms that make up the molecule. For this reason, in order to reduce the processing load of quantum chemical calculations, there are molecular decomposition techniques that divide the molecular structure into multiple fragments before calculating the energy. Examples of molecular decomposition techniques include BE or DMET.

[0014] Specifically, BE divides the molecular structure into multiple fragments. Specifically, BE calculates a density matrix corresponding to each fragment, and if a predetermined termination condition is not met, it performs an optimization calculation based on the density matrix to maintain consistency between fragments. This series of processes is repeated until the predetermined termination condition is met. The optimization calculation is performed, for example, by Newton's method. For more information on BE, see, for example, Non-Patent Document 1 mentioned above.

[0015] However, with conventional techniques, even when using molecular decomposition methods, it can be difficult to reduce the processing load of quantum chemical calculations. For example, when using BE, there is a problem in that the processing load tends to increase when performing optimization calculations to maintain consistency between fragments, making it difficult to reduce the processing load of quantum chemical calculations. Specifically, when performing optimization calculations using Newton's method, the processing load tends to increase when calculating the Jacobian of the objective function.

[0016] On the other hand, a first method can be considered in which the Jacobian of the objective function is calculated using the finite difference method, utilizing relatively high-precision optimization techniques such as CC, FCI, or VQE. In this first method, since relatively high-precision optimization techniques are repeatedly performed, the amount of processing required to calculate the Jacobian of the objective function tends to increase, and the amount of processing required to perform the optimization calculation tends to increase. For more information on this first method, see, for example, Non-Patent Document 1 mentioned above.

[0017] Another approach is to first determine the initial value of the Jacobian using the Hartree-Fock method, and then perform the optimization calculation using a quasi-Newton method. In this second approach, a relatively high-precision optimization method is repeatedly applied when updating the Jacobian, which tends to increase the processing load required for the optimization calculation. For more information on this second approach, see, for example, Reference 1 below.

[0018] Reference 1: Ye, Hong-Zhou, et al. “Bootstrap embedding for molecules.” Journal of chemical theory and computation 15.8 (2019): 4497-4506.

[0019] Furthermore, a third method for approximating the Jacobian can be considered, which combines the finite difference method and the Krylov method. This third method involves repeatedly performing relatively high-precision optimization techniques, which tends to increase the processing load required for optimization calculations. For more information on this third method, see, for example, reference 2 below.

[0020] Reference 2: Knoll, Dana A., and David E. Keyes. “Jacobian-free Newton-Krylov methods: a survey of approaches and applications.” Journal of Computational Physics 193.2 (2004): 357-397.

[0021] Therefore, in this embodiment, we will describe an information processing method that can easily reduce the amount of processing required when performing optimization calculations in the process of performing quantum chemical calculations using molecular decomposition methods.

[0022] In Figure 1, the information processing device 100 can utilize a first optimization calculation method 101. The information processing device 100 can, for example, implement the first optimization calculation method 101 on its own. The first optimization calculation method 101 is, for example, CCSD, FCI, or VQE. The information processing device 100 can utilize a second optimization calculation method 102, which requires less computation than the first optimization calculation method 101. The information processing device 100 can, for example, implement the second optimization calculation method 102 on its own. The second optimization calculation method 102 is, for example, a second-order Meller-Preset method.

[0023] The information processing device 100 acquires structural information that shows the molecular structure 110. The structural information represents, for example, the position and type of each of the one or more atoms that make up the molecule. The structural information also represents, for example, the connection relationships between atoms. The information processing device 100 acquires structural information by accepting input of structural information based on user operation input.

[0024] The information processing device 100 acquires fragment information representing each of the multiple fragments 111 obtained by dividing the molecular structure 110. The fragment information represents, for example, the position and type of each atom of one or more atoms belonging to the fragment 111. The fragments 111 share, for example, one or more atoms. The information processing device 100 acquires fragment information by, for example, accepting input of fragment information based on user operation input.

[0025] The information processing device 100 stores predetermined termination conditions. These predetermined termination conditions are set in advance by the user, for example. One of these predetermined termination conditions is that the density matrices corresponding to each fragment 111 match or are similar. The information processing device 100 repeatedly performs the series of processes shown in (1-1) and (1-2) below until the predetermined termination conditions are met.

[0026] (1-1) The information processing device 100 uses a first optimization calculation method 101 to calculate a density matrix corresponding to each fragment 111 based on predetermined parameters. The predetermined parameters include, for example, the Lagrange multiplier. The predetermined parameters may also include, for example, the chemical potential μ.

[0027] (1-2) If the predetermined termination conditions are not met, the information processing device 100 updates predetermined parameters using the second optimization calculation method 102 to maintain consistency between the multiple fragments 111. For example, the information processing device 100 uses the second optimization calculation method 102 to refer to the Jacobian approximation formula and, based on the calculated density matrix, updates predetermined parameters according to the Newton-Krylov method to maintain consistency between the fragments 111.

[0028] As a result, the information processing device 100 can easily reduce the amount of processing required when performing optimization calculations to update predetermined parameters during the process of performing quantum chemical calculations using molecular partitioning methods. Therefore, the information processing device 100 can easily reduce the amount of processing required when performing quantum chemical calculations.

[0029] (1-3) If predetermined termination conditions are met, the information processing device 100 may calculate the energy of the molecule based on the last updated predetermined parameters and the last calculated density matrix. This allows the information processing device 100 to appropriately calculate the energy of the molecule and complete the quantum chemical calculation. The information processing device 100 can reduce the amount of processing required when performing quantum chemical calculations.

[0030] This description explains how the information processing device 100 accepts structural information input based on user input, but it is not limited to this. For example, the information processing device 100 may acquire structural information by receiving it from another computer.

[0031] Here, we have described a case in which the information processing device 100 accepts fragment information as input, but it is not limited to this. For example, the information processing device 100 may acquire fragment information by receiving fragment information from another computer. For example, the information processing device 100 may acquire fragment information by dividing the molecular structure 110 into multiple fragments 111 based on structural information and generating fragment information.

[0032] Here, we have described the case where the functions of the information processing device 100 are realized by a single computer, but this is not the only case. For example, the functions of the information processing device 100 may be realized through the collaboration of multiple computers. For example, the functions of the information processing device 100 may be realized on the cloud.

[0033] In the following explanation, for the sake of simplicity, we will focus on the Lagrange multiplier among the predetermined parameters, but we are not limited to this. For example, the information processing device 100 may perform an optimization calculation to update the μ of the chemical potential among the predetermined parameters. In this case, the information processing device 100 maintains consistency between the fragments 111 by updating the μ of the chemical potential so that the sum of the number of electrons in each fragment 111 matches the number of electrons in the molecule.

[0034] (An example of information processing system 200) Next, using Figure 2, we will describe an example of an information processing system 200 to which the information processing device 100 shown in Figure 1 is applied.

[0035] Figure 2 is an explanatory diagram showing an example of an information processing system 200. In Figure 2, the information processing system 200 includes an information processing device 100, one or more chemical calculation devices 201, and one or more client devices 202.

[0036] In the information processing system 200, the information processing device 100 and the chemical calculation device 201 are connected via a wired or wireless network 210. The network 210 is, for example, a LAN (Local Area Network), a WAN (Wide Area Network), or the Internet. In the information processing system 200, the information processing device 100 and the client device 202 are connected via a wired or wireless network 210.

[0037] The information processing device 100 is a computer for dividing the structure of a molecule into multiple fragments. The information processing device 100 receives a processing request that asks to perform quantum chemical calculations on a target molecule using a molecular division method. The quantum chemical calculations include, for example, calculating the energy of the target molecule.

[0038] A processing request may include, for example, structural information indicating the structure of the target molecule. This structural information may include, for example, the coordinates of each of the one or more atoms that make up the target molecule. The structural information may also include, for example, the types of each of the one or more atoms that make up the target molecule. A processing request may also include, for example, the number of fragments to be divided into. The number of fragments may be pre-set by the user.

[0039] The information processing device 100 identifies the structure of the target molecule based on the structural information included in the processing request. The information processing device 100 divides the identified structure of the target molecule into multiple fragments equal to the number of divisions, and generates fragment information representing each fragment. The information processing device 100 sets the initial value of the Lagrange multiplier. Based on the fragment information, the information processing device 100 extends the BE and performs quantum chemical calculations to calculate the energy of the target molecule.

[0040] The information processing device 100, for example, repeatedly performs a series of processes until a predetermined termination condition is met. The series of processes includes, for example, a process of calculating a density matrix corresponding to each fragment based on the Lagrange multiplier using a first optimization calculation method. If the predetermined termination condition is not met, the series of processes includes, for example, a process of updating the Lagrange multiplier using a second optimization calculation method to maintain consistency between multiple fragments.

[0041] Specifically, the information processing device 100 can communicate with the chemical calculation device 201 that performs the first optimization calculation method. Specifically, the information processing device 100 controls the chemical calculation device 201 to calculate a density matrix corresponding to each fragment based on the Lagrange multiplier. Specifically, the information processing device 100 can communicate with the chemical calculation device 201 that performs the second optimization calculation method. Specifically, the information processing device 100 controls the chemical calculation device 201 to update the Lagrange multipliers according to the Newton-Krylov method, based on the calculated density matrix with reference to the Jacobian approximation formula, in order to maintain consistency between fragments.

[0042] The information processing device 100 calculates the energy of the target molecule based on the last updated Lagrange multiplier and the last calculated density matrix, for example, when a predetermined termination condition is met. Specifically, the information processing device 100 controls the chemical calculation device 201 to calculate the energy of the target molecule based on the last updated Lagrange multiplier and the last calculated density matrix. Specifically, the information processing device 100 receives the energy of the target molecule from the chemical calculation device 201.

[0043] The information processing device 100 performs quantum chemical calculations on the target molecule and outputs the calculated energy of the target molecule. The output format may be, for example, display on a screen, print to a printer, transmit to another computer, or store in a memory area. The other computer may be, for example, a client device 202. The information processing device 100 may also output the calculated energy of the target molecule in a way that is accessible to the user. The information processing device 100 may be, for example, a server or a PC.

[0044] The chemical calculation device 201 is a computer that performs quantum chemical calculations on molecules. The chemical calculation device 201, under the control of the information processing device 100, uses a first optimization calculation method to calculate the density matrix corresponding to each fragment based on the Lagrangian multiplier. The chemical calculation device 201 may, for example, cooperate with other chemical calculation devices 201 to calculate the density matrix corresponding to each fragment.

[0045] The chemical calculation device 201, in accordance with the control of the information processing device 100, uses a second optimization calculation method and, by referring to the Jacobian approximation formula, updates the Lagrangian multipliers based on the density matrix to maintain consistency between fragments. The update follows, for example, the Newton-Krylov method. The chemical calculation device 201 may update the Lagrangian multipliers in cooperation with, for example, another chemical calculation device 201.

[0046] The chemical computing device 201 calculates the energy of the target molecule based on the last updated Lagrange multiplier and the last calculated density matrix, in accordance with the control of the information processing device 100. The chemical computing device 201 may, for example, cooperate with other chemical computing devices 201 to calculate the energy of the target molecule. The chemical computing device 201 transmits the energy of the target molecule to the information processing device 100. The chemical computing device 201 is, for example, a server or a PC. The chemical computing device 201 may also be, for example, a quantum computer.

[0047] The client device 202 is a computer used by a user who wishes to perform quantum chemical calculations on a target molecule. The user is, for example, a worker. In response to the user's input, the client device 202 generates a processing request that requests to perform quantum chemical calculations on the target molecule using a molecular partitioning method. In response to the user's input, the client device 202 obtains structural information indicating the structure of the target molecule. The client device 202 generates a processing request that includes structural information indicating the structure of the target molecule.

[0048] The client device 202 transmits the generated processing request to the information processing device 100. The client device 202 receives the results of the quantum chemical calculation performed on the target molecule from the information processing device 100. The client device 202 outputs the results of the quantum chemical calculation performed on the target molecule so that the user can refer to them. The client device 202 may be, for example, a PC, a tablet terminal, or a smartphone.

[0049] This explanation describes a case where the information processing device 100 is a different device from the chemical calculation device 201, but it is not limited to this case. For example, the information processing device 100 may have the functionality of a chemical calculation device 201 and may operate as a chemical calculation device 201. In this case, the information processing system 200 does not need to include a chemical calculation device 201.

[0050] This explanation describes a case where the information processing device 100 is a different device from the client device 202, but it is not limited to this case. For example, the information processing device 100 may have the functionality of a client device 202 and may operate as a client device 202. In this case, the information processing system 200 does not need to include a client device 202.

[0051] (Example of hardware configuration of information processing device 100) Next, an example of the hardware configuration of the information processing device 100 will be described using Figure 3.

[0052] Figure 3 is a block diagram showing an example of the hardware configuration of the information processing device 100. In Figure 3, the information processing device 100 includes a CPU (Central Processing Unit) 301, a memory 302, and a network interface 303. The information processing device 100 also includes a recording medium interface 304, a recording medium 305, a display 306, and an input device 307. Each component is connected by a bus 300.

[0053] Here, the CPU 301 is responsible for the overall control of the information processing device 100. The memory 302 includes, for example, ROM (Read Only Memory), RAM (Random Access Memory), and flash ROM. Specifically, for example, flash ROM and ROM store various programs, and RAM is used as the work area for the CPU 301. Programs stored in memory 302 are loaded into the CPU 301, causing the CPU 301 to execute the coded processes.

[0054] The network interface 303 is connected to network 210 via a communication line, and then connects to other computers via network 210. The network interface 303 manages the internal interface with network 210 and controls the input and output of data from other computers. The network interface 303 is, for example, a modem or a LAN adapter.

[0055] The recording medium interface (I / F) 304 controls the reading and writing of data to the recording medium 305 according to the control of the CPU 301. The recording medium interface (I / F) 304 is, for example, a disk drive, an SSD (Solid State Drive), or a USB (Universal Serial Bus) port. The recording medium 305 is a non-volatile memory that stores the data written under the control of the recording medium interface (I / F) 304. The recording medium 305 is, for example, a disk, semiconductor memory, or USB memory. The recording medium 305 may be detachable from the information processing device 100.

[0056] Display 306 displays data such as cursors, icons, toolboxes, documents, images, or functional information. Display 306 is, for example, a CRT (Cathode Ray Tube), a liquid crystal display, or an organic EL (Electroluminescence) display. Input device 307 has keys for inputting characters, numbers, or various instructions, and performs data input. Input device 307 is, for example, a keyboard or a mouse. Input device 307 may also be, for example, a touch panel input pad or a numeric keypad.

[0057] The information processing device 100 may have, in addition to the components described above, a camera, for example. Furthermore, the information processing device 100 may have, in addition to the components described above, a printer, scanner, microphone, or speaker, for example. Also, the information processing device 100 may have multiple recording medium interfaces 304 and recording mediums 305, for example. Furthermore, the information processing device 100 does not necessarily have, for example, a display 306 or an input device 307. Also, the information processing device 100 does not necessarily have, for example, recording medium interfaces 304 and recording mediums 305.

[0058] (Example hardware configuration of chemical calculation system 201) The hardware configuration example of the chemical calculation device 201 is specifically the same as the hardware configuration example of the information processing device 100 shown in Figure 3, so a detailed explanation is omitted.

[0059] (Example hardware configuration for client device 202) The hardware configuration example for client device 202 is specifically the same as the hardware configuration example for information processing device 100 shown in Figure 3, so a detailed explanation is omitted.

[0060] (Example of the functional configuration of the information processing device 100) Next, an example of the functional configuration of the information processing device 100 will be described using Figure 4.

[0061] Figure 4 is a block diagram showing an example of the functional configuration of the information processing device 100. The information processing device 100 includes a storage unit 400, an acquisition unit 401, a setting unit 402, an iteration unit 403, and an output unit 404. The iteration unit 403 includes a calculation unit 411 and an update unit 412.

[0062] The storage unit 400 is implemented by a storage area such as the memory 302 or recording medium 305 shown in Figure 3. The following description will focus on the case where the storage unit 400 is included in the information processing device 100, but is not limited to this case. For example, the storage unit 400 may be included in a device different from the information processing device 100, and the contents of the storage unit 400 may be accessible from the information processing device 100.

[0063] The acquisition unit 401 to the output unit 404 function as an example of a control unit. Specifically, the acquisition unit 401 to the output unit 404 realize their functions, for example, by having the CPU 301 execute a program stored in a storage area such as the memory 302 or recording medium 305 shown in Figure 3, or by using the network interface 303. The processing results of each functional unit are stored in a storage area such as the memory 302 or recording medium 305 shown in Figure 3.

[0064] The storage unit 400 stores various types of information that are referenced or updated during processing in each functional unit. For example, the storage unit 400 stores structural information that shows the structure of the target molecule. The target molecule includes multiple atoms. The structural information includes, for example, the coordinates of each of the multiple atoms that make up the target molecule. The structural information also includes, for example, the type of each of the multiple atoms that make up the target molecule. The structural information is acquired, for example, by the acquisition unit 401.

[0065] The storage unit 400 stores fragment information, for example, that indicates each of the multiple fragments obtained by dividing the structure of the target molecule. The fragment information includes, for example, the coordinates of each of the one or more atoms belonging to the fragment. The fragment information includes, for example, the type of each of the one or more atoms belonging to the fragment. The fragments share, for example, at least one atom. The fragment information is set, for example, by the setting unit 402. The fragment information may be acquired, for example, by the acquisition unit 401.

[0066] The memory unit 400 stores, for example, a first optimization calculation method. The first optimization calculation method is, for example, CCSD, FCI, or VQE. The first optimization calculation method is set in advance by, for example, the user. The first optimization calculation method may be acquired, for example, by the acquisition unit 401.

[0067] The memory unit 400 stores, for example, a second optimization calculation method that requires less computation than the first optimization calculation method. The second optimization calculation method is, for example, a second-order Möller-Preset method. The second optimization calculation method is pre-set by, for example, the user. The second optimization calculation method may be acquired, for example, by the acquisition unit 401.

[0068] The acquisition unit 401 acquires various types of information used in the processing of each functional unit. The acquisition unit 401 stores the acquired information in the storage unit 400 or outputs it to each functional unit. The acquisition unit 401 may also output the information stored in the storage unit 400 to each functional unit. The acquisition unit 401 acquires various types of information, for example, based on user input. The acquisition unit 401 may also receive various types of information from a device other than the information processing device 100, for example.

[0069] The acquisition unit 401 acquires, for example, a processing request that requests to perform quantum chemical calculations on a target molecule. The processing request may include, for example, structural information. The processing request may also include, for example, fragment information. Specifically, the acquisition unit 401 acquires a processing request by receiving the input of the processing request. Specifically, the acquisition unit 401 may acquire a processing request by receiving a processing request from another computer. The other computer is, for example, a client device 202.

[0070] The acquisition unit 401 acquires structural information, for example. Specifically, the acquisition unit 401 acquires structural information by receiving input of structural information. Specifically, the acquisition unit 401 may acquire structural information by receiving structural information from another computer. The other computer may be, for example, a client device 202. Specifically, the acquisition unit 401 may acquire structural information by extracting structural information from a processing request.

[0071] The acquisition unit 401 acquires fragment information, for example. Specifically, the acquisition unit 401 acquires fragment information by receiving fragment information as input. Specifically, the acquisition unit 401 may acquire fragment information by receiving fragment information from another computer. The other computer may be, for example, a client device 202. Specifically, the acquisition unit 401 may acquire fragment information by extracting fragment information from a processing request.

[0072] The acquisition unit 401 acquires, for example, a first optimization calculation method. Specifically, the acquisition unit 401 acquires the first optimization calculation method by receiving input for the first optimization calculation method. Specifically, the acquisition unit 401 may acquire the first optimization calculation method by receiving the first optimization calculation method from another computer. The other computer is, for example, a client device 202.

[0073] The acquisition unit 401 acquires, for example, a second optimization calculation method. Specifically, the acquisition unit 401 acquires the second optimization calculation method by receiving input for the second optimization calculation method. Specifically, the acquisition unit 401 may acquire the second optimization calculation method by receiving the second optimization calculation method from another computer. The other computer is, for example, a client device 202.

[0074] The acquisition unit 401 may receive a start trigger to initiate processing in any of the functional units. A start trigger may be, for example, a predetermined operation input by a user. A start trigger may also be, for example, the receipt of predetermined information from another computer. A start trigger may also be, for example, the output of predetermined information by any of the functional units. Specifically, the acquisition unit 401 accepts the acquisition of a processing request as a start trigger to initiate processing in the iteration unit 403.

[0075] The setting unit 402 sets the initial value of the Lagrange multiplier. The initial value may be set in advance by the user, for example. This allows the setting unit 402 to calculate the density matrix corresponding to each fragment.

[0076] The setting unit 402 sets fragment information indicating each of the multiple fragments obtained by dividing the structure of the target molecule. The fragments share, for example, at least one atom. The setting unit 402 sets fragment information indicating each of the multiple fragments by, for example, dividing the structure of the target molecule into multiple fragments.

[0077] Specifically, the setting unit 402 divides the structure of the target molecule into multiple fragments such that each fragment contains an atom other than hydrogen and a hydrogen atom directly connected to that atom. This allows the setting unit 402 to reduce the workload on the user when setting fragment information.

[0078] The iterative unit 403 repeatedly performs a series of processes by the calculation unit 411 and the update unit 412 until a predetermined termination condition is met. The predetermined termination condition is, for example, set in advance by the user. The predetermined termination condition is, for example, that the density matrices corresponding to each fragment match or are similar. This allows the iterative unit 403 to optimize the density matrix and the Lagrange multiplier.

[0079] The calculation unit 411 uses the first optimization calculation method to calculate the density matrix corresponding to each fragment based on the Lagrange multiplier. The calculation unit 411 obtains the wave function corresponding to each fragment by, for example, solving an unconstrained eigenvalue problem based on the Lagrange multiplier, and then calculates the density matrix corresponding to that fragment. In this way, the calculation unit 411 can optimize the density matrix corresponding to each fragment.

[0080] If the predetermined termination conditions are not met, the update unit 412 uses a second optimization calculation method to update the Lagrange multipliers based on the density matrix calculated by the calculation unit 411, in order to maintain consistency between fragments. Maintaining consistency means that the density matrices match or are similar with respect to the overlapping portions between fragments.

[0081] The update unit 412, for example, uses a second optimization calculation method to reference the Jacobian approximation formula and, based on the density matrix, updates the Lagrangian multipliers according to the Newton-Krylov method to maintain consistency between fragments. This allows the update unit 412 to optimize the Lagrangian multipliers. The update unit 412 can reduce the processing load required when updating the Lagrangian multipliers, thereby reducing the overall processing load required when performing quantum chemical calculations.

[0082] The iterative unit 403 calculates the energy of the molecule based on the last updated Lagrange multiplier and the last calculated density matrix, provided that the predetermined termination conditions are met. This allows the iterative unit 403 to accurately calculate the energy of the molecule based on the optimized Lagrange multiplier and density matrix, thereby completing the quantum chemical calculation.

[0083] The output unit 404 outputs the processing result of at least one of the functional units. The output format can be, for example, display on a screen, print to a printer, transmit to an external device via the network interface 303, or store in a storage area such as the memory 302 or recording medium 305. This allows the output unit 404 to notify the user of the processing result of at least one of the functional units, thereby improving the usability of the information processing device 100.

[0084] The output unit 404 outputs the last updated Lagrange multiplier and the last calculated density matrix, for example, when a predetermined termination condition is met. Specifically, the output unit 404 outputs the last updated Lagrange multiplier and the last calculated density matrix in a way that is accessible to the user. Specifically, the output unit 404 may transmit the last updated Lagrange multiplier and the last calculated density matrix to another computer. The other computer may be, for example, a chemical calculation device 201 or a client device 202. This allows the output unit 404 to make the optimized Lagrange multiplier and density matrix available externally. The output unit 404 can also make the energy of the target molecule available for external calculation.

[0085] The output unit 404 outputs the energy of the target molecule calculated by the iterative unit 403 as a result of performing quantum chemical calculations on the target molecule, for example, when predetermined termination conditions are met. Specifically, the output unit 404 outputs the energy of the target molecule in a way that is accessible to the user. Specifically, the output unit 404 may transmit the energy of the target molecule to another computer. The other computer may be, for example, a client device 202. This allows the output unit 404 to make the energy of the target molecule available externally.

[0086] (Example of operation of the information processing device 100) Next, an example of the operation of the information processing device 100 will be explained using Figure 5.

[0087] Figure 5 is an explanatory diagram showing an example of the operation of the information processing device 100. In Figure 5, the information processing device 100 divides the structure of the target molecule into multiple fragments and performs quantum chemical calculations on each fragment, thereby performing quantum chemical calculations on the entire target molecule and calculating the energy of the target molecule.

[0088] In the example shown in Figure 5, the information processing device 100 divides the structure 500 of the target molecule into fragments 501 to 503, etc. When the information processing device 100 performs quantum chemical calculations on the target molecule, it repeatedly performs a first optimization calculation process to calculate the particle density matrix and a second optimization calculation process to maintain consistency between fragments until a predetermined termination condition is met.

[0089] In the following explanation, the particle density matrix may be referred to as "PDM (Particle Density Matrix)". Also, the first optimization calculation process may be referred to as "PDM calculation". Furthermore, the second optimization calculation process may be referred to as "PDM matching".

[0090] In PDM calculations, for example, the wave function Ψ corresponding to each fragment A. A We will find the wave function Ψ.A is defined by, for example, the following formula (1). The constraints for the following formula (1) are defined by, for example, the following formulas (2) to (4).

[0091]

Math

[0092]

Math

[0093]

Math

[0094]

Math

[0095] Here, B is another fragment that overlaps with fragment A. For example, fragment B shares at least one atom with fragment A. H with a ^ superscript emb A is the Hamiltonian of fragment A. P B is the 1PDM of fragment B. a p †, a q are a creation operator and an annihilation operator, respectively. C B , E a are a central site of fragment B and an edge site of fragment A, respectively. ⟨···⟩ AS := ⟨Ψ A |···|Ψ A ⟩.

[0096] Equations (1) to (4) above are constrained optimization problems. Therefore, equations (1) to (4) above can be reduced to unconstrained eigenvalue problems based on the Lagrange multiplier λ. The Lagrange multiplier λ is defined by equation (5) below. The unconstrained eigenvalue problem is defined by equations (6) and (7) below.

[0097]

number

[0098]

number

[0099]

number

[0100] By solving the above eigenvalue problem for the given Lagrangian multipliers, the wave function Ψ corresponding to each fragment A can be obtained. A It is possible to obtain PDMP A It is possible to calculate λ with a ^ symbol at the top. A Based on the solution to equation (6) above when = 0, PDMP A This can be calculated. Therefore, PDM calculation is realized by solving the above eigenvalue problem for a set Lagrange multiplier. The above eigenvalue problem can be solved, for example, by an optimization calculation method. Specifically, the above eigenvalue problem can be solved by a first optimization calculation method with relatively high accuracy, such as CCSD, FCI, or VQE.

[0101] In PDM matching, ε BE The Lagrange multiplier (λ) is set to 0. pq A We aim to optimize ) here. BEIt is defined by equation (8) below. Furthermore, the vector-valued function F is defined by equation (9) below. The Lagrange multiplier can be updated by solving the vector-valued function F(λ)=0. The vector-valued function F(λ) is R d →R d The vector-valued function F depends on the optimization method used.

[0102]

number

[0103]

number

[0104] Traditionally, Newton's method was used, ε BE The Lagrange multiplier (λ) is set to 0. pq A There is a method to optimize the ) and perform PDM matching. Specifically, in this method, the linear equations defined by equations (10) and (11) below are solved for each iteration of Newton's method. Here, k = 0, 1, ... u corresponds to λ. J represents the Jacobian of the vector-valued function F. The larger the number of dimensions of u, the more differences must be calculated for all directions of u when calculating the Jacobian using the finite difference method, which leads to an increase in the processing load required when performing PDM matching.

[0105]

number

[0106]

number

[0107] Furthermore, using the Newton-Krylov method, ε BE The Lagrange multiplier (λ) is set to 0. pqA There is a method to optimize the function and perform PDM matching. Specifically, this method calculates an approximate Jacobian formula defined by equation (12) below. Therefore, for each iteration of the Newton-Krylov method, Jv should be calculated for a specific direction vector v. However, if a relatively high-precision first optimization calculation method such as CCSD, FCI, or VQE is used to calculate the vector-valued function F, it leads to an increase in the processing load required when performing PDM matching.

[0108]

number

[0109] Therefore, the information processing device 100 uses a second optimization calculation method, such as the Möller-Preset method, which tends to require less computation than CCSD, FCI, or VQE, to calculate a function F with a ~ prefix to replace the above vector-valued function F. The information processing device 100 performs PDM matching by calculating an approximate Jacobian formula defined by the following equation (13) based on the function F with a ~ prefix. As a result, the information processing device 100 can reduce the amount of processing required when performing PDM matching compared to conventional methods, and can reduce the amount of processing required when performing the entire quantum chemical calculation.

[0110]

number

[0111] (Overall processing procedure) Next, an example of the overall processing procedure executed by the information processing device 100 will be described using Figure 6. The overall processing is realized, for example, by the CPU 301 shown in Figure 3, storage areas such as memory 302 and recording media 305, and network I / F 303.

[0112] Figure 6 is a flowchart showing an example of the overall processing procedure. In Figure 6, the information processing device 100 sets the PDM calculation method M1 (step S601). The information processing device 100 also sets the PDM matching method M2 (step S602).

[0113] The information processing device 100 obtains the number of orbitals of the fragment (step S603). The information processing device 100 obtains structural information indicating the molecular structure (step S604). The information processing device 100 obtains the basis set (step S605).

[0114] The information processing device 100 performs an initialization process and sets the Lagrange multiplier λ = 0 (step S606). The information processing device 100 uses method M1 to determine the PDM corresponding to each fragment based on the Lagrange multiplier λ. A Calculate (step S607).

[0115] The information processing device 100 determines whether or not the termination condition is met (step S608). If the termination condition is not met (step S608: No), the information processing device 100 proceeds to the process in step S609. On the other hand, if the termination condition is met (step S608: Yes), the information processing device 100 proceeds to the process in step S610.

[0116] In step S609, the information processing device 100 updates the Lagrange multiplier λ by using method M2 to solve F(λ)=0 according to the Newton-Krylov method using the Jacobian approximation formula (step S609). The information processing device 100 then returns to the process in step S607.

[0117] In step S610, the information processing device 100 calculates the Lagrange multiplier λ and the corresponding (P) for each fragment. A ) ABased on this, the energy of the molecule is calculated (step S610). The information processing device 100 then completes the entire process. As a result, the information processing device 100 can complete the quantum chemical calculation while reducing the amount of processing required when performing the quantum chemical calculation.

[0118] Here, the information processing device 100 may perform some of the steps in Figure 6 in a different order. For example, the order of steps S601 to S605 can be changed. Also, the information processing device 100 may omit some of the steps in Figure 6. For example, the process in step S610 can be omitted.

[0119] (Examples of applications of the information processing device 100) The information processing device 100 can be applied, for example, to fields such as drug discovery or materials development. Specifically, the information processing device 100 can be applied in fields such as drug discovery or materials development when it is desirable to perform quantum chemical calculations to calculate the ground state energy of molecules in order to analyze the structure or properties of molecules that are candidates for drugs or materials. As a result, the information processing device 100 can reduce the amount of processing required when performing quantum chemical calculations while maintaining the accuracy of the quantum chemical calculations, making it easier to calculate the ground state energy of molecules, and thus contributing to fields such as drug discovery or materials development.

[0120] As explained above, the information processing device 100 can utilize a first optimization calculation method and a second optimization calculation method that requires less computation than the first optimization calculation method. Using the first optimization calculation method, the information processing device 100 can calculate the density matrix corresponding to each of the multiple fragments obtained by dividing the molecular structure, based on predetermined parameters. If the predetermined termination conditions are not met, the information processing device 100 can use the second optimization calculation method, referencing the Jacobian approximation formula, to update the predetermined parameters based on the density matrix to maintain consistency between fragments. The information processing device 100 can repeatedly perform the process of calculating the density matrix corresponding to each fragment and the process of updating the predetermined parameters until the predetermined termination conditions are met. This allows the information processing device 100 to reduce the computational load required when performing optimization calculations to update predetermined parameters, thereby reducing the overall computational load required for quantum chemical calculations. Furthermore, the information processing device 100 can optimize the density matrix corresponding to each fragment with the predetermined parameters.

[0121] According to the information processing device 100, if predetermined termination conditions are met, the energy of the molecule can be calculated based on the last updated predetermined parameters and the last calculated density matrix. This allows the information processing device 100 to complete the quantum chemical calculation.

[0122] According to the information processing device 100, the first optimization calculation method can be set to CCSD, FCI, or VQE. According to the information processing device 100, the second optimization calculation method can be set to the second-order Möller-Preset method. This allows the information processing device 100 to reduce the processing load when performing optimization calculations that update predetermined parameters while maintaining the accuracy of calculating molecular energy, and to reduce the processing load when performing quantum chemical calculations.

[0123] According to the information processing device 100, the density matrix corresponding to each of the multiple fragments obtained by dividing the molecular structure such that each fragment shares at least one atom that forms the molecule can be calculated. According to the information processing device 100, if a predetermined termination condition is not met, a second optimization calculation method can be used to update predetermined parameters in a direction that matches the calculated density matrices with respect to at least one atom shared by the fragments. This makes it easier for the information processing device 100 to update predetermined parameters with high accuracy.

[0124] The information processing device 100 can output the calculated energy of the molecule. This allows the information processing device 100 to make the results of the quantum chemical calculations accessible externally.

[0125] The information processing method described in this embodiment can be implemented by executing a pre-prepared program on a computer such as a PC or workstation. The information processing program described in this embodiment is recorded on a computer-readable recording medium and executed by being read from the recording medium by the computer. The recording medium can be a hard disk, flexible disk, CD (Compact Disc)-ROM, MO (Magneto Optical Disc), DVD (Digital Versatile Disc), etc. Furthermore, the information processing program described in this embodiment may be distributed via a network such as the Internet.

[0126] With regard to the embodiments described above, the following additional information is disclosed.

[0127] (Note 1) Using the first optimization calculation method, the density matrix corresponding to each of the multiple fragments obtained by dividing the molecular structure is calculated based on predetermined parameters. If the predetermined termination conditions are not met, a second optimization calculation method, which requires less computation than the first optimization calculation method, is used, and the predetermined parameters are updated according to the Newton-Krylov method based on the calculated density matrix, with reference to the Jacobian approximation formula, in order to maintain consistency between the fragments for the plurality of fragments. An information processing program characterized by causing a computer to repeatedly execute a process until the predetermined termination conditions are met.

[0128] (Note 2) If the predetermined termination conditions are met, the energy of the molecule is calculated based on the last updated predetermined parameters and the last calculated density matrix. The information processing program described in Appendix 1, characterized in that it causes the computer to perform the processing.

[0129] (Note 3) The first optimization calculation method is Coupled-Cluster calculation with Single and Double excitations, Full Configuration Interaction, or Variational Quantum Eigen-solver, The information processing program according to Appendix 1 or 2, characterized in that the second optimization calculation method is a second-order Möller-Preset method.

[0130] (Note 4) The fragments in the plurality of fragments share at least one atom that forms the molecule, The aforementioned update process is: The information processing program according to Appendix 3, characterized in that, if the predetermined termination conditions are not met, the program uses the second optimization calculation method, refers to the Jacobian approximation formula, and updates the predetermined parameters in accordance with the Newton-Krylov method, so that the calculated density matrices match with respect to at least one atom shared by the fragments in the plurality of fragments.

[0131] (Note 5) Output the energy of the molecule calculated above. An information processing program according to any one of the appendices 1 to 4, characterized in that it causes the computer to perform the processing.

[0132] (Appendix 6) The information processing program according to any one of Appendix 1 to 5, characterized in that the predetermined parameters include Lagrange multipliers.

[0133] (Note 7) The information processing program according to any one of Notes 1 to 6, characterized in that the predetermined parameter includes μ of the chemical potential.

[0134] (Note 8) Using the first optimization calculation method, the density matrix corresponding to each of the multiple fragments obtained by dividing the molecular structure is calculated based on predetermined parameters. If the predetermined termination conditions are not met, a second optimization calculation method, which requires less computation than the first optimization calculation method, is used, and the predetermined parameters are updated according to the Newton-Krylov method based on the calculated density matrix, with reference to the Jacobian approximation formula, in order to maintain consistency between the fragments for the plurality of fragments. An information processing method characterized in that the computer repeatedly executes the process until the predetermined termination conditions are met.

[0135] (Note 9) Using the first optimization calculation method, the density matrix corresponding to each of the multiple fragments obtained by dividing the molecular structure is calculated based on predetermined parameters. If the predetermined termination conditions are not met, a second optimization calculation method, which requires less computation than the first optimization calculation method, is used, and the predetermined parameters are updated according to the Newton-Krylov method based on the calculated density matrix, with reference to the Jacobian approximation formula, in order to maintain consistency between the fragments for the plurality of fragments. An information processing apparatus characterized by having a control unit that repeatedly executes processing until the predetermined termination conditions are met. [Explanation of Symbols]

[0136] 100 Information Processing Devices 101,102 Optimization Calculation Methods 110,500 Structure 111,501~503 Fragments 200 Information Processing Systems 201 Chemical calculation equipment 202 Client Devices 210 Network 300 bus 301 CPU 302 memory 303 Network I / F 304 Recording medium interface 305 Recording media 306 displays 307 Input device 400 Storage section 401 Acquisition Department 402 Settings Section 403 Repeat section 404 Output Section 411 Calculation Department 412 Update Department

Claims

1. Using the first optimization calculation method, the density matrix corresponding to each of the multiple fragments obtained by dividing the molecular structure is calculated based on predetermined parameters. If the predetermined termination conditions are not met, a second optimization calculation method, which requires less computation than the first optimization calculation method, is used, and the predetermined parameters are updated according to the Newton-Krylov method based on the calculated density matrix, with reference to the Jacobian approximation formula, in order to maintain consistency between the fragments of the plurality of fragments. An information processing program characterized by causing a computer to repeatedly execute a process until the predetermined termination conditions are met.

2. If the predetermined termination conditions are met, the energy of the molecule is calculated based on the last updated predetermined parameters and the last calculated density matrix. The information processing program according to claim 1, characterized in that it causes the computer to perform the processing.

3. The first optimization calculation method is Coupled-Cluster calculation with Single and Double excitations, Full Configuration Interaction, or Variational Quantum Eigen-solver, The information processing program according to claim 1 or 2, characterized in that the second optimization calculation method is a second-order Möller-Preset method.

4. The fragments in the plurality of fragments share at least one atom that forms the molecule, The aforementioned update process is: The information processing program according to claim 3, characterized in that, if the predetermined termination conditions are not met, the program uses the second optimization calculation method to refer to the Jacobian approximation formula and, according to the Newton-Krylov method, updates the predetermined parameters in a direction that matches the calculated density matrices with respect to at least one atom shared by the fragments in the plurality of fragments.

5. Using the first optimization calculation method, the density matrix corresponding to each of the multiple fragments obtained by dividing the molecular structure is calculated based on predetermined parameters. If the predetermined termination conditions are not met, a second optimization calculation method, which requires less computation than the first optimization calculation method, is used, and the predetermined parameters are updated according to the Newton-Krylov method based on the calculated density matrix, with reference to the Jacobian approximation formula, in order to maintain consistency between the fragments of the plurality of fragments. An information processing method characterized in that the computer repeatedly executes the process until the predetermined termination conditions are met.

6. Using the first optimization calculation method, the density matrix corresponding to each of the multiple fragments obtained by dividing the molecular structure is calculated based on predetermined parameters. If the predetermined termination conditions are not met, a second optimization calculation method, which requires less computation than the first optimization calculation method, is used, and the predetermined parameters are updated according to the Newton-Krylov method based on the calculated density matrix, with reference to the Jacobian approximation formula, in order to maintain consistency between the fragments of the plurality of fragments. An information processing apparatus characterized by having a control unit that repeatedly executes processing until the predetermined termination conditions are met.