Information processing system and ising model generation system

The system addresses discretization errors by integerizing explanatory variables, enabling the mapping of non-integer valued functions to an Ising model for accurate optimization.

JP2026002470APending Publication Date: 2026-01-08HITACHI LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2024100490
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-06-21
Publication Date
2026-01-08

AI Technical Summary

Technical Problem

Existing techniques struggle to map objective functions with non-integer explanatory variables to an Ising model due to discretization errors, which affect the accuracy of machine learning models.

Method used

An information processing system that generates an Ising model by integerizing explanatory variables using various parameters, eliminating discretization errors and allowing for non-integer values in the variable range.

Benefits of technology

Enables the mapping of functions with non-integer values to an Ising model, facilitating optimal solution search through annealing, linear programming, or integer programming without accuracy loss.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026002470000001_ABST
    Figure 2026002470000001_ABST
Patent Text Reader

Abstract

To provide an information processing system capable of generating an Ising model by converting an explanatory variable or the like into an integer based on various parameters set by a user for a function in which a value range of the explanatory variable includes a non-integer.SOLUTION: The Ising model generation section includes an integer conversion target expression selection section that selects an integer conversion target expression corresponding to the function, an integer conversion parameter management section that manages variables and parameters necessary for integer conversion of the integer conversion target expression, and an integer conversion expression generation section that generates the Ising model corresponding to the function based on the parameters necessary for the integer conversion.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing system and an Ising model generation system. [Background technology]

[0002] An annealing machine (also known as an Ising machine) is an effective analytical device for efficiently solving combinatorial optimization problems. It converts the objective function into an Ising model and searches for a global solution using the annealing method. The annealing methods used here are mainly simulated annealing and quantum annealing. The Ising model is a model that takes into account first-order and second-order terms for multiple spin variables that take the values ​​of -1 or 1, and it is known that some objective functions of combinatorial optimization problems, such as the traveling salesman problem, can be expressed using the Ising model.

[0003] However, in many real-world combinatorial optimization problems, the objective function is generally not formulated in advance, and an Ising model is not defined. In such cases, prior art techniques for mapping an objective function derived by machine learning to an Ising model include Patent Document 1, Patent Document 2, and Non-Patent Document 1.

[0004] Patent Document 1 discloses a technology for converting a highly nonlinear objective function derived by machine learning, particularly regression analysis using a kernel method, into an unconstrained quadratic function equivalent to an Ising model (Quadratic Unconstrained Binary Optimization (QUBO) model) or a linear function with linear constraints by introducing a dummy variable, which is an additional variable other than the explanatory variables.

[0005] Patent Document 2 discloses a technique for reducing the number of dummy variables introduced when mapping a highly nonlinear objective function derived by regression analysis to a quadratic function without constraints or a linear function with linear constraints that is equivalent to an Ising model.

[0006] Non-Patent Document 1, like Patent Document 1, discloses a technology for automatically converting an objective function with strong nonlinearity derived by regression analysis using a kernel method such as a polynomial kernel or an RBF (Radial Basis Function) kernel into an unconstrained quadratic function (QUBO model) equivalent to an Ising model or a linear function with linear constraints. [Prior art documents] [Patent documents]

[0007] [Patent Document 1] Japanese Patent Application Publication No. 2022-177549 [Patent Document 2] International Publication No. 24 / 018571 [Non-patent literature]

[0008] [Non-Patent Document 1] Takefumi Omori et al., "Development of Ising Mapping Method for Applying Annealing Machines to High-Dimensional Recipe Optimization of Manufacturing Equipment," 69th Spring Meeting of the Japan Society of Applied Physics (2022) Summary of the Invention [Problem to be solved by the invention]

[0009] In order to map an objective function to an Ising model using the methods described in Patent Document 1, Patent Document 2, and Non-Patent Document 1, the range of explanatory variables of the objective function derived by machine learning must be integers. Therefore, in conventional techniques, in order to map the objective function to an Ising model, the explanatory variables are converted to integers before machine learning, and the objective function is derived by performing machine learning on the explanatory variables converted to integers (sample data containing these explanatory variables, etc.). Because the explanatory variables are converted to integers in advance, the range of explanatory variables of the derived objective function is integers, making it possible to map it to an Ising model.

[0010] However, in machine learning, explanatory variables are often continuous variables, and their ranges include non-integer values. Furthermore, it is generally known that to obtain good results in machine learning processes for such explanatory variables (such as improving the accuracy of the learning model), it is necessary to normalize and standardize the explanatory variables before machine learning. This also applies when the explanatory variables are discrete variables. In such cases, the values ​​of the normalized or standardized explanatory variables are not limited to integers but include non-integer values, and therefore the values ​​of the explanatory variables in the objective function derived from machine learning of those explanatory variables may also be non-integer. Conventional technology has the problem of being unable to map such objective functions to an Ising model.

[0011] In addition, in conventional techniques, explanatory variables are converted to integers before machine learning, which results in discretization errors during the integer conversion. Discretization errors are the difference between the original explanatory variable value and the integer-converted value of that explanatory variable. For example, if the explanatory variable value is "0.5" and the integer-converted value of that explanatory variable is "1," a difference of "0.5," i.e., discretization errors, will occur. Another issue is that machine learning using explanatory variables that include discretization errors can affect the accuracy of the learning model.

[0012] An object of the present invention is to provide an information processing system that can generate an Ising model by eliminating the influence of discretization errors in machine learning from an objective function, and for objective functions in which the range of explanatory variables includes non-integer values, by integerizing explanatory variables etc. included in the objective function (converting them into variables whose range is integer) based on various parameters set by the user. [Means for solving the problem]

