Unit scheduling method and device, computer equipment, computer readable storage medium and computer program product
Patent Information
- Application Number
- CN202510928658.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-07
- Publication Date
- 2025-11-14
Smart Images

Figure CN120952371A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer data processing technology, and in particular to a method, apparatus, computer equipment, computer-readable storage medium, and computer program product for scheduling work crews. Background Technology
[0002] Currently, most airlines still rely primarily on manual scheduling, with schedulers creating flight plans based on experience and regulations. However, as flight networks become increasingly complex and operational rules continue to expand, schedulers must simultaneously consider multiple factors, including flight safety, regulatory compliance, operating costs, and pilot workload balancing, making scheduling tasks increasingly demanding. Manual scheduling is not only time-consuming and labor-intensive but also prone to inappropriate arrangements, impacting pilot performance and overall operational efficiency.
[0003] Therefore, a more intelligent and efficient method for optimizing unit scheduling is needed to improve scheduling quality, reduce labor costs, and enhance adaptability to complex operating environments. Summary of the Invention
[0004] Therefore, it is necessary to provide a method, apparatus, computer equipment, computer-readable storage medium, and computer program product that can improve the efficiency of unit scheduling in order to address the above-mentioned technical problems.
[0005] Firstly, this application provides a crew scheduling method, including:
[0006] Obtain the crew scheduling model; the crew scheduling model is constructed based on flight mission data, crew personnel data, and scheduling rule data.
[0007] The crew member data and flight mission data are input into the prediction model to obtain the crew member's probability of choosing a flight to be scheduled.
[0008] Based on the selection probability, the solution search space of the unit scheduling model is adjusted to obtain the adjusted solution search space;
[0009] The unit scheduling model is solved based on the adjusted solution search space to obtain the target unit scheduling scheme.
[0010] In one embodiment, the solution search space includes the flight connection network corresponding to the crew members; the nodes in the flight connection network represent flights, and the edges in the flight connection network represent flight connection relationships; the selection weight of the edges is determined according to the flight connection cost; the adjusted solution search space includes the pruned flight connection network.
[0011] The step of adjusting the solution search space of the unit scheduling model according to the selection probability to obtain the adjusted solution search space includes:
[0012] In the flight connection network, flight nodes with a selection probability less than a preset threshold are deleted to obtain the pruned flight connection network;
[0013] The step of solving the crew scheduling model based on the adjusted solution search space to obtain the target crew scheduling scheme includes:
[0014] Based on the selected weights, the shortest path search is performed in the pruned flight connection network to obtain the target crew scheduling scheme.
[0015] In one embodiment, the step of performing a shortest path search in the pruned flight connection network based on the selection weights to obtain the target crew scheduling scheme includes:
[0016] The search for an optimized solution is performed in the pruned flight connection network;
[0017] If no optimized solution is found, check whether the pruned flight connection network is a fully connected network.
[0018] If the pruned flight connection network is not a fully connected network, the network structure of the pruned flight connection network is adjusted according to the selection probability to obtain an expanded flight connection network.
[0019] Based on the selected weights, the shortest path search is performed in the expanded flight connection network to obtain the target crew scheduling scheme.
[0020] In one embodiment, the crew scheduling model includes a constrained master problem model and a pricing subproblem model; the solution process of the crew scheduling model includes:
[0021] Generate an initial feasible sequence of crew tasks, and add the initial feasible sequence of crew tasks as an initial column to the constrained master problem model;
[0022] The constrained master problem model is solved by linear relaxation to obtain the values of the dual variables that satisfy the constraints.
[0023] Based on the values of the dual variables, the pricing subproblem model is solved; wherein the solution space of the pricing subproblem model is reduced according to the selection probability.
[0024] If an optimized solution is obtained from the pricing subproblem, the optimized solution is added as a new column to the restricted master problem model, and the process returns to the step of performing linear relaxation on the restricted master problem model.
[0025] In one embodiment, the process of generating the initially feasible crew task sequence includes:
[0026] Candidate unit task sequences are generated based on preset heuristic rules;
[0027] The probability of the crew selecting from the candidate crew task sequence is determined based on the prediction model.
[0028] Candidate unit task sequences with a selection probability less than a preset probability threshold are deleted to obtain the initial feasible unit task sequence.
[0029] In one embodiment, the prediction model includes a neural network model; the process of obtaining the neural network model includes:
[0030] Obtain historical crew scheduling data;
[0031] Feature extraction is performed on the historical crew scheduling data to obtain crew member attribute features, flight mission features, and each crew member's selection of candidate flight scheduling combinations.
[0032] The initial model is trained using the crew member attribute features and flight mission features as inputs, and the selection situation as the output, to obtain the neural network model.
[0033] Secondly, this application also provides a crew scheduling device, the device comprising:
[0034] The acquisition module is used to acquire the crew scheduling model; the crew scheduling model is constructed based on flight mission data, crew personnel data, and scheduling rule data.
[0035] The prediction module is used to input the crew data and flight mission data into the prediction model to obtain the crew's selection probability for the scheduled flight.
[0036] The adjustment module is used to adjust the solution search space of the unit scheduling model according to the selection probability, so as to obtain the adjusted solution search space.
[0037] The solution module is used to solve the unit scheduling model based on the adjusted solution search space to obtain the target unit scheduling scheme.
[0038] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps described in the first aspect.
[0039] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps described in the first aspect:
[0040] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps described in the first aspect.
[0041] The aforementioned crew scheduling method, apparatus, computer equipment, computer-readable storage medium, and computer program product acquire a crew scheduling model. This model is constructed based on flight mission data, crew member data, and scheduling rule data. The crew member data and flight mission data are input into a prediction model to obtain the crew members' selection probabilities for available flights. Based on these probabilities, the solution search space of the crew scheduling model is adjusted to obtain an adjusted solution search space. The adjusted solution search space is then used to solve the crew scheduling model, yielding the target crew scheduling scheme. This embodiment of the invention utilizes a prediction model to predict the possible flight scheduling combinations that crew members may choose, thereby reducing the scale of the crew scheduling model problem and effectively improving the solution speed and crew scheduling efficiency. It can provide a feasible and optimized solution for large-scale flight crew scheduling problems in a short time. Attached Figure Description
[0042] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0043] Figure 1 This is a diagram illustrating the application environment of a unit scheduling method in one embodiment;
[0044] Figure 2 This is a flowchart illustrating a unit scheduling method in one embodiment;
[0045] Figure 3 This is a schematic diagram of a flight connection network in one embodiment;
[0046] Figure 4 This is a flowchart illustrating the solution process for the crew scheduling model in another embodiment;
[0047] Figure 5 This is a flowchart illustrating the crew scheduling method in another embodiment;
[0048] Figure 6This is a structural block diagram of the unit scheduling device in one embodiment;
[0049] Figure 7 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0050] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0051] Pilots are one of the most critical production resources in airline operations, and their productivity and allocation directly impact flight efficiency and safety. However, with the rapid expansion of the air transport market, the number of flights continues to grow, and the fleet size expands, while the training and replenishment of pilots cannot keep up with market demand, leading to increasingly strained crew resources. This supply-demand imbalance not only increases the operational pressure on airlines but may also affect flight regularity and passenger service quality. Furthermore, pilot fatigue is also a key factor affecting flight safety. High-intensity work schedules, frequent cross-time zone flights, irregular work and rest schedules, and insufficient rest time all exacerbate pilots' physical and mental fatigue, thereby reducing their attention, judgment, and responsiveness, and increasing the risk of flight accidents. Therefore, how to scientifically and rationally schedule crew shifts, optimize human resource allocation while ensuring flight safety, and improve operational efficiency is one of the core challenges in airline management.
[0052] Currently, most airlines still rely primarily on manual scheduling, with schedulers creating flight plans based on experience and established rules. However, as flight networks become increasingly complex and operational rules expand, schedulers must simultaneously consider multiple factors, including flight safety, regulatory compliance, operating costs, and pilot workload balancing, making scheduling tasks increasingly demanding. Manual scheduling is not only time-consuming and labor-intensive but also prone to inappropriate arrangements, impacting pilot performance and overall operational efficiency. Therefore, there is an urgent need for more intelligent and efficient crew scheduling optimization methods to improve scheduling quality, reduce labor costs, and enhance adaptability to complex operating environments.
[0053] Currently, most airlines use manual scheduling for flight crews. Schedulers connect flights into a line and then assign them to pilots, ensuring that flights are flown by crews that meet the requirements. In addition, some manufacturers' crew scheduling systems include automatic scheduling modules, primarily using heuristic algorithms. While these methods can provide feasible solutions, they often fail to meet practical needs when facing large-scale, real-time operational adjustments due to high computational complexity and long solution times.
[0054] The relevant technologies and their problems are briefly described below:
[0055] For manual scheduling, the sheer scale of tens of thousands of flight segments, complex regulatory requirements, and operational rules make the scheduling problem far more complex than manual scheduling can handle. Even with significant time and manpower investment, a high-quality flight crew scheduling plan cannot be guaranteed. The main technical problems of existing manual scheduling methods are as follows:
[0056] (1) Manual scheduling is slow: The method of manually scheduling the flight connection scheme of pilots is usually time-consuming. Since it is difficult for humans to have a global grasp of the huge flight connection and personnel data, they are prone to getting stuck in local optimization and need to repeatedly backtrack and adjust. The workload and difficulty of the scheduler are both high.
[0057] (2) High crew operating costs: Crew costs are the second largest cost item for airlines after fuel costs, mainly including crew salaries (basic wages, flight hour fees and other subsidies), overnight costs, and placement costs. During the scheduling phase, on the one hand, changes in flight hour fees in crew salaries mainly depend on the increase in billable hours due to increased placement time; on the other hand, the increase in overnight stays at other stations and personnel placement also requires airlines to pay additional costs. Manual scheduling methods cannot guarantee the optimization of operating costs in the scheduling plan.
[0058] (3) Low flexibility in crew matching: In order to reduce the difficulty of manual scheduling, in actual business scenarios, tasks are usually assigned by aircraft type, base and department. The flexibility of crew matching is low, which is not conducive to solving the optimal scheduling scheme.
[0059] (4) Difficult to balance pilot training: Flight instructors are a special type of crew resource who can perform production flight tasks and train flight students. The rational use of instructors can improve the speed of pilot training and accelerate the formation of crew resources while ensuring normal production. However, manual scheduling often makes it difficult to consider both at the same time.
[0060] (5) Inability to optimize multiple objectives simultaneously: Flight crew scheduling not only needs to meet complex regulatory restrictions and business rules, but also puts forward key consideration indicators for multiple aspects such as the rationality, economy, fairness, and crew fatigue of the scheduling plan. Manual scheduling methods often cannot optimize multiple objectives simultaneously.
[0061] For automated scheduling solutions, a bid-based scheduling model is typically used. The core logic is: the company publishes flight schedules (Bidlines), and crews bid (Bid) based on their individual preferences. That is, after the airline develops a flight loop plan with the goal of minimizing operating costs, crew members select flight loops in descending order of seniority. However, during the scheduling phase, airlines need to comprehensively consider the training, leave, and other slot-occupying tasks of all crew members, balancing scheduling costs with the fairness of task allocation, to develop a complete crew scheduling plan. Due to differences in crew management methods and flight safety considerations, the bid-based model has limitations in its applicability and is difficult to directly apply or integrate with the airline's customized functional requirements.
[0062] Regarding the problems of heuristic algorithm techniques:
[0063] Although heuristic algorithms have relatively simple computational steps, they still have the following shortcomings:
[0064] (1) It is impossible to guarantee that the optimal solution will be obtained, and it is impossible to know the difference between the obtained feasible solution and the optimal solution.
[0065] (2) The calculation results are different in different instances of the same problem. Stable calculation results cannot be obtained in actual application scenarios, and it is difficult to backtrack and verify.
[0066] (3) The performance of the algorithm depends on the data structure of the problem and is difficult to guarantee.
[0067] (4) It is difficult to handle a large number of mutually coupled rationality and unit fatigue rules.
[0068] In summary, the relevant technologies suffer from problems such as inefficient unit scheduling and scheduling results that fail to meet requirements.
[0069] The crew scheduling method provided in this application embodiment can be applied to, for example, Figure 1In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104 or placed on a cloud or other network server. Server 104 obtains a crew scheduling model; the crew scheduling model is constructed based on flight mission data, crew member data, and scheduling rule data; wherein the flight mission data, crew member data, and scheduling rule data can be sent from terminal 102 to server 104. The crew member data and flight mission data are input into a prediction model to obtain the crew members' selection probability for the pending flights; based on the selection probability, the solution search space of the crew scheduling model is adjusted to obtain an adjusted solution search space; based on the adjusted solution search space, the crew scheduling model is solved to obtain the target crew scheduling scheme. Terminal 102 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, projection devices, etc. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted displays. Head-mounted displays can be virtual reality (VR) devices, augmented reality (AR) devices, smart glasses, etc. Server 104 can be a standalone physical server, a server cluster or distributed system consisting of multiple physical servers, or a cloud server providing cloud computing services.
[0070] In one exemplary embodiment, such as Figure 2 As shown, a crew scheduling method is provided, which is applied to... Figure 1 Taking server 104 as an example, the explanation includes the following steps 202 to 206. Wherein:
[0071] Step 202: Obtain the crew scheduling model; the crew scheduling model is constructed based on flight mission data, crew personnel data, and scheduling rule data.
[0072] The crew scheduling model is a linear programming model used to assign crew members to specific flights, thus obtaining the flight sequence for each crew member. Specifically, based on the requirements of the crew scheduling scenario, the linear programming model can be a mixed-integer programming model.
[0073] At least one of the flight mission data, crew data, and scheduling rule data can be user-inputted. Users can include crew managers, flight managers, airline or airport operations personnel, etc. Users can input the above information through a preset application interface and instruct the construction and solution of the crew scheduling model based on the input information.
[0074] Flight mission data represents the flight missions to be performed that require crew assignment. Specifically, it includes flight data and mission data. Flight data may include basic flight information, aircraft type information, base information, required personnel qualifications and quantities, etc. Mission data may include personnel's historical mission information, position reservation information, and training mission information, etc. Crew data represents the attribute information of personnel who can be used to perform flights, and may include basic information about pilots, qualification information, technical authorization information, instructor information, etc.
[0075] Scheduling rule data is used to characterize the scheduling constraints and preferences between crew members and flight assignments. This data can be determined based on airline configuration and / or relevant regulations, such as rigid constraints (including Civil Aviation Administration regulations and airline internal rules, such as requirements for pilot working hours and rest periods). Optionally, scheduling rule data can also include personalized rules, such as the airline's own operational rules, including task combination rules, crew pairing rules, resource balancing rules, and mentoring / promotion rules. Correspondingly, scheduling preference configuration characterizes the weights of optimization objectives defined by the user for crew scheduling, such as scheduling economy, rationality, balance, and fatigue, allowing for a trade-off between multiple optimization objectives based on actual needs.
[0076] In one embodiment, the crew scheduling model can be constructed as follows:
[0077] Equation (1);
[0078] Equation (2);
[0079] Equation (3);
[0080] Equation (4);
[0081] Equation (1) is the objective function of the unit assignment model, representing minimizing the total cost of the selected scheduling scheme. Indicates the crew scheduling plan The cost of each scheduling plan under multiple optimization objectives is calculated by summing the corresponding attributes / features in the scheduling plan. This allows for the simultaneous achievement of multiple optimization objectives. The optimization objectives can be determined based on scheduling rule data, making this method easier to implement than Pareto optimality and readily applicable in actual production. For decision variables taking values of 0-1, when At that time, it indicates the crew scheduling plan. Selected to form the final scheduling plan, otherwise The decision variables are the unknowns that need to be determined in the crew scheduling model.
[0082] Equation (2) represents the flight coverage constraint, used to ensure that each flight task in the scheduling plan is exactly covered by the required number of individual pilot scheduling plans, and can be determined based on flight task data. Among them, This represents the set of scheduled flight tasks within the planning period. Indicates that flights are included. All individual scheduling plans gather; Indicates flight mission The number of pilots needed.
[0083] Equation (3) represents the personnel assignment constraint, indicating that each pilot is assigned one and only one feasible personal shift plan, which can be determined based on crew data. Indicates pilot All executable individual scheduling plans gather.
[0084] Equation (4) represents the 0-1 variable value constraint, indicating that if the decision variable... The value can only be 1 or 0.
[0085] Step 204: Input the crew data and flight mission data into the prediction model to obtain the crew's selection probability for the scheduled flight.
[0086] The prediction model can be a pre-trained machine learning model, which can be trained based on historical crew scheduling data. The selection probability is used to characterize the probability that a specific crew member will perform a specific flight mission. Considering the potential conflicts between flight mission timelines, pilot qualification requirements, crew member qualification characteristics, rest time, and existing tasks, and correspondingly, when multiple candidate flights exist, crew members may have preferred flight missions. Therefore, by analyzing historical crew scheduling data and using the prediction model to learn from the analysis results, the probability of a crew member selecting a specific flight mission can be determined based on the crew member data.
[0087] Step 206: Adjust the solution search space of the unit scheduling model according to the selection probability to obtain the adjusted solution search space.
[0088] The solution search space represents the set of all possible combinations of decision variables, and the solution search space represents the candidate range of decision variables. The solution process of the crew scheduling model is to find a feasible solution within the solution search space that satisfies the optimal objective function (such as the lowest cost and the highest fairness) and meets the constraints (such as scheduling rule constraints).
[0089] Considering the large number of flights and crew members waiting to be scheduled, in order to improve scheduling efficiency while ensuring the quality of scheduling results, the solution search space of the crew scheduling model is adjusted according to the selection probability. The adjustment principle may include retaining flight tasks with higher selection probabilities and filtering out flight tasks with lower selection probabilities, thereby reducing the solution search space of the crew scheduling model, improving the solution speed, avoiding invalid searches, and ensuring the quality of the solution.
[0090] Optionally, considering that potential feasible solutions may be deleted after screening candidate flight tasks based on selection probabilities, in another embodiment of the present invention, the solution search space can be dynamically expanded according to the solution status of the crew scheduling model. Specifically, when no feasible solution beneficial to the optimization of the objective function can be found, it can be determined whether the optimal solution has been found. If the optimal solution has not been found, the reason why no feasible solution beneficial to the optimization of the objective function can be found may be that feasible flight tasks have been deleted based on selection probabilities. Therefore, corresponding flight tasks can be added according to the descending order of selection probabilities to obtain an expanded solution search space, and feasible solutions can be searched based on this expanded solution search space.
[0091] Step 208: Solve the unit scheduling model based on the adjusted solution search space to obtain the target unit scheduling scheme.
[0092] The process involves finding a solution that satisfies the constraints and optimizes the objective function within the adjusted solution search space, which serves as the target crew scheduling scheme. The crew scheduling model can be solved using either an exact algorithm or a heuristic algorithm. Exact algorithms, such as branch and bound, cutting plane, and branch-and-cut, guarantee finding the global optimum but have high computational complexity and limited applicability to large-scale planning scenarios like crew scheduling. Therefore, to improve the efficiency of solving the crew scheduling model, heuristic algorithms can be used. These heuristic algorithms can include constructive heuristics such as greedy algorithms, variable neighborhood search, and swarm intelligence algorithms. In this embodiment, considering the complexity of the flight network, the solution process for the crew scheduling model is decomposed into a main problem and sub-problems based on a column generation algorithm. The objective of the main problem is to select an optimal crew-flight matching scheme to minimize total costs (such as salaries and accommodation). The variables of the main problem represent feasible flight sequences, which can be generated from the sub-problems. Constraints on the main problem may include flight coverage, i.e., each flight must be executed by exactly one crew, and crew availability, i.e., the total working time of each crew does not exceed the upper limit.
[0093] The subproblem is used to generate new flight sequences that reduce the total cost of the main problem, i.e., solutions that are beneficial to the optimization of the crew scheduling model. The input to the subproblem can be the values of the dual variables of the main problem. The output of the subproblem can include flight sequences that satisfy the constraints, and these can be negative test numbers.
[0094] Preferably, to improve the efficiency of solving the subproblems, a directed graph model can be used to construct a flight connection network for each crew member based on the candidate flight mission sequence. Shortest path search is then performed within this network to obtain the solution to the subproblems. Nodes in the flight connection network can represent airports or cities. Edges in the network can represent flight routes, and their weights can be determined based on flight time, transfer waiting time, etc. The graph type can be a directed weighted graph, considering that flight directions are fixed and weights may be asymmetrical.
[0095] The target crew scheduling plan may include the work assignments of each pilot during the planned period, the flight crew for each flight mission, and the teaching mission identifier.
[0096] Optionally, after obtaining the target crew scheduling plan, relevant indicators can be statistically analyzed, such as the coverage of flight mission connections, pilot workload, and deviation from the objective function. These statistical evaluation indicators can include basic indicators such as flight coverage, number of overnight layovers at other stations, number of landings, number of long layovers, number of aircraft changes, and number of morning and evening shifts. Furthermore, they can statistically analyze and display the balance of basic indicators such as flight hours, number of overnight layovers, and number of landings for each position and personnel category.
[0097] In some embodiments, the prediction model includes a neural network model; the process of obtaining the neural network model includes:
[0098] Step 302: Obtain historical crew scheduling data.
[0099] Historical crew scheduling data includes flight mission data performed by crew members within a historical time period, which may include crew member attribute information and flight mission information.
[0100] Step 304: Extract features from the historical crew scheduling data to obtain crew member attribute features, flight task features, and each crew member's selection of candidate flight scheduling combinations.
[0101] Feature extraction is used to extract features that influence whether crew members perform specific candidate flight tasks. For example, crew member attribute features may include crew member language features, preference features, flight crew combination features, and qualification features. Flight crew combination features represent the crew member's historical preference score for the flight and the frequency with which the crew member has performed the flight in the past schedule. Qualification features represent whether the flight requires crew members with specific qualifications, whether the crew member has the ability to perform the qualification, the frequency of the qualification in all pending flights, the frequency of the qualification in all crew members, qualification scarcity score, etc.
[0102] Flight mission characteristics can represent the flight's departure and arrival airports, departure and arrival times, and flight duration. Scheduling continuity characteristics are extracted based on each crew member's selection of candidate flight schedule combinations, serving as a reference for crew scheduling. These continuity characteristics indicate whether the flight conflicts with a crew member's existing pre-booked slots, whether the flight conflicts with a crew member's preferred rest time, and whether the flight is suitable for connection to a crew member's existing schedule.
[0103] Step 306: Train the initial model using the crew member attribute features and flight mission features as inputs and the selection status as outputs to obtain the neural network model.
[0104] Based on historical crew scheduling data, a deep neural network model was constructed and trained. The model's input includes crew member attributes, flight mission characteristics, language requirements, and preference data. The output is the probability of each crew member selecting a specific candidate flight schedule combination. The dataset includes multiple historical scheduling instances, each containing the number of crew members, the number of flights, language requirements, and constraint rules.
[0105] To improve the accuracy of predictions regarding selection probabilities, a deep neural network model can be used. Specifically, a deep neural network model can employ a feedforward fully connected DNN structure, which contains multiple hidden layers. The number of neurons in the hidden layers decreases sequentially, typically 3-5 layers, each containing 100-300 neurons, to ensure the model has sufficient expressive power while avoiding overfitting.
[0106] Regarding the activation function of the neural network model, the hidden layer uses the ReLU (Rectified Linear Unit) activation function, which is defined as: The function truncates negative inputs, making the output 0, thereby accelerating convergence and reducing the gradient vanishing problem.
[0107] The output layer of a neural network model can use the sigmoid function, which is defined as follows: This ensures that the output value is between [0,1], making it interpretable as a probability, which represents the probability of a crew member choosing a particular flight.
[0108] The loss function of the neural network model can be binary cross-entropy, and adaptive gradient optimization (such as Adaptive Moment Estimation, Adam) can be used to improve the model, combining momentum and adaptive learning rate to achieve faster and more stable convergence. The dataset is constructed from historical scheduling instances, and the training and testing data are strictly separated to ensure generalization ability.
[0109] In some embodiments, the solution search space includes the flight connection network corresponding to the crew members; the nodes in the flight connection network represent flights, and the edges in the flight connection network represent flight connection relationships; the selection weight of the edges is determined based on the flight connection cost.
[0110] Specifically, the process of building a flight connectivity network can be as follows:
[0111] Building a connection network for crew members based on pending flights can refer to... Figure 3 .like Figure 3As shown, the flight connection network contains four types of nodes: source node, which represents the start of the individual crew scheduling plan, enabling the scheduling plan to be linked to the crew's historical status; sink node, which represents the end of the individual crew scheduling plan, enabling crew members to return to their personal base after completing a flight cycle; departure node, which represents the start of the flight and is associated with the flight departure time and departure airport information; and arrival node, which represents the end of the flight and is associated with the flight landing time and landing airport information.
[0112] Correspondingly, the flight connection network comprises six types of arcs: Start arc, connecting the source and departure points whose associated airports are the bases of the personnel; End arc, connecting the sink and arrival points whose associated airports are the bases of the personnel; Flight arc, existing only when there are pending flights between a pair of departure and arrival points; Position arc, existing only when there are available positions between a pair of departure and arrival points; Same-day connection arc, existing when the arrival and departure points are associated with the same airport, the associated times are on the same calendar day, and the interval is greater than the minimum transit time; Cross-day connection arc, existing when the arrival and departure points are associated with the same airport and are overnight airports, the associated times are on different calendar days, and the interval is greater than the minimum overnight time.
[0113] The adjusted solution search space includes the pruned flight connection network. The step of adjusting the solution search space of the crew scheduling model according to the selection probability to obtain the adjusted solution search space includes:
[0114] Step 402: In the flight connection network, delete the flight nodes whose selection probability is less than a preset threshold to obtain the pruned flight connection network.
[0115] Based on the prediction results of the deep neural network, only flights with a selection probability greater than a given threshold are retained in the flight connection network of each crew member, thereby reducing the search space of the sub-problem and improving the solution efficiency.
[0116] The step of solving the crew scheduling model based on the adjusted solution search space to obtain the target crew scheduling scheme includes:
[0117] Step 404: Based on the selected weights, perform a shortest path search in the pruned flight connection network to obtain the target crew scheduling scheme.
[0118] The shortest path, which is the path with the lowest scheduling cost, can be searched using a preset shortest path search algorithm. Shortest path search algorithms can include algorithms such as Dijkstra's algorithm and the Bellman-Ford algorithm.
[0119] In this embodiment of the invention, in order to calculate the scheduling plan cost corresponding to the serial path during the shortest path search process, the costs of each part are arranged to the corresponding nodes or connecting arcs.
[0120] For example, the dual value of flight coverage constraint is placed on the flight arc. When a path is connected to the flight arc, the scheduling plan corresponding to that path will increase the dual value covering that flight. The placement cost is placed on the placement arc. When a path is connected to the placement arc, the scheduling plan corresponding to that path will increase the cost of using that placement. The overnight cost of different airports is placed on the cross-day connection arc of the corresponding airport. When a path is connected to the cross-day connection arc, if the corresponding airport is not the personnel base to which the scheduling plan corresponding to that path belongs, the overnight cost will increase accordingly.
[0121] The shortest path algorithm first sorts all nodes according to their corresponding time topology, then traverses each node sequentially. The optimal label is obtained at the sink node. If the checksum of this label is negative, an alternative scheduling plan is generated based on that label. The variables corresponding to the newly generated alternative scheduling plans for all personnel are added to the model. Preferably, to avoid enumerating all paths, a dominance rule can be designed to delete labels that are unlikely to yield an optimal path in advance. Specifically, for labels A and B at the same node, label A is considered superior to label B if and only if the resource usage of all labels A is less than that of labels B, and the checksum of the scheduling plan corresponding to label A is less than that of the scheduling plan corresponding to label B. In this case, label B cannot obtain a better scheduling plan than label A, so it can be deleted in advance.
[0122] In some embodiments, the step of performing a shortest path search in the pruned flight connectivity network based on the selection weights to obtain the target crew scheduling scheme includes:
[0123] Step 502: Search for an optimized solution in the pruned flight connection network.
[0124] The optimized solution refers to a feasible solution that is beneficial to the optimization of the unit scheduling model. The search method for optimization can refer to the shortest path search method in the previous steps, which will not be repeated here.
[0125] Step 504: If no optimized solution is found, check whether the pruned flight connection network is a fully connected network.
[0126] A fully connected network represents whether the network includes all feasible connection arcs; where connection arcs include same-day connection arcs and cross-day connection arcs.
[0127] There are two possible reasons why no optimal solution was found, meaning there is currently no solution beneficial to model optimization: the model has already reached its optimal solution, or the solution search space is incomplete, meaning potential optimal solutions have been removed from the search space. Due to the aforementioned selection probability-based filtering, the flight connection network may be missing some nodes and corresponding connection arcs. Therefore, by checking whether the pruned flight connection network includes all connection arcs, we can distinguish the reasons why no optimal solution is currently found. If the flight connection network has been completely updated, the absence of a solution beneficial to model optimization indicates that the model has already reached its optimal solution; otherwise, the solution search space needs to be expanded. Thus, without reducing the quality of the solutions, the solution search space only needs to be expanded when no optimal solution is found. Initially, the solution is solved based on a smaller network (the pruned flight connection network), thereby simplifying the problem.
[0128] Step 506: If the pruned flight connection network is not a fully connected network, adjust the network structure of the pruned flight connection network according to the selection probability to obtain the expanded flight connection network.
[0129] Specifically, based on the probability prediction of the deep neural network, the hidden connection arcs are unlocked step by step in descending order of probability to realize the addition of new connection arcs in the flight connection network, thereby expanding the solution space.
[0130] Specifically, dynamic thresholds can be set. This enables a progressive search from coarse-grained to fine-grained.
[0131] Optionally, a spatiotemporal reachability analysis can be performed on the flight connection network, and the network can be updated based on the analysis. Specifically, a propagation algorithm can be applied to update the earliest / latest arrival time windows of each node. The earliest arrival time of a node is calculated through forward propagation, and the latest arrival time is calculated through backward propagation. Based on the propagation results, invalid nodes are checked in the flight connection network, such as deleting invalid nodes whose earliest arrival time is later than their latest arrival time, thereby compressing the solution search space.
[0132] Step 508: Based on the selected weights, perform a shortest path search in the expanded flight connection network to obtain the target crew scheduling scheme.
[0133] The method for searching the shortest path in the expanded flight connection network based on the selected weights can refer to the shortest path search method in step 404 above, and will not be repeated here.
[0134] In some embodiments, the crew scheduling model can be solved based on a column generation algorithm. The crew scheduling model includes a constrained master problem model and a pricing subproblem model. The solution process of the crew scheduling model includes:
[0135] Step 602: Generate an initial feasible sequence of crew tasks, and add the initial feasible sequence of crew tasks as an initial column to the constrained master problem model.
[0136] The initial feasible crew task sequence can be generated based on historical experience data, expert experience, or heuristic rules. This initial feasible crew task sequence serves as the initial solution to the crew scheduling model. The Restricted Master Problem (RMP) can be considered a simplified version of the original crew scheduling model, containing only a subset of variables. It approximates the optimal solution of the original model by progressively adding new columns generated from pricing subproblems. The ultimate goal of the column generation algorithm is to make the solution of the RMP converge to the optimal solution of the original model (e.g., when it is impossible to generate new columns with negative test numbers).
[0137] Step 604: Solve the constrained master problem model by linear relaxation to obtain the values of the dual variables that satisfy the constraints.
[0138] By applying linear relaxation to the constrained master problem model, upper and lower bounds are provided, avoiding invalid computations and simplifying the solution process for the unit scheduling model. The values of the dual variables satisfying the constraints reflect the marginal cost or shadow price of the original problem constraints. By obtaining the values of the dual variables of the constraints, they can be passed to subproblems to generate new columns.
[0139] Step 606: Solve the pricing subproblem model based on the dual variable values; wherein the solution space of the pricing subproblem model is reduced according to the selection probability.
[0140] The solution process for the pricing subproblem can be based on the flight connection network in the aforementioned embodiments. The pricing subproblem is solved based on the dual information of each constraint to find a new personnel scheduling plan that is beneficial to the optimization of the current model.
[0141] Step 608: If an optimized solution is obtained from the pricing subproblem, the optimized solution is added as a new column to the restricted master problem model, and the process returns to the step of performing linear relaxation on the restricted master problem model.
[0142] Optionally, if the pricing subproblem yields an optimized solution, then it is determined whether the flight task connection network for the current crew is complete. If it includes all possible connection arcs, then it is determined whether the current solution is an integer solution. If all variables take integer values of 0 or 1, then the current solution is the optimal solution, and the algorithm ends; otherwise, it jumps to...
[0143] The model is modified by using a strong branching strategy to select fixed variables, setting the lower limit of the fixed variables to 1, updating the flight connection search network corresponding to the pricing subproblem for all crew members based on the fixed variables, and returning to the step of solving the restricted main problem model by linear relaxation.
[0144] Considering the massive number of decision variables in the crew scheduling model, corresponding to the individual scheduling plans of all compliant pilots, the main idea behind using a column generation algorithm to solve the model is to retain only a small subset of variables for solution, while dynamically identifying truly useful variables that can improve model performance through a pricing subproblem. The role of the flight connectivity network is to assist in finding variables beneficial to the model solution more quickly through the pricing subproblem.
[0145] Alternatively, for improvement, it can be based on Figure 4 The column generation algorithm shown solves the crew scheduling model, such as Figure 4 As shown, the solution process for the crew scheduling model can include the following steps.
[0146] Step S1: Generate alternative personnel scheduling plans based on a hybrid initialization strategy of rule-driven and data-driven approaches, add the corresponding variables of the generated personnel scheduling plans to the model, and then proceed to step S2.
[0147] Step S2: Solve the linearly relaxed unit assignment model to obtain the dual values of each constraint, then skip to step S3;
[0148] Step S3: Solve the pricing component problem based on the dual information of each constraint, and find a new personnel scheduling plan that is beneficial to the optimization of the current model. If a suitable personnel scheduling plan is found, add its corresponding variables to the model and return to step S2; if no suitable personnel scheduling plan is found, skip to step S4.
[0149] Step S4: Determine whether the flight mission connection network of the current crew is complete. If it contains all possible connection arcs, skip to step S5; otherwise, update the flight mission connection network of the crew and skip to step S2.
[0150] Step S5: Determine if the current solution is an integer solution. If all variables take the values of integers 0 or 1, then the current solution is the optimal solution, and the algorithm ends; otherwise, proceed to step S6.
[0151] Step S6: Use a strong branching strategy to select a fixed variable, modify the model, set the lower limit of the fixed variable to 1, and update the pricing sub-problem search network for all crew members based on the fixed variable, then return to step S2.
[0152] The strong branching strategy embeds the column generation algorithm into the branch and bound framework. For the optimal solution at each node, it checks all variables with values of fractions. If there is a variable with a value greater than a given threshold, the corresponding variable is selected and added to the set of variables to be branched; otherwise, the variable with the largest value is selected and added to the set of variables to be branched.
[0153] In some embodiments, the process of generating the initially feasible crew task sequence includes:
[0154] Step 702: Generate a candidate crew task sequence based on preset heuristic rules.
[0155] The generation process of candidate initial solutions can be rule-driven, applying heuristic rules (such as first-come, first-served, and qualification matching priority) to generate basic feasible solutions. For critical task chains (such as mentoring tasks), a backtracking algorithm is used to ensure that the initial solution includes the necessary teaching path. First-come, first-served means, for example, assigning tasks to each pilot sequentially, first selecting a suitable task for the first pilot from all pending flight tasks, and then selecting a suitable task for the second pilot from the remaining pending flight tasks.
[0156] To ensure the feasibility of candidate initial solutions, conflict detection and repair can be performed on the initial solutions. Among these measures, time conflict detection is performed: the time propagation algorithm is applied to verify the temporal continuity of the task sequence. Optionally, a crew-task capability matrix can be established based on qualification conflicts, and missing qualifications can be quickly matched using the Hungarian algorithm.
[0157] Step 704: Determine the selection probability of the crew members in the candidate crew task sequence based on the prediction model.
[0158] The process of determining the selection probability can be referred to in step 204 above, and will not be repeated here.
[0159] Step 706: Delete the candidate unit task sequences whose selection probability is less than the preset probability threshold to obtain the initial feasible unit task sequence.
[0160] The preset probability threshold can be set relatively high, such as 0.8. By calling the pre-trained prediction model to predict the crew's task preference probability, the flight combinations with high confidence (probability > 0.8) are selected first to build the initial variable pool, thereby improving the efficiency of subsequent solutions.
[0161] In one embodiment of the present invention, the process of the crew scheduling method can be referred to Figure 5 ,like Figure 5As shown, the crew scheduling method comprises three modules: a general rule data configuration module, a model algorithm module, and an output module. The general rule data configuration module includes a basic data entry module, a scheduling rule configuration module, and a scheduling preference configuration module. The model algorithm module includes a crew scheduling model, a column generation algorithm module, and a strong branching strategy module. The output module includes a scheduling plan output module and an indicator output module. The general rule data configuration module is responsible for uniformly configuring scheduling rules, preferences, and data, and converting them into a standardized data format. It provides necessary configuration support for subsequent algorithm modules, ensuring that the personalized needs of the scheduling algorithm are met. The model algorithm module constructs the crew scheduling model, then solves the model using the column generation algorithm module and the strong branching strategy module. Finally, the scheduling plan output module outputs the flight crew and pilot work plans, and the indicator output module evaluates and outputs data such as flight mission coverage, average daily flight hours, confidence information, and overnight information.
[0162] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0163] Based on the same inventive concept, this application also provides a crew scheduling device for implementing the above-mentioned crew scheduling method. The solution provided by this device is similar to the solution described in the above method. Therefore, the specific limitations of one or more crew scheduling device embodiments provided below can be found in the limitations of the crew scheduling method above, and will not be repeated here.
[0164] In one exemplary embodiment, such as Figure 6 As shown, a unit scheduling device is provided, comprising:
[0165] The acquisition module is used to acquire the crew scheduling model; the crew scheduling model is constructed based on flight mission data, crew personnel data, and scheduling rule data.
[0166] The prediction module is used to input the crew data and flight mission data into the prediction model to obtain the crew's selection probability for the scheduled flight.
[0167] The adjustment module is used to adjust the solution search space of the unit scheduling model according to the selection probability, so as to obtain the adjusted solution search space.
[0168] The solution module is used to solve the unit scheduling model based on the adjusted solution search space to obtain the target unit scheduling scheme.
[0169] Each module in the aforementioned unit scheduling device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the computer device's memory as software, so that the processor can call and execute the corresponding operations of each module.
[0170] In one exemplary embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 7 As shown, the computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, Near Field Communication (NFC), or other technologies. When the computer program is executed by the processor, it implements a crew scheduling method. The display unit is used to form a visually visible image and can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0171] Those skilled in the art will understand that Figure 7The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0172] In one exemplary embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:
[0173] Obtain the crew scheduling model; the crew scheduling model is constructed based on flight mission data, crew personnel data, and scheduling rule data.
[0174] The crew member data and flight mission data are input into the prediction model to obtain the crew member's probability of choosing a flight to be scheduled.
[0175] Based on the selection probability, the solution search space of the unit scheduling model is adjusted to obtain the adjusted solution search space;
[0176] The unit scheduling model is solved based on the adjusted solution search space to obtain the target unit scheduling scheme.
[0177] In one embodiment, the solution search space includes the flight connection network corresponding to the crew members; the nodes in the flight connection network represent flights, and the edges in the flight connection network represent flight connection relationships; the selection weight of the edges is determined based on the flight connection cost; the adjusted solution search space includes the pruned flight connection network.
[0178] When a processor executes a computer program, it also performs the following steps:
[0179] In the flight connection network, flight nodes with a selection probability less than a preset threshold are deleted to obtain the pruned flight connection network;
[0180] In one embodiment, when the processor executes a computer program, it further performs the following steps: including:
[0181] Based on the selected weights, the shortest path search is performed in the pruned flight connection network to obtain the target crew scheduling scheme.
[0182] In one embodiment, the processor, when executing a computer program, also performs the following steps:
[0183] The search for an optimized solution is performed in the pruned flight connection network;
[0184] If no optimized solution is found, check whether the pruned flight connection network is a fully connected network.
[0185] If the pruned flight connection network is not a fully connected network, the network structure of the pruned flight connection network is adjusted according to the selection probability to obtain an expanded flight connection network.
[0186] Based on the selected weights, the shortest path search is performed in the expanded flight connection network to obtain the target crew scheduling scheme.
[0187] In one embodiment, the crew scheduling model includes a constraint master problem model and a pricing subproblem model; the processor, when executing the computer program, also performs the following steps:
[0188] Generate an initial feasible sequence of crew tasks, and add the initial feasible sequence of crew tasks as an initial column to the constrained master problem model;
[0189] The constrained master problem model is solved by linear relaxation to obtain the values of the dual variables that satisfy the constraints.
[0190] Based on the values of the dual variables, the pricing subproblem model is solved; wherein the solution space of the pricing subproblem model is reduced according to the selection probability.
[0191] If an optimized solution is obtained from the pricing subproblem, the optimized solution is added as a new column to the restricted master problem model, and the process returns to the step of performing linear relaxation on the restricted master problem model.
[0192] In one embodiment, the processor, when executing a computer program, also performs the following steps:
[0193] Candidate unit task sequences are generated based on preset heuristic rules;
[0194] The probability of the crew selecting from the candidate crew task sequence is determined based on the prediction model.
[0195] Candidate unit task sequences with a selection probability less than a preset probability threshold are deleted to obtain the initial feasible unit task sequence.
[0196] In one embodiment, the prediction model includes a neural network model; the processor, when executing the computer program, further performs the following steps:
[0197] Obtain historical crew scheduling data;
[0198] Feature extraction is performed on the historical crew scheduling data to obtain crew member attribute features, flight mission features, and each crew member's selection of candidate flight scheduling combinations.
[0199] The initial model is trained using the crew member attribute features and flight mission features as inputs, and the selection situation as the output, to obtain the neural network model.
[0200] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, the computer program performing the following steps when executed by a processor:
[0201] Obtain the crew scheduling model; the crew scheduling model is constructed based on flight mission data, crew personnel data, and scheduling rule data.
[0202] The crew member data and flight mission data are input into the prediction model to obtain the crew member's probability of choosing a flight to be scheduled.
[0203] Based on the selection probability, the solution search space of the unit scheduling model is adjusted to obtain the adjusted solution search space;
[0204] The unit scheduling model is solved based on the adjusted solution search space to obtain the target unit scheduling scheme.
[0205] In one embodiment, the solution search space includes the flight connection network corresponding to the crew members; nodes in the flight connection network represent flights, and edges in the flight connection network represent flight connection relationships; the selection weight of the edges is determined based on flight connection costs; the adjusted solution search space includes a pruned flight connection network; when the computer program is executed by the processor, it further implements the following steps:
[0206] In the flight connection network, flight nodes with a selection probability less than a preset threshold are deleted to obtain the pruned flight connection network;
[0207] The step of solving the crew scheduling model based on the adjusted solution search space to obtain the target crew scheduling scheme includes:
[0208] Based on the selected weights, the shortest path search is performed in the pruned flight connection network to obtain the target crew scheduling scheme.
[0209] In one embodiment, when the computer program is executed by a processor, it also performs the following steps:
[0210] The search for an optimized solution is performed in the pruned flight connection network;
[0211] If no optimized solution is found, check whether the pruned flight connection network is a fully connected network.
[0212] If the pruned flight connection network is not a fully connected network, the network structure of the pruned flight connection network is adjusted according to the selection probability to obtain an expanded flight connection network.
[0213] Based on the selected weights, the shortest path search is performed in the expanded flight connection network to obtain the target crew scheduling scheme.
[0214] In one embodiment, the crew scheduling model includes a constraint master problem model and a pricing subproblem model; when the computer program is executed by a processor, it also performs the following steps:
[0215] Generate an initial feasible sequence of crew tasks, and add the initial feasible sequence of crew tasks as an initial column to the constrained master problem model;
[0216] The constrained master problem model is solved by linear relaxation to obtain the values of the dual variables that satisfy the constraints.
[0217] Based on the values of the dual variables, the pricing subproblem model is solved; wherein the solution space of the pricing subproblem model is reduced according to the selection probability.
[0218] If an optimized solution is obtained from the pricing subproblem, the optimized solution is added as a new column to the restricted master problem model, and the process returns to the step of performing linear relaxation on the restricted master problem model.
[0219] In one embodiment, when the computer program is executed by a processor, it also performs the following steps:
[0220] Candidate unit task sequences are generated based on preset heuristic rules;
[0221] The probability of the crew selecting from the candidate crew task sequence is determined based on the prediction model.
[0222] Candidate unit task sequences with a selection probability less than a preset probability threshold are deleted to obtain the initial feasible unit task sequence.
[0223] In one embodiment, the prediction model includes a neural network model; when the computer program is executed by a processor, it also performs the following steps: acquiring historical crew scheduling data;
[0224] Feature extraction is performed on the historical crew scheduling data to obtain crew member attribute features, flight mission features, and each crew member's selection of candidate flight scheduling combinations.
[0225] The initial model is trained using the crew member attribute features and flight mission features as inputs, and the selection situation as the output, to obtain the neural network model.
[0226] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, performs the following steps:
[0227] Obtain the crew scheduling model; the crew scheduling model is constructed based on flight mission data, crew personnel data, and scheduling rule data.
[0228] The crew member data and flight mission data are input into the prediction model to obtain the crew member's probability of choosing a flight to be scheduled.
[0229] Based on the selection probability, the solution search space of the unit scheduling model is adjusted to obtain the adjusted solution search space;
[0230] The unit scheduling model is solved based on the adjusted solution search space to obtain the target unit scheduling scheme.
[0231] In one embodiment, the solution search space includes the flight connection network corresponding to the crew members; the nodes in the flight connection network represent flights, and the edges in the flight connection network represent flight connection relationships; the selection weight of the edges is determined based on the flight connection cost; the adjusted solution search space includes the pruned flight connection network.
[0232] When a computer program is executed by a processor, it also performs the following steps:
[0233] In the flight connection network, flight nodes with a selection probability less than a preset threshold are deleted to obtain the pruned flight connection network;
[0234] Based on the selected weights, the shortest path search is performed in the pruned flight connection network to obtain the target crew scheduling scheme.
[0235] In one embodiment, when the computer program is executed by a processor, it also performs the following steps:
[0236] The search for an optimized solution is performed in the pruned flight connection network;
[0237] If no optimized solution is found, check whether the pruned flight connection network is a fully connected network.
[0238] If the pruned flight connection network is not a fully connected network, the network structure of the pruned flight connection network is adjusted according to the selection probability to obtain an expanded flight connection network.
[0239] Based on the selected weights, the shortest path search is performed in the expanded flight connection network to obtain the target crew scheduling scheme.
[0240] In one embodiment, the crew scheduling model includes a constraint master problem model and a pricing subproblem model; when the computer program is executed by a processor, it also performs the following steps:
[0241] Generate an initial feasible sequence of crew tasks, and add the initial feasible sequence of crew tasks as an initial column to the constrained master problem model;
[0242] The constrained master problem model is solved by linear relaxation to obtain the values of the dual variables that satisfy the constraints.
[0243] Based on the values of the dual variables, the pricing subproblem model is solved; wherein the solution space of the pricing subproblem model is reduced according to the selection probability.
[0244] If an optimized solution is obtained from the pricing subproblem, the optimized solution is added as a new column to the restricted master problem model, and the process returns to the step of performing linear relaxation on the restricted master problem model.
[0245] In one embodiment, when the computer program is executed by a processor, it also performs the following steps:
[0246] Candidate unit task sequences are generated based on preset heuristic rules;
[0247] The probability of the crew selecting from the candidate crew task sequence is determined based on the prediction model.
[0248] Candidate unit task sequences with a selection probability less than a preset probability threshold are deleted to obtain the initial feasible unit task sequence.
[0249] In one embodiment, the prediction model includes a neural network model; the computer program, when executed by a processor, further performs the following steps:
[0250] Obtain historical crew scheduling data;
[0251] Feature extraction is performed on the historical crew scheduling data to obtain crew member attribute features, flight mission features, and each crew member's selection of candidate flight scheduling combinations.
[0252] The initial model is trained using the crew member attribute features and flight mission features as inputs, and the selection situation as the output, to obtain the neural network model.
[0253] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.
[0254] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.
[0255] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0256] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A unit scheduling method, characterized in that, The method includes: Obtain the crew scheduling model; the crew scheduling model is constructed based on flight mission data, crew personnel data, and scheduling rule data. The crew member data and flight mission data are input into the prediction model to obtain the crew member's probability of choosing a flight to be scheduled. Based on the selection probability, the solution search space of the unit scheduling model is adjusted to obtain the adjusted solution search space; The unit scheduling model is solved based on the adjusted solution search space to obtain the target unit scheduling scheme.
2. The method according to claim 1, characterized in that, The solution search space includes the flight connection network corresponding to the crew members; the nodes in the flight connection network represent flights, and the edges in the flight connection network represent flight connection relationships; the selection weight of the edges is determined according to the flight connection cost; the adjusted solution search space includes the pruned flight connection network. The step of adjusting the solution search space of the unit scheduling model according to the selection probability to obtain the adjusted solution search space includes: In the flight connection network, flight nodes with a selection probability less than a preset threshold are deleted to obtain the pruned flight connection network; The step of solving the crew scheduling model based on the adjusted solution search space to obtain the target crew scheduling scheme includes: Based on the selected weights, the shortest path search is performed in the pruned flight connection network to obtain the target crew scheduling scheme.
3. The method according to claim 2, characterized in that, The step of performing a shortest path search in the pruned flight connection network based on the selected weights to obtain the target crew scheduling scheme includes: The search for an optimized solution is performed in the pruned flight connection network; If no optimized solution is found, check whether the pruned flight connection network is a fully connected network. If the pruned flight connection network is not a fully connected network, the network structure of the pruned flight connection network is adjusted according to the selection probability to obtain an expanded flight connection network. Based on the selected weights, the shortest path search is performed in the expanded flight connection network to obtain the target crew scheduling scheme.
4. The method according to claim 1, characterized in that, The crew scheduling model includes a constrained master problem model and a pricing subproblem model; the solution process of the crew scheduling model includes: Generate an initial feasible sequence of crew tasks, and add the initial feasible sequence of crew tasks as an initial column to the constrained master problem model; The constrained master problem model is solved by linear relaxation to obtain the values of the dual variables that satisfy the constraints. Based on the values of the dual variables, the pricing subproblem model is solved; wherein the solution space of the pricing subproblem model is reduced according to the selection probability. If an optimized solution is obtained from the pricing subproblem, the optimized solution is added as a new column to the restricted master problem model, and the process returns to the step of performing linear relaxation on the restricted master problem model.
5. The method according to claim 4, characterized in that, The process of generating the initially feasible crew task sequence includes: Candidate unit task sequences are generated based on preset heuristic rules; The probability of the crew selecting from the candidate crew task sequence is determined based on the prediction model. Candidate unit task sequences with a selection probability less than a preset probability threshold are deleted to obtain the initial feasible unit task sequence.
6. The method according to claim 1, characterized in that, The prediction model includes a neural network model; the process of obtaining the neural network model includes: Obtain historical crew scheduling data; Feature extraction is performed on the historical crew scheduling data to obtain crew member attribute features, flight mission features, and each crew member's selection of candidate flight scheduling combinations. The initial model is trained using the crew member attribute features and flight mission features as inputs, and the selection situation as the output, to obtain the neural network model.
7. A unit scheduling device, characterized in that, The device includes: The acquisition module is used to acquire the crew scheduling model; the crew scheduling model is constructed based on flight mission data, crew personnel data, and scheduling rule data. The prediction module is used to input the crew data and flight mission data into the prediction model to obtain the crew's selection probability for the scheduled flight. The adjustment module is used to adjust the solution search space of the unit scheduling model according to the selection probability, so as to obtain the adjusted solution search space. The solution module is used to solve the unit scheduling model based on the adjusted solution search space to obtain the target unit scheduling scheme.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 6.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.