CPC G06Q 10/06313 (2013.01) [G06Q 10/06315 (2013.01); G06Q 50/40 (2024.01); G08G 1/202 (2013.01)] | 20 Claims |
1. A real-time, point-to-point, on-demand car sharing system comprising:
a fleet dimensioning module (“FDM”), executed by at least one processor, for determining an optimal number of vehicles in a fleet needed to serve a collection of trip requests, wherein the at least one processor when executing is configured to:
access historical trip information for transformation of the historical trip information into an acyclic directed network graph based data structure;
select a future time period having a duration of at least a day and corresponding to at least one day of the week on which to determine an optimal number of vehicles to service a future time period;
define a first historical time period to analyze to estimate the optimal number of vehicles for the future time period based on matching the at least one day of the week or based on a statistical mix of trips performed during a number of past days, the first historical time period spanning at least thousands of trip requests;
select trip information including the at least thousands of trip requests from the historical trip information associated with the first historical time period on which to build the acyclic direct network graph based data structure;
generate the acyclic directed network graph based data structure with data elements on the selected trip information including the at least thousands of trip requests, wherein each data element corresponds to a trip in the first historical time period, and includes a pickup location, a trip request time or pickup time, and a drop off location, and the acyclic directed network graph based data structure reflects the thousands of trip requests;
create a plurality of directed links between the data elements within the acyclic directed network graph based data structure, wherein each directed link is created between the data elements responsive to determining for a pair of data elements that respective first and second trips of the pair from the first historical time period can be serviced with one vehicle;
enable polynomial time execution of subsequent operation based upon storing the trip information as the data elements and the serviced with one vehicle determination for the thousands of trip requests as the directed links between the data elements in the acyclic directed network graph based data structure;
determine, prior to receiving ride requests of the future time period, the optimal number of vehicles needed for the future time period based on, at least in part, executing a minimum path cover on the acyclic directed network graph based data structure, wherein executing the minimum path cover includes counting a minimum number of paths that cover the data elements and the directed links between them in the acyclic directed network graph based data structure in polynomial time;
define a tunable parameter to account for statistical deviations from historical data and constrain the tunable parameter to have a value greater than one;
adjust a number of vehicles by increasing the determined optimal number of vehicles based on the tunable parameter defined on the system, wherein adjusting includes multiplying the determined optimal number of vehicles by the tunable parameter;
tune the number of vehicles responsive to simulating vehicle dispatching functions
simulate sequential and batch assignment of rides, wherein the simulation of the sequential and batch assignment of rides includes at least: assigning weight values to links in a network data structure reflecting patron wait time, vehicle vacant time, vehicle travelled miles, resolving unmatched rides based on expanding initial parameters, and enabling simulated ride assignment to occur within parameters set by a transportation provider;
provision, prior to receiving ride requests of the future time period, the adjusted and tuned number of vehicles for a fleet of vehicles to support dispatching operations; and
the vehicle dispatching module (“VDM”), executed by at least one processor, wherein the at least one processor when executing is configured to:
accept current ride requests during the future time period;
match the current ride request to available vehicles in real-time; and
dispatch respective ones of the fleet of vehicles to serve active trip requests in response to accepting and matching trip requests from end users during the future time period.
|