Rail transit crew scheduling optimization method based on space-time continuation network

Through the method based on the space-time connection network, the flight attendant segments are divided and the optimization model is constructed. The Lagrangian relaxation algorithm is used to optimize the flight attendant scheduling in urban rail transit, which solves the problems of low manual organization efficiency and insufficient automation in the existing technology, and realizes a scientific and reasonable flight attendant scheduling plan.

CN120373729AActive Publication Date: 2025-07-25ZHEJIANG RAIL TRANSIT OPERATION MANAGEMENT GROUP CO LTD +3
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202510437642.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-09
Publication Date
2025-07-25
Estimated Expiration
2045-04-09

AI Technical Summary

Technical Problem

The existing technology has low manual organization efficiency and poor accuracy in urban rail transit flight attendants, which is difficult to adapt to the needs of operation and development, and lacks an automated adjustment mechanism, which cannot balance the needs of enterprises and the rights of flight attendants, resulting in redundant or violations of the scheduling plan.

Method used

The method based on the space-time connection network is adopted to divide the flight attendant segments, build the space-time connection network for scheduling planning, establish an optimization model, and solve it through the Lagrangian relaxation algorithm to optimize the flight attendant's scheduling plan, consider the working status and constraints of the flight attendant, and generate the optimal or better flight attendant work class.

Benefits of technology

It has achieved scientific and rationalization of urban rail transit flight attendants, reduced workload, improved the accuracy of scheduling plans and automated adjustment capabilities, balanced enterprise needs and crew rights, and reduced the dependence on human intervention.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120373729A_ABST
    Figure CN120373729A_ABST
Patent Text Reader

Abstract

The invention provides a rail transit crew scheduling optimization method based on a space-time continuing network. The method comprises the following steps: dividing crew segments of rail transit, and generating crew work classes according to the crew segments; constructing a scheduling plan space-time connection network based on crew work classes; establishing a target function of the rail transit crew scheduling plan optimization model based on the scheduling plan space-time continuation network; and solving the target function of the rail transit crew scheduling plan optimization model through a Lagrange relaxation algorithm to obtain a rail transit crew scheduling plan. According to the method, an urban rail transit working diagram is segmented according to vehicle depots and on-duty stations, generated crew segments are combined mutually to obtain corresponding crew work classes, a scheduling plan space-time connection network is constructed, a rail transit crew scheduling plan optimization model is established, and the optimization of the rail transit crew scheduling plan is realized. And finally, designing a Lagrangian relaxation algorithm solving model to effectively optimize the urban rail transit crew scheduling plan.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer application technologies, and particularly to an optimization method for crew scheduling of rail transit based on a spatio-temporal connection network. Background Art

[0002] Crew scheduling management is one of the core links in the operation management of urban rail transit. Its rationality and scientific nature are directly related to the line operation efficiency, human resource cost, and train operation safety. With the rapid expansion of the urban rail transit network scale and the continuous increase in operation density, the complexity of the crew scheduling plan and the demand for dynamic adjustment have increased significantly. How to scientifically and reasonably obtain the crew plan for crew members and achieve scientific decision-making and overall management of crew members' duty operations is a key issue to be solved in crew scheduling management.

[0003] Currently, in the compilation of urban rail transit crew scheduling plans, the existing technology mainly adopts the method of manual compilation. The conventional manual scheduling method has a large workload, low efficiency, and low accuracy, and it has been difficult to meet the requirements of the development of urban rail operation.

[0004] The existing technology mainly takes one day as a cycle in airline crew scheduling, optimizes by establishing a multi-commodity flow model with the goal of minimizing cost, and solves it through methods such as preprocessing, D-W decomposition, and branch and bound. Among the few optimization methods for urban rail transit crew scheduling plans, taking the change of the temporary operation plan as the scenario for crew scheduling plan adjustment, methods such as column generation and Lagrangian relaxation are used for solving. Existing research responds slowly to sudden scenarios, lacks a rapid rearrangement mechanism, the adjusted plan often has a high redundancy or violates crew rules, and mainly focuses on a single goal, failing to balance the enterprise's needs and crew members' rights and interests, resulting in poor fairness of the scheduling plan. At the same time, the penalty mechanism for convenient ride behavior is imperfect, and the division of shift types depends on fixed time cutting, resulting in incomplete task coverage and it is difficult to fully automatically adjust the crew scheduling plan.

[0005] The disadvantages of the above-mentioned urban rail transit crew scheduling methods in the existing technology include:

[0006] The method of manually compiling crew schedules in the existing technology has a tight compilation time, a large workload, low efficiency, and low accuracy, and this method is affected by the experience and professional qualities of the compiling personnel and has been difficult to meet the requirements of the development of urban rail operation.

[0007] The crew scheduling methods in the existing technology mainly face the problem of anonymous crew duty plans, and there is little research on the adjustment of the scheduling plan for each crew member. The existing methods are difficult to consider factors such as the current working status and working intensity of crew members, and it is also necessary to manually assign the adjusted crew duty plan to each crew member, making it difficult to fully automatically compile the crew scheduling plan. Summary of the Invention

[0008] An embodiment of the present invention provides an optimization method for the crew scheduling of rail transit based on a spatio-temporal connection network to effectively optimize the crew scheduling plan of urban rail transit.

[0009] To achieve the above object, the present invention adopts the following technical solutions.

[0010] An optimization method for the crew scheduling of rail transit based on a spatio-temporal connection network includes:

[0011] Dividing the crew segments of rail transit and generating crew work shifts according to the crew segments;

[0012] Constructing a spatio-temporal connection network for the scheduling plan based on the crew work shifts;

[0013] Establishing an objective function for an optimization model of the crew scheduling plan of rail transit based on the spatio-temporal connection network for the scheduling plan;

[0014] Solving the objective function of the optimization model of the crew scheduling plan of rail transit by the Lagrangian relaxation algorithm to obtain the crew scheduling plan of rail transit.

[0015] Preferably, the dividing the crew segments of rail transit and generating crew work shifts according to the crew segments includes:

[0016] Dividing the operation tasks to obtain crew segments by taking the depot and the stations where the crew is on duty as the dividing points for the operation diagram of urban rail transit, and combining the generated crew segments with each other into crew work shifts according to the constraint rules of the crew work shifts. The constraint rules of the crew work shifts include: the combination between crew segments needs to satisfy that the originating station of the subsequent segment must be the same as the terminal station of the previous segment in terms of space, and the originating time of the subsequent segment and the terminal time of the previous segment must satisfy a certain time interval in terms of time.

[0017] Preferably, the constructing a spatio-temporal connection network for the scheduling plan based on the crew work shifts includes:

[0018] Regarding the source point, the crew base and the divided crew segments as nodes, and establishing virtual access arcs, on-duty and off-duty arcs, on-duty and transfer arcs, connection arcs, connection and transfer arcs, rest arcs and rest and transfer arcs that meet the crew connection conditions between the nodes, so as to construct a spatio-temporal connection network for the scheduling plan;

[0019] In the time-space continuous network of the crew scheduling plan, the source point represents the virtual start and end points of the time-space continuous network of the crew scheduling plan. According to the input depot and duty stations information and the type of work shift, a pair of starting and ending points of the crew base is established for each type of work shift. Virtual arcs are created to connect the virtual starting point and the starting point of the base, representing the transition of the crew member from the initial state to the on-duty state; virtual incoming arcs connect the ending point of the base and the virtual ending point, representing the transition of the crew member from the off-duty state to the ending state; on-duty arcs connect the starting point of the base and the crew segment node, representing that the crew member goes on duty at this base and starts a day's duty task; off-duty arcs connect the crew segment node and the ending point of the base, representing that the crew member completes a day's duty task and goes off duty at this base, on-duty and ride-along arcs connect the base node and the crew segment node, representing that the crew member goes on duty at this base and rides the first task in the form of ride-along; continuous arcs connect the crew segment nodes, representing that the crew member continuously undertakes two crew segments without other activities during this period; rest and ride-along arcs connect the crew segment nodes, representing that the crew member rides the second crew segment in the form of ride-along after completing the first crew segment and takes a rest during this period; rest arcs connect the crew segment nodes, representing that the crew member takes a rest after riding the first crew segment and then rides the second crew segment.

