Bus route planning method based on crowd sensing

By using crowd-sensing technology and optimization algorithms, combined with passenger travel data and bus company revenue, bus route planning is optimized, solving the problems of multiple passenger transfers, long travel times, and low coverage in existing technologies, and achieving efficient, convenient, and sustainable optimization of bus routes.

CN116029470BActive Publication Date: 2026-04-24UNIV OF ELECTRONICS SCI & TECH OF CHINA
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
UNIV OF ELECTRONICS SCI & TECH OF CHINA
Filing Date
2022-12-05
Publication Date
2026-04-24

AI Technical Summary

Technical Problem

Existing bus route planning methods are insufficient to optimize the bus network while ensuring passenger convenience and bus company revenue, resulting in more transfers, longer travel times, and lower coverage.

Method used

We employ a two-level planning model and a shortest path model based on crowd intelligence perception, combined with passenger travel data, to optimize bus route planning using simulated annealing and Dijkstra's algorithm. Considering the dual objective functions of passengers and bus companies, we optimize bus stops and routes, reduce transfers and travel time, and improve coverage.

Benefits of technology

This achieves a balance between passenger convenience and bus company revenue, reduces passenger transfers, shortens travel time, increases bus route coverage, and optimizes the overall integrity and sustainability of the bus network.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure SMS_1
    Figure SMS_1
  • Figure SMS_2
    Figure SMS_2
  • Figure SMS_3
    Figure SMS_3
Patent Text Reader

Abstract

The application discloses a kind of public transport route planning method based on crowd sensing, belong to public transport route planning technical field.The application adopts each wiring, the mode of optimizing network, facing all bus stops, after determining the starting point and end point of bus stop, any pairing between starting point and end point is carried out again, and the direct passenger number between each starting point and end point is recorded, the pair of starting point and end point with maximum direct passenger number is selected, and the shortest public transport route is set along the pair of starting point and end point.Through new building, merging and other ways to bus stop, further optimization of public transport route planning is realized, and the next optimal route is continuously searched, and unreasonable route or bus stop can also be selected and deleted from the built public transport route network by combining with other methods.The application not only fully considers the convenience of urban residents when planning public transport route, but also takes into account the interests of public transport company and the whole city public transport operation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of public transport route planning technology, specifically relating to a public transport route planning method based on crowd intelligence perception. Background Technology

[0002] With the widespread adoption and coverage of mobile smart devices, crowdsourcing sensing networks are gaining increasing popularity, especially mobile-based models. These models incorporate incentive mechanisms that combine competition and collaboration, creating a virtuous cycle of positive motivation. Visual crowdsourcing sensing leverages human flexibility and connectivity to collect large-scale data, analyzes it to enhance understanding, and ultimately makes significant contributions to public safety and environmental monitoring in modern society.

[0003] The problem of bus route planning has existed for many years, mainly including planning and construction. At present, the planning methods of bus route planning mainly include: (1) Based on the balance analysis of bus routes, a dictionary strategy is jointly proposed, taking into account people's travel allocation. (2) In terms of bus route optimization, a two-level planning model that considers the benefits of both passengers and bus companies is proposed. (3) Genetic algorithms are used to find the optimal path to realize the optimization of bus routes. (4) An arc is drawn between any two adjacent stations of all bus routes to construct transfer routes, thereby constructing a transfer network, which can be further transformed into a familiar mathematical model for mathematical analysis and model solving. (5) In terms of bus route optimization, the idea of ​​"deploying one route at a time and optimizing it into a network" is proposed. As the name suggests, for the planning of urban bus routes, the bus network is divided into one route at a time. It is a way of tracing the cause from the result. By analyzing the best alternative route for each station, the direction is determined, and the entire bus route network is gradually constructed. Summary of the Invention

[0004] This invention addresses the planning problem of urban bus routes by employing a crowdsourcing sensing approach to acquire passenger travel data. Based on this data, existing urban bus routes are optimized and planned to improve planning performance.

[0005] This invention provides a bus route planning method based on crowd intelligence perception, which includes the following steps:

[0006] Step 1: Based on the swarm intelligence sensing network, acquire passenger travel data through the mobile smart terminals carried by passengers;

[0007] Step 2: Input the bus route network of the target area, defined as N = (S, E), where S represents the set of bus stops and E represents the set of bus route segments in the target area; for any segment e ∈ E, define l(e) to represent the distance of segment e.

[0008] For all bus routes with a specified origin and destination in the target area, we obtain a set G of bus routes. For any bus route g∈G, we define X. g p represents the order in which bus stops on bus route g are stopped. g Let F represent the fare for bus route g. g This indicates the departure frequency of bus route g;

[0009] Step 3: Use a two-level programming model or a shortest path model to plan the stop order of bus stops for each bus route in the bus route set G, and output the bus route planning results for the target area; the planning methods include: adding stops, deleting stops and / or merging adjacent stops.

[0010] The two-level programming model includes an upper-level programming model for bus routes and a lower-level programming model for passengers. In the upper-level programming model, an objective function is constructed based on the revenue of the bus operator, with the optimization objective being to maximize the revenue of the bus operator under specified influencing factors and constraints. In the lower-level programming model, an objective function is constructed based on the total travel costs of passengers, with the optimization objective being to minimize the total travel costs of passengers under specified influencing factors and constraints. The total travel costs of passengers include: bus fare P and travel time costs, wherein the travel time costs include: waiting time costs W, time costs during the bus ride Y, and transfer time costs Z.

[0011] The shortest path model is as follows: using the bus route network of the target area as the node network graph of the shortest path model, for each adjacent station in the node network graph, the number of passengers between any two adjacent stations on each bus route is determined based on statistical data over a period of time, and the weight factor of the edge between the stations is determined based on the number of passengers; based on the starting station and the ending station of each bus route, the shortest path from the starting station to the ending station is found within a specified circular area of ​​the target area using the shortest path method, until the currently found shortest path satisfies the specified influencing factors and constraints.

[0012] Furthermore, the influencing factors include: passenger demand, road conditions, bus stop location, bus condition and management policies; the constraints include: bus route length, number of double lines and number of transfers.

[0013] Furthermore, the bi-level programming model is specifically configured as follows:

[0014] Let q(i,j) be the passenger flow during a passenger's trip, and its calculation method is as follows:

[0015]

[0016] Among them, f k (i, j) represents the passenger flow when using transfer scheme k in a travel demand where station i is the starting point and station j is the destination. The transfer scheme number k takes the values ​​1, 2, ..., σ(i, j), where σ(i, j) represents the number of transfer schemes from starting point i to destination j, and h is defined. k (i, j) represents the specific transfer route of transfer scheme k;

[0017] The bus fare P is calculated as follows: P = ∑ i,j q(i,j)∑ g∈G p g ;

[0018] Define α as the value per unit of a passenger's time, and calculate the passenger's waiting time cost W based on the value per unit of time α:

[0019]

[0020] And the time cost Y for passengers during their bus ride is:

[0021]

[0022] Among them, v b Indicates the operating speed of the bus;

[0023] Calculate the transfer time cost Z based on the cost β caused by the extra time spent transferring:

[0024]

[0025] Where a and b represent the two buses before and after the passenger's transfer, respectively, and p b This indicates the fare for bus route B;

[0026] The objective function of the lower-level planning model is set as follows:

[0027]

[0028] in, This represents the total travel cost for passengers, where the crowding level function y represents the degree of congestion. g The input x of (x) is u g (i′, j′), its expression is: Among them, u g (i′, j′) represents the passenger flow of the bus in the section of bus route g(i′, j′) from station i′ to station j: n represents the total number of stops included in the current transfer route, and the coefficients μ and ρ are used to characterize the comfort level of passengers when taking the bus (the larger the value, the higher the comfort), and the values ​​are preset values. This indicates the time taken for the bus to travel on segment e of bus route g. This indicates the carrying capacity of bus route g, which the bus passes through section e.

[0029] Let r be the cost per unit kilometer of a bus, and calculate the operating cost R of the bus as follows:

[0030] R = 2∑ g∈G ∑ e∈g r·l(e)

[0031] The objective function of the upper-level planning model is set as follows:

[0032]

[0033] in, Let ω1, ω2, and ω3 represent the revenue generated by the bus company's operation, where ω1, ω2, and ω3 are three pre-defined weights, and ω1 + ω2 + ω3 = 1.

[0034] Furthermore, in the shortest path model, the radius of the specified circular region of the target area is set to be between half and two-thirds of the diagonal length of the entire node network graph, where the distance of this radius is calculated based on the bus travel time.

[0035] In this invention, a "line-by-line wiring, optimized network" approach is adopted. First, for all bus stops, after determining the starting and ending points of each stop, arbitrary pairings are made between the starting and ending points, and the number of direct passengers between each pair is recorded. The pair of starting and ending points with the largest number of direct passengers is selected, and the shortest bus route is set along this pair. Then, bus route planning is further optimized by creating new stops and merging them. The next optimal route is then sought, and other methods can be combined to select and delete unreasonable routes or bus stops from the constructed bus route network.

[0036] The technical solution provided by this invention brings at least the following beneficial effects:

[0037] This invention ensures convenient travel for passengers by combining the general routes of bus lines with passenger traffic data analysis to maximize direct access for as many passengers as possible, reducing transfers and travel time. Simultaneously, it aims to maximize bus line coverage across the city, minimizing unused areas and allowing more urban residents to enjoy the convenience of public transportation while also increasing revenue for the bus company. Furthermore, considering the overall integrity of bus routes, the planning process must take into account the connections between different lines to avoid irrational or operational difficulties. The sustainability of bus routes must also be considered, with unreasonable or impractical routes being redesigned, such as by adding new stops or removing individual stops, while existing routes that reasonably meet passenger needs are selectively retained, balancing new and old routes. This invention not only fully considers the convenience of urban residents but also the interests of bus companies and the overall operation of public transportation in the city when planning bus routes. Detailed Implementation

[0038] To make the objectives, technical solutions, and advantages of the present invention clearer, the embodiments of the present invention will be described in further detail below.

[0039] This invention addresses the problem of urban public transport route planning by collecting data through a crowdsourcing sensing approach and optimizing existing urban public transport routes to varying degrees. Based on user travel data (passenger travel data), this invention comprehensively analyzes and processes this data to establish a shortest path model and a two-level planning model between passengers and public transport. By solving these models (using two algorithms based on a Sioux Falls network), the invention obtains public transport route planning results. A comparative analysis is conducted on aspects such as route coverage, passenger transfer frequency, and travel costs to determine the advantages and disadvantages of each model in public transport route planning. Furthermore, based on pre-defined validation rules, the more reasonable model is identified, and the public transport route planning results for the area to be planned are obtained based on the model comparison results.

