I'm a firm believer in hands-on projects that are motiviated by real-world problems. This leads me to include substantial projects in most of my classes. I also think that students learn a great deal by working on a team, so these projects are typically done in small groups.
Most of the classes I teach involve a fair amount of probability, linear algebra, and (of course) programming. When these courses are not pre-requisites, we'll do a brief crash course, but we won't dumb the material down to avoid that material. So, if you're a bit rusty, I highly recommend reviewing before the term begins. For Linear Algebra, I highly recommend Gil Strang's Linear Algebra videos. We typically program in Java.
EECS498 W13, Autonomous Robotics Laboratory (wiki, apps)
EECS568 F12, Mobile Robotics: Methods and Algorithms (wiki, apps)
EECS498 W12, Autonomous Robotics Laboratory (wiki, apps)
EECS568 F11, Mobile Robotics: Methods and Algorithms (wiki, apps)
EECS492 W11, Introduction to Artificial Intelligence (wiki, apps)
EECS598 F10, Multi-Robot Autonomous Systems
EECS492 W10, Introduction to Artificial Intelligence (wiki)
EECS498 F09, Autonomous Robotics Laboratory (wiki)
EECS598 W09, Algorithms for Robotics
EECS492 F08, Introduction to Artificial Intelligence