A rapid cross-path scheduling method for customized public transit system among urban areas

By generating travel sequences using the inter-regional shortest distance method and the insertion method, and optimizing routes using the fast exchange method, the problems of unstable route scheduling results and high computational complexity in existing technologies are solved, and efficient route scheduling of customized bus systems between urban areas is realized.

CN115660240BActive Publication Date: 2026-06-26NANJING COMM INST OF TECH +1

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
NANJING COMM INST OF TECH
Filing Date
2022-10-28
Publication Date
2026-06-26

AI Technical Summary

Technical Problem

Existing probabilistic algorithms are prone to problems such as result deviation and uncontrollable computational scale in route scheduling of customized public transport systems between urban areas, making them unsuitable for application in real-time systems.

Method used

The method of shortest distance between regions is used to construct the set of origin region and destination region and the set of origin region and destination region. The method of insertion is combined to generate the travel sequence, and the path is optimized by fast exchange method. The addition operation is used to avoid floating point operation and reduce the computational complexity.

Benefits of technology

It achieves accuracy and stability in path optimization, reduces computational scale, and is suitable for real-time response requirements of low-configuration devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115660240B_ABST
    Figure CN115660240B_ABST
Patent Text Reader

Abstract

The application discloses a kind of quick cross path scheduling methods of inter-city area customized public transport system, the shortest distance method between regions is used to build start point area end point set and end point area start point set, to generate start point area travel sequence Yo by insertion method, to generate end point area travel sequence Yd by insertion method, then the Yo and Yd are optimized by quick exchange method, finally the minimum value of start point × Yo × Yd is solved, which is the final inter-city area customized public transport system target path, with the shortest bus travel distance as the target;The method does not use probability distribution, effectively avoids the fluctuation of the final path result, according to the characteristics that the distance between nodes in different regions is much larger than the distance between nodes in the same region, the inter-regional traffic node set is established, and it is used as the end point of the start point region and the start point of the end point region, respectively, to maximize the range of optimal solution, effectively reducing the overall calculation scale.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a route scheduling method for a public transportation system, and more particularly to a rapid cross-route scheduling method for customized public transportation systems between urban areas. Background Technology

[0002] For customized bus systems for inter-city commuting, the fundamental problem is bus route selection. Choosing the optimal route is also a core element for bus companies to improve service quality and reduce operating costs. Route scheduling is a multi-node traversal problem. The route scheduling of customized bus systems for inter-city areas is limited by the need to traverse the departure area first and then the destination area, which is equivalent to a combination of two traversal problems. The mainstream method for solving this type of problem is to use probabilistic algorithms, such as ant colony algorithms, genetic algorithms, and bee colony algorithms. However, a common problem with probabilistic algorithms is that their results are highly dependent on probability. They may converge or meet the algorithm termination requirements even when the result is not optimal, resulting in a large deviation from the optimal solution. Alternatively, they may fail to meet the convergence conditions for a long time, leading to uncontrollable computational scale and making it impossible to directly obtain the optimal solution, ultimately preventing their application in real-time systems. Summary of the Invention

[0003] Purpose of the invention: The purpose of this invention is to provide a rapid cross-path scheduling method for customized inter-city public transport systems with low computational complexity and high path optimization accuracy, which can find a better path within a reasonable time when there are many passenger pick-up and drop-off points.

[0004] Technical solution: The rapid cross-route scheduling method for the customized intercity bus system of the present invention includes the following steps:

[0005] (1) Construct the set of starting and ending regions Vod and the set of starting and ending regions Vdo using the shortest distance method between regions; the shortest distance method between regions is: in D (Vo→Vd) Lieutenant General Minimum Value d oi,dj The value is assigned to positive infinity, and the assignment continues until the starting point corresponding to the minimum value is reached. Then in D (Vo→Vd) Find the shortest distance to the endpoint dj starting from oi, and continue this process until the number of iterations of both oi and dj is not less than the threshold. Once the loop ends, Vod and Vdo are generated.

[0006] Where Vo is the set of origins for all passengers on this bus, Vd is the set of destinations for all passengers on this bus, and D... (Vo→Vd) Let d be the OD matrix of Vo→Vd, where oi∈Vo, dj∈Vd; s,v This represents the distance traveled by the bus from the starting point s to the ending point v;

[0007] (2) Taking each node in Vo as the endpoint, traverse all nodes in Vo and generate the starting area travel sequence Yo by insertion method; the method for generating the starting area travel sequence Yo by insertion method is as follows:

[0008] (2.1a) Take any node v in Vod od As the destination and to create a starting area travel sequence, yo otemp The bus starts at v0, and any node v is selected in Vo. oi insert yo otemp v od Previously, made yo otemp The distance increment Δyo otemp At least, v oi Remove from Vo until all nodes in Vo have been traversed;

[0009] (2.2a) Will yo otemp Add Yo, and select a new node from Vod as the endpoint for the next loop until all nodes in Vod have been selected. Then output Yo.

[0010] (4) Taking each node in Vdo as the starting point, traverse all nodes in Vd and generate the destination area travel sequence Yd by insertion method; the method for generating the destination area travel sequence Yd by insertion method is as follows:

[0011] (3.1a) Choose any node v in Vdo do As the starting point and to create a travel sequence for the destination area, yd dtemp Take any node v from Vd di Insert yd dtemp v do After that, yd dtemp The distance increment Δyd dtemp At least, v di Delete from Vd until all nodes in Vd have been traversed;

[0012] (3.2a) yd dtemp Add Yd, and start the next loop by selecting a node from Vdo again, until all nodes in Vdo have been selected, and then output Yd.

[0013] (4) Optimize Yo and Yd using a fast swapping method, wherein the fast swapping method is:

[0014] Assign all sequences in Y to the next row sequence y0 in turn. After each assignment, assign the remaining sequences in Y to the swapped row sequence y0 in turn. swap After completing steps (4.1a) to (4.5a), output Y to complete the fast swap;

[0015] (4.1a) Let the j-th sequence in Y be the travel sequence y0, and let the i-th sequence in Y be the exchange travel sequence y0. swap Add y0[1] to y0[my] sequentially to the process travel sequence y temp y temp Initially

[0016] (4.2a) Assign the value 1 to my;

[0017] (4.3a) in y swap Find element y swap [ny] = y0[my], if or y swap [ny+1] equals the last element in y0 or y swap [ny+1] exists in y temp In the middle, add 1 to my, and y temp If assigned an empty set, repeat step (4.3a); otherwise, set y to an empty set. swap [ny+1] Add y temp Transferring y0[my+1] to y0[Num] is not equal to y swap The elements of [ny+1] are added sequentially to y. temp middle;

[0018] (4.4a) If y temp If the total distance traveled by bus y0 is less than the total distance traveled by bus y0, then y0 will be... temp Assign the value to y0, y temp If the value is an empty set, increment my by 1 and return to step (4.3a) until my+1 = Num; otherwise, execute step (4.5a).

[0019] (4.5a) Assign y0 to y iy ;

[0020] Where Num is the number of elements in y0, my = 1, 2, ..., Num; y[c] represents the c-th element value in the set or sequence y; iy is the seventh process variable, with an initial value of 1; jy is the eighth process variable, with an initial value of 2; Ny is the number of elements in Y, Y = {y1, y2, ..., y...} Ny};y temp Initially

[0021] (5) Yt={v0}×Yo×Yd, where × is the Cartesian product, and the minimum value of the bus travel distance of each element in Yt is the final target path of the customized bus system between urban areas.

[0022] Furthermore, the shortest distance method between regions described in step (1) is as follows:

[0023] (1.1) D (Vo→Vd) The minimum value d in oi,dj The value is assigned to positive infinity, and the assignment continues until the starting point corresponding to the minimum value is reached. Add the starting point and ending point corresponding to the minimum value to Vod and Vdo respectively; in each loop, increment the first intermediate variable numi and the second intermediate variable numj by 1, and initialize numi and numj to 0;

[0024] (1.2) In D (Vo→Vd) The middle loop finds the endpoint dj with the shortest distance starting from oi, adds dj to Vdo, and increments numj by 1 until numj is not less than the threshold.

[0025] (1.3) Assign numj to 0. If numi is less than the threshold, return to step (1.1). Otherwise, output Vod and Vdo.

[0026] Furthermore, the threshold is Where Tn is the number of starting points and Tm is the number of ending points. This indicates rounding down to the nearest integer.

[0027] Furthermore, the method for generating the origin region travel sequence Yo using the insertion method in step (2) is as follows:

[0028] (2.1b) Creation Create the first process variable TempVod = Vod;

[0029] (2.2b) Create a second process variable oTemp = Vo = {v1, v2, ..., v Tn The bus starts at v0, and any node from TempVod is taken as the destination v. od v od ∈TempVod, create a travel sequence for the origin region. v od Add to sequence yo otemp , that is yo otemp ←{v od}, v od Remove from TempVod and oTemp, i.e., TempVod = TempVod - {v od}, oTemp=oTemp-{v od}; where ← indicates assignment, Indicates that yo otemp Assigned value

[0030] (2.3b) Take any point v from oTemp oi , will v oi insert yo otemp sequence v od Before the node, make yo otemp Sequence path increment Δyo otemp At least, v oi Delete from oTemp, i.e., oTemp = oTemp - {v oi}, Δyo otemp The calculation method is as follows: If v oi insert yo otemp The first item in the sequence, followed by v ok ,but If v oi insert yo otemp node v in the sequence oj and v ok Between,

[0031] (2.4b) If |oTemp|>0, where |oTemp| represents the number of elements in set oTemp, return (2.3b); otherwise, proceed to step (2.5b).

[0032] (2.5b) Let the variable toi be the number of elements in the set Yo, i.e., toi = |Yo|, and create the third process variable yo. toi+1 yo toi+1 ←yo otemp ,Yo←Yo∪{yo toi+1};

[0033] (2.6b) If |TempVod|>0, return to (2.2b); if |TempVod|=0, execute (2.7b);

[0034] (2.7b) Output the travel sequence Yo of the origin region.

[0035] Furthermore, the method for generating the destination region travel sequence Yd using the insertion method in step (3) is as follows:

[0036] (3.1b) Creation Create the fourth process variable TempVdo = Vdo;

[0037] (3.2b) Create the fifth process variable dTemp = Vd = {v Tn+1 ,v Tn+2 ,…,v Tn+Tm}, take any node from TempVdo as the starting point v do vdo ∈TempVdo, create a travel sequence for the destination region. v do Add sequence yd dtemp yd dtemp ←{v do}, v do Remove from TempVdo and dTemp, i.e., TempVdo = TempVdo - {v do}, dTemp=dTemp-{v do};

[0038] (3.3b) Take any node v from dTemp di , will v di Insert yd dtemp sequence v do After the node, make yd dtemp Sequence path increment Δyd dtemp At least, v di Delete from dTemp, i.e., dTemp = dTemp - {v di},Δyd dtemp The calculation method is as follows: If v di Insert yd dtemp The last item in the sequence has a predecessor node v. dj ,but If v di Insert yd dtemp node v in the sequence dj and v dk Between,

[0039] (3.4b) If |dTemp|>0, return to (3.3b); otherwise, proceed to step (3.5b).

[0040] (3.5b) Take the variable tdi as the number of elements in set Yd, i.e., tdi = |Yd|, and create the sixth process variable yd. tdi+1 yd tdi+1 ←yd dtemp ,Yd←Yd∪{yd tdi+1};

[0041] (3.6b) If |TempVdo|>0, return to (3.2b); otherwise, proceed to step (3.7b).

[0042] (3.7b) Output the destination area travel sequence Yd.

[0043] Furthermore, the fast exchange method described in step (4) is as follows:

[0044] (4.1b) Let the seventh process variable Y be the complete set of travel sequences, Y = {y1, y2, …, y Ny}, where the number of elements in the sequence Y is Ny, that is, |Y| = Ny. Create the travel sequence y0 ← y1, create the swapped travel sequence y swap ← y2, create the process travel sequence Create the eighth process variable iy ← 1, create the ninth process variable jy ← 2. At this time, the number of elements in both y0 and y swap is Num = |y1|;

[0045] (4.2b) Take my ← 1;

[0046] (4.3b) Add the elements from y0[1] to y0[my] in y0 to y temp in sequence;

[0047] (4.4b) Find the element y swap [ny] = y0[my] in y swap . If or y swap [ny + 1] = y0[Num] or y swap [ny + 1] ∈ y temp , jump to step (4.7b). Otherwise, add y swap [ny + 1] to y temp in sequence;

[0048] (4.5b) Add the elements from y0[my + 1] to y0[Num] in y0, and the elements not equal to y swap [ny + 1], to y temp in sequence;

[0049] (4.6b) Compare the total bus travel distance of y0 and the total bus travel distance of y temp If then y0 ← y temp ; <​​​​​​​​​​​​​​←y0, iy←iy + 1, jy←1. If iy < Ny, then y0←y iy , y swap ←y jy , return (4.2b); otherwise, execute step (4.11b);

[0054] (4.11b) Output the optimized regional travel sequence set Y.

[0055] Furthermore, the calculation formulas for the total bus travel distance of y temp and the total bus travel distance of y0 are respectively:[[]]

[0056]

[0057]

[0058] Furthermore, the method for calculating the minimum value of the distances of each element in Yt is as follows:[[]]

[0059] (5.1) The sequence yt in Yt yti ={v0}⊙y yto ⊙y ytd , where ⊙ represents concatenation in order, y yto ∈Yo, y<000)0134>∈Yd, then the total distance of yt yti [[]]

