CSE599J: Personal Robotics Clinic: Algorithms and Applications

Instructor: Joshua Smith
Meeting place: CSE 503.
Time: WF 10:30-11:50


Please visit the Course Calender for further announcement and updates

[4/04] For Friday, your priorities should be

  1. Get your Dijkstra implementation working. If you have it working on a laptop, please bring the laptop.If that isn't practical, please bring it on a thumb drive, or email a zip of your code to me. I am hoping we can take a quick look at (at least some of) various implementations.
  2. Read SrinivasaEtal11-ieee.pdf
  3. Read the description of Astar
And if you're running into trouble with Dijkstra, or won't have it working, please email me before class.
Finally, Joseph will be presenting A*, and Tim will present the paper on Herb 2.0.

[4/04] There is now a course calendar page for the class. It has links to the readings and lists the presenters.

[4/03] Andrew Lewis is going to be presenting the Mobile Manipulation article. Ryan Keedy is going to talking about the Dijkstra's Algorithm. Make sure you read the articles before class. (Article can be found in the "Readings" Page)

[3/30] Here are some of the materials you need to prepare for the next class meeting (Weds):

  1. Mobile manipulation article Everyone read this for Weds, please.
  2. Dijkstra's algorithm Everyone please read for Weds. If you have or find a better description, feel free to use that instead. The wikipedia article is not bad. This Youtube video is also pretty good.
  3. Coding: Download and install the simulation environment. Implement a new Planner class (like RRT or Astar).
    Basic goal: Make the planner do something simple like print every node ID.
    Stretch goal: Then try to print coordinates, and then a list of adjacent nodes.
    Super-stretch goal: Our next milestone [not expected to be done by this Weds] is to implement a planner based on Dijkstra's algorithm, so see how far you can go in that direction.
  4. Resourses and recommended Python tutorials are posted here

Less More

Course Overview and Details

The Personal Computer allowed ordinary people to use computers for countless new applications, most of which had not been imagined when PCs first emerged. Today's Personal Robotics researchers are imagining and prototyping tomorrow's robotic applications, and the algorithms that these applications need.

In this "seminar-clinic" course, students will read and present recent papers on Personal Robotics applications. They will also implement and present classic robotics algorithms that are relevant to Personal Robotics. The term "clinic" refers to the hands on software implementation projects. The goal of the course as a whole is to stimulate thinking about new Personal Robotics applications, and build the skills needed to implement them.

Students will be provided with a custom simulation / visualization environment (written in Python running on Ubuntu Linux, and available as a pre-configured Virtual Machine) to support their implementation of path planning algorithms. Other tools and environments (such as Matlab, C++, or Java) can be used at the student's discretion. In order to keep the focus on learning the algorithms, rather than on learning libraries, the course will NOT emphasize existing packages or libraries (such as ROS).

The algorithms subject matter in the course will adapt to student interests, but will include

The course will not focus on vision, learning, or control, topics that are addressed in other UW courses.

The course will include a final project, which can be chosen by the student, or suggested by the instructor. The final project will be similar to the earlier implementation projects, but greater in scope. In some cases it will be an extension of the earlier projects.

Students will be expected to participate actively. Each student will

Students will not all implement the same algorithms, to increase the breadth of topics that the group as a whole explores. The number of student presentations will be reduced if necessary for scheduling reasons.

Readings page

Software download page

Additional Resources

Course calendar

Final Projects

Privacy policy and terms of use