A method and system for dispatching online car-hailing

By using the user order evaluation model to calculate order scores in the online car-hailing dispatching system, the matching between drivers and orders is optimized, and the problems of user waiting time and driver operation efficiency in traditional systems are solved, achieving more efficient resource utilization and user experience improvement .

CN118378847BActive Publication Date: 2024-12-24SHENZHEN DONGCHAO TRAVEL TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410608837.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-05-16
Publication Date
2024-12-24
Estimated Expiration
2044-05-16

AI Technical Summary

Technical Problem

The traditional online ride-hailing dispatching system fails to effectively consider the user's waiting time and driver's operational efficiency, resulting in poor user experience and increased operating costs.

Method used

By obtaining driver information and order information, combining user order evaluation models, calculating order scores, optimizing the matching between drivers and orders, ensuring that drivers take orders at reasonable time and location, reducing idled time and no-load mileage, and improving user waiting time and drivers income.

Benefits of technology

It significantly improves resource utilization efficiency, reduces drivers’ no-load time and operating costs, improves user experience and driver satisfaction, and balances supply and demand by dynamically adjusting weights and regional divisions, and optimizes operational decisions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118378847B_ABST
    Figure CN118378847B_ABST
Patent Text Reader

Abstract

The present invention discloses a method and system for dispatching online car-hailing, and relates to the technical field of online car-hailing. A method and system for dispatching online car-hailing, comprising: a module for obtaining drivers, a module for obtaining orders, and a module for assigning order scores. The present invention scores orders to be received, and not only matches drivers and orders based on distance, but also integrates multiple information of passengers and drivers, which can significantly improve resource utilization efficiency, reduce drivers' idle time and idle mileage, and increase drivers' profits; through reasonable scheduling, drivers can receive orders at estimated times and places, which may increase drivers' average order value and overall income, thereby improving their job satisfaction; by tracking order scores and drivers' order acceptance status, their dispatch decisions can be learned and optimized, thereby achieving smarter and more efficient operations.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of online car-hailing, and in particular to an online car-hailing scheduling method and system. Background Art

[0002] In the traditional online car-hailing dispatch system, the dispatch of orders is mainly based on the geographical distance between the driver and the passenger. Often, whoever is closer is more likely to get the order. However, this method has some obvious disadvantages. First, it does not take into account the personal usage habits and the longest acceptable waiting time of the user to whom the order belongs. The order may be dispatched to a driver who is far away from the passenger, causing the passenger to wait too long, which in turn affects the user experience and satisfaction. Secondly, this mechanism does not take into account the impact of the order's terminal location on the driver's next order. After completing the order, the driver may find himself in a sparsely demanded or remote geographical location, increasing the driver's idle mileage and idle time, which greatly reduces the driver's efficiency and increases operating costs. It may also cause the driver to be too anxious when choosing to accept orders.

[0003] Therefore, we urgently need to provide a method and system for dispatching online ride-hailing vehicles that can improve the efficiency of online ride-hailing drivers and ensure the waiting time of users. Summary of the invention

[0004] The present invention aims to provide a method and system for dispatching online car-hailing vehicles that improves the efficiency of online car-hailing drivers and ensures the waiting time of users, thereby maximizing the profits of online car-hailing drivers without affecting the response time of users submitting orders.

[0005] A method for dispatching online car-hailing vehicles, comprising:

[0006] S1. Get the driver information of all drivers in the current area. The driver information corresponding to the driver includes the order acceptance status, location information, maximum order acceptance waiting time and estimated order end time; the order acceptance status value is 0 or 1, 0 means that the driver's order acceptance status is idle, and 1 means that the driver's order acceptance status is busy; when the order acceptance status value is 0, the location information indicates the driver's current location, and when the order acceptance status value is 1, the location information indicates the driver's destination location; the maximum order acceptance waiting time indicates the driver's maximum order acceptance waiting time in the current area; when the estimated end time of this order is less than the set end threshold, the driver's order acceptance status value is 0; extract the driver D whose order acceptance status value is 0 in the driver information i , i = 1, 2, ..., n; n is the number of drivers whose order acceptance status value is 0 in all driver information in the current area;

