The subject specification relates generally to route prediction and in particular to using a Markov model to determine likelihood of a user making a travel decision.
Computer-driven route planning applications are utilized to aid users in locating points of interest, such as particular buildings, addresses, and the like. Additionally, in several existent commercial applications users can vary a zoom level, thereby enabling variation of context and detail as a zoom level of a map is altered. For example, as a user zooms in on a particular location, details such as names of local roads, identification and location of police and fire stations, identification and location of public services, such as libraries, museums, and the like can be provided to the user. When zooming out, the user can glean information from the map such as location of the point of interest within a city, state, and/or country, proximity of the point of interest to major freeways, proximity of the point of interest to a specific city, and the like. In some applications, satellite images can be utilized to provide users with additional detail regarding a particular geographic location or region. For example, a prospective purchaser of a house can obtain an overhead satellite image of the house, thereby enabling the prospective purchaser to view lines of occupation, proximity of the house to other adjacent houses, and other information that can be pertinent to the user.
Furthermore, conventional computer-implemented mapping applications often include route-planning applications that can be utilized to provide users with directions between different locations. Pursuant to an example, a user can provide a route planning application with a beginning point of travel and an end point of travel (e.g., beginning and ending addresses). The route planning application can include or utilize representations of roads and intersections and one or more algorithms to output a suggested route of travel. These algorithms can output routes depending upon user-selected parameters. For instance, a commercial route planning application can include a check box that enables a user to specify that she wishes to avoid highways. Similarly, a user can inform the route planning application that she wishes to travel on a shortest route or a route that takes a least amount of time.
The following discloses a simplified summary of the specification in order to provide a basic understanding of some aspects of the specification. This summary is not an extensive overview of the specification. It is intended to neither identify key or critical elements of the specification nor delineate the scope of the specification. Its sole purpose is to disclose some concepts of the specification in a simplified form as a prelude to the more detailed description that is disclosed later.
Commonly, a user travel along certain routes multiple times, such a main road near her home. When the user reaches an intersection, there are commonly at least two choices that can be made. Based on a wide-variety of factors, the user makes a decision regarding the intersection that can be collected as part of a user travel history. There can be benefit in understanding a likelihood of a user making a particular decision and a Markov model can be used to determine a likelihood of a user making a selection at an intersection based upon her travel history.
When the user nears the intersection, personal travel history as well as contextual information can be collected. The Markov model can use the history to determine a decision the user is more likely to make. Information can be provided to the user concerning the more likely route, such as traffic patterns, construction, weather conditions, and the like. An observation can be made if the prediction is correct and based upon the observation the Markov model can be trained and user travel history updated.
The following description and the annexed drawings set forth certain illustrative aspects of the specification. These aspects are indicative, however, of but a few of the various ways in which the principles of the specification can be employed. Other advantages and novel features of the specification will become apparent from the following detailed description of the specification when considered in conjunction with the drawings.
The claimed subject matter is now described with reference to the drawings, wherein like reference numerals are used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the claimed subject matter. It can be evident, however, that the claimed subject matter can be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to facilitate describing the claimed subject matter.
As used in this application, the terms “component,” “module,” “system,” “interface,” or the like are generally intended to refer to a computer-related entity, either hardware, a combination of hardware and software, software, or software in execution. For example, a component can be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a controller and the controller can be a component. One or more components can reside within a process and/or thread of execution and a component can be localized on one computer and/or distributed between two or more computers. As another example, an interface can include I/O components as well as associated processor, application, and/or API components.
Now referring to
Predicting a driver's near-term future path could be useful for giving the driver warnings about upcoming road situations, delivering anticipatory information, and allowing a vehicle to automatically adapt to expected operating conditions. A prediction algorithm can be used and trained from a driver's history. Specifically, training can occur through an nth-order Markov model to probabilistically predict future road segments based on a short sequence of just-driven road segments. The algorithm can be simple enough to be trained and executed on an in-vehicle navigation computer and can be implemented without off-board network connection.
A user history can be created and an analysis component 102 can evaluate travel history of an entity (e.g., a user, a user classification, a vehicle, etc.). A result of the evaluation can be accessed by a calculation component 104 that can use a Markov model to compute a route likelihood (e.g., percentage chance that a user takes an outcome of at least one intersection) as a function of the result of the evaluation. Commonly, the route likelihood is the probability a user takes different outcomes of at least one travel decision point (e.g., a road intersection). In addition, outcomes of travel decision points are typically independent of one another such that the route likelihood is a function of an outcome of at least two travel decision points. According to one embodiment, the Markov model can make a prediction based on only a single previous observation of a road segment.
Different outcomes can take place regarding the route likelihood. For example, a user can reach an intersection about ten times, where the intersection can have two realistic outcomes—turning right and turning left. A realistic outcome is an outcome of a user making a reasonable choice or/and outcome that conforms to normal traffic patterns (e.g., following traffic laws). For example, making a U-turn, performing an illegal operation (e.g., driving straight onto private property), and the like can be considered unrealistic since there can be a relatively low probability a user makes that decision. Based upon user history, a Markov model can be used to determine how likely the user is to make each decision. For instance, x % can be associated with turning right and 100%-x % can be associated with turning left.
These likelihoods can be used in conjunction with different functionality. For example, if an outcome has a likelihood over a specific threshold, then a check can be performed if there are hazards that should become known to the user (e.g., road closure, traffic jam, and the like). User action can be monitored such that a determination can be made on what outcome a user selects. The selected outcome can be aggregated upon user history as well as used to modify the Markov model.
While much discussion is dedicated to travel history of a person, it is to be appreciated that other forms of travel history can be used. In one instance, a public transit company can use a bus for a specific route—however, different drivers control the bus on different days. Therefore, as opposed to using driver history, vehicle travel history can be used since the vehicle is likely more indicative of travel then a driver. In addition, history of a user classification can be used—if a user does not have a history of travel along a particular path, then history of similarly situated users can be used to determine likelihood of outcomes.
The following is to be used as an explanation of a potential Markov model that can be used in conjunction with aspects disclosed herein. It is to be appreciated that there can be deviation from the following model information. Prediction of a vehicle's near term future route can be based on its near term past route. A model of the sequence of traversed road segments can be as X(i), with i representing a discrete time variable and X(−) representing a road segment (e.g. an integer unique among all the road segments). Whenever a prediction is made, the vehicle's road segments can be denoted as { . . . , X (−2), X (−1), X (O), X (1), X(2), . . . ), where X (0) is the current road segment, X(−1), X(−2), . . . are the immediately preceding road segments, and X(1), X(2), . . . are the unknown future road segments that are predicted. The road segments are not necessarily encountered at even time intervals. The discrete time variable i serves as an index over the segments in the order they are encountered. When the vehicle moves to a new road segment, that segment becomes the new X(0). At any time, the current road segment X(0) is known and the past road segments { . . . , X(−3) X(−2),X(−1)} back to the beginning of the trip. The unknowns are the future road segments that are predicted are, {X(1), X(2), X(3), . . . }.
At any point along a trip, the driver can choose which road segment to drive on next. In light of this choice, our predictions are probabilistic. For instance, P[X(1)] represents a discrete probability distribution over all the road segments giving which road segment will be encountered after the current one, X(0). P[X(2)] is the distribution for which road segment will be encountered after X(1), and so on. The Markov model gives a probabilistic prediction over future road segments based on past road segments. The standard, first order Markov model says that the probability distribution P[X(1)] for the next road segment is independent of all but X(O), the current road segment:
P[X(1)|X(0),X(−1),X(−2), . . . ]=P[X(1)|X(0)]
For a given driver, a P[X(1)|X(O)] can be easily built. For each road segment X(O), a histogram can be built of which road segments were encountered immediately after, and then normalized to get a discrete probability distribution. There can be a separate probability distribution for each road segment that a driver has ever driven on. A second order Markov model is sensitive to the two most recent road segments, e.g., P[X(1)|X(−1), X(O)]. This model can be built in a similar way, except there can be creation of a histogram over all two-element, ordered sequences {X(−1),X(O)}. There can be a check to see if using higher order models helps prediction accuracy. In particular, looking at the two most recent road segments gives a sense of the direction of travel along a road. For a first order model, the direction of travel is not encoded by observing only the current road segment. The Markov model can be used to predict beyond just the next road segment. There can be building of a P[X(2)|X(O)], which is the distribution over the road segments after the next one, given the current one. Higher order models can be used to make these farther out predictions, e.g. P[X(2)|X(−I), X(O)]. In general, there can be building of an nth order Markov model (n≧1) to predict the mth next encountered segment (m≧1). The generation nth order model can be denoted as:
Pn[X(m)]=P[X(m)|X(−n+1),X(−n+2), . . . ,X(0)]
There can be a note that the Markov model does not explicitly constrain a vehicle to adhere to the connectedness of the road network. A trained model could conceivably predict that a driver will jump over several road segments. However, since the model is trained from real data, where such jumps do not occur, the Markov model implicitly prevents such nonsense predictions. One advantage of probabilistic predictions is that the algorithm has a measure of its own uncertainty that can be usefully reported to in-vehicle applications. For instance, automatically engaging a turn signal might depend on near 100% prediction certainty, while presenting a point of interest would not require the same level of confidence.
Sometimes, there are fewer past road segments to examine, either because the trip just started or because there isn't a long enough match sequence in the driver's recorded history of road segments. Prediction accuracy can increase as the number of observed segments increases, meaning that a longer sequence of road segments is more indicative of the future. There can be a significant jump in prediction accuracy between one and two observed segments. This is because observing only one segment is not indicative of a driver's direction, meaning that the vehicle could be heading toward either end of the current segment. Observing two or more past segments indicates the driver's direction and reduces the possibilities for future segments.
Now referring to
An instigation component 204 can be used to determine when the system 200 should operate. Various different configurations can be used to identify when to operate the system 200. According to one embodiment, a check can be performed to determine if a travel decision point exists within a certain distance of a position—if there is a positive result, then the system 200 operates. In a different instance, the system 200 can be instigated at a user request, when multiple decision points are within a set distance, and the like. However, in another embodiment route prediction can virtually always operate when a vehicle implementing the system 200 is running. The route prediction can occur as soon as possible and as far out in the future as possible to provide enough notice to a user.
The instigation component 204 can determine that the system 200 should operate and an identifier component 206 can function to determine a travel history to obtain. For example, the identifier component 206 can determine if user history or if vehicle history should be used. User history can be retained in a separate location and thus a search component 208 can be employed to locate a travel history source. An obtainment component 210 can be used to collect the travel history from the located source.
Different pieces of information, such as the collected travel history, component operating instructions (e.g., communication component 202), source location, components themselves, etc. can be held on storage 212. Storage 212 can arrange in a number of different configurations, including as random access memory, battery-backed memory, hard disk, magnetic tape, etc. Various features can be implemented upon storage 212, such as compression and automatic back up (e.g., use of a RAID configuration). In addition, storage 212 can operate as memory that can be operatively coupled to a processor (not shown). A calculation component 104 can use a Markov model to compute a route likelihood as a function of a result of the evaluation. The calculation component 104 can function as means for determining likelihood of outcomes of the travel decision point through use of a Markov model and a product of the historical analysis. According to one embodiment, the Markov model can be computed offline and/or remotely based upon user history, such that a vehicle operating the system 200 does not need to be moving to calculate probabilities.
Now referring to
It can be a waste of resources to perform likelihood estimates on virtually all potential intersections that can be encountered by a vehicle. The system 300 can employ a recognition component 302 that identifies a potential travel space of the entity. Identification can occur through special analysis (e.g., intersections within a set radius of a user), through a set number of intersections (e.g., three degrees of separation from a current position), and the like. The recognition component 302 can operate as means for predicting the travel area, the travel area divided is the predicted travel area.
A partition component 304 can divide the potential travel space into segments (e.g., defined by road intersections). The calculation component 104 can compute the route likelihood through computation of how the entity travels upon termination of a segment (e.g., at an intersection, likelihood of a user turning left, right, or continuing straight). According to one embodiment, partitions can be limited to substantial user decisions (e.g., decisions a user is reasonably likely to take). For example, if a user has an option of continuing straight or turning on a highway run-off, the chance of the user taking the run-off can be so small that the division can be ignored. A balance can be made weighing the chance of a user taking a route against estimated resource consumption. The partition component 304 can function as means for dividing a travel area into at least one travel decision point.
An artificial intelligence component 306 operates the Markov model as well as be used in performing various determinations and inferences disclosed herein. The artificial intelligence component 306 can employ one of numerous methodologies for learning from data and then drawing inferences and/or making determinations related to dynamically storing information across multiple storage units (e.g., Hidden Markov Models (HMMs) and related prototypical dependency models, more general probabilistic graphical models, such as Bayesian networks, e.g., created by structure search using a Bayesian model score or approximation, linear classifiers, such as support vector machines (SVMs), non-linear classifiers, such as methods referred to as “neural network” methodologies, fuzzy logic methodologies, and other approaches that perform data fusion, etc.) in accordance with implementing various automated aspects described herein. In addition, the artificial intelligence component 306 can also include methods for capture of logical relationships such as theorem provers or more heuristic rule-based expert systems. The artificial intelligence component 208 can be represented as an externally pluggable component, in some cases designed by a disparate (third) party.
The Markov model can be applied upon the user history where there is prediction likelihood of different outcomes. A designation component 308 can identify a highest probability outcome of at least one travel decision point. Based upon the outcome of the designation component 308, a creation component 310 can produce an estimated route based upon highest probability of at least one travel decision point. Thus, outcomes of different decision points can be strung together such that an estimated route is produced.
According to one embodiment, the creation component 310 produces the estimated route based upon highest probability of at least one travel decision point and at least one contextual circumstance. For example, a user can come to an intersection and the Markov model can determine there is about 95% likelihood that a user turns right and about 5% likelihood that a user turns left. However, if the road available to the user by turning right is closed, then the creation component 310 can override a result of the Markov model to determine there is about 100% likelihood the user turns left. The creation component 310 can function as means for creating a travel route based upon a highest result of the determined likelihood for each travel decision point. According to one embodiment, the travel route is created based upon a highest result of the determined likelihood for each travel decision point and contextual information.
An observation component 312 can monitor user operation at a predicted intersection and compare how the user behaved against the prediction. The observation component 312 can implement as means for monitoring a result of at least one travel decision point. An update component 314 can add the observation to the travel history as well as apply a weight to the observation. The update component 314 can operate as means for retaining the result in conjunction with the history. For instance, more recent actions can be considered more relevant that more distant events. Additionally, the calculation component 104 can modify operation through use of a modification component 316 (e.g., modify operation of the Markov model).
Now referring to
Various uses can be made from the determined likelihoods. For example, the creation component 310 of
Now referring to
Travel history that relates to a user can be collected at action 504. For example, polling can occur to determine locations that include travel information and the information can be extracted and analyzed. At act 506, there can be identifying a journey resolution position, the journey resolution position includes at least two results. According to one embodiment, a remote identity can communicate journey resolution points of an area (e.g., such as a hosting device). However, analysis of a map can occur (e.g., optical scanning) and inferences can be made on what is an journey resolution point.
At action 508, there can be determining likelihood of at least one of the results of the journey resolution position occurring through use of a Markov model. A Markov model can be applied upon user history and percentages can be determined on how likely a user is to make a decision. At check 510, a determination can be made on if a user should be warned about a situation. If there is a situation determined by the check 510, then the user can be warned at act 512. For example, if a percentage identified reaches a certain threshold (e.g., above about 20%), then check 510 can determine that a user should be warned of hazards published by a government organization (e.g., department of transportation, municipal police force, etc.). Example warnings can include Anticipatory driver warnings (e.g., hazardous road conditions, unusually slow traffic, change in speed limit, curve speed warning, change in traffic patterns—such as due to construction, lane keeping assistance, lane change prediction and warning, etc.), driver information (e.g., points of interest, advertising, etc.), automatic vehicle behaviors (e.g., automatic turn signals, headlight pointing, wireless base station handoff, gradual windshield darkening for expected glare, engine load anticipation—such as cylinder deactivation, emergency preparation—such as pre-braking, seat belt tension, head rests . . . , etc.), and the like.
Regardless of the outcome of the check 510, action 514 can occur that include creating a route based upon the highest sequential determined likelihoods. According to one embodiment, the route is sequential, such that route choices are strung together. For instance, a user can have an ‘A-B’ decision point, where ‘A’ feeds into ‘C-D’ decision point and ‘B’ feeds into ‘E-F’ decision point. If ‘A’ has an about 60% chance and ‘B’ has an about 40% chance, then ‘A’ is selected as the route. To continue the route, ‘E’ and ‘F’ route decisions can be excluded since they are not decisions upon the ‘A’ route. This can take place even if ‘E’ or ‘F’ has a highest percentage, since there is a desire to make the route sequential.
Data pertaining to the decision point can be disclosed (e.g., to a user) at action 516. This can include identified journey resolution positions, associated percentages, warnings, a route, etc. At act 518, there can be observing how an entity responds to the journey resolution position. Based upon the observation, there can be updating a history for the entity based upon the observation at action 520.
Now referring to
A map area upon which a user has potential to travel can be collected at action 606. Based upon the collected map area, routes likely to be traveled upon by a user can be identified at act 608. For example, routes a user has physically past can be considered not likely since there can be a relatively small percentage that the user will travel in a reverse direction. The routes can be divided into intersections at event 610, which can represent identifying a journey resolution position, the journey resolution position includes at least two results. At event 612, there can be determining likelihood of at least one of the results of the journey resolution position occurring through use of a Markov model. A check 614 can be performed to determine if a likelihood is above a threshold (e.g., automatically determined, set by a user, etc.). If the likelihood is above a threshold, then information can be disclosed to a user or an entity (e.g., user personal electronic device, host computer, etc.) at act 612. If a likelihood is not above the threshold, then the methodology 600 can return to action 602 to identify a user location.
Now referring to
It is possible that there are multiple decision points and thus, an individual point can be selected at event 706. A check 708 can be performed to determine if there is a user history at the selected point. If there is user history, then the history can be accessed at action 710. A second check 712 can be performed independent of a result of the check 708 to determine if history of other users is available. The check can be global (e.g., any history available), specific (e.g., similar situated users—gender, age, vehicle content, and the like), etc. If content of other users is available, then the content can be accessed at act 714. Thus, history of more than one user can be taken into account when determining likelihood of an outcome for a travel decision point. While not explicitly shown, there can be an error message generated if there is no history that can be accessed, used, etc.
At action 716, there can be determining likelihood of at least one of the results of the journey resolution position occurring through use of a Markov model. A check 718 can determine if there is another individual point that should be selected and evaluated. If there is another point, then the methodology 700 can return to event 706 to select another point. If there is not another point for analysis, then results can be disclosed at act 720.
Now referring to
The determined likelihood can be presented to a user at event 806 (e.g., through a graphical user interface) and a user can provide feedback to the probabilities at action 808 (e.g., confirm likelihood, state likelihood is poor representation, and the like). Feedback can be gained explicitly (e.g., though asking the user), implicitly (e.g., observing user behavior), and the like. A check 810 can take place to determine if the user agreed with the likelihood. If the user agrees with the likelihood, then the model can be retained at act 812. In addition, the model can be considered more accurate, and thus it can become more difficult to modify the model. However, if the user does not agree with the model, then a comparison can be made between the estimate and how the user responded at event 814. Based upon an outcome of the comparison, the model can modified at action 816. According to one embodiment, a determination can be made based on the comparison if the difference is enough to warrant a modification of the model.
For purposes of simplicity of explanation, methodologies that can be implemented in accordance with the disclosed subject matter were shown and described as a series of blocks. However, it is to be understood and appreciated that the claimed subject matter is not limited by the order of the blocks, as some blocks can occur in different orders and/or concurrently with other blocks from what is depicted and described herein. Moreover, not all illustrated blocks can be required to implement the methodologies described hereinafter. Additionally, it should be further appreciated that the methodologies disclosed throughout this specification are capable of being stored on an article of manufacture to facilitate transporting and transferring such methodologies to computers. The term article of manufacture, as used, is intended to encompass a computer program accessible from any computer-readable device, carrier, or media.
As used herein, the terms to “infer” or “inference” refer generally to the process of reasoning about or deducing states of the system, environment, and/or user from a set of observations as captured via events and/or data. Inference can be employed to identify a specific context or action, or can generate a probability distribution over states, for example. The inference can be probabilistic—that is, the computation of a probability distribution over states of interest based on a consideration of data and events. Inference can also refer to techniques employed for composing higher-level events from a set of events and/or data. Such inference results in the construction of new events or actions from a set of observed events and/or stored event data, whether or not the events are correlated in close temporal proximity, and whether the events and data come from one or several event and data sources.
Furthermore, the claimed subject matter can be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a computer to implement the disclosed subject matter. The term “article of manufacture” as used herein is intended to encompass a computer program accessible from any computer-readable device, carrier, or media. For example, computer readable media can include but are not limited to magnetic storage devices (e.g., hard disk, floppy disk, magnetic strips . . . ), optical disks (e.g., compact disk (CD), digital versatile disk (DVD) . . . ), smart cards, and flash memory devices (e.g., card, stick, key drive . . . ). Additionally it should be appreciated that a carrier wave can be employed to carry computer-readable electronic data such as those used in transmitting and receiving electronic mail or in accessing a network such as the Internet or a local area network (LAN). Of course, those skilled in the art will recognize many modifications can be made to this configuration without departing from the scope or spirit of the claimed subject matter.
Moreover, the word “exemplary” is used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs. Rather, use of the word exemplary is intended to disclose concepts in a concrete fashion. As used in this application, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or”. That is, unless specified otherwise, or clear from context, “X employs A or B” is intended to mean any of the natural inclusive permutations. That is, if X employs A; X employs B; or X employs both A and B, then “X employs A or B” is satisfied under any of the foregoing instances. In addition, the articles “a” and “an” as used in this application and the appended claims should generally be construed to mean “one or more” unless specified otherwise or clear from context to be directed to a singular form.
In order to provide a context for the various aspects of the disclosed subject matter,
Referring now to
The system 900 also includes one or more server(s) 904. The server(s) 904 can also be hardware and/or software (e.g., threads, processes, computing devices). The servers 904 can house threads to perform transformations by employing the specification, for example. One possible communication between a client 902 and a server 904 can be in the form of a data packet adapted to be transmitted between two or more computer processes. The data packet can include a cookie and/or associated contextual information, for example. The system 900 includes a communication framework 906 (e.g., a global communication network such as the Internet) that can be employed to facilitate communications between the client(s) 902 and the server(s) 904.
Communications can be facilitated via a wired (including optical fiber) and/or wireless technology. The client(s) 902 are operatively connected to one or more client data store(s) 908 that can be employed to store information local to the client(s) 902 (e.g., cookie(s) and/or associated contextual information). Similarly, the server(s) 904 are operatively connected to one or more server data store(s) 910 that can be employed to store information local to the servers 904.
Referring now to
Generally, program modules include routines, programs, components, data structures, etc., that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the inventive methods can be practiced with other computer system configurations, including single-processor or multiprocessor computer systems, minicomputers, mainframe computers, as well as personal computers, hand-held computing devices, microprocessor-based or programmable consumer electronics, and the like, each of which can be operatively coupled to one or more associated devices.
The illustrated aspects of the specification can also be practiced in distributed computing environments where certain tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules can be located in both local and remote memory storage devices.
A computer typically includes a variety of computer-readable media. Computer-readable media can be any available media that can be accessed by the computer and includes both volatile and nonvolatile media, removable and non-removable media. By way of example, and not limitation, computer-readable media can comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer.
Communication media typically embody computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism, and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of the any of the above should also be included within the scope of computer-readable media.
With reference again to
The system bus 1008 can be any of several types of bus structure that can further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and a local bus using any of a variety of commercially available bus architectures. The system memory 1006 includes read-only memory (ROM) 1010 and random access memory (RAM) 1012. A basic input/output system (BIOS) is stored in a non-volatile memory 1010 such as ROM, EPROM, EEPROM, which BIOS contains the basic routines that help to transfer information between elements within the computer 1002, such as during start-up. The RAM 1012 can also include a high-speed RAM such as static RAM for caching data.
The computer 1002 further includes an internal hard disk drive (HDD) 1014 (e.g., EIDE, SATA), which internal hard disk drive 1014 can also be configured for external use in a suitable chassis (not shown), a magnetic floppy disk drive (FDD) 1016, (e.g., to read from or write to a removable diskette 1018) and an optical disk drive 1020, (e.g., reading a CD-ROM disk 1022 or, to read from or write to other high capacity optical media such as the DVD). The hard disk drive 1014, magnetic disk drive 1016 and optical disk drive 1020 can be connected to the system bus 1008 by a hard disk drive interface 1024, a magnetic disk drive interface 1026 and an optical drive interface 1028, respectively. The interface 1024 for external drive implementations includes at least one or both of Universal Serial Bus (USB) and IEEE 1394 interface technologies. Other external drive connection technologies are within contemplation of the subject specification.
The drives and their associated computer-readable media provide nonvolatile storage of data, data structures, computer-executable instructions, and so forth. For the computer 1002, the drives and media accommodate the storage of any data in a suitable digital format. Although the description of computer-readable media above refers to a HDD, a removable magnetic diskette, and a removable optical media such as a CD or DVD, it should be appreciated by those skilled in the art that other types of media which are readable by a computer, such as zip drives, magnetic cassettes, flash memory cards, cartridges, and the like, can also be used in the example operating environment, and further, that any such media can contain computer-executable instructions for performing the methods of the specification.
A number of program modules can be stored in the drives and RAM 1012, including an operating system 1030, one or more application programs 1032, other program modules 1034 and program data 1036. All or portions of the operating system, applications, modules, and/or data can also be cached in the RAM 1012. It is appreciated that the specification can be implemented with various proprietary or commercially available operating systems or combinations of operating systems.
A user can enter commands and information into the computer 1002 through one or more wired/wireless input devices, e.g., a keyboard 1038 and a pointing device, such as a mouse 1040. Other input devices (not shown) can include a microphone, an IR remote control, a joystick, a game pad, a stylus pen, touch screen, or the like. These and other input devices are often connected to the processing unit 1004 through an input device interface 1042 that is coupled to the system bus 1008, but can be connected by other interfaces, such as a parallel port, an IEEE 1394 serial port, a game port, a USB port, an IR interface, etc.
A monitor 1044 or other type of display device is also connected to the system bus 1008 via an interface, such as a video adapter 1046. In addition to the monitor 1044, a computer typically includes other peripheral output devices (not shown), such as speakers, printers, etc.
The computer 1002 can operate in a networked environment using logical connections via wired and/or wireless communications to one or more remote computers, such as a remote computer(s) 1048. The remote computer(s) 1048 can be a workstation, a server computer, a router, a personal computer, portable computer, microprocessor-based entertainment appliance, a peer device or other common network node, and typically includes many or all of the elements described relative to the computer 1002, although, for purposes of brevity, only a memory/storage device 1050 is illustrated. The logical connections depicted include wired/wireless connectivity to a local area network (LAN) 1052 and/or larger networks, e.g., a wide area network (WAN) 1054. Such LAN and WAN networking environments are commonplace in offices and companies, and facilitate enterprise-wide computer networks, such as intranets, all of which can connect to a global communications network, e.g., the Internet.
When used in a LAN networking environment, the computer 1002 is connected to the local network 1052 through a wired and/or wireless communication network interface or adapter 1056. The adapter 1056 can facilitate wired or wireless communication to the LAN 1052, which can also include a wireless access point disposed thereon for communicating with the wireless adapter 1056.
When used in a WAN networking environment, the computer 1002 can include a modem 1058, or is connected to a communications server on the WAN 1054, or has other means for establishing communications over the WAN 1054, such as by way of the Internet. The modem 1058, which can be internal or external and a wired or wireless device, is connected to the system bus 1008 via the input device interface 1042. In a networked environment, program modules depicted relative to the computer 1002, or portions thereof, can be stored in the remote memory/storage device 1050. It will be appreciated that the network connections shown are example and other means of establishing a communications link between the computers can be used.
The computer 1002 is operable to communicate with any wireless devices or entities operatively disposed in wireless communication, e.g., a printer, scanner, desktop and/or portable computer, portable data assistant, communications satellite, any piece of equipment or location associated with a wirelessly detectable tag (e.g., a kiosk, news stand, restroom), and telephone. This includes at least Wi-Fi and Bluetooth™ wireless technologies. Thus, the communication can be a predefined structure as with a conventional network or simply an ad hoc communication between at least two devices.
Wi-Fi, or Wireless Fidelity, allows connection to the Internet from a couch at home, a bed in a hotel room, or a conference room at work, without wires. Wi-Fi is a wireless technology similar to that used in a cell phone that enables such devices, e.g., computers, to send and receive data indoors and out; anywhere within the range of a base station. Wi-Fi networks use radio technologies called IEEE 802.11 (a, b, g, etc.) to provide secure, reliable, fast wireless connectivity. A Wi-Fi network can be used to connect computers to each other, to the Internet, and to wired networks (which use IEEE 802.3 or Ethernet). Wi-Fi networks operate in the unlicensed 2.4 and 5 GHz radio bands, at an 11 Mbps (802.11a) or 54 Mbps (802.11b) data rate, for example, or with products that contain both bands (dual band), so the networks can provide real-world performance similar to the basic 10BaseT wired Ethernet networks used in many offices.
The aforementioned systems have been described with respect to interaction among several components. It should be appreciated that such systems and components can include those components or sub-components specified therein, some of the specified components or sub-components, and/or additional components. Sub-components can also be implemented as components communicatively coupled to other components rather than included within parent components. Additionally, it should be noted that one or more components could be combined into a single component providing aggregate functionality. The components could also interact with one or more other components not specifically described herein but known by those of skill in the art.
What has been described above includes examples of the subject specification. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the subject specification, but one of ordinary skill in the art can recognize that many further combinations and permutations of the subject specification are possible. Accordingly, the subject specification is intended to embrace all such alterations, modifications and variations that fall within the spirit and scope of the appended claims. Furthermore, to the extent that the term “includes” is used in either the detailed description or the claims, such term is intended to be inclusive in a manner similar to the term “comprising” as “comprising” is interpreted when employed as a transitional word in a claim.
Number | Name | Date | Kind |
---|---|---|---|
5493692 | Theimer et al. | Feb 1996 | A |
5544321 | Theimer et al. | Aug 1996 | A |
5555376 | Theimer et al. | Sep 1996 | A |
5603054 | Theimer et al. | Feb 1997 | A |
5611050 | Theimer et al. | Mar 1997 | A |
5812865 | Theimer et al. | Sep 1998 | A |
5948040 | DeLorme et al. | Sep 1999 | A |
5978732 | Kakitani et al. | Nov 1999 | A |
6084543 | Iizuka | Jul 2000 | A |
6092014 | Okada | Jul 2000 | A |
6122572 | Yavnai | Sep 2000 | A |
6154745 | Kari et al. | Nov 2000 | A |
6292687 | Lowell et al. | Sep 2001 | B1 |
6317718 | Fano | Nov 2001 | B1 |
6321161 | Herbst et al. | Nov 2001 | B1 |
6353398 | Amin et al. | Mar 2002 | B1 |
6418424 | Hoffberg et al. | Jul 2002 | B1 |
6466232 | Newell et al. | Oct 2002 | B1 |
6480783 | Myr | Nov 2002 | B1 |
6513046 | Abbott, III et al. | Jan 2003 | B1 |
6549915 | Abbott, III et al. | Apr 2003 | B2 |
6574351 | Miyano | Jun 2003 | B1 |
6611754 | Klein | Aug 2003 | B2 |
6615130 | Myr | Sep 2003 | B2 |
6618593 | Drutman et al. | Sep 2003 | B1 |
6672506 | Swartz et al. | Jan 2004 | B2 |
6700504 | Aslandogan et al. | Mar 2004 | B1 |
6741188 | Miller et al. | May 2004 | B1 |
6747675 | Abbott et al. | Jun 2004 | B1 |
D494584 | Schlieffers et al. | Aug 2004 | S |
6791580 | Abbott et al. | Sep 2004 | B1 |
6796505 | Pellaumail et al. | Sep 2004 | B2 |
6801223 | Abbott et al. | Oct 2004 | B1 |
6812937 | Abbott et al. | Nov 2004 | B1 |
6837436 | Swartz et al. | Jan 2005 | B2 |
6842877 | Robarts et al. | Jan 2005 | B2 |
6889382 | Anderson | May 2005 | B1 |
6931598 | Price et al. | Aug 2005 | B2 |
6954735 | Djupsjobacka et al. | Oct 2005 | B1 |
7010501 | Roslak et al. | Mar 2006 | B1 |
7040541 | Swartz et al. | May 2006 | B2 |
7063263 | Swartz et al. | Jun 2006 | B2 |
7069310 | Bartholomew | Jun 2006 | B1 |
7071842 | Brady, Jr. | Jul 2006 | B1 |
7171378 | Petrovich et al. | Jan 2007 | B2 |
7195157 | Swartz et al. | Mar 2007 | B2 |
7200566 | Moore et al. | Apr 2007 | B1 |
7227498 | Soliman | Jun 2007 | B2 |
7233861 | Van Buer et al. | Jun 2007 | B2 |
7245925 | Zellner | Jul 2007 | B2 |
7246007 | Ferman | Jul 2007 | B2 |
7385501 | Miller et al. | Jun 2008 | B2 |
7386477 | Fano | Jun 2008 | B2 |
7403774 | Chandra et al. | Jul 2008 | B2 |
7536258 | Kudo et al. | May 2009 | B2 |
7577522 | Rosenberg | Aug 2009 | B2 |
7589628 | Brady, Jr. | Sep 2009 | B1 |
7596513 | Fargo | Sep 2009 | B2 |
7610151 | Letchner et al. | Oct 2009 | B2 |
7617042 | Horvitz et al. | Nov 2009 | B2 |
7634463 | Katragadda et al. | Dec 2009 | B1 |
7676583 | Eaton et al. | Mar 2010 | B2 |
7720715 | Nemer | May 2010 | B1 |
7743048 | Baldwin | Jun 2010 | B2 |
7743056 | Meisels et al. | Jun 2010 | B2 |
7788030 | Kato et al. | Aug 2010 | B2 |
7797267 | Horvitz | Sep 2010 | B2 |
7813870 | Downs et al. | Oct 2010 | B2 |
7835859 | Bill | Nov 2010 | B2 |
7899611 | Downs et al. | Mar 2011 | B2 |
7912637 | Horvitz et al. | Mar 2011 | B2 |
8005822 | Rechis et al. | Aug 2011 | B2 |
8020104 | Robarts et al. | Sep 2011 | B2 |
8024112 | Krumm et al. | Sep 2011 | B2 |
8027788 | Miyata | Sep 2011 | B2 |
8131467 | Yoshioka et al. | Mar 2012 | B2 |
20010029425 | Myr | Oct 2001 | A1 |
20010030664 | Shulman et al. | Oct 2001 | A1 |
20010040590 | Abbott et al. | Nov 2001 | A1 |
20010040591 | Abbott et al. | Nov 2001 | A1 |
20010043231 | Abbott et al. | Nov 2001 | A1 |
20010043232 | Abbott et al. | Nov 2001 | A1 |
20020002504 | Engel et al. | Jan 2002 | A1 |
20020032689 | Abbott, III et al. | Mar 2002 | A1 |
20020044152 | Abbott, III et al. | Apr 2002 | A1 |
20020052786 | Kim et al. | May 2002 | A1 |
20020052930 | Abbott et al. | May 2002 | A1 |
20020052963 | Abbott et al. | May 2002 | A1 |
20020054130 | Abbott, III et al. | May 2002 | A1 |
20020054174 | Abbott et al. | May 2002 | A1 |
20020078204 | Newell et al. | Jun 2002 | A1 |
20020080155 | Abbott et al. | Jun 2002 | A1 |
20020080156 | Abbott et al. | Jun 2002 | A1 |
20020083025 | Robarts et al. | Jun 2002 | A1 |
20020083158 | Abbott et al. | Jun 2002 | A1 |
20020087525 | Abbott et al. | Jul 2002 | A1 |
20020099817 | Abbott et al. | Jul 2002 | A1 |
20030046401 | Abbott et al. | Mar 2003 | A1 |
20030154476 | Abbott, III et al. | Aug 2003 | A1 |
20030172368 | Alumbaugh et al. | Sep 2003 | A1 |
20030229471 | Guralnik et al. | Dec 2003 | A1 |
20030229895 | Jasinschi et al. | Dec 2003 | A1 |
20040017392 | Welch | Jan 2004 | A1 |
20040019603 | Haigh et al. | Jan 2004 | A1 |
20040068364 | Zhao et al. | Apr 2004 | A1 |
20040125144 | Yoon | Jul 2004 | A1 |
20040153445 | Horvitz et al. | Aug 2004 | A1 |
20040189475 | Cooper et al. | Sep 2004 | A1 |
20040201500 | Miller et al. | Oct 2004 | A1 |
20040267965 | Vasudevan et al. | Dec 2004 | A1 |
20040268403 | Krieger et al. | Dec 2004 | A1 |
20050021417 | Kassan | Jan 2005 | A1 |
20050034078 | Abbott et al. | Feb 2005 | A1 |
20050091118 | Fano | Apr 2005 | A1 |
20050097005 | Fargo | May 2005 | A1 |
20050144318 | Chang | Jun 2005 | A1 |
20050182645 | Ehlis et al. | Aug 2005 | A1 |
20050216186 | Dorfman et al. | Sep 2005 | A1 |
20050219120 | Chang | Oct 2005 | A1 |
20050228553 | Tryon | Oct 2005 | A1 |
20050266858 | Miller et al. | Dec 2005 | A1 |
20050272442 | Miller et al. | Dec 2005 | A1 |
20060019676 | Miller et al. | Jan 2006 | A1 |
20060070012 | Milener et al. | Mar 2006 | A1 |
20060138219 | Brzezniak et al. | Jun 2006 | A1 |
20060146834 | Baker et al. | Jul 2006 | A1 |
20060195789 | Rogers et al. | Aug 2006 | A1 |
20060241862 | Ichihara et al. | Oct 2006 | A1 |
20060271286 | Rosenberg | Nov 2006 | A1 |
20070010942 | Bill | Jan 2007 | A1 |
20070033516 | Khosla et al. | Feb 2007 | A1 |
20070042790 | Mohi et al. | Feb 2007 | A1 |
20070060108 | East et al. | Mar 2007 | A1 |
20070073477 | Krumm et al. | Mar 2007 | A1 |
20070083497 | Martinez | Apr 2007 | A1 |
20070118279 | Kudo | May 2007 | A1 |
20070129072 | Yamato et al. | Jun 2007 | A1 |
20070156334 | Vu | Jul 2007 | A1 |
20070208991 | Rider | Sep 2007 | A1 |
20070219706 | Sheynblat | Sep 2007 | A1 |
20080004802 | Horvitz | Jan 2008 | A1 |
20080005055 | Horvitz | Jan 2008 | A1 |
20080016055 | Riise et al. | Jan 2008 | A1 |
20080021628 | Tryon | Jan 2008 | A1 |
20080027632 | Mauderer | Jan 2008 | A1 |
20080088424 | Imura et al. | Apr 2008 | A1 |
20080090591 | Miller et al. | Apr 2008 | A1 |
20080091537 | Miller et al. | Apr 2008 | A1 |
20080126191 | Schiavi | May 2008 | A1 |
20080140712 | Weber et al. | Jun 2008 | A1 |
20080161018 | Miller et al. | Jul 2008 | A1 |
20080243370 | Loera et al. | Oct 2008 | A1 |
20080247377 | Van Horn et al. | Oct 2008 | A1 |
20080261516 | Robinson | Oct 2008 | A1 |
20080263036 | Yamamoto | Oct 2008 | A1 |
20080268870 | Houri | Oct 2008 | A1 |
20080275632 | Cummings | Nov 2008 | A1 |
20080288494 | Brogger et al. | Nov 2008 | A1 |
20090003252 | Salomone et al. | Jan 2009 | A1 |
20090005067 | Ernst et al. | Jan 2009 | A1 |
20090006297 | Horvitz et al. | Jan 2009 | A1 |
20090036148 | Yach | Feb 2009 | A1 |
20090037838 | Gedye et al. | Feb 2009 | A1 |
20090040954 | Usuba | Feb 2009 | A1 |
20090174540 | Smith | Jul 2009 | A1 |
20090319672 | Reisman | Dec 2009 | A1 |
20100036601 | Ozawa et al. | Feb 2010 | A1 |
20100070171 | Barbeau et al. | Mar 2010 | A1 |
20100082436 | Maghoul et al. | Apr 2010 | A1 |
20100106603 | Dey et al. | Apr 2010 | A1 |
20100188575 | Salomons et al. | Jul 2010 | A1 |
20100198860 | Burnett et al. | Aug 2010 | A1 |
20100248746 | Saavedra et al. | Sep 2010 | A1 |
20100305848 | Stallman | Dec 2010 | A1 |
20100317374 | Alpert et al. | Dec 2010 | A1 |
20100332315 | Kamar et al. | Dec 2010 | A1 |
20100333137 | Hamano et al. | Dec 2010 | A1 |
20110004513 | Hoffberg | Jan 2011 | A1 |
20110075598 | Jalfon et al. | Mar 2011 | A1 |
20110085447 | Kholaif et al. | Apr 2011 | A1 |
20110150107 | Jung et al. | Jun 2011 | A1 |
20110319094 | Usui et al. | Dec 2011 | A1 |
20130077546 | Liu et al. | Mar 2013 | A1 |
20130195091 | Gibbs et al. | Aug 2013 | A1 |
Number | Date | Country |
---|---|---|
10042983 | Mar 2002 | DE |
1085484 | Mar 2001 | EP |
1929456 | Jun 2008 | EP |
2114103 | Nov 2009 | EP |
2293016 | Mar 2011 | EP |
2007083678 | Mar 1995 | JP |
2008271277 | Oct 1996 | JP |
10132593 | May 1998 | JP |
2011153446 | Aug 1999 | JP |
2002328035 | Nov 2002 | JP |
2004317160 | Nov 2004 | JP |
19970071404 | Nov 1997 | KR |
20040033141 | Apr 2004 | KR |
20040050550 | Jun 2004 | KR |
20040078955 | Sep 2004 | KR |
20050035336 | Apr 2005 | KR |
20050045716 | May 2005 | KR |
20050105139 | Nov 2005 | KR |
8141 | Oct 1998 | RU |
WO9800787 | Jan 1998 | WO |
WO2004044605 | May 2004 | WO |
WO2007040891 | Apr 2007 | WO |
Entry |
---|
Froehlich and Krumm. “Route Prediction from Trip Observations, in Society of Automotive Engineers (SA E) World Congress.” 2008, Paper Jan. 1, 2008 95: Detroit, Michigan USA. |
Karbassi and Barth, “Vehicle Route Prediction and Time of Arrival EstimationTechniques for Improved Transportation SystemManagement, in Intelligent Vehicles Symposium.” 2003. p. 51 1-516. |
Krumm, “Real Time Destination Prediction Based on Efficient Routes. SAE 2006Transactions Journal of Passenger Cars—Electronic and Electrical Systems”, 2006. |
Krumm and Horvitz, “Predestination: Inferring Destinations from Partial Trajectories,in Eighth International Conference on Ubiquitous Computing,” (UbiComp 2006). 2006: OrangeCounty, California, USA. p. 241-260. |
Krumm et al., “Map Matching with Travel Time Constraints, in Society of Automotive Engineers (SAE) 2007World Congress,” 2007, Paper Jan. 1, 2007—102:Detroit, Michigan USA. |
Patterson et al., “Inferring High-Level Behavior from Low-Level Sensors, in UbiComp 2003: Ubiquitous Computing,” 2003, Springer: Seattle, Washington USA. p. 73-89. |
Agne Brilingaite. Online route prediction for automotive applications. http://www.cs.aau.dk/˜csj/Papers/Files/2006—brilingaitelTSS.pdf. Last accessed May 14, 2008, 9 pages. |
Simmons et al. “Learning to Predict Driver Route and Destination Intent, in 2006 IEEE Intelligent Transportation Systems Conference,” 2006: Toronto, Canada. p. 127-1 32. |
Torkola et al.“Traffic Advisories Based on Route Prediction, in Workshop on Mobile Interaction with the Real World (MIR W 2007),” 2007: Singapore. |
Kari Laasonen. Route Prediction from Cellular Data. http://www.cs.helsinki.fi/group/context/pubs/caps05.pdf. Last accessed May 14, 2008, 10 pages. |
Peter Lamb, et al. Avoiding Explicit Map-Matching in Vehicle Location. http://users.rsise.anu.edu.au/˜thiebaux/papers/its99.doc. Last accessed May 14, 2008, 9 pages. |
“Smart WiFi for Android,” S4BB Limited, retrieved on Nov. 4, 2011 from <<http://www.s4bb.com/software/smartwifi/smartwifi-for-android/>>, 5 pages. |
Benzoon, “SmartWiFi for BlackBerry: A Battery Power Optimizer,” retrieved on Nov. 4, 2011 at <<http://www.blackberryinsight.com/2011/06/03/smartwifi-for-blackberry-a-battery-power-optimizer/>>, Jun. 3, 2011, 10 pages. |
Spreitzer et al., “Architectural Considerations for Scalable, Secure, Mobile Computing with Location Information,” In the 14th International Conference on Distributed Computing Systems, Jun. 1994, pp. 29-38. |
Spreitzer et al., “Providing Location Information in a Ubiquitous Computing Environment,” SIGOPS '93, Dec. 1993, pp. 270-283. |
Spreitzer et al., “Scalable, Secure, Mobile Computing with Location Information,” Communications of the ACM, Jul. 1993, vol. 36, No. 7, p. 27. |
Starner, “Wearable Computing and Contextual Awareness,” Massachusetts Institute of Technology, Jun. 1999, 248 pages. |
Tanaka et al, “A Destination Predication Method Using Driving Contents and Trajectory for Car Navigation Systems,” SAC'09, Mar. 2009, pp. 190-195. |
Theimer et al., “Operating System Issues for PDAs,” In Fourth Workshop on Workstation Operating Systems, Oct. 1993, 7 pages. |
van Setten et al, “Context-Aware Recommendations in the Mobile Tourist Application COMPASS,” AH 2004, Eindhoven, The Netherlands, LNCS 3137, Springer-Verlag, Aug. 2004, pp. 235-244. |
Want et al, “Active Badges and Personal Interactive Computing Objects,” IEEE Transactions on Consumer Electronics, Feb. 1992, vol. 38, No. 1, pp. 10-20. |
Want et al., “The Active Badge Location System,” ACM Transactions on Information Systems, Jan. 1992, vol. 10, No. 1, pp. 91-102. |
Weiser, “Some Computer Science Issues in Ubiquitous Computing,” Communications of the ACM, Jul. 1993, vol. 36, No. 7, pp. 75-84. |
Weiser, “The Computer for the 21st Century,” Scientific American, Sep. 1991, pp. 94-104. |
Workshop on Wearable Computing Systems, Aug. 19-21, 1996, 3 pages. |
Beard, et al., “Estimating Positions and Paths of Moving Objects”, Seventh International Workshop on Temporal Representation and Reasoning (TIME 2000), Jul. 2000, 8 pages. |
Choi, et al., “Performance Evaluation of Traffic Control Based on Geographical Information”, IEEE International Conference on Intellegent Computing and Intelligent Systems (ICIS2009), Dec. 2009, pp. 85-89. |
International Search Report dated Jan. 15, 2007 for PCT Application Serial No. PCT/US2006/034608, 3 pages. |
Translation of JP Office Action dated May 31, 2011 for JP Patent Appln 2008-533377, 6 pages. |
Krumm, et al., “Predestination: Where Do You Want to Go Today?”, Computer, vol. 40, Issue 4, Apr. 2007, pp. 105-107. |
Lee, et al., “Design and implementation of a movement history analysis framework for the taxi telematics system”, Proceedings of the 14th Asia-Pacific Conference on Communications (APCC2008), Oct. 2008, 4 pages. |
Liu, et al., “Remaining Delivery Time Estimation based Routing for Intermittently Connected Mobile Networks”, 28th International Conference on Distributed Computing Systems Workshops, Jun. 2008, pp. 222-227. |
Miyashita, et al., “A Map Matching Algorithm for Car Navigation Sytems that Predict User Destination”, Advanced Information Networking and Applications (AINAW) Workshops 2008, Mar. 2008, 7 pages. |
Sananmongkhonchai, et al., “Cell-based Traffic Estimation form Mutliple GPS-Equipped Cars”, IEEE Region 10 Conference, TENCONN 2009, Jan. 2009, 6 pages. |
Terada, et al., “Design of a Car Navigation System that Predicts User Destination”, Proceedings of the 7th International Conference on Mobile Data Management (MDM'06), May 2006, 6 pages. |
Vaughan-Nichols, “Will Mobile Computing's Future be Location, Location, Location?”, Computer, vol. 42, Issue 2, Feb. 2009, pp. 14-17. |
Wei, et al., “Development of Freeway Travel Time Forecasting Models by Integrating Different Sources of Traffic Data”, IEEE Transactions on Vechicular Technology, vol. 56, No. 6, Nov. 2007, pp. 3682-3694. |
Wu, et al., “A Dynamic Navigation Scheme for Vehicular Ad Hoc Networks”, Latest Trends on Communications, Aug. 2010, pp. 85-90. |
Xie, et al., “Development of Navigation System for Autonomous Vehicle to Meet the DARPA Urban Grand Challenge”, Proceedings of the IEEE Intelligent Transportation Systems Conference, Sep. / Oct. 2007, pp. 767-772. |
Ye, et al., “Predict Personal Continuous Route”, Proceedings of the 11th International IEEE Conference on Intelligent Transportation Systems, Oct. 2008, pp. 587-592. |
Brush, et al., U.S. Appl. No. 12/970,974, “Mobile Search Based on Predicted Location”, filed Dec. 17, 2010. |
Viola, et al., U.S. Appl. No. 13/088,040, “Suggestive Mapping,” filed Apr. 15, 2011. |
“About Project Playlist,” retrieved on Apr. 9, 2008 from <<http://www.playlist.com/statc/node/491.html>>, 3 pages. |
Bhawalkar et al., “ScheduleNanny Using GPS to Learn the User's Significant Locations, Travel Times and Schedule,” retrieved at <<http://arxiv.org/ftp/cs/papers/0409/0409003.pdf>>, Sep. 2, 2004, 7 pages. |
Biegel et al., “A Framework for Developing Mobile, Context-Aware Applications,” Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications, 2004, Mar. 14-17, 2004, 5 pages. |
Billinghurst et al., “An Evaluation of Wearable Information Spaces,” Proceedings of the Virtual Reality Annual International Symposium, Mar. 1998, 8 pages. |
Billinghurst, “Research Directions in Wearable Computing,” University of Washington, May 1998, 48 pages. |
Billinghurst et al., “Wearable Devices: New Ways to Manage Information,” IEEE Computer Society, Jan. 1999, pp. 57-64. |
Bisdikian et al., “Intelligent Pervasive Middleware for Context-Based and Localized Telematics Services,” Sep. 2002, pp. 15-24. |
“Changes to Lists on Spaces with the Last Release”, retrieved on Apr. 9, 2008 at <<http://thespacecraft.spaces.live.com/blog/cns!8AA 773FEOA 1289E3!36422.entry>>, 4 pages. |
Chen et al., “A Survey of Context-Aware Mobile Computing Research,” Dartmouth Computer Science Technical Report, Nov. 2000, 16 pages. |
Coactive TV, Teleshuttle, retrieved on Mar. 28, 2011 at <<http://teleshuttle.com/CoTV/>>, 2 pages. |
“Configuring Multiple SSIDs,” Cisco IOS Software Configuration Guide for Cisco Aironet Access Points 12.3(7)JA, retrieved from ,,http://www.cisco.com/en/US/docs/wireless/access—point/12.3—7—JA/configuration/guide/s37ssid.html>> on Nov. 4, 2011, 5 pages. |
Console et al, “Adaptation and Personalization on Board Cars: A Framework and Its Application to Tourist Services,” Adaptive Hypermedia and Adaptive Web-Based Systems, Lecture Notes in Computer Science, vol. 2347-2006, Springer-Verlag Berlin, Heidelberg, May 2002, pp. 112-121. |
Extended European Search Report for EP 07796299.1 dated Oct. 12, 2011, 7 pages. |
Falaki, “WLAN Interface Management on Mobile Devices,” University of Waterloo, Waterloo, Ontario, Canada, 2008, 88 pages. |
Harter et al., “A Distributed Location System for the Active Office,” IEEE Network, Jan./Feb. 1994, pp. 62-70. |
Horvitz et al., “Attention-Sensitive Alerting,” Proceedings of the UAI' 99 Conference on Uncertainty and Artificial Intelligence, Jul. 1999, 10 pages. |
Horvitz et al., “Attention-Sensitive Alerting in Computing Systems,” Microsoft Research, Aug. 1999, 26 pgs. |
Horvitz et al, “Bayesphone: Precomputation of Context-Sensitive Policies for Inquiry and Action in Mobile Devices,” Proceedings of the Tenth Conference on User Modeling (UM 2005), Jul. 2005, Edinburgh, Scotland, 11 pages. |
Horvitz et al, “Coordinate: Probabilistic Forecasting of Presence and Availability,” Eighteenth Conference on Uncertainty and Artificial InteliiQence, Jul. 2002, pp. 224-233. |
Horvitz et al., “Display of Information for Time-Critical Decision Making,” Proceedings of the Eleventh Conference on Uncertainty in Artificial Inteligence, Aug. 1995, 10 pages. |
Horvitz et al., “In Pursuit of Effective Handsfree Decision Support: Coupling Bayesian Inference, Speech Understanding, and User Models,” 1995, 8 pages. |
Horvitz et al., “Learning and Reasoning about Interruption,” Fifth International Conference on Multimodal Interfaces, Nov. 2003, pp. 20-27. |
Horvitz et al., “Mobile Opportunistic Planning: Methods and Models,” Proceedings of the Eleventh Conference on User Modeling (UM 2005), Jun. 2007, Corfu, Greece, pp. 238-247. |
Joachims, “Text Categorization with Support Vector Machines: Learning with Many Relevant Features,” Machine Learning, European Conference on Machine Learning, Apr. 21, 1998, pp. 137-142. |
Kamar et al., “Mobile Opportunistic Commerce: Mechanisms, Architecture, and Application,” Proceedings of AAMAS 2008, Estoril, Portugal, May 2008, 8 pages. |
Kargl et al., “Smart Reminder—Personal Assistance in a Mobile Computing Environment,” Pervasive 2002, Zurich, Switzerland, Aug. 26-28, 2002, 6 pages. |
Kostove et al., “Travel Destination Prediction Using Frequent Crossing Pattern from Driving History,” Proceedings fo the 8th International IEEE Conference on Intelligent Transportation Systems, Vienna, Austria, Sep. 13-16, 2005, pp. 970-977. |
Machine translation of submitted KR Application: KR-2003-0070622, Pub KR20050035336, published Apr. 18, 2005, 9 pgs. |
Machine translation of submitted KR Application: KR-2005-0096785, Pub KR20050105139, published Nov. 3, 2005, 4 pages. |
Krumm et al., “Predestination: Inferring Destinations from Partial Trajectories,” UbiComp 2006: Eighth International Conference on Ubiquitous Computing, Sep. 2006, 18 pages. |
Krumm, “Where Will They Turn: Predicting Turn Proportions At Intersections,” Personal and Ubiquitous Computing (2010), 14:7, Oct. 2010, 13 pgs. |
Letchner et al., “Trip Router with Individualized Preferences (TRIP): Incorporating Personalization into Route Planning,” Eighteenth Conference on Innovative Applications of Artificial Intelligence, Jul. 2006, 6 pages. |
Liu et al, “Location Awareness Through Trajectory Prediction,” Department of Information Science and Telecommunications, University of Pittsburgh, Pittsburgh, Pennsylvania, May 2006, pp. 1-38. |
Losee, Jr., “Minimizing information overload: the ranking of electronic messages,” Journal of Information Science 15, Elsevier Science Publishers BV, Jun. 1989, pp. 179-189. |
Mapquest.com Features, retrieved on Oct. 27, 2010 at <<http://features.mapquest.com/>> 3 pages. |
“Nagra's cross-device user experience wins, “Advanced User Interface” Award at TV 3.0 conference,” retrieved on Mar. 28, 2011 at <<ttp://www.advanced-television.tv/index.php/2010/12/21/nagra%E2%80%99s-cross-device-user-experience-wins-%E2%80%9Cadvanced-user-interface%E2%80%9D-award-at-tv-3-0-conference/>>, 4 pages. |
Orebaugh et al, “Wireless Sniffing with Wireshark,” Wireshark & Ethereal Network Protocol Analyzer Toolkit, Chapter 6, Sep. 2006, pp. 6:1-6:104. |
PCT International Search Report dated Sep. 29, 2003 for PCT Application Serial No. 00/20685, 5 Pages. |
PCT International Search Report and Written Opinion for PCT/US20071014405 dated Dec. 11, 2007, 6 pages. |
Persad-Maharaj et al., “Real-Time Travel Path Prediction Using GPS-Enabled Mobile Phones,” Presented at the 15th World Congress on Intelligent Transportation Systems, New York, New York, Nov. 16-20, 2008. Paper # 30413, 12 pages. |
Publicis & Yahoo Team for Cross-Carrier Marketing, retrieved Mar. 28, 2011 at <<http://www.mobilemarketingwatch.com/tag/cross-device-marketing/>>, 4 pages. |
Rhodes et al, “Remembrance Agent: A continuously running automated information retrieval system,” The Proceedings of the First International Conference on the Practical Application of Intelligent Agents and Multi Agent Technology, Apr. 1996, pp. 487-495. |
Rhodes, “The Wearable Remembrance Agent: A System for Augmented Theory,” The Proceedings of the First International Symposium on Wearable Computers, Oct. 1997, 9 pages. |
Schilit et al., “Context-Aware Computing Applications,” In Proceedings of the Workshop on Mobile Computing Systems and Applications, Dec. 1994, pp. 85-90. |
Schilit et al., “Customizing Mobile Applications,” Proceedings USENIX Symposium on Mobile and Location Independent Computing, Aug. 1993, 9 pages. |
Schilit et al., “Disseminating Active Map Information to Mobile Hosts,” IEEE Network, Sep.-Oct. 1994, vol. 8-No. 5, pp. 1-23. |
Schilit et al., “The ParcTab Mobile Computing System,” IEEE WWOS-IV, Oct. 1993, 4 pages. |
Schilit, “A System Architecture for Context-Aware Mobile Computing,” Columbia University, 1995, 153 pages. |
Krumm, et al., U.S. Appl. No. 12/170,068, “Route Prediction”, filed Jul. 9, 2008. |
Horvitz, et al., U.S. Appl. No. 60/721,879, “Predestination”, filed Sep. 29, 2005. |
International Search Report & Written Opinion for PCT Patent Application No. PCT/US2013/050963, dated Nov. 8, 2013, 14 pages. |
Partial Supplementary European Search Report dated Jan. 22, 2015 for European Patent Application No. 13754084.5, 5 pages. |
Office Action for U.S. Appl. No. 12/970,974, dated Mar. 6, 2013, Brush, “Mobile Search Based on Predicted Location”, 15 pages. |
Office Action for U.S. Appl. No. 13/407,181, dated Aug. 28, 2014, Chandra et al. “Energy Efficient Maximization of Network Connectivity”, 14 pages. |
Final Office Action for U.S. Appl. No. 12/970,974, dated Sep. 12, 2013, Brush, “Mobile Search Based on Predicted Location”, 16 pages. |
European Office Action dated Jun. 9, 2015 for European patent application No. 13754084.5, a counterpart foreign application of U.S. Appl. No. 13/407,181, 6 pages. |
Supplementary European Search Report dated May 18, 2015 for European Patent Application No. 13754084.5, 5 pages. |
Office action for U.S. Appl. No. 13/407,181, dated Mar. 27, 2015, Chandra et al., “Energy Efficient Maximization of Network Connectivity”, 21 pages. |
Office action for U.S. Appl. No. 13/407,181, dated May 26, 2016, Chandra et al., “Energy Efficient Maximization of Network Connectivity”, 18 pages. |
European Office Action dated Dec. 12, 2016 for European Patent Application No. 16184375.0, a counterpart foreign application of U.S. Appl. No. 13/407,181, 6 pages. |
Supplementary European Search Report dated Nov. 30, 2016 for European Patent Application No. 16184375.0, 4 pages. |
Office Action for U.S. Appl. No. 13/407,181, dated Nov. 23, 2016, Chandra et al. “Energy Efficient Maximization of Network Connectivity,” 20 pages. |
Number | Date | Country | |
---|---|---|---|
20100010733 A1 | Jan 2010 | US |