Input data creation device for traveling salesman problem, input data creation method for traveling salesman problem and input data creation program for traveling salesman problem

By calculating and ranking travel bases on distance and priority, and clustering them efficiently, the device creates optimal input data for the traveling salesman problem, reducing optimization time and improving solution efficiency.

JP2025144174AActive Publication Date: 2025-10-02HITACHI INDUSTRY & CONTROL SOLUTIONS LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024043830
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-19
Publication Date
2025-10-02
Estimated Expiration
2044-03-19

AI Technical Summary

Technical Problem

Optimization processes for the traveling salesman problem become excessively long due to considering low-importance base stations, and existing methods of dividing destinations into grids are unclear in their appropriateness for solving the problem efficiently.

Method used

A device and method that calculates scores for travel bases based on distance and priority, ranks them, extracts top-ranked bases, clusters them using k-means with fewer groups than ranks, and evaluates these clusters using an evaluation function to create optimal input data for the problem.

Benefits of technology

This approach significantly reduces optimization execution time by focusing on high-importance bases, allowing for rapid calculation of optimal solutions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025144174000001_ABST
    Figure 2025144174000001_ABST
Patent Text Reader

Abstract

To acquire an optimal solution of a traveling salesman problem in a short time.SOLUTION: An input data creation device 1 for traveling salesman problems includes: a score calculation unit 11 for calculating a score of each of a plurality of traveling bases taking into account of a distance between each of the traveling bases and a starting point and order of priority of each of the traveling bases; a ranking unit 12 for ranking each of the traveling bases according to scores calculated by the score calculation unit 11; a clustering unit 13 for extracting one traveling base from the top ranks among the ranks assigned by the ranking unit 12 and clustering using the extracted base as an initial value with the number of groups smaller than the number of groups ranked by the ranking unit; and an input data creation unit 14 for evaluating top groups of a plurality of clustering results of the clustering unit 13 using an evaluation function and defining the top group having the highest evaluation value calculated by the evaluation function as input data of the traveling salesman problem.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 input data creation device for a traveling salesman problem, an input data creation method for a traveling salesman problem, and an input data creation program for a traveling salesman problem. [Background technology]

[0002] In a mathematical optimization model development project based on the traveling salesman problem, as the number of locations to be visited, given as input data for the optimization process, increases, the number of combinations of visits to be considered as the optimal solution also becomes enormous, resulting in a long optimization execution time, which is a common occurrence in optimization projects.

[0003] Patent Document 1 describes an invention in which all observation destinations on a map are divided into multiple grids as needed, and constraints such as the estimated difficulty of various buildings, including wooden and steel-framed buildings, are formulated. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] International Publication No. 2023 / 058244 Summary of the Invention [Problem to be solved by the invention]

[0005] One of the reasons why optimization takes so long is that the optimization process considers each and every one of the base stations that are clearly unlikely to be selected as the optimal route, in other words, base stations with low importance, to determine whether they are suitable for the optimal route.If such base stations with low importance could be excluded in advance from the input data for the optimization process, it would be possible to shorten the optimization execution time. In the invention described in Patent Document 1, destinations are divided into multiple grids and the destinations are clustered for each grid. However, since it is unclear whether the grids are appropriate, it is unclear whether the traveling salesman problem can be solved appropriately.

[0006] For example, consider the optimal route from Tokyo to Fukuoka. The route Tokyo ⇒ Nagoya ⇒ Osaka is the route with the shortest travel distance and is appropriate as the optimal solution. However, in the optimization process, the route Tokyo ⇒ Niigata ⇒ Sendai also exists as a combination. The route Tokyo ⇒ Niigata ⇒ Sendai is unlikely to be the optimal solution, but it takes time to consider it as the optimal solution.

[0007] Therefore, when considering the optimal route from Tokyo to Fukuoka, it is sufficient to consider Tokyo → Nagoya → Osaka → Kobe → Hiroshima → Fukuoka and combinations within the group of Kyoto, Tokushima, and Matsuyama. Therefore, an object of the present invention is to obtain an optimal solution to the traveling salesman problem in a short time. [Means for solving the problem]

