Teaching - Principles of Autonomy and Decision Making (16.410 / 16.413J)
During the fall 2017 semester, I was a half-time teaching assistant (TA) for Principles of Autonomy and Decision Making (16.410 / 16.413 J). Lectured by my research advisor Prof. Brian C. Williams. this class teaches the fundamentals of autonomy and model-based AI and has a mix of undergraduate and graduate students. It covers lots of great topics such as state-space-search, constraint satisfaction problems, mathematical programming and optimization, path planning, and more!
My primary contribution to the course was a series of new simulation-based projects for the graduate students. All projects were implemented as IPython / Jupyter notebooks, and modeled on a “quadcopter cofee delivery on campus” problem:
-
Project 01 - Path Planning & Activity Planning . First, students implemented an advanced path planner (such as RRT*) so that their simulated quadcopters could move from point A to point B. Next, students modeled the task-planning aspect of the problem via PDDL for use with off-the-shelf activity planners. Finally, students integrated the two together so that a simulated fleet of quadcopters could delivery coffee supplies to students.
-
Project 02 - Vehicle Routing Problem. The second project continued on the same task, but focused on different approaches to the activity planning side. Namely, students modeled the vehicle routing problem using mathematical programming and optimization (namely, a mixed-integer linear program / MILP). Second, students modeled the programm by taking a constraint programming apporach.
A significant effort was put into making a fun 3D simulation environment for students to interactively test their solutions! I implemented this simulator for the web so that it could easily embed into the Jupyter notebook. It leverages the three.js library along with some other web tools and online 3D assets (see “help” for details).
A live example is shown below! You can move around with the mouse, and click the “Play” buttons. The quadcopters deliver various coffee-related supplies (such as coffee and cream) to thirsty students.
I had a great time TA’ing this class alongside Matt Deyo (full-time TA) and my advisor.