Maximizing utility in multi-agent environments by anticipating the behavior of other learners