Teaching Distributed Artificial Intelligence with RoboRally
BDI Agents: From Theory to Practice