[0020] Preferably, in the time-space continuous network of the crew scheduling plan, the continuous time and rest time constraints are considered, that is, the continuous time between two crew segments should be greater than the minimum continuous time and the sum of the continuous time and the working time of the second crew segment should be less than the maximum rest time;

[0021] In the time-space continuous network of the crew scheduling plan, the rest time constraint is considered, that is, the continuous time between two crew segments should be greater than the minimum rest time and less than the maximum rest time;

[0022] In the time-space continuous network of the crew scheduling plan, the meal time constraint is considered, that is, the actual meal time should be greater than the minimum meal time and less than the maximum meal time;

[0023] In the time-space continuous network of the crew scheduling plan, the continuous time and rest time constraints are considered, that is, the continuous time between two crew segments should be greater than the minimum continuous time, and the sum of the continuous time and the working time of the second crew segment should be greater than the minimum rest time and less than the maximum rest time.

[0024] Preferably, the objective function of the rail transit crew scheduling plan optimization model established based on the time-space continuous network of the crew scheduling plan includes:

[0025] Define the following parameters and variables based on the time-space continuous network of the crew scheduling plan:

[0026] N represents the set of all crew segments, and i is any one of them;

[0027] Let \(P\) denote the set of all crew schedules, and \(p\) be any one of them.

[0028] Denote the lower bounds of working hours for morning, noon, and evening shifts.

[0029] Denote the upper bounds of working hours for morning, noon, and evening shifts.

[0030] Denote the lower bounds of driving hours for morning, noon, and evening shifts.

[0031] Denote the upper bounds of driving hours for morning, noon, and evening shifts.

[0032] Denote the upper bound of continuous working hours at a time.

[0033] Tr max 、Tr min Denote the upper and lower bounds of break time.

[0034] Tm max 、Tm min Denote the upper and lower bounds of meal time.

[0035] Tc max 、Tc min Denote the upper and lower bounds of connection time.

[0036] Denote the lunch meal time window.

[0037] Denote the dinner meal time window.

[0038] f s Respectively denote the penalty value for driving time lower than the upper limit, the penalty value for break time exceeding the lower limit, the penalty value for meal time exceeding the lower limit, the penalty value for connection time exceeding the lower limit, and the penalty for hitchhiking.

[0039] Respectively denote the difference between the driving time of shift \(p\) and \(Td\) max the difference between the break time of shift \(p\) and \(Tr\) min the difference between the meal time of shift \(p\) and \(Tm\) min the difference between the connection time of shift \(p\) and \(Tc\) min the difference;

[0040] c out Denote the cost of crew deployment.

[0041] x p is a 0-1 decision variable. If path \(p\) is selected, then \(x\) p = 1, otherwise 0;

[0042] is a 0-1 decision variable. If the task o with the crew segment number k is covered by the path p in the form of normal multiplication, then otherwise it is 0;

[0043] Taking the minimum number of crew working shifts, the minimum non-paid time of crew members, the minimum deviation of working hours from the standard, and the minimum number of hitchhiking as the optimization objectives, the objective function of the rail transit crew scheduling plan optimization model is established as follows:

[0044]

[0045] Among them, the decision variable coefficient c p is the comprehensive cost of the path p, expressed as:

[0046]

[0047] c p is divided into three parts: The first part, c out is the fixed cost of the path p being selected, representing the attendance cost of a crew member, and achieving the effect of restricting the number of working shifts by restricting the number of selected paths; The second part, is the penalty for the deviation of the crew's driving time and non-paid time, representing the penalty for the part of the crew's driving time below the upper limit, and the penalty for the extra time of the crew's rest, meal, and connection time exceeding the lower limit of the activity time standard; The third part, fs is the penalty for hitchhiking occurring during the extension of the path p;

[0048] The constraint conditions for setting the rail transit crew scheduling plan optimization model include:

[0049] Crew segment coverage constraint, each crew segment must be and only be covered by a normal arc once to ensure that all crew segments have crew members on duty:

[0050]

[0051] Decision variable value constraint:

[0052]

[0053] Preferably, the objective function of the rail transit crew scheduling plan optimization model is solved by the Lagrangian relaxation algorithm to obtain the rail transit crew scheduling plan, including:

[0054] The Lagrangian dual problem model after setting the relaxed crew segment coverage constraint is as follows:

[0055] LD = max L(λ i )

[0056]

[0057] Among them, \(L(\lambda i )\) is the Lagrangian relaxation function, and the formula introduces the Lagrangian multiplier \(\lambda i . By continuously adjusting the Lagrangian multiplier \(\lambda i to iterate \(L(\lambda i )\), a penalty is imposed on the difficult constraints that do not satisfy the original problem in the objective function, so that the solution of \(L(\lambda i )\) gradually approaches the direction that satisfies the constraints of the original problem, and the value of \(z LR continuously increases and approaches the lower bound of the objective function of the optimized model for the crew scheduling plan of rail transit. Then, for all multipliers \(\lambda i , the corresponding \(z LR is maximized to obtain \(z LD , and the lower bound solution of the objective function is obtained;

[0058] After equivalently transforming the Lagrangian relaxation function \(L(\lambda i )\), the following formula can be obtained:

[0059]

[0060] This formula consists of two terms. The first term is the path cost of the work shift, which is calculated by correcting the node costs in the connection network according to the multiplier and searching for the shortest path that satisfies the constraints in the network; the second term is the sum of the Lagrangian multipliers of each crew segment, representing the "total task resource price", which is calculated by the number of times each task is covered in each iteration result;

[0061] The greedy-labeling method is used to generate the initial feasible solution of the objective function. The specific algorithm design is as follows:

[0062] Step1: Initialize the set of tasks that have not been covered yet, uncover_set, and set the algorithm parameter \(k = 0\);

[0063] Step2: Judge whether uncover_set is empty. If it is, enter Step6; otherwise, enter Step3;

[0064] Step3: Conduct a greedy search based on the labeling method in the network:

[0065] 3) If \(Ac i(r) \leq Ac i(r′) , then \(r\) is superior to \(r'\);

[0066] 4) If \(Ac i(r′) \leq Ac i(r) , then \(r\) is superior to \(r'\).

[0067] Step4: If the greedy search successfully generates a new path, add the new path to the column pool, update uncover_set, reset k = 0, and set the value multiplier λ of the nodes multiplied by the new path value. i = λ i − M, where M is a positive number approaching infinity, making it more difficult for the nodes that have already been value-multiplied to be value-multiplied again, and return to Step2; if a new path cannot be generated, increment k by 1 and proceed to Step5.

[0068] Step5: When k increases to a certain extent, indicating that the algorithm fails to generate a new path after multiple iterations, perform the following operations based on the value of k and return to Step2:

[0069] 5) If k > 3, set the value multiplier λ of all nodes that have not been value-multiplied i = λ i + M, making it easier for the nodes that have not been value-multiplied to be value-multiplied;

[0070] 6) If k > 5, set the convenience multiplier μ of all nodes that have been value-multiplied i = μ i + M, making it easier for the nodes that have been value-multiplied to be conveniently multiplied;

[0071] 7) If k > 10, adjust the paths in the column pool;

[0072] 8) If k > 20, proceed to Step6

[0073] Step6: If uncover_set is empty, or k > 20, the algorithm ends;

[0074] Among them, the path adjustment algorithm when k > 10 is designed as follows:

[0075] Step1: Check whether uncover_set is empty. If it is empty, proceed to Step7; otherwise, proceed to Step2;

[0076] Step2: Traverse uncover_set to obtain an un-value-multiplied node k_node, and perform a greedy search for the path from the starting point s to k_node. Traverse the labels k_labels of k_node, and check whether there are feasible labels k_valid_labels for the un-value-multiplied covered nodes. If there are, proceed to Step4; otherwise, proceed to Step3;

[0077] Step 3: Make the path from the starting point s to k_node feasible. Traverse k_labels to obtain a label k_label of the node, backtrack it to get the covered nodes need_cover_nodes in its predecessor label, traverse the paths in the column pool, and update all need_cover_nodes in the paths to be convenient to multiply, that is, vacate each need_cover_nodes in the paths in the column pool one by one to make k_label feasible, and then enter Step 4;

[0078] Step 4: Starting from k_valid_labels, search for the path from k_node to the end point t. Traverse the labels t_labels of the end point t, and check whether there are feasible labels t_valid_labels that have not been multiplied by the covered nodes. If so, enter Step 6; otherwise, enter Step 5;

[0079] Step 5: Make the path from k_node to the end point t feasible. Traverse t_labels to obtain a label t_label of the node, and repeat the specific steps of Step 3 to make t_label feasible, and then enter Step 6;

[0080] Step 6: Update uncover_set and return to Step 1;

[0081] Step 7: The path adjustment algorithm ends;

[0082] Solving L(λ i ) is equivalent to finding the set of feasible paths that satisfy the rule constraints and have the minimum path cost in the spatio-temporal network. The label method is used to solve L(λ i ), and the specific algorithm design process is as follows:

[0083] In the spatio-temporal connection network of the scheduling plan, for Set a label set L i , where L i(r) =(Ac i(r) , Ad i(r) , Acd i(r) , Aw i(r) , Ms i(r) , PreL i(r) , PreA i(r) , shift i(r) ) represents the content of the r-th label of node i, which respectively represent the cumulative cost, cumulative driving time, cumulative continuous driving time, cumulative working time, meal status, predecessor label, predecessor arc segment, and work shift type when the label extends to node i;

[0084] Step 1: Initialize the network and labels. Initialize the covering costs of all crew segment nodes in the network, that is, for Clear the label sets of all nodes in the network and initialize the labels for the base starting point ;

[0085] Step2: Label extension. Starting from the base starting point, traverse each node according to the topological order, update the label set of the current node based on the label sets of the predecessor nodes and the types of the predecessor arcs, and determine the feasibility of the label r of the current node i according to the crew rules;

[0086] Step3: Delete the dominant labels. When traversing to the current node, it is necessary to check the label set of the node according to the label dominance rules, screen out and delete the dominant labels, and only retain the non-inferior labels. For r,r′∈R i and r≠r′, the label dominance rules are as follows:

[0087] 3)Ac i(r) ≤Ac i(r′) ,Ad i(r) ≥Ad i(r′) ,Acd i(r) ≥Acd i(r′) ,Aw i(r) ≥Aw i(r′) , then r is superior to r′;

[0088] 4)Ac i(r′) ≤Ac i(r) ,Ad i(r′) ≥Ad i(r) ,Acd i(r′) ≥Acd i(r) ,Aw i(r′) ≥Aw i(r) , then r is superior to r′.

[0089] Step4: Label backtracking. When all nodes and their labels have been traversed, select the label with the smallest Ac from the label sets of the base end points of the three work shift types respectively, and backtrack according to its predecessor label to generate a work shift path with the smallest cost for the corresponding work shift type. The combination of these work shift paths with the smallest costs constitutes the final crew scheduling plan.

[0090] It is decided to use the subgradient method to update the Lagrange multipliers. The update method of the multipliers is as follows:

[0091]

[0092] where σ k represents the step size of the k-th iteration, which changes dynamically during the iteration, and its update method and the rules to be followed are as follows:

[0093] σk = σ0 / k

[0094]

[0095] Improve the current solution using the exchange operator and the deletion operator;

[0096] 3) Exchange operator

[0097] The exchange operator randomly selects two paths p1 and p2 in the current column pool, and randomly selects a path segment s1 in p1, then searches for a path segment s2 in p2 that can be exchanged with s1. Subsequently, s1 is deleted from p1 and s2 is inserted. After the exchange is successful, the new path p1' is output;

[0098] 4) Deletion operator

[0099] The deletion operator randomly selects a path p1 in the current column pool, and randomly selects a path segment s1 in p1, then deletes s1 from p1. After the deletion is successful, the new path p1' is output;

[0100] Solving the Lagrangian dual problem provides a set of feasible paths for the original problem. The upper bound solution is obtained by directly solving the original model using a solver. The initial feasible solution and all the feasible paths obtained by solving the Lagrangian dual problem during the iteration process are added to the path alternative set as the column pool, and the upper bound solution is obtained by directly solving the original model using the solver based on the obtained column pool.

[0101] It can be seen from the technical solutions provided by the embodiments of the present invention described above that the method of the present invention divides the urban rail transit operation diagram according to the depot and the stations where the crew members are on duty, combines the generated crew segments with each other to obtain the corresponding crew work shifts, constructs a spatio-temporal connection network for the crew scheduling plan, and establishes an optimization model for the urban rail transit crew scheduling plan. Finally, a Lagrangian relaxation algorithm is designed to solve the model, which can effectively optimize the urban rail transit crew scheduling plan.

[0102] Additional aspects and advantages of the present invention will be given in part in the following description, and these will become obvious from the following description, or can be understood through the practice of the present invention. Description of the Drawings

[0103] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for the description of the embodiments will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0104] Figure 1The processing flow chart of an optimization method for rail transit crew scheduling based on a spatio-temporal connection network provided by an embodiment of the present invention;

[0105] Figure 2 The schematic diagram of a spatio-temporal connection network of a scheduling plan provided by an embodiment of the present invention;

[0106] Figure 3 The solution flow chart of a Lagrangian relaxation algorithm provided by an embodiment of the present invention;

[0107] Figure 4 The solution flow chart of a greedy-labeling method algorithm provided by an embodiment of the present invention;

[0108] Figure 5 The solution flow chart of a path adjustment algorithm provided by an embodiment of the present invention. Detailed implementation manners

[0109] The following details the implementation manners of the present invention. Examples of the implementation manners are shown in the accompanying drawings, where the same or similar reference numerals represent the same or similar elements or elements with the same or similar functions from beginning to end. The implementation manners described below with reference to the accompanying drawings are exemplary and are only used to explain the present invention and should not be construed as a limitation to the present invention.

[0110] Those skilled in the art of the present technology can understand that, unless specifically stated otherwise, the singular forms "a", "an", "the" and "said" used herein may also include the plural forms. It should be further understood that the term "comprising" used in the specification of the present invention means the presence of the described features, integers, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or their groups. It should be understood that when we say an element is "connected" or "coupled" to another element, it can be directly connected or coupled to other elements, or there may also be intermediate elements. In addition, the "connection" or "coupling" used herein may include wireless connection or coupling. The phrase "and / or" used herein includes any and all combinations of one or more of the associated listed items.

[0111] Those skilled in the art of the present technology can understand that, unless otherwise defined, all terms (including technical terms and scientific terms) used herein have the same meaning as the general understanding of those of ordinary skill in the art to which the present invention belongs. It should also be understood that terms such as those defined in a general dictionary should be understood to have a meaning consistent with the meaning in the context of the prior art and will not be interpreted with an idealized or overly formal meaning unless defined as such herein.

[0112] For the convenience of understanding the embodiments of the present invention, the following will further explain and illustrate with several specific embodiments in conjunction with the accompanying drawings, and each embodiment does not constitute a limitation to the embodiments of the present invention.

[0113] An optimization method for the crew scheduling of rail transit based on a spatio-temporal connection network proposed by the present invention. First, the urban rail transit operation diagram is divided at the vehicle depot and the duty stations to divide the operation tasks into crew segments, and according to the constraint rules of the crew work shift, the generated crew segments are combined with each other to form crew work shifts. On this basis, a spatio-temporal connection network for the scheduling plan is constructed, and an optimization model for the rail transit crew scheduling plan close to the actual situation is established. Finally, a Lagrangian relaxation algorithm is designed to solve the model.

[0114] The research process of the method includes: division of crew segments and generation of work shifts; construction of a spatio-temporal connection network for the scheduling plan; establishment of an optimization model for the rail transit crew scheduling plan; design of the Lagrangian relaxation algorithm.

[0115] The processing flow chart of an optimization method for the crew scheduling of rail transit based on a spatio-temporal connection network provided by the embodiments of the present invention is as Figure 1 shown, and includes the following processing steps:

[0116] Step S1: Divide the crew segments of the rail transit and generate crew work shifts according to the crew segments.

[0117] The crew segment is the smallest establishment unit obtained by dividing the operation tasks with the vehicle depot and the duty stations as the "division points", and it is the basis for generating the crew work shift. The combination of crew segments between every two breaks is called a crew operation segment, that is, the set of crew segments for a crew member's continuous work at one time. Different combinations of crew segments will lead to different final crew work shifts. In actual operation, the number of crew segments is huge, reaching hundreds or even thousands, and the number of its combination schemes is countless.

[0118] According to the constraint rules of the crew work shift, the crew segments can be combined with each other to form crew work shifts. Usually, a crew member's crew tasks for one day only need to be on duty for one work shift. A work shift can be composed of multiple crew segments belonging to different car bodies and not related to each other in time and space. However, there are intervals in time sequence and space stations during the connection process of crew segments, and there are many involved constraint conditions, and the solution is also relatively difficult. In different crew environments, the scheduling problem should also consider the differences between various operation environments, and the corresponding established models and solution methods are also different. The final result of the crew scheduling plan is to solve the optimal or relatively optimal set of crew work shifts.

[0119] Step S2: Construct a spatio-temporal connection network for the scheduling plan based on the crew work shift.

[0120] The schematic diagram of a scheduling plan spatio-temporal connection network constructed in an embodiment of the present invention is as follows Figure 2 shown. Define the parameters of the following scheduling plan spatio-temporal connection network:

[0121] For all points in the network, they all have t i 、 six attributes, respectively representing the departure time, arrival time, departure station, arrival station, working time and node type of the crew segment. For all types of nodes, there are

[0122] In addition to the common node attributes, the start and end nodes of the crew base also have the attribute shift i (represented by 1, 2, and 3 for day, night, and early shifts respectively).

[0123] According to the working shift type to which the crew segment belongs, construct the corresponding number of task nodes for all crew segments. In addition to the common node attributes, the task nodes also have the attributes k, t i 、l i 、 timetable i , respectively representing the crew segment number to which the task belongs, node cost, running time, running distance, starting point of the base to which it belongs, ending point of the base to which it belongs, and train number to which it belongs. All task nodes together form the set V r , for is the departure time of the first station in the crew segment, is the arrival time of the last station, is the departure station of the first station, is the arrival station of the last station.

[0124] For all arcs in the network, they all have t ij 、 two attributes, respectively representing the connection time and arc type. For all types of arcs, there are

[0125] Tc min 、Tc max respectively represent the minimum and maximum connection times; Tr min 、Tr max respectively represent the minimum and maximum rest times; T m represents the actual dining time, Tm min 、Tm max respectively represent the minimum and maximum dining times.

[0126] (1) Construct the connection network:

[0127] Step1: Establish nodes

[0128] 1) Source points

[0129] The source points represent the virtual start and end points of the network, denoted as and For For

[0130] 2) Crew base nodes

[0131] According to the input depot and crew working station information and the working shift type, a pair of start and end nodes of the crew base are established for each working shift type. All the start and end nodes of the crew base respectively form the set Among them, for is the station name; for are the same station name.

[0132] 3) Crew segment nodes

[0133] First, according to the input train operation diagram, divide it with the depot and crew working stations as the "cutting points" to obtain the set of crew segments. Since the departure and arrival bases of different working shifts are different, it is necessary to define the working shift type to which the crew segment belongs. However, if the crew segments are directly divided with a certain time point as the cutting point, there will be some crew segment nodes near the cutting point that cannot be connected to the departure and arrival base nodes, resulting in the situation that the crew segment nodes cannot be covered. Therefore, it is decided to divide the tasks into working shift types in the form of time intervals and define the start time of each type of working shift in the form of time intervals. There will be an overlapping interval between the start times of the two consecutive working shift types. When the start time of a task is in the overlapping interval of the two working shifts, it is defined that the task belongs to both of these two working shift types; when the start time of a task is in the non-overlapping interval, it is defined that the task belongs to the working shift type of the interval where the start time is located.

[0134] Finally, all the node sets are V.

[0135] Step2: Establish connection arcs

[0136] 1) Virtual access arcs: The virtual access arcs are the arcs connecting the source points and the base nodes. Among them, the virtual out arc connects the virtual start point and the base start point, indicating the transition of the crew member from the initial state to the on-duty state, and the virtual in arc connects the base end point and the virtual end point, indicating the transition of the crew member from the off-duty state to the end state. The construction method of the virtual access arcs is as follows: For Create a virtual outgoing arc, and all virtual outgoing arcs form a set For Create a virtual incoming arc, and all virtual incoming arcs form a set

[0137] 2) Outgoing and return arcs: The outgoing and return arcs are the arcs connecting the base node and the crew segment node. Among them, the outgoing arc connects the base starting point and the crew segment node, indicating that the crew member starts a day's duty at this base and begins the day's operation task. The return arc connects the crew segment node and the base ending point, indicating that the crew member completes a day's operation task and returns to this base. The construction method of the outgoing and return arcs is as follows: For j ∈ V r , satisfying shift i = shift j , create an outgoing arc, and all outgoing arcs form a set For Satisfying Create a return arc, and all return arcs form a set For c ij = 0.

[0138] 3) Outgoing hitchhiking arc: The outgoing hitchhiking arc is similar to the outgoing arc, which is the arc connecting the base node and the crew segment node, indicating that the crew member starts duty at this base and operates the first task in the form of hitchhiking. The construction method of the outgoing hitchhiking arc is as follows: For j ∈ V r , satisfying Create an outgoing hitchhiking arc, and all outgoing hitchhiking arcs form a set

[0139] 4) Connection arc: The connection arc is the arc connecting the crew segment nodes, indicating that the crew member continuously undertakes two crew segments, but does not take breaks, have meals, or engage in other activities during this period. Therefore, the connection time of the connection arc mainly includes the crew member's handover time and the waiting time for the next crew segment operation. The construction method of the connection arc is as follows: For j ∈ V r / i, satisfying Then create a task arc. All connection arcs form a set A c .

[0140] 5) Connection hitchhiking arc: The connection hitchhiking arc is the arc connecting the crew segments, indicating that the crew member hitchhikes the second crew segment after completing the first crew segment, and does not take breaks during this period. The construction method of the connection hitchhiking arc is as follows: For j ∈ V r / i, satisfying Then a task arc is established. That is, when the connection time between two crew segments meets the minimum connection time limit, and at the same time the sum of the connection time and the working time of the second crew segment does not exceed the maximum rest time limit, the connecting hitchhiking arc can be connected. All connecting hitchhiking arcs form set A cs 。

[0141] 6) Rest arc: The rest arc is also an arc connecting crew segment nodes. Different from the task arc, the rest arc indicates that the crew member takes a rest after serving the first crew segment and then serves the second crew segment. Therefore, the connection time of the rest arc is mainly the rest time. The construction method of the rest arc is as follows: For j ∈ V r / i, satisfying Then a rest arc is established. All rest arcs form set A r 。

[0142] It should be noted that dining, as a special rest activity, has similar connection conditions to the rest arc. Therefore, when constructing the network, the dining arc is not specifically depicted, but is included in the rest arc to avoid excessive network scale and redundancy. However, since dining will change the dining state of the crew member, it is necessary to determine whether the rest arc can be used for dining when constructing the rest arc. By setting an additional attribute φ ij to represent, for satisfying Tm min ≤ T m ≤ Tm max , it is considered that the rest arc can be used for dining, φ ij = 1, otherwise φ ij = 0.

[0143] T m has different calculation methods in different scenarios. According to the relationship between the connection time T conn and the dining time window , the actual dining time T m can be divided into three cases. Case one is that part of the connection time is within the dining time window, then T m or Two is that the whole connection time is within the dining time window, then T m = T conn ; Three is that the connection time completely covers the dining time window, then In this case, the connection time is too long, and the actual dining time far exceeds the minimum dining time, which means an increase in non-paying time and affects the work efficiency of the crew member. Therefore, this case is not considered in this paper. By calculating T m to determine the value of φ ij , it can be determined whether the rest arc (i, j) can be used for dining.

