Patent ID: 8156500

Claim:
A system including a plurality of computing devices connected via an ad-hoc network environment for dynamic real-time scheduling of tasks to be performed by one or more of the plurality of computing devices, comprising using the plurality of computing devices to perform steps for: for each of the plurality of computing devices connected via an ad-hoc network environment, evaluating behavior patterns defined for each computing device associated with any task requested to be performed by those devices to predict nominal resource requirements for any corresponding task; wherein the behavior patterns for each device include one or more of a sequence of actions for allowing each device to perform one or more particular tasks, expected message types for controlling device actions, expected resources to be used by each device to execute any particular tasks, and an amount of acceptable temporal tolerance in task start times; statistically modeling the predicted resource requirements for any of the devices associated with any requested task as a function of the behavior patterns and samples of actual current resource usage on an ongoing basis prior to and during task execution; evaluating potential resource usage conflict information between the requested tasks; eliminating potential overlaps in resource usage between tasks by automatically adjusting task execution times relative to the acceptable temporal tolerance in task start times; and dynamically scheduling the requested tasks and reserving resources for those requested tasks on an ongoing basis prior to and during task execution as a function of the statistically modeled current resource usage, the resource usage conflict information, and the defined behavior patterns for each of the devices associated with any task.