← Back to Patent Explorer
US6067565A Expired / Lapsed US ⏱️ 0.0 years remaining

Technique for prefetching a web page of potential future interest in lieu of continuing a current information download

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1998-01-15
•
Granted: 2000-05-23
•
Expires: 2018-01-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A technique that, through continual computation, harnesses available computer resources during periods of low processing activity and low network activity, such as idle time, for prefetching, e.g., web pages, or pre-selected portions thereof, into local cache of a client computer. This technique utilizes, e.g., a probabilistic user model, which specifies, at any one time, those pages or portions of pages that are likely to be prefetched given, e.g., a web page currently being rendered to a user; these pages being those which promise to provide the largest benefit (expected utility) to the user. Advantageously, this technique prematurely terminates or retards a current information download for a user in favor of prefetching a web page of future interest to that user whenever the latter page exhibits greater current incremental benefit to that user, in terms of a discounted expected rate of refinement in value with time for the future page, than a current incremental benefit being obtained for that user by continuing the current download.

Inventors

  • 👤 Eric Horvitz

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 11:23
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/90; G06F16/95; H; H04; H04L; H04L67/00; H04L67/50; H04L67/60; H04L67/62; H04L9/00; H04L9/40; H04L69/00; H04L69/30; H04L69/32; H04L69/322; H04L69/329

Claims Analysis