[0007] S2. Traverse driver D i Get the order to be received, with driver D i The time when the order status value changes from 1 to 0 is taken as the starting point, and the driver Di The maximum order waiting time is taken as the end point, and the orders to be received are continuously obtained; within the first waiting time range, the distance from the driver D is obtained. i The waiting orders within the first area; the waiting orders include the starting point, the end point, the order submission time and the maximum waiting time; if the number of waiting orders obtained within the first waiting time range is 0, then the distance D of the driver is obtained within the second waiting time range. i Orders waiting to be accepted within the second area; if the maximum order waiting time is reached and the number of orders waiting to be accepted is 0, the driver D is prompted i Change the current region and reacquire pending orders;

[0008] Calculate the evaluation scores of all pending orders based on the starting point, end point, order submission time, maximum waiting time and user order evaluation model in the pending orders to obtain the order score; push the pending order with the highest order score to driver D i ; Driver D i Automatically receive the pending orders with the highest order score and update the driver D i If the same waiting order is pushed to different drivers, the waiting order will be randomly assigned.

[0009] As a preferred technical solution of the present invention, determine the driver D i The specific steps for the maximum order waiting time in the same area include:

[0010] T1. Collect historical traffic flow data within a preset time range in the current area, set a time slice t, and obtain a number of traffic flows w divided by time slice t within the preset time range according to the formula w=a+b+r; a is the spatiotemporal outflow of vehicles within time slice t; b is the spatiotemporal inflow of vehicles within time slice t; r is the spatiotemporal presence of vehicles within time slice t;

[0011] T2. Collect driver D i The historical order response time within the preset time range in the current area, set the time slice t, calculate the average value of the order response time within the same time slice t, and obtain the average order response time h, and obtain several average order response times h divided by the time slice t within the preset time range;

[0012] T3. Perform regression analysis on several vehicle flows w and several average order response times h to obtain the maximum order waiting time. As a preferred technical solution of the present invention, the specific steps of determining the maximum waiting time for orders to be received include:

[0013] L1. Collect the historical order data of the user whose order is to be received, and obtain the user order data set; the historical order data includes the user's taxi response time, the driver's order response time, and the user's order switching status; pre-process the user's historical order data set to obtain the pre-processed user order data set;

[0014] L2. Based on the preprocessed user order data set, the maximum switching time of several users is obtained; Gaussian fitting is performed on the maximum switching time of several users to obtain the maximum waiting time of the user whose order is to be received.

[0015] As a preferred technical solution of the present invention, the user order evaluation model includes a data processing layer, a score calculation layer, and a result output layer;

[0016] The data processing layer is used to process the starting point and end point of the order to obtain the order mileage; obtain the estimated user taxi response time based on the order submission time and current time; obtain the estimated driver response time based on the starting point and location information; and match the end point in the area matching library to obtain the end point area value;

[0017] The score calculation layer is used to calculate the order score of the pending orders using the formula: Order score = (order mileage × mileage weight) + (estimated user taxi response time × submission time weight) + (estimated driver order response time × waiting time weight) + (destination area value × destination area weight);

[0018] The result output layer is used to output the order scores of pending orders.

[0019] As a preferred technical solution of the present invention, the specific steps of determining the mileage weight, submission time weight, waiting time weight and destination area weight in the scoring calculation layer in the user order evaluation model include:

[0020] Get several copies of driver D i The received orders include mileage, destination area, user taxi response time, maximum waiting time and driver order response time; several received orders include driver evaluation feedback scores and user evaluation feedback scores at the end of the order; the driver evaluation feedback scores and user evaluation feedback scores are weighted to obtain order feedback scores; several received orders with order feedback scores are combined to obtain a scoring calculation training set;

[0021] Establish m order scoring weight individuals Q j , j = 1, 2, ..., m; order scoring weight individual Q j Including mileage weight, submission time weight, waiting time weight and destination area weight; order score weight individual Q jThe sum of all weight values ​​in is 1; the m order scoring weight individuals Q j Combine to obtain the order scoring weight iterative population; set the maximum number of iterations;

[0022] Iterate the order score weight individuals Q in the population according to the order score weight j The order scores are simulated and calculated with the score calculation training set to obtain the simulated order scores; the Euclidean distance between the simulated order scores and the corresponding order feedback scores in the score calculation training set is calculated to obtain the deviation value; the inverse of the deviation value is used as the order score weight individual Q j The fitness of X j ;

[0023] Based on all order scoring weights individual Q j The fitness of X j Select and reorganize the order scoring weight iteration population, and update the order scoring weight iteration population;