[0144] 7. Rest layover arc: The rest layover arc is the arc connecting between crew segments, indicating that after the crew member completes the first crew segment, they take a rest during the layover and then take the second crew segment. The construction method of the rest layover arc is as follows: For j ∈ V r / i, satisfying Then a rest layover arc is established, that is, when the connection time between two crew segments meets the minimum connection time limit, and at the same time, the sum of the connection time and the working time of the second crew segment meets both the minimum and maximum rest time limits, the rest layover arc can be connected. Similar to the rest arc, the rest layover arc also includes the situation of dining, and the dining judgment rule is the same as that of the rest arc and will not be described repeatedly. All rest layover arcs form a set A rs .

[0145] Denote all arc sets as A.

[0146] Step 3: Construct the connection network, denoted as G(V, A).

[0147] Step S3. Based on the space-time connection network of the crew scheduling plan, establish the objective function of the rail transit crew scheduling plan optimization model.

[0148] (1) Define the following parameters and variables:

[0149] N represents the set of all crew segments, and i is any one of them.

[0150] P represents the set of all crew shifts, and p is any one of them.

[0151] Represents the lower limit of the working hours for morning, noon, and evening shifts.

[0152] Represents the upper limit of the working hours for morning, noon, and evening shifts.

[0153] Represents the lower limit of the driving hours for morning, noon, and evening shifts.

[0154] Represents the upper limit of the driving hours for morning, noon, and evening shifts.

[0155] Represents the upper limit of the continuous working hours at a time.

[0156] Tr max 、Tr min Represents the upper and lower limits of the rest time.

[0157] Tm max 、Tm min Represents the upper and lower limits of the dining time.

[0158] Tc max 、Tc min represent the upper and lower limits of the connection time.

[0159] represent the lunch dining time window.

[0160] represent the dinner dining time window.

[0161] f s respectively represent the penalty value for driving time below the upper limit, the penalty value for rest time exceeding the lower limit, the penalty value for dining time exceeding the lower limit, the penalty value for connection time exceeding the lower limit, and the penalty for free riding.

[0162] respectively represent the difference between the driving time of shift p and Td max the difference between the rest time of shift p and Tr min the difference between the dining time of shift p and Tm min the difference between the connection time of shift p and Tc min the difference.

[0163] c out represents the cost of crew deployment.

[0164] x p is a 0-1 decision variable. If path p is selected, then x p = 1, otherwise 0.

[0165] is a 0-1 decision variable. If task i with the crew segment number k is covered by path p in the form of normal value multiplication, then otherwise 0.

[0166] (2) Objective function of the rail transit crew scheduling plan optimization model

[0167] The optimization objective of the model is to minimize the number of crew work shifts, minimize the non-paid time of crew members, minimize the deviation of working time from the standard, and minimize the number of free rides. The comprehensive expression of the objective function is as follows:

[0168]

[0169] Among them, the decision variable coefficient c p is the comprehensive cost of path p, which can be specifically expressed as:

[0170]

[0171] c p can be divided into three parts: The first part, c outis the fixed cost of path p being selected, which can be understood as the attendance cost of a flight attendant. By limiting the number of selected paths, the effect of limiting the number of work shifts is achieved. The penalty for crew driving time and non-paid time deviation mainly includes the penalty for crew driving time below the upper limit, and the penalty for crew rest, meal, and connection time exceeding the lower limit of the activity time standard. The third part, fs, is the penalty for free riding during the extension of path p.

[0172] (3) Constraints of the optimization model for rail transit crew scheduling

[0173] Crew segment coverage constraint: each crew segment must be covered by a normal arc only once, ensuring that all crew segments have crew members on duty:

[0174]

[0175] Decision variable value constraints:

[0176]

[0177] Step S4: Solve the objective function of the above rail transit crew scheduling optimization model by Lagrangian relaxation algorithm to obtain the rail transit crew scheduling plan.

[0178] Based on the requirements of crew scheduling problem on solution quality and solution speed, the Lagrangian relaxation algorithm is used to solve the crew scheduling problem. By relaxing the "difficult constraints" in the model, the original problem is decomposed into a set of time-space shortest path sub-problems of multiple independent work shifts. While removing the coupling between sub-problems, the solution quality and efficiency are guaranteed. Figure 3 A Lagrangian relaxation algorithm solution flow chart provided in an embodiment of the present invention.

[0179] (1) Model expression of Lagrangian dual problem

[0180] The Lagrangian dual problem model LD after relaxing the crew segment coverage constraint is as follows:

[0181] LD=max L(λ i )

[0182]

[0183] In the above model, L(λ i ) is the Lagrangian relaxation function, and the formula introduces the Lagrangian multiplier λ i , since L(λ i) Compared with the original problem, some constraints are relaxed, so it has a larger solution space. Its solution is often an infeasible solution to the original problem, but the value of its objective function z LR can be used as a lower bound for the value of the objective function z of the original problem. By continuously adjusting the Lagrange multiplier λ i and iterating on L(λ i ), penalties are imposed on the difficult constraints that do not satisfy the original problem in the objective function, so that the solution of L(λ i ) gradually approaches the direction of satisfying the constraints of the original problem, and the value of z LR constantly increases and approaches the lower bound of the original problem. Then, for all multipliers λ i , the corresponding z LR find the maximum value z LD , and the lower bound solution of the original problem can be obtained.

[0184] After equivalently transforming the Lagrange relaxation function L(λ i ), the following formula can be obtained:

[0185]

[0186] This formula consists of two terms. The first term is the path cost of the work shift, which can be obtained by correcting the node costs in the successor network according to the multiplier and searching for the shortest path that satisfies the constraints in the network; the second term is the sum of the Lagrange multipliers of each crew segment, representing the "total task resource price", which can be calculated by the number of times each task is covered in each iteration result.

[0187] (2) Generation of the initial feasible solution

[0188] The greedy-labeling method is used to generate the initial feasible solution of the original problem. The specific algorithm design is as follows:

[0189] Step1: Initialize the set of currently uncovered tasks uncover_set, and set the algorithm parameter k = 0;

[0190] Step2: Judge whether uncover_set is empty. If it is, enter Step6; otherwise, enter Step3;

[0191] Step3: Conduct a greedy search based on the label-setting method in the network. Different from the general label-setting method, the label domination principle of the greedy search only retains the path cost item, so that the algorithm can quickly generate a path with a lower cost, that is:

[0192] 5) Ac i(r) ≤Ac i(r′) , then r is better than r′;

[0193] 6) Ac i(r′) ≤Ac i(r) , then r is better than r′.

[0194] Step 4: If the greedy search successfully generates a new path, add the new path to the column pool, update uncover_set, reset k = 0, and set the value multiplier λ of the node multiplied by the new path value i = λ i − M (M is a positive number approaching infinity), making it more difficult for the nodes that have already been value - multiplied to be value - multiplied again, and return to Step 2; if a new path cannot be generated, increment k by 1 and proceed to Step 5;

[0195] Step 5: When k increases to a certain extent, indicating that the algorithm fails to generate a new path after multiple iterations, perform the following operations based on the value of k and return to Step 2:

[0196] 9) If k > 3, set the value multiplier λ of all nodes that have not been value - multiplied i = λ i + M, making the nodes that have not been value - multiplied more likely to be value - multiplied;

[0197] 10) If k > 5, set the convenience multiplier μ of all nodes that have already been value - multiplied i = μ i + M, making the nodes that have already been value - multiplied more likely to be conveniently multiplied;

[0198] 11) If k > 10, adjust the paths in the column pool;

[0199] 12) If k > 20, proceed to Step 6

[0200] Step 6: If uncover_set is empty, or k > 20, the algorithm ends.

[0201] The flowchart of the greedy - labeling algorithm provided by the embodiment of the present invention is as Figure 4 shown.

[0202] Among them, when k > 10, the path adjustment algorithm is designed as follows:

[0203] Step 1: Check whether uncover_set is empty. If it is empty, proceed to Step 7; otherwise, proceed to Step 2;

[0204] Step 2: Traverse uncover_set to obtain an un - value - multiplied node k_node, and perform a greedy search for the path from the starting point s to k_node. Traverse the labels k_labels of k_node, and check whether there are feasible labels k_valid_labels for the un - value - multiplied covered nodes. If there are, proceed to Step 4; otherwise, proceed to Step 3;

[0205] Step 3: Make the path from the starting point s to k_node feasible. Traverse k_labels, obtain a label k_label of a node, backtrack it, and obtain the covered nodes need_cover_nodes in its predecessor labels. Traverse the paths in the column pool, and update all need_cover_nodes in the paths to be convenient for multiplication, that is, vacate need_cover_nodes in the paths in the column pool one by one to make k_label feasible, and then enter Step 4.

[0206] Step 4: Starting from k_valid_labels, search for the path from k_node to the end point t. Traverse the labels t_labels of the end point t, and check whether there are feasible labels t_valid_labels that have not been multiplied by the covered nodes. If so, enter Step 6; otherwise, enter Step 5.

[0207] Step 5: Make the path from k_node to the end point t feasible. Traverse t_labels, obtain a label t_label of a node, and repeat the specific steps of Step 3 to make t_label feasible, and then enter Step 6.

[0208] Step 6: Update uncover_set and return to Step 1.

[0209] Step 7: The path adjustment algorithm ends.

[0210] The flow chart of a path adjustment algorithm provided by an embodiment of the present invention is as Figure 5 shown.

[0211] (2) Lagrangian dual problem solving method

[0212] As can be seen from the above analysis, the key to solving the LD problem lies in obtaining the optimal solution of L(λ i ) in each iteration. From the structure of L(λ i ), it can be seen that to solve L(λ i) is equivalent to finding the set of feasible paths that satisfy the rule constraints and have the least path cost in the spatio-temporal network, which is a resource-constrained shortest path problem. Since there are multiple resource constraints in the crew scheduling problem (such as working hours, consecutive working hours, break time, etc.), when using the labeling method to solve such problems, the consumption of various resources of the current node can be represented in the form of a label set. As the label extends, the path is gradually expanded. By performing a feasibility check on the label of the current node in each step of the extension, paths that do not meet the resource constraints can be filtered out, reducing the generation of invalid paths. At the same time, due to the existence of multiple types of penalty terms in the objective function of the constructed model, and different penalty values are set for activities such as breaks and meals that exceed the limit, the labeling method allows corresponding penalty values to be applied according to different arc types during the path extension process, flexibly adjusting the path cost. In addition, by performing a dominance check on the labels during the path extension process, dominant labels can be filtered out in advance, improving the solution efficiency. Therefore, the labeling method is used to solve L(λ i ) as follows: The specific algorithm design process is as follows:

[0213] In the connection network, for Set a label set L i , where L i(r) =(Ac i(r) , Ad i(r) , Acd i(r) , Aw i(r) , Ms i(r) , PreL i(r) , PreA i(r) , shift i(r) ) represents the content of the r-th label of node i, which respectively represent the cumulative cost, cumulative driving time, cumulative consecutive driving time, cumulative working time, meal status, predecessor label, predecessor arc segment, and work shift type when the label extends to node i.

[0214] Step1: Initialize the network and labels. Initialize the covering cost of all crew segment nodes in the network, that is, for Clear the label sets of all nodes in the network, and perform label initialization on the base starting point as shown in Table 1.

[0215] Table 1 Virtual starting point label initialization method

[0216]

[0217] Step 2: Label Extension. Starting from the base starting point, traverse each node according to the topological order, update the label set of the current node based on the label sets of the predecessor nodes and the types of the predecessor arcs. The update method is shown in Table 2, and determine the feasibility of the label r of the current node i according to the crew rules. The determination rules are shown in Table 3. Among them, Rule 1 means that when the current label belongs to the day shift or night shift type, if the departure time of the crew segment represented by the current node is later than the lunch or dinner time window, and the label dining status is not dining, it means that the work shift does not meet the dining constraints, and it is determined that the label is not feasible; Rule 2 means that the cumulative continuous driving time of the current label exceeds the rule limit, so it is determined that the label is not feasible; Rule 3 means that when the shift finishes work, if the cumulative driving time does not meet the lower limit of the driving time or the cumulative working time does not meet the lower limit of the working time, it is determined that the label is not feasible; Rule 4 means that when the shift finishes work, if the cumulative driving time exceeds the upper limit of the driving time or the cumulative working time exceeds the upper limit of the working time, it is determined that the label is not feasible; Rule 5 means that when the shift finishes work, the work shift type of the current label must be the same as the work shift type of the base end point, otherwise the label is not feasible, ensuring that the label starting from the base starting point of a specific work shift type can extend to the corresponding base end point.

[0218] Table 2 Label Update Method

[0219]

[0220]

[0221] Table 3 Label Infeasibility Determination Rules

[0222]

[0223]

[0224] Step 3: Delete Dominant Labels. When traversing to the current node, it is necessary to check the label set of the node according to the label dominance rule, screen out and delete the dominant labels, and only retain the non-inferior labels, so as to control the scale of the labels and speed up the path search. For r, r′ ∈ R i and r ≠ r′, the label dominance rules are as follows:

[0225] 5) Ac i(r) ≤ Ac i(r′) , Ad i(r) ≥ Ad i(r′) , Acd i(r) ≥ Acd i(r′) , Aw i(r) ≥ Aw i(r′) , then r is superior to r′;

[0226] 6) Aci(r′) ≤Ac i(r) , Ad i(r′) ≥Ad i(r) , Acd i(r′) ≥Acd i(r) , Aw i(r′) ≥Aw i(r) , then r is superior to r'.

[0227] Step4: Label backtracking. When all nodes and their labels have been traversed, select the label with the smallest Ac from the set of base end labels of the three types of work shifts respectively, and backtrack according to its predecessor label, then a work shift path with the minimum cost corresponding to the work shift type can be generated.

[0228] (3) Lagrange multiplier update method

[0229] Since in practical optimization problems, the Lagrange dual function is often non-smooth, the subgradient method can handle non-smooth situations well. Therefore, it is decided to use the subgradient method to update the Lagrange multiplier, and the update method of the multiplier is as follows:

[0230]

[0231] where σ k represents the step size of the k-th iteration, which changes dynamically during the iteration, and its update method and the rules to be followed are as follows:

[0232] σ k = σ0 / k

[0233]

[0234] (4) Improving the lower bound solution of the neighborhood search algorithm

[0235] The Lagrange relaxation algorithm may fall into a local optimal solution during the iteration and fail to find the global optimal solution. The neighborhood search algorithm makes local transformations through functions and moves from one solution to another in the search space. If a suitable neighborhood structure and search strategy are defined, there is a chance to jump out of the region of the local optimal solution, explore other parts of the solution space, and increase the possibility of finding a better solution. Therefore, an exchange operator and a deletion operator are designed to improve the current solution.

[0236] 5) Exchange operator

[0237] The exchange operator randomly selects two paths p1, p2 in the current column pool, and randomly selects a path segment s1 in p1, searches for a path segment s2 in p2 that can be exchanged with s1, then deletes s1 from p1 and inserts s2. After the exchange is successful, the new path p1' is output.

[0238]

[0239] 6) Deletion operator

[0240] The deletion operator randomly selects a path p1 from the current column pool and randomly selects a path segment s1 in p1, deletes s1 from p1, and outputs a new path p1′ after successful deletion.

[0241]

[0242]

[0243] (5) Method for obtaining the Lagrangian upper bound solution

[0244] Solving the Lagrangian dual problem provides a set of feasible paths for the original problem, and the upper bound solution can be obtained by directly solving the original model using a solver. First, the initial feasible solution and all feasible paths obtained by solving the Lagrangian dual problem during the iteration process are added to the path alternative set as the column pool. Then, based on the obtained column pool, the solver is called to directly solve the original model to obtain the upper bound solution.

[0245] In summary, compared with the existing method of manually adjusting the crew scheduling plan, the embodiment of the present invention greatly improves the efficiency of adjusting the crew scheduling plan by constructing and solving an optimization model.

