Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHODS AND SYSTEMS FOR SOLVING A QUADRATIC PROGRAMMING PROBLEM
Document Type and Number:
WIPO Patent Application WO/2023/242744
Kind Code:
A1
Abstract:
Methods and systems for solving a continuous-variable box-constrained programming problem using an optical computing device include obtaining an indication of a continuous box-constrained quadratic programming problem having a plurality of continuous variables and at least one box constraint; using an optical computing device to solve said continuous box-constrained quadratic programming problem at least one time, wherein said optical computing device comprises pulses having amplitudes representing said continuous variables and values thereof, and further wherein said optical computing device comprises amplitude saturation which is used to implement said at least one box constraint; and obtaining at least one solution of said continuous box-constrained quadratic programming problem from said optical computing device.

Inventors:
KHOSRAVI FARHAD (CA)
SCHERER ARTUR (CA)
RONAGH POOYA (CA)
Application Number:
PCT/IB2023/056105
Publication Date:
December 21, 2023
Filing Date:
June 13, 2023
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
1QB INFORMATION TECH INC (CA)
International Classes:
G06E1/00
Domestic Patent References:
WO2022123494A12022-06-16
Foreign References:
US11514134B22022-11-29
US7877333B22011-01-25
Attorney, Agent or Firm:
FASKEN MARTINEAU DUMOULIN LLP (CA)
Download PDF:
Claims:
CLAIMS:

1. A method for solving a problem using an optical computing device, the method comprising:

(a) obtaining an indication of a quadratic programming problem comprising at least one continuous variable and at least one box constraint;

(b) using an optical computing device to solve said quadratic programming problem wherein said optical computing device comprises optical pulses having amplitudes representing said at least one continuous variable and values thereof, and further wherein said optical computing device comprises amplitude saturation which is used to implement said at least one box constraint; and

(c) obtaining at least one solution of said quadratic programming problem from said optical computing device.

2. The method of claim 1, further comprising solving said quadratic programming problem a plurality of times.

3. The method of claim 1 or 2, wherein said quadratic programming problem comprises at least one discrete variable.

4. The method of any one of claims 1-3, wherein said quadratic programming problem comprises at least one of an upper constraint or a lower constraint.

5. The method of any one of claims 1-4, wherein (b) comprises constructing a stochastic differential equation corresponding to said quadratic programming problem, wherein said stochastic differential equation comprises a plurality of continuous variables; and solving, at said optical computing device, said stochastic differential equation at least one time to obtain at least one solution of said stochastic differential equation.

6. The method of claim 5, further comprising using said at least one solution of said stochastic differential equation to obtain said at least one solution of said quadratic programming problem.

7. The method of any one of claims 1-6, wherein said quadratic programming problem comprises at least one equality constraint.

8. The method of claim 7, wherein said at least one equality constraint is relaxed as penalty terms in an objective function of said quadratic programming problem.

9. The method of any one of claims 1-8, wherein said optical computing device comprises a measurement-feedback system or a delay-line system.

10. The method of any one of claims 1-9, further comprising using said quadratic programming problem to configure said optical computing device.

11. The method of any one of claims 5-10, further comprising using said stochastic differential equation to configure said optical computing device.

12. The method of any one of claims 1-11, wherein said optical computing device comprises a coherent optical network.

13. The method of claim 12, wherein said coherent optical network comprises a coherent continuous-variable machine.

14. The method of any one of claims 5-13, wherein said solving said stochastic differential equation comprises implementing a coupling term of said stochastic differential equation at said optical computing device.

15. The method of claim 14, wherein said implementing said coupling term comprises using said coupling term to program said measurement-feedback system of said optical computing device.

16. The method of claim 14, wherein said implementing said coupling term comprises using said coupling term to program said delay-line system of said optical computing device.

17. The method of any one of claims 1-16, wherein (c) comprises selecting a lowest value of said objective function of said quadratic programming problem.

18. The method of any one of claims 9-17, wherein said measurement-feedback system comprises at least one member of the group consisting of a central processing unit (CPU), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), a graphics processing unit (GPU), a tensor processing unit (TPU), and a tensor streaming processor (TSP).

19. The method of any one of claims 9-18, wherein noise in said measurementfeedback system or said delay -line system is controlled by injecting a squeezed vacuum state into an open port of a beam splitter.

20. The method of claim 19, wherein said beam splitter in said measurement-feedback system outcouples said optical pulses from an optical cavity into a homodyne measurement system of said measurement-feedback system.

21. The method of claim 19 or 20, wherein said beam splitter in said measurementfeedback system injects a feedback signal into an optical cavity.

22. The method of claim 19, wherein said beam splitter in said delay-line system outcouples said optical pulses from an optical cavity into a delay-line network of said delay-line system.

23. The method of claim 19 or 22, wherein said beam splitter in said delay -line system couples said optical pulses from a delay-line network of said delay-line system into an optical cavity.

24. The method of any one of claims 9-15 and 17-21, wherein noise in said measurement-feedback system is controlled by dynamically changing measurement strength.

25. The method of any one of claims 1-24, wherein (a) and (c) are performed at an interface coupled to said optical computing device, further wherein said interface is a cloud computing interface or a graphical user interface.

26. The method of any one of claims 1-25, further comprising post-processing said at least one solution using a convex optimization method.

27. The method of any one of claims 9-15, 17-21, and 24-26, wherein said measurement-feedback system comprises an optical cavity and a measurement-feedback mechanism, wherein said measurement-feedback system is one of:

(a) a measurement-feedback system comprising a nonlinear optical crystal placed in an optical cavity fed by an external pump laser to at least perform amplification; and

(b) a measurement-feedback system, wherein amplification is performed by said measurement-feedback mechanism.

28. The method of claim 27, wherein said amplitudes of said optical pulses and phases of said optical pulses measured by said measurement-feedback system are used to infer a feedback signal.

29. The method of claim 27 or 28, wherein said measurement-feedback system implements a coupling term of a stochastic differential equation given by a gradient of an objective function which is a function of measured said amplitudes of said optical pulses and phases of said optical pulses.

30. The method of any one of claims 27-29, wherein a loss in said amplitudes of said optical pulses due to cavity loss or measurement loss are compensated by adjusting a feedback signal.

31. The method of any one of claims 27-30, wherein a loss in said amplitudes of said optical pulses due to cavity loss or measurement loss are compensated by an external laser source which provides a mechanism to control said amplitudes of said optical pulses.

32. A system for solving a problem using an optical computing device, the system comprising:

(a) a digital computer comprising an interface and a memory operatively coupled to a processor, said memory comprising instructions, wherein said processor is configured to execute said instructions to at least: (i) obtain an indication of a quadratic programming problem comprising a plurality of continuous variables and at least one box constraint;

(ii) provide instructions to solve said quadratic programming problem;

(iii) obtain at least one solution of said quadratic programming problem; and

(iv) store said at least one solution of said quadratic programming problem in said memory; and

(b) an optical computing device operatively coupled to said digital computer, wherein said optical computing device is configured to at least:

(i) receive from said digital computer said indication of said quadratic programming problem ;

(ii) solve said quadratic programming problem; and

(iii) provide at least one solution of said quadratic programming problem; wherein said optical computing device comprises optical pulses having amplitudes representing said continuous variables and values thereof, and further wherein said optical computing device comprises amplitude saturation which is used to implement said at least one box constraint.

33. The system of claim 32, wherein said processor is configured to: (i) execute said instructions to at least construct a stochastic differential equation corresponding to said quadratic programming problem, wherein said stochastic differential equation comprises said plurality of continuous variables; and (ii) provide instructions to said optical computing device to solve said stochastic differential equation at least one time to obtain at least one solution of said stochastic differential equation.

34. The system of any one of claims 32-33, further comprising one or more processors located on a cloud.

35. The system of any one of claims 32-34, further comprising a memory operatively coupled to said digital computer, wherein said memory is operatively coupled to said digital computer over a network.

36. The system of any one of claims 32-35, wherein said optical computing device comprises a control system.

37. The system of any one of claims 32-36, wherein said optical computing device comprises a measurement-feedback system or a delay-line system.

38. The system of any one of claims 32-37, wherein said optical computing device comprises a coherent optical network.

39. The system of claim 38, wherein said coherent optical network comprises a coherent continuous-variable machine.

40. The system of any one of claims 37-39, wherein said measurement-feedback system comprises at least one member of the group consisting of a central processing unit (CPU), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), a graphics processing unit (GPU), a tensor processing unit (TPU), and a tensor streaming processor (TSP).

41. The system of any one of claims 32-40, wherein said optical computing device is configured to solve said quadratic programming problem a plurality of times.

42. The system of any one of claims 32-41, wherein said quadratic programming problem comprises at least one discrete variable.

43. The system of any one of claims 32-42, wherein said quadratic programming problem comprises at least one of an upper constraint or a lower constraint.

44. The system of any one of claims 33-43, wherein said optical computing device is configured to use said at least one solution of said stochastic differential equation to obtain said at least one solution of said quadratic programming problem.

45. The system of any one of claims 32-44, wherein said quadratic programming problem comprises at least one equality constraint.

46. The system of claim 45, wherein said at least one equality constraint is relaxed as penalty terms in an objective function of said quadratic programming problem.

47. The system of any one of claims 32-46, wherein said optical computing device is configured by the quadratic programming problem.

48. The system of any one of claims 33-47, wherein said solving said stochastic differential equation comprises implementing a coupling term of said stochastic differential equation at said optical computing device.

49. The system of claim 48, wherein said implementing said coupling term comprises using said coupling term to program said measurement-feedback system of said optical computing device.

50. The system of claim 48, wherein said implementing said coupling term comprises using said coupling term to program said delay-line system of said optical computing device.

51. The system of any one of claims 33-50, wherein said optical computing device is configured to provide a lowest value of said objective function of said quadratic programming problem.

52. The system of any one of claims 37-51, wherein noise in said measurementfeedback system or said delay -line system is controlled by injecting a squeezed vacuum state into an open port of a beam splitter.

53. The system of claim 52, wherein said beam splitter in said measurement-feedback system outcouples said optical pulses from an optical cavity into a homodyne measurement system of said measurement-feedback system.

54. The system of claim 52 or 53, wherein said beam splitter in said measurementfeedback system injects a feedback signal into an optical cavity.

55. The system of claim 52, wherein said beam splitter in said delay -line system outcouples said optical pulses from an optical cavity into a delay-line network of said delay-line system.

