Continuously updatable computer-generated routes with continuously configurable virtual bus stops for passenger ride-sharing of a fleet of ride-sharing vehicles and computer transportation systems and computer-implemented methods for use thereof
DCFirst Claim
1. A computer-implemented method, comprising:
- electronically receiving, in real-time, by at least one specifically programmed computer processor, via at least one computer network, a plurality of electronic riding requests from a plurality of electronic computing devices operated by a plurality of ride-sharing requesting passengers;
wherein each electronic riding request from each ride-sharing requesting passenger comprises;
an origin location data identifying a passenger-requested origin point, anda destination location data identifying a passenger-requested destination point;
for a particular electronic riding request of a particular ride-sharing requesting passenger;
electronically accessing, in real-time, by the at least one specifically programmed computer processor, for at least one database, at least one grid of virtual bus stops for at least one geographic locale;
wherein each virtual bus stop corresponds to a geographic location point within the at least one geographic locale at which a particular ride-sharing requesting passenger can be picked up or drop off by a first assigned vehicle;
dynamically selecting, in real-time, by the at least one specifically programmed computer processor, from at least one grid of virtual bus stops for the at least one geographic locale, a subset of candidate virtual pickup bus stops and a subset of candidate virtual dropoff bus stops based, at least in part, on;
i) a first absolute walking distance, being a distance from the passenger-requested origin point to at least one candidate virtual pickup bus stop of the subset of candidate virtual pickup bus stops, andii) a second absolute walking distance, being a distance from at least one candidate virtual dropoff bus stop of the subset of candidate virtual dropoff bus stops to the passenger-requested destination point;
electronically receiving, in real-time, during a first time period, by the at least one specifically programmed computer processor, via the at least one computer network, current vehicle location data for a plurality of ride-sharing vehicles traveling within the at least one geographic locale, wherein the current vehicle location data comprise global positioning system (GPS) data generated by at least one GPS component of at least one electronic computing device associated with each ride-sharing vehicle;
electronically accessing, in real-time, by the at least one specifically programmed computer processor, current ride-sharing data which are representative of current routes and current virtual bus stops associated with a plurality of riding passengers who are currently riding in the plurality of ride-sharing vehicles;
wherein the plurality of riding passengers comprises at least one hundred riding passengers;
dynamically determining, in real-time, by the at least one specifically programmed computer processor, a plurality of candidate vehicles which can pick up the particular ride-sharing requesting passenger, wherein the determining of the plurality of candidate vehicles is based, at least in part on;
the subset of candidate virtual pickup bus stops, the subset of candidate virtual dropoff bus stops, the current ride-sharing data and the current vehicle location data;
dynamically determining, in real-time, from the plurality of candidate vehicles, by the at least one specifically programmed computer processor,
1) a first assigned vehicle for picking up the particular ride-sharing requesting passenger and
2) a pair of assigned virtual pickup and dropoff bus stop tasks related to the particular ride-sharing requesting passenger, based, at least in part, on;
i) maximizing a vehicle occupancy to be at least two ride-sharing passengers in the first assigned vehicle at least a portion of a ride of the particular ride-sharing requesting passenger,ii) minimizing at least one of;
1) a first duration of time which each ride-sharing passenger spends in each candidate ride-sharing vehicle;
2) a second duration of time which each ride-sharing passenger spends waiting for each candidate ride-sharing vehicle to arrive at a respective virtual bus stop;
3) a third duration of time which each ride-sharing passenger spends walking from the passenger-requested origin point to a respective candidate virtual pickup bus stop and from a respective candidate virtual dropoff bus stop to the passenger-requested destination point;
4) a fourth duration of time which each candidate ride-sharing vehicle is held up in a traffic until a respective final virtual dropoff bus stop associated with the last ride-sharing passenger during a particular time period;
iii) an order in which a pair of candidate virtual pickup and dropoff bus stop tasks are inserted into a route schedule of existing pickup and dropoff virtual bus stop tasks associated with each candidate vehicle of the plurality of candidate vehicles;
dynamically generating, in real-time, by the at least one specifically programmed computer processor, a route proposal for the first assigned vehicle, wherein the route proposal for the first assigned vehicle comprises a first updated route schedule, formed by inserting the pair of assigned virtual pickup and dropoff bus stop tasks of the particular ride-sharing requesting passenger into an existing route schedule, comprising existing pickup and dropoff virtual bus stop tasks associated with the first assigned vehicle;
causing to electronically display, in real-time, via the at least one computer network, by the at least one specifically programmed computer processor, the assigned virtual pickup bus stop on a screen of a first electronic computing device associated with the particular ride-sharing requesting passenger; and
causing to electronically display, in real-time, via the at least one computer network, by the at least one specifically programmed computer processor, the first updated route schedule on a screen of a second electronic computing device associated with the first assigned vehicle.
4 Assignments
Litigations
0 Petitions
Accused Products
Abstract
In some embodiments, the present invention provides a computer-implemented transportation system which can include at least the following components: a specialized computer machine, including: a non-transient memory, electronically storing particular computer executable program code; a specifically programmed computer processor of the specialized computer machine of the computer-implemented transportation system that is configured to perform at least the following operations: electronically receiving, in real-time, via a computer network, a plurality of electronic riding requests from a plurality of electronic computing devices operated by a plurality of ride-sharing requesting passengers; where each electronic riding request from each ride-sharing requesting passenger includes: a passenger-requested origin point, and a passenger-requested destination point; for a particular electronic riding request, dynamically determining, in real-time, from a plurality of candidate vehicles an assigned vehicle for picking up the particular ride-sharing requesting passenger and a pair of assigned virtual pickup and dropoff bus stop tasks.
90 Citations
30 Claims
-
1. A computer-implemented method, comprising:
-
electronically receiving, in real-time, by at least one specifically programmed computer processor, via at least one computer network, a plurality of electronic riding requests from a plurality of electronic computing devices operated by a plurality of ride-sharing requesting passengers; wherein each electronic riding request from each ride-sharing requesting passenger comprises; an origin location data identifying a passenger-requested origin point, and a destination location data identifying a passenger-requested destination point; for a particular electronic riding request of a particular ride-sharing requesting passenger; electronically accessing, in real-time, by the at least one specifically programmed computer processor, for at least one database, at least one grid of virtual bus stops for at least one geographic locale; wherein each virtual bus stop corresponds to a geographic location point within the at least one geographic locale at which a particular ride-sharing requesting passenger can be picked up or drop off by a first assigned vehicle; dynamically selecting, in real-time, by the at least one specifically programmed computer processor, from at least one grid of virtual bus stops for the at least one geographic locale, a subset of candidate virtual pickup bus stops and a subset of candidate virtual dropoff bus stops based, at least in part, on; i) a first absolute walking distance, being a distance from the passenger-requested origin point to at least one candidate virtual pickup bus stop of the subset of candidate virtual pickup bus stops, and ii) a second absolute walking distance, being a distance from at least one candidate virtual dropoff bus stop of the subset of candidate virtual dropoff bus stops to the passenger-requested destination point; electronically receiving, in real-time, during a first time period, by the at least one specifically programmed computer processor, via the at least one computer network, current vehicle location data for a plurality of ride-sharing vehicles traveling within the at least one geographic locale, wherein the current vehicle location data comprise global positioning system (GPS) data generated by at least one GPS component of at least one electronic computing device associated with each ride-sharing vehicle; electronically accessing, in real-time, by the at least one specifically programmed computer processor, current ride-sharing data which are representative of current routes and current virtual bus stops associated with a plurality of riding passengers who are currently riding in the plurality of ride-sharing vehicles; wherein the plurality of riding passengers comprises at least one hundred riding passengers; dynamically determining, in real-time, by the at least one specifically programmed computer processor, a plurality of candidate vehicles which can pick up the particular ride-sharing requesting passenger, wherein the determining of the plurality of candidate vehicles is based, at least in part on;
the subset of candidate virtual pickup bus stops, the subset of candidate virtual dropoff bus stops, the current ride-sharing data and the current vehicle location data;dynamically determining, in real-time, from the plurality of candidate vehicles, by the at least one specifically programmed computer processor,
1) a first assigned vehicle for picking up the particular ride-sharing requesting passenger and
2) a pair of assigned virtual pickup and dropoff bus stop tasks related to the particular ride-sharing requesting passenger, based, at least in part, on;i) maximizing a vehicle occupancy to be at least two ride-sharing passengers in the first assigned vehicle at least a portion of a ride of the particular ride-sharing requesting passenger, ii) minimizing at least one of; 1) a first duration of time which each ride-sharing passenger spends in each candidate ride-sharing vehicle; 2) a second duration of time which each ride-sharing passenger spends waiting for each candidate ride-sharing vehicle to arrive at a respective virtual bus stop; 3) a third duration of time which each ride-sharing passenger spends walking from the passenger-requested origin point to a respective candidate virtual pickup bus stop and from a respective candidate virtual dropoff bus stop to the passenger-requested destination point; 4) a fourth duration of time which each candidate ride-sharing vehicle is held up in a traffic until a respective final virtual dropoff bus stop associated with the last ride-sharing passenger during a particular time period; iii) an order in which a pair of candidate virtual pickup and dropoff bus stop tasks are inserted into a route schedule of existing pickup and dropoff virtual bus stop tasks associated with each candidate vehicle of the plurality of candidate vehicles; dynamically generating, in real-time, by the at least one specifically programmed computer processor, a route proposal for the first assigned vehicle, wherein the route proposal for the first assigned vehicle comprises a first updated route schedule, formed by inserting the pair of assigned virtual pickup and dropoff bus stop tasks of the particular ride-sharing requesting passenger into an existing route schedule, comprising existing pickup and dropoff virtual bus stop tasks associated with the first assigned vehicle; causing to electronically display, in real-time, via the at least one computer network, by the at least one specifically programmed computer processor, the assigned virtual pickup bus stop on a screen of a first electronic computing device associated with the particular ride-sharing requesting passenger; and causing to electronically display, in real-time, via the at least one computer network, by the at least one specifically programmed computer processor, the first updated route schedule on a screen of a second electronic computing device associated with the first assigned vehicle. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
wherein the selecting of each candidate virtual dropoff bus stop into the subset of candidate virtual dropoff bus stops is based, at least in part, on at least one of; i) the first walking distance, the second walking distance, or both, ii) the sum of the first walking distance and the second walking distance, iii) the at least one walking comfort condition, iv) at least one second walking safety condition associated with a second walking route, being a route from each candidate virtual dropoff bus stop to the passenger-requested destination point, v) the at least one passenger well-being related factor, vi) the at least one passenger personal preference, vii) the at least one environment related factor, viii) the first cost assigned to each pair of the particular candidate virtual pickup bus stop and the particular candidate virtual dropoff bus stop, and ix) any combination thereof.
-
-
3. The method of claim 2, wherein the cost assigned to each pair of the particular candidate virtual pickup bus stop and the particular candidate virtual dropoff bus stop is based, at least in part on at least one cost related to at least one ride segment passing through an area associated with a particular demand.
-
4. The method of claim 1, wherein the first absolute walking distance is a first reasonable walking distance;
-
wherein the second absolute walking distance is a second reasonable walking distance; and wherein the method further comprises; dynamically determining, by the at least one specifically programmed computer processor, the first reasonable walking distance based, at least in part, on at least one of; i) the distance from the passenger-requested origin point to the at least one candidate virtual pickup bus stop, ii) a direction of travel of a road on which the at least one candidate virtual pickup bus stop is located, iii) an availability of at least one first additional candidate virtual pickup bus stop having a shorter walking distance, and iv) an availability of at least one second additional candidate virtual pickup bus stop having a longer walking distance; and dynamically determining, by the at least one specifically programmed computer processor, the second reasonable walking distance based, at least in part, on at least one of; i) the distance from at least one candidate virtual dropoff bus stop of the subset of candidate virtual dropoff bus stops to the passenger-requested destination point, ii) a direction of travel of a road on which the at least one candidate virtual dropoff stop is located, iii) an availability of at least one first additional candidate virtual dropoff bus stop having a shorter walking distance, and iv) an availability of at least one second additional candidate virtual dropoff bus stop having a longer walking distance.
-
-
5. The method of claim 1, wherein the dynamically generating the route proposal for the first assigned vehicle is based, at least in part, on one of:
-
i) at least one existing pickup virtual bus stop task and at least one existing dropoff virtual bus stop task associated with the first assigned vehicle, ii) a road speed of at least one road on which the first assigned vehicle travels or will travel, iii) a distance of at least one route which the first assigned vehicle will travel, and iv) a particular demand associated with the at least one route which the first assigned vehicle will travel.
-
-
6. The method of claim 1, further comprising
continuously tracking, in real-time, by the at least one specifically programmed computer processor, the current vehicle location and the current ride-sharing data to identify at least one condition which requires to re-assign the pair of assigned virtual pickup and dropoff bus stop tasks related to the particular ride-sharing requesting passenger to a second assigned vehicle; -
dynamically reassigning, by the at least one specifically programmed computer processor, the assigned virtual pickup bus stop task from the first assigned vehicle to the second assigned vehicle; dynamically revising, by the at least one specifically programmed computer processor, the first updated route schedule of the first assigned vehicle to obtain a first revised updated route schedule, by removing the pair of assigned virtual pickup and dropoff bus stop tasks related to the particular ride-sharing requesting passenger; dynamically revising, by the at least one specifically programmed computer processor, a second updated route schedule of the second assigned vehicle to add a second pair of assigned virtual pickup and dropoff bus stop tasks related to the particular ride-sharing requesting passenger; causing to electronically display, in real-time, via the at least one computer network, by the at least one specifically programmed computer processor, the first revised updated route schedule on the screen of the electronic computing device associated with the first assigned vehicle; and causing to electronically display, in real-time, via the at least one computer network, by the at least one specifically programmed computer processor, the second updated route schedule on a screen of an electronic computing device associated with the second assigned vehicle.
-
-
7. The method of claim 1, further comprising:
-
generating, by the at least one specifically programmed computer processor, the at least one grid of virtual bus stops for at least one geographic locale; wherein each virtual bus stop corresponds to a geographic location point within the at least one geographic locale at which at least one passenger can be picked up or drop off by at least one vehicle; electronically receiving, by the at least one specifically programmed computer processor, via the at least one computer network, human-readable location identifying data for uniquely identify each geographic location point corresponding to each virtual bus stop in the grid of virtual bus stops; electronically associating, by the at least one specifically programmed computer processor, the human-readable location identifying data to each geographic location point corresponding to each virtual bus stop in the grid of virtual bus stops; and electronically storing, by the at least one specifically programmed computer processor, the grid of virtual bus stops with the human-readable location identifying data in the at least one database.
-
-
8. The method of claim 7, wherein the geographic location point is along at least one main road of the at least one geographic locale.
-
9. The method of claim 1, further comprising:
-
generating, by the at least one specifically programmed computer processor, demand-point tasks based, at least in part, on one of; current ride-sharing demand data within the at least one geographic locale, and historic ride-sharing demand data within the at least one geographic locale; dynamically assigning, by the at least one specifically programmed computer processor, at least one demand-point task assigned to the first assigned vehicle; and wherein the dynamically determining the first assigned vehicle and the pair of assigned virtual pickup and dropoff bus stop tasks related to the particular ride-sharing requesting passenger is further based, at least in part, on the at least one demand-point task.
-
-
10. The method of claim 9, wherein the current demand data comprises data regarding at least one of:
-
i) a first current ride-sharing demand in a vicinity of the passenger-requested origin point, and ii) a second current ride-sharing demand in a vicinity of the passenger-requested destination point.
-
-
11. The method in claim 4, wherein each respective reasonable walking distance is in the range of 100-300 meters.
-
12. The method in claim 1, wherein the dynamically determining the first assigned vehicle and the pair of assigned virtual pickup and dropoff bus stop tasks related to the particular ride-sharing requesting passenger is further based, at least in part, on minimizing an additional walking distance, and
wherein the additional walking distance is in the range of 0-200 meters. -
13. The method in claim 1, wherein each respective absolute walking distance is in the range of 200-500 meters.
-
14. The method in claim 1, wherein the dynamically determining the first assigned vehicle and the pair of assigned virtual pickup and dropoff bus stop tasks related to the particular ride-sharing requesting passenger is further based, at least in part, on avoiding exceeding at least one of:
-
i) a fifth duration of time by which a ride duration of each ride-sharing passenger in each candidate ride-sharing vehicle is increased due to the addition of the ride-sharing requesting passenger in the existing route schedule of such candidate ride-sharing vehicle, ii) a detour distance by which a ride distance for each ride-sharing passenger in each candidate ride-sharing vehicle is increased due to the addition of the ride-sharing requesting passenger in the existing route schedule of such candidate ride-sharing vehicle.
-
-
15. The method in claim 14, wherein the fifth duration of time is in the range of 0.5-15 minutes, and wherein the detour distance is in the range of 100-1000 meters.
-
16. A computer-implemented transportation system, comprising:
-
at least one specialized computer machine, comprising; a non-transient memory, electronically storing particular computer executable program code; and at least one computer processor which, when executing the particular program code, becomes at least one specifically programmed computer processor of the at least one specialized computer machine of the computer-implemented transportation system that is configured to perform at least the following operations; electronically receiving, in real-time, by the at least one specifically programmed computer processor, via at least one computer network, a plurality of electronic riding requests from a plurality of electronic computing devices operated by a plurality of ride-sharing requesting passengers; wherein each electronic riding request from each ride-sharing requesting passenger comprises; an origin location data identifying a passenger-requested origin point, and a destination location data identifying a passenger-requested destination point; for a particular electronic riding request of a particular ride-sharing requesting passenger; electronically accessing, in real-time, by the at least one specifically programmed computer processor, for at least one database, at least one grid of virtual bus stops for at least one geographic locale; wherein each virtual bus stop corresponds to a geographic location point within the at least one geographic locale at which a particular ride-sharing requesting passenger can be picked up or drop off by a first assigned vehicle; dynamically selecting, in real-time, by the at least one specifically programmed computer processor, from at least one grid of virtual bus stops for the at least one geographic locale, a subset of candidate virtual pickup bus stops and a subset of candidate virtual dropoff bus stops based, at least in part, on; i) a first absolute walking distance, being a distance from the passenger-requested origin point to at least one candidate virtual pickup bus stop of the subset of candidate virtual pickup bus stops, and ii) a second absolute walking distance, being a distance from at least one candidate virtual dropoff bus stop of the subset of candidate virtual dropoff bus stops to the passenger-requested destination point; electronically receiving, in real-time, during a first time period, by the at least one specifically programmed computer processor, via the at least one computer network, current vehicle location data for a plurality of ride-sharing vehicles traveling within the at least one geographic locale, wherein the current vehicle location data comprise global positioning system (GPS) data generated by at least one GPS component of at least one electronic computing device associated with each ride-sharing vehicle; electronically accessing, in real-time, by the at least one specifically programmed computer processor, current ride-sharing data which are representative of current routes and current virtual bus stops associated with a plurality of riding passengers who are currently riding in the plurality of ride-sharing vehicles; wherein the plurality of riding passengers comprises at least one hundred riding passengers; dynamically determining, in real-time, by the at least one specifically programmed computer processor, a plurality of candidate vehicles which can pick up the particular ride-sharing requesting passenger, wherein the determining of the plurality of candidate vehicles is based, at least in part on;
the subset of candidate virtual pickup bus stops, the subset of candidate virtual dropoff bus stops, the current ride-sharing data and the current vehicle location data;dynamically determining, in real-time, from the plurality of candidate vehicles, by the at least one specifically programmed computer processor,
1) a first assigned vehicle for picking up the particular ride-sharing requesting passenger and
2) a pair of assigned virtual pickup and dropoff bus stop tasks related to the particular ride-sharing requesting passenger, based, at least in part, on;i) maximizing a vehicle occupancy to be at least two ride-sharing passengers in the first assigned vehicle at least a portion of a ride of the particular ride-sharing requesting passenger, ii) minimizing at least one of; 1) a first duration of time which each ride-sharing passenger spends in each candidate ride-sharing vehicle; 2) a second duration of time which each ride-sharing passenger spends waiting for each candidate ride-sharing vehicle to arrive at a respective virtual bus stop; 3) a third duration of time which each ride-sharing passenger spends walking from the passenger-requested origin point to a respective candidate virtual pickup bus stop and from a respective candidate virtual dropoff bus stop to the passenger-requested destination point; 4) a fourth duration of time which each candidate ride-sharing vehicle is held up in a traffic until a respective final virtual dropoff bus stop associated with the last ride-sharing passenger during a particular time period; iii) an order in which a pair of candidate virtual pickup and dropoff bus stop tasks are inserted into a route schedule of existing pickup and dropoff virtual bus stop tasks associated with each candidate vehicle of the plurality of candidate vehicles; dynamically generating, in real-time, by the at least one specifically programmed computer processor, a route proposal for the first assigned vehicle, wherein the route proposal for the first assigned vehicle comprises a first updated route schedule, formed by inserting the pair of assigned virtual pickup and dropoff bus stop tasks of the particular ride-sharing requesting passenger into an existing route schedule, comprising existing pickup and dropoff virtual bus stop tasks associated with the first assigned vehicle; causing to electronically display, in real-time, via the at least one computer network, by the at least one specifically programmed computer processor, the assigned virtual pickup bus stop on a screen of a first electronic computing device associated with the particular ride-sharing requesting passenger; and causing to electronically display, in real-time, via the at least one computer network, by the at least one specifically programmed computer processor, the first updated route schedule on a screen of a second electronic computing device associated with the first assigned vehicle. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
Specification