Transportation routing

Abstract
A computer-implemented method of providing personalized route information involves gathering a plurality of past location indicators over time for a wireless client device, determining a future driving objective using the plurality of previously-gathered location indicators, obtaining real-time traffic data for an area proximate to the determined driving objective, and generating a suggested route for the driving objective using the near real-time traffic data.
Description
TECHNICAL FIELD

The invention relates to assisting commuters and other travelers with travel planning, and more particularly to providing a recommended route that takes current traffic conditions into account.


BACKGROUND

The world seems to increase in speed every year, with people using technology to communicate instantly and continuously, next-day delivery a common occurrence, and with the immediate availability to on-line data. However, traffic in most metropolitan areas continues to worsen. As a result, many of us spend much of the time we would otherwise save using technology waiting in traffic to get to work so that we can use the technology.


People develop ad hoc solutions to the traffic problem. Some leave for work early or late to avoid traffic. Others develop short-cuts or other alternative routes to by-pass areas of congested traffic. Such a process is generally approached via a trial-and-error process, as a commuter tries various routes until they find one that seems to be the quickest. Of course, because traffic is different every day, it is very difficult to compare the speed of one route to that of another. It is also possible to check traffic reports before leaving and to monitor the radio or road-side signs for clues to traffic problems. In addition, certain wireless services can provide indications of real-time traffic speed graphically on a road map (such as by showing different-colored arrows on roads to indicate approximate traffic speed).


Yet there is still a need for a system and process for providing improved routing information to a traveler such as a commuter.


SUMMARY

A computer-implemented method of providing personalized route information is disclosed. The method comprises gathering a plurality of past location indicators over time for a wireless client device, determining a future travel objective using the plurality of previously-gathered location indicators, obtaining transportation flow data for an area proximate to the determined driving objective, and generating a suggested route for the travel objective using the transportation flow data. Information for the suggested route may also be transmitted to the wireless device, and may be transmitted at a predetermined time of day. In addition, information indicative of real-time traffic data may be transmitted.


In some embodiments, the location indicators may be gathered using a GPS-enabled device, and may be gathered automatically. Each location indicator may also be gathered in response to a request from a user of the client device or as the result of a cell-tower hand-off for the device. The location indicators may be grouped according to multiple different time periods. In addition, an updated suggested route may be generated based on updated real-time traffic data and position information from the device, which may comprise a cell phone or an on-board navigation system.


In another embodiment, a computer-implemented navigation system is provided. The system comprises a location generator for a moving vehicle that produces data indicative of a plurality of vehicle locations, a navigation point generator that analyzes the data indicative of a plurality of vehicle locations and generates one or more expected navigation points for the vehicle, and a route generator that receives information indicative of transportation flow near the one or more expected navigation points, and generates data for one or more optimized routes through the one or more expected navigation points. The system may also comprise a response formatter that generates data in the form of an electronic document for viewing on a remote device. The system may also comprise a response formatter that generates data in a form usable by a navigation device having client-level map generation capability. The information indicative of transportation flow may include real-time traffic data.


In yet another embodiment, a computer-implemented navigation device is provided having memory for storing instructions that, when executed obtain information showing a suggested navigation route, receive a command in response to display of the information showing a suggested navigation route, and transmit data relating to the command to a remote system and receive follow-up information in response to the transmission of data relating to the command. The instructions may also generate location information for use in computing expected navigation points for the device based on past locations for the device. The expected navigation points may be computed for a time period corresponding to a time period for the past locations for the device, and the obtaining of information showing a suggested navigation route may occur at a predetermined time of the day.


In another embodiment, a navigation system is provided. The system comprises a location generator for a moving vehicle that produces data indicative of a plurality of vehicle locations, a navigation point generator that analyzes the data indicative of a plurality of vehicle locations and generates one or more expected navigation points for the vehicle, and means for generating one or more optimized routes through the one or more expected navigation points.


The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims.





BRIEF DESCRIPTION OF THE DRAWINGS

These and other aspects will now be described in detail with reference to the following drawings.



FIG. 1 is a conceptual diagram of a process that analyzes trip patterns and generates a suggested route based on the patterns and real-time traffic data.



FIG. 2 shows a flow chart of a process for producing expected trip points from past trip routes.



FIG. 3 is a schematic diagram of a system to receive route requests and to generate suggested routes.



FIG. 4 is a flow chart showing exemplary steps for capturing trip data and providing suggested routes.



FIG. 5 is a client-server flow chart showing exemplary steps for providing suggested routes for observed trip patterns.



FIG. 6 is a schematic diagram of a wireless communication handset for capturing trip data and providing suggested routes to a user.



FIG. 7 is a schematic diagram of a wireless navigation device for capturing trip data and providing suggested routes to a user.





Like reference symbols in the various drawings indicate like elements.


DETAILED DESCRIPTION

The systems and techniques described here relate to assistance with planning routes for commuters and other travelers, typically traveling by automobile, truck, or mass transit. The systems can take many forms, including personal communicators, personal computers, and vehicle navigation systems. The data may also be entered in many forms, including by telephone keypad and voice. In general, the systems operate by identifying a user's paths of travel over time, developing a travel profile for the user comprising navigation points through which the user is likely to pass, and accessing real-time traffic data to provide the user with an up-to-date suggested route for the user's expected trip or trips each time the user begins a trip.


Advantageously, the systems and techniques may let travelers receive routing information that is both current and relevant. It is current because it reflects real-time traffic conditions. In addition, it can be calculated according to a schedule and delivered so that the user has the information as soon as it is needed. It is relevant because it can provide directions that address the particular user's travel plan without requiring that the user enter in detailed information about the travel plan. In addition to real-time traffic data, other traffic flow information or data may be monitored or obtained. For example, static information about traffic flow, such as the typical speed on a residential street (for which actual real-time information is not available) may also represent the transportation flow on that street. Apart from transportation flow in vehicles, other transportation flows such as that involved with rail, ferry, and light rail may also be obtained.



FIG. 1 is a conceptual diagram of a process that analyzes trip patterns and generates a suggested route based on the patterns and real-time traffic data. The diagram shows both perspective and plan (from above) views. A travel zone 10 represents a general area in which a user typically travels, such as the area between and around the user's home and workplace. The travel zone 10 may be most conveniently represented as a two-dimensional map, on which routes may be overlaid.


Layered on top of travel zone 10 are a number of travel routes 12-24 which in the figure each represent a route that has been traveled by a user. Data for the routes 12-24 may be gathered in any appropriate manner. For example, global positioning system (GPS) data may be collected, such as by a cellular telephone, personal digital assistant (PDA), automotive navigation device, or other such device.


The data may be collected, for example, by sampling position data at set intervals such as every fifteen seconds, or at another interval. In addition, the position data may be recorded at set location intervals, with the elapsed time between positions representing the rate of change in position. The data may also be generated from triangulation in a cellular telephone system or other appropriate method.


The data collection may be instituted in a number of ways. As one example, a user may place a device such as a cellular telephone, PDA, or navigation system into a “learn mode,” such as by selecting an appropriate menu choice in a graphical user interface. A tracking system may then be activated whenever, during the learning period, the device is substantially moved, so as to indicate that the user is making a trip in their vehicle. For many travelers, such activity would occur in the morning and the evening during typical commute periods.


The learning period may be a definite or an indefinite period. For example, the device may be programmed to capture data for one week and then stop capturing data. Alternatively, data may be gathered until a recurring pattern begins to show in the data. In such an approach, a minimum collection period, such as one week, may be set so that the system does not stop gathering data simply because, by coincidence, two days in a row involved similar routes. Where the period is indefinite, the system may, for example, continue gathering data so as to update the information continuously, so that predictions of future routes may be made more readily. Such an approach may therefore allow the predicted routes to change as the user changes, such as when the user begins stopping at a day care center every weekday, and thus adds a detour to the user's previous path to work.


Each of the travel routes 12-24 represents a particular path taken by the user. The pictured travel routes 12-24 may be a subset of all routes taken by the user during the learning period, and may be selected as all trips during a particular time of day, such as during the morning commute time. Routes for other times may be handled together as a distinct group. In addition, routes that are unlike any others, and that are not repeated, may be treated as a lark and may be discarded, or simply saved in memory (e.g., as part of a “recently visited” list), but not used to predict future routes.


Each travel route may have a number of identifying characteristics. By way of example, route 12 has a start point 12a, an end point 12b, and a stop point 12c. The start point and end point for a trip may be inferred by identifying locations for which there are long periods of immobility connected by a period or periods of mobility (e.g., with short periods of immobility representing stops during a trip or stoplights). Stop points may be inferred from shorter periods of inactivity (i.e., on the order of several minutes, or long enough to avoid counting a stop at a stoplight as a false positive, but short enough to prevent a stop for coffee or day care drop-off from being a false negative) that have activity on each side.


Also, start, end, and stop points can be entered manually. For example, a user may press a key on a navigation device when they arrive at an important point along a route so as to identify that point as a stop point through which they would like to travel. Thus, for example, when training a navigation device, the person could press the key when passing a coffee shop if they want to always pass the coffee shop, regardless of whether they stop at the shop during the training period. Such manual stop point entry can have the benefit of allowing for faster training of a navigation device, and can also allow a user to provide preferences explicitly. As another example, a user may prefer to take a particular bridge to work regardless of what real-time traffic data may indicate because the user knows how to “beat” the traffic for the route.


The start point and end point may also be adjusted to simplify a travel route. For example, it may be impractical to provide more than one route near each end of a travel route. That is because there may be only one logical path out of a user's residential neighborhood (and no traffic in the neighborhood). The user might also be required to weave through a large parking lot at work-another area in which navigational advice is not helpful. Thus, the start point and end point, for purposes of computing a suggested route, may be shifted so as to bypass such problems at each end of a trip. However, as shown to the user, one or both points may be kept in their original location so that the user gets end-to-end directions. The user simply will not know that some of the directions were decided statically, i.e., without reference to current traffic conditions.


Other points along a travel route may also be adjusted to match a known street or other travel path. For example, where a street contains multiple lanes, any location information for a travel route can be resolved to a single location for that street. Also, locations in parking lots or other similar locations can be resolved to a single point. In this manner, small and irrelevant variations from one travel route to another can be eliminated.


Each travel route represents a trip at a certain time, such as a daily morning commute over the course of a week or more. Thus, by example, travel route 12 represents a morning commute on a Monday morning, and shows a trip from the user's home to the user's office with a stop in the middle of the commute. That stop may represent, for example, the retrieval of a cup of espresso needed by the user to get the week started on the right foot. Travel route 14 represents the Tuesday morning commute, with no stops, as the user anticipates the amount of work still needed to be completed for the week. The Wednesday travel route 16 is similar to the Tuesday travel route 14. The Thursday travel route 18 also involves a stop, but this time to drop off clothes at a cleaner. Finally, the Friday travel route 20 involves a slight detour and stop for the user to follow through on a weekly doughnut pick-up for the user's office staff-a savvy management technique.