56. The system of claim 52 or 55, wherein said beam splitter in said delay-line system couples said optical pulses from a delay-line network of said delay-line system into an optical cavity.

57. The system of any one of claims 37-56, wherein noise in said measurementfeedback system is controlled by dynamically changing measurement strength.

58. The system of any one of claims 32-57, wherein said optical computing device is configured to post-process said at least one solution using a convex optimization method.

59. The system of any one of claims 37-52 and 57-58, wherein said measurementfeedback system comprises an optical cavity and a measurement-feedback mechanism, wherein said measurement-feedback system is one of:

(a) a measurement-feedback system comprising a nonlinear optical crystal placed in an optical cavity fed by an external pump laser to at least perform amplification; and

(b) a measurement-feedback system, wherein amplification is performed by said measurement-feedback mechanism.

60. The system of claim 59, wherein said optical computing device is configured to infer a feedback signal from said amplitudes of said optical pulses and phases of said optical pulses measured by said measurement-feedback system.

61. The system of claim 59 or 60, wherein said measurement-feedback system implements a coupling term of a stochastic differential equation given by a gradient of an objective function which is a function of measured said amplitudes of said optical pulses and phases of said optical pulses.

62. The system of any one of claim 59-61, wherein said optical computing device is configured to compensate a loss in said amplitudes of said optical pulses due to cavity loss or measurement loss by adjusting a feedback signal.

63. The system of any one of claim 59-62, wherein said optical computing device is configured to compensate a cavity loss or measurement loss by an external laser source which provides a mechanism to control said amplitudes of said optical pulses.

Description:
METHODS AND SYSTEMS FOR SOLVING A QUADRATIC PROGRAMMING PROBLEM

CROSS-REFERENCE

[0001] This application claims the benefit of U.S. Provisional Application No. 63/351,953, filed June 14, 2022, U.S. Provisional Application No. 63/402,412, filed August 30, 2022, U.S. Provisional Application No. 63/404,891, filed September 8, 2022, and U.S. Provisional Application No. 63/483,672, filed February 7, 2023, each of which is incorporated herein by reference in their entireties.

BACKGROUND

[0002] Solving the continuous-variable box-constrained quadratic programming problem in graph theory can be important in many theoretical and real-world applications in various fields such as mechanical and structural design, for example, dam design, rigid body mechanics, and massive datasets. However, these problems may comprise a minimization of an objective function that is quadratic in some continuous variables that may represent the parameters of a system. Classical algorithms may scale poorly with problem size as there is no known efficient exact solver for such problems. Advances in computing technology such as the use of optical quantum computers may provide faster, more- accurate, or both faster and more-accurate solutions to such problems.

SUMMARY

[0003] Recognized herein is the need for improved methods and systems that may improve the time taken to solve a continuous-variable box-constrained quadratic programming problem. Continuous-variable box-constrained quadratic programming problems as well as mixed- variable box-constrained quadratic programming problems or continuous- variable box-constrained quadratic programming problems with an additional upper or lower bound constraint may arise in many applications as a subproblem of more complex optimization problems in various fields such as machine learning, economics, chemistry, and logistics. Moreover, more complex optimization problems such as mixed integer problems may be reduced to continuous-variable box-constrained quadratic programming problems, mixed-variable box-constrained quadratic programming problems, or continuous-variable box-constrained quadratic programming problems with an additional upper or lower bound constraint. Methods and systems disclosed herein may improve upon the methods and systems employing a classical algorithm or a computing platform.

[0004] In some aspects, the present disclosure provides methods and systems for solving a continuous box-constrained quadratic programming problem using an optical computing device. The present disclosure may improve upon existing optimization solvers, in at least some aspects, by using non-classical devices, e.g., quantum devices, quantum optical devices, and optical computing devices.

[0005] In an example application of a potential use of a box-constrained quadratic program programming problem, a goal may be to minimize an objective function that is quadratic in some continuous variables that may represent the parameters of a system. The variables may be constrained to upper and lower bounds or have constraints that are translatable to such lower and upper bounds. An example of such an application may be found in Lbtstedt, P., “Solving the minimal least squares problem subject to bounds on the variables,” BIT Numerical Mathematics, 1984, Vol.24, pp.205-224, which is incorporated by reference herein in its entirety.

[0006] A box-constrained quadratic programming problem may be represented by an objective function that is a quadratic function of continuous variables. The variables may be constrained to be between a lower bound and an upper bound (for example, between 0 and 1). The point, within the bounds defined by the constraints of the problem, where the objective function is minimized may be referred to as the solution of the problem. In practical implementations, the solution may be an approximation of the point, e.g., within a margin of acceptable error or a convergence criterion.

[0007] Classical algorithms may scale poorly with problem size as there is no known efficient exact solver for such problems. Heuristic algorithms may address the scaling drawback, but they may suffer from overhead due to the fact that the continuous variables may be required to be cast into multiple binary variables.

[0008] While classical algorithms for solving box-constrained quadratic programming problems may scale poorly with problem size or suffer from a large overhead when implementing the continuous variables into binary variables, methods disclosed herein may scale polynomially and not be subject to an overhead by taking advantage of the internal functioning of an optical computing device. Using the fact that the optical pulses in a coherent Ising machine are inherently continuous, methods disclosed herein may implement the continuous variables of a continuous optimization problem onto the pulses of an optical computing device. Furthermore, methods disclosed herein may take advantage of the internal property of the coherent Ising machine, that is, that the amplitudes of the pulses may saturate, to implement the box constraint of the box- constrained quadratic programming problem. Since the coherent Ising machine operates at optical frequencies, it may also be a few orders of magnitude faster in solving box- constrained quadratic programming problems compared to similar classical algorithms. In some cases, the methods disclosed herein may be more efficient or faster in solving box- constrained quadratic programming problems compared to similar classical algorithms when the number of degrees of freedom in the problem is larger than some threshold value.

[0009] In an aspect, the present disclosure provides a method for solving a problem using an optical computing device. The method may comprise solving a quadratic programming problem using an optical computing device. The quadratic programming problem may comprise a box-constraint. The method may comprise: (a) obtaining an indication of a continuous box-constrained quadratic programming problem having a plurality of continuous variables and at least one box constraint; (b) using an optical computing device to solve said continuous box-constrained quadratic programming problem at least one time, wherein said optical computing device comprises optical pulses having amplitudes representing said continuous variables and values thereof, and further wherein said optical computing device comprises amplitude saturation which is used to implement said at least one box constraint; (c) obtaining at least one solution of said continuous box-constrained quadratic programming problem from said optical computing device.

[0010] In some embodiments, (b) comprises constructing a stochastic differential equation corresponding to said continuous box-constrained quadratic programming problem, wherein said stochastic differential equation comprises a plurality of continuous variables; and using an optical computing device to solve said stochastic differential equation at least one time to obtain at least one solution of said stochastic differential equation. In some embodiments, the method further comprises using said at least one solution of said stochastic differential equation to obtain at least one solution of said continuous box- constrained quadratic programming problem. In some embodiments, said continuous box- constrained quadratic programming problem has equality constraints, further wherein said equality constraints are relaxed as penalty terms in an objective function of said continuous box-constrained quadratic programming problem. In some embodiments, said continuous box-constrained quadratic programming problem has inequality constraints. In some embodiments, said optical computing device comprises a measurement-feedback system or a delay-line system. In some embodiments, the method further comprises using said continuous box-constrained quadratic programming problem to configure said optical computing device. In some embodiments, the method further comprises using said stochastic differential equation to configure said optical computing device. In some embodiments, said optical computing device comprises a coherent optical network. In some embodiments, said coherent optical network comprises a coherent continuous- variable machine. In some embodiments, solving said stochastic differential equation comprises implementing the coupling term of said stochastic differential equation on said optical computing device. In some embodiments, implementing of said coupling term comprises using said coupling term to program said measurement-feedback system of said optical computing device. In some embodiments, implementing of said coupling term comprises using said coupling term to program said delay-line system of said optical computing device. In some embodiments, (c) comprises selecting a lowest value of an objective function of said continuous box-constrained quadratic programming problem. In some embodiments, (c) comprises selecting a lowest value of an objective function of said continuous box-constrained quadratic programming problem within a predetermined margin of error or a convergence criterion. In some embodiments, said measurementfeedback system comprises at least one member of the group consisting of a central processing unit (CPU), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), a graphics processing unit (GPU), a tensor processing unit (TPU), and a tensor streaming processor (TSP). In some embodiments, noise in said measurement-feedback system or said delay -line system is controlled by injecting a squeezed vacuum state into an open port of a beam splitter. In some embodiments, said beam splitter in said measurement-feedback system outcouples said optical pulses from an optical cavity into a homodyne measurement system of said measurement-feedback system. In some embodiments, said beam splitter in said measurement-feedback system injects a feedback signal into an optical cavity. In some embodiments, said beam splitter in said delay-line system outcouples said optical pulses from an optical cavity into a delayline network of said delay-line system. In some embodiments, said beam splitter in said delay-line system couples said optical pulses from a delay-line network of said delay-line system into an optical cavity. In some embodiments, noise in said measurement-feedback system is controlled by dynamically changing measurement strength. In some embodiments, (a) and (c) are performed at an interface coupled to said optical computing device, further wherein said interface is a cloud computing interface or a graphical user interface. In some embodiments, the method further comprises post-processing using a convex optimization method. In some embodiments, said measurement-feedback system comprises an optical cavity and a measurement-feedback mechanism and said measurement-feedback system comprises a nonlinear optical crystal placed in an optical cavity fed by an external pump laser to at least perform amplification. In some embodiments, said measurement-feedback system comprises an optical cavity and a measurement-feedback mechanism for performing amplification. In some embodiments, said measurement-feedback system comprises an optical cavity and a measurementfeedback mechanism in the absence of a nonlinear optical crystal and an external pump. In some embodiments, said amplitudes of said optical pulses and phases of said optical pulses measured by said measurement-feedback system are used to infer a feedback signal. In some embodiments, the measurement-feedback system implements a coupling term of a stochastic differential equation given by a gradient of an objective function which is a function of measured said amplitudes of said optical pulses and phases of said optical pulses. In some embodiments, a loss in the amplitudes of optical pulses due to cavity loss and measurement loss is compensated by adjusting a feedback signal. In some embodiments, a loss in the amplitudes of optical pulses due to cavity loss and measurement loss is compensated by an external laser source that provides a mechanism to control the amplitudes of the pulses.