[0024] When the maximum number of iterations is reached, the order scoring weighted individual Q corresponding to the maximum fitness is output j , which is the optimal order scoring weight individual. According to the optimal order scoring weight individual, the mileage weight, submission time weight, waiting time weight and destination area weight are output.

[0025] As a preferred technical solution of the present invention, the specific steps of updating the mileage weight, submission time weight, waiting time weight and destination area weight in the scoring calculation layer include:

[0026] When obtaining Z driver D i When the historical orders received are weighted, the driver evaluation feedback scores and user evaluation feedback scores of the Z historical orders are weighted to obtain the order feedback scores of the Z historical orders received; the Z historical orders received with order feedback scores are combined to obtain the updated score calculation training set;

[0027] The updated score calculation training set is used to update the weights to obtain a new optimal order score weight individual. The mileage weight, submission time weight, waiting time weight, and destination area weight in the new optimal order score weight individual are input into the score calculation layer for calculation;

[0028] As a preferred technical solution of the present invention, the regression analysis method used in step T3 is a polynomial regression analysis method.

[0029] A network car-hailing dispatching system, comprising:

[0030] The driver acquisition module is used to obtain the driver information of all drivers in the current area. The driver information corresponding to the driver includes the order acceptance status, location information, maximum order acceptance waiting time and estimated order end time; the order acceptance status value is 0 or 1, 0 means that the driver's order acceptance status is idle, and 1 means that the driver's order acceptance status is busy; when the order acceptance status value is 0, the location information indicates the driver's current location, and when the order acceptance status value is 1, the location information indicates the driver's destination location; the maximum order acceptance waiting time indicates the driver's maximum order acceptance waiting time in the current area; when the estimated end time of this order is less than the set end threshold, the driver's order acceptance status value is 0; extract the driver D whose order acceptance status value is 0 in the driver information i , i = 1, 2, ..., n; n is the number of drivers whose order acceptance status value is 0 in all driver information in the current area;

[0031] Get order module, used to traverse driver D i Get the order to be received, with driver D i The time when the order status value changes from 1 to 0 is taken as the starting point, and the driver D i The maximum order waiting time is taken as the end point, and the orders to be received are continuously obtained; within the first waiting time range, the distance from the driver D is obtained. i The waiting orders within the first area; the waiting orders include the starting point, the end point, the order submission time and the maximum waiting time; if the number of waiting orders obtained within the first waiting time range is 0, then the number of waiting orders within the second waiting time range is obtained. i Orders waiting to be accepted within the second area; if the maximum order waiting time is reached and the number of orders waiting to be accepted is 0, the driver D is prompted i Change the current region and reacquire pending orders;

[0032] The order scoring distribution module is used to calculate the evaluation scores of all pending orders according to the starting point, end point, order submission time, maximum waiting time and user order evaluation model in the pending orders to obtain the order scores; the pending orders with the highest order scores are pushed to the driver D i ; Driver D i Automatically receive the pending orders with the highest order score and update the driver D i If the same waiting order is pushed to different drivers, the waiting order will be randomly assigned.

[0033] The present invention has the following advantages:

[0034] 1. The present invention scores the orders to be accepted, and does not only match drivers and orders based on distance, but also integrates multiple information of passengers and drivers, which can significantly improve resource utilization efficiency, reduce drivers' idle time and idle mileage, and increase drivers' profits; through reasonable scheduling, drivers can accept orders at the estimated time and place, which may increase drivers' average order value and overall income, thereby improving their job satisfaction; by tracking the score of orders and the driver's order acceptance status, their scheduling decisions can be learned and optimized, thereby achieving smarter and more efficient operations; considering the user's maximum waiting time as a matching factor can reduce the waiting time of passengers and enhance user experience; through the regional range division of the first waiting time and the second waiting time, the algorithm helps to balance supply and demand within the region, and avoids the concentration of drivers in a few popular areas, resulting in a decline in service levels in other areas.

[0035] 2. The present invention can automatically adjust weights according to real-time feedback by utilizing neural network model training, which helps to dynamically optimize weights according to current vehicle conditions, user behaviors and other variables; weight optimization can better balance the needs of drivers and passengers, reduce waiting time, and improve customer service experience; ensure that drivers are assigned to areas with more orders based on the weights of the destination areas, reducing the probability of driving without orders; the comprehensive use of weights, taking into account driver evaluations and user evaluations, makes the service more in line with the actual needs and preferences of both parties, which will help improve the overall satisfaction of both parties. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] Figure 1 A schematic diagram of the structure of an online car-hailing dispatching system adopted in an embodiment of the present invention. DETAILED DESCRIPTION