[0013] The present application includes multiple means for resolving at least part of the above-described problems, and an example thereof is as follows: That is, an information processing system for generating an Ising model corresponding to a function whose variable range includes non-integer values, the system including an Ising model generation unit that generates an Ising model corresponding to the function, the Ising model generation unit including an integer conversion target expression selection unit that selects an integer conversion target expression corresponding to the function, an integer conversion parameter management unit that manages parameters necessary for integer conversion of the variables and the integer conversion target expression, and an integer conversion expression generation unit that generates an Ising model corresponding to the function based on the parameters necessary for integer conversion. [Effects of the Invention]

[0014] According to the present invention, a function including non-integer values ​​in the range of variables can be mapped to an Ising model that allows for the search for an optimal solution using annealing, linear programming, integer programming, or the like.

[0015] Other objects, novel features, configurations, and effects will become apparent from the following description of the preferred embodiments of the invention. [Brief explanation of the drawings]

[0016] [Figure 1] FIG. 1 is a diagram illustrating an example of a configuration of an information processing system according to a first embodiment. [Figure 2] FIG. 2 is a diagram illustrating an example of a hardware configuration of an information processing system according to the first embodiment. [Figure 3]FIG. 2 is a diagram illustrating an example of a flowchart of the operation of an Ising model generation unit of the information processing system according to the first embodiment. [Figure 4] FIG. 10 is a diagram illustrating an example of a configuration of an information processing system according to a second embodiment. [Figure 5A] FIG. 11 is a diagram illustrating an example of a flowchart of the operation of an Ising model generation unit of the information processing system according to the second embodiment. [Figure 5B] FIG. 11 is a diagram illustrating an example of a flowchart of an integer conversion parameter setting operation performed by an integer conversion parameter management unit of an information processing system according to a second embodiment. [Figure 6A] FIG. 10 is a diagram illustrating an example of a GUI for selecting a function file. [Figure 6B] FIG. 10 is a diagram illustrating an example of a GUI for setting integer conversion parameters. [Figure 6C] FIG. 10 is a diagram illustrating an example of a GUI for setting integer conversion parameters. [Figure 6D] FIG. 10 is a diagram illustrating an example of a GUI for setting integer conversion parameters. [Figure 6E] FIG. 10 is a diagram illustrating an example of a GUI for setting integer conversion parameters. [Figure 7A] FIG. 10 is a diagram illustrating an example of a GUI for displaying a failure result. [Figure 7B] FIG. 10 is a diagram illustrating an example of a GUI for displaying a successful result. [Figure 8] FIG. 10 is a diagram illustrating an example of the configuration of a function file. DETAILED DESCRIPTION OF THE INVENTION

[0017] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. The embodiment is an example for explaining the present invention, and for clarity of explanation, appropriate omissions and simplifications have been made. The present invention can be implemented in various other forms. Unless otherwise specified, each component may be singular or plural.

[0018] In order to facilitate understanding of the invention, the position, size, shape, range, etc. of each component shown in the drawings may not represent the actual position, size, shape, range, etc. Therefore, the present invention is not necessarily limited to the position, size, shape, range, etc. disclosed in the drawings.

[0019] When there are multiple components with the same or similar functions, they may be described using the same reference numeral with different subscripts. When there is no need to distinguish between these multiple components, the subscripts may be omitted.

[0020] In the embodiments, there may be a description of processing performed by executing a program. Here, a computer executes the program using a processor (e.g., a CPU or a GPU), and performs processing defined by the program while using storage resources (e.g., a memory) and interface devices (e.g., a communication port). Therefore, the entity that executes the program and performs the processing may be the processor. Similarly, the entity that executes the program and performs the processing may be a controller, device, system, computer, or node that has a processor.

[0021] The processing performed by executing the program may be performed by a computing unit, and may include a dedicated circuit for performing specific processing. Here, the dedicated circuit may be, for example, a Field Programmable Gate Array (FPGA), an Application Specific Integrated Circuit (ASIC), or a Complex Programmable Logic Device (CPLD).

[0022] A program may be installed on a computer from a program source. The program source may be, for example, a program distribution server or a computer-readable storage medium. When the program source is a program distribution server, the program distribution server may include a processor and storage resources for storing the program to be distributed, and the processor of the program distribution server may distribute the program to be distributed to other computers. In addition, in an embodiment, two or more programs may be realized as one program, or one program may be realized as two or more programs.

[0023] First, we will explain the Ising model. It is known that the Ising model is equivalent to an unconstrained quadratic function for variables that can be created by arranging binary variables that take only the values ​​0 or 1 through a predetermined transformation. Below, we will explain the Ising model as an unconstrained quadratic function for an objective function with binary variables as explanatory variables. v1,v2,…,v N as binary variables, C ij ,C i Assuming that is a constant, the Ising model is expressed as a linear combination of first or second order terms of binary variables as shown in (Equation 1).

[0024]

number

[0025] In the embodiments described below, x=(x1, x2, ..., x) includes values ​​that are not integers in the range. d), is given, it is converted into the form of (Equation 1) using binary variables. The function f(x) is an objective function derived using machine learning from sample data related to one or more explanatory variables and one or more objective variables. To derive this objective function f(x), first, the explanatory variables in the sample data are normalized or standardized. The objective function f(x) is then derived by machine learning the sample data. In this way, the explanatory variables do not contain discretization errors because they are not converted to integers in advance, and because they are normalized or standardized, their value range includes non-integer values. Note that, for example, kernel methods, neural networks, and decision trees are used for machine learning. When using kernel methods for machine learning, the objective function f(x), which is a regression function, is derived as a result of regression analysis (regression calculation) using a polynomial kernel or RBF kernel, as described below.

[0026] For the function f(x) derived as above, as shown in (Equation 2), the function f(x) is g p Function f' of (x) p It is expressed as a linear sum of g p (x) is a function g that contains only one variable pi (x i ), g p (x) is called the integer expression. p and c is a constant independent of x.

[0027]

number

[0028] Here, the variable x i and the integer expression g p Let us consider expressing (x) as discrete variables as in (Equation 3) and (Equation 4). L i and L' p is the variable x i and the integer expression g p This is the number of levels (the number of possible values) when the value of (x) is discretized. i ,B iis the variable x i Upper limit i and the lower limit i and the number of levels L i It is a constant that can be calculated from the variable x i Upper limit i and the lower limit i to the integer expression g p Upper limit of (x) p and the lower limit p If we can also calculate the variable x i Upper limit i and the lower limit i and the number of levels L' p Similarly, if a constant C p ,D p can also be calculated.

[0029]

number

[0030]

number

[0031] t pk As a binary variable, the function f(x) can be expressed as (Equation 5) from (Equation 2) and (Equation 4). pk is k=0,1,…,L' p It is a one-hot vector that is 1 for only one value of k out of -1.

[0032]

number

[0033] Also, s ik As a binary variable, the integer expression g is obtained from (Equation 2), (Equation 3), and (Equation 4). p (x) can be expressed as (Equation 6). Binary variable t pk Similarly, the binary variable s ikis also a one-hot vector that is 1 for only one value of k.

[0034]

number

[0035] From (Equation 5) and (Equation 6), the Ising model corresponding to the function f(x) is given by (Equation 7). λ, λ', and λ'' are penalty coefficients for the constraints.

[0036]

number

[0037] Below are some examples of the function f(x). If the function f(x) is an equation obtained by regression analysis using a polynomial kernel, then g p (x)=x T x p As a result, it becomes as shown in (Equation 8). In (Equation 8), the equation on the first line is a function obtained by regression analysis using a polynomial kernel, and the equations on the second line and after are the Ising model corresponding to the function on the first line. Here, x p =(x p1 ,x p2 ,…,x pd ) is the explanatory variable vector of the sample data used in the regression analysis, N is the number of sample data, α p is the coefficient obtained by regression analysis, n and γ are hyperparameter constants, and d is the number of dimensions of x.

[0038]

number

[0039] If the function f(x) is an equation obtained by regression analysis using the RBF kernel, then g p (x)=|xx p | 2 As in (Equation 8), the first line of (Equation 9) is a function obtained by regression analysis using the RBF kernel, and the second and subsequent lines are the Ising model corresponding to the function in the first line. xp =(x p1 ,x p2 ,…,x pd ), N, α p , d is the same as in (Equation 8), e is Napier's constant, and γ and β are constants of hyperparameters.

[0040]

number

[0041] Number of levels L i, L' p The larger , the finer the range of the original variables can be discretized, but the number of required binary variables also increases. [Example]

[0042] 1 is a diagram showing an example of the configuration of an information processing system according to the first embodiment. The information processing system according to the first embodiment reads a function written in a function file, identifies an expression to be converted to integer, generates an Ising model using binary variables, and outputs the model to a file.

[0043] The information processing system 100 is composed of a function file recording unit 101, an Ising model file recording unit 102, and an Ising model generation unit 110. As described above, the function file recording unit 101 records a function file relating to one or more functions f(x) that have not been converted into integers in advance but have been derived by machine learning (for example, regression analysis using a polynomial kernel or an RBF kernel) on sample data relating to one or more explanatory variables and one or more objective variables that have been normalized or standardized. Regarding this one or more functions f(x), variables x=(x1, x2, ..., x d ) has a range that includes values ​​that are not integers.

[0044] The Ising model generation unit 110 includes a file parser 111 that reads the function file from the function file recording unit 101 and interprets the contents, an integer conversion target expression selection unit 112 that selects an integer conversion target expression of the read function, an integer conversion expression generation unit 113 that generates an expression using binary variables corresponding to the read function, and an integer conversion parameter management unit 114 that manages parameters necessary for integer conversion of variables. The integer conversion parameter management unit 114 includes a continuous variable expression range recording area 120 that records the range of the variables of the read function and the integer conversion target expression, and an integer variable level number recording area 121 that records the number of levels used when generating an Ising model. The Ising model file recording unit 102 records the Ising model generated by the Ising model generation unit 110 as an Ising model file.

[0045] FIG. 2 is a diagram illustrating an example of the hardware configuration of the information processing system 100. In FIG. 2, the computer 201 has a general configuration and includes a CPU 211, a memory 212, and a secondary storage area 213 for storing files. A function file 231 and an Ising model file 232 are stored in the secondary storage area 213. The operation of the Ising model generation unit 110 illustrated in FIG. 1 is realized by an Ising model generation program 221 in the memory 212. The ranges and the number of levels recorded in the range recording area 120 of the continuous variable formula and the number of levels recording area 121 of the integer variable, respectively, illustrated in FIG. 1, are held in the memory 212 as integer conversion parameters 222. The operation of the function file 231 and the Ising model file 232 and the setting of the integer conversion parameters 222 are performed by displaying on a display 202 or inputting information using a keyboard 203 or a mouse (not shown), which are connected to the computer 201.

[0046] FIG. 3 is a diagram showing an example of a flowchart of the operation of the Ising model generation unit 110. The Ising model generation unit 110 reads a function file from the function file recording unit 101, and the file parser 111 reads functions from the read function file (step 301). The function file is written in a predetermined format such as a text file or a CSV file. The file parser 111 interprets the description of the function file and checks whether there is a format error (step 302). If an error is detected in the format, an error is output and the process ends (step 308).

[0047] If there is no error in the format, the integer conversion target expression selection unit 112 selects an integer conversion target expression of the read function (step 303). The integer conversion target expression is g that meets the condition of (Equation 2). p This is an expression corresponding to (x). If the integer conversion target expression selection unit 112 cannot find an integer conversion target expression that meets the conditions in selecting an integer conversion target expression (step 304), it outputs an error and terminates (step 308). If the integer conversion target expression is found in the selection of the integer conversion target expression, the integer conversion parameter management unit 114 sets integer conversion parameters (step 305).

[0048] The integer parameter management unit 114 manages the upper and lower limit values ​​of each variable (the lower limit of (Equation 3)) input by the user via the keyboard 203 or the like. i and Upper i ) and the number of levels (L in (Equation 3) i ) are recorded in the range recording area 120 of the continuous variable formula and the level number recording area 121 of the integer variable, respectively. i An interval u that assigns integers to the range of i may be input, and the integer parameter management unit may calculate the number of levels as (Equation 10) and record it in the integer variable level number recording area 121.

[0049]

number