[0011] In another aspect, the present disclosure provides a system for solving a problem using an optical computing device. The system may comprise an optical computing device configured to solve a quadratic programming problem. The quadratic programming problem may comprise a box constraint. The system comprises: (a) a digital computer comprising an interface and a memory operatively coupled to a processor, said memory comprising instructions, wherein said processor is configured to execute said instructions to at least: (i) obtain an indication of a continuous box-constrained quadratic programming problem having a plurality of continuous variables and at least one box constraint; (ii) provide instructions to solve said continuous box-constrained quadratic programming problem; (iii) obtain at least one solution of said continuous box-constrained quadratic programming problem; and (iv) store said at least one solution of said continuous box- constrained quadratic programming problem in a memory; and (b) an optical computing device operatively coupled to said digital computer, wherein said optical computing device is configured at least to: (i) receive from said digital computer an indication of said continuous box-constrained quadratic programming problem having a plurality of continuous variables and at least one box constraint; (ii) solve said continuous box- constrained quadratic programming problem; and (iii) provide at least one solution of said continuous box-constrained quadratic programming problem. In some embodiments, said optical computing device comprises optical pulses having amplitudes representing said continuous variables and values thereof, and further wherein said optical computing device comprises amplitude saturation which is used to implement said at least one box constraint. In some embodiments, said processor is configured to execute said instructions to at least construct a stochastic differential equation corresponding to said continuous box- constrained quadratic programming problem, wherein said stochastic differential equation comprises a plurality of continuous variables; and provide instructions to said optical computing device to solve said stochastic differential equation at least one time to obtain at least one solution of said stochastic differential equation. In some embodiments, the system further comprises one or more processors located on a cloud. In some embodiments, the system further comprises a memory operatively coupled to said digital computer, wherein said memory is operatively coupled to said digital computer over a network. In some embodiments, said optical computing device comprises a readout control system. In some embodiments, said optical computing device comprises a measurement-feedback system or a delay-line system. In some embodiments, said optical computing device comprises a coherent optical network. In some embodiments, said coherent optical network comprises a coherent continuous-variable machine. In some embodiments, said measurement-feedback system comprises at least one member of the group consisting of a central processing unit (CPU), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), a graphics processing unit (GPU), a tensor processing unit (TPU), and a tensor streaming processor (TSP).

[0012] Another aspect of the present disclosure provides a system comprising one or more computer processors and a computer memory coupled thereto. The computer memory comprises machine executable code that, upon execution by the one or more computer processors, implements any of the methods disclosed above or elsewhere herein.

[0013] Additional aspects and advantages of the present disclosure will become readily apparent to those skilled in this art from the following detailed description, wherein only illustrative embodiments of the present disclosure are shown and described. As will be realized, the present invention is capable of existing in the form of other and different embodiments, and its several details are capable of modifications in various obvious respects, all without departing from the disclosure. Accordingly, the drawings and description are to be regarded as illustrative in nature, and not as restrictive.

INCORPORATION BY REFERENCE

[0014] All publications, patents, and patent applications mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent, or patent application was specifically and individually indicated to be incorporated by reference. To the extent publications and patents or patent applications incorporated by reference contradict the disclosure contained in the specification, the specification is intended to supersede and/or take precedence over any such contradictory material.

BRIEF DESCRIPTION OF THE DRAWINGS

[0015] The novel features of the invention are set forth with particularity in the appended claims. A better understanding of the features and advantages of the present invention will be obtained by reference to the following detailed description that sets forth illustrative embodiments, in which the principles of the invention are utilized, and the accompanying drawings (also “Figure” and “FIG.” herein), of which: [0016] FIG. 1 is a schematic of an example system for solving a continuous box- constrained quadratic programming problem using an optical computing device, in accordance with some embodiments disclosed herein.

[0017] FIG. 2 is a flowchart of an example method for solving a continuous box- constrained quadratic programming problem using an optical computing device, in accordance with some embodiments disclosed herein.

[0018] FIG. 3 is a flowchart of an example method for solving a continuous box- constrained quadratic programming problem using a stochastic differential equation, in accordance with some embodiments disclosed herein.

[0019] FIG. 4 is a schematic of an example optical computing device including a measurement-feedback system.

[0020] FIG. 5 is a schematic of an example optical computing device including a delayline system.

DETAILED DESCRIPTION

[0021] While various embodiments of the invention have been shown and described herein, it will be obvious to those skilled in the art that such embodiments are provided by way of example only. Numerous variations, changes, and substitutions may occur to those skilled in the art without departing from the invention. It should be understood that various alternatives to the embodiments of the invention described herein may be employed.

[0022] Whenever the term “at least,” “greater than,” or “greater than or equal to” precedes the first numerical value in a series of two or more numerical values, the term “at least,” “greater than” or “greater than or equal to” applies to each of the numerical values in that series of numerical values. For example, greater than or equal to 1, 2, or 3 is equivalent to greater than or equal to 1, greater than or equal to 2, or greater than or equal to 3.

[0023] Whenever the term “no more than,” “less than,” or “less than or equal to” precedes the first numerical value in a series of two or more numerical values, the term “no more than,” “less than,” or “less than or equal to” applies to each of the numerical values in that series of numerical values. For example, less than or equal to 3, 2, or 1 is equivalent to less than or equal to 3, less than or equal to 2, or less than or equal to 1.

[0024] Certain inventive embodiments herein contemplate numerical ranges. When ranges are present, the ranges include the range endpoints. Additionally, every sub-range and value within the range is present as if explicitly written out.

[0025] The term “about” or “approximately” may mean within an acceptable error range for the particular value, which will depend in part on how the value is measured or determined, e.g., the limitations of the measurement system. For example, “about” may mean within 1 or more than 1 standard deviation, per the practice in the art. Alternatively, “about” may mean a range of up to 20%, up to 10%, up to 5%, or up to 1% of a given value. Where particular values are described in the application and claims, unless otherwise stated the term “about” meaning within an acceptable error range for the particular value may be assumed.

[0026] As used herein, the term “continuous box-constrained quadratic programming problem” generally refers to a continuous-variable programming problem whose objective function is a quadratic function of continuous variables, and all variables are subject to a lower bound and an upper bound (i.e., the box constraint).

[0027] As used herein, the term “objective function” generally refers to a real -valued mathematical function whose value is to be either minimized or maximized over a feasible domain of a set of continuous variables.

[0028] As used herein, the term “constraint” generally refers to conditions written as mathematical expressions, in the form of equality or inequality, that limit the feasibility regions of the variables of the problem. The set of feasible solutions of the problem satisfy these conditions.

[0029] As used herein, the term “stochastic differential equation” generally refers to a system of differential equations in which one or more of the terms are stochastic processes. A stochastic process is a mathematical object defined as a family of random variables. These differential equations describe the dynamics of the system variables for a single run of the system. [0030] As used herein, the term “convex optimization method” generally refers to any classical or quantum optimization method used to find the minimum of an optimization problem with an objective function that is a convex function of its continuous variables, or with the assumption that the objective function is convex locally in the phase space of the variables.

[0031] As used herein, the term “measurement-feedback system” generally refers to a system comprising different components, including a homodyne measurement system, digital-to-analog converters, analog-to-digital converters, and a classical computing device. This system is used to measure the amplitudes of the input optical pulses and generate output optical pulses that are functions of all other input optical pulses, to create couplings between the input optical pulses.

[0032] As used herein, the term “delay-line system” generally refers to a system comprising a set of optical waveguides, intensity modulators, phase modulators, and beam splitters. This system is used to create couplings between pairs of input optical pulses by delaying the optical pulses and adjusting their amplitudes and phases accordingly.

[0033] As used herein, the term “squeezed states” generally refers to squeezed coherent states which are optical coherent states whose variance in the position or momentum quadrature is squeezed (anti-squeezed). The optical quantum mode in a squeezed state is an optical quantum mode that has less than the minimum quantum noise level in one quadrature and more than the minimum quantum noise level in the conjugate quadrature, maintaining the uncertainty principle.

[0034] As used herein, the term “optical line” generally refers to an optical waveguide such as optical fibers, silicon nanophotonics waveguides, or free space where optical pulses can travel through. Optical lines may be terminated at one or both ends or may be used to create a loop to form an optical cavity.

[0035] As used herein, the term “optical cavity” generally refers to a closed optical path created from optical lines and mirrors where standing waves can be created. Optical cavities are used to maintain the coherence of the optical pulses within a system. [0036] As used herein, the term “beam splitter” generally refers to an optical element with two inputs and two outputs, where the input signals can be coupled and added together to create one output signal, or one input signal can provide two out-coupled optical signals, or two input signals can create two output signals that are superpositions (classical or quantum) of the input optical signals. The term may also refer to general table-top optical beam splitters or on-chip optical directional couplers that have the same functionality as beam splitters.

High-performance computing device

[0037] A computing device herein which may interact with a photonic computing device herein, for example, a coherent optical network, may be a high-performance computing (HPC) device. An HPC may comprise one or more of a graphics processing unit (GPU), a tensor processing unit (TPU), a field-programmable gate array (FPGA), an applicationspecific integrated circuit (ASIC), and a tensor streaming processor (TSP). Any other suitable processing unit that is capable of performing matrix multiplication may be used. Certain computing devices may be more efficient at operations such as matrix multiplication. These computing devices may provide additional efficiency gains over other computing systems. In some cases, a matrix multiplication device may be a GPU. A GPU may be a specialized electronic circuit optimized for high throughput, which may perform the same set of operations in parallel on many data blocks at a time. In some cases, a matrix multiplication device may be a TPU. A TPU may be a type of ASIC developed for low bit precision processing by Google® Inc.; see US 2016/0342891, which is incorporated by reference herein in its entirety. In some cases, a matrix multiplication device may be an FPGA. An FPGA may be an integrated circuit chip that comprises configurable logic blocks and programmable interconnects. It may be programmed after manufacturing to execute custom algorithms. In some cases, a matrix multiplication device may be an ASIC. An ASIC may be an integrated circuit chip that is customized to run a specific algorithm. In some case, an ASIC may not be programmed after manufacturing. In some cases, a matrix multiplication device may be a TSP. A TSP may be a domainspecific programmable integrated chip that is designed for linear algebra computations as they may be performed in artificial intelligence applications, an example of which may be found in Gwennap, L., “Groq rocks neural networks,” The Linley Group, Microprocessor Report, Tech. Rep., Jan 2020, which is incorporated by reference herein in its entirety.

Optical computing device / quantum optical device

[0038] In some cases, the optical computing device comprises a network of optical parametric oscillators (OPO) as disclosed in US 2016/0162798 and in W02015006494, each of which is incorporated by reference herein in its entirety.