[0008] In order to solve the above-mentioned problems, the input data creation device for the traveling salesman problem of the present invention is characterized by comprising: a score calculation unit that calculates a score for each of a plurality of travel bases that are targets in the traveling salesman problem, taking into consideration the distance between the travel base and a starting point and the priority of each of the travel bases; a ranking unit that ranks each of the travel bases according to the score calculated by the score calculation unit; a clustering unit that extracts a travel base that has received a single point from the top ranks assigned by the ranking unit, and clusters the extracted base using the extracted base as an initial value to create fewer groups than the number ranked by the ranking unit; and an input data creation unit that evaluates the top groups of the multiple clustering results of the clustering unit using an evaluation function, and uses the top group with the highest evaluation value calculated by the evaluation function as input data for the traveling salesman problem.

[0009] The method for creating input data for the traveling salesman problem of the present invention is characterized by comprising the steps of: calculating a score for each of a plurality of travel bases that are the subject of the traveling salesman problem, taking into consideration the distance between each of the travel bases and a starting point, and the priority of each of the travel bases; ranking each of the travel bases according to the calculated score; extracting a travel base with a single point from the top ranks assigned to the travel bases, and clustering the extracted bases using an initial value as the number of groups less than the number of ranks; and evaluating the top groups of the clustering results obtained by clustering each of a plurality of travel bases using an evaluation function, and using the top group with the highest evaluation value calculated by the evaluation function as input data for the traveling salesman problem.

[0010] The input data creation program for the traveling salesman problem of the present invention causes a computer to execute the following steps: for each of a plurality of travel bases that are the subject of the traveling salesman problem, calculating a score taking into consideration the distance between the travel base and a starting point and the priority of the travel base; ranking each of the travel bases using the calculated score; extracting a travel base with a single point from the top ranks assigned to the travel bases, and clustering the extracted bases into a number of groups fewer than the number of ranked bases using an initial value; and evaluating the top groups of the clustering results obtained by clustering a plurality of travel bases using an evaluation function, and using the top group with the highest evaluation value calculated by the evaluation function as input data for the traveling salesman problem. Other means will be described in the detailed description of the invention. [Effects of the Invention]

[0011] According to the present invention, it is possible to obtain an optimal solution to the traveling salesman problem in a short time. [Brief explanation of the drawings]

[0012] [Figure 1] 1 is a configuration diagram of an input data creation device for a traveling salesman problem according to an embodiment of the present invention. [Figure 2] FIG. 2 is a hardware configuration diagram of the travel support device. [Figure 3] 10 is a flowchart of a process for creating input data for a traveling salesman problem. [Figure 4] FIG. 10 is a diagram illustrating a score calculation method that takes into account the distance from the office and the priority of the base. [Figure 5] This is a diagram showing that scores are ranked from A to C and assigned to each location. [Figure 6] FIG. 10 is a diagram showing the results of the first clustering. [Figure 7] FIG. 10 is a diagram showing the results of the second clustering. [Figure 8] FIG. 10 is a diagram showing the results of the third clustering. [Figure 9] FIG. 10 is a diagram illustrating selection of clustering results by an evaluation function. [Figure 10] 10 is a flowchart of a clustering process using the k-means method. [Figure 11] FIG. 10 is a diagram illustrating a case where the number of groups is smaller than the number of ranks. [Figure 12] FIG. 10 is a diagram illustrating a case where the number of groups is equal to the number of ranks. [Figure 13] FIG. 10 is a diagram illustrating a case where the number of groups is greater than the number of ranks. [Figure 14] FIG. 10 is a diagram showing a traveling route when the number of groups is smaller than the number of ranks. [Figure 15] FIG. 10 is a diagram showing a traveling route when the number of groups is equal to the number of ranks. [Figure 16] FIG. 10 is a diagram showing a traveling route when the number of groups is greater than the number of ranks. [Figure 17] FIG. 10 is a diagram illustrating a traveling salesman problem performed after inputting the present embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0013] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

[0014] FIG. 1 is a configuration diagram of an input data generating device 1 for a traveling salesman problem and a solution calculating device 2 for a traveling salesman problem according to this embodiment. The input data creation device 1 for the traveling salesman problem is a device that excludes in advance locations that are unlikely to be selected as an optimal solution. The input data creation device 1 for the traveling salesman problem includes a score calculation unit 11, a ranking unit 12, a clustering unit 13, and an input data creation unit 14.

[0015] The score calculation unit 11 calculates a score for each tour base taking into consideration the distance from the office and the priority of each tour base. The ranking unit 12 ranks each of the tour bases into three levels, A to C, based on the scores calculated by the score calculation unit 11. Note that the ranking unit 12 is not limited to the three levels, A to C, and may rank the bases into any level.

[0016] The clustering unit 13 extracts one point from rank A and one point from rank C based on the ranks assigned to each tour base by the ranking unit 12, and sets these as initial values ​​for k-means. Then, the clustering unit 13 sets the number of groups to be divided to 2, performs clustering processing, and saves the clustering results.

[0017] The input data creation unit 14 causes the clustering unit 13 to repeat the clustering process the number of times the number of travel bases that have been assigned rank A. Then, the input data creation unit 14 applies an evaluation function to the clustering results, extracts groups that include many bases with high importance taking into account the number of travel bases with rank A, the number of travel bases, and whether or not they have offices, and sets these as input data for the traveling salesman problem solution calculation device 2.

[0018] The traveling salesman problem solution calculation device 2 calculates a solution to the traveling salesman problem based on input data created by the input data creation unit 14. The input data created by the input data creation unit 14 excludes in advance bases that are unlikely to be selected as the optimal solution, so that the solution to the traveling salesman problem can be calculated in an optimal manner.

[0019] FIG. 2 is a hardware configuration diagram of the input data creation device 1 for the traveling salesman problem. The input data generating device 1 for the traveling salesman problem is configured to include hardware such as a CPU 15, a ROM 16, a RAM 17, an input unit 18, a communication unit 19, and a storage unit 10.

[0020] The CPU 15 is a central processing unit that controls the input data creation device 1 for the traveling salesman problem, and embodies each functional unit shown in Figure 1 by executing the input data creation program 101 for the traveling salesman problem stored in the memory unit 10 described below. The ROM 16 is a non-volatile readable memory, and stores, for example, a BIOS, etc. The RAM 17 is a volatile readable and writable memory, and is used by the CPU 15 as a temporary storage area for programs.

[0021] The input unit 18 is, for example, a keyboard, a mouse, a touch panel, etc., and is used to input information. The communication unit 19 is, for example, a NIC (Network Interface Card), and transmits and receives information to and from other devices via the Internet. The storage unit 10 is, for example, an SSD (Solid State Drive), and stores an input data generation program 101 for the traveling salesman problem and the like.

[0022] FIG. 3 is a flowchart of the input data creation process for the traveling salesman problem. First, the score calculation unit 11 calculates a score for each tour base taking into consideration the distance from the office and the priority of the base (step S10).

[0023] Then, the ranking unit 12 ranks each of the tour bases into three levels, A to C, based on the score (step S11). Next, in step S12, the input data creation unit 14 repeats the processing of steps S13 and S14 only for the travel bases of rank A.

[0024] In step S13, the clustering unit 13 extracts one base from each of rank A and rank C, and sets them as the initial value of k-means. Then, the clustering unit 13 sets the number of groups to be divided to "2" and performs clustering (step S14).

[0025] In step S15, if the input data creation unit 14 has performed clustering using all of the tour bases of rank A as initial values, the processing proceeds to step S16. If there are any unprocessed tour bases of rank A, the input data creation unit 14 returns to step S12.

[0026] In step S16, the input data creation unit 14 applies an evaluation function to the clustering results and extracts the group that contains the most important bases, taking into consideration the number of rank A bases, the number of bases to be visited, and whether or not there is an office. Rank A bases are more important to visit, and a group that contains more rank A bases to be visited is more likely to be able to calculate a more optimal route, so it has a higher evaluation value. Furthermore, the more bases included in a group, the higher the likelihood of calculating a more optimal route, and therefore the higher the evaluation value. Because the office is the starting point of the route, a group that includes an office is more likely to be able to calculate a more optimal route, and therefore the higher the evaluation value.

[0027] The traveling salesman problem solution calculation device 2 calculates a traveling salesman problem solution based on the group that includes the most important bases (step S17). When the process of step S17 ends, the process of FIG. 3 ends.

[0028] FIG. 4 is a diagram showing a score calculation method that takes into account the distance from the office and the priority of the base. The table 31 includes a column for the name of the patrol base, a column for the distance from the office, a column for the priority order, and a column for the score. The score column is calculated by the score calculation unit 11 as follows.

[0029] The input data creation device 1 for the traveling salesman problem multiplies the inverse of the distance D from the office of each travel base by a first weighting coefficient w1, as shown in equation (1), and then multiplies the inverse of the priority P by a second weighting coefficient w2 to calculate a score.

number

[0030] Here, D represents the distance from the office, w1 represents the first weighting factor, P represents the priority, and w2 represents the second weighting factor. The first weighting factor w1 and the second weighting factor w2 are predetermined.

[0031] The distance D from the office of location #1 is 3000. The first weighting coefficient w1 is 1.5. The priority level P is 2. The second weighting coefficient w2 is 1000. From this, the score of location #2 is calculated as 0.25 using equation (2).

number

[0032] Similarly, the score for location #2 is calculated as 0.3, the score for location #3 is calculated as 0.192308, and the score for location #4 is calculated as 0.1875. Furthermore, the score for location #5 is calculated as 0.46875, and the score for location #6 is calculated as 0.096154.

[0033] FIG. 5 is a diagram showing how scores are ranked from A to C and assigned to each location. The table 32 includes a column for the name of the tour base, a column for the distance from the office, a column for the priority order, a column for the score, and a column for the rank. The column for the rank is calculated by the ranking unit 12 as follows. The ranking unit 12 calculates the rank range by dividing the difference between the maximum and minimum scores by the number of ranks. Note that the office is fixed at rank A.

[0034] 5, the maximum score is 0.46875, the minimum score is 0.096154, and the difference between them is 0.372596. Dividing this by the number of ranks, 3, gives a rank range of 0.124199.

[0035] If the base's score is greater than or equal to 0.096154 and less than 0.220353, it will be given a rank of C. If the base's score is greater than or equal to 0.220353 and less than 0.344551, it will be given a rank of B. If the base's score is greater than or equal to 0.344551 and less than or equal to 0.46875, it will be given a rank of A. Then, the locations of bases from rank A and rank C are set as the initial values ​​for k-means, and clustering is performed.

[0036] FIG. 6 is a diagram showing the results of the first clustering. The first clustering result 41 is divided into two groups: a top group 411 and a bottom group 412. The top group 411 includes five patrol bases, two of which are ranked A. The top group 411 does not include the office, which is the starting point.

[0037] FIG. 7 is a diagram showing the results of the second clustering. The clustering result 42 is divided into two groups: an upper group 421 and a lower group 422. The upper group 421 includes six patrol bases, two of which are ranked A. The upper group 421 includes the office, which is the starting point.

[0038] FIG. 8 is a diagram showing the results of the third clustering. The clustering result 43 is divided into two groups: an upper group 431 and a lower group 432. The upper group 431 includes nine patrol bases, of which three are ranked A. The upper group 431 includes the office, which is the starting point.

[0039] FIG. 9 is a diagram showing the selection of clustering results by the evaluation function. Table 51 shows the clustering results, and includes a column for the number of visits, a column for the number of visited locations, a column for the number of rank A locations, and a column for whether or not there is an office.

[0040] The input data creation unit 14 applies the evaluation function shown in equation (3) to the rank A group of each clustering result, and selects a clustering result that takes into consideration the number of patrol locations, the number of rank A locations, and whether or not there is an office.

number

[0041] Here, E is the evaluation value. L is the number of patrol locations included in the top group. M is the number of locations ranked A. S indicates whether or not there is an office, being 1 if there is an office and 0 if there is no office. w3 is the third weighting coefficient. w4 is the fourth weighting coefficient. w5 is the fifth weighting coefficient. Here, the weighting relationship is such that the fourth weighting coefficient is the largest, followed by the fifth weighting coefficient, and the third weighting coefficient is the smallest. In other words, the number of locations ranked A is the most prioritized evaluation value.

[0042] Equation (4) is an equation for calculating the evaluation value E1 of the first clustering result 41.

number

[0043] Equation (5) is an equation for calculating the evaluation value E2 of the second clustering result 42.

number

[0044] Equation (6) is an equation for calculating the evaluation value E3 of the third clustering result 43.

number

[0045] From the above equations (4) to (6), it can be seen that the evaluation value E3 of the third clustering result 43 is the highest, and therefore it is the most appropriate as input data. Therefore, the third clustering result 43 is adopted as input data to the traveling salesman problem solution calculation device 2.

[0046] FIG. 10 is a flowchart of the clustering process using the k-means method. The k-means method is a method for dividing multiple data sets into K groups (clusters). The k-means method is a clustering process using unsupervised learning, and classifies and discriminates similar data sets into a single group.