[0050] Furthermore, the integer parameter management unit 114 calculates the upper and lower limit values ​​of each expression to be converted into integers (Lower p and Upper p ) and record it in the range recording area 120 for continuous variable expressions. Furthermore, the integer conversion parameter management unit 114 calculates the number of levels of each expression to be converted into an integer (L' in (Equation 4)) input by the user using a keyboard or the like. p ) is recorded in the integer variable level number recording area 121. Note that instead of the level number, the user may input an interval for allocating integers to the value range of each expression to be converted into integer, and the integer conversion parameter management unit 114 may calculate the level number and record it in the integer variable level number recording area 121.

[0051] Next, the integer conversion formula generation unit 113 calculates the values ​​(Lower i ,Upper i, Lower p, Upper p, L i, L' p ) to (Number 3) and (Number 4) A i ,B i, C p ,D p and generates an Ising model expressed by (Equation 7) (step 306). The integerization formula generation unit 113 stores the generated Ising model as an Ising model file in the Ising model file recording unit 102 (step 307).

[0052] As described above, according to the information processing system of the first embodiment, it is possible to generate an Ising model that is not affected by discretization errors and corresponds to a function that includes variables that can take non-integer values. [Example]

[0053] In the second embodiment, an example of an information processing system will be described that tallies the number of binary variables required by a generated Ising model, determines whether it exceeds a given upper limit value, and if it does, calculates and presents integer parameters that do not exceed the upper limit value. An example of a GUI (Graphical User Interface) that the information processing system displays for various operations and inputs by the user will also be described. In the following description, descriptions of content that overlaps with the first embodiment will be omitted, and differences will be described.

[0054] FIG. 4 is a diagram illustrating an example of the configuration of an information processing system 1000 according to the second embodiment. Note that in FIG. 4, the same components as those in the information processing system 100 illustrated in FIG. 1 are denoted by the same reference numerals. The configuration of the information processing system 1000 illustrated in FIG. 4 is substantially the same as that of the information processing system 100 illustrated in FIG. 1, except for a portion of the configuration of the Ising model generation unit 1100. Specifically, in FIG. 4, the Ising model generation unit 1100 of the information processing system 1000 includes a file parser 111, an integer conversion target formula 112, an integer conversion formula generation unit 113, an integer conversion parameter management unit 114, and a binary variable tallying unit 115. The integer conversion parameter management unit 114 also includes a range recording area 120 for continuous variable formulas, a level number recording area 121 for integer variables, and a binary variable upper limit value recording area 122. The binary variable tallying unit 115 tally the number of binary variables included in the Ising model to be generated. The binary variable upper limit value recording area 122 records the upper limit values ​​of binary variables that can be used.

[0055] As with the information processing system 100 shown in FIG. 1, the function file recording unit 101 of the information processing system 1000 records function files relating to one or more functions f(x) derived by machine learning (for example, regression analysis using a polynomial kernel or an RBF kernel) on sample data relating to one or more normalized or standardized explanatory variables and one or more objective variables. Regarding these one or more functions f(x), d ) has a range that includes values ​​that are not integers.

[0056] FIG. 5A is a diagram showing an example of a flowchart of the operation of the Ising model generation unit 1100. First, the file parser 111 of the Ising model generation unit 1100 prompts the user to select a function file to be read. FIG. 6A is a diagram showing an example of a GUI that the file parser 111 displays to the user when selecting a function file. The file parser 111 displays the GUI shown in FIG. 6A, and the user selects a function file by referring to the GUI. A specific description will be given below.

[0057] 6A, the GUI is composed of an input screen 601, a function file selection section 610 arranged within the input screen 601, a file list display section 611 arranged within the function file selection section 610, and a file decision button 612 also arranged within the function file selection section 610. The file list display section 611 displays the file names of one or more function files and a file selection check box for each file name.

[0058] The file parser 111 displays the GUI shown in Fig. 6A. The user refers to the GUI, checks the check box of the file name of the function file for which an Ising model is to be generated from among the file names of one or more function files displayed in a file list display section 611 in a function file selection section 610 in the input screen 601, and presses the file decision button 612 (for example, by clicking the button with a mouse or the like, or by tapping directly on the screen) to select the function file.

[0059] The file parser 111 reads the function file selected by the user (step 501). The file parser 111 interprets the description of the read function file and checks whether the functions are written appropriately and whether there are any formatting errors (step 502). If there is an error, for example, if the function type is an unsupported type, the file parser 111 outputs an error as a format error and terminates (step 511).

[0060] Here, a specific description will be given of the function file read by the file parser 111. Fig. 8 is a diagram showing an example of the structure of a function file. A function file 800 includes a function type (Type) 801, a number of variables (# of Variables) 802, a hyperparameter (Y) 803, a number of terms of the function (# of terms) 804, a degree of the function (degree) 805, an intercept (Intercept) 806, a scale and shift amount of the variable 807, and a coefficient of each term and a constant 808 constituting the term.

[0061] In this example, the function configuration is distinguished by the function type 801. For example, if the function type 801 is described as "Polynomial", it is a function obtained by regression analysis using the polynomial kernel shown in (Equation 8), and if it is described as "RBF", it is a function obtained by regression analysis using the RBF kernel shown in (Equation 9). The number of variables 802 is the number of dimensions of the variable, which corresponds to d in (Equation 2). The number of terms 804 represents p in (Equation 8) and (Equation 9). The degree 805 represents n in (Equation 8). The intercept 806 represents C in (Equation 8) and (Equation 9). The scale and shift amount 807 of the variable are determined by the value x of each variable. i is the original value x' i For x i =(x' i -p i ) / q i Scale q when transformed as i and shift p i This type of transformation is often used to normalize or standardize variables before machine learning.

[0062] In the information processing system of the second embodiment, the integer conversion parameter management unit 114 converts and inversely converts values ​​using an appropriate scale and shift amount so that the user can specify upper and lower limit values ​​and integer conversion intervals on the scale before conversion. The coefficients of each term and the constants 808 constituting the terms are determined by α for each p in (Equation 8) and (Equation 9). p and x p =(x p1 ,x p2 ,…,x pd )

[0063] Returning to FIG. 5A, if there is no format error in the read function file, the integer conversion target expression selection unit 112 selects an integer conversion target expression of the function described in the function file (step 503). As in the first embodiment, the integer conversion target expression is g that meets the condition of (Equation 2). p In this case, if the type of function is "Polynomial", the integer conversion target expression selection unit 112 selects x T x p , if "RBF" then |xx p | 2 If the integer conversion target expression selection unit 112 cannot find an integer conversion target expression that meets the conditions in selecting an integer conversion target expression (step 504), it outputs an error and terminates the process (step 511). If an integer conversion target expression is found in the selection of the integer conversion target expression, the integer conversion parameter management unit 114 sets integer conversion parameters (step 505). Details of this integer conversion parameter setting (step 505) will be described below.

[0064] Fig. 5B is a diagram showing an example of a flowchart of the operation of the integer conversion parameter management unit 114 in setting the integer conversion parameters (step 505). Also, Figs. 6B, 6C, and 6D are diagrams showing examples of GUIs that the integer conversion parameter management unit 114 displays to the user when setting the integer conversion parameters.

[0065] First, the integer conversion parameter management unit 114 displays the GUI shown in FIG. 6B as the initial state of the GUI. In FIG. 6B, the GUI is configured with an input screen 602, an integer conversion parameter setting unit 620 arranged within the input screen 602, and a variable parameter input unit 621, a variable parameter decision button 622, an integer conversion target formula parameter input unit 623, a binary variable upper limit value input unit 624, and an Ising model generation button 625 arranged within the integer conversion parameter setting unit 620. The variable parameter input unit 621 displays a list of variables of functions described in the function file in the “Variables” field. The integer conversion target formula parameter input unit 623 displays a list of integer conversion target formulas selected by the integer conversion target formula selection unit 112 in the “Integer Conversion Target Formula” field. Furthermore, the binary variable upper limit value input unit 624 displays the upper limit values ​​of binary variables that can be used in the information processing system in the “System Upper Limit Value” field. The configuration of the GUI shown in FIG. 6B has been described above, but the same applies to the GUIs shown in FIGS. 6C and 6D.

[0066] Returning to FIG. 5B, the user refers to the displayed GUI shown in FIG. 6B and inputs the upper and lower limits (Lower i and Upper i ) and the integer interval or the number of integer levels (L in (Equation 3) i ) into the "lower limit," "upper limit," "integer conversion interval," and "number of integer conversion levels" columns of the variable parameter input unit 621, respectively. When an integer conversion interval is input for any variable in the variable parameter input unit 621, the integer conversion parameter management unit 114 calculates the number of integer conversion levels based on that value and displays it in the corresponding column. On the other hand, when an integer conversion level number is input for any variable in the variable parameter input unit 621, the integer conversion interval is calculated based on that value and displays it in the corresponding column. When the user completes the input and presses the variable parameter decision button 622, variable parameter setting is completed (step 541). The upper limit and lower limit values ​​and the number of integer conversion levels for each variable set by the user (or by the integer conversion parameter management unit 114) are recorded in the range recording area 120 for continuous variable expressions and the number of levels recording area 121 for integer variables, respectively.

[0067] When the variable parameter setting is completed, the integer conversion parameter management unit 114 determines the upper and lower limit values ​​(Lower of (Equation 4)) of each integer conversion target expression in the list of integer conversion target expressions displayed in the integer conversion target expression parameter input unit 623 from the upper and lower limit values ​​of each variable that have been set. p and Upper p ) and input them into the "Lower limit" and "Upper limit" fields of the integer conversion target formula parameter input section 623 (step 542). The input upper limit and lower limit values ​​of each integer conversion target formula are recorded in the range recording area 120 of the continuous variable formula.

