AI4R (CS7638) — An OMSCS Review
Originally published in my blog.
It was Artificial Intelligence for Robotics (AI4R) this summer in OMSCS, as a continuation of the AI/ML theme that I wanted to maintain with my courses. Although “robotics” as a field is known for being overwhelming, I felt like it was a pretty neat introduction to the field.
The course is well structured with lectures covering the concepts, some ‘Problem Sets’ to help you implement them and some projects that are really really interesting, and visual. Oh yes, couple of exams too.
The schedule was tight with graded deliverables at the end of most weeks (I remember just one weekend where I was chilling) — but this was probably due to the fact that I took it in the summer. The lectures were well prepared where the concepts were introduced with ungraded quizzes amidst them. Each module was accompanied by an implementation of the concepts taught in that module — a python script provided with a bunch of sections to fill in. Don’t worry, the lectures guide (they literally provide the missing code snippets) to complete the implementations. Along with this, there are 6 ‘Problem Sets’ that requires you to fill in some answers and write some code. Answers (code solutions) are provided for these — this covers 20% of your final grades, so essentially 20% grades are freely given to you. There were also videos explaining the Problem Sets, which was nice.
Projects are the next item on the grading scheme covering 65% of the total grade. 5 projects, 13% each. The projects are super fun. Very visual GUI applications. It started off with shooting asteroids whose locations were predicted using Kalman Filters, to localizing a spaceship circling in some Galaxy using Particle filters. PID control and SLAM also brings in a great visual treat with drones and such.
This course has live office hours (I watched the recordings though) and “Tutorials” for the modules covered. These are really helpful if you want to complete your projects early. They give you a pinch of extra information and idea on how to proceed with each project, so I’d strongly recommend them. Slack and Canvas helps a lot too. There are always overachievers in the class who leave out questions and hints.
There are no reports to write.
Two exams, a midterm and final. The finals also included the topics from the midterm. Multiple Choice Questions. Understanding the course materials is enough to get through these. The questions aren’t too straightforward — they are more application based that forces you to apply what you learnt to get to the answers. Closed book and closed internet, but thankfully nothing to memorize.
If I had any complaints, it would be that some of the lectures just talk about the topics from an application point-of-view (I believe that is the intention of the course), but I’d have liked to see a little more mathematical explanations and discussions. At one point, an equation was written for Kalman Filters and the derivation was skipped, so that looked pretty Greek-and-Latin to me. Secondly, except for the first topic, I couldn’t find any external reading materials or suggestions. Not that you need it to complete the course, but extra knowledge is always nicer.
The workload wasn’t heavy for me at least. OMSCentral quote (at the time of blogging) 12.5 hours/week. I think I took lesser than that, probably a 7 or an 8 per week. It was fairly easy to maintain a 90+ across the projects and exams. Overall, the course was a visual treat and super fun. I really appreciated the fact that there weren’t any reports to write (especially after KBAI and walking into ML + ML4T)!