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.
- 2. The method of claim 1 including:
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 model 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; and gathering information about the modeled aspects related to the indicated at one attribute from the determined characterization modules so that a value for the indicated one attribute can be generated based on the gathered information.
- 18. The method of claim 17 including:
determining a need for access to a resource available on another computer on which one of the other characterization systems is executing; and using the one other characterization system 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 other characterization system, 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 the 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 determined 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 modules 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 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:
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; obtaining information about the modeled aspects related to the indicated one attribute from the determined characterization modules; and supplying the obtained information to a client able to generate a value for the indicated one attribute based on the supplied obtained information.
- 47. The computer-readable medium of claim 46 wherein the computer-readable medium is a memory of the computing device.
- 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.
- 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; 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; 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 of the modeled context; and 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 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 and/or one or more resources of other accessible computers with which the indicated information can be obtained; obtaining the indicated information from the determined characterization modules and/or with the determined resources; and sending the obtained indicated information to the client.
- 52. The method of claim 51 wherein the determined resource is processing capabilities of at least one other computer, and wherein the obtaining of the indicated information with the determined resource includes use of the processing capabilities.
- 53. The method of claim 51 wherein the determined resource is an input device of at least one other computer, and wherein the obtaining of the indicated information with the determined resource includes receiving input information from the input device.
- 54. The method of claim 51 wherein the information obtained from the at least one determined executing characterization module is information used during the executing of the characterization module.
- 55. The method of claim 51 wherein at least one of the clients indicating a desire to receive indicated information is a characterization module.
- 56. The method of claim 51 wherein the information obtained from the at least one determined executing characterization module is information retrieved by that characterization module from at least one source.
- 57. The method of claim 51 wherein the context that is represented is a current context.
- 58. The method of claim 51 wherein the context attributes represent information about a user of the portable computer.
- 59. The method of claim 51 wherein the context attributes represent information about the first computer.
- 60. The method of claim 51 wherein the context attributes represent information about a group of users such that each of the users is a user of a computer on which one of the multiple determined characterization modules is executing.
- 61. The method of claim 51 wherein the context attributes represent information about the group of computers on which the multiple determined characterization modules are executing.
- 62. The method of claim 51 wherein receiving of the sent obtained information by the client prompts the client to present information to a user.
- 63. 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:
receiving from each of multiple sources an indication of an ability to supply values for at least one of the context attributes of the modeled context; and 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 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 and/or one or more resources of other accessible computers with which the indicated information can be obtained; obtaining the indicated information from the determined characterization modules and/or with the determined resources; and sending the obtained indicated information to the client.
- 64. 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 of a desire to receive information of interest from a client, of 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, and of, 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.
- 65. 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; determining multiple executing characterization modules that each model at least one piece of information related to the indicated one state attribute; 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.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation-in-part of U.S. patent application Ser. No. 09/216,193, entitled “METHOD AND SYSTEM FOR CONTROLLING PRESENTATION OF INFORMATION TO A USER BASED ON THE USER'S CONDITION” and filed Dec. 18, 1998, and a continuation-in-part of U.S. patent application Ser. No. 09/464,659, entitled “STORING AND RECALLING INFORMATION TO AUGMENT HUMAN MEMORIES” and filed Dec. 15, 1999. Both of these applications are hereby incorporated by reference in their entirety.
[0002] This application also claims the benefit of provisional U.S. patent application Ser. No. 60/194,004 (Attorney Docket No. 294438020US), entitled “MANAGING INTERACTIONS BETWEEN COMPUTER USERS' CONTEXT MODELS” and filed Apr. 2, 2000, and of provisional U.S. patent application Ser. No. 60/193,999 (Attorney Docket No. 294438008US entitled “OBTAINING AND USING CONTEXTUAL DATA FOR SELECTED TASKS OR SCENARIOS, SUCH AS FOR A WEARABLE PERSONAL COMPUTER” and filed Apr. 2, 2000. These applications are both hereby incorporated by reference in their entirety.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60194004 |
Apr 2000 |
US |
|
60193999 |
Apr 2000 |
US |
Continuations (1)
|
Number |
Date |
Country |
Parent |
09724894 |
Nov 2000 |
US |
Child |
09894642 |
Jun 2001 |
US |
Continuation in Parts (2)
|
Number |
Date |
Country |
Parent |
09216193 |
Dec 1998 |
US |
Child |
09724894 |
Nov 2000 |
US |
Parent |
09464659 |
Dec 1999 |
US |
Child |
09724894 |
Nov 2000 |
US |