Multiagent systems often require coordination among the agents to maximize system utility. Using the notion of favors, we propose a technique, flexible reciprocal altruism, which determines when one agent should grant a favor to another agent based on past interactions. The desired rate of altruism is controllable, and as a result the loss associated with granting unmatched favors is bounded an...