Computer-readable recording medium storing operation program, operation method, and information processing device
By storing the cutting problem calculation operation program for calculating the target on a non-transitory computer-readable recording medium, the problem that it takes a long time to calculate the minimum cutting problem and the maximum cutting problem is solved, and the effect of shortening the calculation time is achieved.
Patent Information
- Application Number
- CN202410884292.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-08-14
- Filing Date
- 2024-07-03
- Publication Date
- 2025-02-21
AI Technical Summary
It takes a long time to calculate the minimum cutting problem and the maximum cutting problem.
A non-transitory computer readable recording medium is provided, storing an operational program for calculating a target to perform a cutting problem calculation. The program passes through multiple processing steps, including performing a cutting problem calculation without specifying a partition number, specifying a calculation result that satisfies a specific condition for each partition number, and normalizing the total value of the weight value through a predetermined function, to obtain the number of segments that meet certain conditions.
This method can shorten the calculation time and improve the calculation efficiency.
Smart Images

Figure CN119493934A_ABST
Abstract
Description
Technical Field
[0001] The present case discussed in this article relates to a non-transitory computer-readable recording medium storing a calculation program, a calculation method, and an information processing device. Background Art
[0002] A method for calculating a minimum cut problem or a maximum cut problem with respect to a calculation target has been disclosed.
[0003] Japanese Patent Application Publication No. 2020-004387 and Japanese Patent Application Publication No. 2021-081863 are disclosed as related technologies. Summary of the invention
[0004] Technical issues
[0005] However, computing the minimum cut problem and the maximum cut problem takes a long time.
[0006] In one aspect, the purpose of this case is to provide a calculation program, a calculation method, and an information processing device that can shorten the calculation time.
[0007] Solution to the problem
[0008] According to aspects of the present embodiment, a non-transitory computer-readable recording medium is provided, which stores an operation program for performing a cutting problem calculation for a computing target, wherein the computing target includes multiple nodes and multiple edges, each of the multiple nodes is coupled to at least any one of the other nodes using the edges of the multiple nodes, each of the multiple edges is set with a corresponding weight value, and the cutting problem calculation includes calculating the total value of the weight values of the edges that are cut when the multiple nodes included in the computing target are divided into two groups. In the example, the operation program is a program for causing a computer to perform processing, the processing including the following operations: performing the following first processing: performing a cutting problem calculation without specifying a division number, the division number being the number of nodes belonging to the two divided groups, and specifying a calculation result in which the total value of weight values satisfies the first condition from the obtained calculation results; performing the following second processing: specifying a calculation result in which the second condition is satisfied for each division number based on the calculation result specified in the first processing; performing the following third processing: performing a cutting problem calculation in which the division number is specified for each division number that cannot be specified in the second processing, and specifying a calculation result in which the total value of weight values satisfies the third condition for each division number; and performing the following fourth processing: calculating, for each division number, a normalized value obtained by normalizing the total value of the weight values specified in the second processing and the third processing by a predetermined function, and obtaining the division number that satisfies the fourth condition from the normalized value.
[0009] Beneficial effects of the present invention
[0010] Can shorten calculation time. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Figure 1A and Figure 1B is a diagram showing a graph including a plurality of nodes;
[0012] Figure 2 is a diagram for explaining a case where the number of nodes n is eight;
[0013] Figure 3A and Figure 3B is a diagram showing an example of cutting;
[0014] Figure 4A and Figure 4B is a diagram showing calculation results;
[0015] Figure 5 is a diagram showing hierarchical clustering;
[0016] Figure 6 is shown for obtaining the problem Required graph of time;
[0017] Figure 7 is a diagram showing a list in which M sums E are registered;
[0018] Figure 8 is a diagram showing the transformation of the solution x;
[0019] Fig.9A is a block diagram showing the overall configuration of an information processing apparatus, and Fig. 9B is a block diagram showing a hardware configuration of an information processing apparatus;
[0020] Fig. 10A is a flowchart showing an example of an operation in a case where the information processing apparatus executes process 1, and Fig. 10B is a diagram showing list L1;
[0021] Fig.11A is a flowchart showing an example of an operation in a case where the information processing apparatus executes process 2, and Fig. 11B is a diagram showing list L2;
[0022] Fig.12 is a flowchart showing an example of operation in the case where the information processing apparatus executes process 3;
[0023] Fig.13A is a flowchart showing an example of an operation in a case where the information processing apparatus executes process 4, and Fig. 13B is a diagram showing list L3;
[0024] Fig.14is a flowchart showing a process according to a comparative example; and
[0025] Fig.15 is a diagram illustrating the Quadratic Unconstrained Binary Optimization (QUBO) format. DETAILED DESCRIPTION
[0026] Before describing the embodiments, an overview of the maximum cut problem and the minimum cut problem will be described.
[0027] The maximum cut problem is a problem of partitioning vertices (nodes) into two groups for a weighted graph, and the maximum cut problem is a problem for performing the partition so as to maximize the sum of the weights of the cut edges when the vertices are partitioned into two groups. The minimum cut problem is a problem of partitioning vertices (nodes) into two groups for a weighted graph, and the minimum cut problem is a problem for performing the partition so as to minimize the sum of the weights of the cut edges when the vertices are partitioned into two groups.
[0028] Figure 1A and Figure 1B is a diagram showing a graph including a plurality of nodes. Each node is represented by a white circle or a black circle. Each node is coupled to at least any one of the nodes through an edge. A weight is set for each edge. At least any one of the edges is cut (cut) to be divided into two groups. Figure 1A In the example of , five edges are cut to be divided into white circle group and black circle group, and the sum of the weights of the cut edges is maximized. Figure 1B In the example of , two edges are cut to be divided into a white circle group and a black circle group, and the sum of the weights of the cut edges is minimized.
[0029] In the following description, as an example, a minimum cut problem will be described.
[0030] Figure 2 : is a diagram for explaining a case where the number of nodes n is eight. The node number of each node is set to i (= 1 to n). The edge between node i and node j is represented by e i,j . i,j The weight is denoted as d i,j For example, in Figure 2 In the example, the weight d 1,2 is two, and the weight d 2,3 For one.
[0031] In the minimum cut problem, when the node set is divided into two groups, the sum of the weights E of the cut edges is set to the minimum value. Figure 2 When calculating the minimum cut problem in the graph, such as Figure 3A As shown, the cutting edge e 1,2 , edge 2,7 , edge 5,8 and edge 4,5In this case, the sum E is 2+10+2+8=22, which is the minimum value.
[0032] Next, the minimum cut problem with a specified number of partitions will be described. For example, when partitioning into two groups, a node number constraint is set to partition the nodes into c nodes and (nc) nodes. For example, the number of partitions is set to c = 3. In this case, Figure 3B As shown, the cutting edge e 1,2 , edge 2,7 , edge 5,8 , edge 4,8 and edge 3,4 In this case, under the constraint of setting the number of divisions c=3, the total E becomes the minimum value.
[0033] The calculation formula for obtaining the solution of the minimum cut problem can be expressed as the following formula. In the following formula, the variable x is n bits, and if the node i is in group A, then x i = 0, and if node i is in group B, then x i = 1. By finding the x that minimizes the sum E in the following formula, we can find which edge to cut to minimize the sum E.
[0034] [Mathematical formula 1]
[0035]
[0036] The calculation formula for obtaining the solution of the minimum cut problem by specifying the number of partitions c is the following formula. In the following formula, α is a constant. By obtaining x that minimizes the sum E in the following formula, it is possible to find which edge to cut for the specified number of partitions c to obtain the minimum value of the sum E.
[0037] [Mathematical formula 2]
[0038]
[0039] Next, a method of normalizing the minimum value of the sum E for each division number c and selecting the normalized minimum value (normalized minimum value E norm ). This problem is also called the normalized partitioning problem. First, the minimum value of the sum E for each partition number c is normalized by a specific function. For example, normalization is performed according to the following formula. In the following formula, assoc(GroupX) is the sum of the sum of the weights of the edges in group X and the sum of the weights of the cut edges.
[0040] [Mathematical formula 3]
[0041]
[0042] By normalizing, it is possible to prevent the situation where only one node is divided and make the weights of the two groups equal. The number of divisions c is set from 1 to n / 2 (n / 2-1 when n is an odd number), and the normalized minimum value E is calculated in each case. norm . From the normalized minimum value E norm Select the minimum value among them, and select the number of divisions c with which the minimum value is obtained.
[0043] For example, Figure 4A and Figure 4B As shown, when the number of divisions c = 1, by dividing the node into node 2 and nodes 1, 3, 4, 5, 6, 7 and 8, the minimum value of the total E = 19 is obtained, and the normalized minimum value E is calculated. norm =1.35. In the case of the number of divisions c=2, by dividing the node into nodes 1 and 7 and nodes 2, 3, 4, 5, 6 and 8, the minimum value of the sum E=20 is obtained, and the normalized minimum value E is calculated. norm =1.24. In the case of the number of divisions c=3, by dividing the node into nodes 2, 3 and 8 and nodes 1, 4, 5, 6 and 7, the minimum value of the sum E=23 is obtained, and the normalized minimum value E is calculated. norm =1.25. In the case of the number of divisions c=4, by dividing the node into nodes 1, 5, 6 and 7 and nodes 2, 3, 4 and 8, the minimum value of the sum E=22 is obtained, and the normalized minimum value E is calculated. norm =1.17. When the number of divisions c=4, the normalized minimum value E norm is minimized, so the division for obtaining the minimum value of the sum E in the case where the number of divisions c=4 is the solution.
[0044] Next, hierarchical clustering will be described. Hierarchical clustering refers to partitioning nodes into hierarchical groups by repeating the calculation of the minimum cut problem or the maximum cut problem described above. When the weight of the edge is assumed to be the similarity between nodes, a phylogenetic tree can be constructed by repeating the normalized partitioning hierarchically. For example, Figure 5 As shown, the first partition is performed by performing a normalized partition once. The second partition is performed by further performing a normalized partition on each partitioned group. By repeating this, similarity-based clustering is performed to obtain a phylogenetic tree.
[0045] The minimum cut problem and the calculation of the minimum cut problem with a specified number of partitions as described above can be solved by optimization such as digital annealing or meta-heuristic methods. However, since these optimization methods are implemented through convergence calculations, such as Figure 6As shown, it takes a long time to obtain a solution. In particular, if the number of nodes is large, it takes a long time to obtain a solution. In addition, if the number of nodes is larger, there is a problem that the number of calculations increases and the number of divisions c increases.
[0046] Therefore, in the following embodiments, the method for obtaining the solution can be shortened. Required Example of time.
[0047] [Implementation Method]
[0048] First, the principle of the present embodiment will be described.
[0049] (Process 1)
[0050] First, the minimum cut problem is calculated without specifying the number of partitions c. According to each calculation result, the sum E is sorted in ascending order and the first M (< number of nodes n) sum E are saved. Figure 7 : is a figure which shows the list which registered M total sums E. In the list, the number of divisions when obtaining M total sums E is stored. For example, the number of divisions c when obtaining total sum E=20 is three.
[0051] (Process 2)
[0052] Next, according to the calculation result of process 1, the minimum value for each division number is obtained from the M sums E. For example, in the case of division number c=2, the minimum value is 25, in the case of division number c=3, the minimum value is 20, and in the case of division number c=4, the minimum value is 21.
[0053] (Process 3)
[0054] For the number of divisions that cannot be obtained, the minimum cut problem for the specified number of divisions is calculated. Thus, the minimum value of the sum E for all the numbers of divisions (c=1 to n / 2) is collected.
[0055] (Process 4)
[0056] For each number of divisions (c=1 to n / 2), the normalized minimum value E is calculated from the minimum value of each sum E norm , and select the minimum number of partitions c from them.
[0057] Here, the minimum value of the sum E as many as the specific number of divisions is not obtained by process 1, and a mechanism for obtaining the minimum value of the sum E for multiple numbers of divisions will be described. A metaheuristic method or the like is applied to the calculation of the minimum cut problem, and the transformation of the solution x is as follows Figure 8As shown. When the number of nodes is n, the solution x is represented by n{0,1} variables, and this means division into groups of zero nodes and groups of one node. In the calculation for repeated search for the minimum value, the value of each variable of the immediately previous solution is reversed (0 is changed to 1, and 1 is changed to 0), and the minimum sum E is selected. As Figure 8 As shown, the number of divisions is not fixed, and the minimum value of the sum E for multiple division numbers is obtained.
[0058] Fig.9A 1 is a block diagram showing the overall configuration of the information processing apparatus 100 according to the present embodiment. Fig.9A As shown, the information processing device 100 includes a data storage unit 10, a list storage unit 20, an operation unit 30, an output unit 40, and the like.
[0059] Fig. 9B is a block diagram showing the hardware configuration of the information processing apparatus 100. Fig. 9B As shown, the information processing device 100 includes a central processing unit (CPU) 101, a random access memory (RAM) 102, a storage device 103, an input device 104, a display device 105, and the like.
[0060] A central processing unit (CPU) 101 is a central processing device. The CPU 101 includes one or more cores. A random access memory (RAM) 102 is a volatile memory that temporarily stores a program to be executed by the CPU 101, data to be processed by the CPU 101, and the like. A storage device 103 is a nonvolatile storage device. As the storage device 103, for example, a read-only memory (ROM), a solid-state drive (SSD) such as a flash memory, a hard disk to be driven by a hard disk drive, and the like can be used. The storage device 103 stores an operation program. An input device 104 is an input device such as a keyboard or a mouse. A display device 105 is a display device such as a liquid crystal display (LCD). By executing the operation program by the CPU 101, a data storage unit 10, a list storage unit 20, an operation unit 30, an output unit 40, and the like are realized. Note that hardware such as a dedicated circuit can be used as the data storage unit 10, the list storage unit 20, the operation unit 30, the output unit 40, and the like.
[0061] Fig. 10A 1 is a flowchart showing an example of the operation in the case where the information processing apparatus 100 performs the process 1. Fig. 10A As shown, the operation unit 30 obtains the question data stored in the data storage unit 10 (step S1). The question data includes Figure 2 A graph with multiple nodes as shown in . Weights are set for each edge.
[0062] Next, the operation unit 30 creates a list L1 for storing the minimum value of the sum E and the number of divisions c when the minimum value is obtained, and stores the list L1 in the list storage unit 20 (step S2). Note that M calculation results are registered in the list L1. The user or the like sets the numerical value of M in advance. Fig. 10B : is a diagram showing the list L1.
[0063] Next, the operation unit 30 calculates the minimum cut problem in the case where the number of divisions c is not specified for the problem data acquired in step S1 (step S3 ).
[0064] Next, the operation unit 30 sorts the sum E in ascending order according to the calculation result in step S3, and registers the first M minimum values and the division number c when the minimum value is obtained in the list L1 (step S4). By executing the above process, process 1 is completed.
[0065] Subsequently, the information processing device 100 performs process 2. Fig.11A 2 is a flowchart showing an example of the operation in the case where the information processing apparatus 100 performs the process 2. Fig.11A As shown, the operation unit 30 creates a list L2 for storing minimum values of the sum E for each division number c and performs initialization (step S11). In the list L2, n / 2 (=n2) calculation results up to half the number of nodes n are registered. Fig. 11B is a diagram showing the list L2.
[0066] Then, the operation unit 30 sets the variable i=1 (step S12).
[0067] Next, for the i-th division number c in the list L1 , the operation unit 30 determines whether a calculation result has been registered in the list L2 (step S13 ).
[0068] In the case of a “NO” determination in step S13 , the operation unit 30 registers the minimum value for the number of divisions c in the list L2 (step S14 ).
[0069] Next, the operation unit 30 sets i=i+1 (step S15 ). In the case of “YES” determination in step S13 , step S15 is executed.
[0070] Next, the operation unit 30 determines whether i exceeds M (step S16). In the case of "NO" determination in step S16, step S13 is executed again. As described above, by executing process 2, the calculation results registered in list L1 are registered in list L2.
[0071] In a case where the determination is “YES” in step S16 , the information processing apparatus 100 executes Process 3 . Fig.123 is a flowchart showing an example of the operation in the case where the information processing apparatus 100 performs the process 3. Fig.12 As shown, the operation unit 30 sets the division number c to 1 (step S21).
[0072] Next, the operation unit 30 determines whether the minimum value of the total E for the division number c has been registered in the list L2 (step S22 ).
[0073] In the case of a “NO” determination in step S22 , the operation unit 30 calculates the minimum cut problem for which the number of divisions c is specified for the problem data acquired in step S1 , and calculates the minimum value of the sum E (step S23 ).
[0074] Next, the arithmetic unit 30 registers the minimum value of the sum E calculated in step S23 in the list L2 (step S24 ).
[0075] Next, the operation unit 30 sets the division number c to c+1 (step S25 ). In the case of “YES” determination in step S22 , step S25 is executed.
[0076] Next, the operation unit 30 determines whether the number of divisions c exceeds n2 (step S26). In the case of "No" in step S26, step S22 and subsequent steps are performed again. By executing process 3, for the number of divisions c not registered in list L1, the minimum cut problem for which the number of divisions is specified is calculated and registered in list L2.
[0077] In a case where the determination is “YES” in step S26 , the information processing apparatus 100 executes Process 4 . Fig.13A 4 is a flowchart showing an example of the operation in the case where the information processing apparatus 100 performs the process 4. Fig.13A As shown, the operation unit 30 normalizes the minimum value of the sum E of each partition number in the list L2 and calculates the normalized minimum value E norm , and stores the normalized minimum value in list L3 (step S31). Fig. 13B It is a diagram showing the list L3.
[0078] Next, the output unit 40 selects the normalized minimum value E from the list L3. norm The minimum value is selected and the division number c of the minimum value is output (step S32).
[0079] Fig.14is a flowchart showing the processing according to the comparative example. This processing is performed instead of processing 1 to 3. First, problem data is acquired (step S41). A list L2 is created for storing the minimum value of the sum E for each number of divisions (step S42). Next, the number of divisions c is set to one, and n2 is set to n / 2 (step S43). Next, the minimum cut problem for which the number of divisions c is specified is calculated, and the minimum value of the sum E is calculated (step S44). Next, the minimum value of the sum E for the number of divisions c is registered in the list L2 (step S45). Next, the number of divisions c is set to c+1 (step S46). Next, it is determined whether the number of divisions c exceeds n2 (step S47). In the case where it is determined to be "no" in step S47, step S42 and subsequent steps are performed again. In the case where it is determined to be "yes" in step S47, process 4 is performed.
[0080] In this way, in the comparative example, the number of divisions c is set from 1 to n / 2, and the minimum cut problem with the specified number of divisions is calculated. The minimum value calculated in each calculation is stored in the list L2, the normalized minimum value is calculated based on each minimum value, and the number of divisions that minimizes the normalized minimum value is selected. In the comparative example, when the minimum cut problem with the specified number of divisions is calculated, the number of calculation targets is large. Therefore, the calculation takes a long time.
[0081] On the other hand, according to the present embodiment, when the minimum cut problem is calculated when the number of partitions c is specified, the calculation target is limited. Therefore, the number of calculations of the minimum cut problem with the specified number of partitions c can be reduced, and the calculation time of the normalized partition calculation can be reduced. For example, when the number of nodes n is set to 50 and the calculation time of the minimum cut problem with the specified number of partitions is one minute, in the comparative example, 25 times (=50 / 2)=25 are required. However, in the present embodiment, even if the first calculation of the minimum cut problem takes one minute, assuming that half of the number of partitions can be obtained, the remaining 13 calculations of the minimum cut problem with the specified number of partitions take 13 minutes, and a total calculation time of 15 minutes is sufficient.
[0082] Note that the above mainly describes the minimum cut problem. However, the present embodiment can be applied to the maximum cut problem. In this case, it is sufficient to change the process 1 to the process 4 as follows.
[0083] (Process 1)
[0084] First, calculate the maximum cut problem without specifying the number of partitions c. According to each calculation result, sort the sums E in descending order and save the first M (< number of nodes n) sums E. In the list, save the number of partitions when M sums E are obtained.
[0085] (Process 2)
[0086] Next, based on the calculation result of process 1, the maximum value for each division number is obtained from the M totals E.
[0087] (Process 3)
[0088] For the number of divisions that cannot be obtained, the maximum cut problem for the specified number of divisions is calculated. Thus, the maximum value of the sum E for all the numbers of divisions (c=1 to n / 2) is collected.
[0089] (Process 4)
[0090] For each number of divisions (c=1 to n / 2), the normalized maximum value E is calculated from the maximum value of each sum E norm , and select the maximum number of partitions c from them.
[0091] In addition to the minimum and maximum values of each sum E, cut problems that satisfy other conditions can also be calculated.
[0092] Note that the above nodes and edges are not particularly limited. However, for example, each node represents a gene sequence. The weight of the edge represents the degree of relevance such as the similarity or degree of deviation of the gene sequence. Therefore, searching for the minimum value of the sum E means cutting nodes with small similarity, while searching for the maximum value of the sum E means cutting nodes with large similarity.
[0093] In addition, the calculation method for calculating the minimum cut problem or calculating the maximum cut problem is not particularly limited. However, for example, a binary variable sampling technique may be used. As the binary variable sampling technique, a sampling technique for randomly performing sampling, a sampling technique using an Ising model in a QUBO format, and the like are exemplified.
[0094] Here, the QUBO format is a quadratic unconstrained binary optimization, which is a format in which binary optimization can be performed without secondary constraints. The QUBO format can be expressed as the following formula, for example. Note that when x i =0 or 1 (i=1, ..., N), the parameter W ij Represents x i and x j The coupling coefficient of i Represents x i The first term on the right side is a quadratic term and represents an interaction. The second term on the right side is a principal term and represents a bias effect. The third term on the right side is a constant term. In QUBO format, Fig.15 As shown, according to the following formula, search for a solution x that minimizes E(x) representing energy.
[0095] [Mathematical formula 4]
[0096]
[0097] Although the embodiments have been described in detail above, the embodiments are not limited to such specific embodiments, and various modifications and changes may be made within the scope of the embodiments disclosed in the claims.
Claims
1. A non-transitory computer-readable recording medium storing an operation program for performing a cutting problem calculation for a calculation target, the calculation target comprising a plurality of nodes and a plurality of edges, each of the plurality of nodes being coupled to at least any one of the other nodes using the edges of the plurality of nodes, each of the plurality of edges being provided with a corresponding weight value, the cutting problem calculation comprising calculating a total value of weight values of edges that are cut when the plurality of nodes included in the calculation target are divided into two groups, the operation program being a program for causing a computer to perform a process, the process comprising: The following first process is performed: the cutting problem calculation is performed without specifying a division number, and a calculation result in which the total value of the weight value satisfies a first condition is specified from among the obtained calculation results, wherein the division number is the number of nodes belonging to the two divided groups; executing the following second processing: specifying a calculation result satisfying a second condition for each number of divisions based on the calculation result specified in the first processing; The following third process is performed: for each number of divisions that cannot be specified in the second process, a calculation of a cutting problem in which the number of divisions is specified is performed, and a calculation result in which the total value of the weight value satisfies a third condition is specified for each number of divisions; as well as A fourth process is performed in which a normalized value obtained by normalizing the total value of the weight values specified in the second process and the third process by a predetermined function is calculated for each division number, and a division number satisfying a fourth condition is acquired from the normalized value.
2. The non-transitory computer-readable recording medium according to claim 1, wherein In the first process, a predetermined number of previous calculation results that minimize the total value of the weight values are specified from among the obtained calculation results, In the second process, based on the calculation result specified in the first process, a calculation result that minimizes the total value of the weight value is specified for each number of divisions, In the third process, for each number of divisions that cannot be specified in the second process, a calculation of a cutting problem in which the number of divisions is specified is performed, and a calculation result that minimizes the total value of the weight values is specified for each number of divisions, and In the fourth process, for the total value of the weight values specified in the second process and the third process, a normalized value normalized by the predetermined function is calculated, and for each division number, the division number with the smallest value is obtained from the normalized value.
3. The non-transitory computer-readable recording medium according to claim 1, wherein: In the first process, a predetermined number of preceding calculation results which maximize the total value of the weight values are specified from among the obtained calculation results, In the second process, based on the calculation result specified in the first process, a calculation result that maximizes the total value of the weight value is specified for each number of divisions, In the third process, for each number of divisions that cannot be obtained in the second process, a cutting problem calculation in which the number of divisions is specified is performed, and a calculation result that maximizes the total value of the weight value is specified for each number of divisions, and In the fourth process, for the total value of the weight values specified in the second process and the third process, a normalized value normalized by the predetermined function is calculated, and for each division number, the division number with the largest value is obtained from the normalized value.
4. The non-transitory computer-readable recording medium according to claim 1, wherein: The predetermined function is a function for calculating the sum of the following values: a value obtained by dividing the total value of the weight values by the sum of the sum of the sum of the edges in one divided group and the sum of the weights of the cut edges, and a value obtained by dividing the total value of the weight values by the sum of the sum of the sum of the edges in another divided group and the sum of the weights of the cut edges.
5. The non-transitory computer-readable recording medium according to claim 1, wherein: The nodes are gene sequences, and The weight value of the edge is the correlation between the gene sequences.
6. A method implemented by a computer for performing a cutting problem calculation on a calculation target, the calculation target comprising a plurality of nodes and a plurality of edges, each of the plurality of nodes being coupled to at least any one of the other nodes using the edges of the plurality of nodes, each of the plurality of edges being provided with a corresponding weight value, the cutting problem calculation comprising calculating the total value of the weight values of the edges that are cut when the plurality of nodes included in the calculation target are divided into two groups, the method comprising: The processor circuit of the computer performs the following first processing: performing the cutting problem calculation without specifying the number of divisions, and specifying the calculation result in which the total value of the weight value satisfies the first condition from the obtained calculation results, wherein the number of divisions is the number of nodes belonging to the two divided groups; The processor circuit of the computer executes the following second processing: specifying a calculation result satisfying a second condition for each number of divisions based on the calculation result specified in the first processing; The following third processing is performed by a processor circuit of the computer: for each number of divisions that cannot be specified in the second processing, a calculation of a cutting problem in which the number of divisions is specified is performed, and a calculation result in which the total value of the weight values satisfies a third condition is specified for each number of divisions; and The following fourth processing is performed by the processor circuit of the computer: for each division number, a normalized value obtained by normalizing the total value of the weight values specified in the second processing and the third processing by a predetermined function is calculated, and the division number that satisfies the fourth condition is obtained from the normalized value.
7. An information processing device for performing a cutting problem calculation for a calculation target, the calculation target comprising a plurality of nodes and a plurality of edges, each of the plurality of nodes being coupled to at least any one of the other nodes using the edges of the plurality of nodes, each of the plurality of edges being provided with a corresponding weight value, the cutting problem calculation comprising calculating a total value of weight values of edges that are cut when the plurality of nodes included in the calculation target are divided into two groups, the information processing device comprising a computing unit configured to perform a process, the process comprising: The first process is as follows: performing the cutting problem calculation without specifying a division number, and specifying a calculation result in which the total value of the weight value satisfies a first condition from among the obtained calculation results, wherein the division number is the number of nodes belonging to the two divided groups; The following second process: based on the calculation result specified in the first process, specifying a calculation result satisfying a second condition for each number of divisions; The following third process: for each number of divisions that cannot be specified in the second process, performing a calculation of a cutting problem in which the number of divisions is specified, and specifying a calculation result in which the total value of the weight value satisfies a third condition for each number of divisions; as well as The following fourth process: calculating a normalized value obtained by normalizing the total value of the weight values specified in the second process and the third process by a predetermined function for each division number, and obtaining a division number that satisfies a fourth condition from the normalized value.