A method for optimizing port berth and quay crane resource allocation based on multi-party collaborative evolution

By modeling the port planning problem as a multi-target problem of two parties and optimizing resource allocation based on the idea of ​​collaborative evolution, the problem of difficulty in balancing efficiency and safety in the existing technology is solved, and a more efficient and safe port resource allocation is achieved.

CN119721399BActive Publication Date: 2025-05-02NANJING UNIV OF INFORMATION SCI & TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510222162.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-02-27
Publication Date
2025-05-02
Estimated Expiration
2045-02-27

AI Technical Summary

Technical Problem

The existing technology is difficult to effectively balance efficiency and safety in port planning, resulting in unreasonable resource allocation and the inability to find efficient solutions within limited computing resources.

Method used

Model the port planning problem as a multi-objective problem of the efficiency and safety side. By calculating the benefits of each cycle, we determine the computing resources obtained in the next round, and perform cross-operations, constraint repairs and mutation operations in each cycle to optimize resource allocation.

Benefits of technology

It realizes more fully solving port planning problems within limited resources, improves resource utilization, reduces calculation burden, and finds a more accurate solution, balancing efficiency and safety.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119721399B_ABST
    Figure CN119721399B_ABST
Patent Text Reader

Abstract

The present invention provides a method for optimizing the allocation of port berths and quay crane resources based on multi-party collaborative evolution, comprising the following steps: Step 1, modeling the port planning problem as a two-party multi-objective problem of the efficiency party and the safety party; Step 2, calculating the respective benefits of the efficiency party and the safety party in the T-th round of cycles, and determining the computing resources obtained by each of the two parties in the next round, i.e., the T+1 round, according to the T-th round of benefits; Step 3, performing the T+1 round of cycles based on the computing resources obtained by each of the efficiency party and the safety party, and solving the problem. The present invention first models the port planning problem as a two-party multi-objective problem, which makes it easier to realize the evolution of the population, reduces the computational burden, and obtains a more accurate solution. Then, based on the idea of ​​collaborative evolution, the computing resource allocation of the two parties in the next round is determined by the benefits of each round, so that the computing resource allocation is more reasonable and effective, and a more accurate solution is obtained.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of port berth and quay crane allocation, and in particular relates to a port berth and quay crane resource allocation optimization method based on multi-party collaborative evolution. Background Art

[0002] With the rapid development of the shipping industry, the number of ships arriving at the port is increasing, and the amount of cargo loaded and unloaded has greatly increased. Safety hazards often have a great impact on the operation of the process. For example, if all ships arriving at the port are unloaded as much as possible, collision accidents may occur; excessive use of quay cranes will also increase the cost of maintenance and inspection and pose certain safety hazards. Therefore, when planning the port, it is necessary to consider both efficiency improvement and safety assurance.

[0003] For the above problem, we need to consider both efficiency and safety goals. Generally, it can be modeled as a multi-party and multi-objective problem. In this problem, efficiency and safety are often in conflict. If we only pursue safety, efficiency will be reduced; but if we only focus on improving efficiency, safety may not be guaranteed.

[0004] For this problem, the goals of efficiency and safety are conflicting. Only focusing on improving efficiency may lead to an increase in safety hazards, while only focusing on safety will reduce efficiency. Therefore, when solving port planning problems, how to balance the relationship between safety and efficiency is a problem that needs to be solved. Obviously, using all computing resources to solve only one side is likely to cause functional loss on the other side. If the computing resources are evenly divided between the two sides, although this method is feasible, it ignores the inherent connection between safety and efficiency and cannot fully solve the problem within limited computing resources.

[0005] In the past, the practice of port planning was not to decompose the problem into two parts, but to directly model the problem as a multi-objective problem based on all the goals for solution. However, this modeling method will lead to a large consumption of resources and a long time for problem solving, and it is impossible to find an efficient solution within an effective time. Summary of the invention

[0006] Purpose of the invention: The technical problem to be solved by the present invention is to provide a method for optimizing the allocation of port berths and quay crane resources based on multi-party collaborative evolution in view of the shortcomings of the prior art, comprising the following steps:

[0007] Step 1: Model the port planning problem as a two-party multi-objective problem on the efficiency side and the safety side;

[0008] Step 2: Calculate the benefits of the efficient party and the safe party in the Tth round of the cycle, and determine the computing resources obtained by each party in the next round, i.e., the T+1th round, based on the benefits in the Tth round;

[0009] Step 3: Perform the T+1th cycle based on the computing resources obtained by the efficiency party and the security party respectively to solve the problem. The T+1th cycle includes M cycles.

[0010] Step 1 includes: The first goal of the efficiency method is to minimize the stop time cost, and the formula is:

[0011] (1),

[0012] in represents the unit time cost of the i-th ship, Represents the total number of ships, represents the arrival time of the i-th ship, represents the departure time of the i-th ship, It represents the first goal of the efficiency side;

[0013] The second goal of the efficiency method is to minimize the number of idle quay cranes, as follows:

[0014] (2),

[0015] Where K represents the total number of quay cranes, Represents the total number of ships, is a Boolean value indicating whether the jth quay crane is working on the ith ship at time t. If yes, then The value is 1, otherwise is 0; It represents the second goal of the efficiency side;

[0016] The first goal of the safety party is to maximize the minimum distance between ships, the formula is:

[0017] (3),

[0018] in represents the berth position of the i-th ship at time t, It indicates the first goal of the security party;

[0019] The second goal of the safety side is to minimize the number of times the quay crane is used, and the formula is:

[0020] (4),

[0021] in Is a Boolean value indicating whether the jth gantry crane is operating on the i-th ship. The value is 1, otherwise is 0; Indicates the second goal of the security party.

[0022] In step 2, the calculation of the respective benefits of the efficiency party and the safety party in the T-th round of circulation specifically includes:

[0023] For efficiency, the solution set before the loop is After one cycle, a set of solutions is obtained. , the efficiency gain after one cycle is :

[0024] (5),

[0025] in represents the Nth solution before the efficiency square loops. It represents the Nth solution obtained by the efficiency side after one cycle. The efficiency goals, Represents the solution set The efficiency of all solutions in The set of target values ​​for the targets, Represents the solution set The efficiency of all solutions in The set of target values ​​for each target;

[0026] For the safe side, the solution set before looping is After one cycle, a set of solutions is obtained. , the cycle income of the safe party after one cycle for:

[0027] (6),