[0039] In some cases, the Ising problem whose spins may take the values of -1 or +1 are considered (see, for example, Ising, E., “Beitrag zur theorie des ferromagnetismus,” Zeitschrift fur Physik, 1925, Vol.31, pp.253-258, which is incorporated by reference herein in its entirety).

[0040] The Ising problem may reduce or, in some cases, minimize the system energy with respect to the couplings J ik between the spins i E N and k E N. The problem may reduce or, in some cases, minimize the objective function subject to

[0041] The above quadratic unconstrained binary optimization problem may be solved using the following stochastic differential equation for each spin where dW t is representative of noise enabling the procedure to escape local minima. Solving the stochastic differential equation above may result in having positive or negative values for the spins.

[0042] The binary constraints may be represented by the second term of the stochastic differential equation.

[0043] In some cases, each spin of the Ising model is simulated by a degenerate optical parametric oscillator (DOPO).

[0044] Degenerate optical parametric oscillators may refer to open dissipative systems that experience second-order phase transition at the oscillation threshold. Because of the phasesensitive amplification, a DOPO pulse may oscillate with a phase of either 0 or TI with respect to the pump phase for amplitudes above the threshold. The choice of the phase 0 or 7T is random, affected by the quantum noise associated with the optical parametric down- conversion during the oscillation build-up. Therefore, a DOPO may represent a binary digit specified by its output phase. Based on this property, a DOPO system may be used as a physical representative of an Ising spin system. The phase of each DOPO pulse may be identified as an Ising spin (i.e., a binary variable), with its amplitude and phase determined by the strength and the sign of the Ising coupling between relevant spins.

[0045] When pumped by a field that is stronger than a minimum pump value, called the threshold pump, the amplitudes of DOPO pulses may rise until they saturate at some steady state value, while maintaining their 0 or πt phase. This steady state value may be reached after a transient period from the introduction of the pump. In such a state, the amplitudes of all DOPO pulses may be equal but their phases may be either 0 or π , corresponding to the spin values of +1 or -1 in the Ising model.

[0046] In some cases, wherein the amplitudes are above the threshold but a DOPO pulse is pumped below the pump threshold, the DOPO pulses may not saturate to their steady state values and thus they may represent continuous variables instead of binary variables.

[0047] By pumping the DOPO pulses below the pump threshold, or using other methods to maintain the amplitude of the DOPO pulses below or close to saturation, the continuous variables of a continuous optimization problem may be implemented onto the DOPO pulses of a coherent optical network. Such a device, with the capability to implement and solve continuous-variable problems, may be called a coherent continuous-variable machine (CCVM).

[0048] The problem may, equivalently, increase or maximize the objective function when it is expressed or formulated with a negative sign. An objective function of a continuous- variable problem may be a real-valued mathematical function whose value is to be either minimized or maximized over a feasible domain of a set of continuous variables.

[0049] The phase state selection process may depend on the vacuum fluctuations and mutual coupling of the DOPO pulses. In some cases, the pump is pulsed at a constant amplitude, in other implementations the pump output is gradually increased, and in yet further implementations, the pump is controlled in other ways. [0050] In some cases, the plurality of couplings of an optical computing device between the variables of the underlying optimization problem are simulated by a plurality of configurable couplings created between DOPO pulses. The configurable couplings may be configured to be off or configured to be on. Turning the couplings on and off may be performed gradually or abruptly. When configured to be on, the configuration may provide any amplitude or phase (0 to π ), depending on the coupling strengths of the optimization problem.

[0051] Each output DOPO pulse may be interfered with using a phase reference and the result may be captured at a photodetector. The output DOPO pulses may represent a configuration of the variables of the problem. For example, for the Ising problem, a zero phase may represent a -1 spin state, and a π phase may represent a +1 spin state in the Ising model. For a continuous optimization problem, for instance, the amplitude and the phase of the DOPO pulses may represent the values of the continuous variables of the problem.

[0052] In some cases, a resonator cavity comprising a plurality of DOPO pulses is configured to have a roundtrip time equal to the number of pulses times the duration of pulses generated by the pump source. Roundtrip time as used herein may indicates the time for light to propagate along one pass of a described recursive path. The DOPO pulses of a pulse train with a total duration equal to the roundtrip time of the resonator cavity may propagate through the resonator cavity concurrently without interfering with each other.

[0053] In some cases, the couplings between the DOPO pulses are provided by a plurality of delay lines allocated alongside the resonator cavity. In some cases, a delay-line system may be a system comprising a set of optical waveguides, intensity modulators, phase modulators, beam splitters, or any combination thereof. In some cases, the system may be used to create couplings between pairs of input optical pulses by delaying the optical pulses and adjusting their amplitudes and phases accordingly. In some cases, a beam splitter may comprise an optical element with two inputs and two outputs. In some cases, input signals to the inputs can be coupled and added together to create one output signal, or one input signal can provide two out-coupled optical signals, or two input signals can create two output signals that are superpositions (classical or quantum) of the input optical signals. In some cases, a beam splitter may comprise a table-top optical beam splitters or on-chip optical directional couplers that have the same functionality as beam splitters.

[0054] At each round trip, a portion of each DOPO pulse may be extracted using a beam splitter. In this case, one of inputs of the beam splitter is connected to the optical cavity, while the other input is left open (i.e., a vacuum state may be used as input) or fed with a squeezed vacuum state to control the noise in the system. In some cases, an optical cavity may comprise an at least partially or fully closed optical path created from optical lines and mirrors where standing waves can be created. In some cases, an optical cavity may be used to maintain the coherence of the optical pulses within a system. In some cases, an optical line may comprise an optical waveguide such as optical fibers, silicon nanophotonics waveguides, or free space where optical pulses can travel through. In some cases, an optical line may be terminated at one or both ends or may be used to create a loop to form an optical cavity. In some cases, squeezed states may be squeezed coherent states which are optical coherent states whose variance in the position or momentum quadrature is squeezed (anti -squeezed). The optical quantum mode in a squeezed state may comprise an optical quantum mode that has less than the minimum quantum noise level in one quadrature and more than the minimum quantum noise level in the conjugate quadrature, maintaining the uncertainty principle.

[0055] One of the outputs of the beam splitter is connected to the delay-line system, while the other is connected to the optical cavity. The extracted portion of each pulse goes through a network of delay lines to produce the couplings between that individual DOPO pulse and all other DOPO pulses, while the other portion of the pulse propagates through the resonator cavity. Before the end of the roundtrip, the coupling field generated through the network of delay lines may be coupled back into that individual DOPO pulse using an injection beam splitter to create the coupling between that individual DOPO pulse and possibly all other DOPO pulses within the resonator cavity. In some cases, at a roundtrip, a portion of each degenerate optical parametric oscillator (DOPO) pulse is extracted using an out coupler (e.g., a beam splitter or a directional coupler).

[0056] The plurality of delay lines may comprise a plurality of intensity and phase modulators which synchronously control the strengths and phases of the couplings, allowing for programming of the optical computing device to simulate the couplings between the variables of the underlying problem. [0057] In a network of N DOPO pulses, N — 1 delay lines and the corresponding intensity and phase modulators may sufficiently control the amplitudes and phases of the DOPO pulses in order to create the couplings between every pair of DOPO pulses.

[0058] In some cases, a device capable of sampling from an Ising model may be manufactured as a network of DOPO pulses as disclosed in US 2016/0162798, which is incorporated by reference herein in its entirety.

[0059] In some cases, the network of DOPO pulses and the couplings created between DOPO pulses are generated using commercially available mode-locked lasers and optical elements, such as telecom fiber delay lines, modulators, and other optical devices. In some cases, the network of DOPO pulses and the couplings created between DOPO pulses are generated using optical fiber technologies, such as fiber technologies developed for telecommunications applications. In some cases, the couplings may be realized with optical fibers and controlled by optical Kerr shutters.

Coherent Isins machine

[0060] In some cases, a computing device such as a matrix multiplication device may be coupled to a photonic computing device. A photonic computing device may be a coherent Ising machine (CIM). A CIM is an optical computing device with a powerful optimization system due to its increased, e.g., all-to-all, connectivity among optical pulses. Furthermore, operating at optical frequencies, the CIM may have a higher speed compared to classical computers in solving optimization problems. The CIM may be adapted to solve the Ising problem; however, its optical pulses may instead be used to represent continuous variables. Such a modification may also be referred to as a coherent optical network.

[0061] The coherent optical network may be of various types such as any type described herein. In some cases, the coherent optical network comprises optical computing devices. In some cases, the coherent optical network comprises any of the group of optical instruments including beam splitters, non-linear optical elements such as periodically poled lithium niobate (PPLN), free-space lasers that function on optical tables, fiber-ring resonator cavities comprising optical fibers and fiber optics instruments, phase-sensitive amplifiers (PSA), second-harmonic generators (SHG), intensity and phase modulators, photodetectors, analog-to-digital converters (ADC), digital-to-analog converters (DAC), or field-programmable gate arrays (FPGA). In some cases, the coherent optical network comprises integrated photonics.

Integrated photonic coherent Isins machine

[0062] Another example of an optical computing device is an integrated photonic coherent Ising machine disclosed, for instance, in “Coherent Ising machines with error correction feedback” by Kako et al., Advanced Quantum Technologies, Vol.3, Issue 11, page 2000045, which is incorporated by reference herein in its entirety.

[0063] In some cases, an integrated photonic coherent Ising machine is a combination of nodes and a connection network that solves a particular Ising problem. In some cases, the combination of nodes and the connection network may form an optical computer that is adiabatic. In other words, the combination of the nodes and the connection network may non-deterministically solve an Ising problem when the values stored in the nodes reach a steady state to minimize the energy of the nodes and the connection network. Values stored in the nodes at the minimum energy level may be associated with values that are a solution to a particular Ising problem.

[0064] In some cases, a system comprises a plurality of ring resonator photonic nodes. One or more of the plurality of ring resonator photonic nodes may store a value. The system may comprise a pump coupled to one or more of the plurality of ring resonator photonic nodes. The pump may be coupled via a pump waveguide for providing energy to one or more of the plurality of ring resonator photonic nodes. The system may comprise a connection network comprising a plurality of two-by-two building blocks of elements. One or more elements of the two-by-two building blocks may comprise a plurality of phase shifters for tuning the connection network with parameters associated with the encoding of an Ising problem. The connection network may process the value stored in one or more of the plurality of ring resonator photonic nodes. The Ising problem may be solved by the value stored in one or more of the plurality of ring resonator photonic nodes at a minimum energy level. Box-constrained quadratic programming problem and construction of stochastic differential equations

[0065] The box-constrained quadratic programming problem is a continuous optimization problem comprising continuous variables that are subject to a lower bound and an upper bound. These problems may be written as: minimize subject to , for all i .

[0066] Here, N is the number of variables, Q is a symmetric N X N matrix, V is a vector of length N, are the variables of the problem, Z £ is the lower bound on the variable number Z, and u i is the upper bound on the variable number Z. The expression on the first line represents the objective (or cost) function, while the expression on the second line represents the box constraint.

[0067] Various stochastic differential equations, based on the coherent continuous- variable machine (CCVM), may be used to solve the box-constrained quadratic programming problem. Four equations are described herein: Langevin dynamics, pumped Langevin dynamics, delay-line coherent continuous-variable machine (DL-CCVM) dynamics, and measurement-feedback coherent continuous-variable machine (MF- CCVM) dynamics.

[0068] Langevin dynamics is a mathematical model that may be used for solving optimization problems using gradient descent. The corresponding stochastic differential equation may be written as:

[0069] Here, the variables c £ represent the continuous variables, are the couplings between the variables, w i are Wiener terms which are random variables sampled from a normal distribution, N (0, 1), and a is the diffusion strength. The first term represents the drift term or the coupling term of the stochastic differential equation, while the second term represents the diffusion term. To represent the box-constrained quadratic programming problem, the coupling term may be replaced with - To impose the box constraint, the variables may be clamped between

[0070] Pumped Langevin dynamics is a simplified model for the coherent Ising machine (CIM) (see, for example, “Coherent Ising machine based on degenerate optical parametric oscillators” by Wang et al., which is incorporated by reference herein in its entirety). This model may be written as:

[0071] Here, the first term describes the nonlinear optical component of the coherent continuous-variable machine (CCVM), with p being the strength of the input pump laser field that provides the amplification for the optical pulses. The second term describes the coupling term and the last term describes the diffusion term. All other variables describe the same parameters as described elsewhere herein with respect to the description of the Langevin dynamics stochastic differential equations.

[0072] DL-CCVM dynamics is a more accurate model for the delay-line coherent continuous-variable machine (DL-CCVM) (see, for example, “Truncated Wigner theory of coherent Ising machines based on degenerate optical parametric oscillator network” by Maruo et al., which is incorporated by reference herein in its entirety). This model may be described by two stochastic differential equations as:

[0073] Here, each optical pulse in the coherent continuous-variable machine (CCVM) is represented by two variables c £ and s £ , proportional to the real and imaginary amplitudes of the optical electric field. The first term in the square brackets describes the drift term, while the second term describes the diffusion. The term represents the coupling term. The constant A s is a parameter of the quantum optical device, dependent on the properties of the nonlinear crystal. Stochasticity is represented by the two random variables dW i1 and dW i2 , which may be sampled independently from a normal distribution with a mean of zero and a variance of one, (i.e., N (0, 1)). The factor r controls the amount of noise in the amplitudes and in opposite ways and is introduced by externally injecting a squeezed vacuum state into the open port of the beam splitter that outcouples the cavity amplitudes into the delay-line network. The amount of squeezing in the squeezed vacuum state controls the factor r. In the case when no squeezed vacuum state is injected, i.e., the externally injected state is a vacuum state, the factor r = 1. The rest of the parameters are the same as those defined elsewhere herein.

[0074] MF-CCVM dynamics is a more accurate model for the measurement-feedback coherent continuous-variable machine (MF-CCVM) (see, for example, “Noise correlation and success probability in coherent Ising machines” by Inui and Yamamoto, which is incorporated by reference herein in its entirety). In some cases, a measurement-feedback system may be a system comprising different components, including a homodyne measurement system, digital-to-analog converters, analog-to-digital converters, a classical computing device, or any combination thereof. In some cases, this system may be used to measure the amplitudes of the input optical pulses and generate output optical pulses that are functions of all other input optical pulses, to create couplings between the input optical pulses. The measurement-feedback coherent continuous-variable machine model may be represented by the stochastic differential equations:

[0075] Here, each optical pulse in the coherent continuous-variable machine (CCVM) is represented by two variables p t and 07. Assuming a Gaussian distribution for the shape of the optical pulses, these variables indicate the mean values and the variances of the optical pulses. The first equation describes the evolution of the mean values p^ while the second equation describes the evolution of the variances <J £ . Corresponding to each optical pulse, there is also the variable representing the measured value of each optical pulse amplitude, with w £ being a random variable sampled from a normal distribution with a mean of zero and a variance of one (i.e., N (0, 1)), representing the noise added to the pulses due to quantum measurement. The first two terms in the first equation describe the drift term while the last term describes the diffusion term of the stochastic differential equation. The second term describes the coupling or feedback term. Here, λ is a hyperparameter controlling the strength of the feedback signal. The parameter j in these equations is the strength of the quantum measurement, while g is a parameter of the quantum optical device representing the strength of nonlinearity in the nonlinear crystal of the quantum optical device. The rest of the parameters are the same as those described elsewhere herein.

[0076] The presence of the nonlinear crystal affects the evolution of the noise term through the changes in σ i . In the absence of a nonlinear crystal, p = g = 0 and σ i converges to - meaning that the coefficient of the Wiener term w i becomes zero. Therefore, the noise in the stochastic process may be dynamically controlled by controlling the pump strength p and measurement strength j.

Digital Computer

[0077] In some cases, the digital computer comprises one or more hardware central processing units (CPU) that carry out the digital computer’s functions. In some cases, the digital computer further comprises an operating system configured to perform executable instructions. In some cases, the digital computer is connected to a computer network. In some cases, the digital computer is connected to the Internet such that it accesses the World Wide Web. In some cases, the digital computer is connected to a cloud computing infrastructure. In some cases, the digital computer is connected to an intranet. In some cases, the digital computer is connected to a data storage device.

[0078] Various types of digital computer may be used. In fact, suitable digital computers may include, by way of non-limiting examples, server computers, desktop computers, laptop computers, notebook computers, sub-notebook computers, netbook computers, netbook computers, set-top computers, media streaming devices, handheld computers, Internet appliances, mobile smartphones, tablet computers, personal digital assistants, video game consoles, and vehicles. Smartphones may be suitable for use with one or more examples of the method and the system described herein. Select televisions, video players, and digital music players, in some cases with computer network connectivity, may be suitable for use in some cases of the system and the method described herein. Suitable tablet computers may include those with booklet, slate, and convertible configurations.

[0079] In some cases, the digital computer comprises an operating system configured to perform executable instructions. The operating system may be, for example, software, comprising programs and data, which manages the device’s hardware and provides services for execution of applications. Various types of operating system may be used. For example, suitable server operating systems include, by way of non-limiting examples, FreeBSD, OpenBSD, NetBSD®, Linux, Apple® Mac OS X Server®, Oracle® Solaris®, Windows Server®, and Novell® NetWare®. Suitable personal computer operating systems may include, by way of non-limiting examples, Microsoft® Windows®, Apple® Mac OS X®, UNIX®, and UNIX-like operating systems such as GNU/Linux®. In some cases, the operating system is provided by cloud computing. Suitable mobile smart phone operating systems may include, by way of non-limiting examples, Nokia® Symbian® OS, Apple® iOS®, Research In Motion® BlackBerry OS®, Google® Android®, Microsoft® Windows Phone® OS, Microsoft® Windows Mobile® OS, Linux®, and Palm® WebOS®. Suitable media streaming device operating systems may include, by way of non-limiting examples, Apple TV®, Roku®, Boxee®, Google TV®, Google Chromecast®, Amazon Fire®, and Samsung® HomeSync®. Suitable video game console operating systems may include, by way of non-limiting examples, Sony® PS3®, Sony® PS4®, Microsoft® Xbox 360®, Microsoft® Xbox One®, Nintendo® Wii®, Nintendo® Wii U®, and Ouya®.

[0080] In some cases, the digital computer comprises a storage and/or memory device. Various types of storage and/or memory may be used in the digital computer. In some cases, the storage and/or memory device comprises one or more physical apparatuses used to store data or programs on a temporary or permanent basis. In some cases, the device comprises a volatile memory and requires power to maintain stored information. In some cases, the device comprises non-volatile memory and retains stored information when the digital computer is not powered. In some cases, the non-volatile memory comprises a flash memory. In some cases, the non-volatile memory comprises a dynamic randomaccess memory (DRAM). In some cases, the non-volatile memory comprises a ferroelectric random access memory (FRAM). In some cases, the non-volatile memory comprises a phase-change random access memory (PRAM). In some cases, the device comprises a storage device including, by way of non-limiting examples, CD-ROMs, DVDs, flash memory devices, magnetic disk drives, magnetic tapes drives, optical disk drives, and cloud computing based storage. In some cases, the storage and/or memory device comprises a combination of devices, such as those disclosed herein.

[0081] In some cases, the digital computer comprises a display used for providing visual information to a user. Various types of display may be used. In some cases, the display comprises a cathode ray tube (CRT). In some cases, the display comprises a liquid crystal display (LCD). In some cases, the display comprises a thin film transistor liquid crystal display (TFT-LCD). In some cases, the display comprises an organic light-emitting diode (OLED) display. In some cases, an OLED display comprises a passive-matrix OLED (PMOLED) or active-matrix OLED (AMOLED) display. In some cases, the display comprises a plasma display. In some cases, the display comprises a video projector. In some cases, the display comprises a combination of devices, such as those disclosed herein.

[0082] In some cases, the digital computer comprises an input device to receive information from a user. Various types of input devices may be used. In some cases, the input device comprises a keyboard. In some cases, the input device comprises a pointing device including, by way of non-limiting examples, a mouse, trackball, trackpadjoystick, game controller, or stylus. In some cases, the input device comprises a touch screen or a multi-touch screen. In some cases, the input device comprises a microphone to capture voice or other sound input. In some cases, the input device comprises a video camera or other sensor to capture motion or visual input. In some cases, the input device comprises a Kinect®, Leap Motion®, or the like. In some cases, the input device comprises a combination of devices, such as those disclosed herein.