[0060] [[]] [[]] [[]]

[0061] [[]](5.2) Find the minimum value of the distances of each element in Yt where S Yt represents calculating the total distance of each element in the set Yt respectively, and the sequence yt yti [[ID=5o]]is the target path of the bus system;

[0062] where y yto [k] represents the k-th element in y yto [[ID=57}}, and y ytd [k] represents the k-th element in y ytd [[ID=61}}.

[0063] The electronic device of the present invention includes a memory, a processor, and a computer program stored on the memory and executable on the processor. When the computer program is loaded into the processor, it implements the fast cross-path scheduling method for the inter-city customized bus system described above.

[0064] The computer-readable storage medium of the present invention stores a computer program. When the computer program is executed by a processor, it implements the fast cross-path scheduling method for the inter-city customized bus system described above.

[0065] Beneficial effects: Compared with the prior art, the advantages of the present invention are as follows:

[0066] 1. This method does not use probability distributions during implementation, effectively avoiding fluctuations in the final path results and maintaining the stability of the final optimized path;

[0067] 2. Compared with traditional greedy algorithms that directly obtain the relatively optimal path, this method establishes a set of inter-regional travel nodes based on the characteristic that the distance between nodes in different regions is much greater than the distance between nodes in different regions. These nodes are then used as the endpoint of the starting region and the starting point of the endpoint region, respectively. This method covers the range in which the optimal solution may occur to the greatest extent, significantly reduces the range of the optimal solution, and effectively reduces the overall computational scale.

[0068] 3. The optimization of the starting and ending regions adopts the fast swap method, which mainly uses addition operations and does not use floating-point operations throughout, thus avoiding complex calculations. It can make full use of the CPU's high-speed integer operation characteristics, and the number of operations is linearly related to the number of traversed nodes. It is especially suitable for high-speed single-threaded integer operations and can support fast operation on low-configuration computers or servers, thus better supporting real-time response requirements. Attached Figure Description

[0069] Figure 1 This is a flowchart of the fast cross-path scheduling method of the present invention.

[0070] Figure 2 This is a flowchart of the shortest distance method between regions according to an embodiment of the present invention.

[0071] Figure 3 This is a flowchart illustrating the generation of a sequence containing start and end nodes using the insertion method, as described in an embodiment of the present invention.

[0072] Figure 4 This is a flowchart illustrating the generation of a node sequence with a starting point using the insertion method, according to an embodiment of the present invention.

[0073] Figure 5 This is a flowchart of the fast exchange method according to an embodiment of the present invention. Detailed Implementation

[0074] The technical solution of the present invention will be further described below with reference to the accompanying drawings.

[0075] like Figure 1 As shown, the rapid cross-path scheduling method for the customized intercity bus system of the present invention includes the following steps:

[0076] (1) Let the starting point of the bus be v0, and add the starting points of all Tk passengers assigned to this bus to the set Vo, i.e., Vo = {v1, v2, ..., v Tn}, Tn is the starting number of passengers on this bus, v1~v Tn Let Tk be the starting points of the bus, where Tn ≤ Tk; add the destinations of all passengers on this bus to the set Vd, i.e., Vd = {v...} Tn+1 ,v Tn+2 ,…,v Tn+Tm}, v Tn+1 ~v Tn+Tm For Tk passengers, where Tm ≤ Tk, merge Vo and Vd into a set of stops: V = Vo ∪ Vd = {v1, v2, ..., v...} Tn ,v Tn+1 ,…,v Tn+Tm}, the stops within set V are collectively referred to as nodes. Based on static map data, list the OD matrix D of Vo→Vo. (Vo→Vo) =(d oi,oj ) Tn×Tn Where oi∈Vo, oj∈Vo; list the OD matrix D of Vo→Vd. (Vo→Vd) =(d oi,dj ) Tn×Tm Where oi∈Vo, dj∈Vd; list the OD matrix D of Vd→Vd. (Vd→Vd) =(d di,dj ) Tm×Tm Where di∈Vd, dj∈Vd, and d x,y This represents the distance traveled by the bus from the starting point x to the ending point y. All distances mentioned below refer to the bus travel distance. All variables i, j, k, m, n, etc. in this article are local process variables, and their valid range is only within the local process of use.

[0077] (2) Set the constant Number. in This indicates rounding down, and constructing the set of starting and ending regions Vod and the set of starting and ending regions Vdo using the shortest distance method between regions;

[0078] like Figure 2 As shown, in step (2), the steps of constructing the starting region-ending region set Vod and the ending region-starting region set Vdo using the shortest distance method between regions are as follows:

[0079] (2.1) Create a set of starting and ending regions Create the starting point set of the endpoint region Create the first intermediate variable matrix D odtemp =D (Vo→Vd) Create a first intermediate variable numi←0, and a second intermediate variable numj←0, where ← represents assignment, that is, assigning the value to the variable to the left of the ← symbol;

[0080] (2.2) Find matrix Dodtemp The starting point corresponding to the minimum value in, that is, d oi,dj = argmin(D odtemp ), where oi ∈ Vo, dj ∈ Vd, set the d in the matrix D odtemp to infinity, that is, d oi,dj ← ∞; if oi,dj then Vod = Vod ∪ {oi}, Vdo = Vdo ∪ {dj}, numi ← numi + 1, numj ← numj + 1; if oi ∈ Vod, return to step (2.2);

[0081] (2.3) Find the end point dj of the shortest distance starting from oi in the matrix D odtemp , d oi,dj = argmin(D odtemp ), Vdo = Vdo ∪ {dj}, numj = numj + 1;

[0082] (2.4) If numj < Number, return to step (2.3); otherwise execute step (2.5);

[0083] (2.5) numj ← 0, if numi < Number, return to step (2.2); if numi ≥ Number, otherwise execute step (2.6);

[0084] (2.6) Output the end point set Vod of the starting point area and the starting point set Vdo of the end point area.

[0085] (3) Taking each node in the set Vod as the end point, traverse all nodes in the set Vo, and generate a set Yo = {yo1, yo2,..., yo Number} containing Number initial starting point area travel sequences by the method of generating the shortest path node sequence including the starting point and the end point through the insertion method;

[0086] As Figure 3 shown, in the said step (3), the steps of the method of generating the shortest path node sequence including the starting point and the end point by the insertion method are:

[0087] (3.1) Create Create the first process variable TempVod = Vod;

[0088] (3.2) Create the second process variable oTemp = Vo = {v1, v2,..., v Tn}, the starting point of the bus is v0, take any node from TempVod as the end point v od , v od ∈TempVod, create the starting point area travel sequence​ v od Add to sequence yo otemp , that is yo otemp ←{v od}, v od Remove from TempVod and oTemp, i.e., TempVod = TempVod - {v od}, oTemp=oTemp-{v od};

[0089] (3.3) Take any point v from oTemp oi , will v oi insert yo otemp sequence v od Before the node, make yo otemp Sequence path increment Δyo otemp At least, v oi Delete from oTemp, i.e., oTemp = oTemp - {v oi}, Δyo otemp The calculation method is as follows: If v oi insert yo otemp The first item in the sequence, followed by v ok ,but If v oi insert yo otemp node v in the sequence oj and v ok Between,

[0090] (3.4) If |oTemp|>0, where |oTemp| represents the number of elements in set oTemp, return (3.3); otherwise, proceed to step (3.5).

[0091] (3.5) Let the variable toi be the number of elements in the set Yo, i.e., toi = |Yo|, and create the third process variable yo. toi+1 yo toi+1 ←yo otemp ,Yo←Yo∪{yo toi+1};

[0092] (3.6) If |TempVod|>0, return to (3.2); if |TempVod|=0, execute (3.7);

[0093] (3.7) Output the travel sequence Yo of the origin region.

[0094] (4) Taking each node in set Vdo as the starting point, traverse all nodes in set Vd, and generate a set Yd = {yd1, yd2, ..., yd...} containing Numd = |Vdo| initial and final destination region travel sequences by using the insertion method to generate the shortest path node sequence containing the starting point. Numd};

[0095] like Figure 4 As shown, in step (4), the steps of generating the shortest path node sequence containing the starting point using the insertion method are as follows:

[0096] (4.1) Creation Create the fourth process variable TempVdo = Vdo;

[0097] (4.2) Create the fifth process variable dTemp = Vd = {v Tn+1 ,v Tn+2 ,…,v Tn+Tm}, take any node from TempVdo as the starting point v do v do ∈TempVdo, create a travel sequence for the destination region. v do Add sequence yd dtemp yd dtemp ←{v do}, v do Remove from TempVdo and dTemp, i.e., TempVdo = TempVdo - {v do}, dTemp=dTemp-{v do};

[0098] (4.3) Take any node v from dTemp di , will v di Insert yd dtemp sequence v do After the node, make yd dtemp Sequence path increment Δyd dtemp At least, v di Delete from dTemp, i.e., dTemp = dTemp - {v di},Δyd dtemp The calculation method is as follows: If v di Insert yd dtemp The last item in the sequence has a predecessor node v. dj ,but If v di Insert yd dtemp node v in the sequence dj and v dk Between,

[0099] (4.4) If |dTemp|>0, return to (4.3); otherwise, proceed to step (4.5).

[0100] (4.5) Take the variable tdi as the number of elements in set Yd, i.e., tdi = |Yd|, and create the sixth process variable yd. tdi+1 yd tdi+1 ←yd dtemp ,Yd←Yd∪{yd tdi+1};

[0101] (4.6) If |TempVdo|>0, return to (4.2); otherwise, proceed to step (4.7).

[0102] (4.7) Output the travel sequence Yd of the destination area.

[0103] (5) Let Y be the seventh process variable. Optimize Y by switching Y←Yo using the fast exchange method, and save Y as Yo, i.e., Yo←Y, to obtain the optimized starting area travel sequence set Yo; Optimize Y by switching Y←Yd using the fast exchange method, and save Y as Yd, Yd←Y, to obtain the optimized ending area travel sequence set Yd.

[0104] like Figure 5 As shown, in step (5), the step of optimizing the regional travel sequence set Y using the fast exchange method is as follows:

[0105] (5.1) Let the seventh process variable Y be the complete set of travel sequences, Y = {y1, y2, ..., y3}. Ny}, where the sequence Y has Ny elements, i.e., |Y|=Ny, create a travel sequence y0←y1, and create an exchange travel sequence y swap ←y2, Creating the travel sequence Create the eighth process variable iy←1, and create the ninth process variable jy←2. At this point, y0 and y swap The number of elements in each sequence is Num = |y1|, and y0[my] represents the my-th element in the sequence y0, where my∈[1,|y0|]. This represents the distance between the my-th element and the (my+1)-th element in sequence y0;

[0106] (5.2) Take my←1;

[0107] (5.3) Add y0[1] to y0[my] sequentially to y0. temp middle;

[0108] (5.4) In y swap Find element y swap [ny] = y0[my], if or yswap [ny + 1] = y0[Num] or y swap [ny + 1] ∈ y temp , jump to step (4.7), otherwise add y swap [ny + 1] to y temp ;

[0109] (5.5) Add each element from y0[my + 1] to y0[Num] in y0, and the elements not equal to y swap [ny + 1] to y temp ;

[0110] (5.6) Compare the total distance of y0 and y temp 's total distance If then y0 ← y temp ;

[0111] (5.7) my ← my + 1, if my < Num - 1, return to step (5.3); otherwise execute step (5.8);

[0112] (5.8) jy ← jy + 1, if jy = iy, then jy ← jy + 1;

[0113] (5.9) If jy < Ny, return to step (5.2); otherwise execute step (5.10);

[0114] (5.10) y iy ← y0, iy ← iy + 1, jy ← 1, if iy < Ny, then y0 ← y iy , y swap ← y jy , return to (5.2); otherwise execute step (5.11);

[0115] (5.11) Output the optimized set of regional travel sequences Y.

[0116] (6) Take Yt = {v0} × Yo × Yd, where × is the Cartesian product, and find the minimum value of the distances of each element in the sequence Yt as the final target path of the customized bus system between urban regions.

[0117] In the said step (6), the steps to find the minimum value of the distances of each element in the sequence Yt are as follows:

[0118] (6.1) Take Yt = {v0} × Yo × Yd, where × is the Cartesian product, and obtain

[0119] Yt = {yt1, yt2,..., yt yti ,..., yt Number×Numd};

[0120] (6.2) If the sequence yt in Yt is yti ={v0}⊙y yto ⊙y ytd , where ⊙ indicates sequential connection, y yto ∈Yo,y ytd ∈Yd, then yt yti Total distance

[0121]

[0122] (6.3) Find the minimum value of the path length of each element in the sequence Yt. Where S Yt This means calculating the total distance for each element in the sequence Yt. yti This refers to the final target route for the customized public transport system between urban areas.

[0123] The method described in this invention will be verified using specific data below.

[0124] (1) Let the starting point of the bus be v0, and add the starting points of all 50 passengers assigned to this bus to the set Vo, i.e., Vo = {v1, v2, ..., v 42 The starting number of passengers on this bus is Tn = 42, and v1 ~ v 42 Given 50 starting points, add the destinations of all passengers on this bus to the set Vd, i.e., Vd = {v...} 43 ,v 34 ,…,v 80 The number of passengers on this bus at their destination is Tm = 38, v 43 ~v 80 For the destination of 50 passengers, merge Vo and Vd into a set of stops: V = Vo ∪ Vd = {v1, ..., v2} 42 ,v 43 ,…,v 80}, the stops within set V are collectively referred to as nodes. Based on static map data, list the OD matrix D of Vo→Vo. (Vo→Vo) =(d i,j ) 42×42 Where i∈Vo, j∈Vo; list the OD matrix D of Vo→Vd. (Vo→Vd) =(d i,j ) 42×38 Where i∈Vo, j∈Vd; list the OD matrix D of Vd→Vd. (Vd→Vd) =(d i,j ) 38×38 Where i∈Vd, j∈Vd, and above d i,jThe distance traveled by the bus from the starting point i to the ending point j is the total distance traveled by the bus. All distances mentioned below refer to the total distance traveled by the bus.

[0125] (2) Set constants The steps to construct the set of starting and ending regions, Vod, and the set of ending and starting regions, Vdo, using the shortest distance method between regions are as follows:

[0126] (2.1) Create a set of starting and ending regions Create the starting point set of the endpoint region Create intermediate variable matrix D odtemp =D (Vo→Vd) Create the first intermediate variable numi←0, and create the second intermediate variable numj←0;