[0028] in Indicates the safety side goals, Represents the solution set All solutions in the secure side The set of target values ​​for the targets, Represents the solution set All solutions in the secure side The set of target values ​​for each target;

[0029] In the Tth round, there are M cycles in total, including The second cycle is used to optimize the safety side. The cycle is used to optimize the efficiency side. After the Tth cycle, the efficiency side's profit and the benefits to the security party They are:

[0030] (7),

[0031] (8),

[0032] in represents the solution set of the efficiency square before the mth cycle of the Tth round, represents the solution set of the efficiency square after completing the mth cycle of the Tth round, represents the solution set of the safe side before the mth cycle of the Tth round, represents the solution set of the safe square after completing the mth cycle of the Tth round, represents the cycle benefit of the efficiency square obtained after the mth cycle, It represents the cycle profit of the safe party after the mth cycle.

[0033] In step 2, the computing resources obtained by each party in the next round, i.e., round T+1, are determined based on the revenue in round T, specifically including:

[0034] After one cycle, the profit of the safe party is , the efficiency benefit is , the number of cycles in the next round is also M cycles, so the number of cycles used to optimize the safety side in the next round is and the number of cycles used to optimize efficiency They are:

[0035] (9),

[0036] (10),

[0037] In each round of calculation, the size of the previous round's revenue is used to determine the allocation of computing resources in the current round;

[0038] In each round of calculation, there are M cycles, among which The second cycle is used to optimize the safety side. Secondary cycles are used to optimize efficiency;

[0039] In the first round of calculation, the number of cycles of the safety side and the efficiency side are set to and ,and ;

[0040] In each round of calculation, the population P obtained in the previous round is first cycled to optimize the efficiency objective, and the cycle revenue of each cycle is calculated, and the cycle is repeated for a total of times, and obtain the population P'; then loop the obtained population P' to optimize the safety side goal, and calculate the loop benefit of each loop, and repeat it for a total of times; then calculate the profit of this round based on the cycle profit of each cycle and , and finally calculate the next round and .

[0041] In step 3, each cycle in the M cycles specifically includes:

[0042] First, the individuals in the population are randomly divided into pairs for crossover operation, including two cases:

[0043] In the first case, if the Tth round of loop is to optimize the efficiency side goal, firstly, all the solutions in the population are sorted by non-dominated sorting to obtain the non-dominated sorting level of each solution on the safety side goal, where the maximum level is , the minimum level is 1; a level 1 solution means that this solution is not dominated by other solutions in the population on the goal of the safe side; the level is It means that there exists a solution in the population that can dominate the solution of the maximum level on the safety side objective;

[0044] According to the level, define the probability of any solution x in the population to perform a crossover operation for:

[0045] (11),

[0046] in represents the non-dominated sorting level corresponding to the solution x on the safe side; if If it is equal to 0, it means that the solution x does not perform a crossover operation. If it is greater than 0, it means that the solution x must be cross-operated, and the number of elements in x changed by the cross-operation for:

[0047] (12),

[0048] in Represents the total number of elements in x;

[0049] In the second case, if the Tth round of loop is to optimize the goal of the safety side, firstly, all the solutions in the population are sorted by non-dominated sorting to obtain the non-dominated sorting level of each solution on the efficiency side goal, where the maximum level is , the minimum level is 1; a solution with a level of 1 means that this solution is not dominated by other solutions in the population in terms of efficiency; a solution with a level of It means that there is a solution in the population that can dominate the solution of the maximum level in terms of efficiency objective;

[0050] According to the level, define the probability of any solution x in the population to perform a crossover operation for:

[0051] (13),

[0052] in represents the non-dominated sorting level corresponding to solution x on the efficiency side; if solution x performs a crossover operation, the probability If it is equal to 0, it means that the solution x does not perform a crossover operation. If the probability of a crossover operation is If it is greater than 0, it means that the solution x must be cross-operated, and the number of elements in x changed by the cross-operation for:

[0053] (14),

[0054] For two solutions x and y to be crossovered, y is not equal to x. If solution x is crossovered, the probability And the probability of solving y for crossover operation , then both solutions x and y do not change; if the probability of solution x undergoing a crossover operation is And the probability of solving y for crossover operation , then the solution y remains unchanged. For the solution x, randomly select a position s, and then use the following formula to replace the position s with The elements are replaced by the solution y after the same element position elements, and obtain the solution after completing the crossover operation :

[0055] (15),

[0056] in represents the elements before position s in the solution x, Indicates the solution y at position s and position The elements between Indicates that the solution x is in position The following elements, Indicates the solution y at position s and position The elements between;

[0057] If the solution x performs a crossover operation, the probability And the probability of solving y for crossover operation , then the solution x remains unchanged, and the crossover operation is performed on the solution y;

[0058] For a solution y, the number of elements in y that are changed by the crossover operation for:

[0059] (16),

[0060] in Represents the total number of elements in the solution y;

[0061] For the solution y, randomly select a position s, and then use the following formula to get the solution after the crossover operation :

[0062] (17),

[0063] in represents the elements before position s in the solution y, Indicates the solution x at position s and position The elements between Indicates that the solution y is at position The following elements, Indicates the solution x at position s and position The elements between;

[0064] If the solution x performs a crossover operation, the probability And the probability of solving y for crossover operation , then for x and y, randomly select the same position s, and the position s must satisfy:

[0065] (18),

[0066] Then the solution x and solution y are updated according to formulas (11) to (17);

[0067] After completing the crossover operation, constraint repair operations and mutation operations are performed on the individuals in the population.

[0068] In step 3, the constraint repair operation includes: checking whether the solution satisfies the basic efficiency constraint and the safety constraint. The efficiency constraint is to constrain the target values ​​of the two targets of the efficiency side. For the first target of the efficiency side ,set up The maximum and minimum tolerable values ​​are , , if the value of the first objective of a solution satisfies Then the efficiency constraint is satisfied, otherwise it is not satisfied;

[0069] The second goal of efficiency ,set up The maximum and minimum tolerable values ​​are , , if the efficiency of a solution satisfies the value of the second objective Then the efficiency constraint is satisfied, otherwise it is not satisfied;

[0070] The safety constraint is to constrain the target values ​​of the two targets of the safety party. ,set up The maximum and minimum tolerable values ​​are , , if the value of the first objective of the safety side of a solution satisfies If the security constraint is satisfied, then the security constraint is satisfied; otherwise, the security constraint is not satisfied;

