Managing interactions between computer users' context models
First Claim
1. A method in a wearable computer for an executing user characterization system to provide information about a current state of a user of the wearable computer, the user characterization system modeling the current state with multiple state attributes and including state server modules (SSMs) to supply values for the state attributes, state client modules (SCMs) to process values for the state attributes, and an intermediary module to facilitate exchange of state attribute values, comprising:
- under control of each SSM, generating values for at least one of the state attributes and sending the generated values to the intermediary module;
under control of each SCM, receiving values for at least one state attribute from the intermediary module and performing processing based on the received values;
under control of the intermediary module, facilitating exchange of values by, receiving values for the state attributes from SSMs and from a first of multiple other characterization systems, each of the other characterization systems executing on another computer to model a current state related to the another computer;
for each state attribute, storing the received values for the attribute; and
receiving requests for values of indicated state attributes from SCMs and from a second of the other characterization systems, and sending stored values of the indicated state attributes to the SCMs and the second other characterization system; and
modeling an aspect of a current state using distributed state information by, identifying multiple portions of the distributed state information needed for the modeling of the aspect, and identifying multiple of the other characterization systems each having access to one of the identified multiple portions;
gathering the identified portions of the distributed state information from the identified other characterization systems; and
generating at least one value for the modeled aspect based on the gathered portions of the distributed state information, so that the user characterization system can interact with other characterization systems in order to exchange and use distributed state information of interest.
3 Assignments
0 Petitions
Accused Products
Abstract
Techniques are described for providing information about a current state that is represented with multiple attributes. In some situations, the providing includes a first computer receiving indications of multiple characterization modules, each characterization module executing on a computer to model an aspect of a current state related to that computer; receiving an indication of one of the multiple attributes of the represented current state; determining multiple of the characterization modules whose modeled aspects are related to the indicated one attribute; and gathering information about the modeled aspects related to the indicated one attribute from the determined characterization modules so that a value for the indicated one attribute can be generated based on the gathered information.
492 Citations
89 Claims
-
1. A method in a wearable computer for an executing user characterization system to provide information about a current state of a user of the wearable computer, the user characterization system modeling the current state with multiple state attributes and including state server modules (SSMs) to supply values for the state attributes, state client modules (SCMs) to process values for the state attributes, and an intermediary module to facilitate exchange of state attribute values, comprising:
-
under control of each SSM, generating values for at least one of the state attributes and sending the generated values to the intermediary module;
under control of each SCM, receiving values for at least one state attribute from the intermediary module and performing processing based on the received values;
under control of the intermediary module, facilitating exchange of values by, receiving values for the state attributes from SSMs and from a first of multiple other characterization systems, each of the other characterization systems executing on another computer to model a current state related to the another computer;
for each state attribute, storing the received values for the attribute; and
receiving requests for values of indicated state attributes from SCMs and from a second of the other characterization systems, and sending stored values of the indicated state attributes to the SCMs and the second other characterization system; and
modeling an aspect of a current state using distributed state information by, identifying multiple portions of the distributed state information needed for the modeling of the aspect, and identifying multiple of the other characterization systems each having access to one of the identified multiple portions;
gathering the identified portions of the distributed state information from the identified other characterization systems; and
generating at least one value for the modeled aspect based on the gathered portions of the distributed state information, so that the user characterization system can interact with other characterization systems in order to exchange and use distributed state information of interest. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
determining a need for access to a resource available to one of the other characterization systems executing on another computer;
requesting the one other characterization system to provide access to the resource; and
accessing the resource after the one other characterization system provides access to the resource.
-
-
3. The method of claim 2 wherein the resource is processing capabilities of the another computer, wherein the accessing of the resource includes use of the processing capabilities on behalf of the user characterization system, and including receiving an indication of results of the use of the processing capabilities.
-
4. The method of claim 2 wherein the resource is an input device of the another computer, and wherein the accessing of the resource includes receiving input information from the input device.
-
5. The method of claim 2 wherein the resource is information used during the executing of the one other characterization system, and wherein the accessing of the resource includes retrieving the information.
-
6. The method of claim 2 wherein the resource has access to a first portion of the distributed state information, wherein the determined need for access to the resource is to retrieve the first portion, and wherein the accessing of the resource results in the retrieving of the first portion.
-
7. The method of claim 1 wherein the distributed state information relates to a current state of a group of users, wherein the identified other characterization systems are user characterization systems each modeling a current state of one of the users in the group, and wherein the modeled aspect is of the current state of the group of users.
-
8. The method of claim 1 wherein the other characterization systems are hierarchically organized such that the identified other characterization systems are supervisors each having an associated group of other subordinate characterization systems, wherein the portion of the distributed state information gathered from each of the supervisors includes pieces of distributed state information obtained from the subordinate characterization systems associated with that supervisor, and wherein the modeled aspect is of the current state of the hierarchical organization.
-
9. The method of claim 1 wherein each of the other characterization systems is specialized to mode a distinct facet of the current state of the user, wherein the aspect of the current state to be modeled includes information about multiple of the facets, and wherein the identified other characterization systems are the specialized characterization systems that model the multiple facets.
-
10. The method of claim 1 wherein the user characterization system executes on a computer remote from the wearable computer, and wherein the wearable computer is a thin client device to communicate with the executing user characterization system.
-
11. The method of claim 10 wherein the wearable computer includes at least one sensor to supply input information to the SSMs.
-
12. The method of claim 10 wherein the wearable computer includes at least one output device to present information to the user.
-
13. The method of claim 1 wherein the first other characterization system executes on another computer having a sensor receiving information about the user of the wearable computer, and wherein the received values from the first other characterization system for a state attribute of the modeled current state of the user are based on the received information from the sensor.
-
14. The method of claim 1 wherein the second other characterization system executes on another computer with an output device that is perceivable by the user of the wearable computer, and including presenting information to the user on the output device based on the state attribute values sent to the second other characterization system from the intermediary module.
-
15. The method of claim 1 wherein each of the state attributes has a local name used by the user characterization system, wherein the receiving of each value for a state attribute from the first other characterization system includes an indication of a first state attribute using a reference for the first state attribute other than the local name of the first state attribute, wherein the receiving of each request for a value of a state attribute from the second other characterization system includes an indication of a second state attribute using a reference for the second state attribute other than the local name of the second state attribute, and including translating the references for the first and second state attributes into the local names of the first and second state attributes before responding.
-
16. The method of claim 1 wherein at least some of the SSMs are available to supply values for additional state attributes of a current state other than for the user, and wherein the intermediary module additionally sends values for the additional state attributes to SCMs based on indications from those SCMs of a current desire to receive values for at least one of the additional state attributes.
-
17. A method in a first computer for providing information about a current state that is represented with multiple attributes, the method comprising:
-
receiving indications of multiple characterization modules, each characterization module executing on a computer to model an aspect of a current state related to that computer;
receiving an indication of one of the multiple attributes of the represented current state;
determining multiple of the characterization modules whose modeled aspects are related to the indicated one attribute;
gathering information about the modeled aspects related to the indicated one attribute from the determined characterization modules so that a value for the indicated one attribute can be generated based on the gathered information, the gathering including obtaining from each of at least one of the determined characterization modules a first value for a specified first state attribute to be used as part of generating a value for the indicated one attribute, the first state attribute distinct from the one attribute;
after the gathering of the information from the determined characterization modules, receiving an indication of an ability to supply values for the first state attribute from another of the multiple characterization modules that is not one of the determined characterization modules; and
as part of subsequent gathering of information related to the indicated one attribute, obtaining from the another characterization module another value for the first state attribute. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
determining a need for access to a resource available on another computer on which one of the characterization modules is executing; and
using the one characterization module to access the resource.
-
-
19. The method of claim 18 wherein the resource is processing capabilities of the another computer, and wherein accessing of the resource includes use of the processing capabilities.
-
20. The method of claim 18 wherein the resource is an input device of the another computer, and wherein accessing of the resource includes receiving input information from the input device.
-
21. The method of claim 18 wherein the resource is information used during the executing of the one characterization module, and wherein accessing of the resource includes retrieving the information.
-
22. The method of claim 17 wherein the determined characterization modules each model a current state of a user of the computer on which the characterization module is executing, and wherein the one attribute is related to the current state of a group of the users of the determined characterization modules.
-
23. The method of claim 17 wherein the determined characterization modules are hierarchically organized such that some of the characterization modules are supervisors each having an associated group of other subordinate characterization modules, and wherein the one attribute is related to the current state of the hierarchical organization.
-
24. The method of claim 17 wherein each of the determined characterization modules is specialized to model a portion of the current state of a single user, and wherein the one attribute is related to information about the user including information for multiple of the portions of the current state.
-
25. The method of claim 17 wherein the gathered information from two of the determined characterization modules includes information about a first of the multiple attributes, wherein the two determines characterization modules specify the first attribute with distinct names in their gathered information, and wherein the gathering of the information includes translating the specified names for the first attribute in the gathered information into a common name.
-
26. The method of claim 17 wherein the received indication of the one attribute additionally includes an indication of characterization modules, and wherein the determining of the characterization modules include selecting the indicated characterization modules.
-
27. The method of claim 17 including:
-
determining whether the information gathered from one of the determined characterization modules satisfies a criteria; and
when it is determined that the gathered information does not satisfy the criteria, obtaining additional information from the one determined characterization module that satisfies the criteria and replacing the gathered information from the one determined characterization module with the obtained additional information.
-
-
28. The method of claim 17 wherein the one attribute represents information about a user of the first computer.
-
29. The method of claim 28 wherein the represented information reflects a modeled mental state of the user.
-
30. The method of claim 17 wherein the one attribute represents information about the first computer.
-
31. The method of claim 17 wherein the one attribute represents information about a physical environment of a user of the first computer.
-
32. The method of claim 17 wherein the one attribute represents information about a cyber-environment of a user of the first computer.
-
33. The method of claim 17 wherein the one attribute represents a current prediction about a future state.
-
34. The method of claim 17 wherein the one attribute represents information about a group of users such that each of the users is a user of a computer on which one of the multiple characterization modules is executing.
-
35. The method of claim 17 wherein the one attribute represents information about the group of computers on which the multiple characterization modules are executing.
-
36. The method of claim 17 wherein the one attribute represents information about a physical environment common to the computers on which the multiple characterization modules are executing.
-
37. The method of claim 17 wherein the one attribute represents information about a cyber-environment common to the computers on which the multiple characterization modules are executing.
-
38. The method of claim 17 including, after receiving a request from a client for a value of a second indicated attribute, obtaining information from multiple characterization modules about modeled aspects related to the second attribute and supplying the obtained information to the client.
-
39. The method of claim 17 wherein the received indication is from a client, and including generating the value for the indicated one attribute and supplying the generated value to the client.
-
40. The method of claim 39 wherein receiving of the supplied value by the client prompts the client to present information to a user.
-
41. The method of claim 17 wherein the determining of the multiple characterization modules is based on previously received registration messages from each of the multiple characterization modules that indicate the modeled aspects.
-
42. The method of claim 17 wherein security information must be received for a characterization module before any information is accepted from the characterization module.
-
43. The method of claim 17 wherein security information must be received for a characterization module before information is supplied to the characterization module.
-
44. The method of claim 17 wherein the providing of the information about the represented current state is performed by one of the multiple characterization modules that is executing on the first computer.
-
45. The method of claim 17 wherein the generating of the value is performed by a client after the gathered information is supplied to the client.
-
46. A computer-readable medium whose contents cause a computing device to provide information about a current state that is represented with multiple attributes, by performing a method comprising:
-
receiving an indication of one of the multiple attributes of the represented current state;
determining multiple characterization modules that each model an aspect of a current state such that the modeled aspects are related to the indicated one attribute;
obtaining information about the modeled aspects related to the indicated one attribute from the determined characterization modules, the obtaining including receiving from each of at least one of the determined characterization modules a first value for a specified first state attribute;
after the obtaining of the first value for the first state attribute, receiving an indication of an ability to supply values for the first state attribute from another of the multiple characterization modules and obtaining another value for the first state attribute from that another characterization module; and
supplying the obtained information to a module able to generate a value for the indicated one attribute based on the supplied obtained information. - View Dependent Claims (47)
-
-
48. A computer-readable generated data signal transmitted via a transmission medium, the generated data signal having encoded contents that cause a computer system to provide information about a current state that is represented with multiple attributes, by:
-
receiving indications of multiple characterization modules, each characterization module executing on a computer to model an aspect of a current state related to that computer;
receiving an indication of one of the multiple attributes of the represented current state;
determining multiple of the characterization modules whose modeled aspects are related to the indicated one attribute; and
gathering information about the modeled aspects related to the indicated one attribute from the determined characterization modules so that a value for the indicated one attribute can be generated based on the gathered information, the gathering including obtaining from each of at least one of the determined characterization modules a first value for a specified first state attribute to be used as part of generating a value for the indicated one attribute;
after the gathering of information from the determined characterization modules that includes the first value, receiving an indication of an ability to supply values for the first state attribute from another of the multiple characterization modules that is not one of the determined characterization modules; and
as part of subsequent gathering of information related to the indicated one attribute, obtaining from the another characterization module another value for the first state attribute.
-
-
49. A computing device for providing information about a current state that is represented with multiple attributes, comprising:
-
an input module that is capable of receiving indications of multiple characterization modules each executing on a computer to model an aspect of a current state related to that computer, and of receiving an indication of one of the multiple attributes of the represented current state;
an information gatherer module that is capable of determining multiple of the characterization modules whose modeled aspects are related to the indicated one attribute and of obtaining information about the modeled aspects related to the indicated one attribute from each of the determined characterization modules, the obtaining including receiving from each of at least one of the determined characterization modules a first value for a specified first state attribute, the information gatherer module further capable of, after the obtaining of the first value for the first state attribute, receiving an indication of an ability to supply values for the first state attribute from another of the multiple characterization modules and obtaining another value for the first state attribute from that another characterization module; and
an output module capable of supplying the obtained information from the determined characterization modules to a client able to determine a value for the indicated one attribute based on the obtained information.
-
-
50. A computing device for providing information about a current state that is represented with multiple attributes, comprising:
-
means for receiving indications of multiple characterization modules, each characterization module executing on a computer to model an aspect of a current state related to that computer;
means for receiving an indication of one of the multiple attributes of the represented current state;
means for determining multiple of the characterization modules whose modeled aspects are related to the indicated one attribute, means for obtaining information about the modeled aspects related to the indicated one attribute from each of the determined characterization modules, the obtaining including receiving from each off at least ore of the determined characterization modules a first value for a specified first state attribute, and for, after the obtaining of all of the first values for the first state attribute, receiving an indication of an ability to supply values for the first state attribute from another of the multiple characterization modules and obtaining another value for the first state attribute from that another characterization module; and
means for supplying the obtained information from the determined characterization modules to a client able to determine a value for the indicated one attribute based on the obtained information.
-
-
51. A method in a portable computer for providing information about a context that is modeled with multiple context attributes, the method comprising:
-
receiving from each of multiple sources an indication of an ability to supply values for at least one of the context attributes or the modeled context; and
for each of multiple clients, receiving an indication of a desire to receive information of interest, the desired information including at least a first value for an indicated first context attribute;
when at least one source is determined to have the ability to supply the indicated information, retrieving the indicated information from at least one of those sources and sending the retrieved information to the client; and
when none of the sources have the ability to supply the indicated information, determining one or more executing characterization modules from which the indicated information can be obtained;
obtaining the indicated information from the determined characterization modules; and
sending the obtained indicated information to the client; and
after the sending to the client of the retrieved information or the obtained indicated information, the sending including sending the first value, receiving from the client an indication of a second context attribute and an indication that a source for a value for the second context attribute is to be a same source as for the first value for the first context attribute; and
sending to the client a value for the second context attribute that is received from the same source. - View Dependent Claims (52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77)
-
-
78. A computer-readable medium containing instructions that when executed cause a computing device to provide information about a context that is modeled with multiple context attributes, by performing a method comprising:
-
for each of multiple clients, receiving an indication of a desire to receive information of interest;
when at least one source is determined to have an ability to supply the indicated information, receiving the indicated information from at least one of those sources and sending the received information to he client;
when the indicated information is not received from at least one of the sources, determining one or more executing characterization modules from which the indicated information can be obtained;
obtaining the indicated information from the determined characterization modules; and
sending the obtained indicated information to the client; and
after the sending to the client of the received information or the obtained indicated information, receiving from the client an indication of other information and an indication that a source for a value for the other information is to be a same source as for the indicated information of interest, the other information distinct from the indicated information of interest; and
sending to the client the other information after it is obtained from the same source.
-
-
79. A portable computer for providing information about a context that is represented with multiple modeled attributes, comprising:
-
an attribute mapping module that is capable of receiving from each of multiple sources an indication of a current ability to supply values for at least one of the context attributes of the modeled context; and
an information supplier module that is capable of receiving an indication from a client of a desire to receive information of interest, the desired information including at least a first value for an indicated first context attribute;
retrieving the indicated information of interest from a source and sending the retrieved information to the client when at least one source has the ability to supply the indicated information of interest;
when none of the sources have the ability to supply the indicated information of interest, determining one or more executing characterization modules from which the indicated information of interest can be obtained and/or one or more resources of other accessible computers with which the indicated information of interest can be obtained, obtaining the indicated information of interest from the determined characterization modules and/or with the determined resources, and sending the obtained indicated information of interest to the client; and
after the sending to the client of the retrieved information or the obtained indicated information, receiving from the client an indication of a second context attribute for which a value is desired from a same source as for the first value for the first context attribute; and
sending to the client a value for the second context attribute that is received from the same source.
-
-
80. A computer-implemented method for providing information about a state that is modeled with multiple state attributes, the method comprising:
-
receiving an indication of one of the multiple state attributes and of a source for information related to values of the one state attribute;
determining multiple executing characterization modules that each model at least one piece of information related to the indicated one state attribute; and
when at least one of the determined characterization modules is the indicated source, gathering the modeled pieces of information from the determined characterization modules;
generating a value for the indicated one attribute based on the gathered information; and
providing an indication of the generated value of the one state attribute. - View Dependent Claims (81, 82, 83, 84, 85, 86, 87, 88, 89)
-
Specification