Travel routes 22, 24 are trips on the weekend. Travel route 22 shows a trip to swimming lessons for the user's young child, and is a weekly trip, at least for a dozen lessons or so. Travel route 24 is a trip to a football game, and typically occurs on a Sunday but only when the team is “home.” However, from week to week, the end point for the trip varies as the user selects a different parking area for each game. In addition to the routes shown in FIG. 1, other routes may also be gathered, such as those taken during the evening commute.


Upon gathering travel routes over a particular time period-typically more than one week-expected travel routes for the future can be generated. FIG. 2 shows a flow chart of a process for producing expected navigation points from past trip routes. In the example, a trip route is a route the user has previously taken, and is similar to the routes discussed above with FIG. 1. Navigation points are stopping points along a trip route, and would include, for example, the start and end points for the trip, along with any necessary stop points along the trip. The computed navigation points may be combined, as explained below, with information about real-time traffic flow, to generate a trip route that hits each of the navigation points in a predicted minimum elapsed time. In this manner, a user's actions may be monitored, and the user may be provided with effective travel planning for future trips.


In FIG. 2, travel route data is gathered at step 30, in a manner like that discussed above. The data is then correlated, at step 32, with particular events. The events may typically be calendar events, and more particularly, certain times and days of the week. For example, all trips that happen during certain hours on a Monday morning may be correlated with a “morning commute” event. The same is true of trips that happen on other weekdays. Trips on Saturdays and Sundays could also be grouped (although weekend trips may be ignored under an assumption that the trips will be too unpredictable, or traffic too light, for the process to provide substantial assistance).


At step 34, common paths for a particular event are identified. For example, if the user took the identical path to work on two successive Mondays, the paths would be fully common. The determination of commonality may also be determined only for characteristic points along the path, i.e., the start point, the end point, and stop points.


The presence or absence of commonality may be determined at various levels of granularity. For example, if several instances of an event have been collected, a point may be considered “common” if it is common to a particular percentage of the instances. As one example, if a system has been gathering data for a month, and a point is common to three out of four trips on a Monday morning, then it could be considered common, and the fourth trip could be considered to be non-representative of the user's actual travels (i.e., a “lark”).


Common paths may also be identified at a second event level. As one typical example, commonality could be discerned for all weekdays or for certain weekdays. Thus, if the user is very diligent and makes the same trip every day, commonality could be found for a particular weekday over several weeks and over multiple weekdays also. In particular, commonality may first be determined for all monitored Mondays, and for all monitored Tuesdays, and may then be determined across Mondays and Tuesdays Commonality may again be found if the level of common data exceeds some level that indicates the non-common data is non-representative, so that expected future trips can be assumed to follow the common path rather than any other path.


The search for commonality may also occur in multiple orders. For example, all weekdays may be analyzed individually for commonality, and a common path may be discerned by applying rules to those days. Alternatively, as just described, trips for a particular day may be analyzed, and a common trip for that day computed. Each of the daily common trips may then be compared for commonality. This method has the advantage of eliminating variation at two different levels, but also could eliminate variability that should not be removed because it helps to indicate how a user is likely to act in the future. Unsupervised machine learning techniques such as clustering may also be used to determine commonalities between or among routes.


Once commonality is found for one event or subgroup of events, a determination may be made of whether additional events remain (step 38). If they do, commonality determinations may proceed as just described for those additional events. For example, when one weekday is finished, other weekdays may be analyzed (if they are not a second level of the first event). Or once all weekdays are finished, weekend days may be analyzed. Alternatively, commonality for only a single event (e.g., Monday morning commute) can be computed if that is all that is required.


If all events are complete, a travel profile may be generated for the user. First, events may be correlated to a future calendar (step 40). For example, Monday morning commutes may be mapped onto the Mondays of a calendar running forward into the future. The time period for such mapping may also be identified (step 42) as a control on how far forward the system generates a travel profile. For example, the system can regularly update the information so that a travel profile need only be generated for the next expected trip or for the next day or next week.


Using the analyzed information, the expected navigation points for each expected trip may be established (step 44). Such points may be, for example, the points that were computed to have a sufficiently high level of commonality. For example, where the start point, end point, and a particular intermediate point were all the same for a particular day of the week across multiple weeks, those points may be assigned as the navigation points for that day. Common navigation points from one day to the next may also be used, particularly if enough data has not been collected to determine whether there is commonality from week to week.


Route information between navigation points may also be used or discarded as necessary. For example, navigation points can be computed merely for start, end, and stop points, as it could be assumed that the user simply wants to get to or through those points, wants to do so quickly, and does not care which particular route to use. As such, the other information is not relevant and can be discarded to save on storage space. The other information can also be used to provide more accurate selections of navigation points, indicating for example whether a literal stop by the user should be considered a “stop” navigation point.


The process shown in FIG. 2 may occur, for example, when a user begins a training session with a system, and then indicates that the training session is over and that the user wants to analyze the gathered data from the session. The process may also occur after a predetermined or calculated time period, such as two weeks after the system is first put into “learn mode.” In addition, the process may occur periodically, and a travel profile may be generated only when a particular level of commonality is reached. If the commonality is insufficient, the process can be aborted and restarted at a later time.


The process may also occur repeatedly even after a travel profile has been generated. As an example, a system may first generate expected trip paths when enough data has been gathered to allow confident determinations of commonality across various events. The trip paths may then be re-computed or updated periodically, such as once each week, so as to reflect any changes in the user's travel patterns. The data used for re-computing may be a running time-wise “window” that extends back a certain amount of time, such as four weeks. In this manner, if the user develops a new habit, such as day care drop off, the system can adjust to that new habit. Likewise, a user in such a situation could manually ask for an update so as to trigger re-computing of paths or navigation points.



FIG. 3 is a schematic diagram of a system 50 to receive route requests and to generate suggested routes. The system 50 includes a device 62, shown as a cellular telephone handset for communicating with a user, but could take any appropriate form, such as a personal digital assistant, a personal computer, or a voice-driven communication device. The device may include appropriate input and output structures, including a display screen which may have a touch-sensitive surface, data entry keys, clickable data entry wheels, speakers, and a microphone including for voice recognition.


Device 62 may obtain the information the user needs through network 58, which may be a single network or combination of networks. Thus, for example, device 62 could communicate through a cellular telephone network using a WAP standard or other appropriate communications protocol. The telephone network could in turn communicate with the Internet, either directly or through another network.


In addition, provision may be made for generating location information for device 62. For example, the device 62 could be a GPS-enabled cell phone or PDA. The device 62 could also be located by triangulation or other techniques.


Alternatively, a device may be provided in the form of a vehicle navigation system 80. The navigation system 80 may communicate, for example, through a satellite network via satellite 82 and base station 84, which may in turn be connected to network 58 for further communication. In this example, communication could be one-way only or two-way. In this manner, the functionality described herein may be provided to users in the manner that is most convenient to each user. In addition, both device 62 and navigation system 80 may be used, so that, for example, the device 62 can handle communications and obtaining information personal to the user, and the navigation system can be used to gather location information (e.g., through a GPS system) and to display maps and other data. The device 62 and navigation system 80 may communicate, for example, via wired or wireless link, such as via IEEE 802.11 standards or Bluetooth communications and the like.


A navigation information system (NIS) 51 may also communicate with the network 58 so as to receive requests from devices 62, 80 and locate information to return to devices 62, 80. The NIS 51 may take any applicable form, and may include a system that provides search services, for example, such as that provided by Google. NIS 51 may be broken into multiple separate systems or sub-systems to allow for scalability, and may be connected to network 58 in any of a variety of ways, as is commonly known.


NIS 51 in general receives requests from devices 62, 80, processes those requests, and provides information that allows the devices 62, 80 to provide a user with a suggested travel route. NIS 51 may rely on appropriate external services to provide such functionality. For example, NIS 51 may obtain data about real-time traffic conditions from traffic service 56. Traffic service 56 may be, for example, an aggregator of information about traffic flow that obtains information from public agencies, roadway monitors, traffic cameras and the like. The information may reflect the speed of traffic flow at particular points in a transportation system, and could include a service such as Zipdash. NIS 51 may take the information received from traffic service 56 and combine it with route information computed for a user to compute a suggested travel route, as explained in more detail below. In this context, real-time traffic conditions are intended to include conditions that are sufficiently recent or accurate to have relevance and be of assistance.


NIS 51 may also communicate with external servers 60 to acquire other needed data. External servers could comprise, for example, mapping servers that provide updated information about roadway locations and other GIS-type data. In addition, NIS 51 may communicate with other databases 54 as needed. These databases may be connected to NIS 51, for example, by a high bandwidth LAN or WAN, or could also be connected to the NIS 51 through network 58. The databases may also be split up so that they are located in multiple locales.


NIS 51 communicates through an interface 52, which may be a single interface or multiple distinct interfaces, including interfaces for internal and external communication. By example, interface 52 may comprise interface devices for a high speed, high bandwidth network such as SONET or Ethernet network cards or any appropriate communication hardware operating under an appropriate protocol, so that NIS 51 can respond to a large number of distinct requests simultaneously. The precise design of the system is not critical to the proper operation of the invention, and could take any appropriate form.


Within NIS 51, a route generator 78 may produce suggested travel route results in response to requests from a user device such as devices 62, 80. The route generator may also be implemented as an external service 60, such as that provided by TelAtlas or the like. The requests may be received and initially processed by request processor 66, such as by parsing them and formatting them from htmVtext requests to a format that is usable internally to NIS 51. The information generated by route generator 78 in response to a request may also be converted by response formatter 68 in a manner that allows it to be used by the requesting device, such as in a WAP format, HTML document, XML document, VoiceML result, etc., and then transmitted via interface 52.


Route generator 78 may receive assistance from other components in producing suggested routes. In particular, real-time traffic module 70 may provide the route generator 78 with information that reflects traffic speed on various routes. For example, real-time traffic module 70 may obtain information from traffic service 56 and reformat it in a manner that is usable by route generator 78. Real-time traffic module may also aggregate traffic data from multiple different sources-combining data and selecting the best data when there is overlap. Moreover, the real-time traffic data may include data relating to non-automotive modes of transportation, such as rail, bus, and ferry speeds and schedules (adjusted, e.g., to reflect problems and shut-downs if necessary).


Route generator 78 may also use mapping data 72, which may be stored internally to NIS 51 or obtained from external sources (or both). Mapping data generally represents the routes that may be taken, and may be stored and accessed in any appropriate manner. Mapping data may be, for example, the same or similar data to that which is used to provide driving directions in typical applications. The mapping data may serve as an “underlay” for the real-time traffic information, so that a suggested route can be generated on a map using the traffic information that correlates with locations on the map.


Navigation point generator 76 may operate to receive information about a particular user's travel history, and produce expected route points for future travel, for example, using the methods described above with respect to FIGS. 1 and 2. Navigation point generator 76 stores information it receives from, and generates relating to, users in user data 74. User data 74 may also include other information about a user, such as the user's identifying information, addressing information for the user's devices 62, 80, information about the user's needs and other profile information about the user. Such profile information may also include information about the user's preferences. For example, perhaps the user prefers side streets over freeways, so that the system will provide the user with a suggested route that uses side streets (in some circumstances, if the disparity in commuting time between the two paths is not above some threshold).


In generating a suggested route for a user, route generator 78 may gather the navigation point information for a particular user, may use that information and mapping information to identify potential routes (as combinations of route segments), and may then use real-time traffic information to select which actual route or routes are the best routes for the user. Route generator may then transmit the suggested route information through interface 52 to devices 62 or 80. For devices such as cellular telephones, the information may best be transmitted as an html document or other fully-formatted document that will not require much processing by the device 62. The returned information may also include HTML code, XML messages, WAP code, Java applets, xhtml, plain text, voiceXML, VoxML, VXML, etc., that causes the device 62 to generate a display of information.


For devices such as a vehicle navigation system, which has its own mapping capabilities, the suggested route information may simply be data for a particular route. The device 80 may then interpret that information and combine it with information stored locally to produce a usable map with the suggested route or routes rendered on top of the map.


The transmitted information may also include information in addition to a simple map with routes rendered on it. For example, locations on the map may be provided with hyperlinked icons whose selection will cause additional information to be broadcast to the user. As one example, coffee shops along the user's route may be displayed both as a service to the user and to the coffee shops. Selections by the user for more information about a particular location could result in a small charge to that location, much like the well-known AdWords program. Other information may also be displayed, such as icons showing the kind of establishment (e.g., coffee cup next to coffee shop, plate and fork next to sit-down restaurant, stars next to high-end restaurant, etc.).


The information may also be time-based. For example, in the morning hours, coffee shops can be identified, and in the evening hours, restaurants, and then bars, may be identified. Information to be shown may also be based on preferences of the user, which may be discerned by a profile that a user completes, by a standard profile the user adopts (e.g., the system may have particular profile settings for teenagers), or by correlation of preferences with prior actions of the users, such as requests submitted to a search engine or stops that are often made. Such preferences may also be correlated with preferences of other users who have similar past search or other activity. In addition, a profile may be generated by a customer, such as a transportation provider (e.g., a trucking company), so that the profile is applied to all users working for the customer. In this manner, the transportation company could control the type of information provided (e.g., truck stop locations or healthy restaurants so as to lower health insurance premiums) in addition to submitted navigation points for routes likely to be used by its employees.


In addition, a user can choose to have certain routes be required routes and other routes prohibited routes. For example, a drive along a lake may be a required route for Friday afternoon commutes to allow the user to wind down at the end of the week. Alternatively, a drive through certain areas may be prohibited, such as when the user is aware of construction in the area that is not reflected on maps or other general data sources.


Where the device allows for search in addition to navigation, the position of the device and/or the stop points along a route may be used as a location input for a “local search” such as Google Local Search. Thus, for example, where a user is taking a long trip, they may search for a restaurant that is one hour ahead on the map by identifying a location such as a stop point on the map and then conducting a local search. In this manner, the user can have a local search without knowing additional properties about the locale in which the search is to be conducted.


In addition, the routing information can be incorporated with other systems. For example, the suggested route information could be passed on to a transportation operator along with information about actual routes to allow the operator to ensure that most efficient routes are being taken by drivers employed by the operator. Other information may also be shared, including by use of an API model that allows customers to access whatever relevant information they would like to access.


The route generation may be accomplished in the system 50 by NIS 51, by devices 62, 80, or by cooperation of NIS 51 and devices 62, 80. For example, device 62 may be programmed with code that, when executed, analyzes results from a request and then generates stop points on an expected route. Also, the device 62 may be programmed with code that, when executed, generates a map with a suggested route. The NIS 51 may also take on the task of suggested route generation, so that the devices 62, 80 need only receive the information, store it, and present it.



FIG. 4 is a flow chart showing exemplary steps for capturing trip data and providing suggested routes. The steps shown may be executed, for example, by NIS 51 or devices 62, 80 shown in FIG. 3, or a combination of those features and/or others. Step 130 shows the receipt of a request for route information. The request may be generated in any appropriate manner. For example, a user may press a key on a PDA when entering their automobile as a means to have an up-to-date suggested route generated for a commute. Alternatively, the device itself can generate the request, such as at a predefined time when a vehicle door is opened, or in connection with the user's schedule (e.g., Outlook schedule), indicating that the user will soon be traveling to a particular location. In such a scenario, data in the calendar can be analyzed to determine the user's likely path so that the path can be generated and ready for the user as soon as they need it. A navigation information system may itself generate the request internally, again typically according to a predetermined schedule.


In response to the request, the system may identify navigation points for the user (step 132). The identification may involve simply accessing data on navigation points for particular events (e.g., for trips at particular times during a week) that have been previously computed. It may also require computation of some or all of the points using past location data for the user.


With the navigation points identified, the plausible routes and route segments between the points may be identified (step 134). The routes may be generated using standard mapping software (e.g., that is commonly used for creating driving directions). The plausible routes may include all routes that pass through the navigation points that could realistically be the fastest route through the points. Maximum possible speeds may be assigned to each segment (e.g., 30 MPH in residential, and 80 MPH on freeways) as an aid in determining which segments are plausible.


The plausible routes may also be comprised of a number of route segments, and again all plausible segments may be identified. For each set of segments, the segment transfer time may be determined (step 136). The segment transfer time includes, for example, expected time spent at stop lights and on-ramps, transferring from one train to another; or in transferring from one mode of transportation to another, such as from automobile to light rail.


For each segment, the real-time speed of the segment may be identified (step 138). The speed may be accessed from, for example, services that track traffic speed using in-road sensors or cameras. The speed may generally be a composite of the average speed across all lanes of traffic, and perhaps along multiple locations of a common roadway (so that temporary bottlenecks do not caused inaccurate readings). The speed may also be an assumed real-time speed, for example on roadways for which there is no actual real-time speed data. Also, speeds may be assumed for mass transit systems, such as light rail, that have closely analyzed and predictable speeds. Such systems may also provide data that reflects actual real-time speeds.


The system may then determine whether the request is for immediate results (step 140). If it is for a map in the future (e.g., more than 30 minutes in the future) such that traffic conditions may change before the results are used, the system may access data relating to speed trends on segments for which actual real-time speeds have been obtained (step 142). The system may also access assumed real-time speed data for the time in the future, or simply use the previously accessed assumed real-time data.


With speeds for each plausible segment determined, the travel time for each segment can be computed (step 144). Total trip times for each permutation of segment combinations may be computed, with segment transfer times added between segments. The determination may be aided by well-known approaches for determining “best” or “least cost” solutions to particular problems, so that not all permutations need be computed.


In addition, deviations for each route may be computed (step 146). In particular, data about the speeds for a particular route or segment will vary from day-to-day, so that the average speed is not a completely satisfactory measure of the segment's speed. Thus, where two routes have similar average times, the route having a smaller deviation may be preferred over the other route (particularly if the user is risk-averse).


With the times for the plausible routes calculated (and optionally with deviations factored into the times), an optimum route or optimum routes can be identified. In general, the optimum route is the route with the lowest expected cumulative time. However, other routes can also be provided as optimum routes in case the user prefers one route over another, and the difference in time is minimal to the user. Also, the user may have defined certain navigation points as preferred points, but not required points, so that routes through those points are presented as optimum routes in addition to routes through the required points. The user may then be given the opportunity to select a route through preferred points if it is shorten than, or not much longer than, the other routes.


The system then may prepare to transmit information to the user. If the user's device is navigation-enabled such that it has its own mapping information (step 150), simple map information can be transmitted and the user's device may use the transmitted information as an input for the mapping function. The user's device may also then provide additional navigation functions with the data, such as voice prompted driving instructions. If the user's device is more limited (e.g., a simple cell phone), more complete mapping information may be transmitted (step 150). For example, an entire recommended route can be rendered in a single document and transmitted to, for example, a web-enabled telephone.



FIG. 5 is a client-server flow chart showing exemplary steps for providing suggested routes for observed trip patterns. At step 156, location data is generated, such as by acquiring locations from a GPS appliance at particular time intervals. At step 158, location information is transmitted from a device at which it was generated. The term “information” is used here as opposed to “data” to indicate that the actual generated data may be different than what is transmitted. For example, numerous readings for locations may be generated, but only a subset transmitted, or a facsimile (such as an averaged set) may be transmitted.


The server may then receive the transmitted location information (step 160) and may generate navigation points using the information, as described above (step 162). With the navigation points generated, the system may save the new information and wait for a request (step 164).


When a user wishes to have a suggested route generated, they may have a device generate a request (step 166) in a manner like that described above, and the device may transmit the request to a server (step 168). The server may receive the request (step 170) and use it to compute a suggested route or routes. In doing so, the server may access one or more of real-time traffic information, mapping information, and navigation point data (step 172). The server may also access profile information and other information specific to the user. By applying the real-time traffic data to possible routes through the navigation points, the system can compute one or more optimum routes (step 174) for the user.


The system may then generate navigation information, such as in the form of map information, and transmit it back to the user's device (step 176). The information may be transferred as data that can then be mapped using a navigation system, or may be transferred as a rendered map, such as via HTML document (step 178). Additional related information may also be transferred. For example, as indicated above, information about features near the route can be included, including hyperlinks that allow access to even more information. Also, advertising may be generated that is relevant to locations along the route, so that, for example, eating establishments along the route may pay to have advertising distributed to users who pass by. The advertising may also be segregated according to routes that are primarily commuter routes with recurrent travelers, and routes that are main transportation routes (such as rural interstate highways) that do not have recurrent travelers. (i.e., advertisements for the latter routes may have more advertising to draw attention to local attractions, while those for the former would have more day-to-day advertising.) Provision of advertising would have the benefit to users of providing additional information and also lowering the cost of the navigation service.


A user may then provide additional input (step 180) after the initial information is transmitted. For example, the user may click on a provided hyperlink, in which case the device will transmit a request relating to the hyperlink (step 180). The server may then respond to the request (step 182) in a conventional manner, such as by sending typical web content. In addition, various other on-line options may be used along with, or in addition to, the navigational features described here.



FIG. 6 is a schematic diagram of a wireless communication handset for capturing trip data and providing suggested routes to a user. The handset 90 receives and transmits information wirelessly using transmitter 94, with the received signals being passed to signal processor 96, which may comprise digital signal processor (DSP) circuitry and the like. Normal voice communication is routed to or from audio processor 92, which may communicate with speaker/microphone 98, including via user interface 108.


User interface 108 handles all communication with the user of the system 90, including voice, visual, and data entry communication. Visual presentation of information may be provided via display screen 100. General data entry, apart from entered voice data, may occur through keypad 102, which may be arranged as a standard 12-key telephone keypad. The device may also be provided with appropriate control keys 104 for performing necessary control functions. Key pad 102 and control keys 104 may include contact push-buttons, joysticks, portions of touch-sensitive panels, or other appropriate input devices. Although the communication is shown for clarity as occurring through a single user interface 108, multiple interfaces may be used, and may be combined with other components as necessary.


The system 90 may be provided with a number of computer applications 114, such as games, applications to assist in dialing numbers, and applications to permit web browsing, including the entry of data as part of the web browsing. The applications 114 may be stored in ROM, Flash memory, RAM, MRAM, or otherwise, as appropriate, and may be accessed by the system 90 as needed. A dialing module 112 may provide standard dialing functionality for the system, receiving entered dialing digits or voice dialing instructions through interface 108, and providing appropriate dialing signals through transmitter 94 using communication interface 120.


A data entry module 110 receives data other than dialing instructions, such as search data entered into the system 90. The data entry module 110 may provide the entered data directly to an application, or may employ a navigation engine 116 to gather navigation information and supply route information to a user. The navigation engine may receive location information via GPS receiver 118, and may supply this information to an application 114 for the generation of expected navigation points in a manner like that described above. Although the navigation engine 116 is shown as a single item separate from the applications, it could simply be an application itself or part of an application having code to carry out the necessary functions.


The system may take many other forms. For example, it could be implemented as part of a personal computer, whether networked or un-networked, and if networked, whether by wire or wirelessly. Also, data entry may occur in different manners, including by complete keyboard, constrained keyboard, or voice command. Also, one or more components may be located remotely from the device, such as at a remote server, and the functionality of the device may be provided by combining the components or using components other than those shown.



FIG. 7 is a schematic diagram of a wireless navigation device 200 for capturing trip data and providing suggested routes to a user. This device is similar to the device in FIG. 6, and although it may be provided with voice communication capabilities, it is shown as simply a wireless-enabled navigation system. The device 200 may comprise a navigation computer 202 for handling the needed communications and processing for the device 200, and a navigation display 204 for input and output. The navigation display 204 may be, for example, an in-dash LCD display in an automobile.


The navigation computer 202 is provided with a transceiver 206, which may be a wired transceiver (e.g., for transferring data to and from a PDA or cell phone) or a wireless transceiver, such as a satellite communication or Bluetooth transceiver. Signals received by transceiver 206 may be processed by signal processor 208, which may be a standard digital signal processor (DSP). The signals may then be provided to various applications 210, which may include system applications for operating device 202 and other discrete application programs, such as browser, communication, and other programs.


The applications may include, or make use of, navigation engine 212 which may be programmed with code that when executed carries out the necessary and relevant operations described above. In particular, navigation engine 212 may collect data on the location of the device 200 using, for example, GPS device 218. Navigation engine 212 may also use mapping data 214, such as to generate maps on display 204 showing the location of the device. Also, navigation engine 212 may alone or in combination with applications 210 generate maps showing suggested routes either computed by mapping engine 212, or by an external device such as a server with which navigation computer 202 communications.


Communication between display 204 and navigation computer 202 may occur through user interface 216, which may be a single interface or multiple interfaces, and may take any appropriate form. The user interface may provide cues to a user via speaker 220, such as by providing aural driving directions in a conventional manner. The user interface 216 may also generate graphical information on display 204 for the user to review. The user may provide feedback or other input through control buttons 224, or through touching screen 222, or by other appropriate input techniques. The control buttons 224 may be “customized” by displaying changing labels above the buttons, so that input and output can be coordinated and controlled via software.


Various implementations of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, specially designed ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof. These various implementations can include implementation in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.


These computer programs (also known as programs, software, software applications or code) include machine instructions for a programmable processor, and can be implemented in a high-level procedural and/or object-oriented programming language, and/or in assembly/machine language. As used herein, the term “machine-readable medium” refers to any computer program product, apparatus and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term “machine-readable signal” refers to any signal used to provide machine instructions and/or data to a programmable processor.


To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.


The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (“LAN”), a wide area network (“WAN”), and the internet.


The computing system can include Clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The client-server relationship need not fit a formal client-server definition, however.


Although a few embodiments have been described in detail above, other modifications are possible. Portions of this disclosure discuss operation though portable devices, but any of a number of devices may be used, including fully-functional general purpose computers. Also, the logic flows depicted in the figures do not require the particular order shown, or sequential order, to achieve desirable results. Also, other steps may be provided, or steps may be eliminated, from the described flows, and other components may be added to, or removed from, the described systems. Other embodiments may be within the scope of the following claims.

Claims
  • 1. A computer system to provide user-specific navigational information to a user, the system comprising: a user computing device configured to receive user input from the user that identifies one or more user preferences, wherein the one or more user preferences comprise one or more preferred navigational points;a navigational information computing system communicatively coupled to the user computing device over a network, the navigational information computing system comprising a database that stores user data, and wherein the navigational information computing system is configured to: receive data from the user computing device that identifies the one or more user preferences;update the database to store information descriptive of the one or more user preferences when received from the user computing device;after updating the database, receive a request from the user computing device or a vehicle navigation system; andin response to the request, determine navigational information based on the one or more user preferences stored in the database, wherein the navigational information comprises one or more navigational routes that include the one or more preferred navigational points; andthe vehicle navigation system included in a vehicle and communicatively coupled to the navigational information computing system over the network, wherein the vehicle navigation system is configured to receive the navigational information that is based on the one or more user preferences and display the navigational information to the user.
  • 2. The computer system of claim 1, wherein the user computing device comprises a cellular telephone handset, a personal digital assistant, or a personal computer.
  • 3. The computer system of claim 1, wherein the one or more navigational routes comprise a first navigational route to one of the one or more preferred navigational points from a current location of the vehicle.
  • 4. The computer system of claim 3, wherein the navigational information based on the one or more user preferences further comprises real-time traffic conditions for the route to the preferred navigational point.
  • 5. The computer system of claim 1, wherein the one or more navigational routes that include the one or more preferred navigational points comprise one or more navigational routes that travel through the one or more preferred navigational points in route to a destination that is different from the one or more preferred navigational points.
  • 6. The computer system of claim 5, wherein the navigational information based on the one or more user preferences further comprises one or more of a map or directions that describe the one or more navigational routes.
  • 7. The computer system of claim 5, where in the navigational information based on the one or more user preferences further comprises real-time traffic conditions for the one or more navigational routes.
  • 8. The computer system of claim 1, wherein, when the vehicle navigation system displays the navigational information to the user, the displayed information includes identification of the one or more preferred navigational points.
  • 9. A computer-implemented method to provide user-specific navigational information to a user, the method comprising: receiving, by a user computing device, user input from the user that identifies one or more user preferences, wherein the one or more user preferences comprise one or more preferred navigational points;uploading, by the user computing device, data that identities the one or more user preferences to a navigational information computing system communicatively coupled to the user computing device over a network;updating, by the navigational information system, a database included in the navigational information system to store information descriptive of the one or more user preferences when received from the user computing device;after updating the database, receiving, by the navigational information system, a request from the user computing device or a vehicle navigation system;in response to the request, determining, by the navigational information computing system, navigational information based on the one or more user preferences, wherein the navigational information comprises one or more navigational routes that include the one or more preferred navigational points;providing, by the navigational information computing system, the navigational information that is based on the one or more user preferences to the vehicle navigation system included in a vehicle and communicatively coupled to the navigational information computing system over the network; anddisplaying, by the vehicle navigation system, the navigational information to the user.
  • 10. The computer-implemented method of claim 9, wherein displaying, by the vehicle navigation system, the navigational information to the user comprises displaying, by the vehicle navigation system, the one or more preferred navigational points to the user.
  • 11. The computer-implemented method of claim 9, wherein: determining, by the navigational information computing system, navigational information based on the one or more user preferences comprises determining, a route to one of the one or more preferred navigational points from a current location of the vehicle to the user; anddisplaying, by the vehicle navigation system, the navigational information to the user comprises displaying, by the vehicle navigation system, the route to the preferred navigational point from the current location of the vehicle to the user.
  • 12. The computer-implemented method of claim 11, wherein displaying, by the vehicle navigation system, the route to the preferred navigational point from the current location of the vehicle to the user further comprises displaying, by the vehicle navigation system, real-time traffic conditions for the route to the preferred navigational point.
  • 13. The computer-implemented method of claim 9, wherein the one or more navigational routes that include the one or inure preferred navigational points comprise one or more navigational routes that travel through the one or more preferred navigational points in route to a destination that is different from the one or more preferred navigational points.
  • 14. The computer-implemented method of claim 9, wherein displaying, by the vehicle navigation system, the navigational information to the user further comprises displaying, by the vehicle navigation system, real-time traffic conditions for the one or more navigational routes.
  • 15. A tangible, non-transitory computer-readable medium that stores instructions that, when executed by one or more processors of a navigational information computing system, cause the navigational information computing system to perform operations, the operations comprising: receiving data that identifies one or inure user preferences from a user computing device communicatively coupled to the navigational information computing system over a network, wherein the one or more user preferences comprise one or more preferred navigational points input by a user into the user computing device;updating a database included in the navigational information system to store information descriptive of the one or more user preferences when received from the user computing device;after updating the database, receiving a request from the user computing device or a vehicle navigation system;in response to the request, determining navigational information based on the one or more user preferences, wherein the navigational information comprises one or more navigational routes that include the one or more preferred navigational points; andproviding the navigational information that is based on the one or more user preferences to the vehicle navigation system included in a vehicle and communicatively coupled to the navigational information computing system over the network for display of the navigational information by the vehicle navigation system.
  • 16. The tangible, non-transitory computer-readable medium of claim 15, wherein the one or more navigational routes comprise a first route to one of the one or more preferred navigational points from a current location of the vehicle.
  • 17. The tangible, non-transitory computer-readable medium of claim 15, wherein the navigational information comprises real-time traffic conditions associated with the one or more navigational routes.
  • 18. The tangible, non-transitory computer-readable medium of claim 15, wherein the one or more navigational routes that include the one or more preferred navigational points comprise one or more navigational routes that travel through the one or more preferred navigational points in route to a destination that is different from the one or more preferred navigational points.
CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of U.S. patent application Ser. No. 14/315,274, entitled “Transportation Routing”, filed on Jun. 25, 2014, which is a continuation of U.S. patent application Ser. No. 13/964,004, entitled “Transportation Routing,” filed on Aug. 9, 2013, which is a continuation of U.S. patent application Ser. No. 13/008,289 entitled “Transportation Routing,” filed on Jan. 18, 2011, which is a continuation of U.S. patent application Ser. No. 11/027,769 entitled “Transportation Routing,” filed on Dec. 31, 2004, now U.S. Pat. No. 7,908,080, issued Mar. 15, 2011, the disclosures of which are hereby incorporated by reference in their entirety for all purposes.