[0037] In order to enable persons skilled in the art to better understand the technical solutions in the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention.

[0038] Example 1

[0039] A method for dispatching online car-hailing vehicles, comprising:

[0040] S1. Get the driver information of all drivers in the current area. The driver information corresponding to the driver includes the order acceptance status, location information, maximum order acceptance waiting time and estimated order end time; the order acceptance status value is 0 or 1, 0 means that the driver's order acceptance status is idle, and 1 means that the driver's order acceptance status is busy; when the order acceptance status value is 0, the location information indicates the driver's current location, and when the order acceptance status value is 1, the location information indicates the driver's destination location; the maximum order acceptance waiting time indicates the driver's maximum order acceptance waiting time in the current area; when the estimated end time of this order is less than the set end threshold, the driver's order acceptance status value is 0; extract the driver D whose order acceptance status value is 0 in the driver information i , i = 1, 2, ..., n; n is the number of drivers whose order acceptance status value is 0 in all driver information in the current area;

[0041] Get the information of all drivers whose order acceptance status value is 0 in the current area, that is, the driver information of idle drivers; for the maximum order acceptance waiting time, the demand for rides is uneven at different times and locations, and the maximum order acceptance waiting time may need to be dynamically adjusted according to the actual supply and demand situation; during peak demand periods, the maximum order acceptance waiting time may be shorter, while during low demand periods, it can be set longer, and needs to be adjusted according to actual conditions;

[0042] The division of regions within the city is made by professional technicians based on the actual situation and the value of the location information. The region where the location information is located is the region where the driver is currently located;

[0043] Confirm driver D i The specific steps for the maximum order waiting time in the same area include:

[0044] T1. Collect historical traffic flow data within a preset time range in the current area, set a time slice t, and obtain a number of traffic flows w divided by time slice t within the preset time range according to the formula w=a+b+r; a is the spatiotemporal outflow of vehicles within time slice t; b is the spatiotemporal inflow of vehicles within time slice t; r is the spatiotemporal presence of vehicles within time slice t;

[0045] T2. Collect driver D i The historical order response time within the preset time range in the current area, set the time slice t, calculate the average value of the order response time within the same time slice t, and obtain the average order response time h, and obtain several average order response times h divided by the time slice t within the preset time range;

[0046] T3. Perform regression analysis on several traffic flows w and several average order response times h to obtain the maximum order waiting time;

[0047] The regression analysis method used in step T3 is a polynomial regression analysis method;

[0048] The vehicle spatiotemporal outflow indicates the total number of vehicles leaving the current area; the vehicle spatiotemporal inflow indicates that the vehicle position information is the total number of vehicles in the current area when the vehicle is busy; the vehicle spatiotemporal presence indicates that the vehicle position information is the total number of vehicles in the current area when the vehicle is idle; the time slice t is set by professional technicians according to actual conditions;

[0049] To perform regression analysis to obtain the maximum waiting time for receiving an order, we first need to collect and organize two main types of data: one is historical traffic flow data (including vehicle spatiotemporal outflow a, vehicle spatiotemporal inflow b, and vehicle spatiotemporal existence r), and the other is the driver's historical response time h for receiving an order in the current area. These data should be carefully divided according to the same time slice t to ensure the accuracy of the analysis. Next, use these data to build a regression model, in which traffic flow data is used as the independent variable and the driver's response time for receiving an order is used as the dependent variable; perform regression analysis through statistical software, and use polynomial regression analysis methods to determine the relationship between these independent and dependent variables; in the process of regression analysis, it is also necessary to test the statistical significance, goodness of fit, and prediction accuracy of the model;

[0050] S2. Traverse driver D i Get the order to be received, with driver D i The time when the order status value changes from 1 to 0 is taken as the starting point, and the driver D i The maximum order waiting time is taken as the end point, and the orders to be received are continuously obtained; within the first waiting time range, the distance from the driver D is obtained. i The waiting orders within the first area; the waiting orders include the starting point, the end point, the order submission time and the maximum waiting time; if the number of waiting orders obtained within the first waiting time range is 0, then the number of waiting orders within the second waiting time range is obtained. i Orders waiting to be accepted within the second area; if the maximum order waiting time is reached and the number of orders waiting to be accepted is 0, the driver D is prompted i Change the current region and reacquire pending orders;

