Overview of the lessons learned by the robot motion planning community in the recent years. Examines approaches based on potential functions, graphs, sampling methods, task and motion planning, and basic approaches to planning under uncertainty. Provides a set of tools to tackle new problems and enables the pursuit of complex research questions such as planning for autonomous systems. Recommended prerequisites or corequisites: ASEN 5014 or equivalent, knowledge of how to plot 2-D/3-D functions, arrays and other data structures, standard constructs (loops, functions, etc), C++, Python or MATLAB, and knowledge of differential equations and linear algebra.