US Referenced Citations (892)
Number Name Date Kind
1266367 Wilson May 1918 A
1638716 Surles Aug 1927 A
1995656 Stout Mar 1935 A
2371451 Larson Mar 1945 A
2528201 White Oct 1950 A
2665381 Smith et al. Jan 1954 A
2672945 Harris et al. Mar 1954 A
2720372 Gowan Oct 1955 A
2877427 Butler Mar 1959 A
2966580 Taylor Dec 1960 A
2980887 Soderberg Apr 1961 A
3030497 Cheng Apr 1962 A
3056106 Hendricks Sep 1962 A
3056121 Jackson Sep 1962 A
3063048 Lehan et al. Nov 1962 A
3126191 Holden Mar 1964 A
3130970 Hutsell Apr 1964 A
3199074 Hales et al. Aug 1965 A
3237154 Barker Feb 1966 A
3275984 Barker Sep 1966 A
3312436 Beghetto, Jr. Apr 1967 A
3322940 Barker et al. May 1967 A
3324396 Schneider Jun 1967 A
3345503 Auer, Jr. Oct 1967 A
3374359 Anderson Mar 1968 A
D216984 Stanford et al. Mar 1970 S
3506808 Riddle, Jr. et al. Apr 1970 A
3516056 Matthews Jun 1970 A
3558994 Bernstein Jan 1971 A
3563221 Tada Feb 1971 A
3563335 Holmes Feb 1971 A
3583149 Ganter Jun 1971 A
3626413 Zachmann Dec 1971 A
3644818 Paget Feb 1972 A
3681697 Moroney Aug 1972 A
3710081 Apitz Jan 1973 A
3711686 Apitz Jan 1973 A
3744147 Pless Jul 1973 A
3753219 King, Jr. Aug 1973 A
3774147 Hendricks Nov 1973 A
3798651 Lehman Mar 1974 A
3802653 Nyuiassie Apr 1974 A
3872422 Obermaier et al. Mar 1975 A
3885227 Moissl May 1975 A
3893061 Slawsky et al. Jul 1975 A
3899671 Stover Aug 1975 A
3906438 Kohnert Sep 1975 A
3916329 Hekimian et al. Oct 1975 A
3916374 Drebinger et al. Oct 1975 A
3919686 Narbaits-Jaureguy et al. Nov 1975 A
3978330 Maurer Aug 1976 A
4012744 Greiser Mar 1977 A
4013969 Dennison Mar 1977 A
4014503 Raimer Mar 1977 A
4021807 Culpepper et al. May 1977 A
4023017 Ceseri May 1977 A
4050798 Boggs Sep 1977 A
4081783 Honda Mar 1978 A
4086632 Lions Apr 1978 A
4087066 Bahker et al. May 1978 A
4087067 Bahker et al. May 1978 A
4120037 Sato Oct 1978 A
4138711 Bremenour et al. Feb 1979 A
4143128 Kurita et al. Mar 1979 A
4162696 Sprung Jul 1979 A
4163216 Arpino Jul 1979 A
4203070 Bowles et al. May 1980 A
4212067 Henderson et al. Jul 1980 A
4232395 Yokogawa Nov 1980 A
4237540 Sato Dec 1980 A
4242639 Boone Dec 1980 A
4247939 Stromswold et al. Jan 1981 A
4249418 Ebata Feb 1981 A
4268894 Bartunek et al. May 1981 A
4270721 Mainor, Jr. Jun 1981 A
4289383 Schwarzwschild Sep 1981 A
4290136 Brunner et al. Sep 1981 A
4296400 Friedbert et al. Oct 1981 A
4297004 Nishimura et al. Oct 1981 A
4297707 Brunner et al. Oct 1981 A
4303905 Brebinger Dec 1981 A
4323970 Brunner et al. Apr 1982 A
4344122 Jones Aug 1982 A
4350970 Von Tomkewitsch Sep 1982 A
4352086 Hunziker Sep 1982 A
4357593 Von Tomkewitsch Nov 1982 A
4362353 Cobaugh et al. Dec 1982 A
4369427 Drebinger et al. Jan 1983 A
4380745 Barlow et al. Apr 1983 A
4380821 Eckhardt Apr 1983 A
4398171 Dahan et al. Aug 1983 A
4409583 Dahan et al. Oct 1983 A
4445118 Taylor et al. Apr 1984 A
4451830 Lucas et al. May 1984 A
4459667 Takeuchi Jul 1984 A
4466701 Ogata et al. Aug 1984 A
4485477 Nossen Nov 1984 A
4486857 Heckel Dec 1984 A
4527030 Oelsch Jul 1985 A
4530103 Mosley, Jr. et al. Jul 1985 A
4531176 Beecher, II Jul 1985 A
4531236 Ishihara Jul 1985 A
4540865 Calder Sep 1985 A
4549286 Langeraar et al. Oct 1985 A
4555938 Boucher et al. Dec 1985 A
4561115 Pfeifer Dec 1985 A
4562382 Elliott Dec 1985 A
4580289 Enderby Apr 1986 A
4592526 Kobelt Jun 1986 A
4593273 Narcisse Jun 1986 A
4612543 De Vries Sep 1986 A
4613913 Phillips Sep 1986 A
4627100 Takano Dec 1986 A
4630209 Saito et al. Dec 1986 A
4633194 Kikuchi et al. Dec 1986 A
4633517 Pfeifer Dec 1986 A
4642606 Tsuyama Feb 1987 A
4644787 Boucher et al. Feb 1987 A
4646015 Phillips Feb 1987 A
4647126 Sobota, Jr. Mar 1987 A
4651157 Gray et al. Mar 1987 A
4659881 Dowe Apr 1987 A
4668843 Watanabe May 1987 A
4675656 Narcisse Jun 1987 A
4675691 Moore Jun 1987 A
4677395 Baker Jun 1987 A
4677450 Ito et al. Jun 1987 A
4677563 Itoh et al. Jun 1987 A
4686642 Buxton et al. Aug 1987 A
4687167 Skalka et al. Aug 1987 A
4700332 Hwang Oct 1987 A
4713661 Boone et al. Dec 1987 A
4716522 Funabashi et al. Dec 1987 A
4733356 Haeussermann et al. Mar 1988 A
4734863 Honey et al. Mar 1988 A
4738625 Burton et al. Apr 1988 A
4748681 Schmidt May 1988 A
4750197 Denekamp et al. Jun 1988 A
4754465 Trimble Jun 1988 A
4760531 Yasui et al. Jul 1988 A
4763130 Weinstein Aug 1988 A
4774671 Itoh et al. Sep 1988 A
4774672 Tsunoda et al. Sep 1988 A
4777630 Burns Oct 1988 A
4780604 Hasegawa et al. Oct 1988 A
4780717 Takanabe et al. Oct 1988 A
4780791 Morita et al. Oct 1988 A
4780793 Ohtsuki Oct 1988 A
4788645 Zavoli et al. Nov 1988 A
4792803 Madnick et al. Dec 1988 A
4792907 Ikeda et al. Dec 1988 A
4796189 Nakayama et al. Jan 1989 A
4796191 Honey et al. Jan 1989 A
4797916 Kojima Jan 1989 A
4809005 Counselman, III Feb 1989 A
4811491 Phillips et al. Mar 1989 A
4811507 Blanchet Mar 1989 A
4811613 Phillips et al. Mar 1989 A
4812843 Champion, III et al. Mar 1989 A
4812980 Yamada et al. Mar 1989 A
4819174 Furuno et al. Apr 1989 A
4819175 Wuttke Apr 1989 A
4829492 Choi et al. May 1989 A
4831538 Cucchiari et al. May 1989 A
4831563 Ando et al. May 1989 A
4834329 Delapp May 1989 A
4843399 Bongiorno et al. Jun 1989 A
4843403 Lalezari et al. Jun 1989 A
4843544 DuLac et al. Jun 1989 A
4862395 Fey et al. Aug 1989 A
4868715 Putman et al. Sep 1989 A
4872091 Maniawa Oct 1989 A
4889302 Tucker Dec 1989 A
4896337 Bushy, Jr. Jan 1990 A
4899285 Nakayama et al. Feb 1990 A
4903325 Yoshitake et al. Feb 1990 A
4905124 Banjo et al. Feb 1990 A
4907208 Lowrance et al. Mar 1990 A
4907290 Crompton Mar 1990 A
4912756 Hop Mar 1990 A
4914605 Loughmiller, Jr. Apr 1990 A
4921467 Lax May 1990 A
4924402 Ando et al. May 1990 A
4939661 Barker et al. Jul 1990 A
4939663 Baird Jul 1990 A
4943951 Leavell et al. Jul 1990 A
4953198 Daly et al. Aug 1990 A
4955817 Sugai Sep 1990 A
4956750 Maggelet Sep 1990 A
4969647 Mical et al. Nov 1990 A
4970523 Braisted et al. Nov 1990 A
4974120 Kodai et al. Nov 1990 A
4977509 Pitchford et al. Dec 1990 A
4982314 Miki Jan 1991 A
4982332 Saito et al. Jan 1991 A
4985705 Stammler Jan 1991 A
4989813 Kim et al. Feb 1991 A
5003306 Takahashi et al. Mar 1991 A
5005108 Pristash et al. Apr 1991 A
5008647 Brunt et al. Apr 1991 A
5017767 Mizuno May 1991 A
5020143 Duckeck et al. May 1991 A
5021794 Lawrence Jun 1991 A
5031076 Kiku Jul 1991 A
5043736 Darnell et al. Aug 1991 A
5045770 Brooks Sep 1991 A
5053613 Onoda Oct 1991 A
5053928 Pasco Oct 1991 A
5058996 Washizuka et al. Oct 1991 A
5067081 Person Nov 1991 A
5068670 Maoz Nov 1991 A
5068765 Nimpoeno Nov 1991 A
5081431 Kubo et al. Jan 1992 A
5087919 Odagawa et al. Feb 1992 A
5087969 Kamada et al. Feb 1992 A
5092552 Dayton et al. Mar 1992 A
5099455 Parra Mar 1992 A
5103377 Kobayashi et al. Apr 1992 A
5107227 Brooks Apr 1992 A
5108334 Eschenback et al. Apr 1992 A
5109364 Stiner Apr 1992 A
5109500 Iseki et al. Apr 1992 A
5111150 Casey May 1992 A
5115398 DeJong May 1992 A
5119101 Barnard Jun 1992 A
5119504 Durboraw, III Jun 1992 A
5123621 Gates Jun 1992 A
5126941 Gurmu et al. Jun 1992 A
5133076 Hawkins et al. Jul 1992 A
5134390 Kishimoto et al. Jul 1992 A
5139223 Sedighzabeh Aug 1992 A
5142497 Warrow Aug 1992 A
5144323 Yonkers Sep 1992 A
5146231 Ghaem et al. Sep 1992 A
5148002 Kuo et al. Sep 1992 A
5151774 Mori et al. Sep 1992 A
5153583 Murdoch Oct 1992 A
5153818 Mukougawa et al. Oct 1992 A
5154390 Bain et al. Oct 1992 A
5161169 Galano et al. Nov 1992 A
5161886 DeJong et al. Nov 1992 A
5164904 Sumner Nov 1992 A
5172075 Yerbury et al. Dec 1992 A
5172110 Tiefengraber Dec 1992 A
5173691 Summer Dec 1992 A
5173840 Kodai et al. Dec 1992 A
5173849 Brooks Dec 1992 A
5177685 Davis et al. Jan 1993 A
5182555 Sumner Jan 1993 A
5184330 Adams et al. Feb 1993 A
5184830 Okada et al. Feb 1993 A
5185610 Ward et al. Feb 1993 A
5189404 Masimo et al. Feb 1993 A
5189539 Suzuki Feb 1993 A
5191792 Gloor Mar 1993 A
5193215 Olmers Mar 1993 A
5196743 Brooks Mar 1993 A
5200757 Jairam Apr 1993 A
5200902 Pilley Apr 1993 A
5203030 Kawasaki Apr 1993 A
5204817 Yoshida Apr 1993 A
5206641 Grant et al. Apr 1993 A
5208756 Song May 1993 A
5210540 Masumoto May 1993 A
5212643 Yoshida May 1993 A
5216430 Rahm et al. Jun 1993 A
5220509 Takemura et al. Jun 1993 A
5223844 Mansell et al. Jun 1993 A
5225842 Brown et al. Jul 1993 A
5226622 Lee Anna Jul 1993 A
5229925 Spencer et al. Jul 1993 A
5230016 Yasuda Jul 1993 A
5235315 Cherry et al. Aug 1993 A
5235633 Dennison et al. Aug 1993 A
5237449 Nelson et al. Aug 1993 A
5239697 Kosuga Aug 1993 A
5243528 Lefevre Sep 1993 A
5243529 Kashiwazaki Sep 1993 A
5245314 Kah, Jr. Sep 1993 A
5246790 Mooney et al. Sep 1993 A
5247356 Ciampa Sep 1993 A
5247439 Gurmu et al. Sep 1993 A
5248989 Murdoch Sep 1993 A
5255005 Terret et al. Oct 1993 A
5258766 Murdoch Nov 1993 A
5260912 Latham Nov 1993 A
5263423 Anderson Nov 1993 A
5266958 Durboraw, III Nov 1993 A
5267181 George Nov 1993 A
5272327 Mitchell et al. Dec 1993 A
5272638 Martin et al. Dec 1993 A
5283589 Blevins Feb 1994 A
5288237 Mizutani et al. Feb 1994 A
5289183 Hassett et al. Feb 1994 A
5289195 Inoue Feb 1994 A
5293163 Kakihara et al. Mar 1994 A
5297049 Gurm et al. Mar 1994 A
5297051 Arakawa et al. Mar 1994 A
5301368 Hirata Apr 1994 A
5302954 Brooks et al. Apr 1994 A
5307277 Hirano Apr 1994 A
5307515 Kuu et al. Apr 1994 A
5311195 Mathis et al. May 1994 A
5311339 Fertig et al. May 1994 A
5313200 Sone May 1994 A
5317311 Martell et al. May 1994 A
5319516 Perkins Jun 1994 A
5323164 Endo Jun 1994 A
5326059 Pryor et al. Jul 1994 A
5327398 Wansley et al. Jul 1994 A
5329546 Lee Jul 1994 A
5330360 Marsh et al. Jul 1994 A
5331563 Masumoto et al. Jul 1994 A
5332185 Walker, III Jul 1994 A
5333116 Hawkins et al. Jul 1994 A
5335145 Kusui Aug 1994 A
5335188 Brisson Aug 1994 A
5337985 Hale Aug 1994 A
5339222 Simmons et al. Aug 1994 A
5343399 Yokoyama et al. Aug 1994 A
5345244 Gildea et al. Sep 1994 A
5349530 Odagawa Sep 1994 A
5350147 Pagamus Sep 1994 A
5353040 Yamada et al. Oct 1994 A
5355511 Hatano et al. Oct 1994 A
5357402 Anhalt Oct 1994 A
5358135 Robbins et al. Oct 1994 A
5361212 Class et al. Nov 1994 A
5363306 Kuwahara et al. Nov 1994 A
5364093 Huston et al. Nov 1994 A
5365448 Nobe et al. Nov 1994 A
5365450 Schuchman et al. Nov 1994 A
5371754 Berndt et al. Dec 1994 A
5373531 Kawasaki Dec 1994 A
5375037 Le Roux Dec 1994 A
5379224 Brown et al. Jan 1995 A
5379658 Lichenfets, II et al. Jan 1995 A
5386084 Risko Jan 1995 A
5386340 Kurz Jan 1995 A
5389934 Kass Feb 1995 A
5392005 Bartolíní et al. Feb 1995 A
5396429 Hanchett Mar 1995 A
5396430 Arakawa et al. Mar 1995 A
5396431 Shimizu et al. Mar 1995 A
5397857 Farquhar et al. Mar 1995 A
5402117 Zijderhand Mar 1995 A
5402347 McBurney et al. Mar 1995 A
5406490 Braegas Apr 1995 A
5406491 Lima Apr 1995 A
5408238 Smith Apr 1995 A
5408385 Fowler et al. Apr 1995 A
5410486 Kishi et al. Apr 1995 A
5414253 Baudouin et al. May 1995 A
5414432 Penny et al. May 1995 A
5416666 Maguire, Jr. May 1995 A
5416712 Geier et al. May 1995 A
5420592 Johnson May 1995 A
5420779 Payne May 1995 A
5424953 Masumoto et al. Jun 1995 A
5426780 Gerull et al. Jun 1995 A
5427032 Hiltz et al. Jun 1995 A
5428545 Maegawa et al. Jun 1995 A
5429336 Ko Jul 1995 A
5434789 Fraker et al. Jul 1995 A
5438518 Bianco et al. Aug 1995 A
5440448 Stewart et al. Aug 1995 A
5440451 Saito et al. Aug 1995 A
5446622 Landry et al. Aug 1995 A
5452212 Yokoyama et al. Sep 1995 A
5452217 Kishi et al. Sep 1995 A
5452874 Kozloff et al. Sep 1995 A
5456442 Sutton et al. Oct 1995 A
5459479 Cummings Oct 1995 A
5461365 Schlager et al. Oct 1995 A
5463554 Araki et al. Oct 1995 A
5469175 Boman Nov 1995 A
5471205 Izawa Nov 1995 A
D365032 Laverick et al. Dec 1995 S
D365292 Laverick et al. Dec 1995 S
5475599 Yokoyama et al. Dec 1995 A
5476241 Helman Dec 1995 A
5477458 Loomis Dec 1995 A
5485154 Brooks et al. Jan 1996 A
5493309 Bjornholt Feb 1996 A
5497148 Oliva Mar 1996 A
5502452 Gomez Mar 1996 A
5502640 Yagyu et al. Mar 1996 A
5503361 Kan-O et al. Apr 1996 A
5504683 Gurmu et al. Apr 1996 A
5506578 Kishi et al. Apr 1996 A
5506587 Lans Apr 1996 A
5506774 Nobe et al. Apr 1996 A
5508931 Snider Apr 1996 A
5512912 Ross et al. Apr 1996 A
5517253 De Lange May 1996 A
5523761 Gildea Jun 1996 A
5523950 Peterson Jun 1996 A
5526235 Beason et al. Jun 1996 A
5528248 Steiner et al. Jun 1996 A
5537323 Schulte Jul 1996 A
5539398 Hall et al. Jul 1996 A
5539645 Mandhyan et al. Jul 1996 A
5543789 Behr et al. Aug 1996 A
5543802 Villevielle et al. Aug 1996 A
5546107 Deretsky et al. Aug 1996 A
5548822 Yogo Aug 1996 A
5552794 Colley et al. Sep 1996 A
5553261 Hasbun et al. Sep 1996 A
5555286 Tendler Sep 1996 A
5559511 Ito et al. Sep 1996 A
5559707 DeLorme et al. Sep 1996 A
5564083 Lee et al. Oct 1996 A
5564560 Minelli et al. Oct 1996 A
5570095 Drouihet et al. Oct 1996 A
5572217 Flawn Nov 1996 A
5575549 Ishikawa et al. Nov 1996 A
5581259 Schipper Dec 1996 A
5581790 Sefidvash Dec 1996 A
5584556 Yokoyama et al. Dec 1996 A
5586264 Belknap et al. Dec 1996 A
5592367 Sugimori et al. Jan 1997 A
5592401 Kramer Jan 1997 A
5594432 Oliva et al. Jan 1997 A
5606732 Vignone, Sr. Feb 1997 A
5606736 Hasler et al. Feb 1997 A
5610821 Gazis et al. Mar 1997 A
5610971 Vandivier Mar 1997 A
5612804 Hara Mar 1997 A
5613055 Shimoura et al. Mar 1997 A
5613751 Parker et al. Mar 1997 A
5618096 Parker et al. Apr 1997 A
5619217 Mailandt et al. Apr 1997 A
5626320 Burrell et al. May 1997 A
5629668 Downs May 1997 A
5629854 Schulte May 1997 A
5635945 McConnell et al. Jun 1997 A
5638513 Ananda Jun 1997 A
5646857 McBurney et al. Jul 1997 A
5650770 Schlager et al. Jul 1997 A
5652479 LoCascio et al. Jul 1997 A
5652706 Morimoto et al. Jul 1997 A
5654718 Beason et al. Aug 1997 A
5654886 Zereski et al. Aug 1997 A
5655736 Kozloff et al. Aug 1997 A
5657231 Nobe et al. Aug 1997 A
5661364 Kruskopf Aug 1997 A
5661632 Register Aug 1997 A
5665000 Burrell et al. Sep 1997 A
5666279 Takehara et al. Sep 1997 A
5673039 Pietzsch et al. Sep 1997 A
D384661 Burrell et al. Oct 1997 S
5675220 Dault et al. Oct 1997 A
5680192 Burrell et al. Oct 1997 A
5686616 Edvardsson Nov 1997 A
5689269 Norris Nov 1997 A
5689809 Grube et al. Nov 1997 A
5694534 White, Jr. et al. Dec 1997 A
5699056 Yoshida Dec 1997 A
5701121 Murdoch Dec 1997 A
5711013 Collett et al. Jan 1998 A
D390484 Nishimura et al. Feb 1998 S
5715163 Bang et al. Feb 1998 A
5717389 Mertens et al. Feb 1998 A
5719824 Boucher Feb 1998 A
5722083 Koenig et al. Feb 1998 A
5729458 Poppen Mar 1998 A
5732385 Nakayama et al. Mar 1998 A
5742256 Wakabayashi Apr 1998 A
5742925 Baba Apr 1998 A
5745054 Wilkens Apr 1998 A
5751246 Hertel May 1998 A
5751612 Donovan et al. May 1998 A
5754143 Warnagiris et al. May 1998 A
5757929 Wang et al. May 1998 A
D395250 Kabler et al. Jun 1998 S
D395252 Nelson et al. Jun 1998 S
5759049 Gerber Jun 1998 A
5760748 Beckingham Jun 1998 A
5761417 Henley et al. Jun 1998 A
5765169 Conner Jun 1998 A
5768581 Cochran Jun 1998 A
5774362 Suzuki et al. Jun 1998 A
5774826 McBride Jun 1998 A
5774827 Smith, Jr. et al. Jun 1998 A
5775791 Yoshikawa et al. Jul 1998 A
5781150 Norris Jul 1998 A
5786789 Janky Jul 1998 A
5787382 Kurabayashi Jul 1998 A
5787383 Moroto et al. Jul 1998 A
5793631 Ito et al. Aug 1998 A
5798882 Lang Aug 1998 A
5802366 Row et al. Sep 1998 A
5802492 DeLorme et al. Sep 1998 A
5806017 Hancock Sep 1998 A
5808581 Braisted et al. Sep 1998 A
5809447 Kato et al. Sep 1998 A
5812069 Albrecht et al. Sep 1998 A
5812591 Shumaker et al. Sep 1998 A
5815126 Fan et al. Sep 1998 A
5815824 Saga et al. Sep 1998 A
5819201 DeGraaf Oct 1998 A
5820080 Eschenbach Oct 1998 A
5825327 Krasner Oct 1998 A
5835755 Stellwagen, Jr. Nov 1998 A
5838281 Blaese Nov 1998 A
5839088 Hancock et al. Nov 1998 A
5845227 Peterson Dec 1998 A
5848373 DeLorme et al. Dec 1998 A
5848378 Shelton et al. Dec 1998 A
5850612 Kulberg et al. Dec 1998 A
5852791 Sato et al. Dec 1998 A
5854608 Leisten Dec 1998 A
D404666 Wrisley Jan 1999 S
5862244 Kleiner et al. Jan 1999 A
5862511 Croyle et al. Jan 1999 A
5868582 Jacobi Feb 1999 A
5874920 Araki et al. Feb 1999 A
5877724 Davis Mar 1999 A
5878368 DeGraaf Mar 1999 A
5881985 Hoenig Mar 1999 A
5884219 Curtwright et al. Mar 1999 A
5888076 Itoh et al. Mar 1999 A
5889364 McGuigan et al. Mar 1999 A
5889474 LaDue Mar 1999 A
5889477 Fastenrath Mar 1999 A
5890092 Kato et al. Mar 1999 A
5893081 Poppen Apr 1999 A
5898408 Du Apr 1999 A
D409927 Wiegers et al. May 1999 S
5901183 Garin et al. May 1999 A
5902347 Backman et al. May 1999 A
5905451 Sakashita May 1999 A
5905507 Rossignac et al. May 1999 A
5906825 Seabrook, Jr. et al. May 1999 A
5908464 Kishigami et al. Jun 1999 A
5909672 Madore et al. Jun 1999 A
5910882 Burrell Jun 1999 A
5911773 Mutsuga et al. Jun 1999 A
5913917 Murphy Jun 1999 A
5913918 Nakano et al. Jun 1999 A
5914675 Tognazzini Jun 1999 A
5914685 Koziov et al. Jun 1999 A
5916299 Poppen Jun 1999 A
5918841 Sweere et al. Jul 1999 A
5919246 Waizmann Jul 1999 A
5922041 Anderson Jul 1999 A
5924665 Sweere et al. Jul 1999 A
5926113 Jones et al. Jul 1999 A
5930200 Kabel Jul 1999 A
D412450 McCain Aug 1999 S
5931102 Grahl Aug 1999 A
5931555 Akahane et al. Aug 1999 A
5931888 Hiyokawa Aug 1999 A
5936553 Kabel Aug 1999 A
5938159 Hung Aug 1999 A
5938720 Tamai Aug 1999 A
5938721 Dussell et al. Aug 1999 A
5940776 Baron et al. Aug 1999 A
5943018 Miller Aug 1999 A
5945950 Elbadawy Aug 1999 A
5945956 Izawa et al. Aug 1999 A
5946687 Gehani et al. Aug 1999 A
5947359 Yoshic Sep 1999 A
5948043 Mathis Sep 1999 A
5951399 Burrell et al. Sep 1999 A
5951620 Ahrens et al. Sep 1999 A
5952959 Norris Sep 1999 A
5953367 Zhodzicshsky et al. Sep 1999 A
5955973 Anderson Sep 1999 A
5955997 Ho et al. Sep 1999 A
5956655 Suzuki et al. Sep 1999 A
5959529 Kail Sep 1999 A
5959577 Fan et al. Sep 1999 A
5960411 Hartman et al. Sep 1999 A
5963130 Schlager et al. Oct 1999 A
5964441 Leveille Oct 1999 A
5966645 Davis Oct 1999 A
5967479 Sweere et al. Oct 1999 A
5969609 Murdoch Oct 1999 A
5970400 Dwyer Oct 1999 A
5975474 Kaplan et al. Nov 1999 A
5978730 Poppen et al. Nov 1999 A
5982298 Lappenbusch et al. Nov 1999 A
5987374 Akutsu et al. Nov 1999 A
5987377 Westerlage et al. Nov 1999 A
5987380 Backman et al. Nov 1999 A
5990846 Dichter Nov 1999 A
5991692 Spencer, II et al. Nov 1999 A
5995064 Yanagisawa et al. Nov 1999 A
5995970 Robinson et al. Nov 1999 A
5996954 Rosen et al. Dec 1999 A
5999882 Simpson et al. Dec 1999 A
6002982 Fry Dec 1999 A
6003024 Bair et al. Dec 1999 A
6006161 Katou Dec 1999 A
6011510 Yee et al. Jan 2000 A
6012693 Voeller et al. Jan 2000 A
6016485 Amakawa et al. Jan 2000 A
6021371 Fultz Feb 2000 A
6021406 Kuznetson Feb 2000 A
6023245 Gomez et al. Feb 2000 A
6023653 Ichimura et al. Feb 2000 A
6026384 Poppen Feb 2000 A
6027257 Richards et al. Feb 2000 A
6029072 Barber Feb 2000 A
6029111 Croyle Feb 2000 A
6029141 Bezos et al. Feb 2000 A
6032219 Robinson et al. Feb 2000 A
6037942 Millington Mar 2000 A
6038509 Poppen et al. Mar 2000 A
6042338 Brafford et al. Mar 2000 A
6047939 Kim Apr 2000 A
6049309 Timoshin et al. Apr 2000 A
6049755 Lou et al. Apr 2000 A
6050535 Kang Apr 2000 A
6052597 Ekstrom Apr 2000 A
6052646 Kirkhart et al. Apr 2000 A
6054813 Takeda et al. Apr 2000 A
6055479 Kirkhart et al. Apr 2000 A
D425499 Millington May 2000 S
6059843 Kirkhart May 2000 A
6067046 Nichols May 2000 A
6076039 Kabel et al. Jun 2000 A
6076111 Chiu et al. Jun 2000 A
6077095 DelPrete et al. Jun 2000 A
6078864 Long et al. Jun 2000 A
6079682 Olkkola Jun 2000 A
D427919 Laverick et al. Jul 2000 S
6085090 Yee et al. Jul 2000 A
6088000 Ho Jul 2000 A
6089520 Wu et al. Jul 2000 A
6091368 Mitchell et al. Jul 2000 A
D429173 Laverick et al. Aug 2000 S
6097339 Filipovic et al. Aug 2000 A
6101443 Kato et al. Aug 2000 A
6107940 Grimm Aug 2000 A
6107970 Holshouser et al. Aug 2000 A
6108269 Kabel Aug 2000 A
6108603 Karunanidhi Aug 2000 A
6111539 Mannings et al. Aug 2000 A
6112143 Allen et al. Aug 2000 A
6121923 King Sep 2000 A
6122593 Friederich et al. Sep 2000 A
6125325 Kohli Sep 2000 A
6127945 Mura-Smith Oct 2000 A
6128515 Kabler et al. Oct 2000 A
6129321 Minelli et al. Oct 2000 A
6133874 Krasner Oct 2000 A
6133886 Fariello et al. Oct 2000 A
6141621 Piwowarski et al. Oct 2000 A
6144917 Walters et al. Nov 2000 A
6148262 Fry Nov 2000 A
6150961 Alewine et al. Nov 2000 A
6151550 Nakatani Nov 2000 A
6154184 Endo et al. Nov 2000 A
6157346 Ho Dec 2000 A
6160523 Ho Dec 2000 A
6161092 Latshaw et al. Dec 2000 A
6163269 Millington et al. Dec 2000 A
6172641 Millington Jan 2001 B1
6173933 Whiteside et al. Jan 2001 B1
6177873 Cragun Jan 2001 B1
6178380 Millington Jan 2001 B1
6182006 Meek Jan 2001 B1
6182010 Berstis Jan 2001 B1
6188778 Higashikubo et al. Feb 2001 B1
6188955 Robinson et al. Feb 2001 B1
6188956 Walters Feb 2001 B1
6192257 Ray Feb 2001 B1
6199008 Aratow et al. Mar 2001 B1
6199013 O'Shea Mar 2001 B1
6209026 Ran et al. Mar 2001 B1
6213438 Ostby et al. Apr 2001 B1
6215680 Rolston Apr 2001 B1
6216064 Johnson et al. Apr 2001 B1
6222485 Walters et al. Apr 2001 B1
6229479 Kozlov et al. May 2001 B1
6236932 Fastenrath May 2001 B1
6236933 Lang May 2001 B1
6240362 Gaspard, II May 2001 B1
6240364 Kerner et al. May 2001 B1
6246958 Hirono Jun 2001 B1
6252605 Beesley et al. Jun 2001 B1
6256029 Millington Jul 2001 B1
6256577 Graunke Jul 2001 B1
6262337 Von Euler et al. Jul 2001 B1
6265571 Shi et al. Jul 2001 B1
6266612 Dussell et al. Jul 2001 B1
6272189 Garin et al. Aug 2001 B1
6282486 Bates et al. Aug 2001 B1
6282495 Kirkhart et al. Aug 2001 B1
6285950 Tanimoto Sep 2001 B1
6292743 Pu et al. Sep 2001 B1
6308134 Croyle et al. Oct 2001 B1
6314365 Smith Nov 2001 B1
6314368 Gurmu et al. Nov 2001 B1
6317684 Roeseler et al. Nov 2001 B1
6317685 Kozak et al. Nov 2001 B1
6317686 Ran Nov 2001 B1
6317687 Morimoto et al. Nov 2001 B1
6317689 Lee Nov 2001 B1
6321158 DeLorme Nov 2001 B1
6328575 Burrell Dec 2001 B1
6329946 Hirata et al. Dec 2001 B1
6330149 Burrell Dec 2001 B1
6334087 Nakano et al. Dec 2001 B1
6335905 Kabel Jan 2002 B1
6347280 Inoue et al. Feb 2002 B1
6353795 Ranjan Mar 2002 B1
6353798 Green et al. Mar 2002 B1
6360167 Millington et al. Mar 2002 B1
6362751 Upparapalli Mar 2002 B1
6362779 Meek et al. Mar 2002 B1
6363322 Millington Mar 2002 B1
6373430 Beason et al. Apr 2002 B1
6374177 Lee et al. Apr 2002 B1
6374179 Smith et al. Apr 2002 B1
6374180 Siominski et al. Apr 2002 B1
6377516 Whiteside et al. Apr 2002 B1
6381534 Takayama et al. Apr 2002 B2
6381540 Beason et al. Apr 2002 B1
6384798 Barta et al. May 2002 B1
6385537 Gaspard, II May 2002 B2
6385542 Millington May 2002 B1
6392593 Pemble May 2002 B1
6397145 Millington May 2002 B1
6400753 Kohli et al. Jun 2002 B1
6401027 Xu et al. Jun 2002 B1
6402334 Yu-San Jun 2002 B1
6405130 Piwowarski Jun 2002 B1
6407709 Hanshew Jun 2002 B1
6411502 Burrell Jun 2002 B1
6411897 Gaspard, II Jun 2002 B1
6411899 Dussell et al. Jun 2002 B2
6415223 Lin et al. Jul 2002 B1
6415226 Kozak Jul 2002 B1
6421607 Gee Jul 2002 B1
6421609 Kohli Jul 2002 B2
6429812 Hoffberg Aug 2002 B1
6430501 Siominski Aug 2002 B1
6434485 Beason et al. Aug 2002 B1
6452544 Hakala et al. Sep 2002 B1
6456935 Ng Sep 2002 B1
6459987 Krull et al. Oct 2002 B1
6463091 Zhodzicshsky et al. Oct 2002 B1
6463385 Fry Oct 2002 B1
6464185 Minelli et al. Oct 2002 B1
6466514 Kabel Oct 2002 B1
6466862 DeKock et al. Oct 2002 B1
6470268 Ashcraft et al. Oct 2002 B1
6483457 Hirata et al. Nov 2002 B2
6484089 Millington Nov 2002 B1
6490519 Lapidot et al. Dec 2002 B1
6492941 Beason et al. Dec 2002 B1
6505118 Chowanic et al. Jan 2003 B2
6506267 Fujiyasu et al. Jan 2003 B1
6510384 Okano Jan 2003 B2
6516267 Cherveny et al. Feb 2003 B1
6526350 Seklyama Feb 2003 B2
6529822 Millington et al. Mar 2003 B1
6529824 Obradovich et al. Mar 2003 B1
6529829 Turetzky et al. Mar 2003 B2
6532419 Begin et al. Mar 2003 B1
6539301 Shirk et al. Mar 2003 B1
6542814 Polidi et al. Apr 2003 B2
6552656 Polidi et al. Apr 2003 B2
6553308 Uhlmann et al. Apr 2003 B1
6567745 Fuchs May 2003 B2
6574548 DeKock et al. Jun 2003 B2
6574551 Maxwell et al. Jun 2003 B1
6574558 Kohli Jun 2003 B2
6584402 Fukushima Jun 2003 B2
6591188 Ohler Jul 2003 B1
6594576 Fan et al. Jul 2003 B2
6594617 Scherzinger Jul 2003 B2
6600994 Polidi Jul 2003 B1
6601012 Horvitz et al. Jul 2003 B1
6609064 Dean Aug 2003 B1
6611753 Millington Aug 2003 B1
6618669 Ota et al. Sep 2003 B2
6622086 Polidi Sep 2003 B2
6622087 Anderson Sep 2003 B2
6668227 Hamada et al. Dec 2003 B2
6674402 Hirata et al. Jan 2004 B2
6680674 Park Jan 2004 B1
6687615 Krull et al. Feb 2004 B1
6691028 Bullock Feb 2004 B2
6691031 Lokshin et al. Feb 2004 B2
6711499 Millington Mar 2004 B2
6729176 Begin May 2004 B2
6735516 Manson May 2004 B1
6741928 Millington et al. May 2004 B2
6765554 Millington Jul 2004 B2
6785606 DeKock et al. Aug 2004 B2
6801851 Kawakami Oct 2004 B2
6807483 Chao Oct 2004 B1
6812888 Drury et al. Nov 2004 B2
6826474 Miyahara Nov 2004 B2
6836725 Millington et al. Dec 2004 B2
6845316 Yates Jan 2005 B2
6850844 Walters et al. Feb 2005 B1
6862524 Nagda et al. Mar 2005 B1
6864807 Todoriki et al. Mar 2005 B2
6873907 Millington et al. Mar 2005 B1
6882933 Kondou Apr 2005 B2
6901330 Krull et al. May 2005 B1
6911918 Chen Jun 2005 B2
6967573 Murdoch et al. Nov 2005 B1
7031831 Kaji et al. Apr 2006 B2
7075459 Begin et al. Jul 2006 B1
7130743 Kudo Oct 2006 B2
7142979 Shonk Nov 2006 B1
7170518 Millington et al. Jan 2007 B1
D539677 Riddiford Apr 2007 S
7233860 Lokshin et al. Jun 2007 B2
7243134 Bruner Jul 2007 B2
7248145 Littlechild et al. Jul 2007 B2
7259654 Littlechild et al. Aug 2007 B2
7536258 Kudo May 2009 B2
7565155 Sheha et al. Jul 2009 B2
20010014847 Keenan Aug 2001 A1
20010020211 Takayama et al. Sep 2001 A1
20010029425 Myr Oct 2001 A1
20010037305 Mochizuki Nov 2001 A1
20010056443 Takayama Dec 2001 A1
20020004703 Gaspard Jan 2002 A1
20020013656 Namba Jan 2002 A1
20020047787 Mikkola et al. Apr 2002 A1
20020055818 Gaspard May 2002 A1
20020062246 Matsubara May 2002 A1
20020065604 Sekiyama May 2002 A1
20020077748 Nakano Jun 2002 A1
20020077910 Shioda et al. Jun 2002 A1
20020082772 Okano Jun 2002 A1
20020091485 Mikuriya et al. Jul 2002 A1
20020091486 Hubschneider et al. Jul 2002 A1
20020093493 Michaeli et al. Jul 2002 A1
20020107027 O'Neil Aug 2002 A1
20020120389 Fushiki et al. Aug 2002 A1
20020128766 Petzold et al. Sep 2002 A1
20020138197 Schramke et al. Sep 2002 A1
20020156572 Bullock Oct 2002 A1
20020158922 Clark et al. Oct 2002 A1
20020161517 Yano Oct 2002 A1
20020165666 Fuchs Nov 2002 A1
20020169540 Engstrom Nov 2002 A1
20020169551 Inoue et al. Nov 2002 A1
20030018428 Knockeart Jan 2003 A1
20030040866 Kawakami Feb 2003 A1
20030050751 Fukushima Mar 2003 A1
20030055542 Knockeart et al. Mar 2003 A1
20030055553 Knockeart et al. Mar 2003 A1
20030060973 Mathews Mar 2003 A1
20030060974 Miyahara Mar 2003 A1
20030065442 Touney Apr 2003 A1
20030078055 Smith et al. Apr 2003 A1
20030139150 Rodriguez et al. Jul 2003 A1
20030171870 Gueziec Sep 2003 A1
20030229444 Bullock Dec 2003 A1
20030236818 Bruner Dec 2003 A1
20040024523 Uotani Feb 2004 A1
20040044470 Matsuoka Mar 2004 A1
20040068362 Maekawa et al. Apr 2004 A1
20040077362 Chinomi Apr 2004 A1
20040083037 Yamane et al. Apr 2004 A1
20040093392 Nagamatsu et al. May 2004 A1
20040104842 Drury et al. Jun 2004 A1
20040128066 Kudo Jul 2004 A1
20040204842 Shinozaki Oct 2004 A1
20040243533 Dempster et al. Dec 2004 A1
20050010360 Nagase Jan 2005 A1
20050027446 Ishibashi et al. Feb 2005 A1
20050052462 Sakamoto et al. Mar 2005 A1
20050071078 Yamada Mar 2005 A1
20050096839 Nakano May 2005 A1
20050096840 Simske May 2005 A1
20050099321 Pearce May 2005 A1
20050099322 Wainfan et al. May 2005 A1
20050102098 Montealegre et al. May 2005 A1
20050125148 Van Buer Jun 2005 A1
20050131643 Shaffer Jun 2005 A1
20050143905 Yoshikawa Jun 2005 A1
20050159889 Isaac Jul 2005 A1
20060041374 Inoue Feb 2006 A1
20060178918 Mikurak Aug 2006 A1
20060241855 Joe Oct 2006 A1
20070038372 Kudo Feb 2007 A1
20080033633 Akiyoshi et al. Feb 2008 A1
20090012676 Kawamura et al. Jan 2009 A1
20090171563 Morimoto et al. Jul 2009 A1
20090281850 Bruce et al. Nov 2009 A1
20110054787 Mayor et al. Mar 2011 A1
Foreign Referenced Citations (24)
Number Date Country
0061674 Oct 1982 EP
0123562 Oct 1984 EP
0242099 Oct 1987 EP
1134716 Sep 2001 EP
2541801 Aug 1984 FR
57159310 Oct 1982 JP
1131295 May 1989 JP
5007239 Jan 1993 JP
5011700 Jan 1993 JP
5035903 Feb 1993 JP
5100240 Apr 1993 JP
5173478 Jul 1993 JP
5173479 Jul 1993 JP
7055910 Mar 1995 JP
8212490 Aug 1996 JP
8263783 Oct 1996 JP
9259387 Oct 1997 JP
9292834 Nov 1997 JP
9305891 Nov 1997 JP
10293035 Nov 1998 JP
11086184 Mar 1999 JP
11328581 Nov 1999 JP
11353582 Dec 1999 JP
WO 2004021306 Mar 2004 WO
Non-Patent Literature Citations (7)
Entry
Berkeley Daily Planet, “New System Could Reduce Commute Times,” Daily Planet, Jan. 20, 2001, 3 pages.
Blumentritt, et al., “TravTek System Architecture Evaluation”, U.S. Department of Transportation, Federal Highway Adminstration, Research and Development, McLean, Virginia, Jul. 1995 252 pages.
Chen et al., “Dynamic Freeway Travel Time Prediction Using Probe Vehicle Data: Link-based vs. Path-Based,” TRB Paper No. 01-2887, Transportation Research Board 80th Annual Meeting, Washington, DC, Jan. 7-11, 2001, 14 pages.
Inman, et al., “TravTek Global Evaluation and Executive Summary”, U.S. Department of Transportation, Federal Highway Administration, Research and Development, McLean, Virginia, Mar. 1996, 101 pages.
International Search Report from PCT/US2005/047245, dated Apr. 11, 2006, 4 pages.
Klügl et al., “Route Decision Behaviour in a Commuting Scenario: Simple Heuristics Adaptation and Effect of Traffic Forecast,” Journal of Artificial Societies and Social Simulation, vol. 7, No. 1, Jan. 31, 2004, 22 pages.
Shekhar et al., “Genesis and Advanced Traveler Information Systems (ATIS): Killer Applications for Mobile Comptuer?”, Department of Computer Science, University of Minnesota; Nov. 1994, 20 pages.
Related Publications (1)
Number Date Country
20170138753 A1 May 2017 US
Continuations (4)
Number Date Country
Parent 14315274 Jun 2014 US
Child 15420305 US
Parent 13964004 Aug 2013 US
Child 14315274 US
Parent 13008289 Jan 2011 US
Child 13964004 US
Parent 11027769 Dec 2004 US
Child 13008289 US