[0047] The number of groups to be classified and identified in the clustering process is set in advance as a parameter. A method for a computer to cluster multiple pieces of data that are mapped in multiple dimensions will be described below. First, the computer determines the number of groups and randomly determines the centers of gravity (step S20).

[0048] In step S21, the computer calculates the distance from the center of gravity for each data point and divides the data into groups. Then, the computer recalculates the center of gravity of the group (step S22), and then determines whether the center of gravity has changed (step S23). If the center of gravity has changed (Yes), the process returns to step S21. If the center of gravity has not changed (No), the process ends.

[0049] About clustering methods Clustering is a type of machine learning, and is a method of grouping data based on the similarity between the data.

[0050] Clustering methods other than the k-means method are shown below. Ward's method and the averaging method are hard clustering methods that allow data to be classified into only one category, and are also hierarchical clustering methods. Hierarchical clustering is a method of classifying data by grouping similar data together in order and dividing them into gradually larger groups.

[0051] Ward's method assumes that all individual data initially belong to different groups. At that point, the two groups with the closest distance (sum of squared deviations) are selected and combined into one group, and this process is repeated to form a larger group.

[0052] The k-means and DBSCAN methods are hard clustering methods and non-hierarchical clustering methods. Non-hierarchical clustering is a method that divides elements into a predetermined number of groups, and is capable of high-speed processing.

[0053] The pLSI method and the Fuzzy c-means method are soft clustering methods that allow for cases where there are two or more ways to classify data, and are non-hierarchical clustering methods. The Fuzzy c-means method is a clustering method that uses almost the same concept as the k-means method. The Fuzzy c-Means method clusters by calculating the membership to which each group belongs in order of proximity to each of the k central points.

[0054] In this embodiment, the clustering method may be any of the above methods and is not limited thereto.

[0055] FIG. 11 is a diagram showing a case where the number of groups is smaller than the number of ranks. The clustering result 61 has two groups and three ranks. Since the number of groups is two, the tour locations are divided into two groups and clustered as shown in Figure 11. The top group 611, which is the result of the k-means method, includes 4 rank A bases, 46 patrol bases, and an office.

[0056] FIG. 12 is a diagram showing a case where the number of groups is equal to the number of ranks. The clustering result 62 has 3 groups and 3 ranks. Because the number of groups is 3, the tour bases are divided into 3 groups and clustered as shown below. The top group 621, which is the result of the k-means method, has 4 rank A bases, 33 patrol bases, and includes an office.

[0057] FIG. 13 is a diagram showing a case where the number of groups is greater than the number of ranks. The clustering result 63 has 4 groups and 3 ranks. Since the number of groups is 4, the tour bases are divided into 4 groups and clustered. The top group 631, which is the result of the k-means method, has three rank A bases, 23 patrol bases, and includes an office.

[0058] FIG. 14 is a diagram showing a traveling route when the number of groups is smaller than the number of ranks. This shows the route found when the number of groups is 2 and the number of ranks is 3. When all tour locations are used as input and a solution is found for a route with 12 tour locations, the execution time on a given computer is approximately 9 minutes. In contrast, when the optimal route is found using only the top groups as input and a solution is found for a route with 12 tour locations, the execution time on the same computer is approximately 5 seconds.

[0059] FIG. 15 is a diagram showing a traveling route when the number of groups is equal to the number of ranks. This shows the route found when there are three groups and three ranks. When all tour locations were input and a solution was found for a route with 12 tour locations, the execution time on a given computer was approximately 9 minutes. In contrast, when only the top groups were input and the optimal route was found and a solution was found for a route with 12 tour locations, the execution time on the same computer was approximately 2 seconds.

[0060] FIG. 16 is a diagram showing a traveling route when the number of groups is greater than the number of ranks. This shows the route found when the number of groups is 4 and the number of ranks is 3. When all tour locations are input and a solution is found for a tour with 12 tour locations, the execution time on a given computer is approximately 9 minutes. In contrast, when the optimal tour location is found using only the top groups as input and a solution is found for a tour with 11 tour locations, the execution time on the same computer is approximately 11 seconds.

[0061] 14 to 16, according to this embodiment, it is possible to find a solution for visiting almost the same tour points in an extremely short time, compared to the conventional method of inputting all tour points.

[0062] FIG. 17 is a diagram showing the traveling salesman problem executed after inputting this embodiment. The objective of the traveling salesman problem is to plan the optimal visiting order, which means visiting as many locations as possible in one visit, i.e., maximizing the number of visits.

