An asynchronous team (A-Team) is a strongly cyclic computational network. Results are circulated through this network by software agents. The number of agents can be arbitrarily large and the agents may be distributed over an arbitrarily wide area. Agents cooperate by working on one another's results. Each agent is completely autonomous (it decides which results it is going to work on and when). Results that are not being worked on accumulate in shared memories to form populations. Randomization (the effects of chance) and destruction (the elimination of weak results) play key roles in determining what happens to the populations.
At Carnegie Mellon University, A-Teams have been used to solve a number of difficult and important problems, including: traveling salesman problems, high-rise building design, reconfigurable robot design, diagnosis of faults in electric networks, control of electric networks, job-shop-scheduling, protein structure analysis, robot-path-planning, and train-scheduling.