[0040] A crowdsourced sensing network is a network based on the Internet of Things (IoT), benefiting from the widespread adoption of mobile smart devices such as smartphones, tablets, and smartwatches. The crowdsourced sensing network is a new sensing network composed of these mobile smart devices. The sensing units of this network are individual mobile smart devices. Users upload various data collected (generated) by their mobile smart devices via mobile networks or the Internet, such as Wi-Fi, to complete the sensing data collection process.

[0041] For public transport route planning in cities of different sizes, it is necessary to consider the city's population, the maximum travel time of citizens, and their usual modes of transportation. Given the significant impact of public transport networks on citizens' lives, urban public transport route planning must incorporate relevant data such as city size and passenger origin-destination (OD) data to ensure convenient travel for passengers. This aims to reduce travel time, distance, and transfer frequency, thereby improving public transport efficiency, promoting the smooth and orderly development of public transport, increasing route coverage, and enhancing the public transport-based travel experience for urban residents. In this invention, the public transport route planning adopts a "line-by-line, network-optimized" approach. First, for all bus stops, the origin and destination points are determined. Then, arbitrary pairings between origin and destination points are performed, and the number of direct passengers between each pair is recorded. The pair with the highest number of direct passengers is selected, and the shortest bus route is established along this pair. Then, by constructing new bus stops and merging existing ones, the bus route planning can be further optimized. Next, the search for the next optimal route continues. Simultaneously, other methods can be used to select and delete unreasonable routes or bus stops from the existing bus network. When adjusting existing bus routes, it's best to avoid large-scale changes. For routes that have recently been updated, minor adjustments can be made. Since the process of generating the bus network involves optimizing one or several routes sequentially, the overall integrity of the network must be considered, and adjustments made from a global perspective. The final optimal route solution may not perfectly reflect reality, so reasonable minor adjustments to the bus network should be made based on relevant factors in daily life, such as the living habits of urban residents.

[0042] When planning bus routes, it is necessary to consider some influencing factors and constraints.

[0043] The influencing factors include passenger demand, road conditions, bus stop location, bus conditions themselves, and relevant management policies. Firstly, regarding passenger demand, where the level of public transportation service can remain unchanged, high-capacity bus routes can be established in areas with high passenger demand; conversely, in areas with low passenger demand, fewer routes are generally opened to address the revenue concerns of bus operating companies. This aims to meet the needs of most passengers, providing broad coverage, reducing travel time, and increasing the rate of direct routes. Secondly, road conditions are crucial. When opening new bus routes or adding new bus stops, it's necessary to consider whether road conditions, such as road width and surface quality, meet the requirements for establishing the routes. Finally, bus stop location is also a factor. This can generally be determined after the bus routes are finalized, and then further refined by considering the optimal distance between adjacent bus stops and any constraints on that distance. The number of buses can also be taken into account to analyze and determine the optimal bus stop location. The physical characteristics of public transport vehicles, such as their passenger capacity, the number of buses allocated to a route, and their size, all influence their compatibility with urban roads to varying degrees. Finally, there are also relevant management policies, including urban traffic management policies and land development policies, which also affect the planning of urban public transport routes.

[0044] The constraints include the length of bus routes, the number of connecting lines, and the number of transfers. Firstly, the length of bus routes is closely related to the total area of ​​the city and the average commuting distance of residents, but it generally ranges from 5km to 15km. If a route is too long, it becomes difficult to schedule bus services, and scheduling becomes more challenging in case of emergencies, leading to scattered passenger flow and reduced public transport efficiency. Conversely, a route that is too short will negatively impact the passenger experience and significantly increase the number of transfers. Secondly, the number of connecting lines is a constraint. A higher number of connecting lines allows for a more even distribution of bus routes and improves the availability of bus stops. However, too many connecting lines should be avoided, as this disrupts the evenness of the city's bus route distribution and can easily cause traffic congestion at bus stops. A low number of connecting lines has less impact, as long as there are accessible buses; generally, the number of connecting lines for a bus route does not exceed five. Finally, there are restrictions on the number of transfers for passengers. Once a passenger needs to transfer, it will increase their travel time. Therefore, the number of transfers should be minimized, and generally, the number of transfers should not exceed two.

[0045] Public transport route planning has a significant impact on urban residents. Therefore, when planning public transport routes, it is essential to fully consider not only the convenience of urban residents' travel but also the interests of public transport companies and the overall operation of the city's public transport system. Thus, the following aspects need to be considered:

[0046] First and foremost, it is essential to ensure convenient travel for passengers. By combining the general routes of bus lines with passenger origin-destination (OD) data analysis, we can ensure that as many passengers as possible can travel directly to their destinations, reducing the number of transfers and travel time, thereby guaranteeing convenient travel for passengers.

[0047] Secondly, the revenue of bus companies must be considered, maximizing the coverage of bus routes throughout the city. Then, the overall integrity of the bus routes needs to be considered; when planning bus routes, the connections between different routes must be taken into account to avoid unreasonable or impractical situations. The sustainability of bus routes also needs to be considered, with unreasonable or impractical routes being replanned, such as adding new bus stops or removing individual stops, while existing routes that reasonably meet passenger travel needs should be selectively retained, taking into account both new and old bus routes.