[0063] Here, the detailed conditions for traveling are defined below. The following conditions for traveling are orthodox conditions for the traveling salesman problem. There are 100 bases in the area. The 100 locations include offices and landfills. - Performed by one worker. Depart from the office, visit each location, and then head to the disposal site. Once you leave the office, you cannot return. The disposal site is always the last stop on the tour. The tour ends when the site is reached. The maximum patrol time is 8 hours (daily operating time). Upon arrival at each location, an inspection is carried out, which takes a uniform 30 minutes. Travel time between each location varies depending on the location of the location. The total travel time and working time must be kept within 8 hours (within the working hours of one day). You can only visit one base once. - You cannot return to your previous base. In other words, after patrolling from base A to base B, you cannot return to base A and move to base C. Figure 17 visualizes the solution to the traveling salesman problem calculated under these travel conditions.

[0064] The configuration and effects of the present invention will be described below.

[0065] [1] a score calculation unit (11) that calculates a score for a plurality of target travel bases in the traveling salesman problem, taking into consideration the distance between each of the travel bases and the starting point, and the priority of each of the travel bases; a ranking unit (12) that ranks each of the tour bases according to the score calculated by the score calculation unit (11); a clustering unit (13) that extracts one of the top ranked tour locations from among the rankings assigned by the ranking unit (12) and performs clustering using the extracted location as an initial value with a number of groups that is smaller than the number of rankings assigned by the ranking unit; an input data creation unit (14) that evaluates the top groups of the clustering results of the clustering unit (13) using an evaluation function and sets the top group with the highest evaluation value calculated by the evaluation function as input data for the traveling salesman problem; 1. An input data creation device for a traveling salesman problem, comprising:

[0066] This allows us to obtain an optimal solution to the traveling salesman problem in a short time.

[0067] [2] The clustering unit (13) clusters a plurality of travel points using a k-means method. 2. The input data generating device for a traveling salesman problem according to claim 1.

[0068] This allows multiple tour locations to be clustered in a short amount of time.

[0069] [3] the input data creation unit (14) evaluates a group including a greater number of highest-ranked tour locations more highly in the evaluation function. 2. The input data generating device for a traveling salesman problem according to claim 1.

[0070] This allows a group containing many of the highest ranked tour locations to be selected as input data, making it possible to obtain a more optimal tour route by solving the traveling salesman problem.

[0071] [4] the input data creation unit (14) evaluates a group including a larger number of travel bases higher in the evaluation function. 2. The input data generating device for a traveling salesman problem according to claim 1.

[0072] This allows a group containing a greater number of nearby travel bases to be selected as input data, making it possible to obtain a more optimal travel route by solving the traveling salesman problem.

[0073] [5] the input data creation unit (14) evaluates a group including a starting point more highly in the evaluation function. 2. The input data generating device for a traveling salesman problem according to claim 1.

[0074] This allows a group including the starting point to be selected as input data, making it possible to obtain a more suitable travel route by solving the traveling salesman problem.

[0075] [6] a step of calculating a score for a plurality of target travel bases in the traveling salesman problem, taking into consideration the distance from each of the travel bases to the starting point and the priority of each of the travel bases; a step of ranking each of the tour locations according to the calculated score; A step of extracting a tour location with one highest rank from the ranks assigned to the tour locations, and clustering the extracted tour location with a number of groups that is smaller than the number of rankings assigned as an initial value; a step of evaluating top groups of a plurality of clustering results obtained by clustering each of a plurality of travel locations using an evaluation function, and setting the top group with the highest evaluation value calculated by the evaluation function as input data for the traveling salesman problem; 1. A method for creating input data for a traveling salesman problem, comprising:

[0076] This allows us to obtain an optimal solution to the traveling salesman problem in a short time.

[0077] [7] On the computer (1), a step of calculating a score for a plurality of target travel bases in the traveling salesman problem, taking into consideration the distance from each of the travel bases to the starting point and the priority of each of the travel bases; a step of ranking each of the tour locations according to the calculated score; a step of extracting one of the top ranked tour locations from among the ranks assigned to the tour locations, and clustering the extracted tour locations as an initial value with a number of groups that is less than the number of rankings; a step of evaluating the top groups of a plurality of clustering results obtained by clustering the plurality of travel locations using an evaluation function, and using the top group having the highest evaluation value calculated by the evaluation function as input data for the traveling salesman problem; A program for creating input data for the traveling salesman problem.