[0071] The second goal for the security side ,set up The maximum and minimum tolerable values ​​are , , if the value of the second objective of a solution satisfies If the security constraint is satisfied, then the security constraint is satisfied; otherwise, the security constraint is not satisfied;

[0072] According to the efficiency constraints and safety constraints, the population is divided into a solution set that satisfies the constraints and a solution set that does not satisfy the constraints.

[0073] In step 3, the mutation operation includes: according to the efficiency constraint and the safety constraint, a feasible domain S will appear in the target space, and the solutions in the feasible domain S all satisfy the efficiency constraint and the safety constraint;

[0074] For the solutions in the solution set that do not satisfy the constraints, only the first three solutions closest to the feasible region are selected for mutation operation, and half of the elements in the solution are randomly selected for update. is the solution closest to the feasible region, half of the elements in solution x will be mutated, that is, there are elements are randomly changed to new values; represents the first elements;

[0075] For the solutions in the solution set that satisfy the constraints, randomly select one of the elements of the solution to update. is any solution in the feasible domain, and one element in y will be mutated, that is, one element in the solution y is randomly changed to a new value; represents the first elements.

[0076] In step 3, the population is finally updated: if the goal is to optimize the efficiency side, the solutions in the population that are dominated by the newly obtained solution on the efficiency side are deleted, and the new solutions are added to the population. If no solution can be deleted, the solution set remains unchanged and the new solution is not added to the solution set; if the goal is to optimize the safety side, the solutions in the population that are dominated by the newly obtained solution on the safety side are deleted, and the new solutions are added to the population. If no solution can be deleted, the solution set remains unchanged and the new solution is not added to the solution set.

[0077] The present invention also provides an electronic device, comprising a processor and a memory, wherein the memory stores program code, and when the program code is executed by the processor, the processor executes the steps of the described method.

[0078] The present invention also provides a storage medium storing a computer program or instruction. When the computer program or instruction is run on a computer, the steps of the method described are executed.

[0079] The present invention models the port planning problem as a two-party multi-objective problem, and designs a new algorithm based on the idea of ​​co-evolution to solve the problem. In the process of solving the problem, the present invention defines the indicator "benefit" and defines the specific calculation method of the indicator under the problem, and uses the indicator to allocate the computing resources obtained by each party to enable the problem to be solved more fully. The indicator "benefit" can help determine which party has more evolutionary potential in the evolution process, so that limited resources can be used to the greatest extent.

[0080] Beneficial effects: The present invention first models the port planning problem as a two-party multi-objective problem, which makes it easier to realize the evolution of the population, reduces the computational burden, and obtains a more accurate solution. Then, based on the idea of ​​co-evolution, a port berth and quay crane resource allocation optimization method based on multi-party co-evolution is provided, and the "benefit" indicator is defined to judge the evolution degree and evolvable space of the population in terms of safety and efficiency. The computing resource allocation of the two parties in the next round is determined by the benefits of each round, so that the computing resource allocation is more reasonable and effective, and a more accurate solution is obtained. The crossover operation in the method also comprehensively considers the respective advantages of each solution in terms of efficiency and safety, promotes the evolution of the population, and the constraint repair and mutation operations in the method also balance the diversity and convergence of the population. In summary, the present invention re-models the problem for the port planning problem, and provides a port berth and quay crane resource allocation optimization method based on multi-party co-evolution based on the idea of ​​co-evolution, which can obtain a more accurate solution within limited resources. BRIEF DESCRIPTION OF THE DRAWINGS

[0081] Figure 1 The overall process of the method of the present invention.

[0082] Figure 2 This is the specific process of step 3 of the method of the present invention.

[0083] Figure 3 It is a schematic diagram of the form of the solution finally obtained by the method of the present invention. DETAILED DESCRIPTION

[0084] The present invention will be further described in detail below in conjunction with the accompanying drawings and specific embodiments, and the above and / or other advantages of the present invention will become more clear.

[0085] like Figure 1 As shown, an embodiment of the present invention provides a method for optimizing port berth and quay crane resource allocation based on multi-party collaborative evolution, including:

[0086] Step 1: Model the port planning problem as a two-party multi-objective problem on the efficiency side and the safety side;

[0087] Step 2: Calculate the benefits of the efficient party and the safe party in the Tth round of the cycle, and determine the computing resources obtained by each party in the next round, i.e., the T+1th round, based on the benefits in the Tth round;

[0088] Step 3: Perform the T+1th round of loops based on the computing resources obtained by the efficiency party and the security party respectively to solve the problem. The T+1th round of loops includes M loops.

[0089] Step 1 includes: The first goal of the efficiency side is to minimize the docking time cost: some goods on the ship need to be delivered urgently, or the shelf life of the goods is relatively short, so the time cost of such goods is high. Taking into account the docking time of each ship and the unit time cost, the total docking time cost needs to be minimized in terms of efficiency. The formula is:

[0090] (1),

[0091] in represents the unit time cost of the i-th ship, Represents the total number of ships, represents the arrival time of the i-th ship, represents the departure time of the i-th ship, Represents the first goal of the efficiency side.

[0092] The second goal of the efficiency method is to minimize the number of idle quay cranes: when the number of idle quay cranes is smaller, the number of working quay cranes is greater, and the work efficiency can be improved. The formula is:

[0093] (2),

[0094] Where K represents the total number of quay cranes, Represents the total number of ships, is a Boolean value indicating whether the jth quay crane is working on the ith ship at time t. If yes, then The value is 1, otherwise is 0; Represents the second goal of the efficiency side.

[0095] The first goal of the safety party is to maximize the minimum distance between ships: when the distance between ships is too small, it is easy to cause collisions and safety accidents. Therefore, in the planning process, it is necessary to maximize the minimum distance between ships, so as to avoid collision accidents to the greatest extent. The formula is:

[0096] (3),

[0097] in represents the berth position of the i-th ship at time t, Indicates the first goal of the security party.

[0098] The second goal of the safety side is to minimize the number of times the quay crane is used: if the quay crane is used frequently, there may be safety hazards such as reduced life and loose screws. However, if a quay crane is not used for a long time, there will also be problems. Therefore, each time a quay crane is planned, a random quay crane will be selected first to minimize the number of times it is used. By randomly selecting the target quay crane, each quay crane can be fully utilized within a safe range, minimizing losses and safety hazards as much as possible. The formula is:

[0099] (4),

