Machine learning may be used to greatly expand the capabilities of robotic systems, and has been applied to a variety of robotic system functions including planning, control, and perception. Adaptation and learning are particularly important for development of autonomous robotic systems that must operate in dynamic or uncertain environments. Ultimately we would like for the robots to expand their knowledge and improve their own performance through learning while operating in the environment (on-line and/or lifelong learning). Robot Learning covers the application of learning techniques including Reinforcement Learning, Learning from Demonstration, and Robot Shaping that may be used with a variety of machine learning paradigms for which data is used to generate (through induction) models that are then used by the robot to perform tasks. A wide variety of paradigms are available to generate models (e.g., CMAC, KNN, MLP, lazy learning, LWR, RBF, deep networks). These learning techniques and paradigms are then combined with traditional robotic control approaches (e.g., motor schema, behavior-based, direct and inverse methods) to create controllers to control the robots while operating in real-world environments. This graduate course will explore the application of machine learning techniques, paradigms, and control design to robotic systems, focusing primarily on key useful representations and model building techniques for application in non-stationary robotic systems.