WO2022158104A1 - 乱数生成器、乱数生成方法、及びプログラムが格納された非一時的なコンピュータ可読媒体 - Google Patents
乱数生成器、乱数生成方法、及びプログラムが格納された非一時的なコンピュータ可読媒体 Download PDFInfo
- Publication number
- WO2022158104A1 WO2022158104A1 PCT/JP2021/042759 JP2021042759W WO2022158104A1 WO 2022158104 A1 WO2022158104 A1 WO 2022158104A1 JP 2021042759 W JP2021042759 W JP 2021042759W WO 2022158104 A1 WO2022158104 A1 WO 2022158104A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- random number
- value
- number generator
- model
- annealing
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
- G06N10/60—Quantum algorithms, e.g. based on quantum optimisation, quantum Fourier or Hadamard transforms
Definitions
- the present invention relates to random number generators, random number generation methods, and programs.
- random numbers obtained by function calls in ordinary computers have periodicity. Random numbers generated by a random number generator using physical noise can be predicted by observing and reproducing physical phenomena. Therefore, these random numbers cannot guarantee high security.
- Quantum computer technology is still under development, but a quantum computer called a quantum annealing method (hereinafter referred to as a quantum annealing machine) is available.
- a quantum annealing machine is a computer specialized for solving a formulated problem called an Ising model, and is used for solving combinatorial optimization problems (see Patent Document 1).
- a stable combination of qubits (0, 1) in a system represented by the Ising model can be obtained by a quantum annealing machine.
- quantum fluctuation due to a property called quantum fluctuation, the same combination is not always obtained, and various combinations of qubits near the stable state are obtained.
- the occurrence probabilities of various combinations of qubits follow the Boltzmann distribution. Therefore, when a quantum annealing machine is used, it is possible to obtain a solution near the optimal solution of the optimization problem, but it is not possible to obtain a solution (numerical value) that follows any distribution specified by the user other than the Boltzmann distribution. For this reason, quantum annealing machines cannot be used to generate random numbers that follow arbitrary distributions specified by users.
- Patent Document 2 there is a technique disclosed in Patent Document 2 regarding a technique for obtaining random numbers that follow a distribution specified by a user.
- the technique described in this document obtains random numbers that follow a predetermined distribution by performing predetermined processing on numerical values generated by a pseudo-random number generator. Due to the periodicity of pseudo-random numbers, the random numbers obtained by this technique are not of high quality.
- one of the objects to be achieved by the embodiments disclosed in this specification is to provide a random number generator, a random number generation method, and a program capable of generating high-quality random numbers according to a desired distribution. is.
- a random number generator includes: an input reception unit that receives an input specifying a probability distribution of random numbers; a model generation unit that generates, based on the probability distribution, an Ising model using n binary variables assigned to each of n (n is an integer equal to or greater than 2) subintervals obtained by dividing the numerical range of random numbers; , An annealing result acquisition unit that acquires the values of the n binary variables that are the execution results of quantum annealing for the Ising model; a random number output unit configured to output, as a random number, a value included in the partial interval assigned to the binary variable whose value obtained as the execution result is a predetermined value.
- a random number generator accepts input specifying the probability distribution of random numbers, generating an Ising model using n binary variables assigned to each of n (n is an integer equal to or greater than 2) subintervals obtained by dividing the numerical range of random numbers based on the probability distribution; Obtaining the values of the n binary variables that are the result of performing quantum annealing on the Ising model; A value included in the partial interval assigned to the binary variable whose value obtained as the execution result is a predetermined value is output as a random number.
- a program for receiving an input specifying a probability distribution of random numbers; a model generation step of generating, based on the probability distribution, an Ising model using n binary variables assigned to each of n (n is an integer equal to or greater than 2) subintervals obtained by dividing the numerical range of random numbers; , an annealing result obtaining step of obtaining the values of the n binary variables that are the execution results of quantum annealing for the Ising model; and a random number output step of outputting, as a random number, a value included in the partial interval assigned to the binary variable whose value obtained as the execution result is a predetermined value.
- FIG. 1 is a block diagram showing an example of a configuration of a random number generator according to an outline of an embodiment
- FIG. 1 is a block diagram showing an example of a configuration of a random number generation system according to Embodiment 1
- FIG. 2 is a block diagram showing an example of a hardware configuration of a random number generator according to Embodiment 1
- FIG. 4 is a flow chart showing an example of the operation of the random number generator according to the first exemplary embodiment
- FIG. 11 is a block diagram showing an example of the configuration of a random number generation system according to a second embodiment
- FIG. 9 is a flow chart showing an example of the operation of the random number generator according to the second embodiment
- FIG. 11 is a block diagram showing an example of the configuration of a random number generation system according to a third embodiment
- FIG. FIG. 11 is a flow chart showing an example of the operation of the random number generator according to the third embodiment
- FIG. 1 is a block diagram showing an example of the configuration of a random number generator 1 according to the outline of the embodiment.
- the random number generator 1 is a device that generates random numbers using the results of quantum annealing, and as shown in FIG. .
- the input reception unit 2 receives input specifying the probability distribution of random numbers.
- a user or the like gives an input designating a desired probability distribution to the random number generator 1 in order to cause the random number generator 1 to output random numbers according to the desired probability distribution.
- the input reception unit 2 receives an Ising model using n binary variables assigned to each of n (n is an integer equal to or greater than 2) partial intervals obtained by dividing the numerical range of random numbers. generated based on a probability distribution.
- the numerical range of random numbers means the range determined by the minimum and maximum values of random numbers that can be generated. That is, the random number generator 1 generates random numbers belonging to this numerical range.
- the value of the binary variable described above indicates whether or not to select a subsection belonging to this numerical range. In other words, this binary variable indicates whether or not the values included in the sub-interval to which the binary variable is assigned are adopted as random numbers.
- the annealing result acquisition unit 4 acquires the values of n binary variables that are the execution results of quantum annealing for the Ising model generated by the model generation unit 3 . That is, the annealing result acquisition unit 4 causes the quantum annealing machine to perform quantum annealing on the Ising model generated by the model generation unit 3, and acquires the execution result from the quantum annealing machine.
- the random number output unit 5 outputs, as a random number, a value included in a partial interval assigned to a binary variable whose value obtained as an execution result is a predetermined value (eg, 1).
- the random number generator 1 generates an Ising model based on the specified probability distribution, and outputs random numbers according to the result of quantum annealing for this Ising model. Since it is difficult to predict the execution result of quantum annealing, it is also difficult to predict the random number output by the random number generator 1 . Therefore, the random number generator 1 can generate high-quality random numbers that follow a desired distribution.
- FIG. 2 is a block diagram showing an example configuration of the random number generation system 10 according to the first embodiment.
- random number generation system 10 includes random number generator 100 and quantum annealing machine 200 .
- the random number generator 100 and the quantum annealing machine 200 are communicably connected to each other via a wired or wireless network, for example.
- quantum annealing machine 200 is shown as a separate device from random number generator 100, but may be included in random number generator 100.
- FIG. 1 is a block diagram showing an example configuration of the random number generation system 10 according to the first embodiment.
- random number generation system 10 includes random number generator 100 and quantum annealing machine 200 .
- the random number generator 100 and the quantum annealing machine 200 are communicably connected to each other via a wired or wireless network, for example.
- quantum annealing machine 200 is shown as a separate device from random number generator 100, but may be included in random number generator 100.
- FIG. 1 is a block diagram showing an example configuration of the random number generation system 10 according
- the random number generator 100 corresponds to the random number generator 1 shown in FIG.
- Quantum annealing machine 200 includes a quantum chip that realizes quantum bits and coupling between quantum bits, and performs quantum annealing on the Ising model to determine the value of each quantum bit.
- a quantum chip is a chip that operates using quantum states in quantum mechanics. Since a known machine can be used as the quantum annealing machine 200 of the random number generation system 10, detailed description of its specific configuration and processing will be omitted.
- the random number generator 100 includes a processing control unit 101, an input reception unit 102, a model generation unit 103, an annealing result acquisition unit 104, a pseudorandom number generation unit 105, and a random number output unit 106, as shown in FIG.
- the processing control unit 101 controls the processing of the components of the random number generator 100 described above. Particularly in this embodiment, the processing control unit 101 controls the number of times the annealing result acquisition unit 104 and the pseudorandom number generation unit 105 execute the processing according to the number of random numbers to be generated.
- the input reception unit 102 corresponds to the input reception unit 2 in FIG. 1, and receives input specifying the probability distribution of random numbers.
- the input reception unit 102 may, for example, receive a probability distribution input by a user via an input interface provided in the random number generator 100, or read the probability distribution from a storage device such as a memory provided in the random number generator 100. , may be accepted. Further, the input accepting unit 102 may accept the probability distribution by receiving it from another device.
- the input accepting unit 102 accepts a probability setting value for each partial interval as an input specifying the probability distribution of random numbers.
- This sub-interval divides the domain of the random variable, but can also be said to divide the numerical range of the random number. For example, let R MIN be the minimum value of the random number to be generated by the random number generator 100 and R MAX be the maximum value. That is, the case where the random number generator 100 generates a random number equal to or greater than R MIN and equal to or less than R MAX will be described as an example.
- the random number generator 100 sets the set value of the probability for each of n subintervals obtained by equally dividing the numerical range having RMIN as the lower limit and RMAX as the upper limit by n (n is an integer equal to or greater than 2).
- the suffix i is the identification number of the partial section and is an integer of 1 or more and n or less. For example, when it is desired that a numerical value belonging to a certain subinterval is most likely to be output as a random number, the value of the probability pi of the subinterval should be set to a value greater than the value of the probability pi of the other subintervals. becomes. Note that the sum of p1 to pn is one .
- n, R MIN , and R MAX described above may be determined in advance, or may be received by the input receiving unit 102 .
- n, R MIN , and R MAX may be specified in this way, the convenience in operation of the random number generator 100 can be improved.
- input accepting unit 102 accepts the set value of probability for each partial interval, but the input specifying the probability distribution is not limited to this.
- the input receiving unit 102 may receive information specifying the type of probability distribution (for example, normal distribution, etc.) and distribution parameters (mean, variance, etc.) as inputs specifying the probability distribution of random numbers. and may accept a mathematical expression representing the probability distribution. Note that the input reception unit 102 may further receive designation of the number of random numbers to be generated.
- the model generation unit 103 corresponds to the model generation unit 3 in FIG. 102 based on the received probability distribution.
- n binary variables (qubit variables) be x 1 , x 2 , . . . , x n . That is, the i-th subinterval is assigned the binary variable x i . Therefore, the i-th subinterval is associated with a probability p i and a binary variable x i .
- the model generation unit 103 generates, for example, a model H(x) represented by the following formula (1).
- i is a number that identifies n partial intervals.
- x i is a binary variable assigned to the i-th subinterval and takes a value of 0 or 1;
- p i is the value of the probability distribution in the subinterval to which x i is assigned.
- the function represented by the first term on the right side (also referred to as the first function) is the objective function.
- Quantum annealing machine 200 provides an approximate solution (that is, binary variables x 1 , x 2 , x 2 , . . , x n value combinations) are searched.
- the function H Onehot represented by the second term on the right side is such that any one of n binary variables x 1 , x 2 , . , which is a constraint term for making other binary variables take values other than the predetermined value (specifically, 0).
- the function H Onehot is specifically represented by the following formula (2). Note that w is a coefficient representing weight, and the model generation unit 103 sets a positive predetermined value as the value of w.
- the model generation unit 103 determines the value of pi of the model represented by the above formula according to the specification of the probability distribution of the random numbers received by the input reception unit 102, thereby generating random numbers according to the probability distribution.
- the model generating unit 103 uses, for example, the average value, the minimum value, or the maximum value of the probability distribution value in the partial interval to calculate the probability p i may be determined.
- the model generation unit 103 generates the following Ising model.
- the model generation unit 103 generates an Ising model expressed using a first function for the binary variable x i and a second function for the binary variable x i .
- the first function is the product of the value of the function whose value decreases as the value p i of the probability distribution in the subinterval to which the binary variable x i is assigned increases and the value of the binary variable x i It is a function represented by summation.
- the second function is a function that takes a minimum value when any one of n binary variables x 1 , x 2 , . otherwise, it takes a positive value depending on the weight w.
- An annealing result acquisition unit 104 corresponds to the annealing result acquisition unit 4 in FIG . , . . . , x n are obtained.
- the annealing result acquisition unit 104 sets conditions for executing quantum annealing by the quantum annealing machine 200 in order to cause the quantum annealing machine 200 to execute processing.
- the annealing result acquiring unit 104 sets the quantum bits corresponding to the binary variables and the strength of interaction between the quantum bits based on the Ising model generated by the model generating unit 103 . Then, the annealing result acquisition unit 104 instructs the quantum annealing machine 200 to perform quantum annealing on the Ising model.
- the quantum annealing machine 200 outputs the execution result of quantum annealing, that is, each value of n binary variables x 1 , x 2 , .
- the annealing result acquisition unit 104 acquires this.
- Quantum annealing machine 200 outputs an approximate solution that minimizes H(x) shown in equation (1) as a result of quantum annealing.
- the annealing result acquisition unit 104 acquires the following execution result as the execution result of quantum annealing on the Ising model represented by Equation (1). That is, the annealing result acquisition unit 104 determines that the value of one of the n binary variables x 1 , x 2 , . , to obtain execution results in which the values of other binary variables are other values (specifically, 0).
- the random number generator 100 outputs, as random numbers, values belonging to the sub-interval corresponding to the binary variable xi having a predetermined value (specifically, 1), thereby generating random numbers according to the specified probability distribution. can generate random numbers.
- Random number generator 100 may output a predetermined value within a sub-interval corresponding to binary variable x i having a predetermined value as a random number.
- the random number generator 100 has a pseudorandom number generator 105 .
- the predetermined value within the partial interval is, for example, the central value, maximum value, minimum value, or the like of the partial interval.
- the pseudorandom number generation unit 105 generates a pseudorandom number (uniform random number ). That is, a pseudorandom number is generated in which the minimum value of the partial interval is set as the minimum value of the pseudorandom number, and the maximum value of the partial interval is set as the maximum value of the pseudorandom numbers.
- Pseudorandom number generator 105 generates a pseudorandom number using a known function for generating a pseudorandom number. For example, the pseudorandom number generator 105 may obtain pseudorandom numbers by calling built-in functions that return random numbers.
- the random number output unit 106 corresponds to the random number output unit 5 in FIG. 1, and outputs the value included in the partial interval selected according to the execution result of quantum annealing as a random number.
- a pseudorandom number generated by the pseudorandom number generator 105 is output as a value included in the selected partial interval.
- random number output unit 106 outputs a pseudo-random number in a sub-interval selected according to the execution result of quantum annealing. can be output.
- the random number generator 100 may not have the pseudorandom number generator 105 .
- a random number output unit 106 outputs a random number to an arbitrary output destination.
- the random number output unit 106 may, for example, output the random number to a display, or transmit the random number to a device or processing unit that performs predetermined processing such as encryption processing.
- the random number generator 100 may generate multiple random numbers, and in this case, the random number output unit 106 outputs the generated multiple random numbers.
- the processing control unit 101 controls the number of times the annealing result acquisition unit 104 and the pseudorandom number generation unit 105 execute processes according to the number of random numbers to be generated. As described above, one random number can be generated each time quantum annealing is performed for the Ising model represented by equation (1). Therefore, for example, when generating m (m is a positive integer) random numbers, the processing control unit 101 controls the processing to repeat the processing of the annealing result acquisition unit 104 and the pseudorandom number generation unit 105 m times. Note that the value of m may be determined in advance, or may be received by the input receiving unit 102 . In this way, the random number generator 100 outputs multiple random numbers by acquiring the execution results of quantum annealing multiple times for the same Ising model. As a result, an arbitrary number of random numbers can be obtained.
- FIG. 3 is a block diagram showing an example of the hardware configuration of the random number generator 100.
- random number generator 100 includes network interface 150 , memory 151 and processor 152 .
- the network interface 150, memory 151, and processor 152 are interconnected via a data bus or the like.
- the network interface 150 is used to communicate with any other device, including the quantum annealing machine 200.
- Network interface 150 may include, for example, a network interface card (NIC).
- NIC network interface card
- the memory 151 is configured by, for example, a combination of volatile memory and nonvolatile memory.
- the memory 151 is used to store software (computer program) including one or more instructions executed by the processor 152, data used for various processes of the random number generator 100, and the like.
- the processor 152 reads and executes software (computer program) from the memory 151 to process each component shown in FIG.
- the processor 152 may be a microprocessor, an MPU (Micro Processor Unit), a CPU (Central Processing Unit), or the like. Processor 152 may include multiple processors.
- the random number generator 100 is a device that functions as a computer and is also called an information processing device.
- Non-transitory computer-readable media include various types of tangible storage media.
- Examples of non-transitory computer-readable media include magnetic recording media (eg, flexible discs, magnetic tapes, hard disk drives), magneto-optical recording media (eg, magneto-optical discs), CD-ROM (Read Only Memory) CD-R, CD - R/W, including semiconductor memory (eg, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (Random Access Memory)).
- the program may also be supplied to the computer on various types of transitory computer readable medium. Examples of transitory computer-readable media include electrical signals, optical signals, and electromagnetic waves. Transitory computer-readable media can deliver the program to the computer via wired channels, such as wires and optical fibers, or wireless channels.
- FIG. 4 is a flow chart showing an example of the operation of the random number generator 100. As shown in FIG. The random number generation operation by the random number generator 100 will be described below with reference to FIG.
- the input receiving unit 102 receives input of setting information for outputting random numbers. Specifically, the input accepting unit 102 accepts an input designating the probability distribution of random numbers. Further, as described above, the input receiving unit 102 further receives an input specifying any or all of the number of divisions n, the minimum random number value R MIN , the maximum random number value R MAX , and the number m of random numbers to be generated. may be accepted.
- step S101 the model generation unit 103 generates an Ising model based on the probability distribution specified in step S100.
- step S102 the annealing result acquisition unit 104 acquires from the quantum annealing machine 200 the execution result of quantum annealing for the Ising model generated in step S101. That is, the annealing result acquisition unit 104 acquires values of n binary variables x 1 , x 2 , . . . , x n .
- step S103 the pseudorandom number generation unit 105 generates a pseudorandom number within the partial interval selected based on the execution result obtained in step S102. That is, the pseudorandom number generation unit 105 generates a pseudorandom number that fits in the partial interval corresponding to x i with a value of 1.
- step S104 the processing control unit 101 determines whether or not the designated number of random numbers has been obtained. If the specified number of random numbers has not been obtained, the processing control unit 101 performs control to repeat the processing of steps S102 and S103. On the other hand, if the specified number of random numbers are obtained, the process proceeds to step S105.
- step S105 the random number output unit 106 outputs the random number obtained by the processing in steps S102 and S103.
- subintervals are selected based on the results of quantum annealing. This makes it difficult to predict which sub-intervals will be selected. Also, the probability that each subinterval is selected follows a specified probability distribution. Therefore, according to this embodiment, it is possible to generate high-quality random numbers that follow a desired distribution.
- Embodiment 2 will be described.
- k be the number of quantum bits provided in the quantum annealing machine 200 (k is an integer equal to or greater than 2).
- the selection of the sub-interval using the quantum characteristics that is, the selection of the difficult-to-predict sub-interval is performed from at most k sub-intervals. It will happen. That is, the number of subintervals that can be set depends on the number of qubits.
- by hierarchically repeating the selection of partial sections a partial section is selected from a larger number of partial sections. As a result, even if the quantum annealing machine 200 has a limited number of quantum bits, it is possible to output random numbers selected from a larger number of subintervals.
- FIG. 5 is a block diagram showing an example of the configuration of the random number generation system 10a according to the second embodiment.
- the random number generation system 10a according to the second embodiment differs from the random number generation system 10 according to the first embodiment in that the random number generator 100 is replaced with a random number generator 100a.
- Configurations and processes that are different from those of the first embodiment will be described below, and descriptions of configurations and processes that are the same as those of the first embodiment will be omitted as appropriate.
- the random number generator 100a according to the second embodiment differs from the random number generator 100 according to the first embodiment mainly in that the process control unit 101 is replaced with a process control unit 101a. ing. Further, the pseudo-random number generator 105 is omitted in the configuration example shown in FIG. However, the random number generator 100a may include the pseudorandom number generator 105 in this embodiment as well. That is, when outputting the numerical value included in the finally selected partial interval as a random number in the present embodiment, the random number generated by the pseudo-random number generation unit 105 is output instead of the predetermined value included in this partial interval. may
- the quantum annealing machine 200 is shown as a separate device from the random number generator 100a, but may be included in the random number generator 100a.
- the processing control unit 101a controls the processing of each component of the random number generator 100a shown in FIG.
- the processing control unit 101a controls the processing of the model generation unit 103 and the annealing result acquisition unit 104 so that partial sections are hierarchically selected a predetermined number of times.
- the hierarchical selection of subintervals means selecting a subinterval from n subintervals according to the result of quantum annealing, and then n finer subintervals set to the selected subintervals. Further selecting a subinterval from among according to the result of quantum annealing.
- the processing control unit 101a performs control so that the hierarchical selection of subsections by quantum annealing is repeated q times (where q is an integer).
- q 0
- a random number is output without performing hierarchical selection of partial intervals, that is, reselection of partial intervals.
- the value of q may be determined in advance, or may be received by the input receiving unit 102 .
- the model generation unit 103 of the present embodiment performs the following processing under the control of the processing control unit 101a. After the model generation, the model generation unit 103 further divides the sub-interval selected by executing the quantum annealing to create a new Ising model using n binary variables assigned to each of n new sub-intervals. based on the specified probability distribution. Specifically, the model generation unit 103 newly generates the Ising model shown in Equation (1) in order to hierarchically select partial sections. However, in the new Ising model, the n binary variables x i are variables assigned to n new subintervals obtained by further dividing the selected subinterval. Also, the probability p i is the value of the probability distribution in the new subinterval.
- the model generating unit 103 determines the number of divisions n and the range of the selected partial interval. to identify the new subinterval probabilities p i .
- the model generation unit 103 uses, for example, the average value, minimum value, or maximum value of the probability distribution value in the partial interval, A new subinterval probability p i may be determined.
- the input receiving unit 102 may receive an input designating each set value of the probability p i of the new partial interval. Note that, if the sum of the probabilities p i of the new partial interval is not 1, the model generation unit 103 normalizes the values of the probabilities p i so that the sum becomes 1, and then generates a new Ising model. do.
- the annealing result acquisition unit 104 of the present embodiment performs the following processing under the control of the processing control unit 101a.
- the annealing result acquisition unit 104 acquires the values of n binary variables that are the execution results of quantum annealing for this new Ising model.
- the values of n binary variables obtained indicate which sub-interval should be selected from among the sub-divided sub-intervals.
- the random number output unit 106 outputs a value included in the finally selected partial section as a random number when the hierarchical selection of partial sections is completed. That is, the random number output unit 106 generates a new portion assigned to the binary variable xi having a predetermined value (specifically, 1) obtained as a result of quantum annealing for the new Ising model. Output the values contained in the interval as random numbers. In this embodiment, the random number output unit 106 outputs a predetermined value within the selected partial interval (for example, the central value, maximum value, or minimum value of the partial interval) as a random number. A value generated by the generation unit 105 may be output.
- FIG. 6 is a flow chart showing an example of the operation of the random number generator 100a.
- the random number generation operation by the random number generator 100a will be described below with reference to FIG.
- step S200 as in step S100 of FIG. 4, the input reception unit 102 receives input of setting information regarding the output of random numbers.
- step S201 the model generation unit 103 generates an Ising model based on the probability distribution specified in step S200, as in step S101 of FIG.
- step S202 the annealing result acquisition unit 104 acquires the execution result of quantum annealing for the Ising model generated in step S201 from the quantum annealing machine 200, as in step S102 of FIG.
- step S203 the processing control unit 101a determines whether or not the subdivision of the partial section has been performed a predetermined number of times. That is, the processing control unit 101a determines whether or not the partial section has been hierarchically selected q times. If subdivision into partial intervals has not been performed a predetermined number of times, the processing control unit 101a performs control to generate an Ising model and perform quantum annealing again. That is, in this case, the process proceeds to step S204. On the other hand, if the subdivision of the partial section has been performed the predetermined number of times, the process proceeds to step S205.
- step S204 the model generation unit 103 generates an Ising model for the new partial section in order to hierarchically select the partial section. That is, the model generating unit 103 generates n new subintervals obtained by further dividing the subinterval assigned to the binary variable xi whose value obtained as a result of quantum annealing in step S202 is a predetermined value. Generate an Ising model for After the process of step S204, the process returns to step S202, and the annealing result acquisition unit 104 acquires from the quantum annealing machine 200 the execution result of quantum annealing for the Ising model generated in step S204. After that, the determination process of step S203 is performed again.
- step S205 the processing control unit 101a determines whether or not the specified number of random numbers has been obtained. If the designated number of random numbers has not been obtained, the processing control unit 101a performs control to repeat the processing from step S202 to step S204. At this time, in step S202, the annealing result acquisition unit 104 acquires the execution result of quantum annealing for the Ising model using the binary variables xi assigned to the subintervals in the undivided initial state. That is, in subsequent processing, hierarchical selection of partial sections is newly repeated. On the other hand, if the specified number of random numbers are obtained, the process proceeds to step S206.
- the random number output unit 106 outputs the random number obtained by the processing from step S202 to step S204.
- the second embodiment has been described above.
- a partial section is selected from a larger number of partial sections.
- the quantum annealing machine 200 has a limited number of quantum bits, it is possible to output random numbers selected from a larger number of subintervals.
- Embodiment 3 differs from the above-described embodiments in that quantum annealing machine 200 simultaneously performs quantum annealing on a plurality of Ising models for generating random numbers. If the quantum annealing machine 200 has enough qubits, the quantum annealing machine 200 can obtain solutions for a plurality of Ising models. Therefore, in the present embodiment, a random number generator 100b capable of efficiently obtaining a plurality of random numbers by performing one quantum annealing on a plurality of Ising models will be described.
- FIG. 7 is a block diagram showing an example of the configuration of the random number generation system 10b according to the third embodiment.
- the random number generation system 10b according to the third embodiment differs from the random number generation system 10 according to the first embodiment in that the random number generator 100 is replaced with a random number generator 100b.
- the random number generator 100b includes the pseudorandom number generator 105.
- the pseudorandom number generator 105 may be omitted. Configurations and processes that are different from those of the first embodiment will be described below, and descriptions of configurations and processes that are the same as those of the first embodiment will be omitted as appropriate.
- the random number generator 100b mainly has the model generation unit 103 replaced with the model generation unit 103b and the annealing result acquisition unit 104 replaced with the annealing result acquisition unit 104b. This is different from the random number generator 100 according to the first embodiment.
- the quantum annealing machine 200 is also shown as a separate device from the random number generator 100b, but may be included in the random number generator 100b.
- the model generation unit 103b Like the model generation unit 103, the model generation unit 103b generates an Ising model based on the probability distribution received by the input reception unit 102.
- FIG. Also in the present embodiment, the model generator 103b generates the model H(x) represented by Equation (1).
- the model generation unit 103b generates a plurality of Ising models for which quantum annealing is performed at the same time.
- the number of Ising models for which quantum annealing is simultaneously performed is s (s is an integer of 2 or more). That is, the model generating unit 103b generates s Ising models.
- the s Ising models may be the same or different.
- each Ising model may have a different number of binary variables x i (that is, the value of n), a different value of probability values pi (that is, a probability distribution), or a binary
- the subintervals assigned to variables x i may be different.
- Each of a total of t binary variables x i of the s Ising models generated by the model generation unit 103b is associated with a different quantum bit. Therefore, if the number of quantum bits provided in the quantum annealing machine 200 is k, the value of t is k or less.
- the annealing result acquisition unit 104 b associates t binary variables x i , which are a set of binary variables x i in s Ising models, with t quantum bits of the same quantum annealing machine 200 .
- Quantum annealing machine 200 simultaneously performs quantum annealing on s Ising models to obtain solutions of s Ising models.
- the annealing result acquiring unit 104b acquires the values of t binary variables xi , which are the execution results of quantum annealing for s Ising models.
- FIG. 8 is a flow chart showing an example of the operation of the random number generator 100b.
- the random number generation operation by the random number generator 100b will be described below with reference to FIG.
- step S300 as in step S100 of FIG. 4, the input reception unit 102 receives input of setting information regarding the output of random numbers. In this step, the input receiving unit 102 receives information necessary to generate each of the plurality of Ising models.
- step S301 the model generation unit 103b generates multiple Ising models based on the probability distribution specified in step S300.
- the annealing result acquisition unit 104b acquires, from the quantum annealing machine 200, the results of quantum annealing performed simultaneously for the plurality of Ising models generated in step S301. That is, the annealing result acquisition unit 104b acquires the value of the binary variable xi of each Ising model. This enables selection of a partial section in each Ising model.
- step S303 the pseudorandom number generation unit 105 generates a pseudorandom number within the partial section selected based on the execution result obtained in step S302.
- the pseudorandom number generator 105 generates a pseudorandom number for each generated Ising model.
- step S304 the processing control unit 101 determines whether or not the specified number of random numbers has been obtained.
- a plurality of random numbers can be obtained by performing the processing of steps S302 and S303 only once. However, if the number of random numbers obtained still does not reach the designated number, quantum annealing is performed again. Therefore, when the designated number of random numbers has not been obtained, the processing control unit 101 controls to perform the processing of steps S302 and S303 again. On the other hand, if the specified number of random numbers are obtained, the process proceeds to step S305.
- step S305 the random number output unit 106 outputs the random number obtained by the processing in steps S302 and S303.
- the third embodiment has been described above.
- random numbers are generated using the results of quantum annealing performed simultaneously for a plurality of Ising models. Therefore, efficient generation of random numbers using the quantum annealing machine 200 is possible.
- this embodiment can be combined with the second embodiment. That is, in the present embodiment, selection of partial sections may be hierarchically repeated as in the second embodiment.
- the model generating unit 103b generates a new Ising model using a binary variable assigned to a new partial interval obtained by subdividing the partial interval, one for each of s existing Ising models.
- the annealing result acquiring unit 104b further acquires the values of t binary variables, which are the execution results of quantum annealing for s new Ising models.
- the information processing apparatus including the random number generator described above may have a processing unit that performs predetermined processing using the generated random numbers.
- the processing unit may perform known predetermined encryption processing using random numbers, or may perform simulation processing using random numbers such as Monte Carlo simulation.
- this processing unit may also be realized by, for example, a processor executing a program stored in a memory.
- random numbers are generated using the execution result of quantum annealing for the Ising model, but the execution result of simulated annealing may be used instead of quantum annealing.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Operations Research (AREA)
- Databases & Information Systems (AREA)
- Algebra (AREA)
- Artificial Intelligence (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Complex Calculations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
そこで、本明細書に開示される実施形態が達成しようとする目的の1つは、所望の分布に従う高品質な乱数を生成することができる乱数生成器、乱数生成方法、及びプログラムを提供することである。
乱数の確率分布を指定する入力を受付ける入力受付部と、
乱数の数値範囲を分割したn(nは2以上の整数)個の部分区間のそれぞれに割り当てられるn個の二値変数を用いたイジングモデルを、前記確率分布に基づいて生成するモデル生成部と、
前記イジングモデルについての量子アニーリングの実行結果であるn個の前記二値変数の値を取得するアニーリング結果取得部と、
前記実行結果として得られた値が所定の値である前記二値変数に割り当てられている前記部分区間に含まれる値を乱数として出力する乱数出力部と
を有する。
乱数生成器が、
乱数の確率分布を指定する入力を受付け、
乱数の数値範囲を分割したn(nは2以上の整数)個の部分区間のそれぞれに割り当てられるn個の二値変数を用いたイジングモデルを、前記確率分布に基づいて生成し、
前記イジングモデルについての量子アニーリングの実行結果であるn個の前記二値変数の値を取得し、
前記実行結果として得られた値が所定の値である前記二値変数に割り当てられている前記部分区間に含まれる値を乱数として出力する。
乱数の確率分布を指定する入力を受付ける入力受付ステップと、
乱数の数値範囲を分割したn(nは2以上の整数)個の部分区間のそれぞれに割り当てられるn個の二値変数を用いたイジングモデルを、前記確率分布に基づいて生成するモデル生成ステップと、
前記イジングモデルについての量子アニーリングの実行結果であるn個の前記二値変数の値を取得するアニーリング結果取得ステップと、
前記実行結果として得られた値が所定の値である前記二値変数に割り当てられている前記部分区間に含まれる値を乱数として出力する乱数出力ステップと
をコンピュータに実行させる。
実施形態の詳細を説明する前に、まず、実施形態の概要について説明する。
図1は、実施形態の概要にかかる乱数生成器1の構成の一例を示すブロック図である。乱数生成器1は、量子アニーリングの結果を用いて乱数を生成する装置であり、図1に示すように入力受付部2、モデル生成部3、アニーリング結果取得部4、及び乱数出力部5を有する。
次に、実施の形態1について説明する。
図2は、実施の形態1にかかる乱数生成システム10の構成の一例を示すブロック図である。図2に示すように、乱数生成システム10は、乱数生成器100と量子アニーリングマシン200とを備える。乱数生成器100と量子アニーリングマシン200とは、例えば、有線又は無線のネットワークを介して、相互に通信可能に接続されている。なお、図2に示した構成では、量子アニーリングマシン200は、乱数生成器100とは別の装置として図示されているが、乱数生成器100に含まれてもよい。
乱数生成器100は、図2に示すように、処理制御部101、入力受付部102、モデル生成部103、アニーリング結果取得部104、疑似乱数生成部105、及び乱数出力部106を有する。
なお、入力受付部102は、さらに、生成すべき乱数の個数の指定を受付けてもよい。
このように、乱数生成器100は、コンピュータとして機能する装置であり、情報処理装置とも称される。
図4は、乱数生成器100の動作の一例を示すフローチャートである。以下、図4を参照しつつ、乱数生成器100による乱数の生成動作について説明する。
次に、実施の形態2について説明する。
量子アニーリングマシン200が備える量子ビットの数をk(kは2以上の整数)とする。この場合、実施の形態1で示した乱数生成器100では、量子の特性を利用した部分区間の選択、すなわち予測が困難な部分区間の選択は、最大でもk個の部分区間の中から行われることとなる。すなわち、設定可能な部分区間の数が量子ビットの数に依存してしまう。本実施の形態では、部分区間の選択を階層的に繰り返すことにより、より多くの部分区間の中から部分区間を選択する。これにより、量子アニーリングマシン200の量子ビット数が限られていても、より多くの部分区間の中から選択した乱数を出力することができる。
以下、実施の形態1と異なる構成及び処理について説明し、実施の形態1と同様な構成及び処理については適宜説明を省略する。
図6は、乱数生成器100aの動作の一例を示すフローチャートである。以下、図6を参照しつつ、乱数生成器100aによる乱数の生成動作について説明する。
次に、実施の形態3について説明する。
本実施の形態は、量子アニーリングマシン200が、乱数を生成するための複数のイジングモデルについて同時に量子アニーリングを行う点で、上述した実施の形態と異なっている。量子アニーリングマシン200が備える量子ビット数に余裕があれば、量子アニーリングマシン200は、複数のイジングモデルについての解を得ることが可能である。そこで、本実施の形態では、複数のイジングモデルに対する1回の量子アニーリングの実行により、効率的に複数の乱数を得ることができる乱数生成器100bについて説明する。
以下、実施の形態1と異なる構成及び処理について説明し、実施の形態1と同様な構成及び処理については適宜説明を省略する。
図8は、乱数生成器100bの動作の一例を示すフローチャートである。以下、図8を参照しつつ、乱数生成器100bによる乱数の生成動作について説明する。
2 入力受付部
3 モデル生成部
4 アニーリング結果取得部
5 乱数出力部
10 乱数生成システム
10a 乱数生成システム
10b 乱数生成システム
100 乱数生成器
100a 乱数生成器
100b 乱数生成器
101 処理制御部
101a 処理制御部
102 入力受付部
103 モデル生成部
103b モデル生成部
104 アニーリング結果取得部
104b アニーリング結果取得部
105 疑似乱数生成部
106 乱数出力部
150 ネットワークインタフェース
151 メモリ
152 プロセッサ
200 量子アニーリングマシン
Claims (9)
- 乱数の確率分布を指定する入力を受付ける入力受付手段と、
乱数の数値範囲を分割したn(nは2以上の整数)個の部分区間のそれぞれに割り当てられるn個の二値変数を用いたイジングモデルを、前記確率分布に基づいて生成するモデル生成手段と、
前記イジングモデルについての量子アニーリングの実行結果であるn個の前記二値変数の値を取得するアニーリング結果取得手段と、
前記実行結果として得られた値が所定の値である前記二値変数に割り当てられている前記部分区間に含まれる値を乱数として出力する乱数出力手段と
を有する乱数生成器。 - 前記イジングモデルは、前記二値変数についての第一の関数と前記二値変数についての第二の関数とを用いて表されるモデルであり、
前記第一の関数は、前記二値変数が割り当てられた前記部分区間における前記確率分布の値が大きいほど値が小さくなる関数の値と当該二値変数の値との積の総和で表される関数であり、
前記第二の関数は、n個の前記二値変数のいずれか一つが前記所定の値である場合に最小値となる関数である
請求項1に記載の乱数生成器。 - 前記モデル生成手段は、さらに、前記実行結果として得られた値が前記所定の値である前記二値変数に割り当てられている前記部分区間をさらに分割したn個の新たな部分区間のそれぞれに割り当てられるn個の二値変数を用いた新たなイジングモデルを、前記確率分布に基づいて生成し、
前記アニーリング結果取得手段は、さらに前記新たなイジングモデルについての量子アニーリングの実行結果であるn個の前記二値変数の値を取得し、
前記乱数出力手段は、前記新たなイジングモデルについての量子アニーリングの前記実行結果として得られた値が前記所定の値である前記二値変数に割り当てられている前記新たな部分区間に含まれる値を乱数として出力する
請求項1又は2に記載の乱数生成器。 - 同一の前記イジングモデルについての複数回の量子アニーリングの実行結果を取得することにより、複数の乱数を出力する
請求項1乃至3のいずれか一項に記載の乱数生成器。 - 前記モデル生成手段は、s個(sは2以上の整数)の前記イジングモデルを生成し、
前記アニーリング結果取得手段は、s個の前記イジングモデルにおける前記二値変数の集合であるt個(tは4以上の整数)の前記二値変数を同一の量子アニーリングマシンのt個の量子ビットに対応させることにより、s個の前記イジングモデルについての量子アニーリングの実行結果であるt個の前記二値変数の値を取得する
請求項1乃至4のいずれか一項に記載の乱数生成器。 - 前記実行結果として得られた値が前記所定の値である前記二値変数に割り当てられている前記部分区間に収まる疑似乱数を生成する疑似乱数生成手段をさらに有し、
前記乱数出力手段は、前記実行結果にしたがって選択された前記部分区間における前記疑似乱数を出力する
請求項1乃至5のいずれか一項に記載の乱数生成器。 - 前記部分区間を指定する入力を受付ける
請求項1乃至6のいずれか一項に記載の乱数生成器。 - 乱数生成器が、
乱数の確率分布を指定する入力を受付け、
乱数の数値範囲を分割したn(nは2以上の整数)個の部分区間のそれぞれに割り当てられるn個の二値変数を用いたイジングモデルを、前記確率分布に基づいて生成し、
前記イジングモデルについての量子アニーリングの実行結果であるn個の前記二値変数の値を取得し、
前記実行結果として得られた値が所定の値である前記二値変数に割り当てられている前記部分区間に含まれる値を乱数として出力する
乱数生成方法。 - 乱数の確率分布を指定する入力を受付ける入力受付ステップと、
乱数の数値範囲を分割したn(nは2以上の整数)個の部分区間のそれぞれに割り当てられるn個の二値変数を用いたイジングモデルを、前記確率分布に基づいて生成するモデル生成ステップと、
前記イジングモデルについての量子アニーリングの実行結果であるn個の前記二値変数の値を取得するアニーリング結果取得ステップと、
前記実行結果として得られた値が所定の値である前記二値変数に割り当てられている前記部分区間に含まれる値を乱数として出力する乱数出力ステップと
をコンピュータに実行させるプログラムが格納された非一時的なコンピュータ可読媒体。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022577000A JP7468938B2 (ja) | 2021-01-22 | 2021-11-22 | 乱数生成器、乱数生成方法、及びプログラム |
| DE112021006880.6T DE112021006880T5 (de) | 2021-01-22 | 2021-11-22 | Zufallszahlengenerator, Zufallszahlen-Erzeugungsverfahren und nichtflüchtiges, computerlesbares Medium das ein Programm speichert |
| US18/272,744 US20240303042A1 (en) | 2021-01-22 | 2021-11-22 | Random number generator, random number generation method, and non-transitory computer readable medium storing program |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021-008663 | 2021-01-22 | ||
| JP2021008663 | 2021-01-22 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2022158104A1 true WO2022158104A1 (ja) | 2022-07-28 |
Family
ID=82548710
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2021/042759 Ceased WO2022158104A1 (ja) | 2021-01-22 | 2021-11-22 | 乱数生成器、乱数生成方法、及びプログラムが格納された非一時的なコンピュータ可読媒体 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20240303042A1 (ja) |
| JP (1) | JP7468938B2 (ja) |
| DE (1) | DE112021006880T5 (ja) |
| WO (1) | WO2022158104A1 (ja) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003323292A (ja) * | 2002-04-30 | 2003-11-14 | Ntt Docomo Inc | 乱数列生成装置及び乱数列生成方法、並びに伝搬モデルシミュレーション装置及び方法 |
| WO2020170410A1 (ja) * | 2019-02-22 | 2020-08-27 | 株式会社 東芝 | 情報処理システム、情報処理方法およびプログラム |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7533068B2 (en) | 2004-12-23 | 2009-05-12 | D-Wave Systems, Inc. | Analog processor comprising quantum devices |
| WO2009137227A2 (en) * | 2008-04-11 | 2009-11-12 | Massachusetts Institute Of Technology | Analog logic automata |
| GB2568660B (en) | 2017-10-20 | 2020-10-14 | Graphcore Ltd | Generating Random Numbers Based on a Predetermined Probaility Distribution in an Execution Unit |
| JP7323519B2 (ja) * | 2018-06-22 | 2023-08-08 | 株式会社リクルート | データ管理システム、データ管理装置、データ管理方法及びデータ管理プログラム |
| JP7024807B2 (ja) | 2019-06-28 | 2022-02-24 | Jfeスチール株式会社 | 缶用鋼板およびその製造方法 |
| CN112650472A (zh) * | 2020-12-15 | 2021-04-13 | 中国科学院上海微系统与信息技术研究所 | 构造赝自旋的装置 |
-
2021
- 2021-11-22 WO PCT/JP2021/042759 patent/WO2022158104A1/ja not_active Ceased
- 2021-11-22 JP JP2022577000A patent/JP7468938B2/ja active Active
- 2021-11-22 US US18/272,744 patent/US20240303042A1/en active Pending
- 2021-11-22 DE DE112021006880.6T patent/DE112021006880T5/de active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003323292A (ja) * | 2002-04-30 | 2003-11-14 | Ntt Docomo Inc | 乱数列生成装置及び乱数列生成方法、並びに伝搬モデルシミュレーション装置及び方法 |
| WO2020170410A1 (ja) * | 2019-02-22 | 2020-08-27 | 株式会社 東芝 | 情報処理システム、情報処理方法およびプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| DE112021006880T5 (de) | 2023-11-16 |
| JP7468938B2 (ja) | 2024-04-16 |
| US20240303042A1 (en) | 2024-09-12 |
| JPWO2022158104A1 (ja) | 2022-07-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6922945B2 (ja) | 情報処理方法 | |
| US20170083873A1 (en) | Infeasible schedules in a quantum annealing optimization process | |
| JP6888737B2 (ja) | 学習装置、学習方法、及びプログラム | |
| JP2018173890A (ja) | 情報処理装置、情報処理方法、及びプログラム | |
| JP7396505B2 (ja) | モデル生成プログラム、モデル生成方法及びモデル生成装置 | |
| US20240232574A9 (en) | Method and apparatus for predicting recipe property reflecting similarity between chemical materials | |
| TWI758223B (zh) | 具有動態最小批次尺寸之運算方法,以及用於執行該方法之運算系統及電腦可讀儲存媒體 | |
| US10248462B2 (en) | Management server which constructs a request load model for an object system, load estimation method thereof and storage medium for storing program | |
| JP2022125725A (ja) | 情報処理システム、情報処理方法及びプログラム | |
| US9841990B2 (en) | Encoding of a schedule into a binary structure | |
| WO2022158104A1 (ja) | 乱数生成器、乱数生成方法、及びプログラムが格納された非一時的なコンピュータ可読媒体 | |
| CN114611143A (zh) | 一种数据的脱密共享方法、装置、设备及介质 | |
| Schmidt et al. | Load-balanced parallel constraint-based causal structure learning on multi-core systems for high-dimensional data | |
| JP2020052813A (ja) | ニューラルネットワーク、情報付加装置、学習方法、情報付加方法、およびプログラム | |
| JPWO2022249373A5 (ja) | ||
| Rigoni et al. | Metamodels for fast multi-objective optimization: trading off global exploration and local exploitation | |
| WO2022249373A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
| Reese | Random number generators in genetic algorithms for unconstrained and constrained optimization | |
| JP7388566B2 (ja) | データ生成プログラム、方法及び装置 | |
| JP2016207072A (ja) | 生成装置、生成方法、及び生成プログラム | |
| US10503475B1 (en) | Forensically reproducible random number generator and associated method of use | |
| JPWO2023058184A5 (ja) | ||
| KR20220084391A (ko) | 분기 형태들 합성 | |
| JP2022164162A (ja) | 情報処理システム、情報処理方法及びプログラム | |
| JP7754320B2 (ja) | ログデータ解析装置、ログデータ解析方法、及びログデータ解析プログラム |
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: 21921207 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2022577000 Country of ref document: JP Kind code of ref document: A |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 18272744 Country of ref document: US |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 112021006880 Country of ref document: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 21921207 Country of ref document: EP Kind code of ref document: A1 |