[0100] in Is a Boolean value indicating whether the jth gantry crane is operating on the i-th ship. The value is 1, otherwise is 0. Indicates the second goal of the security party.

[0101] In step 2, the calculation of the respective benefits of the efficiency party and the safety party in the T-th round of circulation specifically includes:

[0102] For efficiency, the solution set before the loop is After one cycle, a set of solutions is obtained. , the efficiency gain after one cycle is :

[0103] (5),

[0104] in represents the Nth solution before the efficiency square loops. It represents the Nth solution obtained by the efficiency side after one cycle. The efficiency goals, Represents the solution set The efficiency of all solutions in The set of target values ​​for the targets, Represents the solution set The efficiency of all solutions in A set of target values ​​for each target.

[0105] Similarly, for the safe side, the solution set before looping is After one cycle, a set of solutions is obtained. , the cycle income of the safe party after one cycle for:

[0106] (6),

[0107] in Indicates the safety side goals, Represents the solution set All solutions in the secure side The set of target values ​​for the targets, Represents the solution set All solutions in the secure side A set of target values ​​for each target.

[0108] In the Tth round, there are M cycles in total (M is an integer, such as 10), among which The second cycle is used to optimize the safety side. The cycle is used to optimize the efficiency side. After the Tth cycle, the efficiency side's profit and the benefits to the security party They are:

[0109] (7),

[0110] (8),

[0111] in represents the solution set of the efficiency square before the mth cycle of the Tth round, Represents the solution set of the efficiency square after completing the mth cycle of the Tth round. represents the solution set of the safe side before the mth cycle of the Tth round, Represents the solution set of the safe side after completing the mth cycle of the Tth round. represents the cycle benefit of the efficiency square obtained after the mth cycle, It represents the cycle profit of the safe party after the mth cycle.

[0112] In step 2, the computing resources obtained by each party in the next round, i.e., round T+1, are determined based on the revenue in round T, specifically including:

[0113] After one cycle, the profit of the safe party is , the efficiency benefit is , the number of cycles in the next round is also M cycles, and the next round is used to optimize the number of cycles of the safety side and the number of cycles used to optimize efficiency They are:

[0114] (9),

[0115] (10),

[0116] In each round, the size of the previous round's profit is used to determine the allocation of computing resources for this round. The party with greater profits will obtain more computing resources, that is, more cycles.

[0117] In each round of calculation, there are M cycles, among which The second cycle is used to optimize the safety side. The second cycle is used to optimize the efficiency side. Since the profit information of the previous round cannot be obtained in the first round, the number of cycles of the safety side and the efficiency side is set to .

[0118] In each round of calculation, the population P (here "population" and "solution set" have the same meaning) obtained in the previous round is first cycled to optimize the efficiency objective, and the cycle revenue of each cycle is calculated. This process is repeated for a total of times, and obtain the population P'; then loop the obtained population P' to optimize the safety side goal, and calculate the loop benefit of each loop, and repeat this process for a total of Then calculate the profit of this round based on the cycle profit of each cycle and , and finally calculate the next round and .

[0119] like Figure 2 As shown, in step 3, each cycle in the M cycles specifically includes:

[0120] First, the individuals in the population are randomly divided into pairs for crossover operation, including two cases:

[0121] In the first case, if the Tth round of loop is to optimize the efficiency side goal, firstly, all the solutions in the population are sorted by non-dominated sorting to obtain the non-dominated sorting level of each solution on the safety side goal, where the maximum level is , the minimum level is 1; a level 1 solution means that this solution is not dominated by other solutions in the population on the goal of the safe side; the level is It means that there exists a solution in the population that can dominate the solution of the maximum level on the safe side objective.

[0122] According to the level, define the probability of any solution x in the population (x is any solution in the population in any cycle, the crossover operation here is an operation in a cycle, so x is the solution in the population in this cycle, x has nothing to do with the population P before the cycle, the population P before the cycle represents the population of each round, the population defined here is the population of a cycle in a round, and the solution here represents the planning scheme) performing a crossover operation for:

[0123] (11),

[0124] in represents the non-dominated sorting level corresponding to the solution x on the safe side; if If it is equal to 0, it means that the solution x does not perform a crossover operation. If it is greater than 0, it means that the solution x must be cross-operated, and the number of elements in x changed by the cross-operation for:

[0125] (12),

[0126] in Represents the total number of elements in x.

[0127] In the second case, if the Tth round of loop is to optimize the goal of the safety side, firstly, all the solutions in the population are sorted by non-dominated sorting to obtain the non-dominated sorting level of each solution on the efficiency side goal, where the maximum level is , the minimum level is 1. A solution with a level of 1 indicates that this solution is not dominated by other solutions in the population in terms of efficiency. It means that there is a solution in the population that can dominate the solution of the maximum level in terms of efficiency objective.

[0128] According to the level, define the probability of any solution x in the population to perform a crossover operation for:

[0129] (13),

[0130] in represents the non-dominated sorting level corresponding to solution x on the efficiency side. If solution x performs a crossover operation, the probability If it is equal to 0, it means that the solution x does not perform a crossover operation. If the probability of a crossover operation is If it is greater than 0, it means that the solution x must be cross-operated, and the number of elements in x changed by the cross-operation for:

[0131] (14),

[0132] For two solutions x and y to be crossovered (x and y are any solutions in the population, but y is not equal to x), if the probability of solution x being crossovered is And the probability of solving y for crossover operation , then both solutions x and y do not change; if the probability of solution x undergoing a crossover operation is And the probability of solving y for crossover operation , then the solution y remains unchanged. For the solution x, randomly select a position s, and then use the following formula to replace the position s with The elements are replaced by the solution y after the same element position elements, and obtain the solution after completing the crossover operation :

[0133] (15),

[0134] in represents the elements before position s in the solution x, Indicates the solution y at position s and position The elements between Indicates that the solution x is in position The following elements, Indicates the solution y at position s and position The elements between;

[0135] If the solution x performs a crossover operation, the probability And the probability of solving y for crossover operation , then the solution x remains unchanged, and the crossover operation is performed on the solution y.

[0136] For a solution y, the number of elements in y that are changed by the crossover operation for:

[0137] (16),

[0138] in Represents the total number of elements in the solution y.

[0139] For the solution y, randomly select a position s, and then use the following formula to get the solution after the crossover operation :

[0140] (17),

[0141] in represents the elements before position s in the solution y, Indicates the solution x at position s and position The elements between Indicates that the solution y is at position The following elements, Indicates the solution x at position s and position The elements between.

[0142] If the solution x performs a crossover operation, the probability And the probability of solving y for crossover operation , then for x and y, randomly select the same position s, and the position s must satisfy:

[0143] (18),

[0144] Then update them according to formulas (11) to (17).

[0145] After completing the crossover operation, the individuals in the population need to be constrained and mutated:

[0146] In order to make the solution more in line with the actual situation, the constraint repair operation is first performed on the new solution after the variable crossover operation, that is, to check whether the solution meets the basic efficiency constraints and safety constraints. The efficiency constraint means that the efficiency of the solution cannot be too low or too high, and the safety constraint means that the solution needs to have a certain degree of safety, and the safety risks cannot be too high or too low.

[0147] The efficiency constraint is to constrain the target values ​​of the two objectives of the efficiency side. ,set up The maximum and minimum tolerable values ​​are , , if the value of the first objective of a solution satisfies Then the efficiency constraint is satisfied, otherwise it is not satisfied;

[0148] The second goal of efficiency ,set up The maximum and minimum tolerable values ​​are , , if the efficiency of a solution satisfies the value of the second objective If , the efficiency constraint is satisfied, otherwise, the efficiency constraint is not satisfied.

[0149] The safety constraint is to constrain the target values ​​of the two targets of the safety party. ,set up The maximum and minimum tolerable values ​​are , , if the value of the first objective of the safety side of a solution satisfies If the security constraint is satisfied, then the security constraint is satisfied; otherwise, the security constraint is not satisfied;

[0150] The second goal for the security side ,set up The maximum and minimum tolerable values ​​are , , if the value of the second objective of a solution satisfies If the security constraint is satisfied, then the security constraint is satisfied; otherwise, the security constraint is not satisfied.

[0151] According to the efficiency constraints and safety constraints, the population is divided into a solution set that satisfies the constraints and a solution set that does not satisfy the constraints.

[0152] Then perform mutation operation. According to the efficiency constraint and safety constraint, a feasible domain S will appear in the target space. The solutions in the feasible domain S all satisfy the two constraints and are acceptable solutions that meet the actual situation. The solutions outside the feasible domain S do not satisfy the two constraints and are unacceptable solutions that do not meet the actual situation. The solution set that satisfies the constraints and the solution set that does not satisfy the constraints obtained by dividing the solution set in the previous operation are within the feasible domain S and outside the feasible domain S respectively.

[0153] For the solutions in the solution set that do not satisfy the constraints, only the first three solutions closest to the feasible region are selected for mutation operation, and half of the elements in the solution are randomly selected for update. is the solution closest to the feasible region, half of the elements in solution x will be mutated, that is, there are elements are randomly changed to new values; represents the first elements;

[0154] For the solutions in the solution set that satisfy the constraints, randomly select one of the elements of the solution to update. is any solution in the feasible domain, which will mutate an element in y, that is, one element in the solution y is randomly changed to a new value. represents the first elements.

[0155] Finally, the population is updated: if the goal is to optimize the efficiency side, the solutions in the population that are dominated by the newly obtained solution on the efficiency side are deleted, and the new solutions are added to the population. If no solutions can be deleted, the solution set remains unchanged and the new solutions are not added to the solution set. If the goal is to optimize the safety side, the solutions in the population that are dominated by the newly obtained solution on the safety side are deleted, and the new solutions are added to the population. If no solutions can be deleted, the solution set remains unchanged and the new solutions are not added to the solution set.

[0156] The overall solution process of the port planning problem includes: first, randomly initialize some solutions, that is, planning schemes, and the initial random schemes constitute a population, that is, a solution set.

[0157] Then, starting from the initial population, we enter the first round of solving. In the first round, we set the computing resources obtained by the efficiency side and the security side to be equal. Then, we solve this round based on the computing resources obtained and calculate the benefits and the computing resource allocation for the next round. Then, we solve the next round based on the allocation. By repeating this operation, we can eventually get a set of solutions that perform better in terms of efficiency and security.

[0158] The computing resource allocation strategy obtained through the "benefit" indicator can make the maximum use of limited computing resources.

[0159] In the present invention, “dominate” means that if all objective values ​​of a solution x are better than all objective values ​​of a solution x′, then x dominates x′.

[0160] In a specific embodiment of the present invention, the port planning problem is first remodeled as a two-party multi-objective problem, and then an algorithm is designed based on the idea of ​​co-evolution. The problem of how to obtain a planning scheme that guarantees both efficiency and safety in port planning is solved, and a more accurate solution can be obtained under limited computing resources.

[0161] When planning a port, although high efficiency is the goal to be pursued, safety cannot be ignored. The present invention models the problem as a two-party multi-objective problem of efficiency and safety, rather than simply establishing efficiency and safety as multi-objective problems. The following example explains the reason:

[0162] Now in the evolution process, there are two solutions in a certain population and .

[0163] untie The two target values ​​on the efficiency side are , , the two target values ​​on the safe side are , .

[0164] untie The two target values ​​on the efficiency side are , , the two target values ​​on the safe side are , .

[0165] Comparing the target values ​​of the efficiency side and the safety side, we find that Dominate the solution in terms of efficiency , solve it on the safe side reconciliation So after separating safety and efficiency, we find the solution It is a comparative solution Better, solution Can successfully evolve to efficiency .

[0166] If the problem is not decomposed into two parts when modeling, but a multi-objective problem, then the solution The target value is , , , ;

[0167] untie The target value is , , , .

[0168] It can be found that in the case of multiple objectives, for these two solutions, they do not dominate each other, cannot evolve, and cannot distinguish between good and bad.

[0169] Therefore, modeling the problem as a two-party multi-objective problem rather than a multi-objective problem can more accurately compare the quality of solutions, make it easier to achieve population evolution, improve resource utilization, and reduce computational burden.

[0170] In addition, modeling the problem as a two-party multi-objective problem can also find a more accurate solution.

[0171] like Figure 3 As shown, Figure 3 The large square in the figure represents the entire solution space, and the blue circle represents the Pareto optimal solution of the efficiency side. , the orange circle represents the Pareto optimal solution of the safe side , the green triangle represents the public Pareto optimal solution , that is, it is a Pareto optimal solution in both safety and efficiency, and it is the solution where the orange circle and the blue circle overlap. There are other solutions in the space, but they are all dominated by safety or efficiency, so in order to avoid confusion, Figure 3 Obviously, the public Pareto optimal solution is more accurate and can get a better solution on both sides.

[0172] If the problem is modeled as a multi-objective problem, then Figure 3 All the solutions of the three colors marked in the figure do not dominate each other, and the final output of the algorithm is Figure 3 These solutions If the problem is modeled as a two-party multi-objective problem, the green solution is better than the blue and orange solutions because it can dominate the other solutions on one side. The algorithm finally outputs all the green solutions. A subset of . Obviously, Compare The scope is smaller and more accurate, so the final output result of modeling it as a two-party multi-objective problem is also more accurate.

[0173] In summary, in terms of problem modeling, modeling it as a two-party multi-objective problem rather than a multi-objective problem is easier to achieve population evolution, improve resource utilization, and reduce computational burden; second, it can find a more accurate solution.

[0174] The following will use a specific example to illustrate the whole process.

[0175] The total length of the coastline is 100 meters, there are 5 ships waiting to load and unload, and the number of quay cranes is 10. Each solution in the population represents a planning scheme. First, the population is randomly initialized with a population size of 5. One of the solutions in the population is in the form of:

[0176] The first ship's berthing position: 10 meters from the starting point of the coastline, the No. 1 and No. 2 quay cranes are assigned to work, in the first order;

[0177] The second ship's berthing position: 50 meters from the starting point of the coastline, the No. 5 quay crane is assigned to work, the second in the order;

[0178] The 3rd ship berthing position: 70 meters from the starting point of the coastline, the No. 9 quay crane is assigned to work, the 3rd in order;

[0179] The 4th ship berthing position: 20 meters from the starting point of the coastline, the No. 2 quay crane is assigned to work, and the order is the 5th;

[0180] The 5th ship berthing position: 30 meters from the starting point of the coastline, the 2nd and 3rd quay cranes are assigned to work, and the order is the 4th;

[0181] The other solutions are also in the above form. Each solution is a planning scheme, including the berthing positions of the five ships, the allocation of quay cranes, and the order of loading and unloading operations, so that when the berthing positions of the ships are repeated, it is convenient to arrange the ships to carry out loading and unloading operations in sequence.

[0182] Set 10 rounds of calculation in each round. In the first round, since the benefits are unknown, the number of cycles for both the efficiency side and the safety side is 5. First, perform 5 cycles for the efficiency side. In the first cycle, since the goal of the efficiency side is optimized, the non-dominated ranking of the 5 solutions in the population on the safety side goal is first calculated, and then the 5 solutions are grouped into two pairs, and the remaining one is not crossovered. The two paired solutions are crossovered according to the rules described above. In the crossover operation, unlike directly crossovering the solution, when evolving one side, the information of the other side will be considered at the same time, and then selected according to the proportion. If the crossover is performed directly without considering the information of the other side, invalid evolution may occur. For example, when evolving the efficiency side, a solution that is better in efficiency but worse in safety is obtained through crossover. When evolving the safety side later, the solution may be made better in safety but worse in efficiency through mutation. Repeating this process may not change the level of the solution in the population, and it will not get better on both sides. Invalid operations are repeated, wasting computing resources. By performing proportional crossover using the non-dominated level information of the other party, the above-mentioned ineffective evolution can be greatly reduced, and limited computing resources can be used more effectively.

[0183] Then, according to the safety constraints and efficiency constraints, the solutions that complete the crossover operation are divided into solutions that meet the constraints and solutions that do not meet the constraints. For example, for this solution, the berthing position of the first ship: 10 meters from the starting position of the coastline, the 1st and 2nd quay cranes are assigned to work, and the order is the first; the berthing position of the second ship: 13 meters from the starting position of the coastline, the 1st quay crane is assigned to work, and the order is the second; the berthing position of the third ship: 18 meters from the starting position of the coastline, the 3rd quay crane is assigned to work, and the order is the fourth; the berthing position of the fourth ship: 11 meters from the starting position of the coastline, the 1st quay crane is assigned to work, and the order is the fifth; the berthing position of the fifth ship: 7 meters from the starting position of the coastline, the 1st quay crane is assigned to work, and the order is the third.

[0184] It can be seen that the loading and unloading are carried out in one location in succession, which meets the safety requirements, but the efficiency is very low and does not meet the efficiency constraints, so it is a solution that does not meet the constraints. Among all the solutions that do not meet the constraints, only the three solutions closest to the feasible domain are selected for update, that is, the three solutions that are most likely to meet the two constraints through mutation. After the population is divided according to the feasible domain, although the solutions outside the feasible domain cannot meet the safety constraints and efficiency constraints at the same time, they may mutate into the feasible domain through mutation, increasing the diversity of the population. And each time only the three solutions that do not meet the constraints closest to the feasible domain are selected for mutation, in order to maximize the use of computing resources. If the solution far from the feasible domain is mutated, it is very likely to be an infeasible solution after mutation, which is not practical, and the computing resources are wasted without obtaining an effective solution. Among all the solutions that meet the constraints, only one solution is selected for update. Through the previous crossover operation and the mutation of the solutions outside the feasible domain, the diversity of the population is greatly increased, but too large a population diversity will lead to a slow convergence speed, and the population cannot converge within limited resources. Therefore, to ensure convergence, only one of the solutions in the feasible domain is randomly selected for mutation. Finally, the population is updated. Since this round is to optimize the efficiency side, only the original solution and the newly generated solution that are not dominated by the efficiency side are retained. After completing this cycle, the benefits of this cycle are recorded. After all the cycles of this round are completed, the computing resource allocation of the next round of efficiency and safety sides is obtained through the results of each cycle.

