Sign In to Follow Application
View All Documents & Correspondence

"Traffic Forecasting Employing Modeling And Analysis Of Probabilistic Interdependencies And Contextual Data"

Abstract: Systems and methods are described for constructing predictive models, based on statistical machine learning, that can make forecasts about traffic flows and congestions, based on an abstraction of a traffic system into a set of random variables, including variables that represent the amount of time until there will be congestion at key troublespots and the time until congestions will resolve. Observational data includes traffic flows and dynamics, and other contextual data such as the time of day and day of week, holidays, school status, the timing and nature of major gatherings such as sporting events, weather reports, traffic incident reports, and construction and closure reports. The forecasting methods are used in alerting, the display graphical information about predictions about congestion on desktop on mobile devices, and in offline and real-time automated route recommendations and planning.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
20 September 2005
Publication Number
40/2009
Publication Type
INA
Invention Field
COMPUTER SCIENCE
Status
Email
Parent Application

Applicants

MICROSOFT CORPORATION
ONE MICROSOFT WAY, REDMOND, WASHINGTON 98052, USA.

Inventors

1. ERIC J. HORVITZ
ONE MICROSOFT WAY, REDMOND, WASHINGTON 98052, USA.
2. JOHNSON T. APACIBLE
ONE MICROSOFT WAY, REDMOND, WASHINGTON 98052, USA.
3. RAMAN K. SARIN
ONE MICROSOFT WAY, REDMOND, WASHINGTON 98052, USA.

Specification

Title TRAFFIC FORECASTING EMPLOYING MODELING AND ANALYSIS OF PROBABILISTIC INTERDEPENDENCIES AND CONTEXTUAL DATA
REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U S Provisional Application
Serial No 60/628,267 filed on November 16, 2004, and entitled SYSTEM AND METHOD FOR PREDICTION AND PRESENTATION OF ATYPICAL EVENTS This application is also related to attorney docket number MS311463 01/MSFTP915US, entitled PRECOMPUTATION AND TRANSMISSION OF TIME-DEPENDENT INFORMATION FOR VARYING OR UNCERTAIN RECEIPT TIMES, attorney docket number MS311464 01/MSFTP916US, entitled BUILDING AND USING PREDICTIVE MODELS OF CURRENT AND FUTURE SURPRISES, and attorney docket number MS311466 01/MSFTP917US, entitled METHODS FOR AUTOMATED AND SEMIAUTOMATED COMPOSITION OF VISUAL SEQUENCES, FLOWS, AND FLYOVERS BASED ON CONTENT AND CONTEXT, each filed on June 30, 2005 The entireties of these applications are incorporated herein by reference
BACKGROUND
[0002] Electronic storage mechanisms have enabled accumulation of massive
amounts of data For instance, data that previously required volumes of books for
recordation can now be stored electronically without expense of printing paper and
with a fraction of space needed for storage of paper In one particular example, deeds
and mortgages that were previously recorded in paper volumes can now be stored
electronically Moreover, advances in sensors and other electronic mechanisms now
allow massive amounts of data to be collected in real-time For instance, GPS
systems can determine location of an individual or entity by way of satellites and GPS
receivers Electronic storage devices connected thereto can then be employed to
retain locations associated with such systems Various other sensors and data
collection devices can also be utilized for obtainment and storage of data
[0003] Collected data relating to particular contexts and/or applications can be
employed in connection with data trending and analysis, and predictions can be made as a function of received and analyzed data Such prediction is, in fact, human nature,
and individuals frequently generate such predictions For instance, a person traveling between a place of employment and a place of residence can determine that during certain times of day within weekdays traffic conditions are subject to high levels of congestion Thus, prior to leaving a place of work, an individual can predict when and where he will most likely to be slowed in traffic, and can further predict how long they will be subject to congestion The individual's predictions can further be a function of other variables, such as weather, whether a day is a holiday, events that are geographically proximate, and the like Thus, when an individual has access to contextual information and has access to (e g, by way of memory) historical data, the individual can generate predictions
[0004] Predictive models utilized on computer systems can often produce
more accurate predictive results than a human, as computer systems may have access
to a substantial amount of data For instance, a computer application can have access
to data that represents traffic patterns over twenty years, whereas an individual may
have experienced traffic patterns for less than a year These predictive models can be
quite effective when generating predictions associated with common occurrences
[0005] Predictive models, however, can fail when associated with events that
are atypical or surprising Reasons for failure can include lack of understanding of a situation, lack of contemplation of a situation, infrequency of occurrence of an event, and a variety of other factors Alerting an individual of a surprising event, however, is more critical than alerting the individual of a typical event, because such individual may very well have predicted the typical event without aid of a predictive application Developing a methodology for identifying events that one or more users would find surprising can be valuable as users do not need to be alerted about situations that they expect A system could provide value to users by reasoning about when the information would surprise a user Moreover, a system that could predict when a user would be surprised in the future would be valuable in giving forewarning to users about future states of the world, giving them time to take action such as finding a new alterative or developing a modified plan
SUMMARY
[0006] The following presents a simplified summary m order to provide a
basic understanding of some aspects described herein This summary is not an extensive overview of the claimed subject matter, and is not intended to identify
key/cntical elements or to delineate the scope of the claimed subject matter Its sole purpose is to present some concepts m a simplified form as a prelude to the more detailed description that is presented later
[0007] The claimed subject matter provides systems and methods for utilizing
a predictive model component to generate predictions relating to various applications More specifically, a predictive model can be employed to predict occurrence of atypical or surprising events In one particular example, the predictive model can be employed to predict traffic patterns in a particular range (e g, a city) Data can be collected from sensors associated with roadways, including fixed magnetic, optical, acoustical, or radar-centric sensors installed on or near roadways, visual analysis of scenes captured by video cameras, information gleaned from GPS logging occurring m fleets of vehicles such as might be available from instrumented buses, taxis, delivery vehicles, and the dynamics of signal strengths, such as GSM earner signals, sensed by cell phones, or sensed at the antennae of cell phone providers, contextual data such as day of week, time of day, and the like, whether there are events within defined range (e g, sporting events), whether a day under consideration is a holiday, weather conditions, current traffic conditions, previous traffic conditions, incident reports that might be generated in free text with or without a formal coding, as well as other suitable data relevant to a traffic-pattern predictive application While traffic patterns are one exemplary application, aspects of the claimed subject matter can be employed in various contexts For instance, lines at an amusement park, stock market prediction and analysis, the availability and presence of one of more individual at different times, the time until a message such as an email message will be reviewed by a user, sales analysis of items or a plurality of items at various sales locations, and the like are exemplary contexts in which one or more aspects of the claimed subject matter can be employed
[0008] Returning to prediction of traffic patterns, a surprising event can be
defined as one that a human would not expect to occur given current contextual data For instance, an accident can occur at one part of a city, and an individual typically will not expect such accident to affect traffic patterns at a disparate part of a city The predictive model, however, can learn that the accident together with other data (e g, a particular weather pattern, an occurrence of a sporting event, and so on) can cause traffic pattern alterations m a disparate portion of the city These alterations can be an abnormal occurrence, for instance, at given times the occurrence of the predicted
event can be below a pre-defined threshold Thus, when an event that is deemed as
abnormal or as one that would surprise a population of users with expectations about
traffic is predicted by the predictive model, it can be displayed to a user as surprising
event, or pushed to the user as an alert that they might be interested in learning about
[0009] There are various manners m which anomalous, atypical, or surprising
events can be defined For example, a surprising event can be user-specific, where an
event that is unexpected by a particular user (regardless of a probability of occurrence
of an event) occurs For instance, an atypical event can be defined as an event
associated with a probability of occurring or not occurring above or below a pre
defined threshold For example, for a particular region of a road system, and for a
particular day of week and span of time of day, it maybe surprising if there is a jam,
or if traffic is flowing smoothly A threshold on a small probability can be utilized,
below which the event can be considered as bemg surprising to a population of users
Case libraries can be generated that support such definitions, and the predictive model
can be built as a function of the case libraries In another example, events can be
associated with probabilities of occurring, and anomalous events can be defined as
events that are associated with probabilities that are a threshold number of standard
deviations away from a mean probability It can be determined that any suitable
manner for defimng anomalous events is contemplated Different models for defining
surprise can also be made available for selection by one or more users Also, richer
user models can be constructed that predict situations that may surprise a user
Machine learning can be used to build such user models from data for different users
[0010] Furthermore, a predictive model can be associated with a model
analyzer that monitors the predictive model For example, the predictive model can predict the times until traffic jams or bottlenecks will form at different locations, and the times until a jam, once formed, will melt away into a flow The accuracy of predictions about the occurrence of surprising events can also be monitored with a specified probability For each of these kinds of predictions, and others, the model analyzer can compare the predictions with occurrence of actual events over time, and thus monitor performance of the predictive model The model analyzer can then automatically tune the predictive model to improve performance thereof or can simply relay to users when a prediction is likely to be accurate versus inaccurate depending on the context In one approach to doing such automated reflection about the accuracy of predictions, a case library can be constructed of all prediction errors
beyond a certain divergence from real-world outcomes, and also all observations available to a system at the time of the base prediction Then, machine learning can be used to build predictive models about the performance of the base-level accuracies of the system, conditioned on all of the observational and contextual data available to the system Such meta-level models that describe the accuracy of base-level predictions can be tested to confirm their accuracy If the models are accurate, they can be executed together with the base-level predictions and can provide annotations about the likely accuracy of the base level predictions as a function of details about the observations and context In another analysis, known as boosting, cases that are known as failures can be collected and can receive special modeling attention For example, the failed cases can be weighted differently or handled by one or more special models m machine learning algorithms
[0011] To the accomplishment of the foregoing and related ends, certain
illustrative aspects of the claimed subject matter are described herein in connection with the following description and the annexed drawings These aspects are indicative, however, of but a few of the various ways m which the principles of the claimed subject matter may be employed and such claimed matter is intended to include all such aspects and their equivalents Other advantages and novel features may become apparent from the following detailed description when considered in conjunction with the drawings
BRIEF DESCRIPTION OF THE DRAWINGS
[0012] Fig 1 is a high-level block diagram of a system that facilitates
generating predictions of surprising events
[0013] Fig 2 is a block diagram of a system that facilitates retrieving
contextual data and utilizing the received contextual data m connection with generating predictions of surprising events
[0014] Fig 3 is a block diagram of a system that facilitates analyzing and
automatically updating a predictive model that predicts occurrence of surprising events m the future
[0015] Fig 4 is a block diagram of a system that facilitates generating
predictions of surprising events
[0016] Fig 5 is a block diagram of a system that facilitates building a
predictive model that can predict future occurrences of surprising events
[0017] Fig 6 is a flow diagram illustrating a methodology for predicting
future occurrences of events that would be surprising to a user
[0018] Fig 7 is a flow diagram illustrating a methodology for predicting
future occurrences of surprising events
[0019] Fig 8 is a flow diagram illustrating a methodology for automatically
updating a predictive model
[0020] Fig 9 is a flow diagram illustrating a methodology for creating a
predictive model that can predict future occurrences of surprising events
[0021 ] Fig 10 is an exemplary screenshot of a tool that enables users to
customize alerts according to defined routes and times of travel
[0022] Figs 11 and 12 are exemplary screenshots illustrating one or more
novel aspects of the claimed subject matter
[0023] Figs 13 - 16 are exemplary networks illustrating interdependences
between variables utilized m connection with predicting future occurrences of
surprising events
[0024] Figs 17 and 18 are exemplary graphs illustrating historical data that
can be utilized in connection with one or more aspects of the claimed subject matter
[0025] Fig 19 is an exemplary network illustrating interdependencies between
variables utilized m connection with predicting occurrences of surprising
[0026] Fig 20 is a screenshot illustrating a practical application of one or
more aspects of the claimed subject matter
[0027] Fig 21 is an exemplary network illustrating mterdependencies between
variables utilized in connection with predicting occurrences of surprising events
[0028] Fig 22 is a screenshot illustrating a practical application of one or
more aspects of the claimed subject matter
[0029] Fig 23 is an exemplary network illustrating interdependencies between
variables utilized in connection with predicting occurrences of surprising events
[0030] Fig 24 is a screenshot illustrating a practical application of one or
more aspects of the claimed subject matter
[0031] Figs 25-29 are screenshots illustrating one or more practical
applications of various aspects of the claimed subject matter
[0032] Fig 30 is a depiction of an exemplary mobile device that can be
employed m connection with one or more aspects of the claimed subject matter
[0033] Fig 31 is a schematic block diagram illustrating a suitable operating
environment
[0034] Fig 32 is a schematic block diagram of a sample-computing
environment with which the claimed subject matter
DETAILED DESCRIPTION
[0035] 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 may be evident, however, that such claimed matter may 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
[0036] As used in this application, the terms "component" and "system" are
intended to refer to a computer-related entity, either hardware, a combination of hardware and software, software, or software m execution For example, a component may 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 a computer By way of illustration, both an application running on a server and the server can be a component One or more components may reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers 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
[0037] Automated reasoning systems (e g, explicitly and/or implicitly trained
generative and discriminatory classifiers) can be employed in connection with performing inference and/or probabilistic determinations and/or statistical-based determinations as in accordance with one or more aspects of the claimed subject matter as described hereinafter As used herein, the term "inference" refers generally to the process of reasoning about or inferring 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 Various classification schemes and/or systems (e g, support vector machines, HMMs, Markov processes, neural networks, graphical probabilistic models, such as Bayesian networks, dynamic Bayesian networks, and continuous time Bayesian networks, logic-based reasoning systems, and fuzzy logic) can be employed in connection with performing automatic and/or inferred action in connection with the claimed subject matter
[0038] Furthermore, the claimed subject matter may 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 claimed subject matter The term "article of manufacture" as used herein is intended to encompass a computer program accessible from any computer-readable device, earner, 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 earner wave can be employed to carry computer-readable electronic data such as those used m transmitting and receiving electronic mail or in accessing a network such as the Internet or a local area network (LAN) Of course, those skilled m the art will recognize many modifications may be made to this configuration without departing from the scope or spmt of the claimed subject matter
[0039] One or more features desenbed herein are applicable to the emerging
class of mobile computing devices called smartphones as well as other types of portable devices including cell-phones and PDAs By way of example, several aspects will be discussed with relation to smartphones, however it should be appreciated that the claimed subject matter can be applied to or used in conjunction with vanous other portable devices Moreover, the claimed subject matter is further
applicable for utilization m stationary computer devices, such as desktop PCs, as well as computing devices mounted on/in vehicles
[0040] Smartphones combine the portability and network connectivity of cell-
phones with the computing power of PDAs The color displays of smartphones are capable of animation and usually have resolutions in the range of 200 by 200 pixels Many of these devices do not have touch screens and even those that do are often used in one-handed situations Most smartphones augment the numeric keypad with a four-way directional keypad (d-pad) or joystick. In addition there are several dedicated buttons (back, home, and action) and two "soft-keys" that can be arbitrarily assigned functionality by the current application
[0041 ] The claimed subject model further relates to utilizing a predictive
model to generate predictions relating to various patterns, such as traffic patterns,
market patterns, or any other suitable context Moreover, the claimed subject matter
provides a mechanism for defining surprising situations, predicting surprising
situations, and presenting such predicted surprising situations to a user (together with
a calculated probability of occurrence of the predicted surprising situation)
[0042] The claimed subject matter will now be described with respect to the
drawings, where like numerals represent like elements throughout Referring now to Fig 1, a system 100 that facilitates generating predictions relating to various patterns (e g, traffic patterns) and delivering such predictions to a user is illustrated The system 100 includes a predictive model component 102 (hereinafter referred to as a predictive model) that is utilized to generate predictions associated with various contexts, such as traffic patterns, sales patterns, market patterns, etc In one particular example, the predictive model 102 can be employed to generate predictions relating to traffic patterns m a particular region (e g, a city, a portion of a city, ) More specifically, the predictive model 102 can predict/estimate an amount of tune it will take for a road or entire commute path to de-congest - or to become congested Thus, a user can review output of the predictive model 102 and make driving decisions based thereon (e g, what time to leave a workplace, a best route to take, ) Such analyses can also be used m conjunction with information drawn from a user's calendar, about when and where their next meeting is, so as to provide guidance on when to leave for a meeting If a meeting is a first meeting of the day and a user is currently at home, the methods could extend to a smart alarm clock, waking the user up earlier if they are likely to encounter difficulties with a commute, or allowing a
user to sleep in if traffic promises to be light on the way to a meeting While the above example refers to employing the predictive model 102 m the context of predicting traffic patterns, it is to be understood that the predictive model 102 can be employed m a variety of other contexts
[0043] The predictive model 102 can be based upon any known data modeling
technique In one example, the predictive model 102 can be based upon a Bayesian network and employ various machine learning techniques to optimize predictions output from such predictive model 102 Bayesian networks are directed acyclic graphs of nodes that represent random variables and arcs that represent dependence relations between nodes (variables) Thus, for example, if an arc exists from a first node to a second node, then the first node is said to be a parent of the second node If the node is associated with a known value, it is referred to as an evidence node Nodes can represent any suitable type of variable - for instance, nodes can represent observed measurements, parameters, latent variables, or hypothesis Thus, in drawings described herein, nodes can represent contextual data such as day of week or time of day, as well as status of traffic at a particular location, and various other variables Machine learning refers to an area of artificial intelligence concerned with development of techniques that allow computers to "leam" predictive or explanatory models from sets of observations More particularly, machine learning can relate to methods for creating and/or modifying computer programs based at least in part upon an analysis of data set(s) Thus, if collected data shows that a certain portion of a road is blocked at a particular amount of time at a certain time on specific days, the predictive model 102 can watch such blockage and refine and optimized predictions based upon this pattern
[0044] Enabling optimal/desirable operation of the predictive model 102
necessitates receipt of a substantial amount of data Referring specifically to prediction of traffic patterns, data can be collected from various sensors on roadways, traffic reports translated to machine-readable language, an aggregation of GPS data, monitoring hand-shaking between cell phones and towers as users traverse through a region - as either observed at the cell phones or at the cell towers, and various other manners of collecting data from users Moreover, data such as weather conditions, such as visibility, precipitation, and temperature (e g, freezing) (collected from web sites, a radio station, or other suitable source), calendar information (such as time of day, day of week, month, and the like), whether a major event, such as a sporting
event, parade, movie opening, political events, and the like, is occurring in the contemplated geographic region or associated regions, holiday status (major holiday, banking holiday, school holiday, etc), and any other data that may be related to traffic can be collected For instance, ongoing free text or coded reports from government or private traffic monitoring departments can be collected The collection can occur through websites, through translation of natural spoken language, through sensors, user input, or any other suitable manner Again, it is to be understood that predictmg traffic patterns is merely one exemplary application in which one or more aspects described herem can be employed - various aspects, including market analysis, are contemplated by the inventor and are intended to fall under the scope of the hereto-appended claims
[0045] Upon building the predictive model 102, contextual data as well as
historical data can be received by the predictive model 102 As described above, such data can be collected through various sensors as well as websites and calendars For instance, the data can include time of a sporting event, tune of a concert, current time of day, amount of current traffic, and any other suitable data This data can be delivered to the predictive model 102, which can thereafter generate predictions relating to the application for which the predictive model 102 is designed Returning again to the traffic pattern prediction application, the predictive model 102 can output predicted congestions, predicted time until a current congestion is cleared and a standard deviation associated with such prediction, and any other suitable predictions relating to traffic patterns For instance, information output to a user can be color-coded to relay rate of travel and density of vehicles to a user In a specific example, when there is an uninhibited and rapid flow of traffic, portions of a graphical depiction of a highway system can be associated with the color green As roadways become more congested, the color can alter from green to yellow, from yellow to red, and from red to black, wherein each alteration indicates a disparate rate of travel The information output to the user can relate to current conditions (e g, traffic conditions) and/or relate to predicted future conditions
[0046] With still more detail with regards to traffic, particular portions of
roadways can be selected with respect to which data is provided to a user For instance, cities can be associated with a set of well-known "hotspots" that lay at the focus of attention of commuters and traffic reporters during commuting Identification of such locations (e g, bottlenecks) enables a more focused modeling
and alerting, wherein alerts can relate to a set of events and states highly relevant to a user Such a framing aids in reduction of parameter space of learning and inference effort utilized in designing the predictive model 102 as well as providing a representation of traffic issues that is easily communicated to users To determine whereabouts of such locations, system-wide traffic flow data can be analyzed to obtain information relating to percent of congestion and time of congestion, wherein the percent of congestion can be altered Utilizing such an analysis can enable determination of a location of bottlenecks in a system, and the predictive model 102 can be built accordingly, where the predictive model 102 can generate inferences relating to expected time until occurrence of a level of traffic congestion, a predicted time that such level of congestion will remain, and the like Additional data relating to traffic flow can also be collected and utilized by a predictive model For instance, data relating to traffic patterns, which can be static and/or dynamical data relating to flows and jams (congestions) in different parts of a traffic system, including time since jams have occurred, extent (how long of a segment) and texture of ajam (e g, solid jam, mixture of flows, etc) tune since ajam has melted, changes of flows within a region that had been jammed solidly, etc Thus any suitable data relating to context, dynamics, and/or current/previous traffic data can be utilized
[0047] In more detail, given sufficient data collected by way of the
mechanisms/methods described above, machine learning can be employed to learn about the probability distributions over future trends as a function of time and other contextual information For example, m a traffic application, flow of traffic m particular portions can be monitored over time, and machine learning techniques can be employed to predict such flows given current observations For instance, a user can travel over a particular route from an office to a place of residence, and such route can be learned over time Furthermore, contextual data associated with the route can be collected, and machine learning methods/mechanisms can be utilized on the collected data Thereafter, given current observations associated with the route, inferences can be generated with respect to the route and the user can be provided with alerts and/or data associated with the route
[0048J For instance, the predictive model 102 can guide in creation of a
proposed traffic route given particular data relating to traffic For instance, the predictive model 102 can propose a route to a user given current status of traffic In
another example, the predictive model 102 can utilize marginal or mean traffic flow expectations based on the consideration of such evidence as time of day and day of week and key current jam problems to guide m creation of a proposed route from a point of beginning to an endpomt (e g, from a place of business to a residence, from a current traffic position to a residence, ) In still another example, the predictive model 102 can generate probabilistic forecasts about future traffic flows m different regions to guide the creation of traffic route planning Furthermore, given current locatmg information (and direction of travel), the predictive model 102 can guide m re-planmng a proposed traffic route during a drive based on an attempt to minimize total driving time For instance, GPS can be employed to locate a user currently and utilized in connection with providing information on traffic now and predicted traffic events in the direction of travel
[0049] Furthermore, the predictive model 102 can predict occurrence of
surprising events given the contextual data and/or histoncal data (e g , both contextual data and histoncal data may not be required to generate a prediction of an anomalous occurrence/event), where a surprising event is one that would surprise a particular user or set of users To enable prediction of surprising events, definitions relating to the surprising events can be generated For one example, a probability of occurrence of an event can be analyzed to determine whether an event is surprising More specifically, a high and low probability threshold can be defined, wherein a user of the system 100 would either expect an event to occur or not expect an event to occur with a particular probability If the probabilities of such occurrences he outside the threshold, a user can be notified of a predicted surprising event For a specific example, a user can expect to travel a particular portion of highway without congestion given past experience and current context Due to other events not thought relevant to the user or not contemplated by the user (but known to be relevant to the predictive model 102), the portion of highway can be predicted as congested at a probability above the defined threshold The predictive model 102 can thereafter provide the user with this predicted surprising event/occurrence together with a probability of such occurrence, thereby enabling the user to travel a disparate route and/or leave at a different time if the user so chooses Moreover, disparate models can be associated with the predictive model 102 to ascertain accuracy of the predictive model 102 The predictive model 102 can then be tuned as a function of the ascertained accuracy
[0050] Discussing with more specificity surprising events, such
events/occurrences can be defined as unexpected events to a user The system 100 can utilize representational, inferential, and decision making methods that can be employed to forecast surprising events/occurrences that arise at future times The system 100 can apply to prediction of surprising outcomes in a context, surprising failures of a system's or person's ability to understand, solve, or predict future problems as a function of encountering unexpected situations or incompetencies in one's own abilities to face the future based on sensed or observed situations, etc Learning and reasoning about future surprising events extends to learning and reasoning about future unmodeled situations Surprising events for individuals and/or automated reasoning systems can be categorized as either (1) an event that is not explicitly considered by an observer (e g, events that are not modeled), and (2) an event that is assigned a low or high probability, lower and/or higher than a threshold probability of occurring In addition, outcomes or situations that are considered to be significantly surprising often have a significant influence (positive or negative) on utility of an observer who is surprised by the unexpected or unmodeled event To briefly summarize, surprising events/occurrences can be identified explicitly but are not expected to occur, or are not expected to occur within a threshold probability, or are events/occurrences not modeled or reasoned about (e g, they he outside a scope of what is being modeled) In practice, many events can occur that are not considered explicitly, however, when such events occur they can influence utility of one or more agents, and are therefore considered surprising
[0051] Conventional systems and methodologies for detecting surprising
events from data center upon identification of surprises m present or past These conventional systems/methodologies, however, do not forecast or predict future surprising events, situations, or occurrences Predicting future surprising events/situations/occurrences can prove valuable for preparing individuals, organizations, and systems for events that they do not expect to occur or are not considering at all To generate this model within the system 100, the predictive model 102 can include a "world" model that predicts events in the future as a function of present and past observations The predictive model 102 can also compare a likelihood of future outcomes to a model of what an observer expects based on past and present observations Future surprising instances can be defined m terms of future expectations or "models of typicality " Thus, in order to generate a model for
forecasting surprising instances, a definition of expected outcomes and surprising outcomes can be generated
[0052] Such a definition can be simple, such as "a future surprising instance
occurs when something occurs m the future of some consequence positive or negative to the observer that the observer did not expect to happen" or did not ever represent nor think about as feasible because of biases m reasoning about typicality coupled with representational and computational limitations Other possible definitions of future surprising instances include an occurrence of a situation that an observer or automated reasoning system had represented implicitly or explicitly but had assigned a likelihood smaller than a probability threshold x of occurring Such probability thresholds can be created as functions of an event type or implications of an event Observers or computing systems can assess, represent, or implicitly leverage a probability distribution over disparate probabilities of an event One rationale that may be considered m connection with designing the predictive model 102 to generate predictions surprising events with respect to an observer is that the observations and outcomes that are considered explicitly in forecasting situations may be different for a model representing an observer's outlook on events (e g, using background statistics based on a subset of variables) than for the richer probabilistic model (e g, considering higher-order interactions among the same variables, or among larger sets of observational variables and outcomes of interest), and the predicted future outcomes predicted by richer models can diverge significantly from a more simple observer model Specifically, observers often do not contemplate or comprehend interaction of variables that can cause occurrence of an unexpected even A richer, probabilistic model takes mto account this interaction of variables, as well as other variables not contemplated by the observer Thus, predicted future outcomes generated by rich, probabilistic models can differ drastically from predicted outputs of an observer-based model
[0053] In one exemplary approach, the predictive model 102 (which can
include a plurality of models) can include statistical machine learning methods such as learning procedures for building Bayesian network models, and temporal variants, including dynamic Bayesian networks, and continuous time Bayesian networks, as well as other statistical classifiers, such as supportive vector machines and neural net methods Predictive models can be constructed by way of structure search and parameter optimization to design models that can best explain data about base level

inferences and about surprising instances In one exemplary creation of the predictive model 102, a case library capturing cases or situations where world outcomes are defined as surprising in the context of an observer model can be built and analyzed Such training sets (the case library) will differ depending on the world events and the definition of a surprising event
[0054] Given a case library (not shown) of sets of observations at some time
tO about a situation, whether or not events at some future time t>t0, or, for instance, within segments of time t3—15, in the future are defined as surprising can be considered The predictive model 102 can thus be built to forecast surprises, at different future times, as a function of data within the case library Such model 102 can be focused only on events that have some positive or negative influence on utility greater than some thresholds or different thresholds depending on the type of event Models of future surprising events can be defined and focused based on a nature of mean costs associated with the surprising instance and/or of atypically costly outcomes that can be avoided if action is taken in advance Analogously, the predictive model 102, designed as a surprising instance forecasting system, can include models that forecast potentially beneficial surprises, for which actions could garner or further enhance a positive nature associated with a benefit or unexpected benefits coming from outcomes In a competitive situation, decision models coupled with the expectations of an adversary could be used to generate surprises or negative surprises for an adversary, or surprising situations that tend to have benefits for allies and costs for adversaries
[0055] In building the predictive model 102 by way of accumulated case
libraries, such libraries can be focused on only surprising future events that are considered to likely influence the utility of an observer in a negative way, or can be focused only on future events that will likely influence users in a positive way The events can focus on surprises of either likely negative or positive kind The events can also be of poorly characterized utility—as a number of events can be simply surprising to a set of observers, such as the discovery of intelligent life from another solar system in a time in the future Surprising events also include those not linked to the observers' utility, but can be linked by way of the utility of others, where a surprise is partly defined by empathetic reflection For example, an observer may find it surprising to learn that at a future time a pandemic has killed several million people in Southeast Asia
10056] As an example of a model of surprising events, second-order
probability distributions on beliefs about a long-term probability can be considered by the system 100 and/or the predictive model 102 in reasoning about surprising events/conditions For example, a Beta distribution can be used to model the probability distribution over different long-run probabilities of a series of flips of a com of unknown properties An surprising instance about the long-term probability can be defined in terms of a current mean and sample size, which yields a probability distribution over the mean that may be tight, or have increasingly large variances, capturing a lessening of confidence in the long-term probability given prior observations A surprising future outcome can also be defined in terms of a current probability distribution over long-term probabilities, where a system is more surprised in situations where one or more outcomes (e g, a series of outcomes of a coin flip) has a mean probability that is represented as having a probability of lower than some threshold probability, in the context of a current probability distribution over the long-term probabilities
[0057] In a general machine learning approach to building and using the
predictive model 102 to predict surprising events and/or occurrences, the system 100
can model future surprising events or anomalies by considenng cases of unexpected
outcomes m a future time, defined as some number of minutes m the future, coupled
with the observations m the present time To build the predictive model 102, a case
library can be constructed and models can be built and tested with holdout data to
probe the predictive accuracy of the surprising instance forecasting
[0058] As an example for defining expectation and surprise m one approach,
probability distributions over scalar-valued variables defining events of importance can be employed by the predictive model 102 to define surprising outcomes For example, traffic volumes that influence flows at different potential bottleneck regions of a city's highway system can be considered If the probability distribution of volumes at each potential bottleneck at a time 30 mmutes from observation time is represented and conditioned on a set of influencing variables, such as one or more statistics on recent history of traffic flows for that bottleneck and other bottlenecks as well as the time of day and day of week, holiday status, and other potentially important influencing variables such as the status of accidents and their time and degree throughout the highway system, construction status, weather and visibility, and start and end of major events like sporting games, ballet, and theater, a probability
distribution over the flows of bottlenecks for different contextual situations, captured
by the settings of the variables, can be recorded and encoded
[0059] In one exemplary creation of the predictive model 102, a central
tendency as a model of expectation of an observer, given the probability concentrated in this region, can be utilized Thereafter a case library of cases where the outcome was a much lower or higher volumes can be built More specifically, cases can be identified where there are unexpected or surprising volumes of traffic, where volume is some number of standard deviations higher and lower than the mean—and such identified cases can be considered surprising The predictive model 102 can therefore include a predictive model of cases where there is likely to be such a situation, as a probabilistic model of surprise
[0060] Thus, an assumption can be made that commuters traveling through
regions of potential bottlenecks may have an expectation based on a mean or central
mass of the probability distribution at some target number of minutes m the future
based on current observations Thus, an "observer's" model of expectations, which
can be included within the predictive model 102, might be encoded as a mean +/- a
standard deviation In a more sophisticated model that can be employed within the
predictive model 102, the differences m inferential abilities or evidence considered in
the aforementioned observers model can solely be considered explicitly For
example, for the observer's model, the means and variances associated with a few
basic contextual pieces of evidence can be considered, such as time of day and day of
week, and the consideration of subtle sets of findings that may interact to produce
surprising flows can be removed To pick surprising cases for training, cases
associated with very high and very low flows at different points in the future can be
selected, and all observational variables at a current time in a training set for machine
learning of models that can predict surprising instances can be noted
[0061] Focusmg on the example, an observer's model, for example, can
consider the volume of traffic at a potential bottleneck region in 30 minutes to be a function of a set of observations now and the last 30 minutes based on the following function
Volume in 30 minutes =y(volume Bottleneck 1 now (bnl), time of day, day of week)
This information is encoded as a mean and standard deviation The predictive model 102, however, can employ a more sophisticated world model that can consider additional variables and their dependencies, and can encode the volume as a Bayesian network, as in the following
Volume in 30 minutes at Bottleneck 1 now (bnl) —f( volume bnl-bn30 now, volume trend bnl-bn30 last 30 min, time of day, day of week, volume m 30 mmutes to include, Somes game start time status, holiday status, precipitation status)
[0062] If both models are executed on received observations, predictions
generated relating to the bottleneck in 30 mmutes can be very different, and such differences can be employed to determine instances where the predictions in 30 minutes will likely surprise an observer In a second approach, a set of cases where a user would have been surprised can be encoded, and the predictive model 102 can directly encode surprising situations for an observer based at least in part upon a set of findings Thus, the predictive model 102 can discover that certain settings of interdependent variables lead to "surprising" (e g, atypical or anomalous) high or low volumes from the point of view of simpler model of mean and standard deviation Surprising real-world events predicted by the predictive model 102 can be constructed, and compared to expected the outcomes predicted by an observer at a future time of interest (e g, 15 minutes from now, 30 minutes from now, 1 hour from now, or within time t from now), and models of surprise via machine learning to build predictive models of surprise can be constructed
[0063] In yet another approach, models that do not reason about specific types
of events directly but about higher-level properties of surprises, atypicahties, and/or anomalies conditioned on occurrence thereof can be employed in connection with the predictive model 102 For example, whether a surprising instance within some time frame, should it come, will be of a particular class can be predicted As an example, data associated with properties of surprising events of the highest degree that had occurred with a past year with respect to an observer can be collected, and statistics relating thereto can be employed as a model for reasoning about potential surprising instances in the future For example, a set of properties associated with events that were the top n most surprising events of each of the past 10 years, in private or public realms, can be assessed These marginal statistics can be utilized to order properties of future surprising instances should they occur For example, "involves a group of
coordinated activities that had been cloaked from view," "involves financial instruments that had not been modeled explicitly," etc
[0064] Machine learning can be utilized also to reason about future situations
that are associated with outcomes that will be especially challenging or difficult, as possible outcomes may have not yet been modeled or situations can exist where the predictive model 102 can determine that it is incompetent m certain circumstances By way of an aforementioned approach, situations can be captured where an outcome was discovered to not be explicitly modeled within the predictive model 102 or other models or that a system failed m a surprising manner A case library of cases about a forthcoming likely failure like this can be analyzed m connection with such utilization of machine learning For building a predictive model of forthcoming unmodeled situations or incompetencies based in the poor handling of unmodeled situations, or simply identifying unmodeled situations, a case library of situations of forthcoming unmodeled situations or poor responses can be built, and such situations can be predicted by way of the predictive model 102 Predictive power of the constructed predictive model 102 can be tested by way of constructing the predictive model 102 from a training set of cases, and testing predictive power of such the model 102 against set test data retained for such purpose
[0065] Another approach to building the predictive model 102 while
contemplating unmodeled situations is to construct the predictive model 102 with an ability to predict that there will be a failure to predict the future, so as to inform a user or system when a prediction output by the predictive model 102 is not likely to be correct Machine learning can be employed to identify such a situation by noting sets of observations or states associated with an inability to predict the future Such models of future surprise, atypicality, anomalies, unmodeled events, or, more generally, situations that will not likely be handled well by a system or person can be utilized to warn people or automated systems that there is likely to be an unexpected, confusing, or unmodeled situation coming up based on current observations Having knowledge about the likelihood of such situations approaching in the future, even when uncertain, can warn an individual or system when they may wish to ready for the surprising or substantially challenging situation, so as to enable choice of an alternate context or situation
[0066] The predictive model 102 can be further used to guide or promote
situations where a person or system may be placed m unexpectedly valuable situations
under uncertainty Displays can be dnven to alert of information based on differences between the inferences of a model of an observer's expectations about the future and a richer, more accurate model of world outcomes for that same future time period, wherein both of such models are resident within the predictive model 102 These displays can assume that people or systems have default expectations and there's no reason to alert them unless it is likely that something is or will be surprising to the user in the future On alerting systems, as an example, moving back to the traffic prediction application, individuals can be alerted as to when they can expect traffic volumes to be surprisingly lighter or heavier along routes of interest for times of interest in the future These individuals may not wish to be alerted with respect to traffic conditions the individuals come to expect (as determined by a observer-based model of expectancy) As another application, based on inferences about a future forecast that is surprising users can be alerted to begin a trip earlier or later within the constraints of arriving at a distant location by some time In another example, the predictive model 102 can be employed within an alarm system and can awake a user from sleep later or earlier in the morning given prediction of surprising event that affects the user
[0067] The predictive model 102 can include models (not shown) that provide
predictions about an ability of the predictive model 102 to accurately predict surprising events/occurrences in the future Thus, the predictive model 102 can automatically highlight the accuracy of a prediction, or can determine instances in which to distrust a prediction, thereby enabling a user to rely less on the prediction m preparing for the future A robotic system may wish to use a model for forecasting unmodeled or surprising events coming up on the current path or trajectory, or extra challenging situations where it will likely be incompetent, per the inferences of a predictive model of unmodeled events, or of inability to predict, or of surprising failure, so as to select an alternate approach or path, where it is less likely going to face a surprise or challenge
[0068] Upon generating a prediction or occurrence of surprising events, the
predictive model 102 relays such prediction to a user interface component 104, which can present generated predictions to a user For instance, the user interface component 104 can be associated with a graphical user interface (GUI) that visually displays generated predictions to a user, speakers that audibly provide predictions to a user, or any other suitable interface Moreover, the user interface component 104 can
be resident upon a portable device, such as a laptop, PDA, cellular phone, smart phone, and the like, or be resident upon an affixed device, such as a desktop personal computer In a traffic application, the user interface component 104 can dynamically display a route to a user by traversing such route, wherein an amount of a zoom while traversing is a function of distance between data points on a map, distance in the route from one or more data points, number of data points in a route, etc For example, a user may desire to travel a certain route, where there are several portions of highway along such route that are of interest to a user (such as a plurality of portions of highway that are congested or are predicted to be congested) At the beginning of the route, the display can be associated with a particular zoom - as the display begins traversal of the route, the display "zooms out", the rate of the zoom a function of distance between data pomts, distance between one data point, and/or number of data points on the route The zooming is utilized to provide the user with a greater amount of context with respect to a route, and has empirically been shown to be more pleasing to users than conventional systems As the user interface component 104 (e g, a display) shows the user nearmg a data point, the display will "zoom m", the rate of the zoom again a function of distance between data points, distance between one data point, and/or number of data pomts on the route Examples of such zooming are provided m the attached appendices
[0069] The system 100 can be implemented on a combination of a server and
a client or on a client alone For example, a computing device that includes the user
interface component 104 can subscribe to a service that hosts the predictive model
102 The predictive model 102 can be associated with a processor and memory upon
the server, and calculations can take place thereon Generated predictions can then be
delivered to the user mterface over a wireless and/or wireline network Furthermore,
for a map or portions thereof can be delivered to a client and cached in memory
thereon Display relating to predictions can thereafter be delivered from the server
and positioned over the graph cached upon the client As processing and memory
capabilities increase, however, the system 100 can reside entirely within a client
[0070] Now turning to Fig 2, a system 200 that facilitates generation of
predictions of surprising events/conditions is illustrated The system 200 includes a predictive model 202 that generates predictions relating to surprising events as a function of received contextual data and historical data Contextual data can be delivered to the predictive model 202, for example, by way of one or more sensor(s)
204 and/or by way of one or more data collection components 206 For instance, in
an application where the predictive model 202 predicts traffic patterns, the sensor(s)
204 can be weight sensors on a roadway that detects existence of automobiles,
approximates speed of automobiles, and the like In another example with respect to
the traffic, GPS sensors associated with automobiles can be utilized in connection
with receiving contextual data relating to automobiles on a roadway These sensors
can be integrated within an automobile, within a cellular phone, a PDA, and the like
In yet another example, the sensor(s) 204 can be related to monitoring hand-shaking
between cellular phones and cellular towers, thus providing yet another indication of
location of individuals upon a roadway Furthermore, sensor(s) relating to
temperature, time, etc can be utilized to obtain contextual data Accordingly, any
suitable sensor can be employed m connection with obtaining contextual data for
utilization by the predictive model 202 The data collection components 206 can be
utilized for monitoring television, radio, and the Internet for variables relating to an
application for which the predictive model 202 is designed For example, if the
predictive model 202 is utilized in connection with traffic prediction, it is well known
that day of week, occurrence of sporting events, and weather can affect traffic Thus,
the data collection components 206 can obtain data through utilization of voice
recognition mechanisms to determine weather described m radio news broadcasts,
text-recognition mechanisms for monitoring sporting events or other suitable events,
and the like Thus, any suitable device/mechanism for obtaining contextual data that
can be employed by the predictive model 202 is contemplated
{0071] The predictive model 202 can, for example, be built by way of
statistical methods, such as through utilization of one or more of graphical probabilistic models, such as Bayesian networks, dynamic Bayesian networks, and continuous time Bayesian networks, Hidden Markov Models (HMMs), Markov processes, particle filtering, Gibbs-samplmg based approaches, neural networks, support vector machines, differential equations, logic-based reasoning systems, and fuzzy logic-centric methods In one particular example, the predictive model 202 can utilize one or more Bayesian networks 208 m connection with generating predictions of future surprising events The Bayesian network 208 can include variables that influence abstracted events, and these variables and influences can be modeled therein For instance, the Bayesian network 208 can include random variables that represent the time until congestion and time until clear for sets of troublesome traffic
hotspots or bottleneck regions m a traffic system, and predicting traffic flow can relate
to reasoning about such random variables Furthermore, a tool (not shown) for
analyzing and identifying bottleneck regions can be utilized m connection with the
predictive model 202 Depictions of an exemplary tool that can be utilized m
connection with the predictive model 202 can be found at Figs 25-29
[0072] Continuing with examples relating to prediction of traffic conditions,
an accident at a particular region of a first roadway can affect traffic conditions at a specific region of a second roadway In another example, weather conditions can have a greater affect on particular portions of specific roadways than portions of other roadways Thus, the variables within the Bayesian network 208 can include abstractions of portions of roadways, accidents affecting traffic thereon, weather relating to traffic thereon, and any other suitable number of variables The Bayesian network 208 can be a substantially complete representation of roadways and variables affecting traffic thereon In another example, the Bayesian network 208 can be employed to model user expectancies, wherein such expectancies can be drastically different from predictions output by a robust model
[0073] The predictive model 202 can include surprising event defimtion(s)
210, which are utilized to alert an individual of possible occurrences a surprising
event The surprising event definition(s) 210 can be created and/or defined in various
manners, at least some of which were described with respect to Fig 1 For instance,
the surprising event definitions) can relate to events that occur above and/or below a
threshold probability Thus, a user can be alerted if a predicted probability of
occurrence lies outside the threshold In another example, the surprising event
definition(s) 210 can relate to events that are not modeled by an observer-related
model, and thus such events defined by the surprising event defimtion(s) 210 are
generally not expected by a user Accordingly, disparate models, an observer-related
model and a more thorough, substantial model can be utilized in connection with the
surprising event defimtion(s) 210 to determine existence of a surprising event and
alert an individual of impending occurrence of such event and/or a probability thereof
It is understood, however, that any suitable manner for defining surprising event(s) is
contemplated and intended to fall under the scope of the hereto-appended claims
[0074] The predictive model 202 further includes a timing component 212 that
assists the predictive model 202 in outputting time data together with predictions relating to future surprising events For instance, informing an individual that traffic
will be congested at a particular area sometime m the future is not helpful to the individual, as such individual will have no way of knowing at what time the congestion is expected, length of expected congestion, and the like The timing component 212 can thus be utilized to associate time values with predictions output by the predictive model 202, thereby providing a user with requisite information that can be employed for making decisions as a function of a predicted future surprising event The system 200 further includes a user interface component 214 that provides predictive information to a user In accordance with one example, the user interface component 214 can exist within an automobile, thereby allowing dynamic predictions to occur as a user is traveling
[0075] To assist in determine regions that a user cares about, a tool / interface
(not shown) can enable a user to select sets of hotspots or bottlenecks and label them as regions that they care about, including selection of sets of bottleneck regions that comprise routes (e g, commute routes) by selecting sets of bottleneck regions and linking them to times of day, when the regions or whole routes are monitored, actively and when desktop or mobile alerting (e g, via an alert on a Smartphone or via an SMS message on a normal cell phone) will occur if mobile alerting conditions are met (e g, right time of day, alerting conditions are met, and user sensed to not be present at a desktop) Smartphones can be set up to show the appropriate bottlenecks per time of day, via flyovers, automated scrolling etc
[0076] Now referring to Fig 3, a system 300 that facilitates generation of
predictions of surprising situations that may occur in the future is illustrated The system 300 includes a predictive model 302 that generates predictions of future surprising events, and can further generate probabilities associated with the predictions The predictive model 302 generates predictions of surprising events (or atypical/anomalous events) as a function of received contextual data and received historical data The predictive model 302 includes user-centric information 304, thereby enabling the predictive model 302 to determine events that will surprise a user More specifically, the user-centric information 304 can be employed by the predictive model 302 to determine which predicted surprising events are important to the user As an example, the user can leave a place of work every day at 3 00 and travel a certain route to return to a place of residence, wherein the route is typically not be subject to traffic congestion Thus, if the predictive model 302 predicts that congestion will occur on the route the user typically takes, the predictive model 302
can inform the user of this predicted congestion If, however, the predictive model
302 predicts congestion on a route not traveled by the user, it may not be desirable to
provide the user with such prediction (as it does not relate to the user)
[0077] The predictive model 302 can further mclude a probability analysis
component 306 that determines probabilities associated with surprising events For example, a user may not wish to be provided with a prediction of a surprising event associated with a very small probability of occurring Accordingly, the probability analysis component 306 can compute probabilities associated with predicted surprising events, and the user can be provided with the prediction if the calculated probability is above or below a defined threshold
[0078] The predictive model 302 can also include an updating component
308, which enables a user to inform the predictive model 302 of events that the user considers surprising The updating component 308 can be of importance when particular events are not modeled and/or are not considered surprising by the predictive model 302 In an instance that the surprising event was not modeled, the updating component 308 can receive information from a user regarding an event that the user considers to be surprising and can obtain contextual data associated with the event (from sensors, radio, user mput, and the like) The predictive model 302 can therefore be expanded to mclude the event specified by the user In an instance that the event has been modeled but the predictive model 302 did not consider occurrence of the event to be surprising, the updating component 308 can receive user mput and cause the predictive model 302 to output the event as a surprising event if prediction of such event should occur in the future
[0079] The system 300 can further include a model analyzer component 310,
which analyzes accuracy of the predictive model 302 and automatically tunes the
model 302 to improve performance thereof For example, the model analyzer
component 310 can track predictions output by the predictive model 302 and compare
such predictions to occurrences of events The model analyzer component 310 can
utilize various machine-learning algorithms and/or techniques to automatically tune
the predictive model 302 to improve performance of such model 302 In particular,
the model analyzer component 310 can include a Bayesian network, fuzzy logic
systems, neural networks, or any other suitable machine-learning mechanisms
[0080] The system 300 further includes a user interface component 312 by
way of which a user can communicate with the predictive model 302 to provide
information to such model 302 For instance, a user can inform the predictive model 302 of what he believes to be a surprising event by way of the user interface component 312 To facilitate such communication, the user interface 312 can employ voice recognition systems, pressure-sensitive screens, pointing and clicking mechanisms, magnetic pointing mechanisms, and/or any suitable combination thereof The user interface component 312 can further be utilized to communicate predictions output by the predictive model to a user
[0081] Turning now to Fig 4, a system 400 that facilitates predicting
surprising events (and/or atypical or anomalous situations) that may occur in the future and providing such predictions to a user is illustrated The system 400 includes a predictive model 402 that can predict occurrences of surprising events m the future, timing associated therewith, and probabilities associated therewith The predictive model 402 can generate predictions as a function of contextual data received from sensor(s) 404 and data collection components 406, which can be similar devices to those descnbed with respect to Fig 2 Moreover, the predictive model 402 can output predictions of surprising events that may occur m the future as a function of past observations 408 that are resident within a data store 410 The data store can be any suitable data storage mechanism, such as a conventional hard disk, a removable disk, flash memory, etc
[0082] In one example, the predictive model 402 can include surprising event
defimtion(s) 412, which enable the predictive model 402 to differentiate between typical or unsurprising events and atypical or surprising events For instance, the predictive model 402 can generate predictions relating to future events that are not surprising to a user, and thus not desirably reviewed by a user If the predictive model 402, however, generates a prediction m accord with the surprising event defimtion(s) 412, then a prediction of a surprising event can be output to the user In another example, the surprising event defimtion(s) 412 can be updated and or supported by a comparison between outputs of a user expectancy model 414 and a world model 416 The user expectancy model 414 can emulate manners in which typical users make predictions, which tend to be simple correlations between a limited number of variables Thus, a surprising event can be defined as an event that lies outside consideration or expectancy of the user expectancy model 414 The world model 416 can be a more complex, probabilistic model that takes into consideration a greater number of variables and relation therebetween, wherein a substantial number of such
variables and relations are often not contemplated by a typical observer when generating a prediction Thus, given substantially similar contextual and historical data, the world model 416 and the user expectancy model 414 can output vastly different future predictions When this occurs, the surprising event defimtion(s) 412 can be updated with the event, and a user can be provided with a prediction of the possible surprising event by way of a user interface component 418 Furthermore, to increase efficiency and performance of the predictive model 402, data collected by the sensor(s) 404 and data collection components 406, as well as predictions of events associated therewith and actual events can be stored in the data store 410 as past observations 408 Accordingly, over time, the predictive model 402 can become increasingly accurate
[0083] To more fully describe the user expectancy model 414, an example
relating to traffic is provided herein The user expectancy model can be built utilizing marginal statistics describing status of particular locations m a road system for particular segments of time within days of the week, thereby creating marginal models Such models can be conditioned on a subset of variables that one or more machine-learning procedures consider (together with time of day and day of week), such as weather and holiday status Such data is readily available to commuters To identify surprises relating to traffic, output of the marginal models (which make up the user-expectancy model 414) can be compared with real-tune states and/or outputs of the world model 416 (which contemplates more variables and mterdependencies therebetween)
[0084] Now turning to Fig 5, a system 500 that facilitates building a
predictive model that can generate predictions of surprising events that may occur m the future is illustrated The system 500 includes a case library 502, which can comprise a plurality of surprising situations 504-508, which can be represented by data (e g , status and mterdependencies of variables, ) For example, the case library 502 (or a plurality of libraries) can be focused upon surprising events that are considered to likely influence utility of an observer in a positive or negative way Moreover, the surprising situations 504-508 can be of poorly characterized utility In another approach, the case library 502 includes cases where outcome is outside a probabilistic distribution In other words, cases can be identified where, for example, unexpected or surprising volumes of traffic are existent on particular portions of a roadway, and where volume is a threshold number of standard deviations above or
below a mean amount of traffic, and such cases can be stored within the case library as the surprising situations 504-508 In an example relating to traffic congestion, traffic data, time of day, day of week, whether a holiday is in progress, whether school is in session, start and stop tune of large-scale events in a region, such as sporting events, synchronized information regarding weather, including status of precipitation, visibility, temperature, and amount of sunshine For instance, this information can be gathered from sources on the Internet and/or by way of sensors Any suitable manner for constructing the case library 502 and classifying the situations therein, however, is contemplated
[0085] Further, data proximate in time to surprising situations 504-508 can be
stored within the case library 502 In more detail, observations relating to the surprising situations 504-508 can be coupled with the surprising events within the case library 502 For instance, in a traffic application, observations obtained m advance of the surprising situations 504-508 can be obtained, including observations relating to weather, mcident reports, major events (e g, sporting events), status of observations relating to history of traffic flow throughout a particular traffic system, and the like A time threshold can be defined, and observations within such time threshold can be obtained
[0086] Contents of the case library 502 can be delivered to a model generator
510 that utilizes a machine-learning component 512 to assist in creating a predictive model 514, wherein the model 514 is utilized to predict future occurrences of events and/or states, including surprising situations For instance, the machine-learning component 512 can relate to Bayesian network models, statistical classifiers, neural net methods constructed by way of structure search and parameter optimization to design the predictive model 514 The model generator 510, utilizing such techniques, can generate a graphical view into the predictive model 514, thereby providing a graphical view to model (and enabling an individual to visualize multiple variables and influences) In one example, rather than building a model for a plurality of disparate locations (e g, different traffic bottlenecks), the model generator 510 can construct the predictive model 514 so that it captures interdependencies among multiple locations and variables Referring to traffic, utilizing such an approach can enable the predictive model 514 to learn about dependencies and temporal relationships among flow through bottlenecks The model generator can further receive anomaly definitions 516, which can be associated with the surprising
situations 504-508, and incorporate these definitions 516 into the predictive model 514 Moreover, a user expectancy model 518 can be generated and provided to the model generator 510, so that predictive outputs relating to the anomaly definitions 516 can be compared with expected outputs generated by way of the user expectancy model 518 Thus, the predictive model 514 can include various mechanisms for defining surprising events as well as outputting predictions of future surprising events and probabilities associated therewith
[0087] Referring now to Figs 6-9, methodologies in accordance with the
claimed subject matter will now be described by way of a series of acts It is to be understood and appreciated that the claimed matter is not limited by the order of acts, as some acts may occur in different orders and/or concurrently with other acts from that shown and described herein For example, those skilled m the art will understand and appreciate that a methodology could alternatively be represented as a series of interrelated states or events, such as m a state diagram Moreover, not all illustrated acts may be required to implement a methodology in accordance with the claimed subject matter
[0088] Turning solely to Fig 6, a methodology 600 for generating predictions
from a predictive model is illustrated At 602, a predictive data model is received Such model can include, for example, one or more Bayesian networks, utilize neural networks or fuzzy logic, and any other suitable form of machine learning Moreover, the predictive data model can be generated as a function of historical data, user expectancies, and the like At 604, definitions are provided for surprising instances Generating such definitions has been described m detail above At 606, contextual data is obtained and delivered to the predictive model Such data can be obtained from sensors, web sites, radio, or any other suitable location of information For instance, information can be obtained directly from a dialog with a user At 608, a determination is made regarding whether a surprising event has been predicted If the surprising event has been predicted, then at 610 a user is provided with information relating to the predicted event For example, in a traffic context, if a congestion that would be surprising to a user is predicted to occur in the future, the user can be provided with location of the predicted congestion, time of occurrence of the predicted congestion, time predicted to clear the congestion, and probabilities associated with correctness of the aforementioned predictions The predictions and contextual data can then be retained at 612 to improve the predictive model If a
surprising event has not been predicted at 608, then the contextual data collected can be retained to improve performance of the model
[0089] Turning now to Fig 7, a methodology 700 for predicting surprising
events that may occur in the future is illustrated At 702, a model of user expectancies is generated For instance, the model can sufficiently imitate manners m which humans tend to generate predictions for future occurrences, which is typically simply noting a select number of variables and recognizing low-level interdependences between the variables For instance, if extreme weather conditions exist, the user can predict that particular portions of roadways will be subject to congestion A user will often not recognize complex interdependencies, however For example, an accident on a first roadway can affect congestion in traffic on a second roadway that is traveled by a user Such user may not know of the accident, and may further not recognize a relationship between the accident and congestion on the currently or desirably traveled roadway
[0090] At 704, surprising events are defined These events can be defined as
events not considered by the user-expectancy model, events that are outside a
threshold probability of occurring, user-selected events, occurrences that are a
particular number of standard deviations away from a mean, or any other suitable
manner for defining surprising events Examples of these events can be retrieved
from a case library and utilized in connection with generating a model that predicts
surprising events that may occur m the future At 706, a predictive model is created
as a function of the user-centnc model and the defined surprises In particular, the
predictive model can analyze outputs of the user-centnc model and compare such
output against an output of a more robust model - if there are great discrepancies
therebetween, then a user can be alerted of a surprising event Furthermore, if the
predictive model creates an output that is substantially similar to a defined surprising
event, then a user can be alerted of such event The predictive model can be created
in such a manner to enable output of the aforementioned surprising events
[0091] At 708, contextual data is received For instance, this data can be
received by way of sensors (e g, on a roadway), camera, GPS systems, text-recognition components, web-crawlers, voice analysis components, or any other suitable means for obtaining/receiving contextual data At 710, the predictive model generates a predictive output At 712, a determination is made regarding whether the output is consistent with the definitions of surprises If the output is not consistent
with the surprise definitions (e g, the prediction does not relate to a surprising event),
then contextual data can be received at 708 If the output at 712 is consistent with a
surprise definition, then a user can be provided with prediction if a surprising event at
714 For example, the user can be alerted as to unexpected congestion upon a
roadway, unexpected sales numbers, etc Upon providing the user with information
relating to a predicted surprising event, contextual data can be received at 708
[0092] Referring now to Fig 8, a methodology for refining a predictive model
that predicts future surprising events is illustrated At 802, model(s) that are
employed to predict surprising events are generated As described infra, these models
can be built as a function of case studies that describe surprising events Furthermore,
the models can be generated as a function of surprise definitions At 804, surprising
events are predicted by way of the generated model In a traffic application, points of
congestion can be predicted wherein such congestion may or may not be a surprise
At 806, predictions output by the predictive model are stored At 808, accuracy of the
model is determined This can be accomplished by comparing predictions output by
the model with actual events In a particular example, the predictive model can
predict that traffic will be congested at a particular portion of a roadway at a certain
time, and will remain congested for a particular period of time These predictions can
be compared with actual results, wherein the results can be obtained by way of
sensors and/or user input At 810, the model is updated as a function of the
determined accuracy Thus, if the model is consistently incorrect, such model can be
tuned accordingly Various machine-learning mechamsms/techniques can be
employed m connection with automatically tuning the predictive model
[0093] Turning now to Fig 9, a methodology 900 for generating a model that
can predict surprising events is illustrated At 902, a case library of data describing events is obtained For instance, the case library can include events that are defined as surprising events, typical events, or any other suitable events At 904, surprising events are defined In one example, events not contemplated by a simplistic user-centric model can be defined as surprising events In another example, events that he outside a particular probability range or a particular number of standard deviations away from a mean can be defined as surprising events As can be determined from the above, any suitable manner for defining surprise is contemplated by the inventor and intended to fall under the scope of the hereto-appended claims
[0094] At 906, a model is generated and/or provided that generates predictions
according to user expectancies Thus, the model is designed to take into account variables typically considered by a user and mterdependencies between variables typically considered by a user At 908, a model generator is provided, wherein the model generator creates a surprising event predictor as a function of the defined events and the user-expectancy model While not described, the created model can include a "world" model, which, given a substantial amount of data, can determine various levels of mterdependencies between numerous variables The "world" model can thus be much more sophisticated than the user-centnc model Accordingly, if the user-centric model outputs predictions markedly disparate from predictions output by the "world" model, outputs of the "world" model can be considered a surprising event In another example, if the "world" model outputs a prediction that is sufficiently related to a defined surprise, then such prediction can be presented to a user as a surprising event
[0095] Now referring to Fig 10, a screenshot 1000 that illustrates user-
defmition of a route to enable route-based alerting is illustrated For example, utilizing a tool that can display graphical information (similar to that displayed in the screenshot 1000), a user can define routes of interest, for example, relating to morning and evening commutes In more detail, a user can define route(s) and times associated with a morning commute, route(s) and times associated with an evening route, refresh rates corresponding to a display, and the like A data-entry and display entity 1002 can be provided to facilitate enablement of such user-definitions Further, when such a route-based alerting system is enabled, audio alerts can be presented to a user with respect to defined routes at relevant times For instance, a user can set a threshold level of congestion, and when traffic congestion reaches such threshold and/or is predicted to reach the threshold, then the user can be alerted (e g , audibly, through vibration of a mobile device, ) Similarly, the user can wish to receive alerts relating to when traffic congestion is below a threshold with respect to a route and a penod of time, and/or be alerted as to when traffic congestion is predicted to be below the threshold Furthermore, a user can set alerts that will be presented that indicate a surprising situation or event In one example, the user can define routes of travel by specifying where such user travels (as indicated by circled numerals within the screenshot 1000) This selection can be accomplished by way of graphically
selecting numerals and/or by manually entering numerals within a data receiving entity
[0096] Turning now to Fig 11, a screenshot 1100 of an application that
utilizes predictions generated by a predictive model (as described above) is illustrated
The screenshot includes graphical representations of various roadways 1102, wherem
the roadways include a plurality of portions 1104 The portions can be associated
with a particular color and/or shade of color that indicates a level of congestion
associated with the portions For example, if the portion 1104 is shaded a color of
green, a user can determine that there is little congestion upon such portion 1104 The
prediction can be provided to a user by way of receipt of contextual data and historic
data associated with the roadways 1102 A timing indicator 1106 is also included
within the screenshot 1100, wherem such indicator 1106 informs a user of a predicted
time associated with a current traffic condition of a selected portion of the roadways
1102 For instance, the timing indicator 1106 can indicate that a lack of congestion
will remain for a predicted amount of time, and a probability of correctness can be
associated therewith In another example, the screenshot 1100 can provide a user
with information relating to a time m the future Thus, prior to the user leaving a
place of employment, such user can request predicted information relating to a route
of travel a certain distance from a current point m time In still another example,
surprise can be provided to the user by way of a predicted model
[0097] Now referring to Fig 12, another exemplary screenshot 1200 is
illustrated The screenshot 1200 shows that traffic information can be provided to a user by way of a display The display can be on a cellular phone, a smart phone, a PDA, a laptop, etc The screenshot illustrates a plurality of graphically represented roadways 1202, wherein the roadways include graphically represented portions 1204 The portions can be associated with disparate colors and/or disparate shading to convey to a user that certain portions of the roadways 1202 are predicted to be subject to congestion For example, a portion colored red is subject to high congestion Timing indicators 1206 and 1208 can be associated with selected portions of the roadways 1202, and can indicate a predicted time until the congestion occurs, a predicted time that the congestion will remain upon a particular portion, and the like As described above, the prediction can be related to a surprising event For instance, it may not be typically expected that a certain portion of the roadway 1202 is subject to light congestion at a particular time A robust predictive model, however, can
output such predictions as a function of defined surprising events and user
expectancies, as well as received contextual data and historical data
[00981 Referring collectively to Figs 13-15, graphical representations of
networks that illustrate interdependences between variables and traffic conditions are
provided, wherein such state diagrams can be employed in connection with generatmg
a predictive model for predicting future traffic conditions Turning specifically to Fig
13, a graphical depiction of an exemplary Bayesian network model 1300 showing
rnterdependencies between a variable representmg a workday and timing associated
with disparate congestions and disparate portions of roadways is illustrated In one
example, the network model 1300 can be generated by way of structure learning and
utilized in connection with predicting parameters relatmg to traffic For a specific
example, whether or not a day is a workday can affect timing associated with a
portion of a road labeled 15 and represented by a node 1302 Thus, a variable,
represented by a node 1304, indicates whether a current day is a workday, and such
node 1304 is related to a plurality of nodes within the network 1300 In another
example, the variable 1304 influences a time until a portion of a roadway (labeled as
portion 14) represented by a node 1306 is no longer heavily congested Various other
rnterdependencies exist and can be easily discerned upon review of the network model
1300 A calendar application or other mechanism can determine a value for the node
1304 (e g, a first value can be utilized to represent that a certain day is a workday,
and a second value can be utilized to represent that a certain day is not a workday)
[0099] Now referring to Fig 14, an exemplary network model 1400 that is
illustrated The network model 1400 is provided to illustrate influence of a weather variable 1402 (representing mutually exclusive sets of states about weather conditions) on other variables the model 1400 For example, variables capturing an amount of time until bottlenecks will become highly congested if they are currently not highly congested, and an amount of time until bottlenecks will become uncongested if they are currently highly congested
[00100] Turning now to Fig 15, an exemplary network model 1500 that shows
rnterdependencies between a plurality of variables and surprises is illustrated The network model 1500 includes a node 1502 that represents a certain defined surprise within a predictive model, and disparate variables that are related to such node 1502 In this example, variables representing time of day (node 1504) and day of week (node 1506) are related to occurrence of a surprise represented by the node 1502
Moreover, status (e g, congested, partially congested, ) of particular portions of a
roadway can be represented by nodes 1508 -1514, and the status is shown as being
related to predicted occurrence of a defined surprise represented by the node 1502
Further, nodes 1516-1518 representing actual and/or predicted duration of congestion
of particular portions of a road are related to the node 1502 These interdependencies
between variables can be utilized to generate predictions relating to traffic conditions
and/or predict occurrence of future surprising event(s)
[001011 Turning briefly to Fig 16, a network 1600 illustrating
interdependencies between variables and surprising events that can be predicted by a predictive model as described herein is shown For example, the network includes nodes representing weather, accidents m particular regions of roadways, congestion status within roadways, time of day, day of week, whether there is a sporting event or game, and the like Thus, the network 1600 can be associated with a robust predictive model that predict traffic patterns generally, and surprising traffic patterns that may occur m the future specifically
100102] Now referring to Figs 17 and 18 collectively, graphs 1700 and 1800 of
historical data associated with a particular portion (or bottleneck) of a roadway is illustrated The historical data that is the basis of the graphs 1700 and 1800 can be utilized m connection with generating a predictive model and outputting predictions therefrom The axes of the graphs 1700 and 1800 relate to percent occupancy of a particular portion of road and collected data associated therewith at disparate hours of a day
[00103] Turning to Fig 19, a network 1900 that illustrates interdependencies
between variables associated with traffic and relation thereof to traffic surprises is provided For example, a node 1902 representing a day of week, a node 1904 representing whether there is a sporting event, and nodes 1906-1908 representing status of traffic at particular portions of a roadway (labeled 10 and 11, respectively) all relate m one form or another (either directly or indirectly) to surprising traffic conditions at portions of the roadway(s) labeled 10,11, and 4 (represented by nodes 1910,1912, and 1914, respectively) Referring now to Fig 20, a screenshot 2000 illustrating associated surprises (shown in Fig 19) is provided Circles 2002,2004, and 2006 represent surprising traffic conditions at portions 10, 11, and 4, respectively In this example, the screenshot 2000 illustrates that surprises at first and second portions 2002 and 2004 of a first roadway relate to a surprise at an apparently
unrelated portion of a second roadway Thus, a predictive model utilized to generate the predicted surprises can account for relationships typically not comprehended by individuals
[00104] Now referring to Fig 21, a network 2100 that contemplates
interdependences between variables in association with predicting occurrences of future traffic surprises is illustrated The network 2100 illustrates that various surprises are interrelated, and that weather and status at particular portions of roadways also relate to possible surprises In particular, a node 2102 representing weather conditions, and nodes 2103-2108 representing traffic status at disparate portions of roadway (portions 2, 5,10, and 16, respectively) are all related, directly or indirectly, to nodes 2110-2120 that represent surprises at portions of roadway (portions 3, 5 - 8, and 17, respectively) Referring briefly to Fig 22, a screenshot 2200 illustrating locations of the surprises referred to with respect to Fig 21 are shown The screenshot 2200 includes circles 2202 - 2212 that represent portions 2, 3, 5,8,11, and 17, respectively The circles represent exemplary surprises and status of traffic congestion with respect to the network 2100
[00105] Turning now to Fig 23, another exemplary network 2300 showing
learned interdependences between variables depending upon content thereof is
illustrated In particular, the network 2300 an be a Bayesian network that can infer
likelihood of states defined as surprising, atypical, and/or anomalous that will occur in
a threshold time (e g, 30 minutes) The network 2300 includes nodes 2302 and 2304,
which represent occurrence of accidents at portions of a roadway (portions 15 and 17,
respectively) A node 2306 represents a time of day, and nodes 2308 - 2312 represent
traffic congestion at portions of a roadway (portions 1,15, and 18, respectively) The
aforementioned nodes 2302-2312 directly or indirectly affect nodes 2314-2320, which
represent surprising traffic conditions at portions of the roadway (portions 4,11, 15,
and 17, respectively) that are predicted to occur at a particular point m time Thus,
given accidents at particular portions of a roadway and specific status of congestion at
portions of a roadway, one or more surprising events can be predicted Referring
briefly to Fig 24, a screenshot 2400 that includes circles 2402-2408 highlighting
portions of the road 4,11,15, and 17, respectively Such portions correspond to
portions represented by the nodes 2314 - 2320 (Fig 23) of the network 2300
[00106] Now referring to Figs 25-29, screenshots 2500,2600,2700, 2800, and
2900 are provided that illustrate one or more aspects of the claimed subject matter
Referring first to Fig 25, the screenshot 2500 is of a graphical user interface (or tool)
2502 that enables a user to select a threshold congestion in connection with predicting
traffic patterns A user can alter the congestion threshold by way of an editable field
2504 or by way of a sliding mechanism 2506 Thus, a predictive model can provide a
user with areas where predicted threshold traffic congestion is at or above 50% The
screenshot 2500 shows that there are no portions of roadway subject to congestion at
or above 50% Furthermore, a user can select portions of roadways that are of interest
to the user, and receive alerts relating to such selected portions Thus, a user can
define a route or routes of interest through the user interface 2502 Now referring to
Fig 26, a screenshot 2600 of the user interface 2502 with a congestion threshold at
25% is illustrated The screenshot 2600 displays portions of roadway predicted to be
subject to such congestion at a time specified by a user and/or automatically selected
by a computing component Turning briefly to Fig 27, a screenshot 2700 of the user
interface 2502 where a congestion threshold is chosen to be at approximately 16%
The screenshot 2700 shows that a variety of portions of roadways (being shaded more
darkly than other portions of roadway) are predicted to be subject to congestion of
greater than or equal to 16% Referring now to Fig 28, a screenshot 2800 of the user
interface 2502 illustrates roadways predicted to be subject to congestion at or above a
congestion threshold of 9% Now turning to Fig 29, a screenshot 2900 of the user
interface 2502 illustrates predictions relating to traffic congestion when portions of
roadways are predicted to be at or above 5% The screenshots 2500, 2600, 2700,
2800, and 2900 thus illustrate that a user can select a level of congestion threshold for
which predictions are to be made, and thereafter determine a best route to travel For
instance, a tool depicted m the screenshots 2500,2600,2700, 2800, and 2900 can be
employed to determine portions of a road that should be focused upon with respect to
generating predictions For example, a tool can be employed to display when/where a
road is congested at or above 25%, and such locations can be subject to scrutiny
[00107] Now turning to Fig 30, an exemplary mobile device 3000 that can be
employed m connection with one or more aspects of the claimed subject matter is illustrated The device 3000 includes a display region 3002 that graphically displays at least a portion of a roadway system and parameters relating thereto For instance, the display region 3002 can graphically indicate that a particular portion of a roadway is subject to a certain level of traffic congestion The mobile device 3000 can include a keypad 3004 that can be utilized to navigate through displayed indicia upon the
display region 3002 Furthermore, the mobile device 3000 can include a refresh button 3006 that enables a user to refresh a graphical display according to most recent data
[00108] In order to provide additional context, Fig 31 and the following
discussion are intended to provide a brief, general descnption of a suitable operating environment 3110m which various aspects descnbed herein may be implemented While the claimed subject matter is descnbed in the general context of computer-executable instructions, such as program modules, executed by one or more computers or other devices, those skilled in the art will recognize that the claimed subject matter can also be implemented in combination with other program modules and/or as a combination of hardware and software
[00109] Generally, however, program modules include routines, programs,
objects, components, data structures, etc that perform particular tasks or implement
particular data types The operating environment 3110 is only one example of a
suitable operating environment and is not intended to suggest any limitation as to the
scope of use or functionality of the invention Other well known computer systems,
environments, and/or configurations that may be suitable for use with the invention
include but are not limited to, personal computers, hand-held or laptop devices,
multiprocessor systems, microprocessor-based systems, programmable consumer
electronics, network PCs, minicomputers, mainframe computers, distributed
computing environments that include the above systems or devices, and the like
[00110] With reference to Fig 31, an exemplary environment 3110 for
implementing various aspects of the invention mcludes a computer 3112 The
computer 3112 includes a processmg unit 3114, a system memory 3116, and a system
bus 3118 The system bus 3118 couples system components including, but not
limited to, the system memory 3116 to the processing unit 3114 The processing unit
3114 can be any of various available processors Dual microprocessors and other
multiprocessor architectures also can be employed as the processing unit 3114
[00111] The system bus 3118 can be any of several types of bus structure^)
including the memory bus or memory controller, a peripheral bus or external bus, and/or a local bus using any variety of available bus architectures including, but not limited to, 8-bit bus, Industrial Standard Architecture (ISA), Micro-Channel Architecture (MSA), Extended ISA (EISA), Intelligent Drive Electronics (IDE), VESA Local Bus (VLB), Peripheral Component Interconnect (PCI), Universal Serial
Bus (USB), Advanced Graphics Port (AGP), Personal Computer Memory Card International Association bus (PCMCIA), and Small Computer Systems Interface (SCSI)
[00112] The system memory 3116 includes volatile memory 3120 and
nonvolatile memory 3122 The basic input/output system (BIOS), containing the
basic routines to transfer information between elements within the computer 3112,
such as during start-up, is stored in nonvolatile memory 3122 By way of illustration,
and not limitation, nonvolatile memory 3122 can include read only memory (ROM),
programmable ROM (PROM), electrically programmable ROM (EPROM),
electrically erasable ROM (EEPROM), or flash memory Volatile memory 3120
includes random access memory (RAM), which acts as external cache memory By
way of illustration and not limitation, RAM is available in many forms such as
synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM
(SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM
(ESDRAM), Synchhnk DRAM (SLDRAM), and direct Rambus RAM (DRRAM)
[0100] Computer 3112 also includes removable/nonremovable,
volatile/nonvolatile computer storage media Fig 31 illustrates, for example a disk storage 3124 Disk storage 3124 includes, but is not limited to, devices like a magnetic disk drive, floppy disk drive, tape drive, Jaz dnve, Zip dnve, LS-100 drive, flash memory card, or memory stick In addition, disk storage 3124 can include storage media separately or in combination with other storage media including, but not limited to, an optical disk dnve such as a compact disk ROM device (CD-ROM), CD recordable dnve (CD-R Dnve), CD rewntable dnve (CD-RW Dnve) or a digital versatile disk ROM dnve (DVD-ROM) To facilitate connection of the disk storage devices 3124 to the system bus 3118, a removable or non-removable interface is typically used such as interface 3126
[0101] It is to be appreciated that Fig 31 descnbes software that acts as an
intermediary between users and the basic computer resources descnbed in suitable operating environment 3110 Such software includes an operating system 3128 Operating system 3128, which can be stored on disk storage 3124, acts to control and allocate resources of the computer system 3112 System applications 3130 take advantage of the management of resources by operating system 3128 through program modules 3132 and program data 3134 stored either in system memory 3116
or on disk storage 3124 It is to be appreciated that the subj ect invention can be
implemented with various operating systems or combinations of operating systems
[0102] A user enters commands or information into the computer 3112
through input device(s) 3136 Input devices 3136 include, but are not limited to, a pointing device such as a mouse, trackball, stylus, touch pad, keyboard, microphone, joystick, game pad, satellite dish, scanner, TV tuner card, digital camera, digital video camera, web camera, and the like These and other input devices connect to the processing unit 3114 through the system bus 3118 via interface port(s) 3138 Interface port(s) 3138 include, for example, a serial port, a parallel port, a game port, and a universal serial bus (USB) Output device(s) 3140 use some of the same type of ports as input device(s) 3136 Thus, for example, a USB port may be used to provide input to computer 3112, and to output information from computer 3112 to an output device 3140 Output adapter 3142 is provided to illustrate that there are some output devices 3140 like monitors, speakers, and printers among other output devices 3140 that require special adapters The output adapters 3142 include, by way of illustration and not limitation, video and sound cards that provide a means of connection between the output device 3140 and the system bus 3118 It should be noted that other devices and/or systems of devices provide both input and output capabilities such as remote computers) 3144
[0103] Computer 3112 can operate in a networked environment using logical
connections to one or more remote computers, such as remote computers) 3144 The remote computer(s) 3144 can be a personal computer, a server, a router, a network PC, a workstation, a microprocessor based appliance, a peer device or other common network node and the like, and typically includes many or all of the elements described relative to computer 3112 For purposes of brevity, only a memory storage device 3146 is illustrated with remote computers) 3144 Remote computer(s) 3144 is logically connected to computer 3112 through a network interface 3148 and then physically connected via communication connection 3150 Network interface 3148 encompasses communication networks such as local-area networks (LAN) and wide-area networks (WAN) LAN technologies include Fiber Distributed Data Interface (FDDI), Copper Distributed Data Interface (CDDI), Ethernet/IEEE 802 3, Token Ring/IEEE 802 5 and the like WAN technologies include, but are not limited to, point-to-point links, circuit switching networks like Integrated Services Digital
Networks (ISDN) and variations thereon, packet switching networks, and Digital Subscriber Lines (DSL)
[0104] Communication connection(s) 3150 refers to the hardware/software
employed to connect the network interface 3148 to the bus 3118 While
communication connection 3150 is shown for illustrative clarity inside computer
3112, it can also be external to computer 3112 The hardware/software necessary for
connection to the network interface 3148 mcludes, for exemplary purposes only,
internal and external technologies such as, modems including regular telephone grade
modems, cable modems and DSL modems, ISDN adapters, and Ethernet cards
[0105] Fig 32 is a schematic block diagram of a sample-computing
environment 3200 with which the subject invention can interact The system 3200
mcludes one or more chent(s) 3210 The chent(s) 3210 can be hardware and/or
software (e g, threads, processes, computing devices) The system 3200 also includes
one or more server(s) 3230 The server(s) 3230 can also be hardware and/or software
(e g, threads, processes, computing devices) The servers 3230 can house threads to
perform transformations by employing the subject invention, for example One
possible communication between a client 3210 and a server 3230 can be m the form
of a data packet adapted to be transmitted between two or more computer processes
The system 3200 includes a communication framework 3250 that can be employed to
facilitate communications between the chent(s) 3210 and the servers) 3230 The
chent(s) 3210 are operably connected to one or more client data store(s) 3260 that can
be employed to store information local to the chent(s) 3210 Similarly, the server(s)
3230 are operably connected to one or more server data store(s) 3240 that can be
employed to store information local to the servers 3230
[0106] What has been described above includes examples of the claimed
subject matter It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the claimed subject matter, but one of ordinary skill in the art may recognize that many further combinations and permutations are possible Accordingly, the claimed subject matter 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 "mcludes" is used m either the detailed description or the claims, such term is intended to be inclusive m a manner similar to the term "comprising" as "comprising" is interpreted when employed as a transitional word m a claim

What is claimed is:
1. A system that facilitates communicating, visualizing, or alerting about traffic
patterns, comprising:
a predictive model component that generates predictions relating to traffic parameters; and
an interface component that graphically outputs traffic parameters based at least in part upon the generated predictions.
2. The system of claim 1, the predictive model component generates predictions as a function of received contextual data.
3. The system of claim 2, the contextual data received by way of one or more of a camera, a sensor in a roadway, a GPS system, monitoring hand-shaking between cellular phones and cellular towers, the Internet, a television broadcast, and a radio broadcast, and the contextual data comprises at least one of time of day, day of week, holiday status, season, school status, weather properties, data relating to sporting events, data relating to parades, data relating to movies, data relating to political events, ongoing free text from a traffic monitoring department, and coded reports from a traffic monitoring department.
4. The system of claim 2, the predictive model component employs one or more of current status of traffic; marginal or mean traffic flow expectations based on one or more of time of day, day of week, and current traffic information; and probabilistic forecasts about future traffic flows in different regions to guide creation of route plans in an attempt to minimize total driving time.
5. The system of claim 4, GPS data is utilized to locate a user and to provide information on traffic at a current location and a future location.
6. The system of claim 1, the interface component existent upon one or more of a laptop, a personal digital assistant, a cellular phone, a smart phone, an automobile, and a desktop computer.
7. The system of claim 1, the predictions relating to traffic parameters are associated with one or more of time until congestions appear and time until congestions will clear at each of a set of at least one of identified troublespots and bottleneck regions of a road system.
8. The system of claim 1, the predictive model component is built by way of a statistical method, the statistical method is one of a Bayesian network, a dynamic Bayesian network, a continuous time Bayesian network, a Hidden Markov Model, a Markov process, particle filtering, a Gibbs-sampling based approach, a neural network, a support vector machine, one or more differential equations, a logic-based reasoning system, and a fuzzy logic-centric method.
9. The system of claim 1, further comprising a model analyzer component that compares outputs predicted by the predictive model component with actual events, builds a case library of predicted situations and their accuracy, and uses the library to tune and/or annotate base level inferences so as to relay a reliability of the base level inference.
10. The system of claim 1, a case library of accuracies of predictions is used to build via statistical machine learning procedures a separate predictive model that can predict in real-time reliability of the predictive model component based at least in part on available contextual information.
11. The system of claim 1, further comprising a bottleneck identification tool that identifies regions within a traffic system associated with at least one of cyclic congestions, frequent congestions, and largest duration congestions within a traffic system via exploring statistics of congestion.
12. The system of claim 1, the interface component provides a user with a mechanism for at least one of customizing congestion levels associated with a prediction relating to traffic parameters; selecting regions and labeling the selected regions as important regions; selecting sets of regions that comprise routes of interest to the user by selection of regions; linking selected regions to times of day that the regions are to be monitored; and selecting a type of alert to associated with the regions and times of day.
13. The system of claim 1, contextual data received and analyzed by the predictive model component utilized to improve the predictive model component.
14. A computer-readable medium comprising the system of claim 1.
15. A method for predicting traffic patterns, comprising:
generating a representation of a plurality of roadways;
providing a predictive model that predicts events with respect to traffic patterns upon the plurality of roadways; and
graphically displaying the predicted events.
16. The method of claim 15, further comprising:
receiving contextual data relating to the plurality of roadways; and generating the predictions as a function of the received contextual data.
17. The method of claim 16, further comprising
graphically displaying an icon that indicates at least one of a time until a region is clear and a time until an open region will jam; and
graphically displaying a graphical feature to indicate occurrence of a surprising event.
18. The method of claim 15, further comprising reasoning about and among
random variables that represent time until congestion and time until clear for sets of at
least one of troublesome traffic hotspots and bottleneck regions in a traffic system.
19. The method of claim 15, further comprising:
comparing output of the predictive model with actual events; and automatically tuning the predictive model as a function of the comparison.
20. A traffic pattern prediction system, comprising:
means for predicting traffic parameters;
means for determining which of the predicted traffic parameters are of interest to a user; and
means for alerting the user of the traffic parameters that are of interest to the user.

Documents

Orders

Section Controller Decision Date

Application Documents

# Name Date
1 2543-DEL-2005-Correspondence-100519.pdf 2019-05-23
1 2543-DEL-2005-GPA-(15-06-2010).pdf 2010-06-15
2 2543-DEL-2005-Correspondence-Others-(15-06-2010).pdf 2010-06-15
2 2543-DEL-2005-Power of Attorney-100519.pdf 2019-05-23
3 2543-DEL-2005-Written submissions and relevant documents (MANDATORY) [02-05-2019(online)].pdf 2019-05-02
3 2543-DEL-2005-Form-1-(09-12-2010).pdf 2010-12-09
4 2543-DEL-2005-Correspondence-Others-(09-12-2010).pdf 2010-12-09
4 2543-DEL-2005-Correspondence to notify the Controller (Mandatory) [15-04-2019(online)].pdf 2019-04-15
5 2543-DEL-2005-HearingNoticeLetter.pdf 2019-03-18
5 2543-del-2005-gpa.pdf 2011-08-21
6 Other Patent Document [01-11-2016(online)].pdf 2016-11-01
6 2543-del-2005-form-5.pdf 2011-08-21
7 2543-DEL-2005.pdf 2016-06-30
7 2543-del-2005-form-3.pdf 2011-08-21
8 2543-del-2005-form-2.pdf 2011-08-21
8 2543-del-2005-Assignment-(29-05-2015).pdf 2015-05-29
9 2543-del-2005-Correspondence Others-(29-05-2015).pdf 2015-05-29
9 2543-del-2005-form-18.pdf 2011-08-21
10 2543-del-2005-form-1.pdf 2011-08-21
10 form 1-2-CS.pdf 2015-05-12
11 2543-del-2005-drawings.pdf 2011-08-21
11 MS-PD000852IN-SC-Amended claims-Clean-Dipan-8May'15.pdf 2015-05-12
12 2543-del-2005-description (complete).pdf 2011-08-21
12 MS-PD000852IN-SC-Amended claims-markup-ABSTRACT.pdf 2015-05-12
13 2543-del-2005-correspondence-others.pdf 2011-08-21
13 MS-PD000852IN-SC-Response-Dipan-8May'15.pdf 2015-05-12
14 2543-del-2005-claims.pdf 2011-08-21
14 Details under section 8.pdf_6.pdf 2015-05-07
15 2543-del-2005-assignment.pdf 2011-08-21
15 PETITION.pdf 2015-05-07
16 2543-del-2005-abstract.pdf 2011-08-21
16 Details under section 8.pdf 2015-04-27
17 new covering letter.pdf 2015-04-27
17 MTL-GPOA - MLK1.pdf ONLINE 2015-03-05
18 MS to MTL Assignment.pdf ONLINE 2015-03-05
18 new covering letter.pdf_28.pdf 2015-04-27
19 CBR-PRS1-23-04-2015-FER.pdf 2015-04-23
19 FORM-6-701-800(MLK).90.pdf ONLINE 2015-03-05
20 FORM-6-701-800(MLK).90.pdf 2015-03-13
20 MTL-GPOA - MLK1.pdf 2015-03-13
21 MS to MTL Assignment.pdf 2015-03-13
22 FORM-6-701-800(MLK).90.pdf 2015-03-13
22 MTL-GPOA - MLK1.pdf 2015-03-13
23 CBR-PRS1-23-04-2015-FER.pdf 2015-04-23
23 FORM-6-701-800(MLK).90.pdf ONLINE 2015-03-05
24 new covering letter.pdf_28.pdf 2015-04-27
24 MS to MTL Assignment.pdf ONLINE 2015-03-05
25 new covering letter.pdf 2015-04-27
25 MTL-GPOA - MLK1.pdf ONLINE 2015-03-05
26 2543-del-2005-abstract.pdf 2011-08-21
26 Details under section 8.pdf 2015-04-27
27 2543-del-2005-assignment.pdf 2011-08-21
27 PETITION.pdf 2015-05-07
28 2543-del-2005-claims.pdf 2011-08-21
28 Details under section 8.pdf_6.pdf 2015-05-07
29 2543-del-2005-correspondence-others.pdf 2011-08-21
29 MS-PD000852IN-SC-Response-Dipan-8May'15.pdf 2015-05-12
30 2543-del-2005-description (complete).pdf 2011-08-21
30 MS-PD000852IN-SC-Amended claims-markup-ABSTRACT.pdf 2015-05-12
31 2543-del-2005-drawings.pdf 2011-08-21
31 MS-PD000852IN-SC-Amended claims-Clean-Dipan-8May'15.pdf 2015-05-12
32 2543-del-2005-form-1.pdf 2011-08-21
32 form 1-2-CS.pdf 2015-05-12
33 2543-del-2005-Correspondence Others-(29-05-2015).pdf 2015-05-29
33 2543-del-2005-form-18.pdf 2011-08-21
34 2543-del-2005-Assignment-(29-05-2015).pdf 2015-05-29
34 2543-del-2005-form-2.pdf 2011-08-21
35 2543-del-2005-form-3.pdf 2011-08-21
35 2543-DEL-2005.pdf 2016-06-30
36 Other Patent Document [01-11-2016(online)].pdf 2016-11-01
36 2543-del-2005-form-5.pdf 2011-08-21
37 2543-DEL-2005-HearingNoticeLetter.pdf 2019-03-18
37 2543-del-2005-gpa.pdf 2011-08-21
38 2543-DEL-2005-Correspondence-Others-(09-12-2010).pdf 2010-12-09
38 2543-DEL-2005-Correspondence to notify the Controller (Mandatory) [15-04-2019(online)].pdf 2019-04-15
39 2543-DEL-2005-Written submissions and relevant documents (MANDATORY) [02-05-2019(online)].pdf 2019-05-02
39 2543-DEL-2005-Form-1-(09-12-2010).pdf 2010-12-09
40 2543-DEL-2005-Power of Attorney-100519.pdf 2019-05-23
40 2543-DEL-2005-Correspondence-Others-(15-06-2010).pdf 2010-06-15
41 2543-DEL-2005-GPA-(15-06-2010).pdf 2010-06-15
41 2543-DEL-2005-Correspondence-100519.pdf 2019-05-23