[0068] 6C is a diagram showing a GUI in a state where variable parameter setting by the user and the integer conversion parameter management unit 114 has been completed as described above, and where input of upper and lower limit values ​​for each integer conversion target expression has been completed by the integer conversion parameter management unit 114. When the integer conversion parameter management unit 114 inputs the upper and lower limit values ​​for each integer conversion target expression into the integer conversion target expression parameter input unit 623, it displays the GUI shown in FIG.

[0069] The user refers to the displayed GUI shown in FIG. 6C and inputs the integer conversion interval or the number of integer conversion levels (L' in (Equation 4)) for each of the integer conversion target expressions in the list of integer conversion target expressions displayed in the integer conversion target expression parameter input section 623. p ) is input. As with the processing content in step 541, when either the integer conversion interval or the number of integer conversion levels is input, the integer conversion parameter management unit 114 calculates the other and displays it in the corresponding field. The number of integer conversion levels for each expression to be converted into integer, set by the user (or the integer conversion parameter management unit 114), is recorded in the integer variable level number recording area 121.

[0070] 6C, the user inputs the upper limit value of the binary variable to be used in the "Set upper limit value" field of the binary variable upper limit value input section 624 (step 544). The upper limit value of the binary variable set by the user is recorded in the binary variable upper limit value recording area 122.

[0071] 6D is a diagram showing the GUI in a state where the user and the integer conversion parameter management unit 114 have input the integer conversion intervals and the number of integer conversion levels of each integer conversion target formula into the integer conversion target formula parameter input unit 623, and the user has input the upper limit values ​​of the binary variables, as described above. The user refers to the GUI shown in FIG. 6D, confirms that the integer conversion parameter settings have been completed, and presses the Ising model generation button 625.

[0072] When the user presses the Ising model generation button 625, the integer conversion parameter management unit 114 checks whether the upper limit value of the binary variable input by the user exceeds the system upper limit value (the upper limit value of the binary variable that can be used in the information processing system, which is shown in the "system upper limit value" field in the GUI) (step 545). If it exceeds the upper limit value, the integer conversion parameter management unit 114 prompts the user to re-input the upper limit value of the binary variable (returning the process to step 544). If it does not exceed the upper limit value, the integer conversion parameter setting (step 505 in the flowchart shown in FIG. 5A) ends.

[0073] Returning to FIG. 5A , in response to the user pressing the Ising model generation button 625 in the integer conversion parameter setting (step 505), the integer conversion formula generation unit 113 generates the values ​​(Lower i ,Upper i, Lower p, Upper p, L i, L' p ) to (Number 3) and (Number 4) A i ,B i, C p ,D pand generates an Ising model expressed by (Equation 7) (step 506). Note that in step 506, the integerization formula generation unit 113 generates an Ising model shown in (Equation 8) if the type of function is "Polynomial", and generates an Ising model shown in (Equation 9) if the type of function is "RBF". The binary variable counting unit 115 counts the number of binary variables used in the generated Ising model (step 507). If the counted number of binary variables exceeds the upper limit of binary variables set by the user (set upper limit), the binary variable counting unit 115 displays a failure result of the Ising model generation (step 509).

[0074] FIG. 7A is a diagram showing an example of a GUI that the binary variable tallying unit 115 displays to the user as a failure result display when the number of tallied binary variables exceeds a set upper limit. In FIG. 7A , the GUI includes an output screen 701, an integer conversion parameter display unit 720 arranged within the output screen 701, and a variable parameter display unit 721, an integer conversion target formula parameter display unit 723, a used binary variable display unit 724, a message display unit 725, a reset button 726, and a parameter reduction button 727 arranged within the integer conversion parameter display unit 720. The variable parameter display unit 721 displays parameter values ​​of variables used in the generated Ising model. The integer conversion target formula parameter display unit 723 also displays parameter values ​​of integer conversion target formulas used in the generated Ising model. The used binary variable display unit 724 displays the system upper limit and the number of binary variables (used number) tallied by the binary variable tallying unit 115. Furthermore, the message display unit 725 displays a message (or notification, etc.) as a failure result, such as "The number of binary variables used has exceeded the setting."

[0075] 7A to the user, and prompts the user to select either a reset button 726 or a parameter reduction button 727 (step 512). The user refers to the displayed GUI, checks the number of binary variables used displayed in the used binary variable display section 724, the contents of the message displayed in the message display section 725, and so on, and selects (presses) either the reset button 726 or the parameter reduction button 727. In step 512, the binary variable totaling section 115 detects that the user has pressed the reset button 726 or the parameter reduction button 727.

[0076] When the user presses the reset button 726, the binary variable tallying unit 115 causes the integer conversion parameter managing unit 114 to set the integer conversion parameters again (returns the process to step 505). The integer conversion parameter managing unit 114 starts the integer conversion parameter setting (step 505), and displays the GUI shown in Fig. 6D, which shows the integer conversion parameters at the time of generating the Ising model, to the user again, and the user resets each parameter.

[0077] Specifically, the user refers to the displayed GUI and modifies integer conversion parameters, such as variable parameters and integer conversion target formula parameters, that the user has input. Furthermore, in response to the user's modification of the integer conversion parameters, the integer conversion parameter management unit 114 recalculates and inputs, for example, upper and lower limit values ​​of each integer conversion target formula. After such user modification and input by the integer conversion parameter management unit 114, the user presses the Ising model generation button 625, and the integer conversion parameter management unit 114 checks the upper limit values ​​of the binary variables, thereby completing the integer conversion parameter setting (step 505). From this point on, the processing from step 506 onwards in the flowchart shown in FIG. 5A is repeated.

[0078] On the other hand, when the user presses the parameter reduction button, the binary variable tallying unit 115 causes the integer conversion parameter management unit 114 to calculate integer conversion parameters for reducing the number of binary variables used. The integer conversion parameter management unit 114 calculates integer conversion parameters that can reduce the number of binary variables used (step 513). Specifically, since the number of binary variables required for an Ising model is proportional to the total number of levels of the integer variables, if the number of binary variables used (number of uses) is N and the setting upper limit value is U, the number of levels entered in the integer conversion parameter setting is multiplied by U / N (if the value of U / N is a non-integer, the decimal points are truncated to an integer). However, if the number of levels is 0, it is set to 1.

[0079] When the calculation of the integer conversion parameters is completed, the integer conversion parameter management unit 114 again proceeds to integer conversion parameter setting (step 505). In the integer conversion parameter setting (step 505), the integer conversion parameter management unit 114 replaces the integer conversion parameters used when generating the Ising model (parameters displayed in the GUI shown in FIG. 6D) with the parameters calculated in step 513, and displays the replaced integer conversion parameters to the user.

[0080] Fig. 6E is a diagram showing an example of a GUI in which the parameters displayed in the GUI shown in Fig. 6D have been replaced with parameters calculated by the integer conversion parameter management unit 114. The configuration of the GUI is the same as that of the GUI shown in Fig. 6D, except that the values ​​of some of the displayed parameters are different. In the GUI shown in Fig. 6E, the number of integer conversion levels in the variable parameter input unit 621 and the number of integer conversion levels in the integer conversion target formula parameter input unit 623 have been replaced with parameters calculated by the integer conversion parameter management unit 114, and the integer conversion intervals in both input units have also been replaced accordingly. The other parameters (upper and lower limit values ​​of each variable and each integer conversion target formula, and set upper limit value of a binary variable) have not been changed, and remain the same as the values ​​in the GUI shown in Fig. 6D.

[0081] The integer parameter management unit 114 displays the GUI shown in Fig. 6E to the user. The user refers to the displayed GUI, checks each parameter displayed in the GUI, and presses the Ising model generation button 625. After this, the processing from step 506 onwards in the flowchart shown in Fig. 5A is repeated.

[0082] When the binary variable counting unit 115 counts the binary variables used in the generated Ising model (step 507), if the number of counted binary variables does not exceed the set upper limit value, the binary variable counting unit 115 displays the successful result of the Ising model generation (step 510).

[0083] 7B is a diagram showing an example of a GUI that the binary variable tallying unit 115 displays to the user as a successful result display when the number of tallied binary variables does not exceed the set upper limit value. The configuration of the GUI shown in FIG. 7B is substantially the same as the configuration of the GUI shown in FIG. 7A, but it does not have a parameter reduction button 727 and instead has an output file input unit 728 and a file save button 729. As with the GUI shown in FIG. 7A, parameter values ​​are displayed in a variable parameter display unit 721 and an integer conversion target expression parameter display unit 723, and a used binary variable display unit 724 displays the system upper limit value and the number of binary variables (used number) tallied by the binary variable tallying unit 115. In addition, a message (or notification, etc.) such as "An Ising model has been generated" is displayed in a message display unit 725 as a successful result.

[0084] 7B to the user, and prompts the user to select either a reset button 726 or a file save operation (input into an output file input section 728 and pressing a file save button 729) (step 514). The user refers to the displayed GUI, checks the number of binary variables used displayed in a used binary variable display section 724, the contents of messages displayed in a message display section 725, and the like, and selects either pressing the reset button 726 or a file save operation. In step 514, the binary variable counting section 115 detects that the user has pressed the reset button 726 or performed a file save operation.

[0085] When the user presses the reset button 726, the binary variable tallying unit 115 and the integer parameter managing unit 114 execute the same processing as when the reset button is pressed in step 512 described above. On the other hand, when the user performs a file save operation, that is, when the file name of the output destination of the generated Ising model is input to the output file input unit 728 and the file save button 729 is pressed, the binary variable tallying unit 115 outputs the generated Ising model to the file input (specified) to the output file input unit 728 as an Ising model file (recorded in the Ising model file recording unit 102) (step 515). This completes the processing by the Ising model generation unit 1100.

[0086] As described above, according to the information processing system of the second embodiment, similarly to the information processing system of the first embodiment, it is possible to generate an Ising model corresponding to a function including variables that can take non-integer values ​​according to the value of the integer conversion parameter set by the user, and it is also possible to aggregate the number of binary variables (number of uses) used (required) in the generated Ising model, determine whether the aggregated number of uses exceeds the system upper limit value, and if it does exceed the system upper limit value, have the user reset the value of the integer conversion parameter so that it does not exceed the system upper limit value, or calculate an integer conversion parameter that does not exceed the system upper limit value and present it to the user, thereby making it possible to generate an Ising model in which the number of binary variables required by the Ising model does not exceed the set upper limit value.

[0087] Although the above describes various embodiments and variations of the present invention, the present invention is not limited to the above-described exemplary embodiments and includes various variations. For example, the above-described exemplary embodiments have been described in detail to facilitate understanding of the present invention, and the present invention is not limited to those including all of the components described herein. Furthermore, it is possible to replace part of the components of one exemplary embodiment with the components of another exemplary embodiment. It is also possible to add the components of another exemplary embodiment to the components of one exemplary embodiment. Furthermore, it is also possible to add, delete, or replace part of the components of each exemplary embodiment with other components. Furthermore, some or all of the above-described components, functions, processing units, processing means, etc. may be implemented in hardware, for example, by designing them as integrated circuits. Furthermore, the control lines and information lines in the figures are only those considered necessary for explanation, and not necessarily all are shown. It is also possible to consider that almost all components are interconnected. [Explanation of symbols]

[0088] 100, 1000: Information Processing Systems 101: Function file recorder 102: Ising model file recording section 110, 1100: Ising model generation unit 111: File parser 112: Integer conversion target expression selection section 113: Integer expression generator 114: Integer parameter management unit 115: Binary variable aggregation section 120: Range recording area for continuous variable expressions 121: Number of levels of integer variables 122: Binary variable upper limit value recording area 201: Computer 202: Display 203: Keyboard 211:CPU 212: Memory 213: Secondary storage area 221: Ising model generation program 222: Integer parameter 231: Function file 232: Ising model file 601, 602: Input screen 610: Function file selection section 611: File list display section 612: File decision button 620: Integer parameter setting unit 621: Variable parameter input section 622: Variable parameter decision button 623: Integer conversion target expression parameter input section 624: Binary variable upper limit value input section 625: Ising model generation button 701, 702: Output screen 720: Integer parameter display section 721: Variable parameter display section 723: Integer conversion target parameter display section 724: Binary variable display section 725: Message display section 726: Reset button 727: Parameter reduction button 728: Output file input section 729: File save button

Claims

1. An information processing system for generating an Ising model corresponding to a function including a non-integer value in a range of a variable, an Ising model generation unit that generates an Ising model corresponding to the function, The Ising model generation unit an integer conversion target expression selection unit that selects an integer conversion target expression corresponding to the function; an integer conversion parameter management unit that manages parameters necessary for integer conversion of the variables and the expressions to be converted into integers; an integerization formula generation unit that generates an Ising model corresponding to the function based on parameters necessary for the integerization, Information processing system.

2. 2. The information processing system according to claim 1, a function file recording unit that records one or more function files including the function; the integer conversion target expression selection unit selects an integer conversion target expression corresponding to a function described in the file read from the function file recording unit; Information processing system.

3. 2. The information processing system according to claim 1, the integer conversion parameter management unit manages at least upper and lower limit values ​​and the number of levels of the variables and the expressions to be converted into integers as parameters necessary for the integer conversion; Information processing system.

4. 2. The information processing system according to claim 1, the integer conversion parameter management unit presents a GUI to a user for allowing the user to set parameters necessary for the integer conversion, and manages the parameters set by the user via the GUI as the parameters necessary for the integer conversion. Information processing system.

5. 5. The information processing system according to claim 4, The Ising model generation unit a binary variable counting unit that counts the number of binary variables used in the Ising model created by the integer conversion formula generation unit, the binary variable tallying unit determines whether the tally value exceeds a set upper limit value of the binary variable among the parameters set by a user; Information processing system.

6. 6. The information processing system according to claim 5, When the counted value exceeds the set upper limit value, the binary variable counting unit presents a GUI to a user to allow the user to modify parameters necessary for the integer conversion. Information processing system.

7. 6. The information processing system according to claim 5, If the aggregated value exceeds the set upper limit value, the integer conversion parameter management unit calculates parameters necessary for the integer conversion so that the number of binary variables used does not exceed the set upper limit value, and presents a GUI displaying the calculated parameters necessary for the integer conversion to a user. Information processing system.

8. An Ising model generation method corresponding to a function including a non-integer value in the range of a variable, selecting an expression to be converted into an integer corresponding to the function; setting parameters necessary for integer conversion of the variables and the expressions to be converted into integers; an Ising model generation method for generating an Ising model corresponding to the function based on parameters necessary for the integer conversion.

9. The Ising model generation method according to claim 8, reading any one file from one or more function files including the function; In the selection of the expression to be converted into an integer, an expression to be converted into an integer corresponding to a function described in the read file is selected. Ising model generation method.

10. The Ising model generation method according to claim 8, In setting the parameters necessary for the integer conversion, at least upper and lower limits and the number of levels of the variables and the expressions to be converted into integers are set. Ising model generation method.

11. The Ising model generation method according to claim 8, In setting the parameters necessary for the integer conversion, a GUI is presented to the user for allowing the user to set the parameters necessary for the integer conversion; setting the parameters input by the user to the GUI as the parameters necessary for the integer conversion; Ising model generation method.

12. The Ising model generation method according to claim 11, tallying the number of binary variables used in the generated Ising model; determining whether the aggregated value exceeds a set upper limit value of the binary variable among the parameters input by the user; Ising model generation method.

13. The Ising model generation method according to claim 12, If the aggregated value exceeds the set upper limit value, a GUI is presented to the user to allow the user to modify parameters necessary for the integer conversion. Ising model generation method.

14. The Ising model generation method according to claim 12, If the aggregated value exceeds the set upper limit value, a parameter necessary for the integer conversion is calculated so that the number of binary variables used does not exceed the set upper limit value; presenting a GUI to a user that displays the calculated parameters necessary for the integer conversion; Ising model generation method.

Citation Information

Patent Citations

  • Information processing system and processing condition determination system

    JP2022177549A

  • Information processing device and processing condition determination system

    WO2024018571A1