Total Claims: 59
Claim 1
Independent Claim 208 words
In a client computer system that, in response to user interaction with the system, requests items of information, as desired by a user, from a server, a method of obtaining the items of information comprising the steps of: (a) downloading, in response to a request from the user, a first item of information from the server so as to define a current download and rendering portions of the first item of information as it is being downloaded; and (b) while the current download progresses: determining, in response to a predefined aspect of the first item and a predefined user model, at least one second item of information which the user is likely to request next from the server; ascertaining incremental benefit to the user of continuing the current download and expected incremental benefit to the user of the second item of information; and in the event the expected incremental benefit of the second item exceeds the incremental benefit of continuing the current download, deallocating computational or network resources from continuing the current download and allocating the resources towards collectively prefetching and storing the second item of information so as to then obtain the second item for future access in the event the user subsequently requests the second item.
Claim 2
Dependent Claim 208 words
In a client computer system that, in response to user interaction with the system, requests items of information, as desired by a user, from a server, a method of obtaining the items of information comprising the steps of: (a) downloading, in response to a request from the user, a first item of information from the server so as to define a current download and rendering portions of the first item of information as it is being downloaded; and (b) while the current download progresses: determining, in response to a predefined aspect of the first item and a predefined user model, at least one second item of information which the user is likely to request next from the server; ascertaining incremental benefit to the user of continuing the current download and expected incremental benefit to the user of the second item of information; and in the event the expected incremental benefit of the second item exceeds the incremental benefit of continuing the current download, deallocating computational or network resources from continuing the current download and allocating the resources towards collectively prefetching and storing the second item of information so as to then obtain the second item for future access in the event the user subsequently requests the second item.
Claim 3
Dependent Claim 31 words
The method in claim 1 wherein the allocating step comprises the step of terminating the current download prior to its completion or retarding a rate at which the current download occurs.
Claim 4
Dependent Claim 24 words
The method in claim 2 further comprising repeating steps (b) at an onset of each one of a plurality of successively occurring time intervals.
Claim 5
Dependent Claim 30 words
The method in claim 3 wherein the server comprises a web server accessible over a networked connection, wherein the networked connection comprises either an Internet connection or an intra-net connection.
Claim 6
Dependent Claim 37 words
The method in claim 4 wherein each of the first and second items comprises a corresponding web page or predefined page component thereof, and the predefined aspect is an address associated with the first quantity of information.
Claim 7
Dependent Claim 100 words
The method in claim 5 further comprising the steps of, at the onset of said each one time interval: determining a first rate of refinement in value with time for the first item as the incremental benefit of the first item; determining a discounted flux-product for the second item as the expected incremental benefit of the second item; comparing, the first rate of refinement in value with the discounted flux-product for the second item; and if the discounted flux-product exceeds the first rate of refinement in value: terminating or retarding the current download; and prefetching and storing the second item.
Claim 8
Dependent Claim 82 words
The method in claim 6 further comprising the steps of: producing, in response to a first utility measure associated with the first item, the first rate of refinement with time; producing, in response to a second utility measure associated with the second item, a second rate of refinement in value with time for the second item; and generating the discounted flux-product as a product of the second rate of refinement, a transition probability associated with the second item and a discount factor.
Claim 9
Dependent Claim 57 words
The method in claim 7 wherein the step of producing the first rate of refinement comprises the step of generating the first rate of refinement as a predetermined function of a speed at which the first item is downloaded from the server, a size of the first item and a utility measure associated with the first item.
Claim 10
Dependent Claim 28 words
The method in claim 7 wherein the first and second utility measures are each a corresponding stored value, a predefined stored function or a predefined stored look-up table.
Claim 11
Dependent Claim 17 words
The method in claim 7 wherein the discount factor, d, is a number in the range 0<d≦1.
Claim 12
Dependent Claim 37 words
The method in claim 7 wherein the user model provides the transition probability for the second item in response to user activity, a user profile, structure or content of text or graphics associated with the first item.
Claim 13
Dependent Claim 23 words
The method in claim 11 wherein the user model is further responsive to statistical data obtained on the client computer or the server.
Claim 14
Dependent Claim 15 words
The method in claim 12 wherein the user model incorporates statistically analyzed log usage data.
Claim 15
Dependent Claim 27 words
The method in claim 13 wherein the user model further comprises a decision tree derived from a Bayesian network, a Bayesian model or a Hidden Markov model.
Claim 16
Dependent Claim 60 words
The method in claim 13 wherein the user model resides on the server, further comprising the step of providing, through the user model and in response to statistically analyzed server-based log data and the first item or a succession of items, including the first item, downloaded from the server to the client computer, the transition probability for the second item.
Claim 17
Dependent Claim 32 words
The method in claim 15 wherein the probability providing step comprises the step of determining the transition probability in response to a profile stored on either the client computer or the server.
Claim 18
Dependent Claim 21 words
The method in claim 16 wherein the transition probability determining step of ascertaining the transition probability in response to user activity.
Claim 19
Dependent Claim 32 words
The method in claim 13 further comprising the step of generating, through the user model and in response to user interactivity with the client computer, the transition probability for the second item.
Claim 20
Dependent Claim 30 words
The method in claim 13 wherein the interactivity comprises measurements of user scroll, user dwell, or position or user movement of a mouse pointer on the first item as rendered.
Claim 21
Dependent Claim 33 words
The method in claim 15 further comprising the step of generating, through the user model and in response to a pre-defined attribute of the first item, the transition probability for the second item.
Claim 22
Dependent Claim 32 words
The method in claim 20 wherein the predefined attribute comprises class, structure or layout of the first page, or content or context of text, graphics or hypertext links on the first item.
Claim 23
Dependent Claim 33 words
The method in claim 15 further comprising the step of generating, through the user model and in response to results returned by a search engine , the transition probability for the second item.
Claim 24
Dependent Claim 35 words
The method in claim 22 wherein the results comprise a similarity measure, a keyword in either a returned item from the search engine or a predefined field associated therewith, or content of the returned item.
Claim 25
Dependent Claim 41 words
The method in claim 15 further comprising the step of generating, through the user model and in response to content in the first item or within a predefined field associated with the first item, the transition probability for the second item.
Claim 26
Dependent Claim 16 words
The method in claim 24 wherein the predefined field comprises a description, summary or tag field.
Claim 27
Dependent Claim 32 words
The method in claim 15 further comprising the step of generating, through the user model and in response to collaborative filtering of the first item, the transition probability for the second item.
Claim 28
Dependent Claim 31 words
The method in claim 15 further comprising the step of generating, through the user model and in response to characteristics of user eye movement, the transition probability for the second item.
Claim 29
Dependent Claim 35 words
The method in claim 27 wherein the user eye movement characteristics comprise real-time measurements of actual eye movement of an individual user or a statistical model of user gaze patterns across a plurality of users.
Claim 30
Dependent Claim 18 words
A computer readable medium having computer executable instructions stored there in for performing the steps of claim 1.
Claim 31
Dependent Claim 219 words
Apparatus for a client computer system that, in response to user interaction with the system, requests items of information, as desired by a user, from a server, the apparatus comprising: a processor; a memory having computer executable instructions stored therein; wherein, in response to the stored instructions, the processor: (a) downloads, in response to a request from the user, a first item of information from the server so as to define a current download and rendering portions of the first item of information as it is being downloaded; and (b) while the current download progresses: determines, in response to a predefined aspect of the first item and a predefined user model, at least one second item of information which the user is likely to request next from the server; ascertains incremental benefit to the user of continuing the current download and expected incremental benefit to the user of the second item of information; and in the event the expected incremental benefit of the second item exceeds the incremental benefit of continuing the current download, deallocates computational or network resources from continuing the current download and allocates the resources towards collectively prefetching and storing the second item of information so as to then obtain the second item for future access in the event the user subsequently requests the second item.
Claim 32
Dependent Claim 219 words
Apparatus for a client computer system that, in response to user interaction with the system, requests items of information, as desired by a user, from a server, the apparatus comprising: a processor; a memory having computer executable instructions stored therein; wherein, in response to the stored instructions, the processor: (a) downloads, in response to a request from the user, a first item of information from the server so as to define a current download and rendering portions of the first item of information as it is being downloaded; and (b) while the current download progresses: determines, in response to a predefined aspect of the first item and a predefined user model, at least one second item of information which the user is likely to request next from the server; ascertains incremental benefit to the user of continuing the current download and expected incremental benefit to the user of the second item of information; and in the event the expected incremental benefit of the second item exceeds the incremental benefit of continuing the current download, deallocates computational or network resources from continuing the current download and allocates the resources towards collectively prefetching and storing the second item of information so as to then obtain the second item for future access in the event the user subsequently requests the second item.
Claim 33
Dependent Claim 32 words
The apparatus in claim 30 wherein the processor, in response to the stored instructions, terminates the current download prior to its completion or retards a rate at which the current download occurs.
Claim 34
Dependent Claim 31 words
The apparatus in claim 31 wherein the processor, in response to the stored instructions, repeats operations (b) at an onset of each one of a plurality of successively occurring time intervals.
Claim 35
Dependent Claim 30 words
The apparatus in claim 32 wherein the server comprises a web server accessible over a networked connection, wherein the networked connection comprises either an Internet connection or an intra-net connection.
Claim 36
Dependent Claim 37 words
The apparatus in claim 33 wherein each of the first and second items comprises a corresponding web page or predefined page component thereof, and the predefined aspect is an address associated with the first quantity of information.
Claim 37
Dependent Claim 105 words
The apparatus in claim 34 wherein the processor, in response to the stored instructions and at the onset of said each one time interval: determines a first rate of refinement in value with time for the first item as the incremental benefit of the first item; determines a discounted flux-product for the second item as the expected incremental benefit of the second item; compares, the first rate of refinement in value with the discounted flux-product for the second item; and if the discounted flux-product exceeds the first rate of refinement in value: terminates or retarding the current download; and prefetches and stores the second item.
Claim 38
Dependent Claim 86 words
The apparatus in claim 35 wherein the processor, in response to the stored instructions: produces, in response to a first utility measure associated with the first item, the first rate of refinement with time; produces, in response to a second utility measure associated with the second item, a second rate of refinement in value with time for the second item; and generates the discounted flux-product as a product of the second rate of refinement, a transition probability associated with the second item and a discount factor.
Claim 39
Dependent Claim 52 words
The apparatus in claim 36 wherein the processor, in response to the stored instructions, generates the first rate of refinement as a predetermined function of a speed at which the first item is downloaded from the server, a size of the first item and a utility measure associated with the first item.
Claim 40
Dependent Claim 28 words
The apparatus in claim 36 wherein the first and second utility measures are each a corresponding stored value, a predefined stored function or a predefined stored look-up table.
Claim 41
Dependent Claim 17 words
The apparatus in claim 36 wherein the discount factor, d, is a number in the range 0<d≦1.
Claim 42
Dependent Claim 37 words
The apparatus in claim 36 wherein the user model provides the transition probability for the second item in response to user activity, a user profile, structure or content of text or graphics associated with the first item.
Claim 43
Dependent Claim 23 words
The apparatus in claim 40 wherein the user model is further responsive to statistical data obtained on the client computer or the server.
Claim 44
Dependent Claim 15 words
The apparatus in claim 41 wherein the user model incorporates statistically analyzed log usage data.
Claim 45
Dependent Claim 27 words
The apparatus in claim 42 wherein the user model further comprises a decision tree derived from a Bayesian network, a Bayesian model or a Hidden Markov model.
Claim 46
Dependent Claim 64 words
The apparatus in claim 42 wherein the user model resides on the server and the processor, in response to the stored instructions, provides, through the user model and in response to statistically analyzed server-based log data and the first item or a succession of items, including the first item, downloaded from the server to the client computer, the transition probability for the second item.
Claim 47
Dependent Claim 32 words
The apparatus in claim 44 wherein the processor, in response to the stored instructions, determines the transition probability in response to a profile stored on either the client computer or the server.
Claim 48
Dependent Claim 23 words
The apparatus in claim 45 wherein the processor, in response to the stored instructions, ascertains the transition probability in response to user activity.
Claim 49
Dependent Claim 36 words
The apparatus in claim 42 wherein the processor, in response to the stored instructions, generates, through the user model and in response to user interactivity with the client computer, the transition probability for the second item.
Claim 50
Dependent Claim 30 words
The apparatus in claim 42 wherein the interactivity comprises measurements of user scroll, user dwell, or position or user movement of a mouse pointer on the first item as rendered.
Claim 51
Dependent Claim 37 words
The apparatus in claim 44 wherein the processor, in response to the stored instructions, generates, through the user model and in response to a pre-defined attribute of the first item, the transition probability for the second item.
Claim 52
Dependent Claim 32 words
The apparatus in claim 49 wherein the predefined attribute comprises class, structure or layout of the first page, or content or context of text, graphics or hypertext links on the first item.
Claim 53
Dependent Claim 36 words
The apparatus in claim 44 wherein the processor, in response to the stored instructions, generates, through the user model and in response to results returned by a search engine, the transition probability for the second item.
Claim 54
Dependent Claim 35 words
The apparatus in claim 51 wherein the results comprise a similarity measure, a keyword in either a returned item from the search engine or a predefined field associated therewith, or content of the returned item.
Claim 55
Dependent Claim 45 words
The apparatus in claim 44 wherein the processor, in response to the stored instructions, generates, through the user model and in response to content in the first item or within a predefined field associated with the first item, the transition probability for the second item.
Claim 56
Dependent Claim 16 words
The apparatus in claim 53 wherein the predefined field comprises a description, summary or tag field.
Claim 57
Dependent Claim 36 words
The apparatus in claim 44 wherein the processor, in response to the stored instructions, generates, through the user model and in response to collaborative filtering of the first item, the transition probability for the second item.
Claim 58
Dependent Claim 35 words
The apparatus in claim 44 wherein the processor, in response to the stored instructions, generates, through the user model and in response to characteristics of user eye movement, the transition probability for the second item.
Claim 59
Dependent Claim 35 words
The apparatus in claim 56 wherein the user eye movement characteristics comprise real-time measurements of actual eye movement of an individual user or a statistical model of user gaze patterns across a plurality of users.

References Cited (Backward Citations)

US5832231A Cited
US5802292A Cited
US5572643A Cited
US5727129A Cited
US5878223A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-05-23 2003-11-22 2004-05-23 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-05-23 2007-11-22 2008-05-23 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-05-23 2011-11-22 2012-05-23 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag