Project 1:

The first project considers motion planning and control for a differential drive robot. A detailed description of the project can be downloaded here .

  • Sample specification and world files are here.
  • Presentation specification and world files are here.

Project 2:

The second project considers sensor-based motion planning and control for a differential drive robot in partially-known environments. A detailed description of the project can be downloaded here .

  • Sample specification and world files are here (new version)
  • Presentation specification and world files are here.

Project 3:

The third project considers sensor-based motion planning and control for a differential drive robot in fully known environments but without directly accessible pose information and noisy sensors. A detailed description of the project can be downloaded here . This project requires noisy sensor models which are available here.

  • Testing specification and world files are here.

Remember that we may not be testing the code on exactly the same system where you are developing. Specifically, the speed of simulation may be slower. Make sure you are controlling the update rate of your planner/controller and choosing robot velocities accordingly.


Sample final projects for the course are listed as follows:

  • Given a set including a finite number of points on the 2D plane and a finite number of cars. Design an algorithm to drive these cars to pass through all points with minimum distance.
Reference:
K. Savla, E. Frazzoli, and F. Bullo. Constant-factor approximation algorithms for the Traveling Salesperson Problem for Dubins' vehicle. In Robotics: Science and Systems II. MIT Press, Cambridge, MA, 2006.
  • Given a building as a rectangular box and an airplane. Design an algorithm to fly the airplane to completely cover all surface of the building.
Reference:
P. Cheng, and V. Kumar. Constant-Factor Optimal Control for 3-D Coverage by UAVs, submitted to ICRA 2008.
  • Given a set of tasks and a set of airplanes. each airplane knows its own location and orientation, but can only see other ones when they are close enough. The total number of the vehicle is unknown. Design an algorithm for these airplanes such that each airplane will be assigned to a task in finite time.
Reference:
P. Cheng, and V. Kumar. A Novel Communication-Less Approach to Task Allocation for Multiple Unmanned Aerial Vehicles, submitted to ICRA 2008.
  • Develop a real-time planner for a helicopter flying at low altitudes in urban environments with an unknown initial map. The planner will need to plan and re-plan frequently due to imperfect map and noise and short-range of its sensors. The research will be a lot about how to find long dynamically feasible trajectories that minimize an objective function (e.g., time) under time-constraints. The following paper may be useful.
Reference:
M. Likhachev, D. Ferguson, G. Gordon, A. Stentz, and S. Thrun, Anytime Search in Dynamic Graphs, Artificial Intelligence Journal (AIJ), accepted for publication.
  • Develop a helicopter-based active detection of a target. One part of the system will fuse two or more sensors (e.g., acoustic and vision) on-board of the helicopter to estimate a distribution of possible target locations. Another part of the system will plan a sequence of poses a helicopter should fly through in order to detect the precise location of the target efficiently. The emphasis in this project will be on the latter part (planning). The following paper on efficient planning for certain classes of POMDPs may be useful.
Reference:
M. Likhachev and A. Stentz, PPCP: Efficient Probabilistic Planning with Clear Preferences in Partially-Known Environments, Proceedings of the National Conference on Artificial Intelligence (AAAI), 2006.
  • Develop a planning algorithm that improves its planning ability (planning speed and/or solution quality) by solving a series of similar planning problems. Some more obvious application examples can be planning of dynamically feasible motions for ground vehicles, air vehicles or robot arms. This is a very open-ended project so come talk to us first, if interested.

(Google for these papers)