User devices contain many kinds of internal sensors. Additionally, user devices exist in proximity to other smart devices and sensors that sense various parameters and properties of user devices and the environment. As a result, more and more user data may be gathered by network service providers to customize delivered services.
In accordance with one aspect of the subject matter disclosed herein, a method is presented for delivering at least one service to a user device over one or more communications network. In accordance with the method, one or more queries is sent to a user device. Each query requests a binary response and each query inquires whether or not the user device has obtained one or more specified parameter values, or range of parameter values, from one or more sensors incorporated in or in communication with the user device. For each query a binary response is received, which indicates that the user device has or has not obtained the one or more specified parameter values, or the range of parameter values, about which the respective query is inquiring. One or more user device states are defined based on the queries and the binary responses thereto. Each of the user device states is a function of the one or more of the specified parameter values, or the range of parameter values, that the user device has indicated as being obtained from the one or more sensors. A service is selected to be delivered to a designated user device over the one or more communication networks based at least in part on the one or more user device states that have been defined. The selected service is delivered to the designated user device.
The following detailed descriptions are made with respect to the various figures included in the application and may refer to specific examples in said drawings; however, it is to be noted that such specific cases do not limit the generality of the various aspects of the invention. The elements of the present invention are detailed by the claims, embodiments and the figures contained herein.
It is commonplace for user devices, e.g., mobile/smart phones, to receive services from network service providers. However, many users often find such messages annoying and intrusive, bar some fortuitous “moments” when such messages prove useful or entertaining. Users are also increasingly concerned that network service providers get access to and use personal data of users to customize such services.
Technological improvements of the present invention are concerned with providing services to users without using their personal data (or using their personal data in a highly constrained manner), thus preserving privacy of users. Even when user data is used, it is done so in a constrained manner so as to dissuade assembling various user data items into a larger user profile. The network services envisioned in the present invention rely instead on data sensed by user devices or by smart devices and the sensed data is used in highly constrained ways. The services that are provided to the user may comprise services delivered to his user device or to one or more “nearby” smart devices, where the term “nearby” is explained later. (In one embodiment, for example, the term “nearby” may be taken to imply the immediate geographical vicinity of the user. In another embodiment, devices “A” and “B” may be considered to be “near” if they record the same user action, or have related orientations, etc.)
A user device is a device containing a processor, one or more sensors, and supports one or more network connections (wireless or wired). Network services are provided to user devices by one or more servers in connection with the one or more user devices. Examples of user devices are mobile phones, smart phones, tablets, smart glasses and watches, Virtual/Augmented Reality (VR/AR) devices, etc.
Most user devices contain various kinds of sensors that may measure various properties or parameters, e.g., location, altitude, acceleration, motion, proximity, heat, temperature, audio, light, etc.
User devices may also be surrounded by various kinds of smart devices that may measure various environmental properties or parameters, e.g., indoor GPS location sensing devices and geo-fences, location-deriving devices such as beacons and Bluetooth Low Energy (BLE) devices, etc. Many modern mobile phones contain GPS sensors today. Indoor GPS systems have been proposed in prior art in those cases where conventional GPS may lose accuracy. RFID (Radio Frequency Identifier) devices are further examples that allow more accurate location deriving than conventional GPS systems. Proximity to certain items indicated by planogram data or by RFID labels further improves accuracy of location derivation. (Planograms are datasets describing the placement of items in retail or other such stores.) VR/AR devices sense topological and orientation of devices, etc.
Conventionally, sensors contained within user devices (or sensor/smart devices in range of one or more user devices) may provide data to specialized software logic in the user device that may aggregate such data and provide it to various application programs (app). The (aggregated) data may also be transmitted to one or more network servers where it may be stored and analyzed, or provided to other servers via an Application Programming Interface (API).
A key point to note is that when data is received from an internal or external sensor/smart device, one or more apps may be “triggered” and, hence, may become capable of receiving services from the network. (The apps are assumed to be capable of establishing connections to named servers via fixed/wireless networks; hence, apps residing on the user device may be said to be in connection with the servers.)
Stated in a different way, user devices may be taken to exist in a multi-dimensional space characterized by various parameters such as location, temperature, altitude, acceleration, etc. A point in such a space may be represented as a n-tuple of values (i.e., a vector), e.g., [L, T, S, . . . ] where “L” may represent location, “T” the temperature, and “S” the service being rendered to the user device at this point, etc.
Given two points in such n-dimensional space, we may calculate the “distance” between them as explained in prior art. For example, if we restrict ourselves to two spatial dimensions (such as Euclidean space) then the distance metric is the familiar Euclidean distance between two planar points.
Terminological Note: The data generated by sensor and smart devices, when viewed in terms of a n-dimensional space, corresponds to points in that space. The term “nearby” used above may now be explained as follows. Given the n-dimensional distance between two points, we say that the two points are “nearby” if the distance between them is less than some pre-determined value. Thus, relationships between device data may be represented as distance metrics in the n-dimensional space.
We consider user devices situated in an n-dimensional space characterized by (internal or external) sensors and smart devices.
Conventionally, user devices such as the device depicted in
In the present invention, the user device stores data from internal and external sensors or from user commands and actions on the device itself. It may then respond to specific commands called probes as explained below.
Consider a server connected to such a user device. The server may issue a probe to the user device asking for data related to its location, ambient temperature, or device orientation, etc. The user device may then respond to such probes by issuing binary responses comprising true/false (yes/no) answers. Specialized software logic in the server may be used to decide what a probe needs to interrogate and the way the corresponding response is to be analyzed. We present examples of such considerations later.
Such a system of probes issued by server(s) and responses to probes generated by user devices enables the methods of the present invention to determine what services are to be delivered to a user device, at what “moments”, etc. That is, a service delivery schedule may be constructed whose components specify, inter alia, what service is to provided, when, using what device, what nearby devices, etc. That is, servers issue probes based on specialized software logic and use the resulting responses to build models, e.g., rules, that may then dictate the delivery and customization of services.
Since the responses and the data are in the control of users (via their user devices), it is seen that the users get to exercise control over what data is shared and may, further, limit the amount of data that is shared (as explained below).
A user device 100 is surrounded by external sensor/smart devices 200 that are in communication with the user device 100 via link 113. The user device 100 itself may have internal sensors (not shown but discussed in
RMS 106 (Response Management System) is a collection of one or more server(s) containing specialized logic. One of the functions performed by RMS is to generate probes to user devices and collect the responses. Another function is to store the received responses in storage systems 107, 108 and 109. We show multiple storage systems to possibly distinguish between storage systems using different technologies such as data retrieval speeds and capacities. Alternatively, a single storage system may also be used.
Once the response data has been stored, one or more servers called the Retrieval Engine (RE) 110 accesses the stored data at the command of another collection of servers called the Analysis Engine (AE) 111. A purpose of AE 111 is to analyze the response data retrieved by RE 110 and to construct models such as rules controlling the delivery of services to user devices. The output of the AE 111 is a delivery schedule comprising the mode of delivery (which device), when to deliver, what to deliver, etc. AE 111 is thus in a unique position to decide what probes should be sent out to user devices so that appropriate models may be constructed. AE 111 instructs RMS 106 regarding the probes to be issued to user devices via connection 115 (cf.
Once AE 111 has generated a delivery schedule for one or more services, it passes the delivery schedule to the Delivery Engine DE 112 whose function is to execute the delivery schedule. In particular, DE 112 may deliver to one or more devices such as device 100. Additional user devices may also be selected for receiving services. In one embodiment, geographically “nearby” devices such as 101 may be selected to receive services.
A user device receives sensed data from its internal sensors or from external sensors that are in connection with the device. The data received is processed to produce tables of data such as histograms, control charts, check sheets, Pareto charts, Scatter diagrams, Stratification diagrams, or control charts, etc. A histogram is a graphical representation of data produced by first “binning” the data into groups (bins) and then counting the number of values (frequency, occurrence) in each bin.
It is the responsibility of the service logic of AE 111 to decide how the data collected by the Aggregator 105 (
Once the Aggregator 105 (cf.
As explained above, it is a function of AE 111 (cf.
Software logic 105 (cf.
A user may not mark any bins in which case a probing entity will only get error responses to all its probes. In this manner a user may safeguard his privacy completely or selectively reveal certain aspects of his data. It is to be noted that the afore-mentioned scheme is only one method of safeguarding user data and many other schemes may be defined.
RMS logic (106, cf.
RMS logic may define a state of a device as a function of one or more response categories (bins). Thus, if the RMS logic receives responses (to probes) related to Location and Temperature bins, it may be convenient to show the state of the user device as |Location, Temperature> where “Location” and “Temperature” respectively denote specific bins for which the responses were “true”. For example, assume the probes “[2nd St]” and “[98° F.]” get the responses “true” and “true” respectively, from a user device. Then the user device may be assumed to be in state, |2nd St, 98° F.>. For the sake of brevity, we will describe the state of a user device using the latter form, keeping in mind the proviso that a state is always derived from response data that, in turn, relates to bins/categories into which the data has been organized.
A succession of probes may be sent to a user device in which the query included in a given probe depends on responses received from the user device to previous probes. In this way, for instance, the RMS logic can obtain more precise knowledge as to which state(s) the user device is in and/or has been in.
RMS logic may define, by way of example, a special state, called the dormant state, that satisfies the following conditions.
Other sets of conditions may be used to define different notions of dormant states. A journey is a sequence of states of a device demarcated by two “dormant” states. A journey may be denoted as
|dormant>,|s1>,|s2>,|s3>, . . . ,|dormant>
where s1, s2, etc., are states distinct from the dormant state.
A state of a device may be a function of more than one response data. For example,
s1=|A1,L1,B1,T1,S1>
may describe a state of a device as a function of the following response data.
We are now in a position to describe the overall general method of the present invention (
In step 1, in an initialization phase, a user device receives sensor data and organizes it into data structures (tables) as discussed above. Users may be invited to mark the organized data. Next, probes may be received by the user device with respect to the organized data and binary (true/false) responses may be generated.
In step 2, the responses are received by a Response Management System (RMS). The responses received by the RMS comprises true/false values for various categories/bins into which the data has been organized by the user device.
In step 3, the responses are analyzed and transformed into one or more states of a user device. A determination is then made if the states of the user device comprise a simple or a complex “journey” (explained later) in step 4.
In step 5, a service delivery schedule is constructed for one or more user devices.
In step 6, one or more services are delivered in accordance with the constructed schedule.
We now discuss specific kinds of journeys as analyzed by AE 111 (cf.
Note that in this journey, there exist 6 possible states at which one or more services may be delivered to the user device, corresponding to the six states “A” through “F”. A “moment” is a state of a user device in which services may be delivered to the user device.
As explained above, the data stored in Storage Systems 107, 108 and 109 (cf.
AE 111 may, in fact, construct sophisticated models or rules. For example, a rule may be constructed that users who have received more than one service in the past hour at locations L1 and L2 must not be delivered another service when they are near a third location indicated by the beacon device B1.
As another example, consider a user playing a VR/AR game on his user device. A server analyzes the user's previous game states and constructs a delivery schedule that sends instructions to the user in particular game situations that are detected as a function of the user action, device orientation, and object being displayed on the display of the user device (e.g., a particular monster). Thus, the rule could be represented as follows.
As noted, the exemplary journey of
In some cases, when a service is delivered to a user device, it may elicit some actions from the user. Examples of such actions may be that the user clicks on the elements of delivered content, makes a purchase decision, launches an app, etc. These actions may cause the state of the device to change since user actions are generally detectable via the installed apps or sensors. Logic in AE 111 (cf.
We emphasize that the above rule is an example of a heuristic and is not always true.
Software logic AE 111 (cf.
In some situations, for example when the user has marked data elements to guard his privacy, building such models may be quite difficult or impossible. We now present a simple model that may be used when other model building attempts prove less beneficial.
Let the total number of services delivered to a user device over all moments in a journey be “N” and the number of those services with which the user interacts in some manner that indicates the user is responding positively to the service at moment s1 be “n”. For instance, the detection of a user opening or clicking on a delivered service may indicate that the user is responding positively to the service. The ratio “n/N(s1)” will be called the magic ratio of state, “s1”.
Note, if a state (moment) s1 has the magic ratio 0.45 and moment s2 has the magic ratio 0.32 then s1 is a “better” opportunity than s2. The simple idea behind the magic ratio concept is that delivered services at moment s1 got more responses compared to moment s2. The magic ratio is one example of a metric; it is possible to formulate many other such metrics.
A moment that has the largest magic ratio in a journey will be referred to as a magic moment. Note that the best ratio any moment can achieve is 1. It may be said that moments strive for the perfection by inching closer to unity.
As an example, prior art has proposed that offers made to a retail customer when said customer is in close geographical proximity to an item could be, or will be, quite effective. If a customer is standing next to where shirts are being displayed by a retailer and said customer receives a rebate offer on shirts, is he likely to click on such an offer?
Such a heuristic may indeed be quite effective. However, there is no empirical data to prove or disprove such a conjecture. The methods provided in this invention may be used to gather data on the effectiveness of such heuristics. That is, we may gather data on the effectiveness of “proximity-based” moments. We may then discover, for example, that magic moments are strongly correlated with proximity-based opportunities. Or we may determine otherwise.
Thus, our methods may be used to test models and ascertain their efficacy under a variety of situations (by taking collections of user devices and analyzing their states).
Method to Determine Magic Moments of a Journey.
We illustrate the above procedure by recourse to
We will also assume that we will skip the first moment, i.e., parameter k=1. Table 401 shows the initial magic ratios established when the system is initialized.
Now consider the journey (A, B, C). This journey is shown in
Now we assume that the moment “B” results in the user taking some action; thus, we add 1 to the denominator and to the numerator of “B” giving the table of ratios shown in Table 403.
Now Table 403 shows the magic ratios when a second journey starts, let it be (B, C, A). Proceeding as above, the first moment, “B”, will be skipped (k=1) and the next moment “C” will be designated as the magic moment. This is shown in 404. The updated table of ratios is shown in 405,
For the next mobile device if the journey 406 (cf.
Thus, the process starts with Table 401 showing the magic ratios and ends with the final ratios as shown in Table 413.
The parameter “k”, i.e., the number of initial states that may be skipped, may be determined by recourse to training runs as discussed above using historical data or by using statistical sampling techniques.
In the preceding exposition we considered journeys that had a fixed number of moments. In many situations, we do not expect to know the exact number of moments in a journey. The best we can hope for is to provide a probabilistic estimate of the number of moments in a journey.
For example, consider
The arrows labeled “A” show one possible journey of the user device. The length of this journey is 6. The arrows labeled “B” show a journey of length 7 for the user device. Finally, the arrows labeled “C” show a journey that is 14 moments long. If we now consider many user devices, we will get many journeys of type “A”, “B”, etc.
We now consider the problem of finding the magic moments for journeys in such situations. The idea is to create zones of an area such as a shopping mall based on various criteria and then coalescing the journeys within a zone to a smaller number of journeys.
For example,
As mentioned above, we may use any number of criteria to create clusters.
We now describe an exemplary clustering method.
Clustering Method.
It is important to understand the impact of the above procedure. Effectively, the procedure aggregates several moments into a single moment, thereby reducing multiple journeys into a few or a single journey. Equivalently, the journeys have a smaller number of moments and their lengths may be arbitrarily fixed, i.e., we may assume that all journeys have a fixed number of moments.
User Preferences
The embodiment discussed so far has mostly concentrated on sensor data being used to determine states of user devices. We now turn our attention to user preferences.
As an example, consider a user (carrying a user device) in an environment where a smart device renders music. The smart device is so configured as to render music that is of a liking to users in the environment, e.g., a retail store with ambient music service. Thus, the user gets to experience a user-friendly environment. In order to determine the user's musical preferences, the user is willing to share names of composers but not the actual music pieces that he may have played or purchased, etc. In particular, the user's data is to be treated as private but certain designated properties may be revealed, e.g., the user is willing to respond to probes of the form “Do you like Chopin”, his responses being binary “true/false”.
In order to play his music, the user utilizes a particular app, that records the music played by the user. Many conventional apps save playlists of music pieces played or specified by users.
It is then possible for said music app to organize a user's playlist into a frequency table as discussed in
Thus, the user device may be configured to convey the user's musical preferences in a constrained manner. In particular, the user device may respond to probes by RMS 106 of
Data from retail purchases and other apps may also be treated similarly.
Thus, the following illustrative embodiments may be considered typical.
The methods and system of the present invention may now be used to implement the above scenarios.
A user and his family members are at home. Each family member has a preference for the temperature maintained by a smart thermostat device installed in the house. (Conventionally, the household members use their user devices to set the temperature to their liking; the smart thermostat learns a user's preferred temperature over time.)
The thermostat conveys the current temperature to the various user devices in the house at any given moment. Special logic (Aggregator 105
A smart laundry machine, using its sensors, detects that it needs a refill of detergent. Its service logic is programmed to solicit bids and choose the lowest cost bid. The laundry sensor in the laundry machine generates a “detergent needed” message that is transmitted to the user device of the owner of the machine. (Alternatively, a device of the manufacturer of the machine may be notified.) The message is communicated to a specific app in the user device that sends the message to Aggregator 105,
The terms “module,” “program,” “engine” and “component” may be used to describe an aspect of computing-based device 400 that is implemented to perform one or more particular functions. In some cases, such a module, program, engine or component may be instantiated via a logic subsystem executing instructions held by a storage such as a memory. It is to be understood that different modules, programs, and/or components may be instantiated from the same application, service, code block, object, library, routine, API, function, etc. Likewise, the same module, program, engine and/or component may be instantiated by different applications, services, code blocks, objects, routines, APIs, functions, etc. The terms “module,” “program,” “engine” and “component” are meant to encompass individual or groups of executable files, data files, libraries, drivers, scripts, database records, etc.
The computing-based device 1000 comprises one or more inputs 1006 which are of any suitable type for receiving media content, Internet Protocol (IP) input, activity tags, activity state information, resources or other input. The device also comprises communication interface 1007 to enable the device to communicate with one or more other entity using any suitable communications medium.
Computing-based device 1000 also comprises one or more processors 1001 that may be microprocessors, controllers or any other suitable type of processors for processing computing executable instructions to control the operation of the device in order to provide a search augmentation system. Platform software comprising an operating system 1004 or any other suitable platform software may be provided at the computing-based device to enable application software 403 to be executed on the device.
Various operations of embodiments are provided herein. In one embodiment, one or more of the operations described may constitute computer readable instructions stored on one or more computer readable media, which if executed by a computing device, will cause the computing device to perform the operations described. The order in which some or all of the operations are described should not be construed as to imply that these operations are necessarily order dependent. Alternative ordering will be appreciated by one skilled in the art having the benefit of this description. Further, it will be understood that not all operations are necessarily present in each embodiment provided herein.
The computer executable instructions may be provided using any non-transitory computer-readable media, such as memory 1002. The memory is of any suitable type such as random access memory (RAM), a disk storage device of any type such as a magnetic or optical storage device, a hard disk drive, or a CD, DVD or other disc drive. Flash memory, EPROM or EEPROM may also be used.
An output is also provided such as an audio and/or video output to a display system integral with or in communication with the computing-based device. A display interface 1005 is provided to control a display device to be used in conjunction with the computing device. The display system may provide a graphical user interface, or other user interface of any suitable type.
This application is a continuation of U.S. Ser. No. 15/761,886, filed Mar. 21, 2018, which is a National Stage of Application No. PCT/US16/53319, filed Sep. 23, 2016 and also claims priority to U.S. Provisional Application No. 62/222,472, filed Sep. 23, 2015 entitled “METHOD AND SYSTEM FOR MODIFYING USER BEHAVIOR THROUGH MARKETING STRATEGIES USING MOBILE INTERACTIONS”, the contents of which is incorporated by herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
4360875 | Behnke | Nov 1982 | A |
5604676 | Penzias | Feb 1997 | A |
5608778 | Partridge, III | Mar 1997 | A |
6248065 | Brown | Jun 2001 | B1 |
6601012 | Horvitz | Jul 2003 | B1 |
6697730 | Dickerson | Feb 2004 | B2 |
6829478 | Layton | Dec 2004 | B1 |
6912386 | Himberg | Jun 2005 | B1 |
7206559 | Meade | Apr 2007 | B2 |
7224698 | Kreiner | May 2007 | B2 |
7226494 | Schwartz | May 2007 | B1 |
7266595 | Black | Sep 2007 | B1 |
7302481 | Wilson | Nov 2007 | B1 |
7363031 | Aisa | Apr 2008 | B1 |
7379464 | Kreiner | May 2008 | B2 |
7400891 | Aaron | Jul 2008 | B2 |
7539723 | Agrawal | May 2009 | B2 |
7548886 | Kirkland | Jun 2009 | B2 |
7548915 | Ramer | Jun 2009 | B2 |
7561535 | Naqvi | Jul 2009 | B2 |
7672297 | Naqvi | Mar 2010 | B2 |
7724753 | Naqvi | May 2010 | B2 |
7756633 | Huang | Jul 2010 | B2 |
7773972 | Croome | Aug 2010 | B2 |
7792528 | Naqvi | Sep 2010 | B2 |
7802292 | Shaw | Sep 2010 | B2 |
7840427 | O'Sullivan | Nov 2010 | B2 |
7856226 | Wong | Dec 2010 | B2 |
7864936 | Naqvi | Jan 2011 | B2 |
7890743 | Buchanan | Feb 2011 | B2 |
8119119 | Mallet et al. | Feb 2012 | B2 |
8170534 | Naqvi | May 2012 | B2 |
8195188 | Fomukong | Jun 2012 | B2 |
8285571 | Demirdjian | Oct 2012 | B2 |
8320272 | Kahn | Nov 2012 | B2 |
8326001 | Free | Dec 2012 | B2 |
8427303 | Brady | Apr 2013 | B1 |
8432899 | Naqvi | Apr 2013 | B2 |
8433303 | Naqvi | Apr 2013 | B2 |
8479266 | Delker | Jul 2013 | B1 |
8483373 | Naqvi | Jul 2013 | B2 |
8504921 | Wilson | Aug 2013 | B2 |
8532069 | Balwani | Sep 2013 | B2 |
8553866 | Naqvi | Oct 2013 | B2 |
8565820 | Riemer | Oct 2013 | B2 |
8595103 | Wargin | Nov 2013 | B1 |
8611334 | Naqvi | Dec 2013 | B2 |
8620354 | Beasley | Dec 2013 | B2 |
8666894 | Buch | Mar 2014 | B1 |
8726390 | Martini | May 2014 | B1 |
8730945 | Naqvi | May 2014 | B2 |
8787936 | Tibbitts | Jul 2014 | B2 |
8874701 | Guinard | Oct 2014 | B2 |
8929857 | Baker | Jan 2015 | B2 |
8931001 | Wilson | Jan 2015 | B2 |
8947696 | Uyttendaele | Feb 2015 | B1 |
8953566 | Hegde | Feb 2015 | B2 |
9077611 | Cordray | Jul 2015 | B2 |
9125106 | Velusamy | Aug 2015 | B1 |
9300739 | Deprun | Mar 2016 | B2 |
9325510 | Deprun | Apr 2016 | B2 |
9467562 | Bozionek | Oct 2016 | B2 |
9537866 | Mcdonald | Jan 2017 | B2 |
20020130176 | Suzuki | Sep 2002 | A1 |
20020188589 | Salmenkaita et al. | Dec 2002 | A1 |
20030071117 | William | Apr 2003 | A1 |
20030073411 | William | Apr 2003 | A1 |
20030073432 | William | Apr 2003 | A1 |
20040125993 | Zhao | Jul 2004 | A1 |
20040137925 | Lowe | Jul 2004 | A1 |
20040256474 | Park | Dec 2004 | A1 |
20050158618 | Liberatore et al. | Jul 2005 | A1 |
20060069717 | Mamou | Mar 2006 | A1 |
20060092037 | Neogi | May 2006 | A1 |
20060179056 | Rosenberg | Aug 2006 | A1 |
20060270350 | Kim | Nov 2006 | A1 |
20070055785 | Stevens | Mar 2007 | A1 |
20070115940 | Kamen | May 2007 | A1 |
20070150480 | Hwang | Jun 2007 | A1 |
20070150599 | Neogi | Jun 2007 | A1 |
20070155402 | Van Erlach | Jul 2007 | A1 |
20070281713 | Mullen | Dec 2007 | A1 |
20080052395 | Wright | Feb 2008 | A1 |
20080092155 | Ferrone | Apr 2008 | A1 |
20080092156 | Ferrone | Apr 2008 | A1 |
20080137646 | Agarwal | Jun 2008 | A1 |
20080162346 | Aaron | Jul 2008 | A1 |
20080164308 | Aaron | Jul 2008 | A1 |
20080195664 | Maharajh | Aug 2008 | A1 |
20080248815 | Busch | Oct 2008 | A1 |
20080270172 | Luff | Oct 2008 | A1 |
20080294487 | Nasser | Nov 2008 | A1 |
20090077645 | Kottahachchi | Mar 2009 | A1 |
20090085803 | Mergen | Apr 2009 | A1 |
20090119384 | Kreiner | May 2009 | A1 |
20090124241 | Krishnaswamy | May 2009 | A1 |
20090132362 | Fisher | May 2009 | A1 |
20090152343 | Carter | Jun 2009 | A1 |
20090169018 | Deisher | Jul 2009 | A1 |
20090183178 | Imai | Jul 2009 | A1 |
20090204612 | Keshavarz | Aug 2009 | A1 |
20090222907 | Guichard | Sep 2009 | A1 |
20090234850 | Kocsis | Sep 2009 | A1 |
20090252113 | Take | Oct 2009 | A1 |
20090264131 | Wu | Oct 2009 | A1 |
20090299853 | Jones | Dec 2009 | A1 |
20090299990 | Setlur | Dec 2009 | A1 |
20090309711 | Adappa | Dec 2009 | A1 |
20100009657 | Dingler | Jan 2010 | A1 |
20100057485 | Luft | Mar 2010 | A1 |
20100057562 | Gabbay | Mar 2010 | A1 |
20100088532 | Pollack | Apr 2010 | A1 |
20100107225 | Spencer | Apr 2010 | A1 |
20100113065 | Narayan | May 2010 | A1 |
20100121684 | Morio | May 2010 | A1 |
20100122281 | Wang | May 2010 | A1 |
20100153289 | Schneiderman | Jun 2010 | A1 |
20100167691 | Howarter | Jul 2010 | A1 |
20100191604 | Raleigh | Jul 2010 | A1 |
20100225493 | Zishaan | Sep 2010 | A1 |
20100227691 | Karsten | Sep 2010 | A1 |
20100299451 | Yigang | Nov 2010 | A1 |
20100319059 | Agarwal | Dec 2010 | A1 |
20100323657 | Barnard | Dec 2010 | A1 |
20110009107 | Guba | Jan 2011 | A1 |
20110010543 | Schmidt | Jan 2011 | A1 |
20110054904 | Fenton | Mar 2011 | A1 |
20110077028 | Wilkes | Mar 2011 | A1 |
20110093161 | Zhou | Apr 2011 | A1 |
20110099040 | Felt | Apr 2011 | A1 |
20110150204 | Halachmi | Jun 2011 | A1 |
20110153759 | Rathod | Jun 2011 | A1 |
20110158090 | Riley | Jun 2011 | A1 |
20110167105 | Ramakrishnan | Jul 2011 | A1 |
20110202293 | Kobraei | Aug 2011 | A1 |
20110202485 | Cutler | Aug 2011 | A1 |
20110208822 | Rathod | Aug 2011 | A1 |
20110225293 | Rathod | Sep 2011 | A1 |
20110235549 | Ahlers | Sep 2011 | A1 |
20110257973 | Chutorash | Oct 2011 | A1 |
20110275321 | Zhou | Nov 2011 | A1 |
20110276396 | Rathod | Nov 2011 | A1 |
20110276406 | Sneyders | Nov 2011 | A1 |
20110276981 | Clohessy | Nov 2011 | A1 |
20110289392 | Naqvi | Nov 2011 | A1 |
20110294520 | Zhou | Dec 2011 | A1 |
20110313804 | Camp | Dec 2011 | A1 |
20120010867 | Eder | Jan 2012 | A1 |
20120021770 | Naqvi | Jan 2012 | A1 |
20120023554 | Murgia | Jan 2012 | A1 |
20120028624 | Jedlicka | Feb 2012 | A1 |
20120041983 | Jennings | Feb 2012 | A1 |
20120101903 | Oh | Apr 2012 | A1 |
20120150601 | Fisher | Jun 2012 | A1 |
20120165042 | Cho | Jun 2012 | A1 |
20120177045 | Berman | Jul 2012 | A1 |
20120214463 | Smith | Aug 2012 | A1 |
20120258161 | Patel | Oct 2012 | A1 |
20120271715 | Morton | Oct 2012 | A1 |
20120303439 | Flitcroft | Nov 2012 | A1 |
20120316962 | Rathod | Dec 2012 | A1 |
20130029693 | Bradley | Jan 2013 | A1 |
20130094403 | Park | Apr 2013 | A1 |
20130132277 | Naqvi | May 2013 | A1 |
20130150117 | Rodriguez | Jun 2013 | A1 |
20130151343 | Phan | Jun 2013 | A1 |
20130246175 | Bilange | Sep 2013 | A1 |
20130290106 | Bradley | Oct 2013 | A1 |
20130295908 | Zeinstra | Nov 2013 | A1 |
20140051485 | Wang et al. | Feb 2014 | A1 |
20140087760 | Bennett | Mar 2014 | A1 |
20140122528 | Yamagishi | May 2014 | A1 |
20140129393 | Soon-Shiong | May 2014 | A1 |
20140129942 | Rathod | May 2014 | A1 |
20140143341 | Brady | May 2014 | A1 |
20140172373 | Edwards | Jun 2014 | A1 |
20140258471 | Etchegoyen | Sep 2014 | A1 |
20140295804 | Naqvi | Oct 2014 | A1 |
20140335889 | Witych | Nov 2014 | A1 |
20140365334 | Hurewitz | Dec 2014 | A1 |
20140370869 | Naqvi | Dec 2014 | A1 |
20150046828 | Desai et al. | Feb 2015 | A1 |
20150073901 | Arnold | Mar 2015 | A1 |
20150088701 | Desmarais | Mar 2015 | A1 |
20150120749 | Phanishayee et al. | Apr 2015 | A1 |
20150161665 | Grimes | Jun 2015 | A1 |
20150289111 | Ozkan | Oct 2015 | A1 |
20150356657 | Pas | Dec 2015 | A1 |
20160150467 | Shaw | May 2016 | A1 |
20160171486 | Wagner | Jun 2016 | A1 |
20170208459 | Raleigh | Jul 2017 | A1 |
20170215138 | Shaw | Jul 2017 | A1 |
Number | Date | Country |
---|---|---|
1372309 | Dec 2003 | EP |
2001095642 | Dec 2001 | WO |
2007002604 | Jan 2007 | WO |
Entry |
---|
Hastie, et al., “The Elements of Statistical Learning, Data Mining, Inference and Prediction” Second Edition, copyright 2009, Chapter 2: “Overview of Supervised Learning”, pp. 9-39. |
Tofel, “With New Apps Google Now May Be Your Future Home Screen”, dated Jan. 30, 2015. Downloaded at https:/ /gigaom.com/2015/01 /30/with-new-apps-google-now-may-be-your-future-home-screen/, 8 pages. |
Frost, “iBeacon in iOS 8 getting location based notifications, plus: FCC filing suggests Apple to launch own iBeacon hardware”, dated Sep. 2, 2014. Downloaded at http://www.macworld.co.uk/news/iosapps/apples-plans-for-beacon-hardware-new-ios-8-location-notifications-3542708/, 5 pages. |
Evgeny Morozov: To Save Everything, Click Here, www.publicaffairsbooks.com; see also Perseus Books, 2013. |
Jay Przybyla, “Cell Phone Use While Driving: A Literature Review and Recommendations” dated Dec. 11, 2008; downloaded at http://www.civil.utah.edu/˜zhou/cell_phone_and_distracted_driver.pdf, :townloaded on May 9, 2017. |
David Teater,“Distracted driving” copyright 2009 downloaded at http://www.nsc.org/Membership%20Site%20Document%20Library/Recorded-Webinars/Corporate%20Distracted%20Driving%20Copy%20NSC%20National%20Safety%20Month.pdf, downloaded on May 9, 2017. |
Fan “How Cards are Quitely Transforming the Web”, Feb. 2015, 10 pages. |
Constine, “Vurb is Crazy Engough to Fight Google”, Feb. 2015 14 pages. |
UberCab Takes the Hassle Out of Booking a Car Service by Leena Rao on Jul. 5, 2010, 6 pages downloaded at https://web .archive.org/web/20100708015701 /http :/tech crunch.com/201 0/0 7 /05/ubercab-takes-the-hassle-out-of-booking-a-car-service/. |
Christin et al. A survey on privacy in mobile participatory sensing applications. The Journal of Systems and Software; vol. 84, No. 11; 1928-1946, 2011. [retrieved on Jul. 11, 2016). Retrieved from the Internet. <URL:flp://130.83.198.178/papers/CRKH 11.pdf>. entire documen. |
Number | Date | Country | |
---|---|---|---|
20210021678 A1 | Jan 2021 | US |
Number | Date | Country | |
---|---|---|---|
62222472 | Sep 2015 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 15761886 | US | |
Child | 16916212 | US |