Adaptive Interactions in Societies of Agents