Heterogeneous agent systems (MIT Press, 2000)