[0048] Bus route planning involves optimizing a combination of many objectives, including travel time and bus fares. In this invention, we assume a bus route network N = (S, E), where S represents the set of bus stops {1, 2, 3, ..., n}, n represents the number of stops, and E represents the set of bus route segments. If segment e ∈ E, then the distance of this segment is l(e). Assuming the set of bus routes is G, for a given route g ∈ G, we can use X... g The order in which buses stop at various stops along this route can be represented by p. g This indicates the fare for this bus route. The frequency (F) of buses on this route is also mentioned. g To simplify the problem, the departure frequency of buses on all routes can be set to a constant value, thus ensuring that all buses arrive at their destinations evenly. This simplifies the city's bus route planning problem to: based on existing city bus routes and passenger origin-destination (OD) data, plan the stop sequence X of new bus routes for each bus line. g .

[0049] In this embodiment of the invention, the bi-level programming model includes an upper-level programming model for buses and a lower-level programming model for passengers. That is, a bi-level programming model is established between the bus route network and passengers, and this model is used to mathematically process the bus route planning problem. In the upper-level programming model, the main object is the bus company, and a corresponding objective function is constructed based on its revenue, with the aim of maximizing the bus company's revenue. In the lower-level programming model, the main object is the passengers, and a corresponding objective function is constructed based on the total cost of all passenger trips, with the aim of minimizing the total travel costs for passengers in the lower-level programming model.

[0050] The shortest path model is a type of mathematical model that utilizes graph theory. It combines shortest path algorithms (such as Dijkstra's algorithm and Floyd's algorithm) to find the shortest path between points A and B in a node network graph. This model is applicable to both directed and undirected weighted graphs. However, when applied to bus route planning, additional costs, time, and passenger transfer issues need to be considered. Since the starting and ending stations (o and d) for passengers are already determined, only the shortest path between these two points needs to be found. The improvement of this model in this invention mainly considers that the number of passengers traveling between each pair of stations in the graph varies, requiring the addition of weight factors to make route planning more targeted. Furthermore, considering passenger transfers, the transfer problem can be constrained when applying the algorithm, such as searching for the shortest path within a reasonably sized circular area. This avoids the tediousness and inefficiency of a full graph search, prevents excessively long bus routes, and also considers the passenger travel experience.

[0051] In this embodiment of the invention, the simulated annealing algorithm is used to solve the bi-level programming model; and the Dijkstra algorithm is used to solve the shortest path model.

[0052] Simulated annealing is a Monte Carlo iterative solution strategy, a random search algorithm that finds the optimal solution. It originates from the thermodynamic process of annealing. During annealing, as the temperature decreases, the energy state of the object decreases. When the temperature is low enough, the object begins to condense and crystallize, reaching its lowest energy state during crystallization. Therefore, by slowly cooling down—the annealing process—the lowest energy state can be found. Simulated annealing starts at a relatively high temperature and, as the temperature decreases, repeatedly utilizes the probabilistic jump characteristics of the Metropolis sampling strategy to randomly search for the optimal solution of the objective function in the solution space of a multi-objective optimization problem. Therefore, the probability of finding the global optimum can reach 100%.

[0053] The simulated annealing algorithm can be divided into three parts: the objective function, the initial solution, and the neighborhood solution space.

[0054] The first step of the simulated annealing algorithm is initialization. The initial temperature control parameter T should be large enough. The initial solution A0 is the starting point for the entire algorithm to iterate. At the beginning, the initial solution is taken as the optimal solution, that is, the optimal solution A = A0. Under each temperature control parameter T, k iterations are required.

[0055] The second step is an iterative process, which includes the following steps: Randomly select a new solution A1 from the neighborhood N(A0) of the initial optimal solution A0, and then calculate the increment Δf = f(A1) - f(A0). If Δf ≤ 0, then A1 is the new optimal solution, i.e., A = A1; otherwise, consider exp(-Δf / t). k Check if random(0,1) holds true. If it does, then the optimal solution is A = A1.

[0056] The third part involves repeating this step. Then, the temperature parameter T is readjusted, and the condition for terminating the loop is checked again. If the condition is met, the loop terminates; otherwise, the previous iteration process is repeated until the optimal solution is finally found.

[0057] Dijkstra's algorithm calculates the shortest path from any node in a graph to all other nodes. The algorithm uses the starting node as the center and searches outwards layer by layer until the target node is found, thus determining the shortest path. The core idea of ​​Dijkstra's algorithm is to construct a shortest path spanning tree, with the starting node as the root node. The paths from the root node to all other nodes are the shortest paths. In this embodiment of the invention, Dijkstra's algorithm is executed in the network planning of a bus route using a node-marking method.

[0058] This invention compares the planned route coverage, passenger transfer frequency, passenger travel costs, and bus company revenue. Route coverage refers to the percentage of planned bus routes on the city's total roads. Passenger travel costs consist of two parts: the bus fare P and time-related costs. Time-related costs include waiting time W, time on the bus Y, and time spent transferring Z. The total passenger travel cost is the sum of the bus fare and time-related costs. The bus company's revenue comes from passenger fares, minus operating costs such as bus maintenance, fuel costs, and employee salaries (drivers, conductors, etc.). A higher bus company revenue generally indicates a better model.

[0059] In a bilevel programming model, there are two decision-makers: passengers and bus routes (buses). Passengers, as decision-makers, have their own decision variables, namely, choosing their own travel stops, thus generating travel data. This data influences the planning of bus routes, and conversely, the bus routes, after planning their routes, also influence the passengers' choice of travel stops. In the lower-level programming model, the first consideration is the passengers; the fare incurred by passengers when taking the bus is a crucial objective function. Passengers also incur time costs while waiting at bus stops and while riding the bus; these are all issues to be considered in the lower-level programming. Furthermore, passengers may not travel directly by bus, inevitably leading to transfers, thus incurring transfer time costs. Ultimately, it boils down to a passenger flow allocation problem based on passenger transfer plans.

[0060] Assuming the origin-destination (OD) passenger flow during a passenger's journey is q(i, j), if we consider it from the perspective of transfer schemes, it can be decomposed as follows:

[0061]

[0062] Among them, f k (i, j) represents the passenger flow when using transfer scheme k to reach destination j from origin i. The transfer scheme number k takes the values ​​1, 2, ..., σ(i, j), where σ(i, j) represents the number of transfer schemes from origin i to destination j. h is defined as... k (i, j) represents a specific passenger transfer plan, i.e., passenger flow f k (i, j) Take bus a from bus stop i1 to bus stop i2, transfer to bus b to i3, and finally arrive at destination j. The number of transfers should generally not exceed two; otherwise, it will significantly increase passenger travel time and reduce passenger experience.

[0063] Assuming the passenger fare is P, then the fare should consist of the total number of passengers multiplied by the fare for the bus on their respective routes, i.e.:

[0064]

[0065] Where n represents the number of stations visited.

[0066] In addition, passengers spend time waiting for and riding the bus, and transferring buses also incurs time costs. Before calculating the objective function for these time costs, let's assume a unit time value α for passengers. This unit time value will be used to convert the narrowly defined time costs mentioned above into a broader time cost. The value of the unit time value α is actually a constant, which can be obtained by dividing the city's annual per capita GDP by the number of working days in a year, and then dividing by the average daily working hours of city residents.

[0067] Regarding the cost of passengers waiting for the bus, we can assume that all buses arrive at the stops at equal intervals. Therefore, the cost W for the passenger's waiting time is:

[0068]

[0069] Among them, F g This indicates the frequency of bus departures.

[0070] For the time cost of a passenger traveling by bus from departure station (i) to destination station (j), assume the bus's operating speed is v. b If the distance between two bus stops is l(e) and e∈g, then the time cost Y for the passenger during the bus ride is:

[0071]

[0072] The time cost for passengers transferring buses is calculated by adding a cost β due to extra time spent on the transfer itself, such as time spent getting on and off the bus. Additionally, there may be extra time spent queuing for boarding and alighting due to high passenger volume. Therefore, the passenger's transfer cost Z is:

[0073]

[0074] Where a and b represent the two buses before and after the passenger's transfer, respectively, p b This indicates the fare for bus route b.

[0075] In addition, because the passenger capacity of buses is limited, a function relating to the degree of crowding on buses must also be considered:

[0076]

[0077] Among them, u g (i′, j′) represents the passenger flow of the bus between i and j. The coefficients μ and ρ are related to the passenger comfort level while riding the bus and are preset values. It is the time it takes for the bus to travel on section e of bus route g. It is the carrying capacity of bus route g through road segment e, u g (i′, j′) represents the passenger flow of the bus in the g(i′, j′) segment:

[0078]

[0079] The range of values ​​for i′ and j′ is the same as that for i and j.

[0080] Based on the various expenses incurred by these passengers, and focusing on the passenger transfer problem, a lower-level planning model can be established:

[0081]

[0082] Typically, the minimum travel cost for passengers is calculated based on this lower-level planning model. The fare for passenger travel is usually calculated.

[0083] In the upper-level planning model, the main considerations are maximizing the bus company's operating revenue and minimizing passenger travel time, which is also the goal of bus route planning. Buses incur certain operating costs, such as fuel costs, maintenance costs, and driver salaries. These costs can all be attributed to the bus's unit-kilometer cost, assuming a fixed value of r. Therefore, the operating cost R of a bus can be expressed as:

[0084] R = 2∑ g∈G ∑ e∈g r·l(e)

[0085] The revenue of a bus company is directly related to the number of passengers; the higher the passenger volume, the more revenue the bus company earns. Therefore, fare revenue can be considered the objective to be optimized in the higher-level programming model. Different weights, denoted as ω1, ω2, and ω3, are introduced into the three objective functions of the higher-level programming model, and ω1 + ω2 + ω3 = 1. Therefore, the higher-level programming model can be constructed as follows:

[0086]

[0087] in, This represents the revenue generated by the bus company's operations. Based on this higher-level planning model, the maximum revenue of the bus company is calculated. Among these, the minimum value of the length l of the bus route is 5km and the maximum value is 15km; the number of parallel bus routes does not exceed 5; and the number of transfers for passengers does not exceed 2.

[0088] When applying the simulated annealing algorithm to solve a bilevel programming model, the initial temperature data should first be large enough, and secondly, it can be obtained based on statistical data analysis. For the temperature control parameter, a temperature decrease ratio coefficient η can be set to control the temperature. When iterating at the same temperature, if the temperature does not change after N iterations, the algorithm can terminate, exit the loop, and obtain the optimal solution.

[0089] In this embodiment of the invention, the general idea of ​​using the simulated annealing algorithm to solve the two-level programming model for bus route planning is as follows: based on known relevant data, such as the average speed v of the bus... b The departure frequency F of bus route g g The ticket price is p g In addition, there are vehicle cost per unit kilometer (r) and value per unit time (α), etc., to obtain the set of bus routes for bus route planning, as well as the sequence of bus stops (X). g .

[0090] At the start of the algorithm, the initial temperature T0 can be set to 100, and the termination temperature T... f =0, the proportionality coefficient of temperature decrease η = 0.8, and the initial number of iterations at a certain temperature is set to K = 1;

[0091] The first step is to generate the initial bus route planning network. Based on the creation and deletion of bus stops, and by using shortest paths to determine some basic initial routes, an initial route network can be constructed.

[0092] The second step is to determine whether each bus route is reasonable. Specifically, this involves using the objective function of the upper-level model in the bi-level programming framework to make certain judgments. That is, the calculated minimum fare must be greater than a specified value.

[0093] The third step involves studying the lower-level planning and calculating the lower-level objective function value of the initially established bus route network.

[0094] The fourth step is to make some adjustments to the route, such as creating, deleting, and replacing bus stops, in order to obtain a new solution in the neighborhood.

[0095] The fifth step, based on the fourth step, reuses the lower-level programming in the new neighborhood solution to calculate the objective function value.

[0096] The sixth step is to compare the two lower-level objective function values ​​to obtain a new objective function solution.

[0097] The seventh step checks the number of iterations. If the number of iterations exceeds a certain value and the new solution is acceptable even if it is poor, then proceed to the fourth step to find a new solution in the neighborhood. Alternatively, if the number of iterations exceeds a certain upper limit, then immediately adjust the temperature parameter and proceed to the fourth step.

[0098] The eighth step is to check if the result has converged. If the objective function value no longer changes after multiple iterations, then this result is the optimal solution, meaning the bus route planning scheme corresponding to this objective function value is the optimal scheme. If the result still has not converged, then reset the iteration count K and return to the fourth step to find a new neighborhood solution.

[0099] The shortest path model is based on a graph, which consists of a vertex set V and an edge set E, i.e., G = (V, E). If the graph G is directed, then ordered pairs < V are used. i V j > indicates a directed edge; for an undirected graph, use unordered pairs <V. i V j > indicates an undirected edge. If all edges in a graph have weights, then it is a weighted graph. Let w represent the weight function, which is a mapping from an edge to a real number. In bus route planning problems, the distance between two bus stops or the arrival time of a bus is used as the weight.

[0100] To define the shortest path, we first define a simple path L on the graph, where simple path L < v0, v1, ..., v1 < v2 < v3 < v4 ​​< v5 < v6 < v7 < v8 < v9 < v1 < v1 < v1 < v2 ... k > indicates the distance from the starting point v0 to the target endpoint v. k The path L is such that no point on the path is repeated except for the starting point and the destination. The weight of path L is denoted as:

[0101]

[0102] Based on the definition of a simple path, if no path with a smaller weight can be found between the starting point and the destination on the graph, i.e., L ≤ L′, where L′ represents any simple path between the starting point and the destination, then L is equal to v0 and v. k The shortest path between them.

[0103] After establishing this shortest path model, it is necessary to further improve the model by combining it with the problem of bus route planning. In actual bus route planning, it is impossible to solve Dijkstra's algorithm on the entire map. On the one hand, the algorithm's complexity is too high, and the efficiency is very low when solving it on the entire map. On the other hand, it would also lead to less than ideal planned routes, such as making the distance between the starting point and the destination too long, which does not meet the specifications of bus route planning.

[0104] Therefore, this model needs some improvements. After determining the starting point, Dijkstra's algorithm can be applied to search for the shortest path within a circular area of ​​the starting point. In this way, two nodes that are too far apart on the graph, which correspond to bus stops that are far apart in reality, can be reached by passengers transferring.

[0105] Regarding Dijkstra's algorithm, there are two implementations for solving the shortest path model: labeling nodes or labeling edges. This embodiment uses the node-labeling method. Before the algorithm begins traversing the graph, the nodes are divided into three categories: unlabeled, temporarily labeled, and labeled. First, the nodes in the graph are initialized as unlabeled nodes. Then, the adjacent nodes of nodes in the shortest path are treated as temporarily labeled nodes. In each iteration, the algorithm searches for the nearest node among the temporarily labeled nodes and designates it as a labeled node, until all nodes are labeled, at which point the algorithm terminates. All nodes in the graph can be represented by a pair of labels, i.e., (d...). j p j ), d j p represents the shortest path length between the starting point s and the target node j. j This represents the parent node number of j in the shortest path, and its main function is to facilitate the algorithm's backtracking of the path.

[0106] The first step is initialization. S represents the initially labeled set of nodes, T represents the unlabeled set of nodes, Q represents the temporarily labeled set of nodes, V represents the entire set of nodes in the graph, and u represents the current node. The starting node s is placed into the initial labeled set S, i.e., S = {s}, u = s. Initially, all other points in the graph are unlabeled, and the unlabeled node set T = VS. After initialization, d s =0,

[0107] The second step uses a breadth-first search approach to find all the adjacent nodes of node u and add them to set Q. It also calculates the distance from u to its adjacent node k, denoted as w(u, k). If d k >d u +w(u, k), then d k =d u +w(u, k), otherwise, dk Keeping unchanged and selecting one from set Q that allows d k The smallest value k is stored in S. At this point, S = SU{k}, and k is removed from the set T, and u = k.

[0108] The third step is to find the parent node of the node in the shortest path. From the set S, find the node k′ that is directly connected to node k, and take it as the parent node of node k on the shortest path from the starting point s to node k, denoted as p. k =k′.

[0109] The fourth step is the termination condition of the algorithm, which is that the algorithm ends when the set T becomes an empty set; otherwise, it jumps to the second step to continue finding the next node of the shortest path.

