A multi-stage and multi-line ship lock scheduling optimization method based on decomposition framework
By decomposing the multi-stage multi-line lock scheduling problem into sub-problems and using taboo table adaptive large-scale neighborhood search algorithm and Bellman-Ford algorithm, the large-scale multi-stage multi-line lock scheduling problem is solved, and the solution of the rapid optimization scheduling solution is realized.
Patent Information
- Application Number
- CN202211283319.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-20
- Publication Date
- 2025-09-02
- Estimated Expiration
- 2042-10-20
AI Technical Summary
The existing technology is difficult to effectively solve the problem of multi-stage multi-line lock scheduling, especially in large-scale situations, the optimal scheduling solution cannot be quickly solved.
The method based on the decomposition framework is adopted to decompose the scheduling problem into three sub-problems: ship allocation, ship placement and shortest path. The taboo table adaptive large-scale neighborhood search algorithm and Bellman-Ford algorithm are used to solve these sub-problems, combining the adaptive large-scale neighborhood search algorithm and Bellman-Ford algorithm to optimize the scheduling scheme.
High-quality solutions for multi-stage multi-line lock scheduling can be found in a short time, especially for complex scheduling systems, which provide the possibility of rapid optimization of scheduling.
Smart Images

Figure CN116070827B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of ship scheduling, and in particular to a multi-level multi-line ship lock scheduling scheme optimization method based on a decomposition framework. Background Art
[0002] Currently, there are few research methods targeting the generalized multi-stage, multi-line shiplock scheduling problem (GSLSP). Most existing methods can only address specialized cascade lock structures, such as single-stage lock scheduling and multi-stage lock scheduling with simplified two-dimensional ship packing constraints. While mixed-integer linear programming models exist for the generalized multi-stage, multi-line shiplock scheduling problem, no high-performance solution has been proposed for large-scale problems.
[0003] Currently, existing ship scheduling methods in the prior art include:
[0004] Single-stage lock scheduling with ship placement constraints focuses on scheduling a single lock with multiple lock chambers, including lock chamber allocation, lock scheduling, and ship placement. A mixed-integer linear programming model and a logic-based Bender decomposition method were proposed, respectively, and the models were solved using a commercial solver. However, this technology can only be applied to the optimization of single-stage lock scheduling schemes, not multi-stage lock scheduling schemes.
[0005] For simplified multi-stage lock scheduling, a mixed integer linear programming model based on lock order and time indexing was established to solve the lock scheduling problem, where each lock has only one lock chamber and all lock chambers have the same properties (size, operating time). The model's efficiency was tested and confirmed on 10 small-scale examples. However, beyond simple lock configurations, this method does not consider the placement of two-dimensional ships and cannot be applied to situations where each lock may have multiple parallel lock chambers, meaning it cannot be applied to the optimization of joint scheduling solutions for multi-stage and multi-line locks.
[0006] Considering the scheduling of multi-stage locks with special lock structures, a mixed integer nonlinear programming model was established for the optimization of the scheduling scheme of two-stage locks, and a heuristic method was proposed to solve the problem. However, the model assumes that a lock contains two lock chambers, and one lock chamber only provides upstream passage services, while the other lock chamber only provides downstream passage services. Both the modeling process and the solution design process of this scheme utilize this particularity. Therefore, this scheme cannot be applied to the joint scheduling of three or more locks, nor can it be applied to the optimization problem of the scheduling scheme of two-stage locks where both lock chambers provide bidirectional passage services.
[0007] An existing mixed-integer linear programming model for the coordinated scheduling of multi-stage, multi-line locks was developed. This problem was considered a variant of the batch-based flexible job shop scheduling problem, and the lock chamber shifting was considered a two-dimensional bin packing problem with additional constraints. A mixed-integer linear programming model for optimizing the coordinated scheduling of multi-stage, single-line locks was developed and solved using a commercial solver. However, this approach was unable to solve large-scale problems within a reasonable computational time, and its performance fell short of practical scheduling requirements. Summary of the Invention
[0008] The main purpose of the present invention is to provide a multi-stage multi-line ship lock scheduling optimization method based on a decomposition framework, which can calculate the optimal scheduling plan in a relatively short time.
[0009] In order to achieve the above objects, the technical solution adopted by the present invention is:
[0010] A multi-stage and multi-line ship lock scheduling optimization method based on a decomposition framework includes the following steps:
[0011] Step S1, obtaining ship information and lock attribute information as well as objective function weight information k1, k2, k3, wherein the ship information includes ship size, ship lock route, time when the ship arrives at its starting lock, and ship navigation time between locks; the lock attribute information includes lock size, one-time service operation time, and switching time, and k1+k2+k3=1;
[0012] Step S2: Divide the ship into several ship stages according to the ship passage route obtained in step S1, and assign a separate lock number to each ship stage. Allocate each lock number to a feasible lock chamber. During the allocation process, calculate and balance the number of lock times allocated to each lock chamber, thereby obtaining an initial solution X0 of the solution structure X containing the ship-lock number allocation information, and let the current optimal solution X * =X0; and calculate the optimal solution X * The initial objective function value O b (X * ); the solution structure is expressed as follows:
[0013]
[0014] Ω is the stage set of all ships. The stage of a ship is determined by the ship's route through the lock. Each time a ship passes through the lock is a ship stage. Each Ω m (Q n ) contains the stage of ships that need to be served by a lock, m represents the lock chamber, Q n Indicates the number of locks allocated to the lock chamber;
[0015] Step S3: The optimal solution X obtained in step S2 * , the initial objective function value O b (X * ), an adaptive large-scale neighborhood search algorithm based on taboo table is used to search for the optimal scheduling solution.
[0016] Preferably, the Bellman-Ford algorithm is used to calculate X * The gate start time, and according to the formula Calculate the initial objective function value O b (X * ), f1, f2, and f3 are respectively minimizing the ship's stay time in the cascade lock system, minimizing the water consumption of lock operation, and maximizing service fairness; are the values of f1, f2, and f3 in the initial solution X0 respectively.
[0017] Preferably, the minimized ship waiting time is calculated using the following formula:
[0018] f1=∑ i∈S π i (d i -a i ),
[0019] Among them, π i represents the weight of ship i, which represents the importance of ship i; d i represents the time when ship i leaves the lock system; a i represents the arrival time of ship i;
[0020] Preferably, the minimized water consumption for ship lock operation is calculated using the following formula:
[0021]
[0022] Among them, σ m represents the weight of chamber m, Q m represents the number of locks processed in lock chamber m, N is the set of locks, n is the nth lock, M is the set of lock chambers, M n is a subset of M, representing the set of lock chambers of lock n;
[0023] Maximizing service fairness is calculated using the following formula:
[0024]
[0025] Among them, d i represents the time when ship i leaves the lock system; a i represents the arrival time of ship i; t i Indicates the total navigation time of the ship in the lock system; Ni represents the number of locks passed by ship i.
[0026] Preferably, the adaptive large-scale neighborhood search algorithm includes two destruction operators and three repair operators, the two destruction operators are the worst removal operator and the random removal operator, and the three repair operators are the deep greedy insertion operator, the k-order regret insertion operator, and the random sorting greedy insertion operator;
[0027] The step S3 specifically includes the following steps:
[0028] Step S31: Initialize the maximum number of iterations of the outer layer Ψ, the maximum number of iterations of the inner layer annealing ψ, initialize the simulated annealing temperature T0, the weight of each destruction operator and repair operator Score and the number of times used And calculate the selection probability corresponding to each destruction operator and repair operator in Represents the corresponding operator h i The weight of Represents the operator h i score;
[0029] S32. Generate a random number Determine the number of ship stages that need to be removed, where The minimum is 3, and the maximum is the number of all ship stages in the current solution X that are not in the taboo table;
[0030] S33, according to the probability of being selected p(h i ), using roulette to select one of the two destruction operators for removal The ship phase in the current solution X that does not exist in the taboo table is obtained as an incomplete solution X. - ;
[0031] S34, using roulette wheel method to select one of the three repair operators to reinsert the removed ship stage into X - to create a new solution X';
[0032] S35. Use the multiple sorting optimal ship arrangement algorithm to check whether X' satisfies the lock chamber gear constraint. If so, record the berthing position of each ship in X' in each lock chamber. Otherwise, the objective function value of X' will be set to infinity.
[0033] S36, respectively update the number of times the destruction operator and removal operator used in S33 and S34 are used
[0034] S37, use simulated annealing to accept the new solution rule to decide whether to accept X' and whether to update the optimal solution X* ;
[0035] S38. If X' is accepted in S37, update the scores of the destruction operator and removal operator used in S33 and S34 and simulated annealing temperature T;
[0036] S39. The deleted ship stage will be added to the taboo table with a probability of 50% and will be prohibited from deletion in the next ξ generation, where ξ is the taboo period;
[0037] S310, after the number of inner layer cycles reaches ψ, according to the formula Update the weight of each operator, where ∈ = [0, 1] is a randomly generated reaction factor;
[0038] S311. Determine whether the termination condition is met, that is, whether the number of outer loops is equal to Ψ. If so, output the optimal solution, that is, the optimal scheduling plan; otherwise, return to S22 to start a new inner loop; the scheduling plan includes the allocation information of ship-lock-lock chamber, the berthing position of the ship in the lock chamber, and the start time of each lock.
[0039] Preferably, step S37 is specifically performed in the following manner:
[0040] The number of times each lock chamber is opened is obtained according to the ship-lock allocation information contained in X', and X' is input into the Bellman-Ford algorithm to obtain the opening and closing time of each lock, the ship's stay time in the system, and the total sailing time, thereby obtaining the objective function value of X' O b (X'),
[0041] If O b (X') <O b (X), indicating that the new solution X' is better than the current solution, then accept X'; otherwise, generate a random number r, r∈[0,1], if Then accept X', otherwise not accept it, where T is the current simulated annealing temperature.
[0042] Preferably, in step S38, the score The update rule is:
[0043] If O b (X') <O b (X * )),but At the same time, let X * =X';
[0044] If O b (X') <O b (X),
[0045] If O b (X’) ≥ O b (X), β1, β2, β3 are pre - determined by the decision - maker and satisfy the following rule: β1 > β2 > β3.
[0046] Preferably, the update rule of the simulated annealing temperature T is:
[0047] Let T = T0 * trend. If T < Tend after update, then T = T0, where trend is the temperature - decreasing rate and Tend is the reset temperature standard.
[0048] Preferably, when calculating the objective - function value of the corresponding solution structure using the Bellman - Ford algorithm, the following steps are specifically adopted:
[0049] Step a: Convert the solution structure into a directed graph that can describe the sequence of available lock - gates. Calculate the weights of the arcs between nodes, which represent the time intervals between lock - gates, based on the time when the ship arrives at its origin lock, the navigation time of the ship between locks, the one - time service operation time of the corresponding lock, and the time for lock - change. Thus, the lock - gate scheduling problem is transformed into a shortest - path problem.
[0050] Step b: Obtain the number of lock - gates opened in each lock chamber according to the ship - lock - gate allocation information included in the solution of the solution structure. Use the Bellman - Ford algorithm to calculate the shortest path of the directed graph corresponding to the solution of the solution structure, obtain the opening time and closing time of each lock - gate, the so - called residence time of the ship in the system, and the total navigation time. Then, calculate the objective - function value of the solution corresponding to the solution structure.
[0051] Compared with the prior art, the present invention has the following beneficial effects:
[0052] The present invention designs a solution for multi - cascade multi - line lock - gate scheduling (GSLSP) from the perspective of flexible job - shop scheduling for the first time. The scheduling problem is decomposed into three sub - problems, namely the ship - allocation sub - problem, the ship - placement sub - problem, and the shortest - path sub - problem. Furthermore, a heuristic algorithm framework for effectively solving large - scale GSLSP is proposed. The adaptive large - neighborhood search algorithm based on the taboo list (TALNS) in the optimization method solves the ship - allocation sub - problem, the Bellman - Ford algorithm solves the shortest - path sub - problem, and the MOBF algorithm solves the ship - placement sub - problem.
[0053] This paper conducts experiments based on GSLSP cases, including real navigation data from the Three Gorges-Gezhouba cascade locks and the Albert Canal in Belgium, as well as previously studied GSLSP standard examples. The experiments demonstrate that for small-scale examples, the proposed method can find optimal solutions for the vast majority of cases within a very short time (10 seconds); for medium- and large-scale examples, the proposed method can find high-quality solutions within 20 seconds, facilitating the rapid optimization and scheduling of multi-tiered, multi-line locks. This means that the proposed scheduling method is capable of rapidly determining scheduling solutions, particularly for complex scheduling systems. BRIEF DESCRIPTION OF THE DRAWINGS
[0054] Figure 1 It is a cascade dispatching system with 3 locks;
[0055] Figure 2 This is a schematic diagram of the lock chamber gear constraint;
[0056] Figure 3 It is a decomposition-based GSLSP solving framework;
[0057] Figure 4 It is a directed graph that shows the processing sequence between different gates. DETAILED DESCRIPTION
[0058] The following description is intended to disclose the present invention so that those skilled in the art can implement the present invention. The preferred embodiments described below are merely examples, and those skilled in the art may conceive of other obvious variations.
[0059] A multi-stage, multi-line ship lock structure includes multiple ship locks and a river channel. The multiple ship locks are located in the river channel and are arranged in sequence upstream and downstream of the river channel. The ship locks include multiple lock chambers, which are arranged in parallel in the river channel and are independent of each other. The river channel includes tributaries, which are located between adjacent ship locks and connect to the river channel. The multiple lock chambers are of different types.
[0060] A multi-stage and multi-line ship lock scheduling optimization method based on a decomposition framework includes the following steps:
[0061] Step S1, obtain ship information and lock attribute information and determine the objective function weight information k1, k2, k3, the ship information includes ship size, ship lock route, ship arrival time at its starting lock, ship navigation time between locks, the lock attribute information includes lock size, one service operation time, and switching time. The weight of each target in the target weight information is related to the decision maker's preference and priority, and is predetermined by different actual scenarios, and k1+k2+k3=1.
[0062] Step S2: Divide the ship into several ship stages according to the ship passage route obtained in step S1, and assign a separate lock number to each ship stage. Allocate each lock number to a feasible lock chamber. In the allocation process, calculate and balance the number of lock times allocated to each lock chamber, thereby obtaining an initial solution X0 of the solution structure X containing the ship-lock time allocation information, and let the current optimal solution X * =X0; use Bellman-Ford algorithm to calculate X * The gate start time, and according to the formula Calculate the initial objective function value O b (X * ),in Set them as the values corresponding to the three objective functions f1, f2, and f3 in the initial solution, that is, the upper bounds of the three objective functions. f1, f2, and f3 are respectively minimizing the ship's residence time in the cascade lock system, minimizing the water consumption of the lock operation, and maximizing service fairness. The solution structure is expressed by the following formula:
[0063]
[0064] Ω is the stage set of all ships. The stage of a ship is determined by the ship's route through the lock. Each time a ship passes through the lock is a ship stage. Each Ω m (Q n ) contains the stage of ships that need to be served by a lock, m represents the lock chamber, Q n Indicates the number of locks assigned to this lock chamber.
[0065] Minimizing vessel waiting time is a top priority for navigation dispatchers and ship owners, especially when lock capacity is limited. This goal can be described by the vessel's detention time throughout the cascade lock system, which is the difference between the time a ship arrives at the starting lock and the time it leaves the destination lock. This is calculated using the following formula:
[0066] f1=∑ i∈S π i (d i -a i ),
[0067] Among them, π i represents the weight of ship i, which represents the importance of ship i; d i represents the time when ship i leaves the lock system; a i represents the arrival time of ship i, and S is the set of ships.
[0068] In order to minimize the water consumption of lock operation, during the dry season, the lock scheduling problem also needs to consider minimizing the water consumption during the lock operation process, which can be described by the total number of locks and calculated using the following formula:
[0069]
[0070] Among them, σ m represents the weight of the lock chamber m; Q m represents the number of locks processed in lock chamber m, N is the set of locks, n is the nth lock, M is the set of lock chambers, M n is a subset of M, representing the set of lock chambers of the nth lock.
[0071] Maximize service fairness. Lock scheduling in some specific scenarios needs to consider service fairness, which can be described by the maximum detention time of all ships. It can be expressed as follows:
[0072]
[0073] Among them, d i represents the time when ship i leaves the lock system; a i represents the arrival time of ship i; t i Indicates the total navigation time of the ship in the lock system; N i represents the number of locks passed by ship i; S represents the set of all ships.
[0074] Step S3: The optimal solution X obtained from S2 * , the initial objective function value O b (X * ) An adaptive large-scale neighborhood search algorithm based on tabu table (TALNS) is used to search for the optimal scheduling solution.
[0075] The adaptive large-scale neighborhood search algorithm based on the tabu table includes two destruction operators and three repair operators. The two destruction operators are the worst removal operator and the random removal operator. The three repair operators are the deep greedy insertion operator, the k-order regret insertion operator, and the random sorting greedy insertion operator.
[0076] The step S3 specifically includes the following steps:
[0077] Step S31, initialize the maximum number of outer iterations Ψ = max(80, total number of locks * total number of ships), the maximum number of inner annealing iterations ψ = min(40, max(total number of ship stages, 20)), initialize the simulated annealing temperature T0 = 200, the weight of each destruction operator and repair operator Score and the number of times used And calculate the selection probability corresponding to each destruction operator and repair operator in Represents the corresponding operator h i The weight of Represents the operator hi score;
[0078] S32. Generate a random number Determine the number of ship stages that need to be removed, where The minimum is 3, and the maximum is the number of all ship stages in the current solution X that are not in the taboo table;
[0079] S33, according to the probability of being selected p(h i ), using roulette to select one of the two destruction operators for removal The ship phase in the current solution X that does not exist in the taboo table is obtained as an incomplete solution X. - ;
[0080] S34, using roulette wheel method to select a removed ship phase from the three repair operators and reinsert it into X - to create a new solution X'.
[0081] There are two situations where a ship stage can be inserted: 1) an existing lock; 2) a new lock generated within the current solution, where the direction of the newly created lock must be consistent with the direction of the ship stage. Simply put, this involves moving a ship from one lock to another. An existing lock refers to a lock where there are already other ships and the locks need to be opened; a new lock refers to a lock where there are no ships and the locks do not need to be opened. When a ship stage removed from another lock is placed at that lock, a new lock is generated.
[0082] S35. Use the multiple sorting optimal ship placement algorithm (MOBF) to check whether X' satisfies the lock chamber gear constraint. If so, record the berthing position of each ship in X' in each lock chamber. Otherwise, the objective function value of X' will be set to infinity.
[0083] The MOBF algorithm is a heuristic method for solving the lock chamber blocking problem. It prioritizes ships by their width, thus allowing them to be loaded into the lock chambers in order. Furthermore, since GSLSP also considers ship docking constraints within the lock chambers, the MOBF algorithm also considers ship length and area as factors in determining their order of entry. If any vessel in X' cannot fit into the assigned lock chamber, then X' does not meet the lock chamber blocking constraints.
[0084] S36, respectively update the number of times the destruction operator and removal operator used in S33 and S34 are used
[0085] S37, use simulated annealing to accept the new solution rule to decide whether to accept X' and whether to update the optimal solution X * .
[0086] Specifically, the number of gate openings for each lock chamber is obtained based on the ship-lock allocation information included in X'. The Bellman-Ford algorithm is used to calculate the shortest path of the directed graph corresponding to X', and the opening time and end time of each lock, the sojourn time of the ship in the system, and the total navigation time are obtained, thereby calculating the objective function value O b (X’),
[0087]
[0088] where k1, k2, and k3 are the weights corresponding to the objective function, the upper bounds of each objective function, and 1, 2, and 3 are serial numbers;
[0089] If the new solution is better than the current solution (O b (X’) < O b (X)), then X’ is accepted; otherwise, a random number r is generated, r ∈ [0, 1]. If then X’ is accepted, otherwise it is not accepted, where T is the current simulated annealing temperature.
[0090] S38. If X’ is accepted in S37, update the scores of the destruction operator and the removal operator used in S33 and S34 and the simulated annealing temperature T. The update rule for the score is as follows: If the new solution is better than the current optimal solution (O b (X’) < O b (X * )), and at the same time let X * = X’; if the new solution is better than the current solution (O b (X’) < O b (X)), If the new solution is not better than the current solution (O b (X’) ≥ O b (X)), β1, β2, and β3 are determined in advance by the decision maker and satisfy the following rule: β1 > β2 > β3. The update rule for the simulated annealing temperature T is: Let T = T0 * trend. If T < Tend after the update, then T = T0, where trend is the temperature decrease rate and Tend is the reset temperature standard. In this article, trend = 0.997 and Tend = 0.01;
[0091] S39. The deleted ship stage will be added to the taboo list with a probability of 50% and will be prohibited from being deleted in the next ξ generations (i.e., the taboo period);
[0092] S310. After the number of inner loop iterations reaches ψ, according to Equation Update the weight of each operator, where the reaction factor ∈ = 0.1;
[0093] S311. Determine whether the termination condition has been met, i.e., whether the number of outer loops is equal to Ψ. If so, output the optimal solution, i.e., the optimal scheduling plan. Otherwise, return to S22 and start a new inner loop. The scheduling plan includes the ship-lock-lock chamber allocation information, the ship's berthing position in the lock chamber, and the start time of each lock.
[0094] When the Bellman-Ford algorithm is used to calculate the objective function value of the corresponding solution structure in step S2 and step S37, the following steps are specifically used:
[0095] Step a: Convert the current solution structure into a directed graph that can describe the order of currently available locks. Calculate the weights of the arcs between nodes based on the time it takes for a ship to arrive at its starting lock, the time it takes for the ship to sail between locks, the service time of the corresponding lock, and the time it takes to re-lock. This represents the time between locks, thereby converting the lock scheduling problem into a shortest path problem.
[0096] The directed graph is constructed as follows:
[0097] Let graph G = (V, A), where V represents the set of all vertices (gates) in the solution and two virtual vertices (O and *, V = Q∪{O,*});
[0098] A represents an arc set. The arcs (p, q), p, q∈Q in A include three different types: 1) A1, A1∈A represent two adjacent stages of processing a ship at gate times p and q respectively (e.g. i∈S,j∈N i ,j>1); 2) A2, A2∈A indicates that gate p is the predecessor of gate q, and they are both processed in the same gate chamber; 3) A3, A3∈A indicates the arc from the virtual gate O (starting point) to the first gate of each gate chamber and the arc from the last gate of each gate chamber to the virtual gate * (end point).
[0099] Each node q∈Q in the graph G m ,m∈M has a weight (λ q ), which is equal to the processing time of the chamber that processes the gate, where λ0 = λ * = 0. At the same time, the weight w of each arc (p,q)∈A pqis equal to the processing time between locks p and q, which is related to the type of arc classified above. Specifically, the weight of each arc (p,q)∈A1 in A1 is equal to the navigation time of the relevant ship from the lock that processes lock p to the lock that processes lock q. The relevant ship refers to the ship that passes through lock p and lock q in its adjacent stages. When more than one relevant ship passes through locks p and q, the weight of the arc is defined as the longest navigation time among them. For the arc (p,q)∈A2 in A2, the weight is defined as the time between completing lock p and opening lock q, which is related to the characteristics of the lock chamber that processes these two locks. For most bidirectionally operated lock chambers, when the operating directions of lock p and lock q are opposite and the same, respectively, the time is set to 0 and τ, respectively. m (i.e., switching time). For arcs (p,q)∈A3, their weights are all set to 0. In addition, each node q∈Q m ,m∈M and the start time s of the corresponding gate of the node q In association, the arc (p,q)∈A can represent the constraint s q ≥s p +λ p +ω pq , that is, the start time of the subsequent gate within the same gate must be greater than or equal to the sum of the start time, processing time, and setup time between gates p and q of the previous gate.
[0100] Step b: Based on the ship-lock allocation information contained in X', the number of times each lock chamber is opened is obtained. The Bellman-Ford algorithm is used to calculate the shortest path of the directed graph corresponding to X'. The opening and closing times of each lock, the ship's stay time in the system, and the total navigation time are obtained, and then the objective function value of X' is calculated.
[0101] The above shows and describes the basic principles, main features, and advantages of the present invention. Those skilled in the art should understand that the present invention is not limited to the above embodiments. The above embodiments and descriptions merely illustrate the principles of the present invention. Various changes and modifications may be made to the present invention without departing from the spirit and scope of the present invention. Such changes and modifications are intended to fall within the scope of the present invention. The scope of protection claimed by the present invention is defined by the appended claims and their equivalents.
Claims
1. A multi-stage and multi-line ship lock scheduling optimization method based on a decomposition framework, characterized by: Specifically, it includes the following steps: Step S1: Obtain the ship information, the attribute information of the ship lock, and the objective function weight information k1, k2, k3. The ship information includes the ship size, the ship's route through the lock, the time when the ship arrives at its starting lock, and the navigation time of the ship between locks. The attribute information of the ship lock includes the lock size, the one-time service operation time, and the lock change time, where k1 + k2 + k3 = 1; Step S2: Divide the ship into several ship stages according to the ship passage route obtained in step S1, and assign a separate lock number to each ship stage. Allocate each lock number to a feasible lock chamber. During the allocation process, calculate and balance the number of lock times allocated to each lock chamber, thereby obtaining an initial solution X0 of the solution structure X containing the ship-lock number allocation information, and let the current optimal solution X * =X0; and calculate the optimal solution X * The initial objective function value O b (X * ); the solution structure is expressed as follows: Ω is the stage set of all ships. The stage of a ship is determined by the ship's route through the lock. Each time a ship passes through the lock is a ship stage. Each Ω m (Q n ) contains the stage of ships that need to be served by a lock, m represents the lock chamber, Q n represents the number of locks allocated to the lock chamber; Step S3: The optimal solution X obtained in step S2 * , the initial objective function value O b (X * ), using an adaptive large-scale neighborhood search algorithm based on a tabu table to search for the optimal scheduling solution; The adaptive large-scale neighborhood search algorithm includes two destruction operators and three repair operators. The two destruction operators are the worst removal operator and the random removal operator. The three repair operators are the depth greedy insertion operator, the k-order regret insertion operator, and the random sorting greedy insertion operator; The specific steps of step S3 are as follows: Step S31, initialize the maximum number of iterations of the outer layer Ψ, the maximum number of iterations of the inner layer annealing ψ, initialize the simulated annealing temperature T0, the weight of each destruction operator and repair operator Score and the number of times used And calculate the selection probability corresponding to each destruction operator and repair operator in Represents the corresponding operator h i The weight of Represents the operator h i score; S32. Generate a random number Determine the number of ship stages that need to be removed, where The minimum is 3, and the maximum is the number of all ship stages in the current solution X that are not in the taboo table; S33, according to the probability of being selected p(h i ), using roulette to select one of the two destruction operators for removal The ship phase in the current solution X that does not exist in the taboo table is obtained as an incomplete solution X. - ; S34, using roulette wheel method to select one of the three repair operators to reinsert the removed ship stage into X - to create a new solution X'; S35: Use the multiple sorting best ship arrangement algorithm to check whether X' satisfies the lock chamber arrangement constraint. If it is satisfied, record the parking positions of each ship in each lock chamber in X'. Otherwise, the objective function value of X' will be set to infinity; S36, respectively update the number of times the destruction operator and removal operator used in S33 and S34 are used S37, use simulated annealing to accept the new solution rule to decide whether to accept X' and whether to update the optimal solution X * ; S38. If X' is accepted in S37, update the scores of the destruction operator and removal operator used in S33 and S34 and simulated annealing temperature T; S39: The deleted ship stage will be added to the taboo list with a probability of 50% and will be prohibited from being deleted in the next ξ generations, where ξ is the taboo period; S310, after the number of inner layer cycles reaches ψ, according to the formula Update the weight of each operator, where ∈ = [0, 1] is a randomly generated reaction factor; S311: Determine whether the termination condition is reached, that is, whether the number of outer loop iterations is equal to Ψ. If so, output the optimal solution, that is, the optimal scheduling plan; otherwise, return to S22 to start a new inner loop. The scheduling plan includes the allocation information of ship - lock - lock chamber, the parking position of the ship in the lock chamber, and the start time of each lock.
2. The optimization method according to claim 1, characterized in that In step S2, the Bellman-Ford algorithm is used to calculate X * The gate start time, and according to the formula Calculate the initial objective function value O b (X * ), f1, f2, and f3 are respectively minimizing the ship's stay time in the cascade lock system, minimizing the water consumption of lock operation, and maximizing service fairness; are the values of f1, f2, and f3 in the initial solution X0 respectively.
3. The optimization method according to claim 2, characterized in that The minimization of the ship waiting time is calculated using the following formula: f1=∑ i∈S π i (d i -has i ), Among them, π i represents the weight of ship i, which represents the importance of ship i; d i represents the time when ship i leaves the lock system; a i represents the arrival time of ship i; The minimization of the water consumption of the ship lock operation is calculated using the following formula: f2=∑ n∈N ∑ m∈Mn σ m Q m ; Among them, σ m represents the weight of chamber m, Q m represents the number of locks processed in lock chamber m, N is the set of locks, n is the nth lock, M is the set of lock chambers, M n is a subset of M, representing the set of lock chambers of lock n; The maximization of service fairness is calculated using the following formula: Among them, d i represents the time when ship i leaves the lock system; a i represents the arrival time of ship i; t i Indicates the total navigation time of the ship in the lock system; N i represents the number of locks passed by ship i.
4. The optimization method according to claim 3, characterized in that The specific method of step S37 is as follows: Input X' into the Bellman-Ford algorithm to obtain the opening and closing time of each lock, the number of times each lock chamber is opened, the ship's stay time in the system and the total sailing time, thereby obtaining the objective function value of X' O b (X'), If O b (X') <O b (X), indicating that the new solution X' is better than the current solution, then accept X'; otherwise, generate a random number r, r∈[0,1], if Then accept X', otherwise not accept it, where T is the current simulated annealing temperature.
5. The optimization method according to claim 4, characterized in that: In step S38, the score The update rule is: If O b (X') <O b (X * )),but At the same time, let X * =X'; If O b (X') <O b (X), If O b (X')≥O b (X), β1, β2, and β3 are predetermined by the decision maker and satisfy the following rule: β1>β2>β3.
6. The optimization method according to claim 4, characterized in that: The update rule of the simulated annealing temperature T is: Let T = T0 * trend. If T < Tend after the update, then T = T0, where trend is the temperature decrease rate and Tend is the reset temperature standard.
7. The optimization method according to claim 4, characterized in that: When calculating the objective function value of the corresponding solution structure using the Bellman - Ford algorithm, the following steps are specifically adopted: Step a: Convert the solution structure into a directed graph that can describe the sequence of current available lock times. Calculate the weights of the arcs between nodes based on the time when the ship arrives at its starting lock, the navigation time of the ship between locks, the one-time service operation time of the corresponding lock, and the lock change time to represent the interval time between each lock time, thus transforming the lock time scheduling problem into a shortest path problem; Step b: Obtain the number of lock times opened in each lock chamber according to the ship - lock allocation information included in X'. Use the Bellman - Ford algorithm to calculate the shortest path of the directed graph corresponding to X' to obtain the opening time and closing time of each lock time, the stay time of the ship in the system, and the total navigation time, and then calculate the objective function value of X'.
Citation Information
Patent Citations
Multi-step multi-line ship lock combined scheduling method based on flexible job shop scheduling
CN111652502A
Periodic family medical staff scheduling method based on tabu search algorithm
CN114496189A