[0051] Calculate the evaluation scores of all pending orders based on the starting point, end point, order submission time, maximum waiting time and user order evaluation model in the pending orders to obtain the order score; push the pending order with the highest order score to driver D i ; Driver D i Automatically receive the pending orders with the highest order score and update the driver D i Driver information; if the same waiting order is pushed to different drivers, the waiting order will be randomly assigned;

[0052] The first waiting time is less than the second waiting time, and the second waiting time is less than the maximum order waiting time; the first waiting time range is one-third of the maximum order waiting time, and the second waiting time range is two-thirds of the maximum order waiting time; the first area range is divided with the location information as the center of the circle, and the second area range is also divided with the location information as the center of the circle, but the radius is larger than the radius of the first area range, which is helpful to obtain more orders to be received; the radius of the first area range and the second area range are divided by professional and technical personnel according to actual conditions;

[0053] This strategy of acquiring pending orders within a multi-level waiting time and regional scope can greatly improve the driver's work efficiency and order-taking efficiency. In the first waiting time, the driver can prioritize matching orders within the first regional scope, which can quickly match drivers with passengers in close proximity and shorten waiting and driving time. If an order is not obtained in the first stage, the search is expanded to the second regional scope. This flexible strategy increases the chances of obtaining orders while also reducing the possibility of empty trips for drivers. Finally, if an order is still not obtained within the maximum order-taking waiting time, the driver is guided to change regions to avoid wasting time in areas with few orders, thereby improving the dynamic response capability and operational efficiency of the overall service.

[0054] This push mechanism based on order evaluation scores can significantly improve the efficiency and fairness of order allocation. This strategy ensures that more valuable and popular orders are allocated first, thereby increasing driver satisfaction and income potential. At the same time, by accurately matching orders and drivers, passengers receive better services and their riding experience is improved. In addition, periodic updates of driver information ensure that the system responds to driver behavior and passenger needs in real time, ensuring continuous optimization of services and improved platform operating efficiency.

[0055] The specific steps for determining the maximum waiting time for pending orders include:

[0056] L1. Collect the historical order data of the user whose order is to be received, and obtain the user order data set; the historical order data includes the user's taxi response time, the driver's order response time, and the user's order switching status; pre-process the user's historical order data set to obtain the pre-processed user order data set;

[0057] L2. Based on the preprocessed user order data set, the maximum switching time of several users is obtained; Gaussian fitting is performed on the maximum switching time of several users to obtain the maximum waiting time of the user whose order is to be received;

[0058] Gaussian fitting assumes that the data points are normally distributed around the central value. The central value obtained after Gaussian fitting is the maximum waiting time of the user whose order is to be accepted;

[0059] The user order evaluation model includes a data processing layer, a rating calculation layer, and a result output layer;

[0060] The data processing layer is used to process the starting point and end point of the order to obtain the order mileage; obtain the estimated user taxi response time based on the order submission time and current time; obtain the estimated driver response time based on the starting point and location information; and match the end point in the area matching library to obtain the end point area value;

[0061] The score calculation layer is used to calculate the order score of the pending orders using the formula: Order score = (order mileage × mileage weight) + (estimated user taxi response time × submission time weight) + (estimated driver order response time × waiting time weight) + (destination area value × destination area weight);

[0062] The result output layer is used to output the order scores of pending orders;

[0063] The specific steps of determining the mileage weight, submission time weight, waiting time weight and destination area weight in the rating calculation layer in the user order evaluation model include:

[0064] Get several copies of driver D i The received orders include mileage, destination area, user taxi response time, maximum waiting time and driver order response time; several received orders include driver evaluation feedback scores and user evaluation feedback scores at the end of the order; the driver evaluation feedback scores and user evaluation feedback scores are weighted to obtain order feedback scores; several received orders with order feedback scores are combined to obtain a scoring calculation training set;

[0065] Establish m order scoring weight individuals Q j , j = 1, 2, ..., m; order scoring weight individual Q j Including mileage weight, submission time weight, waiting time weight and destination area weight; order score weight individual Q j The sum of all weight values ​​in is 1; the m order scoring weight individuals Q j Combine to get the order scoring weight iteration population; set the maximum number of iterations; use the group optimization algorithm to get the mileage weight, submission time weight, waiting time weight and destination area weight. The group optimization algorithm can usually find the best solution for the target order feedback score value, get the best weight ratio, and optimize decision-making efficiency;

[0066] Order scoring weight individual Q j The values ​​in are randomly selected;

[0067] Iterate the order score weight individuals Q in the population according to the order score weightj The order scores are simulated and calculated with the score calculation training set to obtain the simulated order scores; the Euclidean distance between the simulated order scores and the corresponding order feedback scores in the score calculation training set is calculated to obtain the deviation value; the inverse of the deviation value is used as the order score weight individual Q j The fitness of X j ;

[0068] Based on all order scoring weights individual Q j The fitness of X j Select and reorganize the order scoring weight iteration population, and update the order scoring weight iteration population;

[0069] Select the operation to score the weights of the individuals Q in the order j The fitness of X j Based on this, the roulette wheel selection algorithm is used to iterate the order scoring weights of the order scoring weight individuals Q in the population. j Make a selection and choose a better order scoring weight individual Q j Form a new order scoring weight iterative population;

[0070] The reorganization operation is to iterate the order scoring weights of the order scoring weight individuals Q in the population j Swap the two random weight values ​​in to get the new order scoring weight individual Q j ;

[0071] When the maximum number of iterations is reached, the order scoring weighted individual Q corresponding to the maximum fitness is output j , which is the optimal order scoring weight individual, outputs the mileage weight, submission time weight, waiting time weight and destination area weight according to the optimal order scoring weight individual;

[0072] The specific steps for updating the mileage weight, submission time weight, waiting time weight, and destination area weight in the scoring calculation layer include:

[0073] When obtaining Z driver D i When the historical orders received are weighted, the driver evaluation feedback scores and user evaluation feedback scores of the Z historical orders are weighted to obtain the order feedback scores of the Z historical orders received; the Z historical orders received with order feedback scores are combined to obtain the updated score calculation training set;

[0074] The updated score calculation training set is used to update the weights to obtain a new optimal order score weight individual. The mileage weight, submission time weight, waiting time weight, and destination area weight in the new optimal order score weight individual are input into the score calculation layer for calculation;

[0075] A weighted calculation based on the driver's historical orders and user feedback scores can reflect the judgment of each driver's service quality, making the scoring system more in line with individual characteristics and enhancing the pertinence and accuracy of the scoring; the weight update is not based on fixed rules, but is dynamically updated according to the driver's actual performance, and the group optimization algorithm is used to optimize the weights to make the weight distribution more reasonable, accurate and fair.

[0076] Example 2

[0077] A network car-hailing dispatching system, see Figure 1 As shown, including:

[0078] The driver acquisition module is used to obtain the driver information of all drivers in the current area. The driver information corresponding to the driver includes the order acceptance status, location information, maximum order acceptance waiting time and estimated order end time; the order acceptance status value is 0 or 1, 0 means that the driver's order acceptance status is idle, and 1 means that the driver's order acceptance status is busy; when the order acceptance status value is 0, the location information indicates the driver's current location, and when the order acceptance status value is 1, the location information indicates the driver's destination location; the maximum order acceptance waiting time indicates the driver's maximum order acceptance waiting time in the current area; when the estimated end time of this order is less than the set end threshold, the driver's order acceptance status value is 0; extract the driver D whose order acceptance status value is 0 in the driver information i , i = 1, 2, ..., n; n is the number of drivers whose order acceptance status value is 0 in all driver information in the current area;

[0079] Get order module, used to traverse driver D i Get the order to be received, with driver D i The time when the order status value changes from 1 to 0 is taken as the starting point, and the driver D i The maximum order waiting time is taken as the end point, and the orders to be received are continuously obtained; within the first waiting time range, the distance from the driver D is obtained. i The waiting orders within the first area; the waiting orders include the starting point, the end point, the order submission time and the maximum waiting time; if the number of waiting orders obtained within the first waiting time range is 0, then the number of waiting orders within the second waiting time range is obtained. i Orders waiting to be accepted within the second area; if the maximum order waiting time is reached and the number of orders waiting to be accepted is 0, the driver D is prompted i Change the current region and reacquire pending orders;

