Artificial agents can learn to introduce and use abstractions to enable more efficient communication and collaboration on a shared task.