[0127] (2.2) Find matrix D odtemp The starting point corresponding to the minimum value in, i.e., d oi,dj =argmin(D odtemp ), where oi∈Vo, dj∈Vd, and matrix D odtemp d in oi,dj Set to infinity, i.e., d oi,dj ←∞; if Then Vod = Vod∪{oi}, Vdo = Vdo∪{dj}, numi ← numi+1, numij ← numi+1; if oi∈Vod, return (2.2); at this time if d oi,dj =argmin(D odtemp Find oi = v 31 dj=v 52 , matrix D odtemp In like Vod=Vod∪{v 31}, Vdo=Vdo∪{v 52}, numi=1, numj=1; if v 31 ∈Vod, return (2.2);

[0128] (2.3) In matrix D odtemp Find the endpoint dj with the shortest distance from oi as the starting point. oi,dj =argmin(D odtemp ), Vdo=Vdo∪{dj}, numj=numj+1; at this time oi=v 31 , If we get dj = v 45 Vdo = Vdo∪{v 45}, numj = numj + 1 = 2;

[0129] (2.4) If numj < Number, return to (2.3); at this time, numj = 2, so return to (2.3). If numj = 8, then continue to execute downward;

[0130] (2.5) numj ← 0. If numi < Number, return to (2.2); at this time, numi = 1, so return to (2.2). If numi = 8, then continue to execute downward;

[0131] (2.6) Output the set of end points of the starting area Vod, Vod = {v6.v 14 ,v 18 ,v 25 ,v 29 ,v 31 ,v 37 ,v 40};

[0132] And the set of starting points of the end area Vdo, Vdo = {v 45 ,v 49 ,v 52 ,v 54 ,v 59 ,v 63 ,v 67 ,v 72 ,v 78 ,v 80};

[0133] (3) Taking each node in the set Vod as the end point, traverse all nodes in the set Vo, and generate a set Yo = {yo1, yo2,..., yo Number} of the shortest path node sequences containing the starting and ending points by the method of inserting to generate the shortest path node sequence. At this time, Number = 8, so generate a set Yo = {yo1, yo2,..., yo8} of 8 initial starting area travel sequences. The steps are as follows:

[0134] (3.1) Create Create the first process variable TempVod = Vod;

[0135] (3.2) Create the second process variable oTemp = Vo = {v1, v2,..., v Tn} with the starting point v0, take any node from TempVod as the end point v od ,v od ∈ TempVod, create the starting area travel sequence Add v od to the sequence yo otemp , that is, yo otemp ← {v od}, add vod Remove from TempVod and oTemp, i.e., TempVod = TempVod - {v od}, oTemp=oTemp-{v od At this point, create a process variable set oTemp = Vo = {v1, ..., v}. 42 Starting from v0, the first node, v6, is retrieved from TempVod and used as the destination to create a travel sequence yo for the starting region. otemp ←{v6}, remove v6 from TempVod and oTemp, i.e.:

[0136] TempVod={v 14 ,v 18 ,v 25 ,v 29 ,v 31 ,v 37 ,v 40},

[0137] oTemp=oTemp-{v6}={v1,…,v5,v7,…,v 42};

[0138] (3.3) Take any point v from oTemp oi , will v oi insert yo otemp sequence v od Before the node, make yo otemp Sequence path increment Δyo otemp At least, v oi Delete from oTemp, i.e., oTemp = oTemp - {v oi}, Δyo otemp The calculation method is as follows: If v oi insert yo otemp The first item in the sequence, followed by v ok ,but If v oi insert yo otemp node v in the sequence oj and v ok Between,

[0139] At this point, take the first node v1 from oTemp and delete v1 from oTemp. That is, oTemp = oTemp - {v1} = {v2, ..., v5, v7, ..., v 42}, insert v1 into yo otemp Before the v6 node in sequence, make yo otemp= {v1, v6}, take the first node v2 from oTemp, and delete v2 from oTemp, that is, oTemp = oTemp - {v2} = {v3, v4, v5, v7, ..., v 42}, insert v2 into yo otemp Before node v6 in sequence, increase the sequence path increment Δyo. otemp At least, if If node v2 is inserted into yo otemp The first position in the sequence, then Insert node v2 into yo otemp After sequence node v1, then Since 1065 < 3213, node v2 is inserted into yo. otemp Before sequence node v1, yo otemp ={v2,v1,v6}; if Insert node v2 into yo otemp Before sequence node v1 Since 3632 > 3213, node v2 is inserted into yo. otemp After sequence node v1, yo otemp ={v1,v2,v6};

[0140] (3.4) If |oTemp|>0, return to (3.3); at this point, check the number of elements in set oTemp. If |oTemp|>0, return to step (3.3) and continue adding the nodes in Temp to yo. temp In the sequence; otherwise, proceed downwards;

[0141] (3.5) Let the variable toi be the number of elements in the set Yo, i.e., toi = |Yo|, and create the third process variable yo. toi+1 yo toi+1 ←yo otemp ,Yo←Yo∪{yo toi+1 At this point, we take the variable toi as the number of elements in set Yo. Since set Yo is currently empty (toi = |Yo| = 0), we create the starting region travel sequence yo1←yo. temp , Yo←Yo∪{yo1}, that is, Yo={yo1};

[0142] (3.6) If |TempVod|>0, return (3.2); at this time, TempVod={v 14 ,v 18 ,v 25 ,v 29 ,v 31 ,v 37 ,v40 Therefore, |TempVod|=7; since |TempVod|>0, return to (3.2); otherwise continue running downwards;

[0143] (3.7) Output the travel sequence Yo = {yo1, yo2, ..., yo} from the origin region. Number}; At this point, output the travel sequence Yo = {yo1,yo2,…,yo8} of the starting area.

[0144] (4) Taking each node in set Vdo as the starting point, traverse all nodes in set Vd, and generate a set Yd = {yd1, yd2, ..., yd...} containing Numd = |Vdo| initial and final destination region travel sequences by using the insertion method to generate the shortest path node sequence containing the starting point. Numd}; At this time, Numd = 10, with set Vdo = {v 45 ,v 49 ,v 52 ,v 54 ,v 59 ,v 63 ,v 67 ,v 72 ,v 78 ,v 80 Each node in the set Vd represents a starting point. By traversing all nodes in the set Vd, and generating a sequence of shortest path nodes containing the starting points using the insertion method, a set Yd = {y1, y2, ..., y3} is generated to form the initial destination region travel sequence. 10 The steps are as follows:

[0145] (4.1) Creation Create the fourth process variable TempVdo = Vdo;

[0146] (4.2) Create the fifth process variable dTemp = Vd = {v Tn+1 ,v Tn+2 ,…,v Tn+Tm}, take any node from TempVdo as the starting point v do v do ∈TempVdo, create a travel sequence for the destination region. v do Add sequence yd dtemp yd dtemp ←{v do}, v do Remove from TempVdo and dTemp, i.e., TempVdo = TempVdo - {v do}, dTemp=dTemp-{v do}; At this time, dTemp = {v 43 ,…,v80}, retrieve the first node v from TempVdo. 45 As the starting point v do Create a destination area travel sequence yd temp ←{v 45}, v do Remove from TempVdo and dTemp, i.e., TempVdo = {v 49 ,v 52 ,v 54 ,v 59 ,v 63 ,v 67 ,v 72 ,v 78 ,v 80}, dTemp=dTemp-{v 45}={v 43 ,v 44 ,v 46 ,…,v 80};

[0147] (4.3) Take any point v from dTemp di , will v di Insert yd dtemp sequence v do After the node, make yd dtemp Sequence path increment Δyd dtemp At least, v di Delete from dTemp, i.e., dTemp = dTemp - {v di},Δyd dtemp The calculation method is as follows: If v di Insert yd dtemp The last item in the sequence has a predecessor node v. dj ,but If v di Insert yd dtemp node v in the sequence dj and v dk Between,

[0148] At this point, take the first node v from dTemp. 43 , will v 43 Insert yd temp sequence v 45 After the node, yd temp ={v 45 ,v 43}, delete v from dTemp 43 dTemp = dTemp - {v 43}={v 44 ,v 46,…,v 80}; Take the first node v from dTemp 44 , will v 44 Delete from dTemp, i.e., dTemp = dTemp - {v di}={v 46 ,…,v 80}, v 44 Insert yd temp sequence v 45 After the node, make yd temp Sequence path increment Δyd temp At least, if v 44 Insert yd temp sequence v 45 Nodes and v 43 Between nodes v 44 Insert yd temp sequence v 43 After the node Since 2100 < 2690, therefore v 44 Insert yd temp sequence v 43 After the node, i.e., yd temp ={v 45 ,v 43 ,v 44};like v 44 Insert yd temp sequence v 45 Nodes and v 43 Between nodes Because 3100 > 2690, therefore v 44 Insert yd temp sequence v 45 Nodes and v 43 Between nodes, i.e., yd temp ={v 45 ,v 44 ,v 43};

[0149] (4.4) If |dTemp|>0, return (4.3); at this time dTemp={v 46 ,…,v 80 Since |dTemp| = 35 > 0, we return (4.3) and continue adding elements from dTemp to yd. temp If correct, proceed to the next step; otherwise, continue execution.

[0150] (4.5) Take the variable tdi as the number of elements in set Yd, i.e., tdi = |Yd|, and create the sixth process variable yd. tdi+1yd tdi+1 ←yd dtemp ,Yd←Yd∪{yd tdi+1};

[0151] at this time |Yd|=0, therefore tdi=0, yd tdi+1 ←yd dtemp That is, yd1 = yd dtemp ={v 45 ,v 43 ,v 44 ,…},Yo←Yo∪{yd tdi+1}, that is, Yo←{yd1};

[0152] (4.6) If |TempVdo|>0, return (4.2); at this time, TempVdo={v 46 ,…,v 80 Since |TempVdo|>0, we return to (4.2); execution continues until |TempVdo|=0.

[0153] (4.7) Output the travel sequence Yd = {yd1, yd2, ..., yd} to the destination region. Numd At this point, Numd = 10, so the output is Yd = {yd1, yd2, ..., yd...}. 10};

[0154] (5) Let Y be the seventh process variable. Optimize Y by switching Y←Yo using the fast exchange method, and save Y as Yo, i.e., Yo←Y, to obtain the optimized starting area travel sequence set Yo; Optimize Y by switching Y←Yd using the fast exchange method, and save Y as Yd, Yd←Y, to obtain the optimized ending area travel sequence set Yd. The steps are as follows:

[0155] (5.1) Let the process set Y be the complete set of travel sequences, Y = {y1, y2, ..., y3} Ny}, where the sequence Y has Ny elements, i.e., |Y|=Ny, create a travel sequence y0←y1, and create an exchange travel sequence y swap ←y2, Creating the travel sequence Create the eighth process variable iy←1, and create the ninth process variable jy←2. At this point, y0 and y swap The set contains Num = |y1| elements, where y0[my] represents the my-th element in the set y0, and my∈[1,|y0|]. This represents the distance between the my-th element and the (my+1)-th element in sequence y0;

[0156] If Y ← Yo, then N = 8, Y = {y1, y2, ..., y8}; if Y ← Yd, then N = 10, Y = {y1, y2, ..., y8}. 10 Taking Y←Yo as an example, create a travel sequence y0←y1, and create an exchange travel sequence y swap ←y2, Creating the travel sequence Create process variable iy←1, create process variable jy←2, at this time y0 and y swap The number of elements in each is Num = |y1| = 42, and y0[my] represents the my-th element in y0, where my∈[1,42].

[0157] (5.2) Take my←1;

[0158] (5.3) Add y0[1] to y0[my] sequentially to y0. temp In the middle; at this time y0=y1, if y1={v 11 ,v3,…,v6}, then y0[1] is y1[1]=v 11 Add to y temp In, that is, y temp ={y0[1]}={v 11};

[0159] (5.4) In y swap Find element y swap [ny] = y0[my], if or y swap [ny+1] = y0[Num] or y swap [ny+1]∈y temp Jump to (5.7), otherwise y swap [ny+1] Add to y temp In the middle; at this time, if y2 = {v 10 ,…,v 11 ,v 15 ,…,v 14}, y swap =y2, y0[my]=y1[1]=v 11 , in y swap Find element v 11 , will y swap Chinese v 11 The element v after 15 Add to y temp In, that is, y temp ={v 11 ,v 15}; If y2={v 10 ,…,v 11 ,v6,…,v 14}, because yswap v in 11 The element after v is v6, which is exactly equal to y0

[42] , that is, the last element in y0, so directly jump to (5.7);

[0160] (5.5) For each element from y0[my + 1] to y0[Num] in y0, and not equal to y swap [ny + 1], add them to y temp in sequence; at this time, y temp ={v 11 , v 15}}. Add the elements after v in y0, except v 11 , to y 15 [[ID=二十]]in sequence, that is, y temp ={v temp , v 11 , v3, …, v6};

[0161] (5.6) Compare the total distance of y0 and the total distance of y and y temp If then y0 ← y ; at this time, compare temp and and If then y0 remains unchanged. If Replace y0 with y, that is, y0 = y temp ={v temp , v 11 , v3, …, v6};

[0162] (5.7) my ← my + 1. If my < Num - 1, return to (5.3); at this time, my = 2, Num = 42, my < Num - 1, so return to (5.3); otherwise, continue to execute downward; return to (5.3); otherwise, continue to execute downward;

[0163] (5.8) jy ← jy + 1. If jy = iy, then jy ← jy + 1; at this time, jy = 2 + 1 = 3, iy = 1, so continue to execute downward; if iy = 3, then jy increments by 1 again, that is, jy = 3 + 1 = 4, and then continue to execute downward;

[0164] (5.9) If jy < Ny, return to (5.2); at this time, jy = 3, Ny = 8, jy < Ny, so return to (5.2); otherwise, continue to execute downward;

[0165] (5.10) y iy←y0, iy←iy+1, jy←1, if iy <Ny,y0←y iy y swap ←y jy Return to (5.2); at this point, iy = 1, and assign the y0 sequence to y. i That is, y1←y0, iy=1+1=2, jy=1, Ny=8, at this time iy <Ny,y0←y2,y swap ←y1, return to (5.2); otherwise continue execution downwards;

[0166] (5.11) Output the optimized regional travel sequence set Y;

[0167] (6) Take Yt = {v0} × Yo × Yd, where × is the Cartesian product. The minimum value of the distance of each element in the sequence Yt is the final target path of the customized intercity bus system. The steps are as follows:

[0168] (6.1) Take Yt = {v0} × Yo × Yd, where × is the Cartesian product, and get Yt = {yt1, yt2, ..., yt} yti ,…,yt Number×Numd}; At this time, Number = 8, Numd = 10, yt1 = {v0} × Yo[1] × Yd[1], that is, yt1 = {v0, v 11 ,v 15 ,v3,…,v6,v 45 ,v 43 ,v 44 ,…}, the rest yt2,…,yt 80 List them using the same method;

[0169] (6.2) If the sequence yt in Yt is yti ={v0}⊙y yto ⊙y ytd , where ⊙ indicates sequential connection, y yto ∈Yo,y ytd ∈Yd, then yt yti Total distance

[0170] At this moment |y yto |=42,|y ytd |=38, take y yto =Yo[1]={v 11 ,v 15 ,v3,…,v6},y ytd =Yd[1]={v 45 ,v 43 ,v 44,…},yt1={v0}⊙Yo[1]⊙Yd[1],if S Yo[1] =18365, S Yd[1] =16830, then

[0171] (6.3) Find the minimum value of the path length of each element in the sequence Yt. Where S Yt This means calculating the total distance for each element in the set Yt, where the sequence yt is... yti This is the final target route for the customized public transport system between urban areas; if we find... Then sequence yt3 is the final target route of the customized public transport system between urban areas.

[0172] Based on the same inventive concept, the electronic device of the present invention includes a memory, a processor, and a computer program stored in the memory and capable of running on the processor. When the computer program is loaded onto the processor, it implements the rapid cross-path scheduling method of the customized inter-city bus system.

[0173] Based on the same inventive concept, the computer-readable storage medium of the present invention stores a computer program, which, when executed by a processor, implements the rapid cross-path scheduling method for the customized intercity bus system.

[0174] The computer-readable storage medium may include RAM, ROM, EEPROM, CD-ROM or other optical disc storage devices, magnetic disk storage devices or other magnetic storage devices, flash memory, or any other media that can be used to store desired program code in the form of instructions or data structures and is accessible by a computer.

[0175] The processor is used to execute a computer program stored in memory to implement the various steps in the methods described in the above embodiments.

Claims

1. A rapid cross-route scheduling method for a customized intercity bus system, characterized in that, Includes the following steps: (1) Construct the set of starting and ending regions using the shortest distance method between regions. and the set of starting points of the endpoint region The shortest distance method between regions is as follows: Lieutenant General Minimum Value The value is assigned to positive infinity, and the assignment continues until the starting point corresponding to the minimum value is reached. Then Find the The shortest distance from the starting point to the destination until and The number of iterations is not less than the threshold. The loop ends, and the result is generated. and ; in This is the starting point for all passengers on this bus. This is the final meeting point for all passengers on this bus. for OD matrix, ; Indicates the starting point To the finish line The distance the bus travels; (2) with Each node in the list represents the endpoint, and the process is repeated. All nodes in the origin region are used to generate travel sequences for the origin region via insertion. The method of generating origin region travel sequences using the insertion method The method is as follows: (2.1a) in Choose any node As the destination and to create a travel sequence in the starting area The bus starting point is ,exist Choose any node insert of Previously, distance increment At least, will from Delete them until the entire traversal is complete. All nodes in; (2.2a) will join in , from Select a node as the endpoint for the next iteration, and continue the loop until all nodes have been selected. Output all nodes in the array. ; (3) with Each node in the list is a starting point, and the process is repeated. For all nodes, generate the destination region travel sequence using the insertion method. The method of generating travel sequences for the destination area using the insertion method. The method is as follows: (3.1a) in Choose any node As a starting point and to create a travel sequence for the destination area. ,from Choose any node insert of After that, distance increment At least, will from Delete them until the entire traversal is complete. All nodes in; (3.2a) will join in , from The loop continues until all nodes are selected. Output all nodes in the array. ; (4) Optimize the above using the fast exchange method and The fast exchange method is as follows: Will All sequences in the given row sequence are assigned values ​​in sequence. After each assignment, The remaining sequences are assigned to the exchanged travel sequences in sequence. After completing steps (4.1a) to (4.5a), output the result. Complete the rapid exchange; (4.1a) Let The first in Each sequence is a travel sequence. ,set up The Middle The sequence is an exchange travel sequence. ,Will to Add to the process travel sequence in sequence , Initially ; (4.2a) will The value is assigned to 1; (4.3a) in Find element ,like or equal The last element or Existence In the middle, then Add 1, If the value is an empty set, repeat step (4.3a); otherwise, join in ,Will to China is not equal to The elements are added sequentially to middle; (4.4a) If The total distance traveled by the bus is less than The total distance traveled by the bus will then be Assign to , Assigning it to an empty set, Increment by 1 and return to step (4.3a) until... ; Otherwise, proceed to step (4.5a); (4.5a) will Assign to ; in, for The number of elements in ; Represents a set or sequence The first in Each element value; This is the seventh process variable, with an initial value of 1; This is the eighth process variable, with an initial value of 2; for Number of elements in the middle ; Initially ; (5) ,in It is a Cartesian product. The minimum distance traveled by each element of the bus is the final target route for the customized intercity bus system.

2. The rapid cross-path scheduling method for a customized intercity bus system according to claim 1, characterized in that, The shortest distance method between regions mentioned in step (1) is as follows: (1.1) will minimum value The value is assigned to positive infinity, and the assignment continues until the starting point corresponding to the minimum value is reached. Add the starting and ending points corresponding to the minimum value respectively. and In each loop, the first intermediate variable is... Second intermediate variable Add 1, and The initial value is 0; (1.2) In Find the loop in the middle The shortest distance from the starting point to the destination ,Will join in ,Will Add 1 until... Not less than the first threshold; (1.3) will If the value is assigned to 0, If the value is less than the first threshold, return to step (1.1); otherwise, output... and .

3. The rapid cross-path scheduling method for a customized intercity bus system according to claim 1, characterized in that, The threshold is ,in As the starting quantity, For the number of endpoints, This indicates rounding down to the nearest integer.

4. The rapid cross-route scheduling method for a customized intercity bus system according to claim 1, characterized in that, Step (2) involves generating the origin region travel sequence using the insertion method. The method is as follows: (2.1b) Creation Create the first process variable ; (2.2b) Creating a second process variable The bus starting point is ,from Take any node as the endpoint. , Create a travel sequence in the origin area. ,Will join sequence ,Right now ,Will from and Delete, i.e. , ;in This indicates assignment. Indicates will Assigned value ; (2.3b) From Choose one point from the middle ,Will insert sequence Before the node, make Sequence path increment At least, will from Delete, i.e. , The calculation method is as follows: If insert The first item in the sequence, followed by ,but ,like insert Nodes in the sequence and Between, ; (2.4b) If ,in Represents finding a set If the number of elements is found, return (2.3); otherwise, proceed to step (2.5b). (2.5b) Taking variables For set The number of elements in the middle, i.e. Create a third process variable , ; (2.6b) If Return (2.2b); if Execute (2.7b); (2.7b) Output the travel sequence of the origin region .

5. The rapid cross-path scheduling method for a customized intercity bus system according to claim 1, characterized in that, Step (3) describes generating the destination area travel sequence using the insertion method. The method is as follows: (3.1b) Creation Create the fourth process variable ; (3.2b) Create the fifth process variable ,from Take any node as the starting point. , Create travel sequences for destination areas ,Will join sequence ,Right now ,Will from and Delete, i.e. , ; (3.3b) From Choose any node ,Will insert sequence After the node, make Sequence path increment At least, will from Delete, i.e. , The calculation method is as follows: If insert The last item in the sequence has a predecessor node of . ,but ,like insert Nodes in the sequence and Between, ; (3.4b) If If the condition is met, return to step (3.3b); otherwise, proceed to step (3.5b). (3.5b) Taking variables For set The number of elements in the middle, i.e. Create the sixth process variable , , ; (3.6b) If If the condition is met, proceed to step (3.2b); otherwise, proceed to step (3.7b). (3.7b) Output the travel sequence of the destination area .

6. The rapid cross-path scheduling method for a customized intercity bus system according to claim 1, characterized in that, The fast exchange method described in step (4) is as follows: (4.1b) Let the seventh process variable be... For the complete set of travel sequences, , where the sequence The number of elements in the middle is One, that is Create travel sequences Create exchange travel sequences Creating a travel sequence Create the eighth process variable Create the ninth process variable ,at this time and The number of elements in is indivual; (4.2b) Take ; (4.3b) will middle to Add to in sequence middle; (4.4b) in Find element ,like or or If so, proceed to step (4.7b); otherwise, proceed to step (4.7b). Add to middle; (4.5b) will middle to Each element, and not equal to The elements are added sequentially to middle; (4.6b) Comparison Total distance traveled by the bus and Total distance traveled by the bus ,like ,but ; (4.7b) ,like , If the condition is met, return to step (4.3b); otherwise, proceed to step (4.8b). (4.8b) ,like ,but ; (4.9b) If If the condition is met, return to step (4.2b); otherwise, proceed to step (4.10b). (4.10b) , , ,like ,but , If yes, return to (4.2b); otherwise, proceed to step (4.11b). (4.11b) Output the optimized set of regional travel sequences .

7. The rapid cross-path scheduling method for a customized intercity bus system according to claim 6, characterized in that, The The total distance traveled by the bus and The formulas for calculating the total distance traveled by a bus are as follows: ; 。 8. The rapid cross-path scheduling method for a customized intercity bus system according to claim 1, characterized in that, Calculation in step (5) The method to find the minimum path length of each element is as follows: (5.1) medium sequence ,in Indicates sequential connection. , ,but Total distance: ; (5.2) Find Minimum value of the path of each element in the middle ,in Represents a set Calculate the total distance for each element in the sequence. The target route for the public transportation system; in express The first in One element, express The first in Each element.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the computer program is loaded into the processor, it implements the rapid cross-path scheduling method for a customized inter-city bus system according to any one of claims 1-8.

10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the rapid cross-path scheduling method for the customized inter-city bus system according to any one of claims 1-8.