[0080] The order scoring distribution module is used to calculate the evaluation scores of all pending orders according to the starting point, end point, order submission time, maximum waiting time and user order evaluation model in the pending orders to obtain the order scores; the pending orders with the highest order scores are pushed to the driver Di ; Driver D i Automatically receive the pending orders with the highest order score and update the driver D i If the same waiting order is pushed to different drivers, the waiting order will be randomly assigned.

[0081] It should be understood that those skilled in the art can make improvements or changes based on the above description, and all such improvements and changes should fall within the scope of protection of the appended claims of the present invention. Parts not described in detail in this specification belong to the prior art known to those skilled in the art.

Claims

1. A method for dispatching online car-hailing services, characterized in that: include: S1. Obtain the driver information of all drivers in the current area. The driver information corresponding to the driver includes the order acceptance status, location information, maximum order acceptance waiting time and estimated end time of this order; the order acceptance status value is 0 or 1, 0 indicates that the driver's order acceptance status is idle, and 1 indicates that the driver's order acceptance status is busy; when the order acceptance status value is 0, the location information indicates the driver's current location, and when the order acceptance status value is 1, the location information indicates the driver's destination location; the maximum order acceptance waiting time indicates the driver's maximum order acceptance waiting time in the current area; when the estimated end time of this order is less than the set end threshold, the driver's order acceptance status value is 0; extract the driver Di whose order acceptance status value is 0 in the driver information, i = 1, 2, ..., n; n is the number of drivers whose order acceptance status value is 0 in all driver information in the current area; S2. Traverse driver Di to obtain pending orders, starting from the time when driver Di's order status value changes from 1 to 0, and ending at driver Di's maximum order waiting time, and continuously obtain pending orders; obtain pending orders within the first area of ​​driver Di within the first waiting time range; pending orders include the starting point, end point, order submission time and maximum waiting time; if the number of pending orders obtained within the first waiting time range is 0, obtain pending orders within the second area of ​​driver Di within the second waiting time range; if the number of pending orders is 0 when the maximum order waiting time is reached, prompt driver Di to change the current area and obtain pending orders again; calculate the evaluation scores of all pending orders according to the starting point, end point, order submission time, maximum waiting time and user order evaluation model in the pending orders to obtain order scores; Push the pending orders with the highest order scores to driver Di; Driver Di automatically receives the waiting order with the highest order score, and at the same time, updates driver Di's driver information; if the same waiting order is pushed to different drivers, the waiting order will be randomly assigned; The specific steps for determining the maximum order waiting time of driver Di in the same area include: T1. Collect historical traffic flow data within a preset time range in the current area, set a time slice t, and obtain a number of traffic flows w divided by time slice t within the preset time range according to the formula w=a+b+r; a is the spatiotemporal outflow of vehicles within time slice t; b is the spatiotemporal inflow of vehicles within time slice t; r is the spatiotemporal presence of vehicles within time slice t; T2. Collect the historical order response time of driver Di within the preset time range in the current area, set the time slice t, calculate the average order response time within the same time slice t, and obtain the average order response time h, and obtain several average order response times h divided by time slice t within the preset time range; T3. Perform regression analysis on several traffic flows w and several average order response times h to obtain the maximum order waiting time; The specific steps for determining the maximum waiting time for orders to be accepted include: L1. Collect the historical order data of the user whose order is to be received, and obtain the user order data set; the historical order data includes the user's taxi response time, the driver's order response time, and the user's order switching status; pre-process the user's historical order data set to obtain the pre-processed user order data set; L2. Based on the preprocessed user order data set, the maximum switching time of several users is obtained; Gaussian fitting is performed on the maximum switching time of several users to obtain the maximum waiting time of the user whose order is to be received; The user order evaluation model includes a data processing layer, a score calculation layer, and a result output layer; the data processing layer is used to process the starting point and the end point of the order to obtain the order mileage; the estimated user taxi response time is obtained based on the order submission time and the current time; the estimated driver response time is obtained based on the starting point and location information; the end point is matched in the area matching library to obtain the end point area value; The score calculation layer is used to calculate the order score of the pending orders using the formula: Order score = (order mileage × mileage weight) + (estimated user taxi response time × submission time weight) + (estimated driver order response time × waiting time weight) + (destination area value × destination area weight); The result output layer is used to output the order scores of pending orders; The specific steps of determining the mileage weight, submission time weight, waiting time weight and destination area weight in the rating calculation layer in the user order evaluation model include: Obtain several historical orders received by driver Di, which include mileage, destination area, user taxi response time, maximum waiting time and driver order response time; several historical orders received include driver evaluation feedback scores and user evaluation feedback scores at the end of the order; perform weighted calculation on the driver evaluation feedback scores and user evaluation feedback scores to obtain order feedback scores; combine several historical orders received with order feedback scores to obtain a scoring calculation training set; Establish m order scoring weight individuals Qj, j = 1, 2, ..., m; order scoring weight individuals Qj include mileage weight, submission time weight, waiting time weight and destination area weight; the sum of each weight value in order scoring weight individuals Qj is 1; combine m order scoring weight individuals Qj to obtain order scoring weight iteration population; set the maximum number of iterations; According to the order scoring weight individuals Qj in the order scoring weight iteration population and the scoring calculation training set, the order scores are simulated and calculated to obtain the simulated order scores; the Euclidean distance between the simulated order scores and the corresponding order feedback scores in the scoring calculation training set is calculated to obtain the deviation value; the inverse of the deviation value is used as the fitness Xj of the order scoring weight individual Qj; based on the fitness Xj of all order scoring weight individuals Qj, the order scoring weight iteration population is selected and reorganized, and the order scoring weight iteration population is updated; when the maximum number of iterations is reached, the order scoring weight individual Qj corresponding to the maximum fitness is output, which is the optimal order scoring weight individual, and the mileage weight, submission time weight, waiting time weight and terminal area weight are output according to the optimal order scoring weight individual; the specific steps of updating the mileage weight, submission time weight, waiting time weight and terminal area weight in the scoring calculation layer include: When Z historical orders of driver Di are obtained, a weighted calculation is performed based on the driver evaluation feedback scores and user evaluation feedback scores of the Z historical orders to obtain the order feedback scores of the Z historical orders; the Z historical orders with order feedback scores are combined to obtain an updated score calculation training set; The updated score calculation training set is used to update the weights to obtain a new optimal order score weight individual. The mileage weight, submission time weight, waiting time weight and destination area weight in the new optimal order score weight individual are input into the score calculation layer for calculation.

2. A method for dispatching online car-hailing vehicles according to claim 1, characterized in that: The regression analysis method used in step T3 is a polynomial regression analysis method.

3. A network car-hailing dispatching system, characterized in that: The system applies a method for dispatching online car-hailing vehicles as described in any one of claims 1-2, including: The driver acquisition module is used to obtain the driver information of all drivers in the current area. The driver information corresponding to the driver includes the order acceptance status, location information, maximum order acceptance waiting time and estimated end time of this order; the order acceptance status value is 0 or 1, 0 indicates that the driver's order acceptance status is idle, and 1 indicates that the driver's order acceptance status is busy; when the order acceptance status value is 0, the location information indicates the driver's current location, and when the order acceptance status value is 1, the location information indicates the driver's destination location; the maximum order acceptance waiting time indicates the driver's maximum order acceptance waiting time in the current area; when the estimated end time of this order is less than the set end threshold, the driver's order acceptance status value is 0; extract the driver Di with an order acceptance status value of 0 in the driver information, i = 1, 2, ..., n; n is the number of drivers with an order acceptance status value of 0 in all driver information in the current area; The order acquisition module is used to traverse the driver Di to obtain the pending orders, starting from the time when the driver Di's order status value changes from 1 to 0 and ending at the driver Di's maximum order waiting time, and continuously obtain the pending orders; within the first waiting time range, the pending orders within the first area of ​​the driver Di are obtained; the pending orders include the starting point, the end point, the order submission time and the maximum waiting time; if the number of pending orders obtained within the first waiting time range is 0, then within the second waiting time range, the pending orders within the second area of ​​the driver Di are obtained; if the number of pending orders is 0 when the maximum order waiting time is reached, the driver Di is prompted to change the current area and re-obtain the pending orders; The order scoring allocation module is used to calculate the evaluation scores of all pending orders according to the starting point, end point, order submission time, maximum waiting time and user order evaluation model in the pending orders to obtain the order score; the pending order with the highest order score is pushed to the driver Di; the driver Di automatically receives the pending order with the highest order score, and at the same time, updates the driver information of the driver Di; if the same pending order is pushed to different drivers, the pending order will be randomly distributed.