[0185] After separating the efficiency party from the safety party, how to deal with the relationship between the safety party and the efficiency party is a key point, which involves the problem of resource allocation between the two parties, because the solution needs to evolve in both parties. The first thing that comes to mind is equal distribution, but the evolution difficulty of each of the two parties is unknown. It may be that the safety party only needs 5 rounds to get the Pareto optimal solution of the safety party, but the efficiency party needs 20 rounds to reach the Pareto optimal solution of the efficiency party. At this time, if the two equally distribute the computing resources for a total of 30 rounds, each party gets 15 rounds. It can be clearly seen that a large part of the computing resources allocated to the safety party is wasted, and the computing resources allocated to the efficiency party are not enough. However, if 5 rounds are allocated to the safety party and the remaining 25 rounds are allocated to the efficiency party, both parties can obtain the Pareto optimal solution, and the effect obtained is far better than the average distribution, and the computing resources are used to the maximum extent. Therefore, it is necessary to allocate resources, and it is important to better allocate to maximize the use of computing resources. When solving this problem, it is not possible to know the evolution difficulty of each party in advance, so in the actual operation process, the present invention makes full use of the information of each round, and obtains the computing resource allocation of the next round through the income of the previous round. The income is defined as the weighted sum of the target values, and it can be intuitively seen whether the population is evolving or degenerating on this side, and how much it has evolved or degenerated. If the income of the population on one side is large, it means that the population on this side has a large degree of evolution and evolution potential, and more computing resources will be allocated to this side in the next round to allow it to evolve more fully; the side with small income means that its evolution has been approaching saturation and no longer needs too many computing resources. Leaving computing resources to the party in need can maximize the use of computing resources, better meet the needs of both parties, and obtain a more accurate solution.

[0186] Each subsequent cycle is a similar process. By continuously allocating resources and evolving on both sides, the population will continue to approach the public Pareto optimal solution, that is, a solution that is not dominated by other solutions on both sides, and thus obtain a more accurate answer. The final solution is in the form of Figure 3 The consistency shown in .

[0187] The present invention provides a method for optimizing the allocation of port berths and quay crane resources based on multi-party collaborative evolution. There are many methods and ways to implement the technical solution. The above is only a preferred implementation of the present invention. It should be pointed out that for ordinary technicians in this technical field, without departing from the principle of the present invention, several improvements and modifications can be made, and these improvements and modifications should also be regarded as the scope of protection of the present invention. All components not specified in this embodiment can be implemented by existing technologies.

Claims

1. A port berth and quay crane resource allocation optimization method based on multi-party collaborative evolution, characterized in that: The following steps are involved: Step 1: Model the port planning problem as a two-party multi-objective problem on the efficiency side and the safety side; Step 2: Calculate the benefits of the efficient party and the safe party in the Tth round of the cycle, and determine the computing resources obtained by each party in the next round, i.e., the T+1th round, based on the benefits in the Tth round; Step 3: Perform the T+1th round of loops based on the computing resources obtained by the efficiency party and the security party respectively to solve the problem. The T+1th round of loops includes M loops. Step 1 includes: The first goal of the efficiency method is to minimize the stop time cost, and the formula is: where c i represents the unit time cost of the i-th ship, n represents the total number of ships, a i represents the arrival time of the i-th ship, f i represents the departure time of the i-th ship, f e1 It represents the first goal of the efficiency side; The second goal of the efficiency method is to minimize the number of idle quay cranes, as follows: Where K represents the total number of quay cranes, n represents the total number of ships, is a Boolean value indicating whether the jth quay crane is working on the ith ship at time t. If yes, then The value is 1, otherwise is 0; f e2 It represents the second goal of the efficiency side; The first goal of the safety party is to maximize the minimum distance between ships, the formula is: in represents the berth position of the i-th ship at time t, f s1 It indicates the first goal of the security party; The second goal of the safety side is to minimize the number of times the quay crane is used, and the formula is: in Is a Boolean value indicating whether the jth gantry crane is operating on the i-th ship. The value is 1, otherwise is 0; f s2 Indicates the second goal of the security party.

2. The method according to claim 1, characterized in that: In step 2, the calculation of the respective benefits of the efficiency party and the safety party in the T-th round of circulation specifically includes: For efficiency, the solution set P before the loop e =(x1,…,x N ), after one cycle, a set of solutions P is obtained e ′=(x′1,…,x′ N ), the efficiency square cycle benefit π obtained after one cycle e (P e ,P e ′): where x N represents the Nth solution before the efficiency square loops, x′ N represents the Nth solution obtained by the efficiency square after one cycle, f ek represents the kth objective of the efficiency side, f ek (P e ) represents the solution set P e The set of target values ​​of the kth target for all solutions in the efficiency square, f ek (P e ′) represents the solution set P e The set of target values ​​of the kth target on the efficiency side for all solutions in ′; For the safe side, the solution set before the loop is P s After one cycle, we get a set of solutions P s ′, the cycle benefit π of the safe party after one cycle s (P s ,P s ')for: where f sk represents the kth goal of the security party, f sk (P s ) represents the solution set P s The set of target values ​​of the kth target on the safe side for all solutions in sk (P s ′) represents the solution set P s The set of target values ​​of the kth target on the safe side for all solutions in ′; In round T, there are M cycles in total, of which M s The second cycle is used to optimize the safety side, with M e =MM s The cycle is used to optimize the efficiency side. After the Tth cycle, the efficiency side's profit π e and the benefit π of the safe party s They are: Where P em represents the solution set of the efficiency square before the mth cycle of the Tth round, P′ em represents the solution set of the efficiency square after completing the mth cycle of the Tth round, P sm represents the solution set of the safe side before the mth cycle of the Tth round, P′ sm represents the solution set of the safe square after completing the mth cycle of the Tth round, π e (P em ,P′ em ) represents the efficiency square cycle benefit after the mth cycle, π s (P sm ,P′ sm ) represents the cycle profit of the safe party after the mth cycle.

3. The method according to claim 2, characterized in that In step 2, the computing resources obtained by each party in the next round, i.e., round T+1, are determined based on the revenue in round T, specifically including: After a cycle, the profit of the safe party is π s , the efficiency party's benefit is π e , the number of cycles in the next round is also M cycles, so the number of cycles used to optimize the safety side in the next round is M s and the number of cycles M used to optimize the efficiency e They are: M e =M-M s (10), In each round of calculation, the size of the previous round's revenue is used to determine the allocation of computing resources in the current round; In each round of calculation, there are M cycles, of which M s The second cycle is used to optimize the safety side, with M e =MM s Secondary cycles are used to optimize efficiency; In the first round of calculation, set the number of cycles of the safety side and the efficiency side to M respectively. e and M s , and M e =M s ; In each round of calculation, the population P obtained in the previous round is first cycled to optimize the efficiency objective, and the cycle revenue of each cycle is calculated. This is repeated M times. e The population P' is obtained by looping the obtained population P' to optimize the safety objective and calculate the loop benefit of each loop, repeating M times in total. s times; then calculate the revenue of this round π based on the cycle revenue of each cycle e and π s , and finally calculate the next round of M e and M s .

4. The method according to claim 3, characterized in that: In step 3, each cycle in the M cycles specifically includes: First, the individuals in the population are randomly divided into pairs for crossover operation, including two cases: In the first case, if the Tth round of loop is to optimize the efficiency side goal, firstly, all the solutions in the population are sorted by non-dominated sorting to obtain the non-dominated sorting level of each solution on the safety side goal, where the maximum level is mF s , the minimum level is 1; According to the level, define the probability p of any solution x in the population to perform a crossover operation x,c for: where F x,s represents the non-dominated sorting level corresponding to the solution x on the safe side; if p x,c If it is equal to 0, it means that the solution x does not perform a crossover operation. x,c If it is greater than 0, it means that the solution x must be cross-operated, and the number of elements in x changed by the cross-operation is N. x for: Where L x Represents the total number of elements in x; In the second case, if the Tth round of loop is to optimize the safety side goal, firstly, all the solutions in the population are sorted by non-dominated sorting to obtain the non-dominated sorting level of each solution on the efficiency side goal, where the maximum level is mF e , the minimum level is 1; According to the level, define the probability p of any solution x in the population to perform a crossover operation x,c for: where F x,e represents the non-dominated sorting level corresponding to solution x on the efficiency side; if the probability p of solution x performing a crossover operation x,c If it is equal to 0, it means that the solution x does not perform a crossover operation. If the probability p of the solution x performing a crossover operation x,c If it is greater than 0, it means that the solution x must be cross-operated, and the number of elements in x changed by the cross-operation is N. x for: For two solutions x and y to be crossovered, y is not equal to x. If the probability p of solution x being crossovered is x,c = 0 and the probability p of solution y undergoing crossover operation y,c = 0, then both solutions x and y do not change; if the probability p of solution x performing a crossover operation x,c >0 and the probability p of solution y undergoing crossover operation y,c = 0, then the solution y remains unchanged. For the solution x, randomly select a position s, and then use the following formula to replace the N positions after position s. x The elements are replaced by the N solutions of y after the same element position. x elements, and we get the solution x′ after the crossover operation: where x[:s] represents the element before position s in solution x, and y[s:s+N x ] means the solution y at position s and position s+N x The elements between x[s+N x :] means the solution x is at position s+N x The following elements, y[s:L x ] means that the solution y is at position s and position L x The elements between; If the solution x has the probability p of performing a crossover operation x,c = 0 and the probability p of solution y undergoing crossover operation y,c >0, then the solution x remains unchanged, and the crossover operation is performed on the solution y; For a solution y, the number of elements in y that the crossover operation changes is N. y for: Where L y Represents the total number of elements in the solution y; For the solution y, randomly select a position s, and then use the following formula to get the solution y′ after the crossover operation: Where y[:s] represents the element before position s in solution y, and x[s:s+N y ] means the solution x at position s and position s+N y The elements between y[s+N y :] means the solution y is at position s+N y The following elements, x[s:L y ] means that the solution x is at position s and position L y The elements between; If the solution x has the probability p of performing a crossover operation x,c >0 and the probability p of solution y undergoing crossover operation y,c >0, then for x and y, randomly select the same position s, and the position s must satisfy: s≤min(L x ,L y ) (18), Then the solution x and solution y are updated according to formulas (11) to (17); After completing the crossover operation, constraint repair operations and mutation operations are performed on the individuals in the population.

5. The method according to claim 4, characterized in that In step 3, the constraint repair operation includes: checking whether the solution satisfies the basic efficiency constraint and the safety constraint. The efficiency constraint is to constrain the target values ​​of the two targets of the efficiency side. For the first target f e1 , set f e1 The maximum and minimum tolerable values ​​are If the efficiency of a solution satisfies the value of the first objective Then the efficiency constraint is satisfied, otherwise it is not satisfied; For the second efficiency objective f e2 , set f e2 The maximum and minimum tolerable values ​​are If the efficiency of a solution satisfies the value of the second objective Then the efficiency constraint is satisfied, otherwise it is not satisfied; The safety constraint is to constrain the target values ​​of the two targets of the safety party. s1 , set f s1 The maximum and minimum tolerable values ​​are If the value of the first objective of the safety side of a solution satisfies If the security constraint is satisfied, then the security constraint is satisfied; otherwise, the security constraint is not satisfied; For the second goal of the security party, s2 , set f s2 The maximum and minimum tolerable values ​​are If the value of the second objective of a solution satisfies If the security constraint is satisfied, then the security constraint is satisfied; otherwise, the security constraint is not satisfied; According to the efficiency constraints and safety constraints, the population is divided into a solution set that satisfies the constraints and a solution set that does not satisfy the constraints.

6. The method according to claim 5, characterized in that In step 3, the mutation operation includes: according to the efficiency constraint and the safety constraint, a feasible domain S will appear in the target space, and the solutions in the feasible domain S all satisfy the efficiency constraint and the safety constraint; For the solutions in the solution set that do not satisfy the constraints, only the first three solutions closest to the feasible region are selected for mutation operation, and half of the elements in the solution are randomly selected for update. is the solution closest to the feasible region, half of the elements in solution x will be mutated, that is, there are elements are randomly changed to new values; represents the Lth solution x x elements; For the solutions in the solution set that satisfy the constraints, randomly select one of the elements of the solution to update. is any solution in the feasible domain, and one element in y will be mutated, that is, one element in the solution y is randomly changed to a new value; represents the Lth y elements.

7. The method according to claim 6, characterized in that In step 3, the population is finally updated: if the goal is to optimize the efficiency side, the solutions in the population that are dominated by the newly obtained solution on the efficiency side are deleted, and the new solutions are added to the population. If no solution can be deleted, the solution set remains unchanged and the new solution is not added to the solution set; if the goal is to optimize the safety side, the solutions in the population that are dominated by the newly obtained solution on the safety side are deleted, and the new solutions are added to the population. If no solution can be deleted, the solution set remains unchanged and the new solution is not added to the solution set.

8. An electronic device, characterized in that: The method comprises a processor and a memory, wherein the memory stores program codes, and when the program codes are executed by the processor, the processor executes the steps of the method according to any one of claims 1 to 7.

9. A storage medium, characterized in that: A computer program or instruction is stored, and when the computer program or instruction is run on a computer, the steps of the method according to any one of claims 1 to 7 are executed.

Citation Information

Patent Citations

  • Container terminal berth quay crane distribution method based on set division model

    CN114580777A

  • Multi-target berth-quay crane distribution method and system

    CN118095098A