CS 395T: Intelligent Robotics


Resources (check for updates)


Syllabus

In this course, we will study the problem of how a robot can learn the structure of the world it inhabits, and how to navigate within that world. We will focus first on the problems of spatial knowledge: exploration, mapping and navigation in unknown environments. Our hypothesis is that the effectiveness and robustness of human spatial knowledge arises from having multiple representations of knowledge of space that work well together, and that we can replicate this on robots. We will also address the problem of what and how a robot can learn about its own sensorimotor capabilities and about its environment by exploration without prior knowledge. These problems relate to some of the most fundamental issues in artificial intelligence and cognitive science.

Experiments and assignments will be done on simulated and physical robots. One of our physical robots is a prototype of an intelligent wheelchair.

Assignments

This is a research seminar, intended first to bring you to the state of the art, and then to help you do a project and paper of publishable quality. There will be a significant amount of reading of research papers that will be handed out.

There will be three mathematical and programming assignments, a term project and a presentation.

Assignment 1:

Given a trace of sensor input (odometry and laser range-finder scan) from a robot tour of a small environment, build an occupancy grid map of the environment, using the methods described in the readings. Work in MATLAB or LabVIEW. You will be given two traces to work with for the assignment, and tested on a third.

You may give and get advice on this assignment, but it remains an individual assignment. If you are giving advice, make sure you are teaching, not just solving the problem. If you are getting advice, make sure you are learning, not just being given an answer. The grade is not the goal; your own deep understanding is the goal.

For extra credit, port your solution to Flat (our simulated robot), Lassie (the small round robot), or Vulcan (the wheelchair).

Assignment 2:

Implement control laws to follow walls and corridors in office environments. Based on this control law, implement control laws to hill-climb to various kinds of distinctive states. Work in teams of two, starting by implementing and testing the control laws in MATLAB or LabVIEW, then porting them to run in Flat. Define simple office environments in Flat, with linear walls and no noise, but with complex enough structure to demonstrate your control laws.

You will work in teams, and you may give and get advice, but remember the fundamental principle stated above.

We will specify a local environment description language in class, and provide a set of rules for selecting control laws based on the local environment. Implement an exploration strategy that determines the set of outgoing control laws from the current distinctive state, and selects a random one to follow to the next distinctive state.

For extra credit, port your solution to Lassie or Vulcan.

Assignment 3:

Implement and test a Kalman Filter observer for a local environment type that may be encountered by our robots in their environments. Work in teams of two to implement and test the observer first in MATLAB or LabVIEW, and then integrate the observer with your control laws and port it to Lassie or Vulcan. Demonstrate on realistically noisy environments.

Work with other teams to integrate all the observers and control laws into a single system that allows Lassie and Vulcan to explore among distinctive states in our environments.

Some examples of the local environments needing models and observers are:
Wall or corridor (provided in handout)
Intersection of corridors
Doorway in corridor
Doorway across corridor (posts; spring-loaded doors)
Inside right-angle corner
Outside right-angle corner
Obstacle (blob or point)
Moving obstacle (pedestrian)
Elevator
Wheelchair ramp

Each team picks one or two to build, and works to integrate with the other teams.

Projects and Presentations

Each class member will select a term project topic, which includes finding and reading additional literature and becoming an expert on some topic. Some of the topics involve getting a deeper understanding of a problem or method taught in class. Others involve extensions of the work presented in class to other related problems.

Each student will make a presentation to the class, modeled after a 25-minute conference paper presentation.

For some topics, the presentation will cover a literature review and will teach the class in more depth about a particular problem, alternate approaches taken to solve it, and their advantages and disadvantages. Such a presentation will take place during the second third of the semester. The presentation will be evaluated for its instructional quality, and the final term paper will be evaluated as a comprehensive literature review.

For other topics, the presentation will present the result of a research project: an effort to develop and implement a novel solution to a problem. Such a presentation will take place during the last third of the semester. The presentation and the final paper will be evaluated as research presentations to a major conference such as AAAI or ICRA. The outline of such a presentation (both verbal and paper) is:
What is the problem? Why is it important? Why should the reader care?
What previous work has failed to solve it? What am I building on?
What is my approach?
Verbally: an intuitively clear summary.
On paper: enough for an expert reader to reproduce the work.
Evaluation: How can the reader be assured that my approach actually works?
What next? WhatUs left to do? What does this solution enable the reader to do?

Suggested Topics

You are encouraged to select a topic that fits well with your other research interests. Some suggestions...

Textbooks

The textbooks are references that will be valuable in different ways in this area. You will also need to do assignments in either MATLAB or LabVIEW. Make sure you have any documentation you need.


Students with Disabilities

The University of Texas at Austin provides upon request appropriate academic accommodations for qualified students with disabilities. For more information, contact the Office of the Dean of Students at 471-6259, 471-4641 TTY.


BJK