Application and situation-aware community sensing
First Claim
Patent Images
1. A method comprising steps of:
- implementing middleware to process;
(i) one or more sensor data requirements for each of multiple sensing applications, each associated with a given mobile device that is attributed to a given one of multiple users, wherein the one or more sensor data requirements comprise;
at least a spatio-temporal utility function for an event to be sensed, wherein the spatio-temporal utility function comprises multiple utility elements, and wherein the multiple utility elements capture a perceived utility value, estimated by the multiple sensing applications, of sensing the event (a) at multiple different times of day and (b) at multiple different geographic locations;
automatically determining multiple instances of the same sensed data across the multiple sensing applications; and
reusing one of the multiple instances in connection with two or more of the multiple sensing applications,(ii) user preferences for sensing in connection with the given mobile device, wherein the user preferences comprise;
(a) reducing sensing activity when a battery level of the given mobile device falls below a user-specified battery capacity percentage;
(b) stopping sensing activity when a battery level of the given mobile device falls below a user-specified battery capacity percentage;
(c) multiple time periods, each with a user-specified start time and a user-specified stop time, during which sensing activity via the given mobile device is permitted;
(d) one or more locations specified by latitude and longitude values wherein sensing activity via the given mobile device is permitted;
(e) one or more locations specified by latitude and longitude values wherein sensing activity via the given mobile device is prohibited; and
(f) a user-specified data connection to be used via the given mobile device for one or more data upload actions carried out in connection with sensing activity; and
(iii) resource dynamics on the given device at a given time;
receiving a sensing query;
parsing the received sensing query into multiple sensing tasks;
determining, via the middleware, a community-sensing strategy across the multiple users in response to the sensing query via use of multiple sensors, each embedded in a distinct one of the mobile devices and corresponding to a distinct one of the multiple sensing applications, wherein said community-sensing strategy is based on (i) the sensor data requirements (ii) the user preferences for sensing and (iii) the resource dynamics on the given device, wherein said determining the sensing strategy comprises generating logic via the middleware for executing the multiple sensing tasks; and
scheduling, via the middleware, a sensor duty cycle and a sampling frequency for each of the multiple sensors based on the sensing strategy needed to execute the multiple sensing tasks, wherein said scheduling comprises outputting instructions pertaining to one or more of the multiple sensing tasks to each of the mobile devices, wherein said instructions specify (i) a period of time during which the given mobile device is to actively sense data and (ii) a geographic location at which the given mobile device is to actively sense data;
wherein said steps are carried out by at least one computer device.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques, systems, and articles of manufacture for application and situation-aware community sensing. A method includes processing one or more sensor data requirements for each of multiple sensing applications and one or more user preferences for sensing, determining a sensing strategy for multiple sensors corresponding to the multiple sensing applications based on the one or more sensor data requirements and the one or more user preferences for sensing, wherein said sensing strategy comprises logic for executing a sensing task, and scheduling a sensor duty cycle and a sampling frequency for each of the multiple sensors based on the sensing strategy needed to execute the sensing task.
-
Citations
16 Claims
-
1. A method comprising steps of:
-
implementing middleware to process; (i) one or more sensor data requirements for each of multiple sensing applications, each associated with a given mobile device that is attributed to a given one of multiple users, wherein the one or more sensor data requirements comprise; at least a spatio-temporal utility function for an event to be sensed, wherein the spatio-temporal utility function comprises multiple utility elements, and wherein the multiple utility elements capture a perceived utility value, estimated by the multiple sensing applications, of sensing the event (a) at multiple different times of day and (b) at multiple different geographic locations; automatically determining multiple instances of the same sensed data across the multiple sensing applications; and reusing one of the multiple instances in connection with two or more of the multiple sensing applications, (ii) user preferences for sensing in connection with the given mobile device, wherein the user preferences comprise;
(a) reducing sensing activity when a battery level of the given mobile device falls below a user-specified battery capacity percentage;
(b) stopping sensing activity when a battery level of the given mobile device falls below a user-specified battery capacity percentage;
(c) multiple time periods, each with a user-specified start time and a user-specified stop time, during which sensing activity via the given mobile device is permitted;
(d) one or more locations specified by latitude and longitude values wherein sensing activity via the given mobile device is permitted;
(e) one or more locations specified by latitude and longitude values wherein sensing activity via the given mobile device is prohibited; and
(f) a user-specified data connection to be used via the given mobile device for one or more data upload actions carried out in connection with sensing activity; and(iii) resource dynamics on the given device at a given time; receiving a sensing query; parsing the received sensing query into multiple sensing tasks; determining, via the middleware, a community-sensing strategy across the multiple users in response to the sensing query via use of multiple sensors, each embedded in a distinct one of the mobile devices and corresponding to a distinct one of the multiple sensing applications, wherein said community-sensing strategy is based on (i) the sensor data requirements (ii) the user preferences for sensing and (iii) the resource dynamics on the given device, wherein said determining the sensing strategy comprises generating logic via the middleware for executing the multiple sensing tasks; and scheduling, via the middleware, a sensor duty cycle and a sampling frequency for each of the multiple sensors based on the sensing strategy needed to execute the multiple sensing tasks, wherein said scheduling comprises outputting instructions pertaining to one or more of the multiple sensing tasks to each of the mobile devices, wherein said instructions specify (i) a period of time during which the given mobile device is to actively sense data and (ii) a geographic location at which the given mobile device is to actively sense data; wherein said steps are carried out by at least one computer device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An article of manufacture comprising a non-transitory computer readable storage medium having computer readable instructions tangibly embodied thereon which, when implemented, cause a computer to carry out a plurality of method steps comprising:
-
implementing middleware to process; (i) one or more sensor data requirements for each of multiple sensing applications, each associated with a given mobile device that is attributed to a given one of multiple users, wherein the one or more sensor data requirements comprise; at least a spatio-temporal utility function for an event to be sensed, wherein the spatio-temporal utility function comprises multiple utility elements, and wherein the multiple utility elements capture a perceived utility value, estimated by the multiple sensing applications, of sensing the event (a) at multiple different times of day and (b) at multiple different geographic locations; automatically determining multiple instances of the same sensed data across the multiple sensing applications; and reusing one of the multiple instances in connection with two or more of the multiple sensing applications, (ii) user preferences for sensing in connection with the given mobile device, wherein the user preferences comprise;
(a) reducing sensing activity when a battery level of the given mobile device falls below a user-specified battery capacity percentage;
(b) stopping sensing activity when a battery level of the given mobile device falls below a user-specified battery capacity percentage;
(c) multiple time periods, each with a user-specified start time and a user-specified stop time, during which sensing activity via the given mobile device is permitted;
(d) one or more locations specified by latitude and longitude values wherein sensing activity via the given mobile device is permitted;
(e) one or more locations specified by latitude and longitude values wherein sensing activity via the given mobile device is prohibited; and
(f) a user-specified data connection to be used via the given mobile device for one or more data upload actions carried out in connection with sensing activity; and(iii) resource dynamics on the given device at a given time; receiving a sensing query; parsing the received sensing query into multiple sensing tasks; determining, via the middleware, a community-sensing strategy across the multiple users in response to the sensing query via use of multiple sensors, each embedded in a distinct one of the mobile devices and corresponding to a distinct one of the multiple sensing applications, wherein said community-sensing strategy is based on (i) the sensor data requirements (ii) the user preferences for sensing and (iii) the resource dynamics on the given device, wherein said determining the sensing strategy comprises generating logic via the middleware for executing the multiple sensing tasks; and scheduling, via the middleware, a sensor duty cycle and a sampling frequency for each of the multiple sensors based on the sensing strategy needed to execute the multiple sensing tasks, wherein said scheduling comprises outputting instructions pertaining to one or more of the multiple sensing tasks to each of the mobile devices, wherein said instructions specify (i) a period of time during which the given mobile device is to actively sense data and (ii) a geographic location at which the given mobile device is to actively sense data. - View Dependent Claims (11)
-
-
12. A system comprising:
-
a memory; and at least one processor coupled to the memory and operative for; implementing middleware to process; (i) one or more sensor data requirements for each of multiple sensing applications, each associated with a given mobile device that is attributed to a given one of multiple users, wherein the one or more sensor data requirements comprise; at least a spatio-temporal utility function for an event to be sensed, wherein the spatio-temporal utility function comprises multiple utility elements, and wherein the multiple utility elements capture a perceived utility value, estimated by the multiple sensing applications, of sensing the event (a) at multiple different times of day and (b) at multiple different geographic locations; automatically determining multiple instances of the same sensed data across the multiple sensing applications; and reusing one of the multiple instances in connection with two or more of the multiple sensing applications; (ii) user preferences for sensing in connection with the given mobile device, wherein the user preferences comprise;
(a) reducing sensing activity when a battery level of the given mobile device falls below a user-specified battery capacity percentage;
(b) stopping sensing activity when a battery level of the given mobile device falls below a user-specified battery capacity percentage;
(c) multiple time periods, each with a user-specified start time and a user-specified stop time, during which sensing activity via the given mobile device is permitted;
(d) one or more locations specified by latitude and longitude values wherein sensing activity via the given mobile device is permitted;
(e) one or more locations specified by latitude and longitude values wherein sensing activity via the given mobile device is prohibited; and
(f) a user-specified data connection to be used via the given mobile device for one or more data upload actions carried out in connection with sensing activity; and(iii) resource dynamics on the given device at a given time; receiving a sensing query; parsing the received sensing query into multiple sensing tasks; determining, via the middleware, a community-sensing strategy across the multiple users in response to the sensing query via use of multiple sensors, each embedded in a distinct one of the mobile devices and corresponding to a distinct one of the multiple sensing applications, wherein said community-sensing strategy is based on (i) the sensor data requirements (ii) the user preferences for sensing and (iii) the resource dynamics on the given device, wherein said determining the sensing strategy comprises generating logic via the middleware for executing the multiple sensing tasks; and scheduling, via the middleware, a sensor duty cycle and a sampling frequency for each of the multiple sensors based on the sensing strategy needed to execute the multiple sensing tasks, wherein said scheduling comprises outputting instructions pertaining to one or more of the multiple sensing tasks to each of the mobile devices, wherein said instructions specify (i) a period of time during which the given mobile device is to actively sense data and (ii) a geographic location at which the given mobile device is to actively sense data. - View Dependent Claims (13)
-
-
14. A method comprising steps of:
-
capturing; (i) one or more sensor data requirements for each of multiple sensing applications, each associated with a given mobile device that is attributed to a given one of multiple users, wherein the one or more sensor data requirements comprise; at least a spatio-temporal utility function for an event to be sensed, wherein the spatio-temporal utility function comprises multiple utility elements, and wherein the multiple utility elements capture a perceived utility value, estimated by the multiple sensing applications, of sensing the event (a) at multiple different times of day and (b) at multiple different geographic locations; automatically determining multiple instances of the same sensed data across the multiple sensing applications; and reusing one of the multiple instances in connection with two or more of the multiple sensing applications; (ii) user preferences for sensing in connection with the given mobile device, wherein the user preferences comprise;
(a) reducing sensing activity when a battery level of the given mobile device falls below a user-specified battery capacity percentage;
(b) stopping sensing activity when a battery level of the given mobile device falls below a user-specified battery capacity percentage;
(c) multiple time periods, each with a user-specified start time and a user-specified stop time, during which sensing activity via the given mobile device is permitted;
(d) one or more locations specified by latitude and longitude values wherein sensing activity via the given mobile device is permitted;
(e) one or more locations specified by latitude and longitude values wherein sensing activity via the given mobile device is prohibited; and
(f) a user-specified data connection to be used via the given mobile device for one or more data upload actions carried out in connection with sensing activity; and(iii) resource dynamics on the given device at a given time; receiving a sensing query; parsing the received sensing query into multiple sensing tasks; implementing middleware to process (i) the one or more sensor data requirements (ii) the user preferences for sensing and (iii) the resource dynamics on the given device to determine a community-sensing strategy across the multiple users in response to the sensing query via use of multiple sensors, each embedded in a distinct one of the mobile devices and corresponding to a distinct one of the multiple sensing applications, wherein said determining the sensing strategy comprises generating logic via the middleware for executing the multiple sensing tasks; scheduling, via the middleware, a sensor duty cycle and a sampling frequency for each of the multiple sensors based on the sensing strategy needed to execute the multiple sensing tasks, wherein said scheduling comprises outputting instructions pertaining to one or more of the multiple sensing tasks to each of the mobile devices, wherein said instructions specify (i) a period of time during which the given mobile device is to actively sense data and (ii) a geographic location at which the given mobile device is to actively sense data; and transmitting data sensed by the multiple sensors to a server associated with at least one of the multiple sensing applications; wherein the steps are carried out by at least one computer device. - View Dependent Claims (15, 16)
-
Specification