[0083] Now referring to FIG. 1, there is shown a schematic of an example system for solving a continuous box-constrained quadratic programming problem using an optical computing device. A continuous box-constrained quadratic programming problem may be a continuous-variable programming problem. In some cases, a continuous box-constrained quadratic programming problem comprises an objective function that is a quadratic function of at least continuous variables. In some cases, a box constraint of said CVPP may comprise continuous variables subject to a lower bound and an upper bound. The system comprises a digital computer 8 and an optical computing device 10. The digital computer 8 may be any digital computer disclosed elsewhere herein. The optical computing device 10 comprises an optical processor 12 and a readout control system 14. The optical computing device 10 may be any optical computing device disclosed elsewhere herein. In some cases, the optical computing device 10 may be a quantum optical device. The optical computing device 10 may comprise a coherent optical network. In some cases, the coherent optical network comprises a coherent Ising machine. In some cases, the optical computing device 10 comprises a measurement-feedback system.

[0084] Now referring to FIG. 4, there is shown a schematic of an example optical computing device including a measurement-feedback system (also referred to as a measurement-feedback coherent continuous-variable machine (MF-CCVM)). This device comprises a source of optical field (labeled “pump pulse”), an optical parametric amplifier (OP A), an optical fiber resonator cavity (labeled “ring cavity”), and a measurementfeedback system. The pump pulse generates optical pulses that go through a second- harmonic generator (SHG) for their frequencies to get doubled. These pulses are then amplified and down-converted to the original frequency after going through a periodically poled lithium niobate (PPLN) waveguide optical parametric amplifier (OP A). The pulses then propagate in the optical fiber resonator cavity a number of times. At each round trip, a portion of each pulse is removed by a beam splitter (labeled “directional coupler I”). One of the inputs of the beam splitter is connected to the optical cavity, while the second input is left open (i.e., a vacuum state may be used as input) or fed with a squeezed vacuum state to control the noise in the process, indicated in the figure by f i , which represents an injected random number. In some cases, one of the pulses may continue to propagate within the optical fiber resonator cavity. One of the outputs of the beam splitter is connected to the homodyne measurement system, while the other one is connected to the optical cavity. The out-coupled portion of the pulse is then measured using a homodyne measurement system by coupling the signal field with the field from the local oscillator (LO) pulse, the results of which are converted to digital information using an analog-to-digital converter (ADC) and fed into a classical computing device (here illustrated using a field- programmable gate array (FPGA)). The classical computing device computes the couplings required for each individual pulse, based on the measured amplitudes of other pulses, and then outputs them at appropriate times corresponding to the timing of each pulse. The pulses are then converted back into an analog signal using a digital-to-analog converter (DAC) to generate the feedback signal. The feedback signal is then fed into an intensity modulator (IM) and/or a phase modulator (PM) that takes inputs from the classical computing device and laser source (labeled “feedback pulse”) to modulate the local laser source and couple back the modulated feedback optical pulse into the pulses that remained within the resonator cavity, using an injection beam splitter (labeled “directional coupler II”). Before coupling back into the cavity, the feedback signal may couple with a squeezed vacuum state using a beam splitter to control the noise in the system, where the feedback signal and the squeezed vacuum state are fed into the two inputs of the beam splitter and one of the outputs is connected to the other beam splitter that injects the feedback signal into the cavity. The pulses within the cavity then go through the OPA to get amplified. This process is repeated a number of times until the ground state of the quantum Hamiltonian describing the system of degenerate optical parametric oscillator (DOPO) pulses within the optical computing device is reached. In some cases, the measurement-feedback system may comprise a high-performance computing (HPC) device. For example, the measurement-feedback system may comprise a central processing unit (CPU), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), a graphics processing unit (GPU), a tensor processing unit (TPU), or a tensor streaming processor (TSP). The HPC device may comprise any HPC device disclosed elsewhere herein.

[0085] A description of an example coherent Ising machine with quantum measurementfeedback control may be found in Haribara et al., “Computational principle and performance evaluation of coherent Ising machine based on degenerate optical parametric oscillator network,” Entropy, 2016, Vol.18, issue 4, pg. 151, which is incorporated by reference herein in its entirety.

[0086] The measurement-feedback system may also function in the absence of the nonlinear crystal (i.e., the periodically poled lithium niobate (PPLN)) and an external pump laser source. In this case, by starting from vacuum states present within the optical cavity and performing homodyne measurements on them, the measurement-feedback system may drive the initial vacuum states into coherent states representing the solutions of the box-constrained quadratic programming problem. Furthermore, the loss in the amplitudes of the optical pulses due to background cavity loss and measurement loss may be compensated for in two ways: (i) by adding a constant term (for each pulse) as part of the feedback mechanism; or (ii) by introducing an external laser source with a pulse-dependent amplitude Here, are the pulse amplitudes measured by the measurement mechanism. The feedback system may generate the gradient of an arbitrary objective function f that is a function of the measured amplitudes and phases as

[0087] Referring back to FIG. 1, in some cases, the optical computing device 10 comprises a delay-line system.

[0088] Now referring to FIG. 5, there is shown a schematic of an example optical computing device including a delay-line system (also referred to as a delay-line coherent continuous-variable machine (DL-CCVM)). This device may comprise a source of optical field (labeled “pump pulse”), an optical parametric amplifier (OPA), an optical fiber resonator cavity, and a delay-line system. The source of optical field may generate optical pulses that go through a second-harmonic generator (SHG) for their frequencies to get doubled. These pulses may then amplified and down-converted to the original frequency after going through the periodically poled lithium niobate (PPLN) waveguide optical parametric amplifier (OPA). The pulses may then propagate in the optical fiber resonator cavity a number of times. At each round trip, a portion of each pulse may be removed by an out-coupler (labeled “output coupler”), while the rest of the pulse continues to propagate in the optical fiber resonator cavity. An optical pulse representing a random number (labelled “f i ”) may be injected into the open port of the out-coupler. The out- coupled portion of the pulse may then goes through a delay-line system, made up of beam splitters, optical waveguides, intensity modulators, and phase modulators, and may then be coupled back into the optical pulses within the resonator cavity using an injection coupler. Each optical pulse that goes through the delay-line system may be amplified by a phase-sensitive amplifier (PSA), delayed by different durations using the multiplicity of the delay lines, with its amplitude and phase adjusted using the modulators (Modi, Mod2, ..., Mod N-1 ), and coupled back into other pulses within the resonator cavity at appropriate times. After being coupled back into the resonator cavity, the pulses may go through the OPA to get amplified. This process may be repeated a number of times until the ground state (or a suitable approximation thereof) of the quantum Hamiltonian describing the system of degenerate optical parametric oscillator (DOPO) pulses within the optical computing device is reached.

[0089] A description of an example coherent Ising machine with mutual coupling implemented by optical delay lines may be found in Haribara et al., “Computational principle and performance evaluation of coherent Ising machine based on degenerate optical parametric oscillator network,” Entropy, 2016, Vol.18, issue 4, pg. 151, which is incorporated by reference herein in its entirety.

[0090] Referring back to FIG. 1, the digital computer 8 comprises a processing device 20, a display device 24, an input device 26, communication ports 28, and a memory 22. The processing device 20, the display device 24, the input device 26, the communication ports 28, and the memory 22 may be of various types, such as any type disclosed elsewhere herein. The memory 22 comprises a computer program executable by the processing device 20. The communication ports 28 communicate with the optical computing device 10 via the readout control system 14.

[0091] In some cases, the system further comprises one or more processors (not shown) operatively coupled to the digital computer 8 and to the optical computing device 10, the one or more processors located on a cloud.

[0092] In some cases, the system further comprises a memory (not shown) operatively coupled to said digital computer, wherein said memory is operatively coupled to said digital computer over a network.

[0093] Now referring to FIG. 2, there is shown a flowchart of an example method for solving a continuous box-constrained quadratic programming problem.

[0094] According to processing operation 202, an indication of a continuous box- constrained quadratic programming problem may be obtained. The continuous box- constrained quadratic programming problem may include a plurality of continuous variables. The continuous box-constrained quadratic programming problem may include at least one box constraint. The indication of a continuous box-constrained quadratic programming problem may be of various types. In some cases, an indication of a continuous box-constrained quadratic programming problem may be a mathematical formula of the following form: minimize subject to Z £ < x £ < iq, for all i.

[0095] Here, N is the number of variables, Q is a symmetric N X N matrix, V is a vector of length N, are the variables of the problem, Z £ is the lower bound on the variable number Z, and iq is the upper bound on the variable number Z. The term on the first line indicates the objective (or cost) function, while the term on the second line indicates the box constraints.

[0096] The continuous box-constrained quadratic programming problem may have equality constraints. The equality constraints may be relaxed as penalty terms in the objective function of the continuous box-constrained quadratic programming problem. Such a constraint may be written as Zi(x) = 0, where x is the vector of the problem variables x £ . The objective function, including this constraint, may be written as

[0097] The last term in this objective function penalizes the objective function for nonzero values. The constraint has been squared for the case when the constraint function Zi(x) may take on negative values. For the case when Zi(x) > 0, the squaring of this constraint function is not necessary. If solving using the delay-line coherent Ising machine, the term Zi 2 (x) may be at most quadratic in x, while in the case of the measurement-feedback coherent Ising machine, it may have any form. Here, the constant is a hyperparameter which may be tuned to obtain the best performance.

[0098] The continuous box-constrained quadratic programming problem may have inequality constraints. [0099] The indication of the continuous box-constrained quadratic programming problem may be obtained according to various embodiments.

[0100] In some cases, the indication of the continuous box-constrained quadratic programming problem may be obtained using a digital computer. The digital computer may be of various types, such as any digital computer disclosed elsewhere herein. In some cases, the digital computer may be the digital computer 8 disclosed herein with respect to FIG. 1. The indication of the continuous box-constrained quadratic programming problem may be stored in a storage (not shown) or a memory disclosed elsewhere herein. In some cases, the memory device may be the memory 22 of the digital computer 8.

[0101] In some cases, the indication of the continuous box-constrained quadratic programming problem may be provided by a user interacting with the digital computer 8.

[0102] In some cases, the indication of the continuous box-constrained quadratic programming problem may be obtained from a remote processing unit, not shown, operatively coupled with the digital computer 8. The remote processing unit may be operatively coupled with the digital computer 8 according to various embodiments. In some cases, the remote processing unit may be coupled with the digital computer 8 via a network disclosed elsewhere herein. In some cases, the network may be a data network. The data network may be selected from a group consisting of a local area network (LAN), a metropolitan area network (MAN), and a wide area network (WAN). In some cases, the data network comprises the Internet.

[0103] In some cases, the indication of the continuous box-constrained quadratic programming problem may be obtained from a computer-implemented method for solving a continuous box-constrained quadratic programming problem.

[0104] Still referring to FIG. 2 and according to processing operation 204, the continuous box-constrained quadratic programming problem may be solved at least one time. The continuous box-constrained quadratic programming problem may be solved using an optical computing device. The optical computing device may be of various types, such as any optical computing device disclosed elsewhere herein. In some cases, the optical computing device may be the optical computing device 10 disclosed herein with respect to FIG. 1. The optical computing device may comprise pulses. The pulses amplitudes may be representative of the continuous box-constrained quadratic programming problem’s continuous variables and values thereof. The optical computing device may comprise amplitude saturation which may be used to implement at least one box constraint of the continuous box-constrained quadratic programming problem. Assuming that pulse amplitudes in the delay-line coherent Ising machine saturate to the value s (i.e., — s < < +s), the box constraint for the box-constrained quadratic programming problem presented in the description of processing step 202 may be implemented on the delay-line coherent Ising machine after expressing the problem variables as

[0105] This substitution allows the variables x i to satisfy the box constraint. The objective function of the box-constrained quadratic programming problem may be implemented on the optical computing device by taking the derivative of the objective function with respect to the pulse amplitudes c t , after the substitution described above. Doing so gives the following substitution for the coupling term in the stochastic differential equation of the delay-line coherent Ising machine described elsewhere herein:

[0106] This coupling term is still linear in the pulse amplitudes c k and thus implementable on the delay-line coherent Ising machine. The coefficients of the pulse amplitudes c k in the above equation are equal to - These may be implemented using the intensity and phase modulators in each individual delay line according to the pulse number j. The rest of the terms in the above equation amount to a constant which may be calculated in advance for each pulse and added to each pulse at each round trip. These constants may be added using an external pulses source (e.g., a laser) that operates at the frequency of the optical pulses.

[0107] The box-constrained quadratic programming problem presented in the description of processing step 202 may be solved using a measurement-feedback coherent continuous- variable machine (MF-CCVM) by implementing the objective function of the problem onto the field-programmable gate array (FPGA) of the measurement-feedback system. Assuming the measured input pulse amplitudes of the measurement-feedback system are equal to , the FPGA may implement the objective function by taking the variables of the problem to be and calculate the gradient of the objective function for each pulse. This gives the following substitution for the coupling term i n the stochastic differential equation pertinent to the measurement-feedback coherent Ising machine:

[0108] To implement the box constraint, the measured amplitudes may be clamped by the FPGA, at each round trip, before calculating the coupling term. Each measured pulse amplitude may be clamped to stay within the range at each round trip before the computation of the feedback term by the FPGA. If the lower bound p for a given variable x i is positive, the amplitude representing that variable may be squared as x i = to increase the probability of finding the solution to the problem. In this case, the coupling term may be written as

[0109] where if p < 0 for the i-th variable, and for the i-th variable. For the case where p > 0 for the i-th variable, the box constraint for the variable x i may be implemented by clamping the measured amplitude p t to be between at each round trip and before the computation of the feedback term. In the case where the upper bound Ui for a given variable x i is negative, that variable may be set equal to to increase the probability of finding the solution to the problem. In this case, the coupling term may be written as shown above, with for the i-th variable, and for the i-th variable. The box constraint may be implemented in the same way as the previous case, wherein the measured amplitudes representing x i are clamped to remain within , at each round trip and before the computation of the feedback term.

[0110] The box constraint may also be implemented in the measurement-feedback system by substituting for the variables of the problem

[oni] where s is an arbitrary constant tuned for better performance. In this case, the amplitudes of the measured pulses may be clamped at each round trip between the values — s and +s. The feedback term i n the measurement-feedback system equation, described elsewhere herein, may be replaced with

[0112] The continuous box-constrained quadratic programming problem may be used to configure an optical computing device. For the delay-line coherent Ising machine, the coefficients of the amplitudes c k in the equation presented in the description of processing steps 202 and 204 (i.e., the coefficients may be used to program the intensity and phase modulators in each delay line depending on the indices Z and k. These parameters determine the amplitude and sign of the out-coupled fields taken into the delayline system for the creation of the correct coupling term. The pump value may be set to be a constant p = p max , a linear function of time where t is the time and T is the total evolution time, or any other function of time approaching the final value p max at the end of the process. The value of p max may be set to p max = s 2 + 1, where s is the saturation amplitude wherein . An external laser source with a frequency equal to that of the pulses within the resonator cavity may be used to add the constant . terms to each pulse at each round trip.

For the measurement-feedback coherent continuous-variable machine (MF-CCVM), the field-programmable gate array (FPGA) may be programmed to compute the coupling terms for each individual pulse according to the coupling equation described elsewhere herein. The FPGA may also be used to clamp the measured pulse amplitudes to the necessary values for implementing the box constraint. The pump value may be set to be a constant p = p max , a linear function of time where t is the time and T is the total evolution time, or any other function of time approaching the final value p max at the end of the process. The value of p max may be a hyperparameter tuned to find the best performance of the quantum optical device in solving the problem.

[0113] Now referring to FIG. 3, there is shown a flowchart of an example method for solving a continuous box-constrained quadratic programming problem using a stochastic differential equation.

[0114] According to processing operation 302, a stochastic differential equation corresponding to the continuous box-constrained quadratic programming problem may be constructed. The stochastic differential equation may comprise a plurality of continuous variables corresponding to the plurality of continuous variables of the continuous box- constrained quadratic programming problem. For the box-constrained quadratic programming problem presented in the description of processing operation 202, four different stochastic differential equations may be constructed to solve the problem.

[0115] The Langevin dynamics stochastic differential equations may be constructed as

[0116] Here, /(c) is the objective function, d £ is the partial derivative with respect to c £ , and <J is the diffusion strength.

[0117] For the objective function of the box-constrained programming problem disclosed elsewhere herein, the gradient of the objective function becomes

[0118] Here, Q ik and Cj are the parameters of the box-constrained quadratic programming problem, and the rest of the parameters are described elsewhere herein. [0119] The pumped Langevin dynamics stochastic differential equations may be constructed for the box-constrained quadratic programming as

[0120] The dynamics modeling the stochastic differential equations representing the delay -line coherent continuous-variable machine (DL-CCVM) may be constructed for the box-constrained quadratic programming problem specified by the objective function /(c) as

[0121] where r is a factor controlled by an externally injected squeezed vacuum state. The rest of the parameters of this stochastic differential equation are defined elsewhere herein.

[0122] The dynamics modeling the stochastic differential equations representing the measurement-feedback coherent continuous-variable machine (MF-CCVM) may be constructed for a box-constrained quadratic programming as

[0123] where is a hyperparameter controlling the strength of the feedback signal and /(//) is the objective function. For a box-constrained quadratic programming problem specified by Q ik and V £ , the feedback signal is equal to [0124] The rest of the parameters of this stochastic differential equation are defined elsewhere herein.

[0125] These four stochastic differential equations may be solved using the Euler method, wherein the terms on the right-hand side of the equations are calculated recursively to find the change in the variables These values may then be used to update the values of the corresponding variables. The updated values of the variables can then used to again find the right-hand-side expression of the stochastic differential equations in order to find the new value for the change in the variables. This process may be repeated recursively a number of times until the final values for the variables are reached. These values may then be used to find the solution to the box-constrained programming problem. Additionally, the box constraint may be implemented at each step of the Euler method by enforcing the variables representing the continuous variables of the problem to be within the bounds defined for each variable by the box constraint. The number of steps for the Euler method may depend on problem size, the hardness of the problem, or the final success probability required at the end of the process. Other methods may also be used to solve these stochastic differential equations. A classical computer may be used to construct and solve these stochastic differential equations using the Euler method described herein, or any other method for solving stochastic differential equations.

[0126] According to processing operation 304, the stochastic differential equation may be solved at least one time to obtain at least one solution of the stochastic differential equation. The stochastic differential equation may be solved using an optical computing device. The optical computing device may be of various types, such as any optical computing device disclosed elsewhere herein. In some cases, the optical computing device may be the optical computing device 10 disclosed herein with respect to FIG. 1. The optical computing device may comprise pulses. The pulses’ amplitudes are representative of the stochastic differential equation’s continuous variables and values thereof. The optical computing device has amplitude saturation, which may be used to implement the at least one box constraint of the continuous box-constrained quadratic programming problem.

[0127] The DL-CCVM dynamics stochastic differential equations presented elsewhere herein may be solved using the delay -line coherent Ising machine by initializing the optical pulses of the device to have a mean of zero and a variance of one. By implementing the objective function of the box-constrained quadratic programming problem using the phase and intensity modulators of the delay-line system, as described elsewhere herein, the coupling term of the stochastic differential equation may be implemented on the optical computing device. The rest of the terms in the DL-CCVM dynamics may be implemented in the optical computing device. The random variables dW i1 and dW i2 may be implemented in the device due to the presence of quantum noise in the optical computing device. The coefficients of the pulse amplitudes in the coupling term, along with the pump value p, may be adjusted to implement the box constraint of the box- constrained quadratic programming problem, as described elsewhere herein.

[0128] The MF-CCVM dynamics stochastic differential equations presented elsewhere herein may be solved using the measurement-feedback coherent Ising machine by initializing the optical pulses of the device to have a mean of zero and a variance of one. By implementing the objective function of the box-constrained quadratic programming problem onto the field-programmable gate array (FPGA) of the measurement-feedback system, as described elsewhere herein, the coupling term °f the stochastic differential equation may be implemented on the optical computing device. The rest of the terms in the MF-CCVM dynamics are implemented naturally in the optical computing device. The random variables may be implemented in the device due to the noise introduced as a result of a quantum measurement in the optical computing device. The coefficients of the pulse amplitudes in the coupling term, along with the pump value p and the clamping values implemented by the FPGA, may be adjusted to implement the box constraint of the box-constrained quadratic programming problem, as described elsewhere herein.

[0129] The stochastic differential equation may be used to configure the optical computing device. For the delay-line coherent Ising machine, the coefficients of the amplitudes in the coupling term of the equation presented in the description of processing operation 302 may be used to program the intensity and phase modulators in each delay line, depending on the indices i and k. These parameters may determine the amplitude and phase of the optical fields that are out-coupled from the resonator cavity, and taken into the delay-line system, for the creation of the coupling term. The pump value may be set to be a constant P = Pmax, a linear function of time p where t is the time and T is the total evolution time, or any other function of time approaching the final value p max at the end of the process. The value of p max may be set to p max = s 2 + 1, where s is the saturation amplitude wherein An external laser source with a frequency equal to that of the pulses within the resonator cavity may be used to add the constant terms to each pulse at each round trip. For the measurement-feedback coherent Ising machine, the field- programmable gate array (FPGA) may be programmed to compute the coupling terms for each individual pulse according to the coupling equation described elsewhere herein. The FPGA may also be used to clamp the measured pulse amplitudes to the necessary values for implementing the box constraint before the computation of the coupling term. The pump value may be set to be a constant p = p max , a linear function of time where t is the time and T is the total evolution time, or any other function of time approaching the final value p max at the end of the process. The value of p max may be a hyperparameter tuned to find the best performance of the quantum optical device in solving the problem.

[0130] The amount of noise in the stochastic differential equation may be controlled by dynamically changing the measurement strength j. During the evolution of the measurement-feedback system, j may be constant or any other arbitrary function of time.

[0131] In some cases, the coupling term of the stochastic differential equation is implemented on the optical computing device to solve the stochastic differential equation. The coupling term may represent the couplings between the variables of the continuous optimization problem. The quantum optical device may be driven towards final optical pulse amplitudes that minimize the changes in the coupling term with time (i.e., stabilize the coupling term). This may be equivalent to finding the global minimum of the objective function represented by the coupling term implemented as the gradient of the objective function.

[0132] In some cases, the coupling term is used to program the measurement-feedback system of the optical computing device. This may be done by measuring a portion of the optical pulse amplitudes, out-coupled from the resonator cavity at each round trip, converting the measurement results to digital data using an analog-to-digital converter (ADC), and then using a classical computing device (e.g., a field-programmable gate array (FPGA)) to find the coupling term required for each optical pulse that may be a function of all other measured pulse amplitudes. After being converted to analog signals by going through a digital-to-analog converter (DAC), the coupling terms may be coupled to the optical pulses that are within the resonator cavity using an injection beam splitter.

[0133] In some cases, the coupling term is used to program the delay-line system of the optical computing device. This may be done by out-coupling a portion of each optical pulse within the resonator cavity into a delay -line system, comprised of a system of optical waveguides of different lengths to create different durations of delay for the optical pulses. The difference between the delays created by these optical waveguides may be a multiple of the pulse durations. These optical waveguides may be separated by beam splitters. The optical waveguides may be joined back together using another set of beam splitters to create one optical waveguide that couples back into the optical pulses within the resonator cavity using an injection beam splitter. Along each individual optical waveguide creating different delay durations, there may be a pair of intensity and phase modulators. These modulators may correct and adjust the amplitude and phase of each optical pulse so that, when joined with other delay lines, they may produce the correct coupling term. The intensity and phase modulators may be programmed using an external classical computing device to adjust their intensity and phase modulation values, according to the coupling term, for each optical pulse.

[0134] According to processing operation 306, at least one solution of the stochastic differential equation is obtained from the optical computing device. The optical computing device may be of various types, such as any optical computing device disclosed elsewhere herein. In some cases, the optical computing device may be the optical computing device 10 disclosed herein with respect to FIG. 1. The at least one solution of the stochastic differential equation may be obtained according to various embodiments. For instance, for the box-constrained programming problem presented in the description of processing operation 202, the objective function of the problem may be implemented into the coupling term of the stochastic differential equation. The solution of the stochastic differential equation obtained from the optical computing device may be represented by the continuous variables that minimize the objective function f(x of the box-constrained quadratic programming problem, subject to the box constraints implemented using the delay-line optical computing device or the measurement-feedback optical computing device, as described elsewhere herein.

[0135] Referring back to FIG. 2 and according to processing operation 206, at least one solution of the continuous box-constrained quadratic programming problem may be obtained. The at least one solution of the continuous box-constrained quadratic programming problem may be obtained from the optical computing device. The optical computing device may be of various types, such as any optical computing device disclosed elsewhere herein. In some cases, the optical computing device may be the optical computing device 10 disclosed herein with respect to FIG. 1. The at least one solution of the continuous box-constrained quadratic programming problem may be obtained according to various embodiments. For instance, for the box-constrained programming problem presented in the description of processing operation 202, the solutions may be represented by the continuous variables that minimize the objective function f(x of the box-constrained quadratic programming problem, subject to the box constraints implemented using the measurement-feedback optical computing device, as described elsewhere herein.

[0136] The at least one solution of the continuous box-constrained quadratic programming problem may be obtained using the at least one solution of the stochastic differential equation. If the solved stochastic differential equations are the Langevin dynamics or pumped Langevin dynamics presented in the description of processing step 306, the solutions of the stochastic differential equations may be converted to the solutions of the box-constrained quadratic programming problem directly by taking the solution values of the Langevin dynamics or pumped Langevin dynamics to represent the solutions to the programming problem x i . If the solved stochastic differential equation is the delay-line coherent continuous-variable machine (DL-CCVM) dynamics presented in the description of processing step 302, the solutions of the stochastic differential equations may be converted to the solutions of the box-constrained quadratic programming problem using the equation [0137] Here, the variables c L are the solutions of the DL-CCVM dynamics stochastic differential equations, while the variables represent the solutions to the box-constrained quadratic programming problem. The parameters and are the lower and upper bounds for each variable x i , respectively, defining the box constraint. The parameter s is the value to which the variables saturate in the stochastic differential equation, as described in processing step 204. If the solved stochastic differential equation is the MF-CCVM dynamics presented in the description of processing step 302, the solutions of the stochastic differential equations p t may directly represent the solutions of the box- constrained quadratic programming problem as described in processing step 204. The solutions of the stochastic differential equations p t may represent the square root of the solutions of the problem as described in processing step 204. The solutions of the stochastic differential equations p t may represent the of square root of the negative of the solutions of the problem , as described in processing step 204. The solutions of the stochastic differential equations p t may also represent the solutions through the equation if such linear substitution has been deployed. Here, s is an arbitrary parameter where the amplitudes p t are clamped to at each round trip.

[0138] In some cases, the at least one solution of the continuous box-constrained quadratic programming problem is obtained via selecting the lowest value of objective function of the continuous box-constrained quadratic programming problem. This may be done by finding the values of the variables of the problem that give the lowest value of the objective function, while still satisfying the constraints of the problem. This may be done by solving the problem using the stochastic differential equation or the optical computing device a number of times (e.g., 100 times, 500 times, or 1000 times) and determining the lowest value of the objective function found. By dividing the number of times the solver found this lowest value by the total number of times the problem was attempted to be solved, the success probability for finding this particular solution may be determined. The number of repetitions for this process may be determined by the accuracy for the success probability value, or the likelihood of finding the global minimum of the problem. [0139] In some cases, the problem variables may be bound only on one side (e.g. x i > 0). Such constraints are generally referred to as an upper constraint or a lower constraint. In such cases, the square of the amplitude of the pulses may be used to represent the variables of the problem. For instance, to implement the constraint x i > 0, the variables may be represented by:

[0140] For a general case where x i > we may use the following definition in the implementation of the objective function:

[0141] Such implementations may increase the order of the gradient of the objective function in the feedback term from linear to cubic and hence require nonlinear interactions to be implemented. In the case of the measurement-feedback CCVM, these nonlinear functions may be simply implemented using the digital electronic processing unit since it can perform arbitrary mathematical operations. In the case of the delay-line CCVM, however, a nonlinear optical interaction of order three or larger is required. Optical elements with Kerr or higher order nonlinearities may be used to implement such interactions.

[0142] In some cases, the problem may possess a mix of continuous and discrete variables. Since coherent Ising machine (CIM) can solve binary variables problems, the same coherent optical device may be used to solve such problems. This may be done by pumping the pulses representing the continuous and discrete variables at different rates. Pumping the discrete variables more aggressively would make them saturate to boundary quickly where their phase represents the binary variables, while the continuous variables are pumped at a lower rate to have the chance to obtain a fractional value within the boundaries of the box constraint.

[0143] Since the objective function is continuous, the solutions found by the solver may get arbitrarily close to the value of the optimal solution. The success probabilities may be found by determining how close the solutions found by the solver are to the optimal value. For instance, the solutions that are found to be within 0.1% of the optimal solution may be considered optimal. The success probabilities for larger gaps from the optimal solutions may also be similarly found. The larger the percentage gap from the optimal solution is, the larger the success probability is expected to be, as there will be more of the solved instances that provide a solution within that gap from the optimal solution.

[0144] Processing operations 302 and 306 may be performed at an interface coupled to the optical computing device. The optical computing device may be of various types, such as any optical computing device disclosed elsewhere herein. In some cases, the optical computing device may be the optical computing device 10 disclosed herein with respect to FIG. 1. The interface may be of various types. In some cases, the interface is a cloud computing interface. In some cases, the interface is a graphical user interface.

[0145] Post-processing may be performed using a convex optimization method to obtain an improved solution. In some cases, a convex optimization method can refer to any classical or quantum optimization method used to find the minimum of an optimization problem with an objective function that is a convex function of its continuous variables. In some cases, a convex optimization method can refer to any classical or quantum optimization method used to find the minimum of an optimization problem with an assumption that the objective function is convex locally in the phase space of the variables. In some cases, the method may be used to equivalently find the maximum of the optimization problem when the problem is expressed or formulated with a negative sign. Due to the noise present in the stochastic differential equation or the optical computing device, the final solution found may be slightly different from the actual solution of the programming problem. By performing a convex optimization in the phase space region around the solution found by the solver, the actual minimum of the programming problem may be found. The convex optimization may be performed using a classical computing device in a short amount of time (i.e., polynomial time). The algorithm for the convex optimization may be chosen from the well-known convex optimization methods that incorporate constraints (e.g., the L-BFGS-B method, the Adam method, or the Powell method).

[0146] While preferred embodiments of the present invention have been shown and described herein, it will be obvious to those skilled in the art that such embodiments are provided by way of example only. It is not intended that the invention be limited by the specific examples provided within the specification. While the invention has been described with reference to the aforementioned specification, the descriptions and illustrations of the embodiments herein are not meant to be construed in a limiting sense. Numerous variations, changes, and substitutions will now occur to those skilled in the art without departing from the invention. Furthermore, it shall be understood that all aspects of the invention are not limited to the specific depictions, configurations, or relative proportions set forth herein which depend upon a variety of conditions and variables. It should be understood that various alternatives to the embodiments of the invention described herein may be employed in practicing the invention. It is therefore contemplated that the invention shall also cover any such alternatives, modifications, variations, or equivalents. It is intended that the following claims define the scope of the invention and that methods and structures within the scope of these claims and their equivalents be covered thereby.