A method for intelligent scheduling and seamless connection of a full-range intermodal container
By filtering candidate containers and optimizing task order through a cloud system, and adjusting matching relationships using the Hopcroft-Karp hierarchical augmentation algorithm and network simplex, the problem of container scheduling mismatch in rail-water intermodal terminals was solved, achieving seamless container connection and improved loading efficiency.
Patent Information
- Application Number
- CN202611552112.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-10-09
- Publication Date
- 2026-11-03
AI Technical Summary
Existing rail-water intermodal terminals cannot effectively adjust the operational sequence of each link during container scheduling, which prevents the containers required by the train from entering the next link in a timely manner. This leads to a mismatch between quay crane and yard crane operations, resulting in an increase in containers waiting to be transported and a shortage of containers in the railway operation area, thus affecting loading efficiency.
Candidate containers are screened through a cloud system. Combined with the equipment status and task deadlines of the terminal edge nodes, the Hopcroft-Karp hierarchical augmentation algorithm and network simplex are used to adjust the matching relationship. This optimizes the sequence of unloading, horizontal transportation, container pick-up at the yard, and railway handover tasks, ensuring that containers arrive at the railway operation area on time.
It achieves seamless container connection, reduces waiting time and container dropping, improves loading efficiency, and reduces resource waste.
Smart Images

Figure CN123032128A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of port logistics scheduling technology, and more specifically, to a method for intelligent scheduling and seamless connection of intermodal container transport. Background Technology
[0002] When organizing container operations, existing rail-water intermodal terminals mainly organize quay crane operations on the waterway side according to the berthing and departure arrangements of ships, hold positions, and unloading sequence. On the yard side, they arrange transfer, unloading, and lifting of containers based on the container positions, trucks, and yard crane operations. On the rail side, they organize container loading into the rail line according to the arrival and departure times of trains and loading plans. For general-purpose terminals that handle water transport, road transport, and rail operations, the aforementioned equipment and space are not solely occupied by intermodal transport services. For example, if a train has only 40 minutes left before loading stops and is short of six containers to meet its transport requirements, with two already in the yard, two being transferred from the ship to the yard, and the other two not yet unloaded, the current practice is to ensure that these six containers can enter the rail operation area before loading stops, while simultaneously avoiding simply suspending other import / export containers and road container pickups. Existing practices often proceed according to the pre-arranged order of operations in each area, resulting in situations where quay cranes continue unloading containers that do not yet have subsequent transport conditions, yard cranes continue processing containers unrelated to the current train, while the containers required by the train remain on the ship or in the yard. This manifests as an increase in containers waiting to be transported on the quay, delayed pickup of rail containers in the yard, and a temporary shortage of containers in the rail operation area. Even if the terminal still has operational equipment and containers that meet transport conditions, the train may still have to wait for loading or drop containers due to insufficient numbers of available containers. Therefore, the technical problem to be solved by this application is: how to adjust the containers to be processed in the next stage according to the missing containers of the train and the remaining loading time, combined with the acceptance conditions available at the shipside, yard transportation, storage yard and railway operation area at that time, so that the containers completed in the previous stage can enter the next stage in a timely manner, and the containers required by the train that is about to stop loading can be unloaded, transferred, picked up and handed over first. Summary of the Invention
[0003] To overcome the aforementioned deficiencies in the prior art, embodiments of the present invention provide a method for intelligent scheduling and seamless connection of rail-water intermodal container transport. This method determines the task time limit of candidate containers by reverse analysis of missing containers on trains, filters connecting containers by combining the equipment and receiving location status of terminal edge nodes, and performs local allocation and post-execution updates for missing containers and connecting containers to solve the problems mentioned in the background art.
[0004] To achieve the above objectives, the present invention provides the following technical solution: a method for intelligent scheduling and seamless connection of rail-water intermodal container transport, comprising: S1. The cloud reads the destination station, container type, number of missing containers, and stop loading time of the train, as well as the container number, destination station, container type, and current location of the container. The number of missing containers for each train is broken down into missing container items. Candidate containers for missing container items are filtered by destination station and container type, and the remaining task sequence is formed based on the current location of the candidate containers. S2. The cloud takes the stop loading time of the train to which the missing container belongs as the end time of the railway handover task node, and reverses the remaining task sequence, subtracting the duration of this task from the start time limit of the subsequent task node to form the task time limit sequence of the candidate container. S3. The dock edge node calculates the task start time and completion time in the forward direction based on the equipment release time and the idle starting point of the receiving position for each task, and calculates the task continuation reserve in the reverse direction based on the task time limit sequence and the stop loading time. The candidate box with the first task continuation reserve not less than zero is determined as the continuation box. S4. Construct a bipartite graph in the cloud with missing boxes and connecting boxes. Perform Hopcroft-Karp layered augmentation in ascending order of loading stop time. Subtract the number of allocated missing boxes from the number of added missing boxes to obtain the prefix gap. When the prefix gap increases, extract the local bipartite graph and use the network simplex to adjust the matching relationship in the local bipartite graph to obtain the allocation relationship between missing boxes and connecting boxes. S5. The terminal edge nodes update the task completion time of the connecting container according to the actual task completion time, delete the matching edges where the completion time of the preceding task is later than the start time of the following task or the completion time of the railway handover task is later than the stop loading time. The cloud uses the undeleted matching edges as the initial matching relationship, and performs Hopcroft-Karp hierarchical augmentation from the missing container items that have lost the connecting container, and updates the order of unloading, horizontal transportation, yard container picking and railway handover tasks according to the obtained allocation relationship.
[0005] In a preferred embodiment, S1 includes: S11. The cloud arranges trains in ascending order according to the time when loading stops. For each train, a missing container item number is generated sequentially from one to the number of missing containers. The missing container item is composed of the train's destination station, container type, time when loading stops, and missing container item number. S12. The cloud compares the missing container item with the destination station and container type of the container. When the destination station and container type are the same, the container is identified as a candidate container for the current missing container item, and the missing container item number, candidate container number and candidate relationship between the missing container item and the candidate container are recorded.
[0006] In a preferred embodiment, S1 further includes: S13. The cloud-based system consists of a baseline task sequence of unloading, horizontal transportation, container pickup in the yard, and railway handover. When a candidate container is located in the ship's container position, four tasks are retained. When it is located in the ship's side transfer position, the unloading task is deleted. When it is located in the container position in the yard, the unloading task and the horizontal transportation task are deleted. When it is located in the railway operation area, the railway handover task is retained, thus obtaining the remaining task sequence of the candidate container. S14. The cloud establishes the end task node based on the railway handover. It processes the remaining task sequences in reverse from the railway handover to the first task. When there is a predecessor task node with the same task name in the predecessor task node connected to the same successor task node, the predecessor task node is reused. When there is no predecessor task name, a new predecessor task node is added. The candidate box number and the missing box item number are recorded in the first task node to obtain the remaining task sequence with the shared successor task node.
[0007] In a preferred embodiment, S2 includes: S21. Read the candidate container number and missing container item number attached to the first task node in the cloud, take the stop loading time of the train to which the missing container item number belongs as the end time of the candidate container at the railway handover task node, and subtract the railway handover task duration from the end time to obtain the railway handover start time limit. S22. The cloud reads the task nodes level by level along the railway handover task node to the predecessor of the first task node, and subtracts the task duration of the current task node from the start time limit of the direct successor task node to obtain the start time limit of the current task node. S23. When multiple candidate boxes are connected to a shared back-end task node, the cloud group them according to the missing box item number. Candidate boxes under the same missing box item number share the start time limit of each task node. Different missing box item numbers are respectively calculated by subtracting the task duration of each task node from the end time of the train to which they belong, and the start time limit is arranged according to the execution order of the remaining task sequence to form the task time limit sequence of the candidate boxes.
[0008] In a preferred embodiment, S3 includes: S31. The dock edge node sorts the equipment release time and the idle start time of the receiving position of each task in ascending order of time, takes the last time in the sort as the task release time, takes the release time of the first task as the start time of the first task, and adds the task duration to get the completion time of the first task. S32. Starting from the second task, sort the completion time of the previous task and the release time of this task in ascending order of time, take the last time in the sort as the start time of this task, and add the duration of this task to get the completion time of this task, until the completion time of the railway handover task is obtained.
[0009] In a preferred embodiment, S3 further includes: S33. For railway handover tasks, the end margin is obtained by subtracting the completion time of the railway handover task from the time when loading stops. For other tasks, the time interval is obtained by subtracting the completion time of the current task from the start time of the next task. S34. Take the end balance of the railway handover task as the railway handover task continuation balance, process the railway handover task in reverse order to the first task, arrange the continuation balance of the next task and the time limit interval of this task in ascending order of value and take the first value as the continuation balance of this task, and determine the candidate box with the continuation balance of the first task not less than zero as the continuation box.
[0010] In a preferred embodiment, S4 includes: S41. In the cloud, missing box items and successor boxes are connected according to candidate relationship. Missing box items are added one by one in ascending order according to the time of stopping loading. The Hopcroft-Karp hierarchical augmentation rule is adopted. The unassigned missing box items are recorded as the zeroth layer. The missing box items enter the successor box along the unmatched edge. Then, the occupied successor box enters the next layer of missing box items along the matched edge and expands layer by layer. When entering the unoccupied successor box for the first time, the termination layer number is recorded. Then, from the zeroth layer, the unmatched edge and the matched edge of the layer number are searched to the unoccupied successor box in the termination layer. The unmatched edge in the search path is changed to the matched edge, and the matched edge is changed to the unmatched edge. The hierarchical augmentation is repeated until it is impossible to enter the unoccupied successor box. The number of prefix gaps is obtained by subtracting the number of assigned missing box items from the number of added missing box items. S42. When the number of prefix gaps increases, starting from the unassigned missing box item in this round, enter the continuation box along the unmatched edge, and then enter the missing box item along the matched edge and repeat the alternating traversal until no new node is generated in this round of traversal. The missing box items, continuation boxes and candidate edges obtained by traversal are combined into a local bipartite graph.
[0011] In a preferred embodiment, S4 further includes: S43. The cloud sorts the missing boxes in the local bipartite graph in ascending order according to the time of stopping loading. The missing box penalty value of the last missing box item is taken as 1. Then, from the last item to the first item, the missing box penalty value of each missing box item is obtained by adding 1 to the sum of all the missing box penalty values after it. The number of candidate edges in the local bipartite graph plus 1 is taken as the magnification number. An edge with a capacity of 1 and a cost of 0 is established from the source node to the missing box item, an edge with a capacity of 1 and a cost of 0 for the original matching edge and the cost of the other candidate edges from the missing box item to the connecting box, an edge with a capacity of 1 and a cost of 0 for the connecting box to the sink node, and an edge with a capacity of 1 and a cost of the missing box penalty value multiplied by the magnification number from the missing box item to the sink node. Each missing box item flows into a unit flow from the source node. S44. The cloud establishes a base tree for the flow network composed of source nodes, missing bins, connection bins, sink nodes, and all connecting edges. It calculates the total cost change caused by a unit flow increase in non-base edges. Non-base edges with negative cost changes are sorted in ascending order and the first edge is added to the base tree. The edges added to the base tree form a loop with the original base tree path. The values obtained by subtracting the current flow from the capacity of each edge in the flow increase direction and the current flow of each edge in the flow decrease direction are read. The obtained values are sorted in ascending order and the first value is taken as the flow increase for this round. The flow increase for this round is increased along the flow increase direction of the loop and decreased along the flow decrease direction. Base edges with flow reduced to zero are deleted and the base tree is re-established. The calculation is repeated until there are no non-base edges with negative cost changes. The missing bins with a flow of one are written to the connection bin edge in the allocation relationship, and the original allocation relationship outside the local bipartite graph is retained.
[0012] In a preferred embodiment, S5 includes: S51. The dock edge node replaces the original task completion time with the actual task completion time of the completed task of the connecting box. Starting from the next task, the completion time of the previous task, the equipment release time and the idle start time of the receiving position are arranged in ascending order of time. The last time in the sort is taken as the start time of this task, and the task duration is added to obtain the completion time of this task. This process continues until the railway handover task, forming an updated task completion time sequence. S52. The dock edge node compares the completion time of the current task with the start time of the next task in the task time limit sequence according to the remaining task sequence, and compares the completion time of the railway handover task with the stop loading time. If any completion time is later than the comparison time, the matching edge between the connecting box and the missing box item is deleted. If each completion time is not later than the comparison time, the matching edge is retained.
[0013] In a preferred embodiment, S5 further includes: S53. The cloud uses undeleted matching edges as the initial matching relationship. The missing container items that have lost their connecting boxes are recorded as layer zero. The Hopcroft-Karp hierarchical augmentation rule is adopted. The missing container item enters the connecting box along the unmatched candidate edge. The missing container item enters the next layer of missing container items along the matching edge from the occupied connecting box and records the source node of the new node. When entering the unoccupied connecting box for the first time, it backtracks to layer zero along the source node and flips the matching state in the path. The hierarchical augmentation is repeated until the missing container item that has lost its connecting box obtains a connecting box or cannot enter an unoccupied connecting box. Then, the connecting boxes with the allocation relationship are obtained by sorting them in ascending order of the stop loading time and the missing container item number in ascending order, forming the update task sequence of unloading, horizontal transportation, yard container picking and railway handover.
[0014] The technical effects and advantages of this invention are as follows: 1. By jointly screening the missing containers for trains, the time limit sequence of tasks, and the remaining capacity of task continuation, and adjusting the unloading, horizontal transportation, container picking in the yard, and railway handover tasks accordingly, the containers required by trains that are about to stop loading can be prioritized from the ship's side, in-yard transportation, and yard links to the railway operation area, reducing the waiting and container loss caused by the previous link being completed but the next link not being able to take over in time. 2. By reverse-engineering the start time of each task from the time of stopping loading, and then forward-engineering the task completion time from the time of equipment release and the start time of the idle position of the receiving location, the candidate boxes that cannot complete the railway handover within the remaining time are eliminated before allocation, reducing the ineffective occupation of subsequent operation resources. 3. Calculate the prefix gap by using Hopcroft-Karp hierarchical augmentation, and extract the local bipartite graph associated with the unallocated missing box item when the gap increases, so that the reassignment of the successor box is limited to the local area where the box source contention occurs, reducing the number of irrelevant allocation relationships that are modified. 4. By setting a penalty value for missing containers based on the time when loading stops, and by using the network simplex to adjust the matching relationship in the local bipartite graph, the missing container items with earlier loading stops will be given priority to obtain the next container, while reducing changes to the original matching relationship. 5. Update the completion time of subsequent tasks based on the actual task completion time, and only delete the matching edges that have exceeded the task time limit. Then continue to expand the layered structure from the mismatched missing box items, so that the on-site delays are mainly completed within the affected allocation range to complete the box replacement and task order adjustment. Attached Figure Description
[0015] Figure 1 This is a flowchart of the method steps of the present invention. Detailed Implementation
[0016] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0017] Refer to the instruction manual appendix Figure 1 The present invention provides a method for intelligent scheduling and seamless connection of rail-water intermodal container transport, comprising: S1. The cloud reads the destination station, container type, number of missing containers, and stop loading time of the train, as well as the container number, destination station, container type, and current location of the container. The number of missing containers for each train is broken down into missing container items. Candidate containers for missing container items are filtered by destination station and container type, and the remaining task sequence is formed based on the current location of the candidate containers. In this embodiment, the cloud reads the train loading plan, railway handover completion record, and container record of unfinished railway handover from the terminal production and operation system. First, it breaks down the missing container quantity of the train into missing container items at the single container level, and then screens out candidate containers to undertake the missing container task based on the destination station and container type. Then, it determines the current position of the container based on which production task it has completed, and deletes the completed tasks from unloading, horizontal transportation, yard pickup, and railway handover. The remaining task sequences are processed from the railway handover forward. Tasks with the same subsequent segment share task nodes, allowing the time limits of subsequent tasks to be calculated in reverse along the same subsequent segment structure. At the same time, the independent association between each missing container item and the candidate container is preserved. The specific processing method is as follows: In S11, the cloud reads the train task number, destination station, container type, planned number of containers to be loaded, number of containers that have completed railway handover, and stop loading time for each train. The number of missing containers is calculated by subtracting the number of containers that have completed railway handover from the planned number of containers to be loaded. If the difference is not greater than zero, no missing container item is generated. If the difference is greater than zero, the missing container item number is incremented one by one from the beginning until the number of missing containers is reached. The cloud first sorts the trains in ascending order by the stop loading time. If the stop loading times are the same, they are sorted in ascending order by the train task number. The destination station, container type, stop loading time, and missing container item number are combined to form a missing container item. The missing container item number is only numbered within the train to which it belongs. When storing in the cloud, the train task number and the missing container item number are used to locate a missing container item to prevent the mixing of records when two trains have "missing container item one". In S12, the cloud reads out-of-container items one by one, then iterates through the container records that have not yet completed railway handover. First, it compares the destination stations. If the destination stations are different, it moves on to the next container number. If the destination stations are the same, it compares the container types. If the container types are still the same, the current container is identified as a candidate container for the current out-of-container item. Each time a screening result is formed, the cloud saves a separate association record consisting of the train task number, the out-of-container item number, and the candidate container number. Therefore, when the same candidate container meets multiple out-of-container items at the same time, multiple association records are retained. The later generated record does not overwrite the earlier generated record. The subsequent task time limit and succession qualification are calculated based on the association between a single out-of-container item and the candidate container. The same container participates in the calculation separately when facing different train stop loading times, without pre-limiting it to only serve one train. In S13, the cloud saves unloading, horizontal transportation, container picking in the yard, and railway handover as a baseline task sequence according to the production execution order, and determines the current position of candidate containers based on the production task completion record: when the unloading task has not been completed, it is recorded as the ship's container position; when the unloading task has been completed but the horizontal transportation task has not been completed, it is recorded as the shipside transfer position; when the horizontal transportation task has been completed but the container picking task has not been completed, it is recorded as the yard container position. When the container pick-up task at the yard has been completed but the railway handover task has not yet been completed, it is recorded as a railway operation area. When the candidate container is located at the ship's container position, four tasks are retained. When it is located at the ship's side transshipment position, the unloading task is deleted from the baseline task sequence. When it is located at the yard container position, the unloading task and the horizontal transportation task are deleted. When it is located in the railway operation area, the first three tasks are deleted. The remaining tasks are used to form the remaining task sequence of the candidate container according to the original execution order. Containers that have completed railway handover are no longer included in the candidate container screening range. The current position is determined by the production task completion event, so that the remaining task sequence directly reflects the production actions that are yet to be executed, without the need to infer the operation stage of the container based on geographical coordinates. In S14, the cloud first establishes railway handover task nodes and reads the remaining task sequences one by one, processing them in reverse from railway handover to the first task. For the predecessor task to be added, it first reads all the predecessor task nodes that the current successor task node has connected to. If there is a predecessor task node with the same task name, it directly reuses the node. If there is no predecessor task node, it adds a new predecessor task node identified by the current task name. Then, the newly added or reused predecessor task node is used as the successor task node for the next round of processing until the first task is processed. Only when the task names are the same and connected to the same successor task node is the predecessor task node reused. Therefore, even if two tasks have the same name, they are still retained as two nodes as long as the subsequent task structures are different. Candidate container numbers and missing container item numbers are associated with the first task node in the form of related records. When multiple candidate relationships are associated with the same first task node, each one is retained. The task duration of the four types of tasks is read from the standard task duration configured for a single container in the terminal production system. Shared task nodes with the same name use the same task duration, so that subsequent reverse calculations will only have one task duration value at the shared node. As a result, the remaining loading demand of each train is broken down to the single container level, and each missing container item retains its own candidate container range. The candidate containers are then cut off from the previous tasks that do not need to be executed again based on the completed production tasks. When multiple candidate containers have the same subsequent tasks, they share the same task node, while still retaining their respective associations through the container number and the missing container item number, thus providing a basis for retrospectively calculating the task time limit according to different stopping loading times. Taking a set of port production records as an example, the destination station of train task T203 is Chengdu, the container type is 40 feet, and the plan is to load 8 containers. The railway handover record shows that 5 containers have been completed, and the loading stop time is 18:00. Then, three missing container items are generated in the cloud. Container C101 is still on the ship, container C102 has entered the yard, and container C103 has entered the railway operation area. The destination station and container type of the three containers all meet T203. Then, the three containers form the remaining task sequence of "unloading - horizontal transportation - yard pickup - railway handover", "yard pickup - railway handover", and "railway handover". When the task nodes are established in reverse, the three sequences share the railway handover task node, the first two sequences share the yard pickup task node, and C101 retains the horizontal transportation task node and the unloading task node. Subsequently, the task time limit can be deduced from the first task of the three candidate containers from the railway handover end.
[0018] S2. The cloud takes the stop loading time of the train to which the missing container belongs as the end time of the railway handover task node, and reverses the remaining task sequence, subtracting the duration of this task from the start time limit of the subsequent task node to form the task time limit sequence of the candidate container. In this implementation, the task time limit is used to represent the time limit that a candidate container is subject to before the start of each remaining task in order to catch up with its train. The cloud uses the stop loading time recorded by the terminal production and operation system as the reverse endpoint. The task duration reads the standard duration of a single container task saved by the task node and is calculated using the same time unit. First, determine the start time limit for the railway handover task, then work backwards item by item along the remaining task sequence. When the same candidate container belongs to multiple missing container items, the calculation results of each candidate relationship are retained separately and are not merged due to the same container number. The specific calculation process is as follows: In S21, the cloud reads the candidate container number and the missing container item number associated with the candidate container from the first task node, and then obtains the stop loading time of the train according to the train task number and the missing container item number. This time is used as the end time of the current candidate relationship at the railway handover task node. The railway handover task duration reads the standard duration of a single container task saved by the railway handover task node. The railway handover start time limit is obtained by subtracting the railway handover task duration from the end time. For example, if the stop loading time is 18:00 and the railway handover task duration is 6 minutes, then the railway handover start time limit is 17:54, that is, the railway handover task needs to start before 17:54. In S22, the cloud reads the direct predecessor task nodes level by level from the railway handover task node to the first task node. The starting time limit of the current task node is obtained by subtracting the task duration of the current task node from the starting time limit already obtained by the direct successor task node. The current task node is then used as the direct successor task node for the next round to continue the calculation forward until the first task node. Taking "yard container pickup - railway handover" as an example, the railway handover starting time limit is 17:54. The yard container pickup task duration is 8 minutes, so the yard container pickup starting time limit is 17:46. If there is a horizontal transportation task with a task duration of 10 minutes ahead of it, the horizontal transportation starting time limit is further obtained as 17:36. This recursion makes the time boundary of each task formed by the time when the train stops loading level by level. In S23, when multiple candidate containers are attached to a shared downstream task node, the cloud divides the candidate relationships according to the train task number and the missing container item number. When candidate containers belonging to the same missing container item pass through the same shared task node, the already obtained start time limit is directly read. When they belong to different missing container items, even if they pass through the same task node, the stop loading time of the train to which they belong is read and the process is reversed step by step back to the first task node. Then, the start time limits of each item under the same candidate relationship are arranged according to the execution order of unloading, horizontal transportation, container picking at the yard, and railway handover, forming a task time limit sequence. This sequence is associated with the train task number, the missing container item number, and the candidate container number, so that when the same container participates in the missing container allocation of different trains, its own time limit is saved. Thus, the time when the train stops loading is passed down level by level to the various tasks that have not yet been performed for the candidate containers. The shared downstream task nodes only reuse the calculation results of the same missing container item, and different missing container items still form separate task time limit sequences. Taking train T203 as an example, its loading stop time is 18:00. Container C102 is located in the yard, and the remaining tasks are "yard container retrieval - railway handover". The durations of the two tasks are 8 minutes and 6 minutes respectively. Therefore, the railway handover start time limit is 17:54, and the yard container retrieval start time limit is 17:46. If container C104 belongs to the same missing container item as C102 and passes through the same subsequent task node, then these two start time limits are directly read. If container C102 also belongs to another missing container item with a loading stop time of 18:30, then 18:24 and 18:16 are obtained again for the latter missing container item, and saved separately from the task time limit sequence under T203.
[0019] S3. The dock edge node calculates the task start time and completion time in the forward direction based on the equipment release time and the idle starting point of the receiving position for each task, and calculates the task continuation reserve in the reverse direction based on the task time limit sequence and the stop loading time. The candidate box with the first task continuation reserve not less than zero is determined as the continuation box. In this embodiment, the dock edge node reads the remaining task sequence and task time limit sequence for each candidate relationship, and obtains the execution equipment and receiving position that each task has been bound to from the current production plan; the equipment release time is taken as the current task end time of the execution equipment, and the current calculation time is taken when the equipment is idle; the idle start time of the receiving position is taken as the current task end time of the position occupied, and the current calculation time is also taken when the receiving position is idle; firstly, the start and completion times of each task under the current production state are calculated along the remaining task sequence in the forward direction, and then the completion times of each segment are compared with the task time limit from the railway handover task to obtain the continuity margin that the entire remaining task sequence can bear; In S31, the dock edge node reads the equipment release time and the idle start time of the receiving position item by item. Records earlier than the current calculation time are replaced by the current calculation time. The two times are then sorted in ascending order of time, and the last time in the sort is taken as the task release time. For the first task, the release time of the first task is directly used as the start time of the first task, and the task duration saved by the first task node is added to obtain the completion time of the first task. This processing means that the first task can only start after both the executing equipment and the subsequent receiving position have entered idle. For example, if the equipment is released at 17:20 and the receiving position is idle at 17:24, then the first task starts at 17:24, rather than starting in advance only based on the equipment being idle. In S32, starting from the second task in the remaining task sequence, the dock edge node reads the completion time of the previous task and the release time of the current task. The two times are arranged in ascending order of time, and the last time in the sort is taken as the start time of the current task. Then, the completion time of the current task is obtained by adding the start time of the current task to the duration of the current task. The obtained completion time continues to be used as the completion time of the previous task of the next task, and so on, until the railway handover task. This calculation ensures that the delay caused by the previous task is automatically passed to the subsequent tasks. At the same time, the waiting caused by the equipment not being released or the receiving position not being idle will also be included in the subsequent completion time. When the remaining tasks of the candidate box only include railway handover, the railway handover task is used as both the first and last task and does not enter the second task recursion. In S33, for railway handover tasks, the terminal edge node calculates the end margin by subtracting the completion time of the railway handover task from the time when the train stops loading. For each task before the railway handover task, the time interval is calculated by subtracting the completion time of the current task from the start time limit of the next task in the task time limit sequence. If the result is greater than or equal to zero, it means that the time boundary for the next task to start has not been exceeded after the completion of the current task. If the result is less than zero, it means that even if the next task is immediately connected, the completion time of the current task has exceeded the start time limit of the next task. The end margin adopts the same sign rule, and a negative value means that the completion time of the railway handover is later than the time when loading stops. In S34, the dock edge node first uses the end surplus directly as the railway handover task continuation surplus, and then processes it in reverse order from the direct predecessor of the railway handover task to the first task. For each task processed, the continuation surplus of the next task and the time limit interval of the current task are arranged in ascending order of value. The first value of the sort is taken as the continuation surplus of the current task, and the process continues to pass forward until the continuation surplus of the first task is obtained. The purpose of using the first value of the sort is to retain the negative surplus that has already appeared in the later stage as is. For example, if the railway handover has exceeded the stop loading time by 3 minutes, even if the previous task is completed 10 minutes in advance, a negative 3 minutes will still be retained when recursively calculating the timeout, and the idle time in the previous period will not be used to offset the end timeout that has already occurred; when the continuation reserve of the first task is greater than or equal to zero, the candidate box under the current candidate relationship will be determined as the continuation box; when it is negative zero, it will not enter the subsequent allocation of the current missing box item. When the remaining tasks only include railway handover, the end reserve will also be used as the continuation reserve of the first task. After this calculation, the positive result reflects the actual time that the candidate box can reach under the conditions of equipment occupation and receiving position occupation, while the negative result transmits the situation of any subsequent task breaking the time boundary back to the first task. The qualification to continue is determined by the most restrictive segment in the entire remaining task sequence. Taking a candidate container still located in the yard as an example, its remaining task is "yard pickup - railway handover". The yard pickup task is completed at 17:38, and the railway handover start time is 17:42, so the yard pickup time interval is 4 minutes. The railway handover is actually completed at 17:53, and the train to which it belongs stops loading at 18:00, so the end-of-line margin is 7 minutes. After comparing 4 minutes and 7 minutes in reverse order, the first task continuation margin is 4 minutes, and the container retains its continuation qualification. If the expected completion time of the railway handover changes to 18:02, then the end-of-line margin is negative 2 minutes, and the first task continuation margin is also negative 2 minutes, and the container is excluded from the continuation container range of the current missing container item.
[0020] S4. Construct a bipartite graph in the cloud with missing boxes and connecting boxes. Perform Hopcroft-Karp layered augmentation in ascending order of loading stop time. Subtract the number of allocated missing boxes from the number of added missing boxes to obtain the prefix gap. When the prefix gap increases, extract the local bipartite graph and use the network simplex to adjust the matching relationship in the local bipartite graph to obtain the allocation relationship between missing boxes and connecting boxes. In this implementation, the cloud first uses the connecting boxes obtained in S3 and the candidate relationships saved in S12 to establish a binary relationship between missing boxes and connecting boxes. Then, it gradually expands the range of missing boxes participating in the allocation according to the order in which the train stops loading. Hopcroft-Karp hierarchical augmentation is used to determine whether the existing connecting boxes can be redistributed by swapping boxes after a new missing box is added. When the prefix gap increases, only the part of the bipartite graph that has an alternating arrival relationship with the unallocated missing container items is extracted. Then, the missing container penalty value is used to control the priority of loading the missing container items that are ahead of the truck to obtain the successor container. The network simplex is used to reduce the changes in the original matching relationship. The specific execution process is given below. In S41, the cloud retains only the candidate boxes that have been identified as connecting boxes in S3, and connects the missing box items with the connecting boxes according to the candidate relationship recorded in S12. When the stop loading time is the same, they are arranged in ascending order according to the train task number and the missing box item number. The initial matching edge is empty, and the prefix gap number of the empty prefix is recorded as zero. After each missing box item is added, Hopcroft-Karp layered augmentation is used: first, all unassigned missing box items in the current prefix are recorded as the zeroth layer, and it is recorded whether each node has been visited in this round; the missing box items in the zeroth layer only enter the connecting box along the unmatched candidate edge. When the connecting box has not been occupied by any missing box item, its layer is recorded as the termination layer. When the connecting box has a match, it enters the missing box item of the connecting box along the unique matching edge, and the entered missing box item is recorded in the next layer. After an unoccupied continuation box is first discovered, no deeper levels are established. However, the remaining unoccupied continuation boxes in the current termination layer are read. After the layering is completed, starting from the unallocated missing box item in the zeroth layer, the search for unoccupied continuation boxes in the termination layer is only conducted in the direction of increasing layer number. When there are multiple candidate edges in the same layer, they are read in ascending order of candidate box number. The continuation box obtained by a search path will not be considered an unoccupied continuation box in the remaining paths in this round. After a path is found, the unmatched edges in the path are changed to matched edges, and the original matched edges are changed to unmatched edges. The layering is re-established until no unoccupied continuation box can be reached. At this time, the number of missing box items in the current prefix is subtracted from the number of existing matched edges to obtain the prefix gap number, which is used to determine whether the newly added missing box item has exceeded the current continuation box allocation capacity. In S42, when the number of gaps in the current prefix increases relative to before the current missing box item is added, the cloud takes the missing box item in the current prefix that has not yet obtained a successor box as the starting node, and traverses alternately in the direction of "missing box item enters successor box along unmatched candidate edge, and occupied successor box enters missing box item along matched edge". Each time a node is entered, the node identity is recorded. The same node is only entered once in this round. Stop when no new missing bins or successor bins are added in a round of traversal. The cloud first obtains the set of missing bins and the set of successor bins formed by the traversal, and then returns to the original bipartite graph to read all candidate edges whose nodes at both ends are located in the above two sets, instead of only keeping the edges actually traversed during the traversal. The resulting nodes and candidate edges form a local bipartite graph. When multiple prefixes have gaps added one after another, the above traversal is performed respectively. When the resulting local bipartite graph has common nodes, the common nodes and all candidate edges inside them are merged. When there are no common nodes, they are processed separately. This can limit the subsequent redistribution to the range of missing bins that are really competing for the same batch of successor bins, and avoid changing the original allocation relationship that is unrelated to the current gap. In S43, the cloud first arranges the missing container items in the local bipartite graph in order of the stop loading time, train task number, and missing container item sequence number. The missing container penalty value of the last missing container item in the sort is set to one. Then, it is recursively sorted from the last to the first, and the missing container penalty value of each missing container item is one plus the sum of the missing container penalty values of all the missing container items after it. Therefore, the missing container penalty value of any missing container item is greater than the sum of the missing container penalty values of all the missing container items after it. This makes the cost of losing the connecting container for the missing container item before the stop loading is higher than the penalty value of the simultaneous mismatch of all the missing container items after it. The cloud then counts the number of candidate edges in the local bipartite graph, adds one to the number of candidate edges to get the cost amplification number, and establishes source nodes and sink nodes: an edge with capacity one and cost zero is established from the source node to each missing container item; an allocation edge with capacity one is established from the missing container item to the connecting container according to the candidate edges. The cost of the matching edge before entering the local bipartite graph is zero, and the cost of the other allocation edges is one. Each junction box is connected to the sink node via an edge with a capacity of one and a cost of zero. For each missing junction box, an unallocated edge is created directly to the sink node, with a capacity of one and a cost equal to the product of the missing junction box penalty and the cost amplification factor. The flow provided by the source node is equal to the number of missing junction box items in the local bipartite graph, and the sink node receives the same amount of flow. Each missing junction box item must receive a unit flow. Flow reaching the sink node via a junction box indicates that a junction box has been acquired. Flow directly entering the sink node via an unallocated edge indicates that there is still no allocation within the current junction box set. The cost amplification factor is greater than the total cost change of all candidate edges in the local bipartite graph. Therefore, when solving the network, we first ensure that the missing junction box items at the front of the loading process are acquired, and then reduce the number of newly activated allocation edges without changing the missing junction box result. In S44, the cloud uses a network simplex to process the above flow network. Initially, each unit flow of a missing bin item enters the sink node through an unallocated edge, and the flow of allocated edges is set to zero. The base tree selects all edges from the source node to the missing bin item, all edges from the continuation bin to the sink node, and the unallocated edge from the first missing bin item to the sink node. The remaining unallocated edges maintain the upper bound of capacity flow, and the candidate allocated edges maintain zero flow. This results in an initial flow that satisfies the flow conservation of each node. The cloud sets the node potential of the sink node to zero and calculates the potential of the remaining nodes along the base tree edge by edge, so that the cost of each base edge plus the potential of the starting node minus the potential of the ending node is zero. For non-base edges with flow at the lower bound of zero, the change in unit flow increase cost is the edge cost plus the starting node potential minus the ending node potential. For non-base edges with flow at the upper bound of capacity, the change in unit flow decrease cost is the opposite of the aforementioned value. Non-base edges with negative cost changes are arranged in ascending order of value. When the values are the same, the first edge is selected and added to the base in ascending order of the pre-generated edge number. The paths between the incoming edge and the two endpoints of the original base tree form a loop. The direction of flow increase and decrease in the loop is determined according to the direction in which the incoming edge allows for flow changes. For each edge in the flow increase direction, the capacity is calculated minus the existing flow; for each edge in the flow decrease direction, the existing flow is read. All obtained values are sorted in ascending order, and the first value is taken as the flow increase for this round. The same flow increase is then added along the flow increase direction and subtracted along the flow decrease direction. Base edges that reach the upper limit of capacity or whose flow drops to zero are considered as candidates for leaving the base tree. If multiple candidates exist, the first edge is selected in ascending order of edge number. After leaving the base, the leaving base edge is replaced with the entering base edge, and the node potential and non-base edge cost changes are recalculated. When the increase in flow is zero, only the base change is completed, and the leaving base edge is selected according to the same edge numbering rule to avoid the execution result drift caused by parallel selection. The base change is repeated until the cost changes of all non-base edges that allow changes in flow direction are not negative. The missing bin items with a flow of one are assigned to the connecting bin edge and written into the missing bin item and connecting bin allocation relationship. The missing bin items with an unassigned edge flow of one are kept in the unassigned state. The original matching edges outside the local bipartite graph are not adjusted. This process separates "whether there is a shortage of containers" and "how to minimize changes to the original allocation" into two sequentially controlled objectives: Hopcroft-Karp first identifies the locations where newly added missing containers cannot be absorbed by existing augmented relations alone, and then iterates alternately to define the scope where container contention actually occurs; the missing container penalty value causes the trains that stop loading earlier to obtain the connecting containers first, while the candidate edge cost retains more of the original matching relations when the missing container result remains unchanged. Taking three missing containers A, B, and C as an example, the order of stopping loading is A, B, and C, with missing container penalties of 4, 2, and 1 respectively. When there are 5 candidate edges in the local bipartite graph, the cost amplification factor is 6. Therefore, the cost of A mismatch is 24, which exceeds the cost of B and C mismatch at the same time. Even adding the cost of modifying all candidate edges cannot offset this difference. The network is simplex and therefore will not sacrifice A's connection qualification in order to retain multiple containers for the following train. If A, B, and C can all obtain connecting containers, the network will continue to select the allocation method with fewer modifications based on the original matching edge cost of zero and the cost of the remaining candidate edges of one.
[0021] S5. The terminal edge node updates the task completion time of the connecting container according to the actual task completion time, deletes the matching edge where the completion time of the preceding task is later than the start time of the following task or the completion time of the railway handover task is later than the stop loading time. The cloud uses the undeleted matching edge as the initial matching relationship, and performs Hopcroft-Karp hierarchical augmentation from the missing container item that lost the connecting container, and updates the order of unloading, horizontal transportation, yard container picking and railway handover tasks according to the obtained allocation relationship. In this implementation, S5 processes the time changes that occur after the connecting container has entered the execution phase. When a task is actually completed, the terminal edge node replaces the original scheduling result with the actual completion result and only recalculates the unexecuted part after that task. If the new completion time exceeds the original task time limit, the allocation between the current missing container item and the connecting container is canceled, and the cloud starts from the missing container item that has lost the connecting container to find a replacement container, so that the unaffected allocation relationship remains unchanged. In S51, after the dock edge node receives the completion record of a task of a connection box, it reads the box number, task name and actual task completion time, and replaces the original task completion time of the same task in the scheduling result with the actual task completion time. When multiple tasks have been completed in the same connection box, the completed task at the end of the execution order in the remaining task sequence is used as the starting point of this round of update. The completed task will no longer participate in the subsequent calculation. Starting from the next task, the current task end time of the executing device and the current task end time of the receiving position are read again and used as the device release time and the starting point of the receiving position being idle, respectively. If the equipment release time or the start time of the receiving position vacancy is earlier than the update time of this round, the update time of this round shall be used instead. Then, the completion time of the previous task, the equipment release time, and the start time of the receiving position vacancy shall be arranged in ascending order of time. The last time in the sorted order shall be taken as the start time of this task. The duration of this task shall be added to obtain the completion time of this task. This process shall be extended to the railway handover task to obtain the update task completion time sequence. This can transmit the impact of the previous task being advanced or delayed to the subsequent tasks, and at the same time take into account the equipment and receiving position occupancy that have changed during the update. In S52, the dock edge node reads and updates the task completion time along the remaining task sequence; for tasks before railway handover, the completion time of this task is compared with the start time of the next task in the task time limit sequence; for railway handover tasks, the completion time is compared with the stop loading time of the train to which it belongs; if the completion time of any preceding task is later than the start time of the next task, or the completion time of the railway handover task is later than the stop loading time, the matching edge between the current missing container item and the connecting container is deleted. The original candidate relationship is retained because the same connecting container may still satisfy other missing container items with a later loading stop time. When all comparison results have not crossed the corresponding time boundary, the original matching edge is retained. If the completed task is a railway handover task, the corresponding container number is removed from the scope of uncompleted tasks in this round, and the corresponding missing container item is treated as having completed railway handover and will not enter the subsequent augmentation. In S53, the cloud uses the matching edges retained from S52 as the initial matching relationship for this round of Hopcroft-Karp hierarchical augmentation. It sorts the missing boxes that have lost their connecting boxes in ascending order according to the time when loading stops. If the time when loading stops is the same, it processes them in ascending order according to the missing box number. The current mismatched missing box is taken as the zeroth layer, and the connecting box is entered along the unmatched candidate edge. If the connecting box is already matched, the missing box that occupies the connecting box is entered along the existing matching edge. The source node of each newly entered node is recorded. The search is carried out layer by layer until the first unoccupied connecting box is entered. After finding the unoccupied connecting box, the cloud backtracks from the source node to the zeroth layer, and the unmatched edge in the backtracking path is changed to a matched edge, and the original matched edge is changed to an unmatched edge. Matching edges not reached in this round of search remain in their original state. After a flip, the matching relationship is updated, and the next mismatched missing container item is processed until the mismatched missing container item obtains a replacement container or there is no augmenting path to the unoccupied replacement container in the current candidate relationship. The cloud then sorts out the unloading, horizontal transportation, yard container picking, and railway handover tasks respectively, extracting only the tasks that have not yet been started in the remaining task sequence of the replacement container, and arranging them in the original execution equipment queue according to the stop loading time of the train and the missing container item number; tasks that have already been started or completed are not reordered. With this approach, when the actual completion time on site changes, only the allocation relationship that truly exceeds the task time limit is adjusted, without needing to re-split all missing box items or rebuild the entire allocation result. For example, if a missing container item was originally assigned to container C102, and the container pickup at the yard was originally scheduled to be completed at 17:36, but was actually delayed to 17:44, while the railway handover start time was 17:42, then the matching edge between C102 and the missing container item is deleted. If the missing container item can still reach C105, which has been assigned to a subsequent train, along an unmatched candidate edge, and the missing container item occupying C105 can still find an unoccupied container C109, then after the flip, the current missing container item gets C105, and the next missing container item gets C109, and the rest of the allocation relationship remains unchanged. The terminal only needs to adjust the container pickup, transportation, and railway handover tasks of C105 and C109 that have not yet started.
[0022] Working principle: The cloud first generates a list of missing containers based on the train's destination station, container type, number of missing containers, and the time when loading stops. It then filters candidate containers with the same destination station and container type from the containers that have not yet completed railway handover. Based on the current location of the candidate containers in the ship's container position, shipside transshipment position, yard container position, or railway operation area, it deletes the completed previous tasks to obtain the remaining task sequence from the current location to the railway handover. Subsequently, using the train's loading stop time as the end time boundary, it deducts the duration of each task in reverse along the remaining task sequence to obtain the start time limit of each task for the candidate containers. The terminal edge node then calculates the actual start and completion time of each task in the forward direction based on the release time of the executing equipment, the idle start time of the receiving position, and the completion time of the previous task. It compares the actual completion result with the task time limit from the railway handover task to obtain the continuity margin of the entire remaining task sequence, and selects the connecting containers that can catch up with the train. The cloud then establishes a bipartite relationship between missing containers and connecting containers. First, Hopcroft-Karp hierarchical augmentation is used to find augmentation paths between missing containers and connecting containers according to the order of the stop loading time. When the addition of a new missing container causes an increase in the prefix gap, only the local bipartite graph with an alternating arrival relationship with the unallocated missing container is extracted. For this local range, the missing container penalty value is used to put the missing container with the earlier stop loading time in a priority position, and the local matching relationship is adjusted through the network simplex, so as to reduce the changes in the original matching relationship while satisfying the missing container allocation of the preceding train. Once the task enters the execution phase, the edge nodes recalculate the completion time of subsequent tasks using the actual task completion time. Once a connecting container exceeds the start time limit of the next task or the time when the train stops loading, its current matching relationship is canceled. The cloud uses the remaining matching relationships as the starting state and then performs local hierarchical augmentation from the missing container items that have lost connecting containers, thereby updating the order of unloading, horizontal transportation, yard container picking, and railway handover tasks that have not yet started. For example, at a general-purpose terminal, a train that stopped loading at 6 PM is still short of three 40-foot Chengdu containers. The cloud platform filters three candidate containers from the ship, yard, and railway operation area, respectively, to meet the requirements of the destination station and container type. Based on the current stage of the three containers, it forms a remaining task sequence of different lengths. After deducting the time for railway handover, yard pickup, horizontal transportation, and unloading tasks from 6 PM onwards, the starting time limit for each task of each container is obtained. The edge nodes then read the release time of the quay crane, truck, yard crane, and railway receiving position at that time, and forward calculate the actual time for each task to be completed for the three containers. If the yard container's pickup time has exceeded the railway handover starting time limit due to yard crane occupation, its continuation reserve becomes a negative value and it no longer participates in the allocation of the current missing container item; the remaining continuation containers enter binary matching. If the current train is still short of one container, and another container meeting the requirements has already been assigned to a train that stopped loading at 19:00, Hopcroft-Karp hierarchical augmentation first searches for a container swapping path along the existing candidate relationships. When multiple missing container items compete for the same batch of containers, the missing container penalty and network simplex are used to redistribute the containers only within the local bipartite graph where they are competing, so that the 18:00 train can obtain the container meeting the requirements first, and then find a replacement container for the 19:00 train. If the redistributed container is delayed in subsequent transportation due to equipment occupation, the edge node will re-determine whether the task time limit has been exceeded based on the actual completion time. Only the affected matching relationships are readjusted, while the remaining established allocations and tasks being executed remain in their original state, so that the train's missing container demand, the terminal's on-site acceptance capacity, and the task sequence of each link are always connected along the same computation chain.
[0023] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for intelligent scheduling and seamless connection of rail-water intermodal container transport, characterized in that, include: S1. The cloud reads the destination station, container type, number of missing containers, and stop loading time of the train, as well as the container number, destination station, container type, and current location of the container. The number of missing containers for each train is broken down into missing container items. Candidate containers for missing container items are filtered by destination station and container type, and the remaining task sequence is formed based on the current location of the candidate containers. S2. The cloud takes the stop loading time of the train to which the missing container belongs as the end time of the railway handover task node, and reverses the remaining task sequence, subtracting the duration of this task from the start time limit of the subsequent task node to form the task time limit sequence of the candidate container. S3. The dock edge node calculates the task start time and completion time in the forward direction based on the equipment release time and the idle starting point of the receiving position for each task, and calculates the task continuation reserve in the reverse direction based on the task time limit sequence and the stop loading time. The candidate box with the first task continuation reserve not less than zero is determined as the continuation box. S4. Construct a bipartite graph in the cloud with missing boxes and connecting boxes. Perform Hopcroft-Karp layered augmentation in ascending order of loading stop time. Subtract the number of allocated missing boxes from the number of added missing boxes to obtain the prefix gap. When the prefix gap increases, extract the local bipartite graph and use the network simplex to adjust the matching relationship in the local bipartite graph to obtain the allocation relationship between missing boxes and connecting boxes. S5. The terminal edge nodes update the task completion time of the connecting container according to the actual task completion time, delete the matching edges where the completion time of the preceding task is later than the start time of the following task or the completion time of the railway handover task is later than the stop loading time. The cloud uses the undeleted matching edges as the initial matching relationship, and performs Hopcroft-Karp hierarchical augmentation from the missing container items that have lost the connecting container, and updates the order of unloading, horizontal transportation, yard container picking and railway handover tasks according to the obtained allocation relationship.
2. The method for intelligent scheduling and seamless connection of rail-water intermodal container transport according to claim 1, characterized in that: S1 includes: S11. The cloud arranges trains in ascending order according to the time when loading stops. For each train, a missing container item number is generated sequentially from one to the number of missing containers. The missing container item is composed of the train's destination station, container type, time when loading stops, and missing container item number. S12. The cloud compares the missing container item with the destination station and container type of the container. When the destination station and container type are the same, the container is identified as a candidate container for the current missing container item, and the missing container item number, candidate container number and candidate relationship between the missing container item and the candidate container are recorded.
3. The method for intelligent scheduling and seamless connection of rail-water intermodal container transport according to claim 2, characterized in that: S1 further includes: S13. The cloud-based system consists of a baseline task sequence of unloading, horizontal transportation, container pickup in the yard, and railway handover. When a candidate container is located in the ship's container position, four tasks are retained. When it is located in the ship's side transfer position, the unloading task is deleted. When it is located in the container position in the yard, the unloading task and the horizontal transportation task are deleted. When it is located in the railway operation area, the railway handover task is retained, thus obtaining the remaining task sequence of the candidate container. S14. The cloud establishes the end task node based on the railway handover. It processes the remaining task sequences in reverse from the railway handover to the first task. When there is a predecessor task node with the same task name in the predecessor task node connected to the same successor task node, the predecessor task node is reused. When there is no predecessor task name, a new predecessor task node is added. The candidate box number and the missing box item number are recorded in the first task node to obtain the remaining task sequence with the shared successor task node.
4. The method for intelligent scheduling and seamless connection of rail-water intermodal container transport according to claim 3, characterized in that: S2 includes: S21. Read the candidate container number and missing container item number attached to the first task node in the cloud, take the stop loading time of the train to which the missing container item number belongs as the end time of the candidate container at the railway handover task node, and subtract the railway handover task duration from the end time to obtain the railway handover start time limit. S22. The cloud reads the task nodes level by level along the railway handover task node to the predecessor of the first task node, and subtracts the task duration of the current task node from the start time limit of the direct successor task node to obtain the start time limit of the current task node. S23. When multiple candidate boxes are connected to a shared back-end task node, the cloud group them according to the missing box item number. Candidate boxes under the same missing box item number share the start time limit of each task node. Different missing box item numbers are respectively calculated by subtracting the task duration of each task node from the end time of the train to which they belong, and the start time limit is arranged according to the execution order of the remaining task sequence to form the task time limit sequence of the candidate boxes.
5. The method for intelligent scheduling and seamless connection of rail-water intermodal container transport according to claim 4, characterized in that: S3 includes: S31. The dock edge node sorts the equipment release time and the idle start time of the receiving position of each task in ascending order of time, takes the last time in the sort as the task release time, takes the release time of the first task as the start time of the first task, and adds the task duration to get the completion time of the first task. S32. Starting from the second task, sort the completion time of the previous task and the release time of this task in ascending order of time, take the last time in the sort as the start time of this task, and add the duration of this task to get the completion time of this task, until the completion time of the railway handover task is obtained.
6. The method for intelligent scheduling and seamless connection of rail-water intermodal container transport according to claim 5, characterized in that: S3 further includes: S33. For railway handover tasks, the end margin is obtained by subtracting the completion time of the railway handover task from the time when loading stops. For other tasks, the time interval is obtained by subtracting the completion time of the current task from the start time of the next task. S34. Take the end balance of the railway handover task as the railway handover task continuation balance, process the railway handover task in reverse order to the first task, arrange the continuation balance of the next task and the time limit interval of this task in ascending order of value and take the first value as the continuation balance of this task, and determine the candidate box with the continuation balance of the first task not less than zero as the continuation box.
7. The method for intelligent scheduling and seamless connection of rail-water intermodal container transport according to claim 6, characterized in that: S4 includes: S41. In the cloud, missing box items and successor boxes are connected according to candidate relationship. Missing box items are added one by one in ascending order according to the time of stopping loading. The Hopcroft-Karp hierarchical augmentation rule is adopted. The unassigned missing box items are recorded as the zeroth layer. The missing box items enter the successor box along the unmatched edge. Then, the occupied successor box enters the next layer of missing box items along the matched edge and expands layer by layer. When entering the unoccupied successor box for the first time, the termination layer number is recorded. Then, from the zeroth layer, the unmatched edge and the matched edge of the layer number are searched to the unoccupied successor box in the termination layer. The unmatched edge in the search path is changed to the matched edge, and the matched edge is changed to the unmatched edge. The hierarchical augmentation is repeated until it is impossible to enter the unoccupied successor box. The number of prefix gaps is obtained by subtracting the number of assigned missing box items from the number of added missing box items. S42. When the number of prefix gaps increases, starting from the unassigned missing box item in this round, enter the continuation box along the unmatched edge, and then enter the missing box item along the matched edge and repeat the alternating traversal until no new node is generated in this round of traversal. The missing box items, continuation boxes and candidate edges obtained by traversal are combined into a local bipartite graph.
8. The method for intelligent scheduling and seamless connection of rail-water intermodal container transport according to claim 7, characterized in that: S4 further includes: S43. The cloud sorts the missing boxes in the local bipartite graph in ascending order according to the time of stopping loading. The missing box penalty value of the last missing box item is taken as 1. Then, from the last item to the first item, the missing box penalty value of each missing box item is obtained by adding 1 to the sum of all the missing box penalty values after it. The number of candidate edges in the local bipartite graph plus 1 is taken as the magnification number. An edge with a capacity of 1 and a cost of 0 is established from the source node to the missing box item, an edge with a capacity of 1 and a cost of 0 for the original matching edge and the cost of the other candidate edges from the missing box item to the connecting box, an edge with a capacity of 1 and a cost of 0 for the connecting box to the sink node, and an edge with a capacity of 1 and a cost of the missing box penalty value multiplied by the magnification number from the missing box item to the sink node. Each missing box item flows into a unit flow from the source node. S44. The cloud establishes a base tree for the flow network composed of source nodes, missing bins, connection bins, sink nodes, and all connecting edges. It calculates the total cost change caused by a unit flow increase in non-base edges. Non-base edges with negative cost changes are sorted in ascending order and the first edge is added to the base tree. The edges added to the base tree form a loop with the original base tree path. The values obtained by subtracting the current flow from the capacity of each edge in the flow increase direction and the current flow of each edge in the flow decrease direction are read. The obtained values are sorted in ascending order and the first value is taken as the flow increase for this round. The flow increase for this round is increased along the flow increase direction of the loop and decreased along the flow decrease direction. Base edges with flow reduced to zero are deleted and the base tree is re-established. The calculation is repeated until there are no non-base edges with negative cost changes. The missing bins with a flow of one are written to the connection bin edge in the allocation relationship, and the original allocation relationship outside the local bipartite graph is retained.
9. The method for intelligent scheduling and seamless connection of rail-water intermodal container transport according to claim 8, characterized in that: S5 includes: S51. The dock edge node replaces the original task completion time with the actual task completion time of the completed task of the connecting box. Starting from the next task, the completion time of the previous task, the equipment release time and the idle start time of the receiving position are arranged in ascending order of time. The last time in the sort is taken as the start time of this task, and the task duration is added to obtain the completion time of this task. This process continues until the railway handover task, forming an updated task completion time sequence. S52. The dock edge node compares the completion time of the current task with the start time of the next task in the task time limit sequence according to the remaining task sequence, and compares the completion time of the railway handover task with the stop loading time. If any completion time is later than the comparison time, the matching edge between the connecting box and the missing box item is deleted. If each completion time is not later than the comparison time, the matching edge is retained.
10. The method for intelligent scheduling and seamless connection of rail-water intermodal container transport according to claim 9, characterized in that: The S5 also includes: S53. The cloud uses undeleted matching edges as the initial matching relationship. The missing container items that have lost their connecting boxes are recorded as layer zero. The Hopcroft-Karp hierarchical augmentation rule is adopted. The missing container item enters the connecting box along the unmatched candidate edge. The missing container item enters the next layer of missing container items along the matching edge from the occupied connecting box and records the source node of the new node. When entering the unoccupied connecting box for the first time, it backtracks to layer zero along the source node and flips the matching state in the path. The hierarchical augmentation is repeated until the missing container item that has lost its connecting box obtains a connecting box or cannot enter an unoccupied connecting box. Then, the connecting boxes with the allocation relationship are obtained by sorting them in ascending order of the stop loading time and the missing container item number in ascending order, forming the update task sequence of unloading, horizontal transportation, yard container picking and railway handover.