[0078] This allows us to obtain an optimal solution to the traveling salesman problem in a short time.

[0079] (Variation) The present invention is not limited to the above-described embodiments and includes various modifications. For example, the above-described embodiments have been described in detail to clearly explain the present invention, and are not necessarily limited to those including all of the described configurations. It is possible to replace part of the configuration of one embodiment with the configuration of another embodiment, and it is also possible to add the configuration of another embodiment to the configuration of one embodiment. Furthermore, it is also possible to add, delete, or replace part of the configuration of each embodiment with other configurations.

[0080] The above-described configurations, functions, processing units, processing means, etc. may be realized in part or in whole by hardware such as an integrated circuit. The above-described configurations, functions, etc. may be realized by software by a processor interpreting and executing a program that realizes each function. Information such as the programs, tables, and files that realize each function can be stored in a storage device such as a memory, a hard disk, or an SSD (Solid State Drive), or on a storage medium such as a flash memory card or a DVD (Digital Versatile Disk).

[0081] In each embodiment, the control lines and information lines shown are those that are considered necessary for the explanation, and not all control lines and information lines in the product are necessarily shown. In reality, it can be considered that almost all components are interconnected. [Explanation of symbols]

[0082] 1. Input data creation device for the traveling salesman problem 2. Traveling Salesman Problem Solution Calculation Device 11 Score calculation section 12 Ranking Section 13 Clustering Department 14 Input data creation section

Claims

1. a score calculation unit that calculates a score for a plurality of target travel bases in the traveling salesman problem, taking into consideration the distance between each of the travel bases and a starting point and the priority of each of the travel bases; a ranking unit that ranks each of the tour bases according to the score calculated by the score calculation unit; a clustering unit that extracts one top-ranked tour base from among the ranks assigned by the ranking unit, and performs clustering using the extracted base as an initial value with a number of groups that is smaller than the number of ranks assigned by the ranking unit; an input data creation unit that evaluates top groups of a plurality of clustering results of the clustering unit using an evaluation function and sets the top group with the highest evaluation value calculated by the evaluation function as input data for a traveling salesman problem; 1. An input data creation device for a traveling salesman problem, comprising:

2. the clustering unit clusters a plurality of travel points using a k-means method; 2. The input data generating device for a traveling salesman problem according to claim 1.

3. the input data creation unit evaluates a group including a greater number of highest-ranked tour locations more highly in the evaluation function.

2. The input data generating device for a traveling salesman problem according to claim 1.

4. the input data creation unit evaluates a group including a larger number of travel bases higher in the evaluation function.

2. The input data generating device for a traveling salesman problem according to claim 1.

5. the input data creation unit evaluates a group including a starting point more highly in the evaluation function.

2. The input data generating device for a traveling salesman problem according to claim 1.

6. a step of calculating a score for a plurality of target travel bases in the traveling salesman problem, taking into consideration the distance between each of the travel bases and the starting point, and the priority of each of the travel bases; a step of ranking each of the tour locations according to the calculated score; A step of extracting one of the top ranked tour locations from the ranks assigned to the tour locations, and clustering the extracted tour locations as an initial value with a number of groups that is less than the number of rankings; a step of evaluating top groups of a plurality of clustering results obtained by clustering each of a plurality of travel locations using an evaluation function, and setting the top group with the highest evaluation value calculated by the evaluation function as input data for the traveling salesman problem; 1. A method for creating input data for a traveling salesman problem, comprising:

7. On the computer, a step of calculating a score for a plurality of target travel bases in the traveling salesman problem, taking into consideration the distance from each of the travel bases to the starting point and the priority of each of the travel bases; a step of ranking each of the tour locations according to the calculated score; a step of extracting one of the top ranked tour locations from among the ranks assigned to the tour locations, and clustering the extracted tour location as an initial value with a number of groups that is less than the number of rankings; a step of evaluating the top groups of a plurality of clustering results obtained by clustering the plurality of travel locations using an evaluation function, and using the top group having the highest evaluation value calculated by the evaluation function as input data for the traveling salesman problem; A program for creating input data for the traveling salesman problem.

Citation Information

Patent Citations

  • Information processing device, information processing system, information processing method, and information processing program

    WO2023058244A1