1. A processing system comprising: a plurality of computing resources; a first autonomous computing agent implemented by at least one of the plurality of computing resources; and a second autonomous computing agent implemented by at least one of the plurality of computing resources; the first computing agent and the second computing agent operable to use processing information, including computing requirements for carrying out computing tasks and resource information including characteristics of at least one of the plurality of computing resources, to collaboratively assign computing tasks to the plurality of resources according to a predetermined strategy.