Pre-requisites *(please read carefully)*:
This class requires familiarity with programming, data structures, and basic software engineering (c.f., CSE 8A, CSE 100, CSE 110 syllabi). Students should be comfortable decomposing a complex problem, selecting suitable algorithms, and implementing them. Prior exposure to robotics is helpful, but not required. Experience using unix-like operating systems is also a plus. Students should be comfortable reading and discussing scientific papers at the graduate level. Students with interests in human-centered research and practice, including design, are encouraged to take the course.