[0110] The fifth step is to backtrack to find the shortest path, based on p. k An array is used to determine the parent node of all nodes on the shortest path, and the shortest path can be obtained by iteration.

[0111] When solving this algorithm, specifically when searching for the shortest path across the entire graph, the search for the shortest path to each starting node needs to be confined to a circular region. The center of this circle is the starting node, and the search for the shortest path revolves around this circular region. The radius of this circular region can be determined based on the size of the entire graph, generally taking half to two-thirds of the diagonal length. The distance within this radius can be converted into time using the average speed of a bus. The weights can be set as either the bus travel time or the distance between bus stops, with travel time being preferred.

[0112] The Sioux Falls network has a strong ability to simulate real-world urban road traffic networks. The Sioux Falls network has a total of 24 nodes, 38 edges (76 of which are directed edges), and 528 origin-destination (OD) pairs ("OD pair" is formed by any two points in the network, simulating the starting and ending points of a passenger's bus journey).

[0113] In this embodiment of the invention, when applying the Sioux Falls network to the problem of bus route planning, the two directed edges between each adjacent node can be replaced with a straight line. These nodes can be regarded as bus stops in real urban roads. By replacing all directed edges in the network with undirected edges, the adjusted Sioux Falls network structure is obtained. Table 1 shows the bus travel time data between each adjacent node in this Sioux Falls network.

[0114] Table 1. Travel time of buses between adjacent nodes

[0115]

[0116]

[0117] In the original network, the limited passenger origin-destination (OD) data can affect the creation and deletion of many stations, which in turn affects the effectiveness of the established models and algorithms. Therefore, the amount of data can be increased to improve data analysis.

[0118] For the bilevel programming model, after applying the simulated annealing algorithm, based on the Sioux Falls network, the bilevel programming model and simulated annealing algorithm are implemented using MATLAB to obtain the bus route planning scheme, that is, the set of all bus routes and the sequence of stops on each bus route. In this embodiment, the specific sequence of stops on each route in the obtained bus route set is as follows:

[0119] First route: 1, 3, 4, 5, 6, 8, 9;

[0120] The second route: 3, 12, 25, 14, 15, 19, 20;

[0121] The third route: 13, 24, 21, 22, 23, 14, 11, 10;

[0122] The fourth route: 13, 25, 12, 11, 10, 16, 8, 9, 5;

[0123] The fifth route: 5, 9, 10, 16, 17, 19;

[0124] The sixth route: 2, 6, 8, 7, 18, 16, 17, 19, 20;

[0125] The seventh route: 4, 11, 14, 23, 22, 20;

[0126] The eighth route: 6, 8, 7, 18, 20, 21, 22.

[0127] The 25th station is located between stations 12 and 13. In this model, the total number of passengers is 47,823, with 39,945 being direct passengers, resulting in a direct rate of 83.53%. These passenger numbers, direct passenger numbers, and direct rate data were obtained through simulation and calculation. The specific principle and process are as follows: Passenger travel data on the Sioux Falls network is randomly generated using MATLAB. This random number is then analyzed against the planned routes on the Sioux Falls network. If a passenger's origin and destination stations are on the same route, they are considered a direct passenger; otherwise, they are considered a non-direct passenger. The direct rate is calculated by dividing the number of direct passengers by the total number of passengers in the model and multiplying by 100%.

[0128] The remaining passengers who cannot reach their destination directly can almost all reach their destination by transferring once. This scheme covers all stations in the network. After adding station number 25, the number of undirected edges in the network increases to 40. The bus route planning scheme covers 35 of these, so the coverage rate of the bus route network is 87.5%. The number of multiple lines passing through each station meets the agreed condition of less than 5, and the length of all lines also meets the condition.

[0129] Similarly, for the shortest path model, Dijkstra's algorithm based on the Sioux Falls network can be applied using MATLAB software to obtain the corresponding set of bus routes:

[0130] The first route is: 1, 3, 4, 5, 9, 10;

[0131] The second route is: 3, 12, 11, 10, 16, 18;

[0132] The third route is: 2, 6, 5, 4, 11, 12;

[0133] The fourth route is: 2, 6, 8, 9, 10, 15;

[0134] The fifth route is: 13, 12, 11, 10, 9;

[0135] The sixth route is: 5, 9, 10, 15, 22;

[0136] The seventh route is: 13, 24, 23, 22, 15, 19, 17;

[0137] The eighth route is: 8, 7, 18, 20, 21, 24;

[0138] The ninth route is: 11, 14, 15, 19, 20;

[0139] The tenth route is: 5, 6, 8, 16, 17, 19;

[0140] In this model, because the improved model doesn't search for the shortest path across the entire graph, only 69.7% of passengers travel directly. Many passengers need one or two transfers, but most can reach their destination with only one transfer. Since it's based on the shortest path, the time cost is lower than in the bi-level programming model. However, some passengers will transfer to other buses, increasing their fare. Regarding the route coverage calculation, the network has 38 edges, and the planned routes cover 33 of them, achieving a coverage rate of 86.84%. No routes have more than five complex edges, and passengers will not need more than two transfers.

[0141] The analysis of the case studies based on the Sioux Falls network can be further improved by adding nodes to the network, such as expanding it to 48 nodes, 96 nodes, etc., and then conducting experimental analysis on the two models again.

[0142] For the comprehensive evaluation of the models, a comprehensive evaluation index U is introduced to compare and analyze the two models numerically. First, the results of the four evaluation factors (route coverage, passenger transfer frequency, passenger travel costs, and bus company revenue) are denoted as A, B, C, and D, respectively, and weighting factors λ1, λ2, λ3, and λ4 are added to them, where λ1+λ2+λ3+λ4=1. The comprehensive evaluation index U of the experimental model and the comparative model are then calculated separately.

[0143] U=λ1·A+λ2·B+λ3·C+λ4·D

[0144] The values ​​of A, B, C, and D represent the scores for the two models, indicating their performance. This index converts the performance of the two models across the four evaluation factors into uniform numerical values, facilitating model comparison.

[0145] By reviewing relevant data on bus route planning and combining it with the analysis of the model in this invention, it can be concluded that the weights of the evaluation factors of route coverage and passenger transfer frequency are lower than those of passenger travel costs and bus company revenue, and the importance of these two evaluation factors is almost the same. Therefore, in this embodiment of the invention, the weight values ​​of the four evaluation factors can be set as λ1 = 0.2, λ2 = 0.2, λ3 = 0.3, and λ4 = 0.3, respectively.

[0146] The comprehensive evaluation index of the two models is calculated through scoring, assuming a maximum score of 10 points for each module. The scores for the experimental model (bilevel programming model) and the comparative model (segment path model) across the four model evaluation factors are as follows: A1=8 and A2=7, B1=7 and B2=6, C1=9 and C2=8, D1=8 and D2=7. This scoring is based on the performance of the two models on each of the four evaluation factors.

[0147] By combining the scores and corresponding weighting factors of the two models, a comprehensive evaluation index can be calculated. The comprehensive evaluation index of the experimental model is U1 = 8.1, and the comprehensive evaluation index of the comparison model is U2 = 7.1. Therefore, the comprehensive evaluation index of the experimental model is greater than that of the comparison model, U1 > U2, meaning that the bi-level programming model is more effective for bus route planning. In other words, the bi-level programming model should be preferred in planning.

[0148] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

[0149] The above descriptions are merely some embodiments of the present invention. For those skilled in the art, various modifications and improvements can be made without departing from the inventive concept of the present invention, and all such modifications and improvements fall within the scope of protection of the present invention.

Claims

1. A bus route planning method based on crowd-sensing, characterized in that, Includes the following steps: Step 1: Based on the swarm intelligence sensing network, acquire passenger travel data through the mobile smart terminals carried by passengers; Step 2, input the public transport network of the target area, defined as... Where S represents the set of bus stops, and E represents the set of bus route segments in the target area; for any route segment ,definition Represents the distance of road segment e; For all bus routes within a specified origin and destination area, we obtain a set G of bus routes. For any given bus route... ,definition Indicates bus routes The order in which buses stop at stations is defined. Indicates bus routes Ticket price, definition Indicates bus routes The frequency of departures; Step 3: Use a two-level programming model to plan the stop order of bus stops for each bus route in the bus route set G, and obtain the bus route planning results for the target area and output them; the planning methods include: adding stops, deleting stops and / or merging adjacent stops. The two-level programming model includes an upper-level programming model for bus routes and a lower-level programming model for passengers. In the upper-level programming model, an objective function is constructed based on the revenue of the bus operator, with the optimization objective being to maximize the revenue of the bus operator under specified influencing factors and constraints. In the lower-level programming model, an objective function is constructed based on the total travel costs of passengers, with the optimization objective being to minimize the total travel costs of passengers under specified influencing factors and constraints. The total travel costs of passengers include: bus fare P and travel time costs, wherein the travel time costs include: waiting time costs W, time costs during the bus ride Y, and transfer time costs Z. The influencing factors include: passenger demand, road conditions, bus stop location, bus condition and management policies; the constraints include: bus route length, number of parallel lines and number of transfers. The bi-level programming model is specifically configured as follows: The passenger flow is defined as the volume of traffic trips during a passenger's journey. The calculation method is as follows: ; in, This represents the passenger flow when using transfer scheme k in a travel demand where the starting point is station i and the destination is station j. The transfer scheme number k takes the values ​​1, 2, ... , Let represent the number of transfer options from starting point i to destination j, and define . This represents the specific transfer route for transfer option k. The calculation method for bus fare P is set as follows: ; definition This represents the value per unit of time for passengers, based on the value per unit of time. Calculate the passenger's waiting time cost W: ; And the time cost Y for passengers during their bus ride is: ; in, Indicates the operating speed of the bus; Calculate the transfer time cost Z based on the cost β caused by the extra time spent transferring: ; in, and These represent the two buses used by the passenger before and after the transfer. It refers to a bus. Ticket price; The objective function of the lower-level planning model is set as follows: ; in, This represents the total travel cost for passengers, where the crowding level function is included. Input for Its expression is: ,in, This indicates that the bus is at the stop. to station bus routes Passenger traffic in the area: , where n represents the total number of stops included in the current transfer route, and the coefficient is... This value is used to characterize the comfort level of passengers when riding public transportation and is a preset value. This indicates that the bus is traveling on a bus route. On the road section The time required Indicates the section of road the bus passes through. bus routes The carrying capacity; Define the unit kilometer cost of buses as The cost R for the bus during operation is calculated as follows: ; The objective function of the upper-level planning model is set as follows: ; in, This indicates the revenue generated by the bus company's operations. The three weights are preset, and .

Citation Information

Patent Citations

  • Hub-and-spoke network framework-based multi-mode public traffic network design method

    CN107194128A

  • District cooling system pipe network path planning method and system

    CN107330169A