[0246] When constructing the model of the present invention, objectives such as the number of crew work shifts, non-paid time of crew members, deviation degree of crew members' working time from the standard, and the number of deadhead trips are comprehensively considered, making the obtained crew scheduling plan more scientific and reasonable.

[0247] The Lagrangian relaxation algorithm designed by the present invention can solve the crew scheduling plan adjustment model, and has the characteristics of good generality, good solution quality, and high solution efficiency.

[0248] Those of ordinary skill in the art can understand that the drawings are only schematic diagrams of an embodiment, and the modules or processes in the drawings are not necessarily essential for implementing the present invention.

[0249] From the description of the above embodiments, those skilled in the art can clearly understand that the present invention can be implemented by means of software plus a necessary general hardware platform. Based on such an understanding, the technical solution of the present invention, in essence or the part that contributes to the prior art, can be embodied in the form of a software product, which can be stored in a storage medium such as ROM / RAM, magnetic disk, optical disk, etc., including several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in various embodiments or some parts of the embodiments of the present invention.

[0250] Each embodiment in this specification is described in a progressive manner. For the same or similar parts among the embodiments, reference can be made to each other, and the key point of each embodiment is to illustrate the differences from other embodiments. In particular, for the device or system embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and for the relevant parts, reference can be made to the description of the method embodiments. The device and system embodiments described above are only illustrative. The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. A person of ordinary skill in the art can understand and implement it without creative work.

[0251] As mentioned above, the above are only the preferred specific embodiments of the present invention, but the protection scope of the present invention is not limited thereto. Any changes or substitutions that can be easily thought of by those skilled in the art within the technical scope disclosed by the present invention should be covered by the protection scope of the present invention. Therefore, the protection scope of the present invention should be subject to the protection scope of the claims.

Claims

1. An optimization method for the crew scheduling of rail transit based on a spatio-temporal connection network, characterized in that, Including: Dividing the crew segments of rail transit and generating crew work shifts according to the crew segments; Constructing a space-time connection network for the crew scheduling plan based on the crew work shifts; Establishing the objective function of the optimization model for the rail transit crew scheduling plan based on the space-time connection network of the crew scheduling plan; Solving the objective function of the optimization model for the rail transit crew scheduling plan through the Lagrangian relaxation algorithm to obtain the rail transit crew scheduling plan.

2. The method according to claim 1, wherein The dividing of the crew segments of rail transit and generating crew work shifts according to the crew segments includes: Taking the vehicle depot and the duty stations as the segmentation points for the urban rail transit operation diagram, dividing the operation tasks to obtain crew segments, and combining the generated crew segments with each other according to the constraint rules of the crew work shifts. The constraint rules of the crew work shifts include: the combination between crew segments needs to satisfy that the originating station of the subsequent segment must be the same as the terminating station of the previous segment in terms of space, and the originating time of the subsequent segment and the terminating time of the previous segment must satisfy a certain time interval in terms of time.

3. The method according to claim 2, wherein The constructing of the space-time connection network for the crew scheduling plan based on the crew work shifts includes: Regarding the source point, crew bases, and the segmented crew segments as nodes, and establishing virtual access arcs, on-duty and off-duty arcs, on-duty and relief arcs, connection arcs, connection and relief arcs, rest arcs, and rest and relief arcs that meet the crew connection conditions between each node, so as to construct the space-time connection network for the crew scheduling plan; In the space-time connection network for the crew scheduling plan, the source point represents the virtual start and end points of the space-time connection network for the crew scheduling plan. According to the input vehicle depot and duty station information and work shift types, a pair of starting and ending points of the crew base is established for each work shift type. A virtual out arc is established to connect the virtual starting point and the starting point of the base, indicating the transition of the crew member from the initial state to the on-duty state; a virtual in arc is established to connect the ending point of the base and the virtual ending point, indicating the transition of the crew member from the off-duty state to the ending state; an on-duty arc is established to connect the starting point of the base and the crew segment node, indicating that the crew member goes on duty at this base and starts a day's duty task; an off-duty arc is established to connect the crew segment node and the ending point of the base, indicating that the crew member completes a day's duty task and goes off duty at this base. The on-duty and relief arc is established to connect the base node and the crew segment node, indicating that the crew member goes on duty at this base and performs the first task in the form of relief; the connection arc is established to connect the crew segment nodes, indicating that the crew member continuously undertakes two crew segments without other activities during this period; the rest and relief arc is established to connect the crew segment nodes, indicating that the crew member performs the second crew segment in the form of relief after completing the first crew segment and takes a rest during this period; the rest arc is established to connect the crew segment nodes, indicating that the crew member takes a rest after performing the first crew segment and then continues to perform the second crew segment.

4. The method according to claim 3, characterized in that, In the space-time connection network for the crew scheduling plan, the connection time and rest time constraints are considered, that is, the connection time between two crew segments should be greater than the minimum connection time and the sum of the connection time and the working time of the second crew segment should be less than the maximum rest time; In the space-time connection network for the crew scheduling plan, the rest time constraint is considered, that is, the connection time between two crew segments should be greater than the minimum rest time and less than the maximum rest time; In the space-time continuous network of the crew scheduling plan, the dining time constraint is considered, that is, the actual dining time should be greater than the minimum dining time and less than the maximum dining time; In the space-time continuous network of the crew scheduling plan, the connection time and break time constraints are considered, that is, the connection time between two crew segments should be greater than the minimum connection time, and the sum of the connection time and the working time of the second crew segment should be greater than the minimum break time and less than the maximum break time.

5. The method according to claim 4, characterized in that, The objective function of the rail transit crew scheduling plan optimization model established based on the space-time continuous network of the crew scheduling plan includes: Define the following parameters and variables based on the space-time continuous network of the crew scheduling plan: N represents the set of all crew segments, and i is any one of them; P represents the set of all crew shifts, and p is any one of them; Indicate the lower limits of working hours for morning, afternoon, and night shifts; Indicate the upper limits of working hours for morning, afternoon, and night shifts; Indicate the lower limits of driving times for early, middle, and late shifts; Indicate the upper limits of driving time for early, middle, and late shifts; Indicates the upper limit of continuous working time per operation; Tr max and Tr min represent the upper and lower limits of the break time; Tm max 、Tm min represent the upper and lower limits of the dining time; Tc max 、 Tc min represent the upper and lower limits of the connection time; Indicates the lunch dining time window; Indicates the dinner dining time window; f s respectively represent the penalty value for driving time below the upper limit, the penalty value for rest time exceeding the lower limit, the penalty value for meal time exceeding the lower limit, the penalty value for connection time exceeding the lower limit, and the penalty for free riding; respectively represent the difference between the driving time of shift p and Td max the difference between the break time of shift p and Tr min the difference between the meal time of shift p and Tm min the difference between the connection time of shift p and Tc min the difference; c out represents the cost of crew dispatch; x p is a 0-1 decision variable. If path p is selected, then x p = 1, otherwise it is 0; is a 0-1 decision variable. If task i with the crew segment number k is covered by path p in the form of multiplication by the normal value, then otherwise it is 0; Taking the minimum number of crew work shifts, the minimum non-paying time of crew members, the minimum deviation of working time from the standard, and the minimum number of deadheading trips as the optimization objectives, the objective function of the rail transit crew scheduling plan optimization model is established as follows: Among them, the decision variable coefficient c p is the comprehensive cost of path p, expressed as: c p It is divided into three parts: The first part, c out is the fixed cost for path p to be selected, representing the attendance cost of a crew member, and achieving the effect of restricting the number of work shifts by restricting the number of selected paths; The second part, is the penalty for the deviation of the crew member's driving time and non-paid time, representing the penalty for the part of the crew member's driving time below the upper limit, and the penalty for the extra time of the crew member's rest, meal, and connection time exceeding the lower limit of the activity time standard; The third part, fs is the penalty for hitchhiking during the extension of path p; Set the constraint conditions of the rail transit crew scheduling plan optimization model to include: Crew segment coverage constraint, each crew segment must and can only be covered by a normal arc once to ensure that all crew segments have crew members on duty: Decision variable value constraint: 。 6. The method according to claim 5, wherein Solving the objective function of the rail transit crew scheduling plan optimization model through the Lagrangian relaxation algorithm to obtain the rail transit crew scheduling plan, including: Set the Lagrangian dual problem model after relaxing the crew segment coverage constraint as follows: LD = max L(λ i ) Among them, L(λ i ) is the Lagrangian relaxation function, and the formula introduces the Lagrange multiplier λ i . By continuously adjusting the Lagrange multiplier λ i to iterate L(λ i ), penalties are imposed on the difficult constraints that do not satisfy the original problem in the objective function, so that the solution of L(λ i ) gradually approaches the direction that satisfies the constraints of the original problem, and the value of z LR continuously increases and approaches the lower bound of the objective function of the optimized model for the rail transit crew scheduling plan. Then, for all multipliers λ i , the corresponding z LR is maximized to obtain z LD , and the lower bound solution of the objective function is obtained; The Lagrangian relaxation function \(L(\lambda i ) can be equivalently transformed to obtain the following formula: This formula consists of two terms. The first term is the path cost of the work shift, which is calculated by correcting the node cost in the continuous network according to the multiplier and searching for the shortest path that satisfies the constraints in the network; the second term is the sum of the Lagrangian multipliers of each crew segment, representing the "total task resource price", which is calculated by the number of times each task is covered in the results of each iteration; Use the greedy-labeling method to generate an initial feasible solution of the objective function. The specific algorithm design is as follows: Step1: Initialize the set uncover_set of tasks that have not been covered currently, and set the algorithm parameter k = 0; Step2: Judge whether uncover_set is empty. If it is, go to Step6; otherwise, go to Step3; Step3: Conduct a greedy search based on the labeling method in the network: 1) Ac i(r) ≤ Ac i(r′) , then r is superior to r'; 2) Ac i(r′) ≤ Ac i(r) If so, r is superior to r'. Step 4: If the greedy search successfully generates a new path, add the new path to the column pool, update the uncover_set, reset k = 0, and multiply the value of the node multiplied by the new path by the multiplier λ i = λ i - M, where M is a positive number that is infinite, making it more difficult for a node that has already been multiplied in value to be multiplied in value again, and return to Step 2; if a new path cannot be generated, increment k by 1 and proceed to Step 5; Step5: When k increases to a certain extent, it means that the algorithm fails to generate a new path after multiple iterations. Then, perform the following operations according to the value of k and return to Step2: 1) If k > 3, then multiply the multiplier λ of all nodes that have not been multiplied by a value i = λ i + M, so that the nodes that have not been multiplied by a value are more likely to be multiplied by a value; 2) If k > 5, then let the convenience multiplication multiplier μ of all the nodes that have been value-multiplied i = μ i + M, so that the nodes that have been value-multiplied are more likely to be conveniently multiplied; 3) If k > 10, adjust the paths in the column pool; 4) If k > 20, go to Step6 Step6: If uncover_set is empty, or k > 20, the algorithm ends; Among them, the path adjustment algorithm design when k > 10 is as follows: Step1: Check whether uncover_set is empty. If it is, go to Step7; otherwise, go to Step2; Step 2: Traverse the uncover_set to obtain an uncovered node k_node, and greedily search for the path from the starting point s to k_node. Traverse the labels k_labels of k_node, and check if there are any feasible labels k_valid_labels for the uncovered and covered nodes. If there are, go to Step 4; otherwise, go to Step 3; Step 3: Make the path from the starting point s to k_node feasible. Traverse k_labels to obtain a label k_label of the node, backtrack it, and obtain the covered nodes need_cover_nodes in its predecessor labels. Traverse the paths in the column pool, and update all need_cover_nodes in the paths to be convenient to multiply, that is, vacate need_cover_nodes in the paths in the column pool one by one to make k_label feasible, and then go to Step 4; Step 4: Starting from k_valid_labels, search for the path from k_node to the end point t. Traverse the labels t_labels of the end point t, and check if there are any feasible labels t_valid_labels for the uncovered and covered nodes. If there are, go to Step 6; otherwise, go to Step 5; Step 5: Make the path from k_node to the end point t feasible. Traverse t_labels to obtain a label t_label of the node, and repeat the specific steps of Step 3 to make t_label feasible, and then go to Step 6; Step 6: Update the uncover_set and return to Step 1; Step 7: The path adjustment algorithm ends; Solving \(L(\lambda i ) is equivalent to finding a set of feasible paths in the spatio-temporal network that satisfy the rule constraints and have the least path cost. The label-setting method is used to solve \(L(\lambda i ), and the specific algorithm design process is as follows: In the scheduling plan spatio-temporal connection network, for set a label set L i , where L i(r) =(Ac i(r) , Ad i(r) , Acd i(r) , Aw i(r) , Ms i(r) , PreL i(r) , PreA i(r) , sh i ft i(r) ) represents the content of the r-th label of node i, respectively representing the cumulative cost, cumulative driving time, cumulative continuous driving time, cumulative working time, meal status, predecessor label, predecessor arc segment, and work shift type when the label extends to node i; Step1: Initialize the network and labels. Initialize the coverage costs of all crew segment nodes in the network, that is, for Clear the label sets of all nodes in the network, and initialize the labels for the base starting point ; Step 2: Label extension. Starting from the base starting point, traverse each node according to the topological order, update the label set of the current node based on the label sets of its predecessor nodes and the types of predecessor arcs, and determine the feasibility of the label r of the current node i according to the crew rules; Step 3: Delete the dominating labels. When traversing to the current node, it is necessary to check the label set of the node according to the label domination rule, screen out and delete the dominating labels, and only keep the non-inferior labels. For r, r′ ∈ R i and r ≠ r′, the label domination rule is as follows: 1) Ac i(r) ≤Ac i(r′) , Ad i(r) ≥Ad i(r′) , Acd i(r) ≥Acd i(r′) , Aw i(r) ≥Aw i(r′) , then r is superior to r'. 2) Ac i(r′) ≤ Ac i(r) , Ad i(r′) ≥ Ad i(r) , Acd i(r′) ≥ Acd i(r) , Aw i(r′) ≥ Aw i(r) , then r is superior to r'. Step 4: Label backtracking. When all nodes and their labels have been traversed, select the label with the smallest Ac from the label sets of the base end points of the three work shift types respectively, backtrack according to its predecessor labels, and generate a work shift path with the minimum cost corresponding to the work shift type. The combination of these work shift paths with the minimum cost constitutes the final crew scheduling plan. It is decided to use the subgradient method to update the Lagrange multipliers, and the update method of the multipliers is as follows: Among them, σ k represents the step size of the k-th iteration, which changes dynamically during the iteration, and the update method and the rules to be followed are as follows: σ k = σ0 / k Use the exchange operator and the deletion operator to improve the current solution; 1) Exchange operator The exchange operator randomly selects two paths p1 and p2 in the current column pool, and randomly selects a path segment s1 in p1, and searches for a path segment s2 in p2 that can be exchanged with s1. Then delete s1 from p1 and insert s2. After the exchange is successful, output the new path p1′; 2) Deletion operator The deletion operator randomly selects a path p1 in the current column pool, and randomly selects a path segment s1 in p1, and deletes s1 from p1. After the deletion is successful, output the new path p1′; Solving the Lagrangian dual problem provides a set of feasible paths for the original problem. The upper bound solution is obtained by directly solving the original model with a solver. The initial feasible solution and all the feasible paths obtained by solving the Lagrangian dual problem during the iteration process are added to the path alternative set as the column pool, and the upper bound solution is obtained by calling the solver to directly solve the original model based on the obtained column pool.

Citation Information

Patent Citations

  • Optimization method and device for adjusting high-speed railway crew scheduling plan in typical scene

    CN113256032A

  • Subway crew plan optimization compilation method based on travel path

    CN116307494A

  • Metro crew traffic route and scheduling plan integrated optimization model and algorithm

    CN118228867A

  • Subway crew scheduling plan optimization based on generation-selection two-stage algorithm

    CN119599325A

  • Optimization method and device of crew replanning for high-speed railway in typical scenarios

    US20220327462A1