Discharging method, device, medium and equipment
By symmetrically combining arrangement and iteratively distribute the rectangular monolith in the unit of the smallest external rectangle, the problem of high waste rate of monolith space in the prior art is solved, and more efficient monolith space utilization and discharging effects are achieved.
Patent Information
- Application Number
- CN202510226002.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-27
- Publication Date
- 2025-06-13
- Estimated Expiration
- 2045-02-27
AI Technical Summary
When the unit size of the existing material discharge algorithm is similar, the waste rate of whole material space is high, and the intelligent optimization algorithm is limited in large-scale improvements and has a long running time.
Using the method of using the smallest external rectangle as the discharge unit on the rectangular monolith, the optional discharge conditions of long and short sides are determined, and the central symmetric combination arrangement is performed to remove overlap, retain the results of the full horizontal or full vertical row, and optimize the discharge results by iterating the discharge and pruning modules.
The concentration of the remaining space is increased, so that the remaining space can be further discharged to the greatest extent, and the utilization rate and discharge effect of the whole material space are improved.
Smart Images

Figure CN120146286A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of nesting, and particularly to a nesting method, device, medium, and equipment. Background Art
[0002] Currently, nesting algorithms are widely used in multiple fields such as clothing and sheet metal. In the clothing field, nesting algorithms are used to optimize the use of fabric, reduce fabric waste, and lower costs. In sheet metal processing, nesting algorithms help to reasonably arrange the shapes and sizes of workpieces and maximize the utilization of materials.
[0003] Nesting algorithms can be divided into several levels: underlying geometric algorithms, nesting strategies, and optimization algorithms. The underlying geometric algorithms deal with the positional and distance relationships between polygons, while the nesting strategy determines whether the initial solution is a feasible solution or an acceptable infeasible solution, and optimizes the layout by gradually removing overlaps. The optimization algorithms further reduce material loss and may employ intelligent optimization algorithms such as simulated annealing and genetic algorithms.
[0004] Existing nesting algorithms include order-based nesting algorithms, combinatorial optimization (intelligent optimization) algorithms, greedy algorithms, and minimum arrays. Among them, the order-based nesting algorithm is based on the bottom left, equipped with parameters such as fitting degree to calculate relevant values. This algorithm is inefficient and has a high fabric waste rate. For intelligent optimization algorithms (whichever), for cases with more than a hundred parts, the improvement is very limited and it takes a relatively long time to run. The greedy algorithm has a significant effect only in large scales, but has a poor effect when there is no obvious difference in the sizes of nesting units (which can be fabric or mechanical parts, etc.). The minimum array is about the arrangement of the lattice, and can obtain an approximate optimum. The lattice is suitable for the same type of parts. For example, if there are 100 of A, 120 of B, and 30 of C, then A / B / C can be arranged into three lattices respectively and then combined into a complete layout.
[0005] In summary, when the sizes of nesting units are similar, most of the current nesting methods are based on the bottom left algorithm, plus some auxiliary means such as fitting degree evaluation, which has a certain optimization effect, but basically are simple single-lattice arrangements, resulting in a high waste rate of the whole material space. Summary of the Invention
[0006] Based on this, it is necessary to provide a nesting method, device, medium, and equipment for the above technical problems.
[0007] The present invention adopts the following technical solutions:
[0008] The present invention provides a nesting method, which nests on a rectangular whole material with the minimum circumscribed rectangle corresponding to the nesting object as the nesting unit; the method includes:
[0009] Determine the optional layout cases of arranging a number of material units in a vertical row side by side along the long side of the rectangular stock and arranging a number of material units in a horizontal row side by side, and determine the optional layout cases of arranging a number of material units in a vertical row side by side along the short side of the rectangular stock and arranging a number of material units in a horizontal row side by side;
[0010] Combine the optional layout cases of the long side with the optional layout cases of the short side, and determine the layout result on the rectangular stock for the combination result in the way of arranging the material units in a central symmetry layout, remove the layout results where the material units overlap, and retain the layout results corresponding to the combination results where the material units are arranged in a full horizontal row or a full vertical row;
[0011] Determine the number of arranged material units in the remaining layout results and the current maximum number of arranged materials, and determine the area of the remaining unarranged rectangle in the middle of the rectangular stock; According to the ratio of the area of the remaining unarranged rectangle to the area of the material unit, determine the potential maximum number of arranged materials for the remaining unarranged rectangle;
[0012] When the sum of the number of arranged material units and the potential maximum number of arranged materials in the remaining layout results is less than the current maximum number of arranged materials, prune the corresponding layout results;
[0013] Perform iterative layout on the remaining unarranged rectangles in the pruned layout results to update the layout results and the current maximum number of arranged materials until the area of the remaining unarranged rectangle is less than the area of the material unit; Take the layout result corresponding to the current maximum number of arranged materials as the final layout result.
[0014] Optionally, the determining the optional layout cases of arranging a number of material units in a vertical row side by side along the long side of the rectangular stock and arranging a number of material units in a horizontal row side by side, and determining the optional layout cases of arranging a number of material units in a vertical row side by side along the short side of the rectangular stock and arranging a number of material units in a horizontal row side by side specifically includes:
[0015] Determine the maximum number of vertical arrangements along the long side when arranging the material units in a vertical row side by side along the long side of the rectangular stock;
[0016] For each optional vertical arrangement case along the long side from zero to the maximum number of vertical arrangements along the long side, determine the maximum number of horizontal arrangements along the long side when arranging the material units in a horizontal row side by side in the remaining space along the long side of the rectangular stock, and combine this optional vertical arrangement case along the long side with the corresponding maximum number of horizontal arrangements along the long side to obtain the optional layout case of the long side corresponding to this optional vertical arrangement case along the long side;
[0017] Determine the maximum number of vertical arrangements along the short side when arranging the material units in a vertical row side by side along the short side of the rectangular stock;
[0018] For each optional short-side vertical arrangement case from zero to the maximum number of short-side vertical arrangements, determine the remaining space on the short side of the rectangular blank and the maximum number of short-side horizontal arrangements when arranging the units side by side horizontally, and combine this optional short-side vertical arrangement case with the corresponding maximum number of short-side horizontal arrangements to obtain the optional arrangement case for the short side corresponding to this optional short-side vertical arrangement case.
[0019] Optionally, iteratively arrange the remaining unarranged rectangles in the pruned nesting result to update the nesting result and the current maximum number of nested parts until the area of the remaining unarranged rectangles is less than the area of the nesting unit. Specifically, it includes:
[0020] Iteratively arrange the remaining unarranged rectangles in the pruned nesting result to update the nesting result and the current maximum number of nested parts;
[0021] When the area of the remaining unarranged rectangles is less than the area of the nesting unit, or when the sum of the number of arranged nesting units and the potential maximum number of nested parts in the remaining nesting result is less than or equal to the current maximum number of nested parts, terminate the iterative nesting.
[0022] Optionally, iteratively arranging the remaining unarranged rectangles in the pruned nesting result specifically includes:
[0023] According to the long-side nesting situation and short-side nesting situation of the pruned nesting result, form the nesting coordinates of the pruned nesting result;
[0024] Determine the reference nesting coordinates formed by the long-side nesting situation and short-side nesting situation of the nesting result corresponding to the current maximum number of nested parts;
[0025] Sort the distances between the nesting coordinates of the pruned nesting result and the reference nesting coordinates in ascending order, and select a preset number of pruned nesting results from the front to the back for iterative nesting.
[0026] The present invention provides a nesting device that nests on a rectangular blank with the minimum circumscribed rectangle corresponding to the nesting object as the nesting unit. It includes:
[0027] A side arrangement determination module for determining the optional long-side arrangement cases of arranging a plurality of nesting units side by side vertically and side by side horizontally along the long side of the rectangular blank, and determining the optional short-side arrangement cases of arranging a plurality of nesting units side by side vertically and side by side horizontally along the short side of the rectangular blank;
[0028] A combination module for combining the optional long-side arrangement cases with the optional short-side arrangement cases, determining the nesting result of the combination on the rectangular blank in a centrosymmetric arrangement of the nesting units, removing the nesting results with overlapping nesting units, and retaining the nesting results corresponding to the combination results of all-horizontal or all-vertical arrangements of the nesting units;
[0029] A fitness determination module, which is used to determine the number of arranged nesting units in the remaining nesting result and the current maximum nesting number, and determine the area of the remaining un-nested rectangle in the middle of the rectangular blank; according to the ratio of the area of the remaining un-nested rectangle to the area of the nesting unit, determine the potential maximum nesting number of the remaining un-nested rectangle;
[0030] A pruning module, which is used to prune the corresponding nesting result when the sum of the number of arranged nesting units and the potential maximum nesting number in the remaining nesting result is less than the current maximum nesting number;
[0031] An iterative nesting module, which is used to perform iterative nesting on the remaining un-nested rectangles in the pruned nesting result to update the nesting result and the current maximum nesting number until the area of the remaining un-nested rectangle is less than the area of the nesting unit; take the nesting result corresponding to the current maximum nesting number as the final nesting result.
[0032] The present invention provides a computer-readable storage medium, which stores a computer program, and when the computer program is executed by a processor, the above-mentioned nesting method is implemented.
[0033] The present invention provides a computer device, including a memory, a processor, and a computer program stored on the memory and operable on the processor, and when the processor executes the program, the above-mentioned nesting method is implemented.
[0034] The above-mentioned at least one technical solution adopted by the present invention can achieve the following beneficial effects:
[0035] When the traditional nesting algorithm nests based on the left bottom, the final nesting result often squeezes the remaining gaps to one side of the blank, forming long and scattered remaining spaces, with a high waste rate.
[0036] When the present invention arranges nesting units of the same size on a rectangular blank (the blank can be a rectangular material, including fabric, mechanical manufacturing materials, etc.), a nesting method that mixes horizontal and vertical arrangements of the nesting units is adopted on both the long side and the short side of the remaining nesting rectangle, forming a rotationally symmetric nesting result with central symmetry. Thus, after each round of nesting, the remaining space is concentrated near the center of the blank, improving the concentration of the remaining space, enabling the remaining space to be further nested to the greatest extent. The entire nesting process forms a multi-array rotation arrangement combination plus a central nesting array combination. By the method of multi-array combination nesting, the concentration of the remaining space is improved, the utilization rate of the blank space is improved, and the nesting effect is improved. Description of the Drawings
[0037] The accompanying drawings described herein are used to provide a further understanding of the present invention and form a part of the present invention. The schematic embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings:
[0038] Figure 1 It is a schematic flowchart of a nesting method provided by the present invention;
[0039] Figure 2 It is a schematic diagram of a full horizontal arrangement of small rectangles provided by the present invention;
[0040] Figure 3 It is a schematic diagram of a full vertical arrangement of small rectangles provided by the present invention;
[0041] Figure 4 It is a schematic diagram of a centrosymmetric rotation arrangement of small rectangles provided by the present invention;
[0042] Figure 5 It is a schematic diagram of an example nesting result provided by the present invention;
[0043] Figure 6 It is a schematic diagram of a second-round iterative nesting provided by the present invention;
[0044] Figure 7 It is a schematic diagram of an example final nesting provided by the present invention;
[0045] Figure 8 It is a schematic diagram of a nesting device provided by the present invention;
[0046] Figure 9 It is a schematic diagram of a computer device for implementing the nesting method provided by the present invention. Detailed embodiments
[0047] To make the objectives, technical solutions, and advantages of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below in conjunction with specific embodiments of the present invention and the corresponding accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.
[0048] The following will describe in detail the technical solutions provided by each embodiment of the present invention in conjunction with the accompanying drawings.
[0049] Figure 1 It is a schematic flowchart of a nesting method in the present invention. In this method, on a rectangular blank, the smallest circumscribed rectangle corresponding to the nesting object is used as the nesting unit for nesting, and specifically includes the following steps:
[0050] S101: Determine the optional long-side layout situations of arranging a number of material units in several vertical rows side by side along the long side of the rectangular blank, and determine the optional short-side layout situations of arranging a number of material units in several vertical rows side by side along the short side of the rectangular blank.
[0051] S102: Combine the optional long-side layout situations with the optional short-side layout situations, and determine the layout result on the rectangular blank of the combination result in the way of arranging the material units in central symmetry. Remove the layout results where the material units overlap, and retain the layout results corresponding to the combination results where the material units are arranged in all horizontal rows or all vertical rows.
[0052] S103: Determine the number of arranged material units and the current maximum number of arranged materials in the remaining layout results, and determine the area of the remaining unarranged rectangle in the middle of the rectangular blank; according to the ratio of the area of the remaining unarranged rectangle to the area of the material unit, determine the potential maximum number of arranged materials in the remaining unarranged rectangle.
[0053] S104: When the sum of the number of arranged material units and the potential maximum number of arranged materials in the remaining layout results is less than the current maximum number of arranged materials, prune the corresponding layout results.
[0054] S105: Perform iterative layout on the remaining unarranged rectangles in the pruned layout results to update the layout results and the current maximum number of arranged materials until the area of the remaining unarranged rectangle is less than the area of the material unit; take the layout result corresponding to the current maximum number of arranged materials as the final layout result.
[0055] For the convenience of description, the following will only be described with the server as the execution entity. The server mentioned in the present invention may be a server set up on the service platform, or a device such as a desktop computer or a laptop computer that can execute the solution of the present invention.
[0056] For the convenience of understanding and description, in one or more embodiments of the present invention, assume a fabric layout scenario: a large rectangular leather has a size of 75×60 (hereinafter referred to as the large rectangle), and it is necessary to cut small rectangular leathers with a size of 8.5×6.5 (hereinafter referred to as the small matrix). How many at most can be cut?
[0057] Theoretically, it can be obtained that 75×60 / (8.5×6.5) = 81.44, and rounding down to 81, that is, theoretically at most 81. Considering that both the length and width directions need to be rounded down, assuming that the small rectangles are all arranged horizontally, 60 / 6.5×(75 / 8.5) = 9.23×8.82 = 72, as Figure 2 shown by the small rectangles all Figure 2 is a schematic diagram of all horizontal arrangements of small rectangles in the present invention.
[0058] Assume that all the small rectangles are arranged vertically. 75 / 6.5*(60 / 8.5) = 11.2*7.06 = 77 pieces, as Figure 3 shown Figure 3 is a schematic diagram of all small rectangles arranged vertically in the present invention.
[0059] Figure 4 is a schematic diagram of the central symmetry rotation arrangement of small rectangles in the present invention. As Figure 4 can be seen, the purple part is arranged vertically, the green part is arranged horizontally, the grass green part is arranged vertically, and the red part is arranged horizontally. It is a centrally symmetric figure. After concentrating the remaining space in the middle of the large rectangle through the central symmetry rotation arrangement method, a small rectangle can still be arranged, and the overall arrangement quantity reaches the theoretical maximum value of 81 pieces.
[0060] Based on this, in one or more embodiments of the present invention, the server can first determine the possible material arrangement situations when arranging the vertical and horizontal row material units along the sides of the rectangular blank.
[0061] Specifically, the server can first determine the maximum number of vertical rows along the long side of the rectangular blank when arranging the vertical row material units, and then for each optional long side vertical row situation from zero to the maximum number of long side vertical rows, determine the maximum number of horizontal rows along the long side of the remaining space of the rectangular blank when arranging the horizontal row material units, and combine this optional long side vertical row situation with the corresponding maximum number of long side horizontal rows to obtain the long side optional material arrangement situation corresponding to this optional long side vertical row situation.
[0062] Similarly, determine the maximum number of vertical rows along the short side of the rectangular blank when arranging the vertical row material units along the short side, so as to determine the maximum number of horizontal rows along the short side of the remaining space of the rectangular blank when arranging the horizontal row material units for each optional short side vertical row situation from zero to the maximum number of short side vertical rows, and combine this optional short side vertical row situation with the corresponding maximum number of short side horizontal rows to obtain the short side optional material arrangement situation corresponding to this optional short side vertical row situation.
[0063] Continue to take the above assumed material arrangement scenario as an example for illustration. In order to achieve Figure 4 the best material arrangement method shown, assume that the purple part is x1 in the X-axis direction and y1 in the Y-axis direction, and the green part is x2 in the X-axis direction and y2 in the Y-axis direction.
[0064] Then there is
[0065] On the X-axis: According to 6.5x1 + 8.5x2 <= 75, when x1 = 1, 2......, 11, the corresponding maximum x2 can be calculated, as shown in Table 1, drop means discard.
[0066] Table 1 First round (x1, x2)
[0067]
[0068] Among them, (0, 8) is necessarily not the optimal point relative to (1, 8), so this type of situation is discarded.
[0069] After discarding some situations that are necessarily not better solutions, Table 2 can be obtained.
[0070] Table 2 The first round of optimization (x1, x2)
[0071]
[0072] Similarly, on the y-axis: According to 8.5y1 + 6.5y2 <= 60, when y2 = 1, 2,..., 9, the maximum y1 can be calculated, as shown in Table 3.
[0073] Table 3 The first round (y2, y1)
[0074]
[0075] After discarding some situations that are necessarily not better solutions, Table 4 can be obtained.
[0076] Table 4 The first round of optimization (y2, y1)
[0077]
[0078] After that, the server can combine the optional nesting situations of the long side and the short side, and determine the nesting result of the combined result on the rectangular stock by arranging the nesting units in a centrosymmetric manner, as shown in Table 5.
[0079] Table 5 The number of small rectangles accumulated in the first round
[0080]
[0081] Since when x1 > 11 / 2 and y1 > 7 / 2, or x2 > 8 / 2 and y2 > 9 / 2, there are overlapping nesting results of the nesting units when determining the nesting result of the combined result on the rectangular stock by arranging the nesting units in a centrosymmetric manner. If the method of arranging the nesting units in a centrosymmetric manner is not adopted, the remaining part is not concentrated in the center of the matrix, which does not meet the goal of centralizing and maximizing the remaining area. These combined results are discarded, and only the nesting results corresponding to the combined results with all nesting units arranged horizontally or vertically are retained, that is, the two combined results in the upper left and lower right in Table 5.
[0082] At this time, the server can use 2 × x1 × y1 + 2 × x2 × y2 to calculate the number of arranged nesting units in the remaining nesting results and determine the current maximum nesting number. As shown in Table 5, the current maximum nesting number is 80.
[0083] Further, the server can determine the area of the remaining unarranged rectangle in the middle of the rectangular stock:
[0084] When x1 <= 11 / 2 and y2 <= 9 / 2, the corresponding values of the long side and the short side of the remaining unarranged rectangle are (75 - 2×6.5×x1, 60 - 2×6.5×y2).
[0085] When x1 > 11 / 2 and y2 > 9 / 2, the corresponding values of the long side and the short side of the remaining unarranged rectangle are (60 - 2×8.5×x2, 60 - 2×8.5×y1). As shown in Table 6.
[0086] Table 6 Size of the remaining central rectangle (length, width)
[0087]
[0088] The server can determine the potential maximum number of arranged parts of the remaining unarranged rectangle according to the ratio of the area of the remaining unarranged rectangle to the area of the arranged part per unit.
[0089] Then, the server can determine the fitness of the remaining arrangement result according to the sum of the number of arranged parts per unit that have been arranged in the remaining arrangement result and the potential maximum number of arranged parts.
[0090] Calculate the fitness: Solve 2×x1×y1 + 2×x2×y2 + the potential maximum number of arranged parts of the remaining unarranged rectangle, and the theoretical maximum value of the number of small matrices of the corresponding arrangement result can be obtained.
[0091] Taking the points (7, 3) and (6, 2) as an example: 64 + 26×24 / 6.5 / 8.5 = 75.29. Table 7 can be obtained from the above Table 6.
[0092] Table 7 Fitness of the remaining arrangement result according to the division method of (x1, x2) and (y2, y1)
[0093]
[0094] After that, pruning can be performed according to the fitness. When the fitness is less than the current maximum number of arranged parts, the corresponding arrangement result is pruned.
[0095] Taking the points (7, 3) and (6, 2) as an example: 75.29 < 80, this arrangement result is pruned. For the two points (1, 8), (9, 0) and (11, 0), (0, 7), the maximum number of matrices calculated directly is 72 + 7 = 79 and 77 respectively, and they are also pruned.
[0096] After pruning those less than or equal to 80, Table 8 can be obtained.
[0097] Table 8 After pruning
[0098]
[0099] Among them, (11, 0) and (9, 0) are also discarded because this arrangement has no practical meaning.
[0100] Based on the above process, the server can perform iterative nesting on the remaining un-nested rectangles in the nested result after pruning until the termination condition is reached. In one or more embodiments of the present invention, the server can perform iterative nesting on the remaining un-nested rectangles in the nested result after pruning to update the nested result and the current maximum nesting count. When the area of the remaining un-nested rectangle is smaller than the area of the nesting unit, or the sum of the number of nested units arranged in the remaining nesting result and the potential maximum nesting count is less than or equal to the current maximum nesting count, the iterative nesting is terminated.
[0101] Furthermore, in one or more embodiments of the present invention, the server can form the nesting coordinates of the nested result after pruning according to the long-side nesting situation and the short-side nesting situation of the nested result after pruning, and then determine the reference nesting coordinates formed by the long-side nesting situation and the short-side nesting situation of the nested result corresponding to the current maximum nesting count, so as to sort the distances between the nesting coordinates of the nested result after pruning and the reference nesting coordinates in ascending order, and select a preset number of nested results after pruning from front to back for iterative nesting.
[0102] For example, the server can select the eight nesting results closest to the center for iterative nesting based on the above genetic algorithm. Taking the points (5, 5) and (4, 4) as an example: the remaining (10, 8) can place a small rectangle (8.5, 6.5), and the number of small rectangles that can be placed is 80 + 1 = 81. The final result is as Figure 4 shown.
[0103] In addition, in one or more embodiments of the present invention, when pruning, the depth-first algorithm can be used for pruning. Perform a depth search on the nesting result corresponding to the current maximum nesting count, and accumulate the iterative maximum nesting count obtained from the depth search to the current maximum nesting count to obtain the updated current maximum nesting count, and prune the branches less than or equal to the updated current maximum nesting count.
[0104] Taking the nesting result of (7, 3) and (6, 2) as an example to illustrate the depth pruning process: the remaining un-nested rectangle is (24, 26), as Figure 5 shown, Figure 5 which is a schematic diagram of an example nesting result in the present invention.
[0105] Based on the remaining un-nested rectangle (24, 26), perform the second-round nesting. On the X-axis, as shown in Table 9:
[0106] Table 9 Second round (x1, x2)
[0107]
[0108] On the Y-axis, as shown in Table 10:
[0109] Table 10 Second Round (y2, y1)
[0110]
[0111] Furthermore:
[0112] Table 11 Number of small rectangles accumulated in the second round
[0113]
[0114] Table 12 Sizes (length, width) of remaining unallocated rectangles
[0115]
[0116] Taking (7, 26) as an example, as Figure 6 shown, Figure 6 is a schematic diagram of the second-round iterative nesting in the present invention.
[0117] 7 * 26 / (6.5 * 8.5) = 3.29, rounded down to 3. The rectangle (7, 26) can be placed vertically with three small matrices, as Figure 7 shown, Figure 7 is a schematic diagram of an example of the final nesting in the present invention. Then this loop ends.
[0118] After exiting this layer of the loop, calculate 24 * 26 / (6.5 * 8.5) = 11.29. For the upper-layer loop, as long as a layout of 11 is found, the upper-layer loop can be exited. For the remaining part, at most 3 small rectangles can be placed, so a total of 64 + 8 + 3 = 75 matrices can be placed. Finally, during the iteration, an optimal solution in the form of Figure 4 can be found.
[0119] Based on Figure 1 the nesting method shown, the present invention adopts a nesting method that mixes horizontal and vertical arrangements of the nesting unit on both the long side and the short side of the remaining unallocated rectangles of the whole material, forming a rotationally symmetric nesting result with central symmetry. Thus, after each round of nesting, the remaining space is concentrated near the center of the whole material, improving the concentration of the remaining space, enabling the remaining space to be further nested to the greatest extent, thereby improving the utilization rate of the whole material space and the nesting effect.
[0120] The rotation cutting method of the present invention ensures the centralization and maximization of the central area. The combined application of the inequality equation system to obtain the optimal points on the boundary, the genetic sorting algorithm, and the depth pruning method improves the convergence speed of nesting and the efficiency of the nesting method.
[0121] When applying the nesting method provided by the present invention, it is not necessary to execute according to the Figure 1 sequence of each step shown. The specific execution sequence of each step can be determined according to needs, and the present invention does not limit this.
[0122] The above is the nesting method provided by one or more embodiments of the present invention. Based on the same idea, the present invention also provides a corresponding nesting device, as Figure 8 shown.
[0123] Figure 8 It is a schematic diagram of a nesting device provided by the present invention. On a rectangular stock, nesting is performed with the smallest circumscribed rectangle corresponding to the nesting object as the nesting unit; it includes:
[0124] A side nesting determination module 201, configured to determine the optional nesting situations for the long side of arranging a plurality of nesting units in parallel vertical rows and a plurality of nesting units in parallel horizontal rows along the long side of the rectangular stock, and determine the optional nesting situations for the short side of arranging a plurality of nesting units in parallel vertical rows and a plurality of nesting units in parallel horizontal rows along the short side of the rectangular stock;
[0125] A combination module 202, configured to combine the optional nesting situations for the long side with the optional nesting situations for the short side, determine the nesting result on the rectangular stock of the combination result in a centrosymmetric arrangement of the nesting units, remove the nesting results with overlapping nesting units, and retain the nesting results corresponding to the combination results of all-horizontal or all-vertical arrangements of the nesting units;
[0126] A fitness determination module 203, configured to determine the number of arranged nesting units and the current maximum nesting number in the remaining nesting results, and determine the area of the remaining un-nested rectangle in the middle of the rectangular stock; determine the potential maximum nesting number of the remaining un-nested rectangle according to the ratio of the area of the remaining un-nested rectangle to the area of the nesting unit;
[0127] A pruning module 204, configured to prune the corresponding nesting result when the sum of the number of arranged nesting units and the potential maximum nesting number in the remaining nesting results is less than the current maximum nesting number;
[0128] An iterative nesting module 205, configured to perform iterative nesting on the remaining un-nested rectangles in the pruned nesting results to update the nesting result and the current maximum nesting number until the area of the remaining un-nested rectangle is less than the area of the nesting unit; use the nesting result corresponding to the current maximum nesting number as the final nesting result.
[0129] For the specific limitations of the discharging device, reference may be made to the limitations of the discharging method in the foregoing text, which will not be elaborated herein. Each module in the foregoing discharging device may be implemented in whole or in part by software, hardware, and their combination. Each of the foregoing modules may be embedded in or independent of a processor in a computer device in the form of hardware, or may be stored in a memory in the computer device in the form of software, so as to facilitate the processor to call and execute the operations corresponding to each of the foregoing modules.
[0130] The present invention also provides a computer-readable storage medium storing a computer program, which can be used to execute the foregoing Figure 1 provided discharging method.
[0131] The present invention also provides Figure 9 a schematic structural diagram of the computer device shown in FIG., as Figure 9 shown, at the hardware level, the computer device includes a processor, an internal bus, a network interface, a memory, and a non-volatile memory. Of course, other hardware required for other services may also be included. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it to implement the foregoing Figure 1 provided discharging method.
[0132] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the foregoing embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it may include the processes of the embodiments of the foregoing methods. Among them, any reference to a memory, storage, database, or other medium used in the various embodiments provided by the present invention may include at least one of non-volatile and volatile memories. The non-volatile memory may include a read-only memory (ROM), magnetic tape, floppy disk, flash memory, or optical memory, etc. The volatile memory may include a random access memory (RAM) or an external cache memory. By way of illustration and not limitation, the RAM may be in various forms, such as a static random access memory (SRAM) or a dynamic random access memory (DRAM), etc.
[0133] The technical features of the foregoing embodiments may be combined arbitrarily. For the sake of concise description, not all possible combinations of the technical features in the foregoing embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded by the present invention.
Claims
1. A discharge method, characterized in that: On a rectangular monolith, nesting is performed using the minimum circumscribed rectangle corresponding to a nesting object as a nesting unit; the method comprises: Determine the optional arrangement of the long side of a plurality of arrangement units arranged vertically and horizontally along the long side of the rectangular monolith, and determine the optional arrangement of the short side of a plurality of arrangement units arranged vertically and horizontally along the short side of the rectangular monolith; Combine the optional nesting conditions of the long side with the optional nesting conditions of the short side, and determine the nesting results of the combination results on the rectangular monolith by arranging the nesting units symmetrically in the center, remove the nesting results with overlapping nesting units, and retain the nesting results corresponding to the combination results of all horizontal or vertical nesting units; Determine the number of arranged nesting units and the current maximum nesting number in the remaining nesting results, and determine the area of the remaining un-nested rectangle in the middle of the rectangular whole; determine the potential maximum nesting number of the remaining un-nested rectangle according to the ratio of the area of the remaining un-nested rectangle to the nesting unit area; When the sum of the number of arranged nesting units in the remaining nesting results and the potential maximum nesting number is less than the current maximum nesting number, the corresponding nesting results are pruned; Iteratively nest the remaining unnested rectangles in the nesting results after pruning to update the nesting results and the current maximum nesting number until the area of the remaining unnested rectangles is smaller than the area of the nesting unit; the nesting result corresponding to the current maximum nesting number is used as the final nesting result.
2. The discharge method according to claim 1, characterized in that: The determining of the optional arrangement of the long side of a plurality of arrangement units arranged vertically and horizontally along the long side of the rectangular monolith, and the determining of the optional arrangement of the short side of a plurality of arrangement units arranged vertically and horizontally along the short side of the rectangular monolith, specifically includes: Determine the maximum number of long side vertical rows when arranging the units vertically side by side along the long side of the rectangular monolith; For each optional long side vertical arrangement situation from zero to the maximum number of long side vertical arrangements, determine the maximum number of long side horizontal arrangements when the remaining space of the long side of the rectangular monolith is arranged in parallel horizontal arrangement units, and combine the optional long side vertical arrangement situation with the corresponding maximum number of long side horizontal arrangements to obtain the long side optional arrangement situation corresponding to the optional long side vertical arrangement situation; Determine the maximum number of short side vertical rows when arranging units vertically side by side along the short sides of a rectangular monolith; For each optional short side vertical arrangement situation from zero to the maximum number of short side vertical arrangements, determine the maximum number of short side horizontal arrangements when the remaining space of the short sides of the rectangular whole material is arranged in parallel horizontal arrangements, and combine this optional short side vertical arrangement situation with the corresponding maximum number of short side horizontal arrangements to obtain the optional arrangement situation of the segment edge corresponding to this optional short side vertical arrangement situation.
3. The discharge method according to claim 1, characterized in that: The iterative nesting of the remaining unnested rectangles in the nesting result after pruning to update the nesting result and the current maximum nesting number until the area of the remaining unnested rectangles is smaller than the area of the nesting unit specifically includes: Iterate the remaining unnested rectangles in the nesting result after pruning to update the nesting result and the current maximum number of nestings; When the area of the remaining unnested rectangles is smaller than the area of the nesting unit, or the sum of the number of arranged nesting units in the remaining nesting results and the potential maximum number of nesting units is less than or equal to the current maximum number of nesting units, the iterative nesting is terminated.
4. The discharge method according to claim 1, characterized in that: The iterative nesting of the remaining unnested rectangles in the nesting result after pruning specifically includes: According to the long side arrangement and the short side arrangement of the arrangement result after pruning, the arrangement coordinates of the arrangement result after pruning are formed; Determine the reference nesting coordinates formed by the long side nesting situation and the short side nesting situation of the nesting result corresponding to the current maximum nesting number; The distances between the nesting coordinates of the pruned nesting results and the reference nesting coordinates are sorted in ascending order, and a preset number of pruned nesting results are selected from front to back for iterative nesting.
5. A discharging device, characterized in that: On a rectangular block, nesting is performed using the smallest circumscribed rectangle of the nesting object as the nesting unit; including: The edge row determination module is used to determine the optional arrangement of the long side of a plurality of arrangement units arranged vertically and horizontally along the long side of the rectangular monolith, and to determine the optional arrangement of the short side of a plurality of arrangement units arranged vertically and horizontally along the short side of the rectangular monolith; A combination module is used to combine the optional nesting conditions of the long side with the optional nesting conditions of the short side, determine the nesting results of the combination results on the rectangular whole material in a way of centrally symmetrically arranging the nesting units, remove the nesting results with overlapping nesting units, and retain the nesting results corresponding to the combination results of the nesting units in full horizontal or full vertical arrangement; The fitness determination module is used to determine the number of arranged nesting units in the remaining nesting results and the current maximum nesting number, and determine the area of the remaining un-nested rectangles in the middle of the rectangular whole; according to the ratio of the area of the remaining un-nested rectangles to the nesting unit area, determine the potential maximum nesting number of the remaining un-nested rectangles; A pruning module is used to prune the corresponding nesting results when the sum of the number of nesting units that have been arranged in the remaining nesting results and the potential maximum nesting number is less than the current maximum nesting number; The iterative nesting module is used to iteratively nest the remaining unnested rectangles in the nesting results after pruning, so as to update the nesting results and the current maximum number of nestings, until the area of the remaining unnested rectangles is smaller than the area of the nesting unit; the nesting result corresponding to the current maximum number of nestings is used as the final nesting result.
6. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 4 is implemented.
7. A computer device, characterized in that: The method comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the method according to any one of claims 1 to 4 is implemented.
Citation Information
Patent Citations
Efficient cutting method for float glass
CN112939436A
Discharging method and device, electronic equipment and computer readable storage medium
CN116307132A
Two-dimensional plane layout optimization method based on heuristic search
CN118709862A
Data creating method for nesting and manufacture of plate part
JP1996025177A