US20200100057A1 - System and method for determining transit stop location - Google Patents
System and method for determining transit stop location Download PDFInfo
- Publication number
- US20200100057A1 US20200100057A1 US16/313,480 US201816313480A US2020100057A1 US 20200100057 A1 US20200100057 A1 US 20200100057A1 US 201816313480 A US201816313480 A US 201816313480A US 2020100057 A1 US2020100057 A1 US 2020100057A1
- Authority
- US
- United States
- Prior art keywords
- location
- transit stop
- stop
- entries
- transit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3407—Route searching; Route guidance specially adapted for specific applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/023—Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3679—Retrieval, searching and output of POI information, e.g. hotels, restaurants, shops, filling stations, parking facilities
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/005—Traffic control systems for road vehicles including pedestrian guidance indicator
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/123—Traffic control systems for road vehicles indicating the position of vehicles, e.g. scheduled vehicles; Managing passenger vehicles circulating according to a fixed timetable, e.g. buses, trains, trams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
Definitions
- Bus stops are relatively small, sometimes consisting of merely a single bench and a sign, or even less.
- a given stretch of road may comprise multiple bus stops that are far enough apart so that a traveler has to make a choice as to which stop to wait at for the correct bus, while the stations are sufficiently similar in appearance so that discerning which the right bus stop is either is not possible or takes substantial effort.
- a bus station is relatively small and easy to assemble and disassemble, its location is subject to change, due to, for example, road construction or an updated bus route. Similar problems can exist in other transit systems, in which a fleet of vehicles (such as but not limited to shuttlebuses, cars, and boats) pick up and let off riders at designated transit stops, typically in accordance with a schedule.
- Transit apps help users navigate a transit system by providing schedules, assistance for trip planning, and mapping of routes and transit stops.
- a transit app user can query and access through a transit app information regarding particular routes and/or transit stops.
- Transit apps for other transit system in which a fleet of vehicles (such as but not limited to shuttlebuses, cars, and boats) pick up and let off riders at designated transit stops, typically in accordance with a schedule, may face similar issues.
- An aspect of an embodiment of the disclosure relates to providing a method that robustly determines locations of stops for a transit system responsive to user-provided (“crowdsourced”) location data.
- the transit stop location determination method in accordance with an embodiment of the disclosure may be referred to as a “stop location crowdsourcing” or “SL crowdsourcing” method.
- Another aspect of an embodiment of the disclosure is a system, which may be referred to herein as a “SL crowdsourcing system”, that is operable to perform a SL crowdsourcing method in accordance with an embodiment of the disclosure.
- the SL crowdsourcing method comprises: registering device location data of a plurality of mobile computing devices (which may be also referred to herein as “mobile devices”) when each of the plurality of mobile computing devices displays information relating to a stop; and determining an updated transit stop location responsive to the registered device location data.
- a location of a device when the device is displaying information relating to a given transit stop may be referred to herein as a “stop-lookup location” for the given transit stop, and data relating to the stop-lookup location may be referred to herein as “stop-lookup data”.
- a transit app may be operable to generate a page (“a transit stop page”) dedicated to providing information for a particular transit stop, by way of example, one or more of a name of the transit stop, a list of vehicles or service lines (such as bus routes) that stop at the transit stop, and estimated arrival times for buses scheduled to arrive.
- displaying information relating to a transit stop comprises displaying a transit stop page.
- the transit stop page includes real-time information relating to the transit stop, including a real-time list of vehicles that are expected to stop at the transit stop and real-time estimated arrival times for vehicles scheduled to arrive at the stop.
- the stop look-up data comprises, in addition to a stop-lookup location, one or more of: an ID (mobile device ID) of the mobile device, an ID (transit stop ID) of the transit stop for which information was displayed on the mobile device; a timestamp; and an accuracy of the stop-lookup location.
- the SL crowdsourcing method comprises: spatially clustering stop-lookup locations for the transit stop to identify a plurality of candidate clusters; determining a centroid for each of the plurality of candidate clusters and designating the plurality of centroids as a plurality of “candidate transit stop locations”; ranking the plurality of candidate transit stop locations to determine a “winning candidate transit stop location” most likely to reflect an actual transit stop location.
- the SL crowdsourcing method further comprises assessing if parameters of the winning candidate transit stop location meet threshold criteria for accuracy of data and/or likelihood of reflecting the actual transit stop location.
- the winning candidate transit stop location is designated as an “updated transit stop location”.
- the transit stop location is not updated.
- the SL crowdsourcing method further comprises one or more of: providing the updated transit stop location to a mobile device for display in the transit app; updating bus route information for the transit app responsive to the updated transit stop location; and providing the updated transit stop location to a bus transportation service provider.
- the method further comprises transmitting instructions to mobile devices to transmit more, or more accurate, stop-lookup locations for the transit stop.
- a SL crowdsourcing method in accordance with an embodiment of the disclosure makes it possible to determine transit stop location with a relatively small amount of location data collected from individual mobile phones.
- the SL crowdsourcing method can advantageously reduce: data transmission costs; drainage of batteries; and intrusions of privacy of the users.
- Embodiments of the disclosure may be applied to any transit system having designated locations (transit stops) for passengers to get on and off a vehicle operated by the transit system.
- the vehicle may be selected from the group consisting of a bus, a shuttlebus, a car, a van, a train, a boat, a ship, an aerial vehicle, or a train.
- the transit vehicle is operated by a human operator and/or a computer-based autonomous system.
- adjectives such as “substantially” and “about” modifying a condition or relationship characteristic of a feature or features of an embodiment of the disclosure are understood to mean that the condition or characteristic is defined to within tolerances that are acceptable for operation of the embodiment for an application for which it is intended.
- the word “or” in the description and claims is considered to be the inclusive “or” rather than the exclusive or, and indicates at least one of, or any combination of items it conjoins.
- Non-limiting examples of embodiments of the disclosure are described below with reference to figures attached hereto that are listed following this paragraph.
- Identical features that appear in more than one figure are generally labeled with a same label in all the figures in which they appear.
- a label labeling an icon representing a given feature of an embodiment of the disclosure in a figure may be used to reference the given feature.
- Dimensions of features shown in the figures are chosen for convenience and clarity of presentation and are not necessarily shown to scale.
- FIG. 1 schematically shows a SL crowdsourcing system communicating with a plurality of mobile devices, in accordance with an embodiment of the disclosure
- FIG. 2 shows a flowchart showing a SL crowdsourcing method in accordance with an embodiment of the disclosure
- FIGS. 3A-3D schematically shows an overhead map of a few city blocks, the map indicating an old location of a bus stop, stop-lookup locations of mobile devices for the bus stop, and an updated location of the bus stop determined based on the stop-lookup locations in accordance with a SL crowdsourcing method in accordance with an embodiment of the disclosure;
- FIG. 4 schematically shows examples of centered and deviated entries of stop-lookup data, as used in a SL crowdsourcing method in accordance with an embodiment of the disclosure.
- the vehicle may be selected from the group consisting of a bus, a shuttlebus, a car, a van, a train, a boat, a ship, an aerial vehicle, or a train.
- the vehicle is operated by a human operator and/or a computer-based autonomous system.
- FIG. 1 shows an exemplary environment in which embodiments of the present disclosure are operable.
- SL crowdsourcing system 100 is operable to perform a SL crowdsourcing process in accordance with the present disclosure.
- SL crowdsourcing system 100 is a computer-based system that may comprise CPUs and/or microprocessors and memory as needed to provide and support processes in accordance with the disclosure.
- SL crowdsourcing system 100 and components thereof may comprise or be comprised in a server, a group of servers, or a distributed computing system, such as a cloud computing system.
- SL crowdsourcing system 100 comprises communications module 102 that enables communication (schematically shown as double headed arrow 50 ) with mobile devices 200 .
- the wireless communication between SL crowdsourcing system 100 and mobile devices 200 may be mediated through one or more of various wireless communication mediums known in the art, such as Wi-Fi and cellular communication networks.
- Mobile devices 200 may be one of various mobile devices known in the art, by way of example smartphones, tablet computers, and the like, that are equipped with components and instructions for tracking the location of the mobile device, for example through GPS signals, cellular network signals, and Wi-Fi signals.
- Mobile devices 200 are also operable to download or be pre-installed with a transit app 220 .
- Transit app 220 is operable to display on mobile device 200 information (“location-based transit information”) relating to bus transportation that is responsive to the location of mobile device 200 , which may be received by mobile devices 200 from a transit app server 225 .
- the location-based transit information received by mobile devices 200 from transmit app server 225 is schematically illustrated as block arrow 55 .
- Location-based bus information 55 includes, by way of example, locations of bus stops and information regarding operation of bus lines near the location of mobile device 200 , such as bus lines stopping at a given bus stop and/or estimated arrival times of a given bus line at a given bus stop.
- Transit app 220 is also operable to generate a page (“a bus stop page”) dedicated to providing location-based transit information for a particular bus stop.
- displaying information relating to a bus stop comprises displaying a bus stop page.
- the bus stop page may provide location-based transit information in real-time, in that the information is regularly updated at a frequency that is easily perceived by a human user, for example at least once per minute, at least once per 30 seconds, at least once per 10 seconds, at least once per second or at least once per half-second.
- the estimated arrival time of a bus at the bus stop as shown on the bus stop page may be regularly updated responsive to, by way of example, location-based data provided by the bus or current traffic conditions, and optionally provided via transit app server 225 .
- Transit app 220 may generate a bus stop page responsive to receiving input from a user of the transit app indicating a request for information regarding a particular bus stop.
- the request for information may comprise, by way of example, selecting the particular bus stop from a list of nearby bus stop, or selecting an icon representing the particular bus stop that is shown on an electronic map generated by the transit app.
- transit app 220 is operable to generate an entry of stop-lookup data responsive to the transit app generating a bus stop page, and further to transmit said stop-lookup data entry to SL crowdsourcing system 100 .
- each entry for stop-lookup data comprises, in addition to a stop-lookup location, one or more of: a mobile device ID, a bus stop ID of the bus stop for which information was displayed; a timestamp; and an accuracy of the stop-lookup location.
- a stop-lookup location comprises longitude and latitude coordinates, as well as, optionally, altitude and/or accuracy.
- stop-lookup location may be provided in accordance with a Global Navigation Satellite System (GNSS) by way of example Global Positioning System (GPS) or GLONASS.
- GNSS Global Navigation Satellite System
- GPS Global Positioning System
- GLONASS Global Positioning System
- the location coordinates may be converted by SL crowdsourcing system 100 or prior to reception by the SL crowdsourcing system to be in accordance with a Euclidean CRS, by way of example a UTM system, in order to for the SL crowdsourcing system to perform geometric calculations with the stop-lookup locations.
- an accuracy of a stop-lookup location is a distance of a radius (which may be referred to herein as a “confidence radius”) for a circle along a horizontal plane around the stop-lookup location at which there is a defined level of confidence that the true stop-lookup location is within the circle.
- the level of confidence may be a standard deviation (STD), by way of example a first STD (68% confidence), a second STD (95.45% confidence) or a third STD (99.73% confidence).
- STD standard deviation
- a higher value for a confidence radius indicates worse accuracy and a lower value for the confidence radius indicates better accuracy.
- the accuracy is defined as a radius around the stop-lookup location defining a 68% confidence.
- transit app 220 is utilized by users of mobile devices 200 , mobile devices 200 intermittently transmit new entries of stop-lookup data to SL crowdsourcing system 100 .
- one mobile device 200 operating transit app 220 in accordance with an embodiment of the disclosure is operable to transmit an entry of stop-lookup data for one bus stop in a plurality of instances, over the course of a day or even a few minutes, depending by way of example on how often the user requests information for the bus stop or instructs the mobile device to generate or update a bus stop page for the bus stop.
- Communication module 102 is operable to receive the transmitted stop-lookup data entries and forwards the data for storage in crowd data memory 104 .
- crowd data memory 104 amasses a store of many entries of stop-lookup data for a plurality of bus stops from a plurality of mobile phones over a period of time, which may be hours, days, months, or years.
- transmission of an entry of stop-lookup data by a mobile device 200 may be limited to a maximum number of instances per period of time, by way of example once every 5 minutes, so that the data set is not overly represented by users who opens a bus stop page with unusually high frequency.
- Stop location (“SL”) engine 106 comprised in SL crowdsourcing system 100 is operable to select stop-lookup data regarding a defined bus stop over a defined period of time and determine or update a location of the bus stop responsive to the stop-lookup data.
- SL engine 106 may comprise or be comprised in a microprocessor, or be a functional unit comprised in a computer system, which may be a distributed computing system, for example a cloud-based computing system.
- FIG. 2 shows a flowchart for a SL crowdsourcing process 300 in accordance with an embodiment of the disclosure, as well as to addition to FIG. 1 schematically showing SL crowdsourcing system 100 operable to perform SL crowdsourcing process 300 .
- SL engine 106 determines or updates a location of the bus stop by implementing a SL crowdsourcing process 300 responsive to a set of instructions stored in a memory comprised in or operatively connected to SL engine 106 .
- the memory is crowd data memory 104 , main DB 106 , or another memory (not shown) comprised in or operatively connected to SL crowdsourcing system 100 .
- SL crowdsourcing process 300 may be initiated for a given bus stop in response to one or more of a variety of triggers.
- the trigger optionally include an indication (“error indication”) that a default bus stop location for example as stored in a main database (“main DB”) 108 is incorrect.
- the error indication may comprise registering of complaints by transit app users or anomalous driving patterns by buses at or near the bus stop.
- the trigger includes a passing of a minimum user threshold for the given bus stop, by way of example as indicated by a number of transit app users opening a bus stop page for the bus stop.
- the trigger optionally includes a predetermined interval of time, such that, for every bus stop of a transit system, SL crowdsourcing system 100 periodically inspects and if needed updates the default bus stop location in accordance with SL crowdsourcing process 300 .
- SL crowdsourcing process 300 comprises a block 302 comprising registering a set of stop-lookup data from crowd data memory 104 .
- the registered stop-lookup data for subsequent analysis by SL engine 106 is selected based on a bus stop ID, in order to select for entries of stop-lookup data relating to a particular bus stop.
- FIGS. 3A-3C schematically shows an example set of stop-lookup locations from stop-lookup data entries selected based on a particular bus stop ID for a bus stop named “the Diamond District stop”, which are overlaid on a map 400 of a city neighborhood comprising streets 402 and blocks 404 .
- a compass 406 is shown for reference of direction.
- FIGS. 3A-3C schematically show one street, 47 th St., arranged on an East-West axis, and two Avenues, 5 th Ave. and 6 th Ave., arranged on a North-South axis.
- the default location of the Diamond District stop, as stored in main DB 108 is indicated with a five-pointed star 410 .
- Stop-lookup locations of individual entries of the stop-lookup data for the Diamond District stop are schematically shown as small filled circles 502 .
- Stop-lookup locations 502 are schematically displayed together with open circles (“confidence circles”) 504 that are each defined by a radius (“confidence radius”) associated with each stop-lookup location.
- the size of confidence circle 504 reflect the level of accuracy of the corresponding stop-lookup location located at the center of the circle—a smaller size corresponds to better accuracy of the stop-lookup location and a larger size corresponds to a less accurate stop-lookup location.
- registered stop-lookup data may be further selected based on one or more other data entries comprised in the stop-lookup data, which may include: stop-lookup location; a mobile device ID; transit stop ID; a timestamp; and an accuracy of the stop-lookup location.
- Examples of selecting stop-lookup data registered for analysis based on the timestamp include: selecting for stop-lookup data before or after a date of change in bus stop location as dictated by a bus transportation service provider; selecting for stop-lookup data on particular days of the week, for example weekend or weekdays; selecting for stop-lookup data from certain times, for example late night or business hours.
- selecting stop-lookup data include selecting based on an accuracy of the stop-lookup location.
- the set of registered stop-lookup data may be selected to include only entries of stop-lookup data having a minimum level of accuracy.
- SL crowdsourcing process 300 comprises a block 304 ( FIG. 2 ) comprising spatially clustering the registered stop-lookup locations for the bus stop to identify a plurality of candidate clusters.
- the registered stop-lookup data is loaded into a spatial index optimized to store and query data that represents objects defined in a geometric space.
- spatial indices include: R-tree, R+ tree, R* tree, Hilbert R-tree, HHCode, Grid (spatial index), Z-order (curve), Quadtree, Octree, UB-tree, X-tree, kd-tree, and m-tree.
- the spatial index is used to spatially cluster the stop-lookup locations.
- the spatial clustering may be performed with various clustering methods known in the art.
- the spatial clustering method includes Density-Based Spatial Clustering of Applications with Noise (DBSCAN).
- Other optional clustering methods include OPTICS (Ordering points to identify the clustering structure) algorithm and hierarchical clustering. For a given set of stop-lookup locations, let the set of clusters having n clusters be designated as consisting of cluster[ 1 ], cluster[ 2 ], cluster[n].
- spatial clustering of stop-lookup locations 502 identifies six clusters, indicated as 510 - 1 , 510 - 2 , 510 - 3 , 510 - 4 , 510 - 5 , and 510 - 6 in FIGS. 3B-3D .
- SL crowdsourcing process 300 comprises a block 305 ( FIG. 2 ) comprising designating cluster centroids as candidate bus stop locations. After the clusters are designated, a centroid of each cluster is determined.
- the centroid of each of clusters 510 - 1 , 510 - 2 , 510 - 3 , 510 - 4 , 510 - 5 , and 510 - 6 , respectively, are schematically shown as open crosses 520 - 1 , 520 - 2 , 520 - 3 , 520 - 4 , 520 - 5 and 520 - 6 .
- centroid is calculated so that stop-lookup location entries that are more accurate (having a shorter confidence radius) are more heavily weighted.
- each stop-lookup location in a set of stop-lookup data entries in a given cluster be defined as a set of points, each point p i having an x coordinate x i and a y coordinate y i , expressed as:
- each point p i be associated with a weight w i defined as an inverse of the accuracy (confidence radius) associated with the point such that a more accurate stop-lookup location is given more weight, in accordance with the formula:
- centroid of each cluster is designated as a candidate bus stop location.
- SL crowdsourcing process 300 comprises a block 306 ( FIG. 2 ) comprising ranking the candidate bus stop locations to determine a winning bus stop location.
- the candidate bus stop locations may be ranked according to a confidence value indicating a confidence that the candidate bus stop location is the actual location of the bus stop.
- the above confidence value may be referred to herein as a “location confidence value” or “LCV”, and may be a value ranging from 0 indicating minimum confidence and 1 indicating maximum confidence.
- the LCV for a given candidate bus stop location may be calculated based on at least a portion of the entries comprised in the registered stop-lookup data, optionally all entries comprised in the registered stop-lookup data.
- the LCV is calculated based on a selection of entries within the registered stop-lookup data having locations that are presumed to co-localize with the candidate bus stop location with a minimum confidence.
- the selection of entries comprises selecting entries in which a circle (which may be referred to as a “confidence circle”) defined by the entry's confidence radius and stop-lookup location encompasses the candidate bus stop location.
- a circle which may be referred to as a “confidence circle”
- an entry that fails to fulfil this requirement may be referred to as an “deviated entry” with respect to the candidate bus stop location.
- a set of entries determined to the centered entries may be referred to as a “centered entry set” and a set of entries determined to the deviated entries may be referred to as a “deviated entry set”.
- Stop-lookup location 502 A and a confidence circle 504 A correspond to a centered entry, in which confidence circle 504 A encompasses a centroid 520 of a cluster.
- Stop-lookup location 502 A and confidence circle 504 B also correspond to a centered entry.
- stop-lookup location 502 C and a confidence circle 504 C correspond to a deviated entry, in which confidence circle 504 C fails to encompass centroid 520 .
- the LCV for a candidate bus stop location may be based on one or more “specialized LCVs” calculated from at least a portion of the registered stop-lookup data.
- a first specialized LCV (“LCVdevice”) is calculated based on a count of unique mobile devices in a centered entry set for a candidate bus stop location relative to the total count of unique mobile devices in the registered stop-lookup data set, such that a candidate bus stop location having a centered entry set with a high count of unique devices has a high LCVdevice.
- LCVdevice is a value between 0 and 1, with 0 reflecting no devices and 1 reflecting a high count of unique devices.
- the LCVdevice may be a value based on the count of unique mobile devices (by way of example mobile devices 200 shown in FIG. 1 ) in the centered entry set divided by the total count of unique devices in the set of registered stop-lookup data entries.
- the count of unique mobile devices can be determined using the device ID comprised in the stop-lookup data.
- a registered stop-lookup dataset consist of 1000 entries received from 100 unique devices. With respect to a first candidate bus stop location, 300 entries are deviated entries received from 75 unique devices, and 700 entries are centered entries received from 25 unique devices. In such an example, the LCVdevice for the cluster equals 25/100, which is 0.25.
- the second candidate bus stop location has a higher LCVdevice, and thus a higher confidence that it is the actual location of the bus stop.
- the LCVdevice is calculated as a weighted average, in which devices that are located farther from the candidate bus stop location, or devices associated with an entry having a worse accuracy, is assigned a lower weight and thus contribute less to the average compared to devices are located closer to the candidate bus stop location.
- a second specialized LCV (“LCVdistance”) is based on an accuracy of the confidence radius of the entries in a centered entry set with respect to a candidate bus stop location, such that a candidate bus stop location with a centered entry set with high average accuracy has a high LCVdistance.
- LCVdistance may be based on a sum of the inverse of the confidence radius for each centered entry for a candidate bus location divided by a sum of the inverse of the confidence radius for all entries in the registered stop-lookup dataset.
- the LCVdistance would have a value between 0 and 1, and candidate bus stop locations in which the centered entries tend to have better accuracy of its stop-lookup location tends to have a higher LCVdistance value compared to other candidate bus stop locations.
- a registered stop-lookup data set consist of 1000 entries, and let an average confidence radius of 300 centered entries for a first candidate bus location be 2 meters and the average confidence radius of all 1000 entries in the dataset be 5 meters.
- the LCVdistance for the first candidate bus location equals 150 (300 entries ⁇ 1 ⁇ 2) divided by 200 (1000 entries ⁇ 1 ⁇ 5), which is 0.75.
- a second candidate bus stop location having centered entries with a longer confidence radius would have a smaller LCVdistance.
- a second candidate bus stop location have 300 centered entries having an average confidence radius of 6 meters, which is less accurate than the average confidence radius of 5 for all entries in the registered dataset.
- LCVdistance for the second candidate bus stop would be 50 (300 entries ⁇ 1 ⁇ 6) divided by 200 (1000 entries ⁇ 1 ⁇ 5), which is 0.25.
- the first candidate bus stop location has a higher confidence that it is the actual location of the bus stop compared to the second candidate bus stop location.
- an average confidence radius for deriving the LCVdistance is calculated as a weighted average, in which the contribution of a radius confidence of a given entry is weighted in accordance with the distance of the device location from the candidate bus stop, such that a confidence radius of a device located farther from the candidate bus stop location contributes less to the average compared to the confidence radius of devices located closer to the candidate bus stop location.
- a third specialized LCV (“LCVtime”) is based on a count of days that include a centered entry relative to the total count of days covered in the entries of the stop-lookup dataset comprised in the cluster.
- the count of days can be determined using the timestamp comprised in the stop-lookup dataset.
- LCVtime may be based on a count of days comprising a centered entry for a candidate stop-lookup location, divided by a count of all the days covered in the stop-lookup dataset.
- a first candidate bus stop be registered with 1000 entries collected over seven days, out of which five days include at least one centered entry.
- the LCVtime for a first candidate bus stop location would be 5 divided by 7, which is 0.714.
- a second candidate bus stop location be registered with 500 entries collected over seven days, out of which two days include at least one centered entry.
- the LCVtime for the second candidate bus stop location would be 2 divided by 7, which is 0.285.
- the first candidate bus stop location has a higher confidence that it is the actual location of the bus stop compared to the second candidate bus stop location.
- the LCVtime is calculated as a weighted average, in which devices that are located farther from the candidate bus stop location are assigned a lower weight and thus contribute less to the average compared to devices that are located closer to the candidate bus stop location.
- a LCV may be based on one or more of LCVdevice, LCVdistance and LCVtime.
- a LCV may be a weighted average of one or more of LCVdevice, LCVdistance and LCVtime.
- the candidate bus stop locations are ranked based of their respective LCV.
- the cluster with the highest LCV is designated as the stop-lookup data set's “winning” candidate bus stop location—the location presumed to reflect the location of the bus stop corresponding to the bus stop ID against which the entries comprised in the stop-lookup data set was selected.
- cluster 510 - 5 has the highest LCV of 0.82, and centroid 520 - 5 of cluster 510 - 5 is thus designated in the example as the winning candidate bus stop location.
- SL crowdsourcing method 300 further comprises a block 308 ( FIG. 2 ) comprising assessing if parameters of the winning candidate bus stop location meet at least one of or optionally all threshold criteria disclosed below, for accuracy of data and/or likelihood of the winning candidate bus stop location reflecting the actual stop location.
- the winning candidate bus stop location is designated as an updated bus stop location.
- a centroid of a given cluster of stop-lookup locations be designated as a winning candidate bus stop location (block 310 ). If parameters of the winning candidate bus stop location do not meet the at least one threshold criteria, the bus stop location is not updated (block 312 ).
- the parameter of the winning candidate bus stop location is based on its LCV.
- a first threshold criterion for a winning candidate bus stop location to qualify as an updated bus stop location is that the winning candidate bus stop location's LCV must be higher than the LCV of the second-ranked candidate bus stop location by at least a predetermined minimum difference value.
- the first threshold criterion contributes to ensuring that the stop-lookup entries of the winning candidate bus stop location reflects the location of the bus stop substantially better than all of the other candidate bus stop locations.
- the minimum difference value be 0.3. In such a case, the winning candidate bus stop location 520 - 5 shown in FIG.
- 3C having a LCV of 0.82 may qualify to be an updated bus stop location because the LCV of the second-ranked candidate bus stop location 520 - 2 is 0.44, such that the difference between the respective LCVs of winning candidate bus stop locations 520 - 5 and 520 - 2 is greater than the minimum difference value of 0.3.
- a second threshold criterion is that the winning candidate bus stop location's LCV must be higher, at least by a predetermined minimum difference value, than a LCV (“original bus stop LCV”) calculated using the original location of the same bus stop as identified in accordance with a bus stop ID, by way of example as stored in main DB 108 prior to the start of the SL crowdsourcing process, as a candidate bus stop location.
- the second threshold criterion contributes to ensuring that the winning candidate bus stop location reflects the actual current location of the bus stop substantially better than the previously established location of the same bus stop.
- a third threshold criterion is that, on average, the location of the entries included in the cluster whose centroid was designated as the winning candidate bus stop location is sufficiently accurate.
- the average confidence radius value (which may be referred to as “cluster accuracy” or “C accuracy ”) of the stop-lookup data entries included in the cluster whose centroid was designated as the winning candidate bus stop location is below a maximum value.
- a winning candidate bus stop location may not qualify to be an updated bus stop location if the stop-lookup locations included in the cluster defining the winning candidate bus stop location do not have sufficient cluster accuracy according to an objective standard.
- a winning candidate bus stop location may not qualify as an updated bus stop location if the cluster accuracy of the entries in the cluster is above 15 meters.
- the cluster accuracy may be calculated as follows. For a given cluster having a centroid C having coordinates:
- cluster accuracy (C accuracy ) of the cluster may be calculated as a weighted average of the Euclidean distance dist(C. p i ) between the location of the cluster centroid C and each point p i in the cluster, with the Euclidean distance for each point p i being weighted with weight w i in accordance with the point's accuracy, in accordance with the formula:
- a fourth threshold criterion is that a Euclidean distance between the winning candidate bus stop location and the current bus stop location should above a certain threshold. As such, a winning candidate bus stop location may not qualify to be an updated bus stop location if there is no appreciable difference between the two locations.
- the winning candidate bus stop location is designated as the updated bus stop location, upon fulfilling the first, second, third, and fourth threshold criteria.
- winning candidate bus stop location 520 - 5 fulfills the first, second, third, and fourth threshold criteria and is thus designated to be the updated bus stop location for the Diamond District stop, which is schematically indicated by a four-pointed star 415 .
- the third and fourth criteria described above do not require that the LCV of the candidate bus stop locations be first determined.
- the third and fourth criteria may be applied at block 304 or block 305 to eliminate clusters prior to ranking the clusters based on LCV in accordance with block 306 .
- clusters that lack a threshold level of cluster accuracy, or clusters whose centers are not sufficiently distant from the previous bus stop location may be removed from consideration even before their respective LCV is determined.
- designation of a bus stop location and an updated bus stop location by SL engine 106 triggers updating the location of the bus as stored in main DB 108 and/or transmitting the updated bus stop location to a bus transportation service provider that makes use of the bus stop.
- SL crowdsourcing process 300 comprises a block 314 comprising, if the winning candidate bus stop location is determined to not meet threshold criteria as described with respect to block 308 , transmitting instructions to mobile devices to transmit more accurate stop-lookup locations for the bus stop.
- SL engine 106 analyzes stop-lookup data for a given bus stop, but the resulting stop-lookup data does not produce a cluster that qualifies to provide an updated bus stop location in light of block 308 , then SL engine 106 transmits “location boost” instructions to mobile devices 200 to subsequently provide more, or more accurate, location-based data relevant to the given bus stop.
- the mobile device ID comprised in the stop-lookup data set may be used so that the instructions are sent to the mobile phone that previously transmitted stop-lookup data for the given bus stop.
- the instructions may be sent only to a subset of mobile devices operating transit app 220 and operable to communicate with SL crowdsourcing system 100 .
- the location boost instructions may comprise instructing certain mobile devices 200 to activate its GPS receiver, optionally when a user instructs the mobile device to access information for the given bus stop.
- the location boost instructions may comprise requesting location data from other sources, such as from location-tracking equipment on buses.
- the term “average”, unless otherwise specified, is understood to be a result of one of any type of averaging methods known in the art, including but not limited to: mean, mode, median, or weighted average.
- each of the verbs, “comprise” “include” and “have”, and conjugates thereof, are used to indicate that the object or objects of the verb are not necessarily a complete listing of components, elements or parts of the subject or subjects of the verb.
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Traffic Control Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Navigation (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Telephonic Communication Services (AREA)
Abstract
Description
- The present application claims benefit under 35 U.S. C. 119(e) from U.S. Provisional Application 62/521,451 filed Jun. 18, 2017, whose content and disclosure are incorporated herein by reference in their entirety.
- Finding the right bus stop is a necessary step for a user of a bus transportation system to effectively use the system for travel, but it can be difficult in practice. Bus stops are relatively small, sometimes consisting of merely a single bench and a sign, or even less. A given stretch of road may comprise multiple bus stops that are far enough apart so that a traveler has to make a choice as to which stop to wait at for the correct bus, while the stations are sufficiently similar in appearance so that discerning which the right bus stop is either is not possible or takes substantial effort. In addition, because a bus station is relatively small and easy to assemble and disassemble, its location is subject to change, due to, for example, road construction or an updated bus route. Similar problems can exist in other transit systems, in which a fleet of vehicles (such as but not limited to shuttlebuses, cars, and boats) pick up and let off riders at designated transit stops, typically in accordance with a schedule.
- Computer-based applications (“transit apps”) help users navigate a transit system by providing schedules, assistance for trip planning, and mapping of routes and transit stops. By way of example, a transit app user can query and access through a transit app information regarding particular routes and/or transit stops.
- The small size of typical bus stop and the occurrence of changes in bus routes and bus stop location presents a challenge for a transit app to consistently have available to it bus stop locations of sufficient accuracy and consistency for optimal user satisfaction. Transit apps for other transit system, in which a fleet of vehicles (such as but not limited to shuttlebuses, cars, and boats) pick up and let off riders at designated transit stops, typically in accordance with a schedule, may face similar issues.
- An aspect of an embodiment of the disclosure relates to providing a method that robustly determines locations of stops for a transit system responsive to user-provided (“crowdsourced”) location data. Hereinafter, the transit stop location determination method in accordance with an embodiment of the disclosure may be referred to as a “stop location crowdsourcing” or “SL crowdsourcing” method. Another aspect of an embodiment of the disclosure is a system, which may be referred to herein as a “SL crowdsourcing system”, that is operable to perform a SL crowdsourcing method in accordance with an embodiment of the disclosure.
- In an embodiment of the disclosure, the SL crowdsourcing method comprises: registering device location data of a plurality of mobile computing devices (which may be also referred to herein as “mobile devices”) when each of the plurality of mobile computing devices displays information relating to a stop; and determining an updated transit stop location responsive to the registered device location data. For convenience of presentation, a location of a device when the device is displaying information relating to a given transit stop may be referred to herein as a “stop-lookup location” for the given transit stop, and data relating to the stop-lookup location may be referred to herein as “stop-lookup data”.
- A transit app may be operable to generate a page (“a transit stop page”) dedicated to providing information for a particular transit stop, by way of example, one or more of a name of the transit stop, a list of vehicles or service lines (such as bus routes) that stop at the transit stop, and estimated arrival times for buses scheduled to arrive. In an embodiment of the disclosure, displaying information relating to a transit stop comprises displaying a transit stop page. In an embodiment of the disclosure, the transit stop page includes real-time information relating to the transit stop, including a real-time list of vehicles that are expected to stop at the transit stop and real-time estimated arrival times for vehicles scheduled to arrive at the stop.
- In an embodiment of the disclosure, the stop look-up data comprises, in addition to a stop-lookup location, one or more of: an ID (mobile device ID) of the mobile device, an ID (transit stop ID) of the transit stop for which information was displayed on the mobile device; a timestamp; and an accuracy of the stop-lookup location.
- In an embodiment of the disclosure, the SL crowdsourcing method comprises: spatially clustering stop-lookup locations for the transit stop to identify a plurality of candidate clusters; determining a centroid for each of the plurality of candidate clusters and designating the plurality of centroids as a plurality of “candidate transit stop locations”; ranking the plurality of candidate transit stop locations to determine a “winning candidate transit stop location” most likely to reflect an actual transit stop location.
- In an embodiment of the disclosure, the SL crowdsourcing method further comprises assessing if parameters of the winning candidate transit stop location meet threshold criteria for accuracy of data and/or likelihood of reflecting the actual transit stop location. Optionally, if parameters of the winning candidate transit stop location meets threshold criteria, the winning candidate transit stop location is designated as an “updated transit stop location”. Optionally, if parameters of the wining cluster does not meet threshold criteria, the transit stop location is not updated.
- In an embodiment of the disclosure, the SL crowdsourcing method further comprises one or more of: providing the updated transit stop location to a mobile device for display in the transit app; updating bus route information for the transit app responsive to the updated transit stop location; and providing the updated transit stop location to a bus transportation service provider.
- In an embodiment of the disclosure, if the winning candidate transit stop location is determined to not meet threshold criteria, the method further comprises transmitting instructions to mobile devices to transmit more, or more accurate, stop-lookup locations for the transit stop.
- Advantageously, a SL crowdsourcing method in accordance with an embodiment of the disclosure makes it possible to determine transit stop location with a relatively small amount of location data collected from individual mobile phones. As a result, for the mobile devices providing the location data, the SL crowdsourcing method can advantageously reduce: data transmission costs; drainage of batteries; and intrusions of privacy of the users.
- Embodiments of the disclosure may be applied to any transit system having designated locations (transit stops) for passengers to get on and off a vehicle operated by the transit system. In accordance with an embodiment of the disclosure, the vehicle may be selected from the group consisting of a bus, a shuttlebus, a car, a van, a train, a boat, a ship, an aerial vehicle, or a train. Optionally, the transit vehicle is operated by a human operator and/or a computer-based autonomous system.
- In the discussion, unless otherwise stated, adjectives such as “substantially” and “about” modifying a condition or relationship characteristic of a feature or features of an embodiment of the disclosure, are understood to mean that the condition or characteristic is defined to within tolerances that are acceptable for operation of the embodiment for an application for which it is intended. Unless otherwise indicated, the word “or” in the description and claims is considered to be the inclusive “or” rather than the exclusive or, and indicates at least one of, or any combination of items it conjoins.
- This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
- Non-limiting examples of embodiments of the disclosure are described below with reference to figures attached hereto that are listed following this paragraph. Identical features that appear in more than one figure are generally labeled with a same label in all the figures in which they appear. A label labeling an icon representing a given feature of an embodiment of the disclosure in a figure may be used to reference the given feature. Dimensions of features shown in the figures are chosen for convenience and clarity of presentation and are not necessarily shown to scale.
-
FIG. 1 schematically shows a SL crowdsourcing system communicating with a plurality of mobile devices, in accordance with an embodiment of the disclosure; -
FIG. 2 shows a flowchart showing a SL crowdsourcing method in accordance with an embodiment of the disclosure; -
FIGS. 3A-3D schematically shows an overhead map of a few city blocks, the map indicating an old location of a bus stop, stop-lookup locations of mobile devices for the bus stop, and an updated location of the bus stop determined based on the stop-lookup locations in accordance with a SL crowdsourcing method in accordance with an embodiment of the disclosure; and -
FIG. 4 schematically shows examples of centered and deviated entries of stop-lookup data, as used in a SL crowdsourcing method in accordance with an embodiment of the disclosure. - In the following text of the detailed description, features of a SL crowdsourcing system and method are shown in
FIGS. 1-4 and discussed with reference to the figures. While the Detailed Description refers primarily to a bus transit system having bus stops for passengers to get on and off a bus operated by the bus transit system, the disclosure herein is not limited to a bus transit system. Embodiments of the disclosure as described herein below may be applied to any transit system having transit stops for passengers to get on and off a vehicle operated by the transit system. In accordance with an embodiment of the disclosure, the vehicle may be selected from the group consisting of a bus, a shuttlebus, a car, a van, a train, a boat, a ship, an aerial vehicle, or a train. Optionally, the vehicle is operated by a human operator and/or a computer-based autonomous system. -
FIG. 1 shows an exemplary environment in which embodiments of the present disclosure are operable. SLcrowdsourcing system 100 is operable to perform a SL crowdsourcing process in accordance with the present disclosure.SL crowdsourcing system 100 is a computer-based system that may comprise CPUs and/or microprocessors and memory as needed to provide and support processes in accordance with the disclosure.SL crowdsourcing system 100 and components thereof may comprise or be comprised in a server, a group of servers, or a distributed computing system, such as a cloud computing system. -
SL crowdsourcing system 100 comprisescommunications module 102 that enables communication (schematically shown as double headed arrow 50) withmobile devices 200. The wireless communication betweenSL crowdsourcing system 100 andmobile devices 200 may be mediated through one or more of various wireless communication mediums known in the art, such as Wi-Fi and cellular communication networks.Mobile devices 200 may be one of various mobile devices known in the art, by way of example smartphones, tablet computers, and the like, that are equipped with components and instructions for tracking the location of the mobile device, for example through GPS signals, cellular network signals, and Wi-Fi signals. -
Mobile devices 200 are also operable to download or be pre-installed with a transit app 220. Transit app 220 is operable to display onmobile device 200 information (“location-based transit information”) relating to bus transportation that is responsive to the location ofmobile device 200, which may be received bymobile devices 200 from a transit app server 225. The location-based transit information received bymobile devices 200 from transmit app server 225 is schematically illustrated asblock arrow 55. Location-basedbus information 55 includes, by way of example, locations of bus stops and information regarding operation of bus lines near the location ofmobile device 200, such as bus lines stopping at a given bus stop and/or estimated arrival times of a given bus line at a given bus stop. Transit app 220 is also operable to generate a page (“a bus stop page”) dedicated to providing location-based transit information for a particular bus stop. In an embodiment of the disclosure, displaying information relating to a bus stop comprises displaying a bus stop page. The bus stop page may provide location-based transit information in real-time, in that the information is regularly updated at a frequency that is easily perceived by a human user, for example at least once per minute, at least once per 30 seconds, at least once per 10 seconds, at least once per second or at least once per half-second. By way of example, the estimated arrival time of a bus at the bus stop as shown on the bus stop page may be regularly updated responsive to, by way of example, location-based data provided by the bus or current traffic conditions, and optionally provided via transit app server 225. Transit app 220 may generate a bus stop page responsive to receiving input from a user of the transit app indicating a request for information regarding a particular bus stop. The request for information may comprise, by way of example, selecting the particular bus stop from a list of nearby bus stop, or selecting an icon representing the particular bus stop that is shown on an electronic map generated by the transit app. - In an embodiment of the disclosure, transit app 220 is operable to generate an entry of stop-lookup data responsive to the transit app generating a bus stop page, and further to transmit said stop-lookup data entry to
SL crowdsourcing system 100. In an embodiment of the disclosure, each entry for stop-lookup data comprises, in addition to a stop-lookup location, one or more of: a mobile device ID, a bus stop ID of the bus stop for which information was displayed; a timestamp; and an accuracy of the stop-lookup location. - In an embodiment of the disclosure, a stop-lookup location comprises longitude and latitude coordinates, as well as, optionally, altitude and/or accuracy. Optionally, stop-lookup location may be provided in accordance with a Global Navigation Satellite System (GNSS) by way of example Global Positioning System (GPS) or GLONASS. The location coordinates may be converted by
SL crowdsourcing system 100 or prior to reception by the SL crowdsourcing system to be in accordance with a Euclidean CRS, by way of example a UTM system, in order to for the SL crowdsourcing system to perform geometric calculations with the stop-lookup locations. - Optionally, an accuracy of a stop-lookup location is a distance of a radius (which may be referred to herein as a “confidence radius”) for a circle along a horizontal plane around the stop-lookup location at which there is a defined level of confidence that the true stop-lookup location is within the circle. The level of confidence may be a standard deviation (STD), by way of example a first STD (68% confidence), a second STD (95.45% confidence) or a third STD (99.73% confidence). As such, a higher value for a confidence radius indicates worse accuracy and a lower value for the confidence radius indicates better accuracy. In a particular embodiment, the accuracy is defined as a radius around the stop-lookup location defining a 68% confidence.
- In an embodiment of the disclosure, as transit app 220 is utilized by users of
mobile devices 200,mobile devices 200 intermittently transmit new entries of stop-lookup data toSL crowdsourcing system 100. Moreover, onemobile device 200 operating transit app 220 in accordance with an embodiment of the disclosure is operable to transmit an entry of stop-lookup data for one bus stop in a plurality of instances, over the course of a day or even a few minutes, depending by way of example on how often the user requests information for the bus stop or instructs the mobile device to generate or update a bus stop page for the bus stop. -
Communication module 102 is operable to receive the transmitted stop-lookup data entries and forwards the data for storage incrowd data memory 104. Overtime,crowd data memory 104 amasses a store of many entries of stop-lookup data for a plurality of bus stops from a plurality of mobile phones over a period of time, which may be hours, days, months, or years. - In an embodiment of the disclosure, transmission of an entry of stop-lookup data by a
mobile device 200, or registration of a transmission of a stop-lookup data transmission by aSL crowdsourcing system 100 from a particularmobile device 200, may be limited to a maximum number of instances per period of time, by way of example once every 5 minutes, so that the data set is not overly represented by users who opens a bus stop page with unusually high frequency. - Stop location (“SL”)
engine 106 comprised inSL crowdsourcing system 100 is operable to select stop-lookup data regarding a defined bus stop over a defined period of time and determine or update a location of the bus stop responsive to the stop-lookup data.SL engine 106 may comprise or be comprised in a microprocessor, or be a functional unit comprised in a computer system, which may be a distributed computing system, for example a cloud-based computing system. - Reference is now made to
FIG. 2 , which shows a flowchart for aSL crowdsourcing process 300 in accordance with an embodiment of the disclosure, as well as to addition toFIG. 1 schematically showingSL crowdsourcing system 100 operable to performSL crowdsourcing process 300. In an embodiment of the disclosure,SL engine 106 determines or updates a location of the bus stop by implementing aSL crowdsourcing process 300 responsive to a set of instructions stored in a memory comprised in or operatively connected toSL engine 106. Optionally, the memory iscrowd data memory 104,main DB 106, or another memory (not shown) comprised in or operatively connected toSL crowdsourcing system 100.SL crowdsourcing process 300 may be initiated for a given bus stop in response to one or more of a variety of triggers. The trigger optionally include an indication (“error indication”) that a default bus stop location for example as stored in a main database (“main DB”) 108 is incorrect. The error indication may comprise registering of complaints by transit app users or anomalous driving patterns by buses at or near the bus stop. Additionally or alternatively, the trigger includes a passing of a minimum user threshold for the given bus stop, by way of example as indicated by a number of transit app users opening a bus stop page for the bus stop. Additionally or alternatively, the trigger optionally includes a predetermined interval of time, such that, for every bus stop of a transit system,SL crowdsourcing system 100 periodically inspects and if needed updates the default bus stop location in accordance withSL crowdsourcing process 300. - In an embodiment of the disclosure,
SL crowdsourcing process 300 comprises ablock 302 comprising registering a set of stop-lookup data fromcrowd data memory 104. The registered stop-lookup data for subsequent analysis bySL engine 106 is selected based on a bus stop ID, in order to select for entries of stop-lookup data relating to a particular bus stop. -
FIGS. 3A-3C schematically shows an example set of stop-lookup locations from stop-lookup data entries selected based on a particular bus stop ID for a bus stop named “the Diamond District stop”, which are overlaid on amap 400 of a cityneighborhood comprising streets 402 and blocks 404. Acompass 406 is shown for reference of direction.FIGS. 3A-3C schematically show one street, 47th St., arranged on an East-West axis, and two Avenues, 5th Ave. and 6th Ave., arranged on a North-South axis. The default location of the Diamond District stop, as stored inmain DB 108, is indicated with a five-pointedstar 410. The stop-lookup locations of individual entries of the stop-lookup data for the Diamond District stop are schematically shown as small filledcircles 502. Stop-lookup locations 502 are schematically displayed together with open circles (“confidence circles”) 504 that are each defined by a radius (“confidence radius”) associated with each stop-lookup location. The size ofconfidence circle 504 reflect the level of accuracy of the corresponding stop-lookup location located at the center of the circle—a smaller size corresponds to better accuracy of the stop-lookup location and a larger size corresponds to a less accurate stop-lookup location. - Optionally or additionally, registered stop-lookup data may be further selected based on one or more other data entries comprised in the stop-lookup data, which may include: stop-lookup location; a mobile device ID; transit stop ID; a timestamp; and an accuracy of the stop-lookup location.
- Examples of selecting stop-lookup data registered for analysis based on the timestamp include: selecting for stop-lookup data before or after a date of change in bus stop location as dictated by a bus transportation service provider; selecting for stop-lookup data on particular days of the week, for example weekend or weekdays; selecting for stop-lookup data from certain times, for example late night or business hours.
- Other examples of selecting stop-lookup data include selecting based on an accuracy of the stop-lookup location. By way of example, the set of registered stop-lookup data may be selected to include only entries of stop-lookup data having a minimum level of accuracy.
- In an embodiment of the disclosure,
SL crowdsourcing process 300 comprises a block 304 (FIG. 2 ) comprising spatially clustering the registered stop-lookup locations for the bus stop to identify a plurality of candidate clusters. By way of example, the registered stop-lookup data is loaded into a spatial index optimized to store and query data that represents objects defined in a geometric space. Examples of spatial indices include: R-tree, R+ tree, R* tree, Hilbert R-tree, HHCode, Grid (spatial index), Z-order (curve), Quadtree, Octree, UB-tree, X-tree, kd-tree, and m-tree. - Reference is now made to
FIG. 3B . In an embodiment of the disclosure, once stop-lookup data is loaded onto a spatial index, the spatial index is used to spatially cluster the stop-lookup locations. The spatial clustering may be performed with various clustering methods known in the art. Optionally, the spatial clustering method includes Density-Based Spatial Clustering of Applications with Noise (DBSCAN). Other optional clustering methods include OPTICS (Ordering points to identify the clustering structure) algorithm and hierarchical clustering. For a given set of stop-lookup locations, let the set of clusters having n clusters be designated as consisting of cluster[1], cluster[2], cluster[n]. By way of example, spatial clustering of stop-lookup locations 502 identifies six clusters, indicated as 510-1, 510-2, 510-3, 510-4, 510-5, and 510-6 inFIGS. 3B-3D . - Reference is now made to
FIG. 3C . In an embodiment of the disclosure,SL crowdsourcing process 300 comprises a block 305 (FIG. 2 ) comprising designating cluster centroids as candidate bus stop locations. After the clusters are designated, a centroid of each cluster is determined. The centroid of each of clusters 510-1, 510-2, 510-3, 510-4, 510-5, and 510-6, respectively, are schematically shown as open crosses 520-1, 520-2, 520-3, 520-4, 520-5 and 520-6. Optionally, the centroid is calculated so that stop-lookup location entries that are more accurate (having a shorter confidence radius) are more heavily weighted. By way of example, let each stop-lookup location in a set of stop-lookup data entries in a given cluster be defined as a set of points, each point pi having an x coordinate xi and a y coordinate yi, expressed as: -
p i=(x i ,y i) [formula 1] - In addition, let each point pi be associated with a weight wi defined as an inverse of the accuracy (confidence radius) associated with the point such that a more accurate stop-lookup location is given more weight, in accordance with the formula:
-
- The cluster centroid C for a set of points pi (n=1 to i) can be expressed as
-
C=(x ,y ) [formula 3], where -
- In an embodiment of the disclosure, the centroid of each cluster is designated as a candidate bus stop location.
- In an embodiment of the disclosure,
SL crowdsourcing process 300 comprises a block 306 (FIG. 2 ) comprising ranking the candidate bus stop locations to determine a winning bus stop location. The candidate bus stop locations may be ranked according to a confidence value indicating a confidence that the candidate bus stop location is the actual location of the bus stop. The above confidence value may be referred to herein as a “location confidence value” or “LCV”, and may be a value ranging from 0 indicating minimum confidence and 1 indicating maximum confidence. The LCV for a given candidate bus stop location may be calculated based on at least a portion of the entries comprised in the registered stop-lookup data, optionally all entries comprised in the registered stop-lookup data. - Optionally, the LCV is calculated based on a selection of entries within the registered stop-lookup data having locations that are presumed to co-localize with the candidate bus stop location with a minimum confidence. Optionally, the selection of entries comprises selecting entries in which a circle (which may be referred to as a “confidence circle”) defined by the entry's confidence radius and stop-lookup location encompasses the candidate bus stop location. For convenience of presentation, an entry that fulfills this requirement may be referred to herein as a “centered entry” with respect to the candidate bus stop location, and an entry that fails to fulfil this requirement may be referred to as an “deviated entry” with respect to the candidate bus stop location. Also for convenience of presentation, a set of entries determined to the centered entries may be referred to as a “centered entry set” and a set of entries determined to the deviated entries may be referred to as a “deviated entry set”.
- Reference is made to
FIG. 4 , showing stop-lookup locations of anexample cluster 510. Stop-lookup location 502A and aconfidence circle 504A correspond to a centered entry, in which confidence circle 504A encompasses acentroid 520 of a cluster. Stop-lookup location 502A andconfidence circle 504B also correspond to a centered entry. By contrast, stop-lookup location 502C and aconfidence circle 504C correspond to a deviated entry, in whichconfidence circle 504C fails to encompasscentroid 520. - In an embodiment of the disclosure, the LCV for a candidate bus stop location may be based on one or more “specialized LCVs” calculated from at least a portion of the registered stop-lookup data.
- Optionally, a first specialized LCV (“LCVdevice”) is calculated based on a count of unique mobile devices in a centered entry set for a candidate bus stop location relative to the total count of unique mobile devices in the registered stop-lookup data set, such that a candidate bus stop location having a centered entry set with a high count of unique devices has a high LCVdevice. Optionally, LCVdevice is a value between 0 and 1, with 0 reflecting no devices and 1 reflecting a high count of unique devices. By way of example, the LCVdevice may be a value based on the count of unique mobile devices (by way of example
mobile devices 200 shown inFIG. 1 ) in the centered entry set divided by the total count of unique devices in the set of registered stop-lookup data entries. The count of unique mobile devices can be determined using the device ID comprised in the stop-lookup data. By way of numerical example, let a registered stop-lookup dataset consist of 1000 entries received from 100 unique devices. With respect to a first candidate bus stop location, 300 entries are deviated entries received from 75 unique devices, and 700 entries are centered entries received from 25 unique devices. In such an example, the LCVdevice for the cluster equals 25/100, which is 0.25. The LCVdevice of a second candidate bus stop location, having centered entries that are received from 40 unique devices out of the 100 unique devices in the registered stop-lookup dataset, would equal 40/100, which is 0.4. As such, the second candidate bus stop location has a higher LCVdevice, and thus a higher confidence that it is the actual location of the bus stop. Optionally, the LCVdevice is calculated as a weighted average, in which devices that are located farther from the candidate bus stop location, or devices associated with an entry having a worse accuracy, is assigned a lower weight and thus contribute less to the average compared to devices are located closer to the candidate bus stop location. - Additionally or alternatively, a second specialized LCV (“LCVdistance”) is based on an accuracy of the confidence radius of the entries in a centered entry set with respect to a candidate bus stop location, such that a candidate bus stop location with a centered entry set with high average accuracy has a high LCVdistance. Because a high confidence radius value corresponds to low accuracy and a low confidence radius value corresponds to high accuracy, an inverse of the confidence radius value may be used as a measure of accuracy. As such, LCVdistance may be based on a sum of the inverse of the confidence radius for each centered entry for a candidate bus location divided by a sum of the inverse of the confidence radius for all entries in the registered stop-lookup dataset. Calculated in such a way, the LCVdistance would have a value between 0 and 1, and candidate bus stop locations in which the centered entries tend to have better accuracy of its stop-lookup location tends to have a higher LCVdistance value compared to other candidate bus stop locations.
- By way of numerical example, let a registered stop-lookup data set consist of 1000 entries, and let an average confidence radius of 300 centered entries for a first candidate bus location be 2 meters and the average confidence radius of all 1000 entries in the dataset be 5 meters. In such an example, the LCVdistance for the first candidate bus location equals 150 (300 entries×½) divided by 200 (1000 entries×⅕), which is 0.75. A second candidate bus stop location having centered entries with a longer confidence radius would have a smaller LCVdistance. By way of a second numerical example, let a second candidate bus stop location have 300 centered entries having an average confidence radius of 6 meters, which is less accurate than the average confidence radius of 5 for all entries in the registered dataset. LCVdistance for the second candidate bus stop would be 50 (300 entries×⅙) divided by 200 (1000 entries×⅕), which is 0.25. As such, with respect to LCVdistance, the first candidate bus stop location has a higher confidence that it is the actual location of the bus stop compared to the second candidate bus stop location. Optionally, an average confidence radius for deriving the LCVdistance is calculated as a weighted average, in which the contribution of a radius confidence of a given entry is weighted in accordance with the distance of the device location from the candidate bus stop, such that a confidence radius of a device located farther from the candidate bus stop location contributes less to the average compared to the confidence radius of devices located closer to the candidate bus stop location.
- Additionally or alternatively, a third specialized LCV (“LCVtime”) is based on a count of days that include a centered entry relative to the total count of days covered in the entries of the stop-lookup dataset comprised in the cluster. The count of days can be determined using the timestamp comprised in the stop-lookup dataset. As such, LCVtime may be based on a count of days comprising a centered entry for a candidate stop-lookup location, divided by a count of all the days covered in the stop-lookup dataset. By way of numerical example, let a first candidate bus stop be registered with 1000 entries collected over seven days, out of which five days include at least one centered entry. In such an example, the LCVtime for a first candidate bus stop location would be 5 divided by 7, which is 0.714. In a second numerical example, let a second candidate bus stop location be registered with 500 entries collected over seven days, out of which two days include at least one centered entry. The LCVtime for the second candidate bus stop location would be 2 divided by 7, which is 0.285. As such, with respect to LCVtime, the first candidate bus stop location has a higher confidence that it is the actual location of the bus stop compared to the second candidate bus stop location. Optionally, the LCVtime is calculated as a weighted average, in which devices that are located farther from the candidate bus stop location are assigned a lower weight and thus contribute less to the average compared to devices that are located closer to the candidate bus stop location.
- In an embodiment of the disclosure, a LCV may be based on one or more of LCVdevice, LCVdistance and LCVtime. Optionally, a LCV may be a weighted average of one or more of LCVdevice, LCVdistance and LCVtime. In a numerical example, LCV=a(LCVdevice)+b(LCVdistance)+c(LCVtime), where a+b+c=1.
- Optionally, after the LCV is calculated for each cluster comprised in a set of registered stop-lookup data, the candidate bus stop locations are ranked based of their respective LCV. Optionally, the cluster with the highest LCV is designated as the stop-lookup data set's “winning” candidate bus stop location—the location presumed to reflect the location of the bus stop corresponding to the bus stop ID against which the entries comprised in the stop-lookup data set was selected.
- By way of numerical example, let the candidate bus stop locations shown in
FIG. 3C be determined to have the following LCVs: -
TABLE 1 Centroid LCV 520-1 0.21 520-2 0.44 520-3 0.22 520-4 0.37 520-5 0.82 (winning) 520-6 0.16 - Out of the six candidate bus stop locations, cluster 510-5 has the highest LCV of 0.82, and centroid 520-5 of cluster 510-5 is thus designated in the example as the winning candidate bus stop location.
- In an embodiment of the disclosure,
SL crowdsourcing method 300 further comprises a block 308 (FIG. 2 ) comprising assessing if parameters of the winning candidate bus stop location meet at least one of or optionally all threshold criteria disclosed below, for accuracy of data and/or likelihood of the winning candidate bus stop location reflecting the actual stop location. Optionally, if parameters of the winning candidate bus stop location meets threshold criteria, the winning candidate bus stop location is designated as an updated bus stop location. By way of example, let a centroid of a given cluster of stop-lookup locations be designated as a winning candidate bus stop location (block 310). If parameters of the winning candidate bus stop location do not meet the at least one threshold criteria, the bus stop location is not updated (block 312). In an embodiment of the disclosure, the parameter of the winning candidate bus stop location is based on its LCV. - Optionally, a first threshold criterion for a winning candidate bus stop location to qualify as an updated bus stop location is that the winning candidate bus stop location's LCV must be higher than the LCV of the second-ranked candidate bus stop location by at least a predetermined minimum difference value. The first threshold criterion contributes to ensuring that the stop-lookup entries of the winning candidate bus stop location reflects the location of the bus stop substantially better than all of the other candidate bus stop locations. By way of numerical example, let the minimum difference value be 0.3. In such a case, the winning candidate bus stop location 520-5 shown in
FIG. 3C having a LCV of 0.82 may qualify to be an updated bus stop location because the LCV of the second-ranked candidate bus stop location 520-2 is 0.44, such that the difference between the respective LCVs of winning candidate bus stop locations 520-5 and 520-2 is greater than the minimum difference value of 0.3. - Additionally or alternatively, a second threshold criterion is that the winning candidate bus stop location's LCV must be higher, at least by a predetermined minimum difference value, than a LCV (“original bus stop LCV”) calculated using the original location of the same bus stop as identified in accordance with a bus stop ID, by way of example as stored in
main DB 108 prior to the start of the SL crowdsourcing process, as a candidate bus stop location. The second threshold criterion contributes to ensuring that the winning candidate bus stop location reflects the actual current location of the bus stop substantially better than the previously established location of the same bus stop. By way of numerical example, let an original bus stop LCV, calculated with respect to the registered stop-lookup dataset and previously established bus stop location stored inmain DB 108, have a value of 0.08. In such a case, the winning candidate bus stop location 520-5 having a LCV of 0.82 may qualify to be the updated bus stop location. - Additionally or alternatively, a third threshold criterion is that, on average, the location of the entries included in the cluster whose centroid was designated as the winning candidate bus stop location is sufficiently accurate. Optionally, the average confidence radius value (which may be referred to as “cluster accuracy” or “Caccuracy”) of the stop-lookup data entries included in the cluster whose centroid was designated as the winning candidate bus stop location is below a maximum value. As such, a winning candidate bus stop location may not qualify to be an updated bus stop location if the stop-lookup locations included in the cluster defining the winning candidate bus stop location do not have sufficient cluster accuracy according to an objective standard. By way of numerical example, a winning candidate bus stop location may not qualify as an updated bus stop location if the cluster accuracy of the entries in the cluster is above 15 meters.
- The cluster accuracy may be calculated as follows. For a given cluster having a centroid C having coordinates:
-
C=(x ,y ) [formula 3], - cluster accuracy (Caccuracy) of the cluster may be calculated as a weighted average of the Euclidean distance dist(C. pi) between the location of the cluster centroid C and each point pi in the cluster, with the Euclidean distance for each point pi being weighted with weight wi in accordance with the point's accuracy, in accordance with the formula:
-
- Additionally or alternatively, a fourth threshold criterion is that a Euclidean distance between the winning candidate bus stop location and the current bus stop location should above a certain threshold. As such, a winning candidate bus stop location may not qualify to be an updated bus stop location if there is no appreciable difference between the two locations.
- In an embodiment of the disclosure, the winning candidate bus stop location is designated as the updated bus stop location, upon fulfilling the first, second, third, and fourth threshold criteria.
- By way of example, as shows in
FIG. 3D , winning candidate bus stop location 520-5 fulfills the first, second, third, and fourth threshold criteria and is thus designated to be the updated bus stop location for the Diamond District stop, which is schematically indicated by a four-pointed star 415. - The third and fourth criteria described above do not require that the LCV of the candidate bus stop locations be first determined. As such, the third and fourth criteria may be applied at
block 304 or block 305 to eliminate clusters prior to ranking the clusters based on LCV in accordance withblock 306. As such, clusters that lack a threshold level of cluster accuracy, or clusters whose centers are not sufficiently distant from the previous bus stop location may be removed from consideration even before their respective LCV is determined. - Reference is made back to
FIG. 1 . In an embodiment of the disclosure, designation of a bus stop location and an updated bus stop location bySL engine 106 triggers updating the location of the bus as stored inmain DB 108 and/or transmitting the updated bus stop location to a bus transportation service provider that makes use of the bus stop. - Reference is made back to
FIG. 2 . In an embodiment of the disclosure,SL crowdsourcing process 300 comprises ablock 314 comprising, if the winning candidate bus stop location is determined to not meet threshold criteria as described with respect to block 308, transmitting instructions to mobile devices to transmit more accurate stop-lookup locations for the bus stop. - Reference is made back to
FIG. 1 . In an embodiment of the disclosure, ifSL engine 106 analyzes stop-lookup data for a given bus stop, but the resulting stop-lookup data does not produce a cluster that qualifies to provide an updated bus stop location in light ofblock 308, thenSL engine 106 transmits “location boost” instructions tomobile devices 200 to subsequently provide more, or more accurate, location-based data relevant to the given bus stop. Optionally, the mobile device ID comprised in the stop-lookup data set may be used so that the instructions are sent to the mobile phone that previously transmitted stop-lookup data for the given bus stop. As such, the instructions may be sent only to a subset of mobile devices operating transit app 220 and operable to communicate withSL crowdsourcing system 100. Optionally, a “location boost area”, which may include a city or neighborhood that is determined based on the stop-lookup locations in the registered stop-lookup data set, and the location boost instructions are transmitted to all mobile devices that have previously transmitted stop-lookup locations located in the location boost area. - In an embodiment of the disclosure, the location boost instructions may comprise instructing certain
mobile devices 200 to activate its GPS receiver, optionally when a user instructs the mobile device to access information for the given bus stop. Alternatively or additionally, the location boost instructions may comprise requesting location data from other sources, such as from location-tracking equipment on buses. - In the description and claims of the present application, the term “average”, unless otherwise specified, is understood to be a result of one of any type of averaging methods known in the art, including but not limited to: mean, mode, median, or weighted average.
- In the description and claims of the present application, each of the verbs, “comprise” “include” and “have”, and conjugates thereof, are used to indicate that the object or objects of the verb are not necessarily a complete listing of components, elements or parts of the subject or subjects of the verb.
- Descriptions of embodiments of the disclosure in the present application are provided by way of example and are not intended to limit the scope of the invention. The described embodiments comprise different features, not all of which are required in all embodiments of the invention. Some embodiments utilize only some of the features or possible combinations of the features. Variations of embodiments of the invention that are described, and embodiments of the invention comprising different combinations of features noted in the described embodiments, will occur to persons of the art. The scope of the invention is limited only by the claims.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/313,480 US10623896B1 (en) | 2017-06-18 | 2018-06-18 | System and method for determining transit stop location |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762521451P | 2017-06-18 | 2017-06-18 | |
US16/313,480 US10623896B1 (en) | 2017-06-18 | 2018-06-18 | System and method for determining transit stop location |
PCT/IL2018/050674 WO2018235075A1 (en) | 2017-06-18 | 2018-06-18 | System and method for determining transit stop location |
Publications (2)
Publication Number | Publication Date |
---|---|
US20200100057A1 true US20200100057A1 (en) | 2020-03-26 |
US10623896B1 US10623896B1 (en) | 2020-04-14 |
Family
ID=62986145
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/313,480 Active US10623896B1 (en) | 2017-06-18 | 2018-06-18 | System and method for determining transit stop location |
Country Status (7)
Country | Link |
---|---|
US (1) | US10623896B1 (en) |
EP (1) | EP3469309B1 (en) |
JP (1) | JP6904637B2 (en) |
AU (1) | AU2018287014B2 (en) |
CA (1) | CA3067519C (en) |
ES (1) | ES2770177T3 (en) |
WO (1) | WO2018235075A1 (en) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200020227A1 (en) * | 2018-07-10 | 2020-01-16 | Cavh Llc | Connected automated vehicle highway systems and methods related to transit vehicles and systems |
US11275384B2 (en) * | 2019-03-20 | 2022-03-15 | Toyota Jidosha Kabushiki Kaisha | Operation control apparatus and vehicle |
CN115048590A (en) * | 2022-05-31 | 2022-09-13 | 北京交通大学 | Regular bus customization method facing privacy protection and based on federal analysis |
US11480437B2 (en) * | 2019-11-21 | 2022-10-25 | International Business Machines Corporation | Transportation system used by individuals having a visual impairment utilizing 5G communications |
US20220417703A1 (en) * | 2018-07-03 | 2022-12-29 | Magic Leap, Inc. | Systems and methods for virtual and augmented reality |
US11737832B2 (en) | 2019-11-15 | 2023-08-29 | Magic Leap, Inc. | Viewing system for use in a surgical environment |
US11756335B2 (en) | 2015-02-26 | 2023-09-12 | Magic Leap, Inc. | Apparatus for a near-eye display |
US11762222B2 (en) | 2017-12-20 | 2023-09-19 | Magic Leap, Inc. | Insert for augmented reality viewing device |
US11762623B2 (en) | 2019-03-12 | 2023-09-19 | Magic Leap, Inc. | Registration of local content between first and second augmented reality viewers |
US11776509B2 (en) | 2018-03-15 | 2023-10-03 | Magic Leap, Inc. | Image correction due to deformation of components of a viewing device |
US11790554B2 (en) | 2016-12-29 | 2023-10-17 | Magic Leap, Inc. | Systems and methods for augmented reality |
US11874468B2 (en) | 2016-12-30 | 2024-01-16 | Magic Leap, Inc. | Polychromatic light out-coupling apparatus, near-eye displays comprising the same, and method of out-coupling polychromatic light |
US11885871B2 (en) | 2018-05-31 | 2024-01-30 | Magic Leap, Inc. | Radar head pose localization |
US11927759B2 (en) | 2017-07-26 | 2024-03-12 | Magic Leap, Inc. | Exit pupil expander |
US11953653B2 (en) | 2017-12-10 | 2024-04-09 | Magic Leap, Inc. | Anti-reflective coatings on optical waveguides |
US11960661B2 (en) | 2018-08-03 | 2024-04-16 | Magic Leap, Inc. | Unfused pose-based drift correction of a fused pose of a totem in a user interaction system |
US12001013B2 (en) | 2018-07-02 | 2024-06-04 | Magic Leap, Inc. | Pixel intensity modulation using modifying gain values |
US12016719B2 (en) | 2018-08-22 | 2024-06-25 | Magic Leap, Inc. | Patient viewing system |
US12033081B2 (en) | 2019-11-14 | 2024-07-09 | Magic Leap, Inc. | Systems and methods for virtual and augmented reality |
US12044851B2 (en) | 2018-12-21 | 2024-07-23 | Magic Leap, Inc. | Air pocket structures for promoting total internal reflection in a waveguide |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050131625A1 (en) * | 2003-11-19 | 2005-06-16 | Birger Alexander B. | Schoolchildren transportation management systems, methods and computer program products |
US8400294B2 (en) * | 2009-12-21 | 2013-03-19 | Garmin Switzerland Gmbh | Transit stop detection |
US20130041941A1 (en) * | 2010-04-09 | 2013-02-14 | Carnegie Mellon University | Crowd-Sourcing of Information for Shared Transportation Vehicles |
US9494431B2 (en) * | 2011-12-18 | 2016-11-15 | Lg Electronics Inc. | Method for acquiring or providing update information for route to third party and apparatus for same |
CN104380293B (en) * | 2012-06-22 | 2017-03-22 | 谷歌公司 | Method and computing device for providing information of relevant elements from maps history based on location |
US8738292B1 (en) | 2013-05-14 | 2014-05-27 | Google Inc. | Predictive transit calculations |
WO2015035185A1 (en) * | 2013-09-06 | 2015-03-12 | Apple Inc. | Providing transit information |
KR101880191B1 (en) * | 2013-12-19 | 2018-07-19 | 인텔 코포레이션 | Device and computer-readable storage media for providing directional routing information to a user while traveling |
US9930120B2 (en) * | 2015-07-17 | 2018-03-27 | Enrique Gutierrez | Infrastructure-to-vehicle communication system and method |
US20180077523A1 (en) * | 2016-09-15 | 2018-03-15 | Siemens Industry, Inc. | Beacon system, device, and method |
-
2018
- 2018-06-18 JP JP2019569906A patent/JP6904637B2/en active Active
- 2018-06-18 EP EP18743868.4A patent/EP3469309B1/en active Active
- 2018-06-18 WO PCT/IL2018/050674 patent/WO2018235075A1/en unknown
- 2018-06-18 AU AU2018287014A patent/AU2018287014B2/en active Active
- 2018-06-18 ES ES18743868T patent/ES2770177T3/en active Active
- 2018-06-18 CA CA3067519A patent/CA3067519C/en active Active
- 2018-06-18 US US16/313,480 patent/US10623896B1/en active Active
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11756335B2 (en) | 2015-02-26 | 2023-09-12 | Magic Leap, Inc. | Apparatus for a near-eye display |
US11790554B2 (en) | 2016-12-29 | 2023-10-17 | Magic Leap, Inc. | Systems and methods for augmented reality |
US11874468B2 (en) | 2016-12-30 | 2024-01-16 | Magic Leap, Inc. | Polychromatic light out-coupling apparatus, near-eye displays comprising the same, and method of out-coupling polychromatic light |
US11927759B2 (en) | 2017-07-26 | 2024-03-12 | Magic Leap, Inc. | Exit pupil expander |
US11953653B2 (en) | 2017-12-10 | 2024-04-09 | Magic Leap, Inc. | Anti-reflective coatings on optical waveguides |
US11762222B2 (en) | 2017-12-20 | 2023-09-19 | Magic Leap, Inc. | Insert for augmented reality viewing device |
US11776509B2 (en) | 2018-03-15 | 2023-10-03 | Magic Leap, Inc. | Image correction due to deformation of components of a viewing device |
US11908434B2 (en) | 2018-03-15 | 2024-02-20 | Magic Leap, Inc. | Image correction due to deformation of components of a viewing device |
US11885871B2 (en) | 2018-05-31 | 2024-01-30 | Magic Leap, Inc. | Radar head pose localization |
US12001013B2 (en) | 2018-07-02 | 2024-06-04 | Magic Leap, Inc. | Pixel intensity modulation using modifying gain values |
US20220417703A1 (en) * | 2018-07-03 | 2022-12-29 | Magic Leap, Inc. | Systems and methods for virtual and augmented reality |
US11856479B2 (en) * | 2018-07-03 | 2023-12-26 | Magic Leap, Inc. | Systems and methods for virtual and augmented reality along a route with markers |
US20200020227A1 (en) * | 2018-07-10 | 2020-01-16 | Cavh Llc | Connected automated vehicle highway systems and methods related to transit vehicles and systems |
US11960661B2 (en) | 2018-08-03 | 2024-04-16 | Magic Leap, Inc. | Unfused pose-based drift correction of a fused pose of a totem in a user interaction system |
US12016719B2 (en) | 2018-08-22 | 2024-06-25 | Magic Leap, Inc. | Patient viewing system |
US12044851B2 (en) | 2018-12-21 | 2024-07-23 | Magic Leap, Inc. | Air pocket structures for promoting total internal reflection in a waveguide |
US11762623B2 (en) | 2019-03-12 | 2023-09-19 | Magic Leap, Inc. | Registration of local content between first and second augmented reality viewers |
US11275384B2 (en) * | 2019-03-20 | 2022-03-15 | Toyota Jidosha Kabushiki Kaisha | Operation control apparatus and vehicle |
US12033081B2 (en) | 2019-11-14 | 2024-07-09 | Magic Leap, Inc. | Systems and methods for virtual and augmented reality |
US11737832B2 (en) | 2019-11-15 | 2023-08-29 | Magic Leap, Inc. | Viewing system for use in a surgical environment |
US11480437B2 (en) * | 2019-11-21 | 2022-10-25 | International Business Machines Corporation | Transportation system used by individuals having a visual impairment utilizing 5G communications |
CN115048590A (en) * | 2022-05-31 | 2022-09-13 | 北京交通大学 | Regular bus customization method facing privacy protection and based on federal analysis |
Also Published As
Publication number | Publication date |
---|---|
BR112019026991A2 (en) | 2020-06-30 |
JP2020524340A (en) | 2020-08-13 |
EP3469309B1 (en) | 2019-11-27 |
JP6904637B2 (en) | 2021-07-21 |
EP3469309A1 (en) | 2019-04-17 |
AU2018287014B2 (en) | 2021-09-02 |
ES2770177T3 (en) | 2020-06-30 |
WO2018235075A1 (en) | 2018-12-27 |
US10623896B1 (en) | 2020-04-14 |
AU2018287014A1 (en) | 2020-01-16 |
CA3067519C (en) | 2022-05-03 |
CA3067519A1 (en) | 2018-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10623896B1 (en) | System and method for determining transit stop location | |
CA3011825C (en) | Simplifying gps data for map building and distance calculation | |
AU2019246799B2 (en) | Systems and methods for distributing a service request for an on-demand service | |
JP6423520B2 (en) | System and method for managing service supply status | |
EP2917088B1 (en) | Dynamically providing position information of a transit object to a computing device | |
US9151617B2 (en) | Selected driver notification of transitory roadtrip events | |
US9175973B2 (en) | Selected driver notification of transitory roadtrip events | |
US20100070334A1 (en) | Method and system for location-based mobile device predictive services | |
US10024673B1 (en) | Identifying a map matched trip from received geographic position information | |
CN102946584A (en) | Method of providing location based service information | |
CN114424027A (en) | System and method for route mapping with familiar routes | |
WO2012013159A1 (en) | Method and system for providing information | |
WO2021104325A1 (en) | Method and system for yaw recognition | |
Ahmed et al. | University buses routing and tracking system | |
CN103575280A (en) | Navigation group member displaying method and displaying apparatus thereof | |
CN103575281A (en) | Navigation group member displaying method and displaying apparatus thereof | |
US20200051197A1 (en) | Information processing apparatus, information processing method, and non-transitory storage medium | |
US20200249049A1 (en) | Language density locator | |
US20210312341A1 (en) | Information providing apparatus, information providing system, non-transitory computer-readable medium, and information providing method | |
EP3809344A1 (en) | Information processing apparatus, non-transitory storage medium, and system for routing vehicles to areas with high demand | |
US8818258B2 (en) | Geographically-based information distribution system | |
Keikhosrokiani et al. | A study towards proposing GPS-based mobile advertisement service | |
Ele et al. | CADBLOS: Android–based UML-centric design approach to campus-drive bus locator system | |
Thompson et al. | Bus Coming: Description and Evaluation of Bus Tracking System for Rural Areas | |
Ye et al. | Effectiveness of Smartphone Traffic Information Provided by Smart Ningbo Tong App |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MOOVIT APP GLOBAL LTD., ISRAEL Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GALON, BINYAMIN;BEZALEL, NIR;BICK, ROY;SIGNING DATES FROM 20171018 TO 20171029;REEL/FRAME:047855/0887 |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |