Combinatorial optimization problem processing device and method
The combinatorial optimization problem processing device efficiently solves NP-hard problems by initializing a neutral state optically and dynamically controlling unit operation, addressing inefficiencies in conventional methods.
Patent Information
- Application Number
- PCT/JP2024/016992
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-07
- Publication Date
- 2025-11-13
AI Technical Summary
Conventional methods for solving NP-hard combinatorial optimization problems are inefficient due to the exponential increase in combinations as the number of elements increases, requiring unrealistically long times to find optimal solutions.
A combinatorial optimization problem processing device and method that utilizes an optical interferometer and optical signal processing units to initialize a neutral state without requiring an initialization optical pulse train, dynamically controlling the number of operating units based on problem scale, and employing optical interference to find solutions efficiently.
Enables the finding of optimal solutions to combinatorial optimization problems in a significantly shorter time by eliminating the need for initialization optical pulse trains and adjusting unit operation based on problem scale, leveraging optical interference and signal processing.
Smart Images

Figure JP2024016992_13112025_PF_FP_ABST
Abstract
Description
Combinatorial optimization problem processing device and method
[0001] The present disclosure relates to a combinatorial optimization problem processing apparatus and method.
[0002] A combinatorial optimization problem is a problem of searching for a combination (solution) of parameters that maximizes (or minimizes) an evaluation index under given conditions. Combinatorial optimization problems can be applied to situations where better choices are required in various fields such as delivery and drug discovery.
[0003] NP-hard class combinatorial optimization problems have the problem that the number of combinations increases exponentially as the number of elements (number of parameters) N in the combination increases, and therefore it takes an unrealistically long time to find the optimal solution using a "brute force" method.
[0004] It is known that there is a correspondence between solving a combinatorial optimization problem and finding the most stable energy state of an Ising model. Non-Patent Document 1 discloses a method for finding the most stable state of an Ising model using a method similar to simulated annealing, by implementing the method on a CMOS semiconductor chip and simulating the chip to find the most stable energy state, thereby essentially solving a combinatorial optimization problem.
[0005] However, conventional methods have the problem of taking a long time to find an optimal solution. Therefore, the inventors have devised a combinatorial optimization problem processing device and method that can find an optimal solution to a combinatorial optimization problem in a shorter time than conventional methods.
[0006] Masanao Yamaoka and four others, "CMOS Ising Computers Contributing to the Optimization of Social Systems," Hitachi Review, Vol. 99, No. 03, pp. 328-329
[0007] In the method devised by the inventors, when executing a process to solve a combinatorial optimization problem corresponding to an Ising model consisting of N spins, an optical clock pulse train and an initialization optical pulse train consisting of N optical pulses, which are mutually timed appropriately, are first input, thereby creating a neutral state in which the magnitude of interaction between the N pulses is zero, thereby initializing the system.
[0008] Conventional methods require a light source to generate initialization optical pulses, and also require an adjustment system to adjust the timing of the initialization optical pulse train and the high-level or peak-level optical power in response to factors such as individual differences between devices and fluctuations in the internal state due to environmental factors in the device.
[0009] The present disclosure has been made in view of the above, and aims to provide a combinatorial optimization problem processing technique that does not require input of an initialization optical pulse train.
[0010] A combinatorial optimization problem processing apparatus according to one aspect of the present disclosure is a combinatorial optimization problem processing apparatus that processes a combinatorial optimization problem of N elements in association with an Ising model, and includes: a 1×2 Mach-Zehnder optical modulator that inputs and modulates a polarized clock pulse train; an Ising model calculation unit that inputs the polarized clock pulse train modulated by the 1×2 Mach-Zehnder optical modulator and causes optical interference according to Ising interactions in the Ising model; and an optical signal pulse train and a polarized clock pulse train output from the Ising model calculation unit that inputs and modulates the polarized clock pulse train according to the optical power level of each pulse in the input optical signal pulse train. an optical signal processing unit configured by cascading a predetermined number of units that output an optical signal that has transitioned to an optical power level closer to the bistable point; an initialization control unit that minimizes the number of units operating in the optical signal processing unit and creates and initializes a neutral state in which the interaction between the elements is zero; and a modulation signal generation unit that waveform-shapes an electrical signal obtained by photoelectrically converting the optical signal after the transition to generate a modulation signal for the 1 × 2 Mach-Zehnder optical modulator and outputs a monitor signal that represents a solution to the optimization problem to the outside, and during a solution search, the number of operating units is controlled according to the scale of the combinatorial optimization problem.
[0011] A combinatorial optimization problem processing apparatus according to one aspect of the present disclosure is a combinatorial optimization problem processing apparatus that processes a combinatorial optimization problem of N elements in association with an Ising model, and includes a first phase modulation unit and a second phase modulation unit, a differential phase modulation Mach-Zehnder optical modulator that receives and modulates a polarized clock pulse train, an Ising model calculation unit that receives and demultiplexes the polarized clock pulse train modulated by the differential phase modulation Mach-Zehnder optical modulator, causes optical interference according to Ising interaction in the Ising model, and outputs a monitor signal that represents a solution to the optimization problem to the outside, an optical demultiplexer that receives and demultiplexes the optical signal pulse train output from the Ising model calculation unit, outputs one of the demultiplexed signals to the first phase modulation unit as a first phase-modulated signal, and outputs the other demultiplexed signal as a second phase-modulated signal, and an optical demultiplexer that receives and demultiplexes the second phase-modulated signal to the first phase modulation unit and demultiplexes the polarized clock pulse train modulated by the differential phase modulation Mach-Zehnder optical modulator to the outside. an optical signal processing unit configured by cascading a predetermined number of units, the optical signal processing unit being arranged either between the Ising model calculation unit and the optical demultiplexer, between the optical demultiplexer and the delay unit, or between the delay unit and the differential phase shift type Mach-Zehnder optical modulator, and receiving the optical signal pulse train and the polarized clock pulse train output from the Ising model calculation unit, and outputting an optical signal whose optical power level has transitioned to an optical power level closer to a bistable point in accordance with the optical power level of each pulse of the input optical signal pulse train; and an initialization control unit that minimizes the number of operating units in the optical signal processing unit and performs initialization by creating a neutral state in which interaction between the elements is zero, and wherein the number of operating units is controlled in accordance with the scale of the combinatorial optimization problem during a solution search.
[0012] According to the present disclosure, it is possible to provide a combinatorial optimization problem processing technique that does not require input of an initialization optical pulse train.
[0013] FIG. 1 is a diagram illustrating an example of an Ising model. FIG. 2 is a diagram schematically illustrating an example of a combinatorial optimization problem. FIG. 3 is a diagram illustrating an example of a configuration of a combinatorial optimization problem processing apparatus according to a first embodiment. FIG. 4 is a time chart for explaining the relationship between a polarized clock pulse train and each sequence. FIG. 5 is a diagram illustrating an example of a configuration of an optical interferometer. FIG. 6 is a diagram illustrating an example of a configuration of an optical signal processing unit. FIG. 7 is a diagram illustrating an example of a configuration of an optical signal processing unit. FIG. 8 is a diagram illustrating an example of optical signal processing units connected in cascade. FIG. 9 is a diagram illustrating an example of optical signal processing units connected in cascade. FIG. 10 is a diagram illustrating an example of a circuit configuration of an optical signal processing unit. FIG. 11 is a diagram illustrating an example of a circuit configuration of an optical signal processing unit. FIG. 12 is a diagram illustrating an example of a configuration of a combinatorial optimization problem processing apparatus according to a second embodiment. FIG. 13 is a diagram illustrating an example of a configuration of a differential phase shift keying Mach-Zehnder optical modulator. FIG. 14 is a diagram illustrating an example of a circuit configuration of an optical signal processing unit. FIG. 15 is a diagram illustrating an example of a circuit configuration of an optical signal processing unit. FIG. 16 is a diagram illustrating an example of a circuit configuration of an optical signal processing unit. Fig. 17 is a diagram showing an example of the configuration of a functional circuit unit having the same function as the optical interferometer. Fig. 18 is a graph showing the change in the peak power of the output optical signal with respect to steps in this embodiment. Fig. 19 is a graph showing the change in the peak power of the output optical signal with respect to steps in a comparative example.
[0014] Before describing the embodiments of the present disclosure, a brief description will be given of the Ising model and combinatorial optimization problems.
[0015] (Ising Model) Figure 1 shows an example of an Ising model. The Ising model is a statistical mechanics model that represents the properties of magnetic materials (such as ferromagnets and antiferromagnets). The Ising model is composed of lattice points that take either one of two spin states, up or down, and is stable when the energy H, which takes into account the interactions between adjacent lattice points, is at its lowest.
[0016] In numerical calculations using techniques such as neural networks, the Ising model calculates the spin state σ i and the interaction coefficient J, which represents the force of interaction between the two spins. ij, and the external magnetic field coefficient h, which represents the strength of the externally applied magnetic field. i The energy H of the Ising model can be expressed as follows:
[0017]
[0018] In the Ising model, the spin states are updated so that the energy H is minimized. By mapping the evaluation index of the combinatorial optimization problem so that it corresponds to the energy of this Ising model and converging the Ising model, the combination of spin states that minimizes the energy can be obtained. This means that a combination of parameters that minimizes the evaluation index of the original optimization problem is found.
[0019] In addition, optimization simulators generally referred to as Ising model machines are expanded to take into account interactions not only between adjacent lattice points but also between all lattice points.
[0020] (Combinatorial Optimization Problem) Fig. 2 is a diagram schematically illustrating an example of a combinatorial optimization problem called a maxcut3 problem with N = 16. Circles in Fig. 2 represent each element of N = 16.
[0021] The max-cut 3 problem is a problem of maximizing the sum of the weights of the edges that are cut when each element is divided into two groups. The number "3" refers to the number of interactions in the Ising model.
[0022] The right diagram in Figure 2 is a diagram that shows a schematic diagram of interactions. The right diagram shows an example of interactions from three elements: the elements before and after (±1) and the element eight elements before (-8). Note that interactions for max cut 3 with N=16 are not limited to this example.
[0023] The combinatorial optimization problem processing apparatus according to the embodiment will be described below using an example of solving the combinatorial optimization problem shown in FIG.
[0024] 3 is a diagram showing an example of the configuration of a combinatorial optimization problem processing apparatus according to Embodiment 1. The combinatorial optimization problem processing apparatus 100 shown in the diagram includes a one-input, two-output Mach-Zehnder optical modulator 10 (hereinafter referred to as the Mach-Zehnder optical modulator 10), an optical interferometer 20, an optical signal processing unit 30, a modulated signal generation unit 40, and an initialization control unit 50.
[0025] A polarized coherent clock pulse train (hereinafter referred to as a polarized clock pulse train) is input to the Mach-Zehnder optical modulator 10. The Mach-Zehnder optical modulator 10 adjusts the fixed phase condition so that the following equation (2) holds.
[0026]
[0027] Here, i is a number assigned to an arbitrarily determined reference pulse, and N is the problem scale. In the case of the combinatorial optimization problem in FIG. 2, N=16.
[0028] Generally, due to manufacturing errors and the like, a Mach-Zehnder optical modulator deviates from the condition that the two output ports become A and a bar above A (hereinafter referred to as A-), so a phase adjustment unit capable of adjusting the phase is provided in one or both arms of the interferometer to make adjustments. If equation (2) is established, the outputs from the two output ports will satisfy the condition of A and A-.
[0029] The total return time on the main path is calculated by multiplying the problem size N by the pulse interval d of the polarization clock pulse train. t The polarization clock pulse train is supplied to the Mach-Zehnder optical modulator 10 with the polarization clock pulse train being matched with the polarization clock pulse train. The polarization clock pulse train is modulated by the Mach-Zehnder optical modulator 10, and the outputs A and A- from the Mach-Zehnder optical modulator 10 are input to the optical interferometer 20. The return time is the time from when a specific optical pulse is in a state to be modulated by the Mach-Zehnder optical modulator 10 until the electrical pulse derived from this pulse reaches the Mach-Zehnder optical modulator 10 and drives it to be modulated.
[0030] In this embodiment, each pulse i in the polarization clock pulse train corresponds to each element of the combinatorial optimization problem. Then, a set of N=16 pulses according to equation (2) can be regarded as one sequence. Specifically, i, i+N, i+2N, ... is one sequence, and (i+1), (i+1)+N, (i+1)+2N, ... is another sequence. There are N sequences in total, up to (i+(N-1)), (i+(N-1))+N, (i+(N-1))+2N, ....
[0031] FIG. 4 shows an example of a time chart illustrating the relationship between the polarization clock pulse train and each series. In FIG. 4, the polarization clock pulse train and four series of pulse trains are illustrated lined up vertically. Specifically, the first pulse train is the polarization clock pulse train input to, for example, A- of the optical interferometer 20. The second pulse train is a pulse train 1bD in which the polarization clock pulse train is delayed by one polarization clock pulse. The third pulse train is a pulse train 0bD in which the polarization clock pulse train is not delayed. The fourth pulse train is a pulse train 2bD in which the polarization clock pulse train is delayed by two pulses. The fifth pulse train is a pulse train 9bD in which the polarization clock pulse train is delayed by nine pulses. For ease of understanding, the polarization clock pulse trains are assigned identification numbers from the left as -8, -7, -6, ..., -1, 0, +1, +2, +3, .... The pulse width of the polarization clock pulse train is t pw , pulse interval is d t , the effective peak power is P opt Let's say.
[0032] Here, let's look at the pulse with identification number 0 in pulse train 1bD. The pulse with identification number 0 is the first pulse when viewed in units of N pulse periods. The identification numbers of the other pulses in pulse trains 0bD, 2bD, and 9bD, which have the same timing as this first pulse, are +1, -1, and -8, respectively. In other words, the +1 pulse, which is one pulse ahead of the pulse with identification number 0, the -1 pulse, which is one pulse behind, and the -8 pulse, which is eight pulses before, all match at the same timing.
[0033] By causing these polarized pulses to interfere with each other in the optical interferometer 20, the interaction Q AFcan be generated.
[0034]
[0035] Here, i is the serial number of the pulse that constitutes the polarization clock pulse train, k is the number that represents the position of the pulse within N, and J i:k is a coefficient representing the magnitude of the interaction. The second term in the parentheses on the right side of equation (3) corresponds to A output from the output port of the Mach-Zehnder optical modulator 10. Equation (3) represents an antiferromagnetic interaction.
[0036] In the above example, k is plural, for example, k = +1, k = -1, k = -8. The k values correspond to the interactions shown in the right diagram of Figure 2.
[0037] The power of the polarized clock pulse train output by the optical interferometer 20 can be expressed by the following equation:
[0038]
[0039] In this way, by inputting the output optical pulses derived from the polarized clock pulse train from the Mach-Zehnder optical modulator 10 into the optical interferometer 20, it is possible to generate an optical signal pulse train influenced by the desired interaction.
[0040] (Optical Interference Circuit) Fig. 5 is a diagram showing an example of the configuration of the optical interferometer 20. The optical interferometer 20 shown in Fig. 5 includes a plurality of delay sections, namely, first delay section 22a, second delay section 22b, third delay section 22c, and fourth delay section 22d, a plurality of optical waveguides, namely, first main path 21a, second main path 21b, first effect path 21c, second effect path 21e, and third effect path 21f, and a plurality of optical couplers, namely, first optical coupler 23a, second optical coupler 23b, third optical coupler 23c, and fourth optical coupler 23d.
[0041] The first delay unit 22a delays, by one pulse, the polarized clock pulse train obtained by branching the polarized clock pulse train (A) output by the Mach-Zehnder optical modulator 10. The first main path 21a propagates the first polarized clock pulse train 1bD, which is the polarized clock pulse train (A) delayed by one pulse.
[0042] The second delay unit 22b delays, by one pulse, the polarized clock pulse train obtained by branching the polarized clock pulse train (A) output by the Mach-Zehnder optical modulator 10, as in the first delay unit. The second main path 21b propagates a second polarized clock pulse train 1bD obtained by delaying the polarized clock pulse train (A) by one pulse.
[0043] The first action path 21c propagates the third polarized clock pulse train 0bD obtained by branching the polarized clock pulse train (A-) output by the Mach-Zehnder optical modulator 10 as it is.
[0044] The third delay unit 22c delays by two pulses the polarized clock pulse train obtained by branching the polarized clock pulse train (A-) output from the Mach-Zehnder optical modulator 10. The second action path 21e propagates a fourth polarized clock pulse train 2bD obtained by delaying the polarized clock pulse train (A-) by two pulses.
[0045] The fourth delay unit 22d delays the polarized clock pulse train obtained by branching the polarized clock pulse train (A-) by nine pulses. The third action path 21f propagates a fifth polarized clock pulse train 9bD obtained by delaying the polarized clock pulse train (A-) by nine pulses.
[0046] The first optical coupler 23a causes interference between the fifth polarized clock pulse train 9dD and the fourth polarized clock pulse train 2bD so that their amplitudes are added together. The second optical coupler 23b causes interference between the output optical signal of the first optical coupler 23a and the third polarized clock pulse train 0bD so that their amplitudes are added together. The third optical coupler 23c causes interference between the output optical signal of the second optical coupler 23b and the second polarized clock pulse train 1bD so that their amplitudes are subtracted together. The fourth optical coupler 23d causes interference between the output optical signal of the third optical coupler 23c and the first polarized clock pulse train 1bD so that their amplitudes are subtracted together.
[0047] The optical interferometer 20 described above can generate the interaction shown in the right diagram of Fig. 2. By changing the combination of the delay amounts of the first delay unit 22a to the fourth delay unit 22d, it is also possible to generate an interaction based on a combination of different elements.
[0048] The optical interferometer 20 performs initialization to create a neutral state in which the magnitude of the relationship between elements is 0, and creates a state in which a mutual relationship occurs between the elements corresponding to the interaction in the Ising model expressed by equations (3) and (4), thereby causing optical interference according to the Ising interaction in the Ising model from the neutral state. Note that the 0 and 1 states of the optical pulse train observed in the monitor signal correspond to the spin up or down states of each lattice point in the Ising model.
[0049] (Optical Signal Processing Unit) The optical signal processing unit 30 receives the optical signal pulse train and the polarized clock pulse train output from the optical interferometer 20, and outputs an optical signal whose optical power level has transitioned to a level closer to the bistable point according to the power level of each pulse in the optical signal pulse train. The delay due to the insertion of the optical signal processing unit 30 is adjusted overall so that the operating clock of the entire combinatorial optimization problem processing device 100 is not changed, or the clock length of the entire combinatorial optimization problem processing device 100 is adjusted and operated assuming the delay due to the insertion of the optical signal processing unit 30.
[0050] By inserting the optical signal processing unit 30 after the optical interferometer 20, the power level of the optical signal pulse from the solver (optical interferometer 20) can be improved to appropriately transition to a standard level of 0 or 1 within a range of practical processing steps. This makes it possible to obtain an optical pulse pattern output corresponding to the desired "energy stable state of the Ising model," and i:k It is possible to obtain a good solution even in a region where the interaction is large and the sum of the absolute values of is close to 1 within a range not exceeding 1.
[0051] 6 and 7 are diagrams showing an example of the configuration of the optical signal processing unit 30. The optical signal processing unit 30 receives the optical signal pulse train (INPUT DATA in the diagram) and the polarized clock pulse train (OPTICAL CLK PULSE in the diagram) output from the optical interferometer 20, and outputs an optical signal pulse train in which each pulse of the polarized clock pulse train undergoes a transition in optical power level according to the power level of each pulse of the input optical signal pulse train. Specifically, for optical signal pulses within the standard optical power range (between 0 and 1), the optical signal processing unit 30 outputs optical signal pulses derived from the optical clock pulse train in which the optical power level transitions closer to 0 when Pn:in<0.5, and closer to 1 when Pn:in>0.5, with the input power level of the standard optical power Pn=0.5 as the demarcation point.
[0052] The optical signal processing unit 30 in Figure 6 receives control signals (CTRL BIAS-1, CTRL BIAS-2 in the figure) for controlling whether or not the above processing is performed. The optical signal processing unit 30 in Figure 7 receives control optical signals (OPTICAL CTRL PULSE-1, OPTICAL CTRL PULSE-2 in the figure) for controlling whether or not the above processing is performed. The control signals in Figure 6 are electrical signals, while the control optical signals in Figure 7 are optical signals. The control signals in Figure 6 are input to the optical signal processing unit 30 via an electronic switch 35 controlled by an initialization control signal. The control optical signal in Figure 7 is input to the optical signal processing unit 30 via an optical switch 36 controlled by an initialization control signal.
[0053] The optical signal processing units 30 in Figures 6 and 7 are cascaded in an appropriate number of stages (n stages in the figure) as shown in Figure 8, and a polarized clock pulse train (OPTICAL CLK in the figure) and a control signal or control optical signal (CTRL-1, CTRL-2 in the figure) are input to each of the optical signal processing units 30. The optical signal processing unit 30 to perform the above processing is determined depending on the scale of the problem. For example, when the problem scale is N=100, full coupling, J i:kIn the case of a system in which the absolute value of is constant and ferromagnetic and antiferromagnetic interactions are randomly allocated, control signals or control optical signals that cause the above processing to be performed are input to four of the n-stage optical signal processing units 30, and no control signals or control optical signals are input to the remaining n-4-stage optical signal processing units 30. Problem size N=50, full coupling, J i:k In the case of a system in which the absolute value of is constant and ferromagnetic and antiferromagnetic interactions are randomly allocated, a control signal or control optical signal that causes the above processing to be performed is input to three of the n stages of optical signal processing units 30, and no control signal or control optical signal is input to the remaining n-3 stages of optical signal processing units 30.
[0054] In this way, by dynamically changing the effective number of stages of the optical signal processing unit 30 depending on the scale of the problem, it is possible to obtain, with a single combinatorial optimization problem processing apparatus 100, an optical pattern pulse output corresponding to a desired stable energy state of the Ising model for problems within a predetermined desired range of problem scale.
[0055] When performing initialization, the initialization control unit 50 turns off the electronic switch 35 or the optical switch 36 using an initialization control signal to block the control signal or control optical signal input to the optical signal processing unit 30. By minimizing the effective number of stages in the optical signal processing unit 30 (for example, to 0), it is possible to cause a phenomenon in which the optical signal processing unit 30 spontaneously transitions to the initialized state due to the characteristics of the phenomenon.
[0056] In the conventional method, the effective peak power is the effective peak power P opt In the conventional method, a neutral state was created by combining an initialization optical pulse train that is half of the original pulse train with the output signal of the optical interferometer 20. However, in this embodiment, the above-described mechanism is provided, making the optical initialization pulse train unnecessary.
[0057] 9, the m-th stage of optical signal processing units 30 may be dynamically controllable among the n-th stage of optical signal processing units 30. A combinatorial optimization problem processing apparatus 100 including the optical signal processing units 30 in FIG. 9 can solve combinatorial optimization problems ranging from nm stages to n stages.
[0058] FIG. 10 shows an example of the circuit of the optical signal processing unit 30 shown in FIG. 6 . The optical signal processing unit 30 shown in FIG. 10 includes a processing unit 31, control units 32 and 33, and a delay unit 34. The processing unit 31 inputs an optical signal pulse train (INPUT DATA in the figure) and a polarization clock pulse train (OPTICAL CLK PULSE in the figure) and transitions the optical power level of each pulse of the polarization clock pulse train according to the power level of each pulse of the optical signal pulse train. The processing unit 31 is composed of a Mach-Zehnder optical modulator (MZM), a photoelectric conversion unit (PD), a preamplifier, a Bessel filter, and a postamplifier. The PD photoelectrically converts the optical signal pulse train into an electrical signal pulse train. The preamplifier amplifies the electrical signal pulse train. The Bessel filter is a type of low-pass filter that widens the pulse width. The postamplifier amplifies the pulse train output by the Bessel filter and inputs it to the modulation terminal of the MZM. The MZM outputs an optical pulse train that has transitioned according to the power level of each pulse of the optical signal pulse train.
[0059] The control unit 32 receives a control signal (CTRL BIAS-1 in the figure) and outputs the optical signal pulse train input to the optical signal processing unit 30 to the processing unit 31 or delay unit 34 in accordance with the control signal.
[0060] The control unit 33 receives a control signal (CTRL BIAS-2 in the figure) and outputs the output of the processing unit 31 or the output of the delay unit 34 as the output of the optical signal processing unit 30 (OUTPUT DATA in the figure) in response to the control signal.
[0061] The delay unit 34 adjusts the delay so that there is no difference in the output delay between when processing is performed by the processing unit 31 and when processing is not performed.
[0062] The control units 32 and 33 output either the optical signal processed by the processing unit 31 or the optical signal delayed by the delay unit 34 .
[0063] Fig. 11 shows an example of the circuit of optical signal processing unit 30 in Fig. 7. Optical signal processing unit 30 shown in the figure includes processing unit 31, control units 32 and 33, and delay unit 34. Optical signal processing unit 30 in Fig. 11 differs from optical signal processing unit 30 in Fig. 10 in that the operation of optical signal processing unit 30 is switched by an optical signal.
[0064] The control units 32 and 33 are composed of an MZM, a PD, a preamplifier, a Bessel filter, and a postamplifier. The PD photoelectrically converts the control optical signal (OPTICAL CTRL PULSE-1, 2 in the figure) into an electrical signal, which is then processed by the preamplifier, Bessel filter, and postamplifier and input to the modulation terminal of the MZM. The control unit 32 outputs the optical signal pulse train (INPUT DATA in the figure) input to the optical signal processing unit 30 to the processing unit 31 or the delay unit 34 in accordance with the control optical signal (OPTICAL CTRL PULSE-1 in the figure). The control unit 33 outputs the output of the processing unit 31 or the output of the delay unit 34 as the output of the optical signal processing unit 30 (OUTPUT DATA in the figure) in accordance with the control optical signal (OPTICAL CTRL PULSE-2 in the figure).
[0065] The processing unit 31 and delay unit 34 are the same as the optical signal processing unit 30 in FIG.
[0066] (Modulation signal generation unit) The modulation signal generation unit 40 generates a modulation signal for the Mach-Zehnder optical modulator 10 by waveform shaping the electrical signal obtained by photoelectric conversion of the optical signal pulse processed by the optical signal processing unit 30, and also outputs a monitor signal representing the solution to the optimization problem to the outside.
[0067] The modulation signal generation unit 40 is composed of, for example, an opto-electrical conversion unit, a preamplifier, a Bessel filter, a power splitter, and a postamplifier. The opto-electrical conversion unit photoelectrically converts the optical signal pulse train into an electrical signal pulse train. The preamplifier amplifies the electrical signal pulse train. The Bessel filter is a type of low-pass filter that widens the pulse width. The power splitter taps the pulse train output by the Bessel filter and outputs a monitor signal to the outside. The output signal of the power splitter is amplified by the postamplifier and connected to the modulation terminal of the Mach-Zehnder optical modulator 10.
[0068] After a neutral state is created by performing initialization, the above-mentioned interactions occur naturally and spontaneously in the optical interferometer 20 due to "fluctuations" such as noise, resulting in a breaking of symmetry and the emergence of a stable state when considered as an Ising model.
[0069] In this way, by interpreting the stable state when the Ising model is considered to have emerged from an emergent phenomenon that goes beyond so-called reductionist understanding, it is possible to find a solution to a combinatorial optimization problem.
[0070] 12 is a diagram showing an example of the configuration of a combinatorial optimization problem processing apparatus according to a second embodiment. The combinatorial optimization problem processing apparatus 200 shown in the figure includes a differential phase shift keying Mach-Zehnder optical modulator 60, an optical interferometer 20, an optical signal processing unit 30, an initialization control unit 50, an optical demultiplexer 70, and a delay unit 80. The optical interferometer 20, the optical signal processing unit 30, and the initialization control unit 50 are the same as those in the first embodiment, and therefore will not be described here.
[0071] The differential phase modulation Mach-Zehnder optical modulator 60 receives a polarized clock pulse train as input. The differential phase modulation Mach-Zehnder optical modulator 60 adjusts the fixed phase condition so that equation (2) described in the first embodiment holds. The polarized clock pulse trains A and A- modulated by the differential phase modulation Mach-Zehnder optical modulator 60 and output from the two output ports are input to the optical interferometer 20.
[0072] The differential phase modulation type Mach-Zehnder optical modulator 60 includes a first phase modulation section and a second phase modulation section, and is the same as the Mach-Zehnder interference type optical intensity modulation section described in Japanese Patent No. 5632330. Fig. 13 shows an example of the configuration of the differential phase modulation type Mach-Zehnder optical modulator 60. As shown in Fig. 13, the differential phase modulation type Mach-Zehnder optical modulator 60 includes two multimode interference sections (MMI) 63 and 64, a first phase modulation section 61, and a second phase modulation section 62.
[0073] Under the phase condition of the differential phase modulation Mach-Zehnder optical modulator 60 in its basic state, the polarized clock pulse train input to the MMI 63 is output to one of the outputs (A-) of the MMI 64. At this time, when a modulation signal that shifts the previous phase condition by exactly π is input to the first phase modulation unit 61, the state switches to one of the outputs (A) of the MMI 64, and the differential phase modulation Mach-Zehnder optical modulator 60 enters an open state. This open state is pulled back to one of the outputs (A-) of the MMI 64 by inputting a modulation signal that pulls the phase condition back by exactly π to the second phase modulation unit 62, and the differential phase modulation Mach-Zehnder optical modulator 60 returns to a closed state.
[0074] That is, the differential phase modulation type Mach-Zehnder optical modulator 60 is in an open state when a modulation signal is input to the first phase modulation section 61, and is in a closed state when a modulation signal is input to the second phase modulation section 62. The configuration and operation of the differential phase modulation type Mach-Zehnder optical modulator 60 are described in Japanese Patent No. 5632330. Further explanation will be omitted here.
[0075] The optical interferometer 20 receives as input the polarization clock pulse train modulated by the differential phase shift keying Mach-Zehnder optical modulator 60, generates a predetermined interaction in the Ising model at a period of N pulses in the polarization clock pulse train, and outputs a monitor signal representing the solution to the above-mentioned combinatorial optimization problem to the outside. The signal output from the terminal not labeled OUT of the fourth optical coupler 23d in Figure 5 is the monitor signal. The monitor signal represents the solution to the optimization problem.
[0076] As in the first embodiment, an optical signal processing unit 30 is inserted after the optical interferometer 20. The optical signal processing unit 30 receives an optical signal pulse train and outputs an optical signal pulse train that has undergone transitions in accordance with the power level of each pulse of the input optical signal pulse train. In the example of Fig. 12, the optical signal processing unit 30 is inserted between the optical interferometer 20 and the optical demultiplexer 70, but the optical signal processing unit 30 may also be inserted between the optical demultiplexer 70 and the delay unit 80, or between the delay unit 80 and the differential phase shift type Mach-Zehnder optical modulator 60.
[0077] The optical demultiplexer 70 receives the optical signal pulse train from the optical interferometer 20 as input and provides two demultiplexed outputs. One of the optical signal pulses demultiplexed by the optical demultiplexer 70 is input as a drive signal to the first phase modulation unit 61 of the differential phase shift type Mach-Zehnder optical modulator 60, and the other optical signal pulse is input to the delay unit 80. The optical signal pulse delayed in the delay unit 80 is output as a drive signal to the second phase modulation unit 62 of the differential phase shift type Mach-Zehnder optical modulator 60.
[0078] 14 shows an example of the circuit of the optical signal processing unit 30 in FIG. 6 using a differential phase shift keying Mach-Zehnder optical modulator. The optical signal processing unit 30 shown in the figure includes a processing unit 31, control units 32 and 33, and a delay unit 34. The optical signal processing unit 30 in FIG. 14 differs from the optical signal processing unit 30 in FIG. 10 in that a differential phase shift keying Mach-Zehnder optical modulator is used in the processing unit 31.
[0079] The processing unit 31 inputs an optical signal pulse train (INPUT DATA in the figure) and a polarization clock pulse train (OPTICAL CLK PULSE in the figure) and transitions the optical power level of each pulse of the polarization clock pulse train in accordance with the power level of each pulse of the optical signal pulse train. The processing unit 31 is composed of a multiplexer / demultiplexer, a delay unit, and a differential phase shift Mach-Zehnder optical modulator. The polarization clock pulse train is input to the differential phase shift Mach-Zehnder optical modulator. The optical signal pulse train from the control unit 32 is demultiplexed by the multiplexer / demultiplexer and input to two phase modulation units of the differential phase shift Mach-Zehnder optical modulator. One of the demultiplexed optical signals is input to the phase modulation unit via the delay unit. The differential phase shift Mach-Zehnder optical modulator outputs an optical pulse train that has transitioned in accordance with the power level of each pulse of the optical signal pulse train.
[0080] The control unit 32 receives a control signal (CTRL BIAS-1 in the figure) and outputs the optical signal pulse train input to the optical signal processing unit 30 to the processing unit 31 or delay unit 34 in accordance with the control signal.
[0081] The control unit 33 receives a control signal (CTRL BIAS-2 in the figure) and outputs the output of the processing unit 31 or the output of the delay unit 34 as the output of the optical signal processing unit 30 (OUTPUT DATA in the figure) in response to the control signal.
[0082] The delay unit 34 adjusts the delay so that there is no difference in the output delay between when processing is performed by the processing unit 31 and when processing is not performed.
[0083] The control units 32 and 33 output either the optical signal processed by the processing unit 31 or the optical signal delayed by the delay unit 34 .
[0084] 15 shows an example of the circuit of the optical signal processing unit 30 in FIG. 7 using a differential phase shift keying Mach-Zehnder optical modulator. The optical signal processing unit 30 shown in the figure includes a processing unit 31, control units 32 and 33, and a delay unit 34. The optical signal processing unit 30 in FIG. 15 differs from the optical signal processing unit 30 in FIG. 11 in that a differential phase shift keying Mach-Zehnder optical modulator is used in the processing unit 31.
[0085] The processing unit 31 and delay unit 34 are similar to the optical signal processing unit 30 in FIG.
[0086] The control units 32 and 33 are similar to the optical signal processing unit 30 in FIG.
[0087] The control unit 32 outputs the optical signal pulse train (INPUT DATA in the figure) input to the optical signal processing unit 30 to the processing unit 31 or delay unit 34 in response to the control optical signal (OPTICAL CTRL PULSE-1 in the figure).
[0088] The control unit 33 outputs the output of the processing unit 31 or the output of the delay unit 34 as the output of the optical signal processing unit 30 (OUTPUT DATA in the figure) in response to a control optical signal (OPTICAL CTRL PULSE-2 in the figure).
[0089] 16 shows an example of the circuit of the optical signal processing section 30 of FIG. 7 using a differential phase shift keying Mach-Zehnder optical modulator. The optical signal processing section 30 shown in the figure includes a processing section 31, control sections 32 and 33, and a delay section 34. The optical signal processing section 30 of FIG. 16 differs from the optical signal processing section 30 of FIG. 15 in that the control sections 32 and 33 use differential phase shift keying Mach-Zehnder optical modulators.
[0090] The processing unit 31 and the control units 32 and 33 are each composed of a multiplexer / demultiplexer, a delay unit, and a differential phase shift type Mach-Zehnder optical modulator.
[0091] The processing unit 31 and delay unit 34 are similar to the optical signal processing unit 30 in FIG.
[0092] The control unit 32 outputs the optical signal pulse train (INPUT DATA in the figure) input to the optical signal processing unit 30 to the processing unit 31 or delay unit 34 in response to the control optical signal (OPTICAL CTRL PULSE-1 in the figure).
[0093] The control unit 33 outputs the output of the processing unit 31 or the output of the delay unit 34 as the output of the optical signal processing unit 30 (OUTPUT DATA in the figure) in response to a control optical signal (OPTICAL CTRL PULSE-2 in the figure).
[0094] [Third Embodiment] The third embodiment is a combinatorial optimization problem processing apparatus that includes a functional circuit unit 25 shown in Fig. 17 instead of the optical interferometer 20 of the first and second embodiments. Since the other components are similar to those of the first and second embodiments, an overall configuration diagram of the combinatorial optimization problem processing apparatus of the third embodiment will be omitted.
[0095] 17 is a functional circuit unit 25 obtained by configuring the optical interferometer 20 with an FPGA and a Mach-Zehnder optical modulator. The functional circuit unit 25 shown in the figure includes photoelectric AD conversion units 250 and 251, an FPGA 252, a DA conversion unit 253, and a Mach-Zehnder optical modulator (MZM) 254.
[0096] The photoelectric AD converter 250 AD converts the polarized clock pulse train (A-) into an electrical pulse signal obtained by photoelectrically converting it, and the photoelectric AD converter 251 AD converts the polarized clock pulse train (A) into an electrical pulse signal obtained by photoelectrically converting it.
[0097] The FPGA 252 digitally processes the calculation of the above interaction (FIG. 2). The output signal of the FPGA 252 is digital-to-analog converted and connected to a modulation signal terminal of a Mach-Zehnder optical modulator 254.
[0098] The Mach-Zehnder optical modulator 254 intensity-modulates the coherent locally-oscillated clock pulse light with the output signal of the FPGA 252. The coherent locally-oscillated clock pulse light can be provided as a pulse train obtained by splitting a polarized clock pulse train using a directional coupler (not shown).
[0099] The OUT terminal corresponds to the OUT terminal of the optical interferometer 20. In this way, the optical interferometer can also be configured with a semiconductor integrated circuit such as an FPGA. Here, the optical interferometer 20 and the functional circuit unit 25 are also referred to as an Ising model calculation unit.
[0100] [Comparative Simulation] An example of a numerical simulation performed by the combinatorial optimization problem processing apparatus of this embodiment is shown in Fig. 18. Fig. 18 is a graph of the change in output optical signal peak power with respect to steps, with the vertical axis representing normalized output optical signal peak power and the horizontal axis representing solution search steps. Fig. 18 illustrates the change in output optical signal peak power with respect to steps for 20 spins out of 100 spins in a fully coupled spin problem with problem size N=100.
[0101] In the numerical simulation of FIG. i:k In a system in which the absolute value of is constant around 0.0009 and ferromagnetic and antiferromagnetic interactions are randomly assigned, the number of processing stages of the optical signal processing unit 30 is set to 4, a solution search is performed up to Step 75, and then the number of processing stages of the optical signal processing unit 30 is set to 0, and initialization is performed from Step 76.
[0102] From Step 0 to Step 75, the normalized output optical signal peak power of each spin-simulating optical pulse changes to a state where it is either 1 or 0, that is, a state where it is regarded as either an up or down spin, and the Ising energy changes to a lower state, and a stable state is reached where the change in the output optical signal peak power with respect to the step progression is sufficiently small. At this stage, the solution search process is completed, and the answer combination of 1 or 0 (up or down) is output.
[0103] After step 76, the number of processing stages in the optical signal processing section 30 is changed to 0, thereby causing a state change aimed at the initial state of the solution search (neutral state), that is, a state in which the peak power of the output optical signal is 0.5.
[0104] A sufficiently stable neutral state is achieved by the time step 100 is reached. The device of this embodiment can then continue searching for a solution to the next problem.
[0105] In this way, the combinatorial optimization problem processing apparatus of this embodiment was able to perform initialization without requiring an initialization optical pulse train.
[0106] An example of a numerical simulation performed by a conventional combinatorial optimization problem processing apparatus as a comparative example is shown in Fig. 19. Fig. 19 is a graph showing the change in output optical signal peak power with respect to steps, with the vertical axis representing normalized output optical signal peak power and the horizontal axis representing solution search steps. Fig. 19 illustrates the change in output optical signal peak power with respect to steps for 20 spins out of 100 spins in a fully coupled spin problem with problem size N=100.
[0107] In the numerical simulation of Figure 19, the problem size N = 100 for the spin fully coupled problem, J i:k The solution search was carried out for a system in which the absolute value of is constant around 0.0009 and the ferromagnetic and antiferromagnetic interactions are randomly assigned.
[0108] In the comparative example, an initialization optical pulse train is used to set the device in a neutral state, and in Steps 0 to 75, the normalized output optical signal peak power of each optical pulse simulating spin is changed to a state where it is either 1 or 0, that is, a state where the spin is considered to be either up or down, and the Ising energy is changed to a lower state, and a stable state is reached where the change in the output optical signal peak power with respect to the step progression is sufficiently small. At this stage, the solution search process is completed, and the answer combination of 1 or 0 (up or down) is output.
[0109] In the comparative example device, when continuing to search for a solution to the next problem, the polarization clock pulse train is turned OFF (0) for pulses equivalent to problem size N or more, the polarization clock pulse train is turned ON (1), and then an initialization optical pulse train is input into the device, thereby completing the initialization by creating a neutral state in which the normalized output optical signal peak power is 1 / 2 and the magnitude of the interrelationship between corresponding elements is 0. Therefore, the comparative example device needs a function to turn the polarization clock pulse train OFF (0) and ON (1), a function to supply the initialization optical pulse train, and a function to input the initialization optical pulse train at the timing when the polarization clock pulse train is turned ON (1).
[0110] As described above, the combinatorial optimization problem processing apparatus 100, 200 of the present invention includes an optical interferometer 20 that generates a predetermined interaction in an Ising model at a period of N pulses of a polarization clock pulse train, a multi-stage optical signal processor 30 that transitions the optical power level of each pulse of the polarization clock pulse train in accordance with the power level of each pulse of the optical signal pulse train output from the optical interferometer 20, and an initialization controller 50 that controls the multi-stage optical signal processor 30 to create a neutral state with respect to the interactions between elements and initialize the optical interferometer 20. The number of stages of the multi-stage optical signal processor 30 that are effectively operated is controlled according to the scale of the combinatorial optimization problem. During initialization, the initialization controller 50 reduces the number of stages through which the optical signal processor 30 transitions the polarization clock pulse train compared to when searching for a solution, thereby creating a neutral state with respect to the interactions between elements and initializing the optical interferometer 20. This provides a combinatorial optimization problem processing technique that does not require the input of an initialization optical pulse train.
[0111] The present disclosure is not limited to the above-described embodiments and can be modified within the scope of the gist thereof. Although the N=16 max cut 3 problem has been exemplified as a combinatorial optimization problem, the present disclosure is not limited to this example. The present disclosure can be applied to any problem as long as the combinatorial optimization problem can be mapped so as to correspond to the energy of the Ising model. Furthermore, the interactions of the N=16 max cut 3 problem are not limited to the above-described example.
[0112] 100, 200 Combinatorial optimization problem processing apparatus 10 One-input two-output Mach-Zehnder optical modulator 20 Optical interferometer 30 Optical signal processing unit 40 Modulation signal generation unit 50 Initialization control unit 60 Differential phase shift keying Mach-Zehnder optical modulator 70 Optical demultiplexer 80 Delay unit
Claims
1. A combinatorial optimization problem processing device that processes a combinatorial optimization problem of N elements in association with an Ising model, comprising: a 1×2 Mach-Zehnder optical modulator that inputs and modulates a polarized clock pulse train; an Ising model calculation unit that inputs the polarized clock pulse train modulated by the 1×2 Mach-Zehnder optical modulator and causes optical interference according to the Ising interaction in the Ising model; an optical signal processing unit configured by cascading a predetermined number of units that inputs an optical signal pulse train and a polarized clock pulse train output from the Ising model calculation unit and outputs an optical signal that has transitioned to an optical power level closer to a bistable point according to the optical power level of each pulse of the input optical signal pulse train; an initialization control unit that minimizes the number of operating units in the optical signal processing unit and creates and initializes a neutral state in which the interaction between the elements is zero; and a modulation signal generation unit that waveform-shapes an electrical signal obtained by photoelectrically converting the optical signal after the transition to generate a modulation signal for the 1×2 Mach-Zehnder optical modulator and externally outputs a monitor signal that represents a solution to the optimization problem, wherein the number of operating units is controlled according to the scale of the combinatorial optimization problem during a solution search. Combinatorial optimization problem processing device.
2. A combinatorial optimization problem processing device that processes a combinatorial optimization problem of N elements in association with an Ising model, comprising: a differential phase modulation Mach-Zehnder optical modulator having a first phase modulation unit and a second phase modulation unit, which inputs and modulates a polarized clock pulse train; an Ising model calculation unit that inputs the polarized clock pulse train modulated by the differential phase modulation Mach-Zehnder optical modulator, causes optical interference according to the Ising interaction in the Ising model, and outputs a monitor signal representing a solution to the optimization problem to the outside; an optical demultiplexer that inputs and demultiplexes the optical signal pulse train output from the Ising model calculation unit, outputs one of the demultiplexed signals to the first phase modulation unit as a first phase-modulated signal, and outputs the other demultiplexed signal as a second phase-modulated signal; and a delay unit that inputs the second phase-modulated signal, delays it with respect to the first phase-modulated signal by a time that is equal to or greater than the pulse width and less than the pulse interval of the polarized clock pulse train, and outputs it to the second phase modulation unit. an optical signal processing unit configured by cascading a predetermined number of units, the units being arranged either between the Ising model calculation unit and the optical demultiplexer, between the optical demultiplexer and the delay unit, or between the delay unit and the differential phase shift type Mach-Zehnder optical modulator, and the units inputting an optical signal pulse train and a polarized clock pulse train output from the Ising model calculation unit and outputting an optical signal whose optical power level has transitioned to an optical power level closer to a bistable point in accordance with the optical power level of each pulse of the input optical signal pulse train; and an initialization control unit that minimizes the number of operating units in the optical signal processing unit and creates and initializes a neutral state in which interaction between the elements is zero, and wherein the number of operating units is controlled in accordance with the scale of the combinatorial optimization problem during a solution search.
3. A combinatorial optimization problem processing method executed by a combinatorial optimization problem processing device that processes a combinatorial optimization problem of N elements in association with an Ising model, wherein a 1x2 Mach-Zehnder optical modulator modulates a polarized clock pulse train; an Ising model calculation unit inputs the polarized clock pulse train modulated by the 1x2 Mach-Zehnder optical modulator and causes optical interference according to the Ising interaction in the Ising model; an optical signal processing unit configured by connecting a predetermined number of units in cascade outputs an optical signal that has transitioned to an optical power level closer to a bistable point according to the optical power level of each pulse in the optical signal pulse train output from the Ising model calculation unit; an initialization control unit minimizes the number of operating units in the optical signal processing unit and creates and initializes a neutral state in which the interaction between the elements is zero; a modulation signal generation unit waveform-shapes an electrical signal obtained by photoelectric conversion of the optical signal after the transition, to generate a modulation signal for the 1x2 Mach-Zehnder optical modulator, and externally outputs a monitor signal representing a solution to the optimization problem; and the number of operating units is controlled according to the scale of the combinatorial optimization problem during solution search. Methods for processing combinatorial optimization problems.
4. A combinatorial optimization problem processing method executed by a combinatorial optimization problem processing device that processes a combinatorial optimization problem of N elements in association with an Ising model, wherein a differential phase modulation Mach-Zehnder optical modulator having a first phase modulation unit and a second phase modulation unit modulates a polarized clock pulse train; an Ising model calculation unit inputs the polarized clock pulse train modulated by the differential phase modulation Mach-Zehnder optical modulator, causes optical interference according to the Ising interaction in the Ising model, and outputs a monitor signal representing a solution to the optimization problem to the outside; an optical demultiplexer inputs and demultiplexes the optical signal pulse train output from the Ising model calculation unit, outputs one demultiplexed signal to the first phase modulation unit as a first phase-modulated signal, and outputs the other demultiplexed signal as a second phase-modulated signal; a delay unit delays the second phase-modulated signal with respect to the first phase-modulated signal by a time that is equal to or greater than the pulse width and less than the pulse interval of the polarized clock pulse train, and outputs the delayed signal to the second phase modulation unit; an optical signal processing unit configured by connecting a predetermined number of units in cascade inputs an optical signal pulse train and a polarized clock pulse train output from the Ising model calculation unit, and outputs an optical signal whose optical power level has transitioned to an optical power level closer to a bistable point according to the optical power level of each pulse in the input optical signal pulse train; an initialization control unit minimizes the number of units operating in the optical signal processing unit, and creates and initializes a neutral state in which the interaction between the elements is zero; and during a solution search, the number of operating units is controlled according to the scale of the combinatorial optimization problem.
Citation Information
Patent Citations
Combinatorial optimization problem processing device and method
WO2024018521A1