Autonomous systems are systems that are designed to work without, or with limited, human intervention. The objective of this course is to give a broad understanding of the wide area of autonomous systems and the foundational knowledge in some topic areas required to understand and develop autonomous systems. The course covers topics from sensing and perception to control and decision making. Learning outcomes include the notion of autonomy and understanding the different components that typically are found in these systems. Other learning outcomes are fundamental techniques for autonomous systems from the areas of automatic control, sensor fusion, learning, and software. The examination consists of assignments done individually and in groups.

Course Type:

  • AI track: elective
  • AS track: mandatory* (replaces Autonomous systems 1)
  • Joint Curriculum: foundational

Time: Given yearly from 2022, autumn

Teachers: Bo Bernhardsson (LU), Patric Jensfelt (KTH), Gustaf Hendeby (LiU)

Examiner: Patric Jensfelt (KTH)

*The course is only mandatory for those in the AS track who have not taken “Autonomous Systems 1”.

The course requires

  • solid programming experience in a high-level language; the programming
    assignments will use Python and Matlab.
  • a background in mathematics corresponding to the contents of the WASP-course “Mathematics and Machine Learning”.

Autonomous systems are systems that are designed to work without, or with limited, human intervention. This course covers autonomous systems concepts and focuses on mobile physical systems. The objective of this course is to give a basic understanding of some of the core components that make up autonomous systems, from sensing and perception to planning and control, and to illustrate how these interact.

On completion of the course, the student should be able to

  • Explain what autonomy is and what challenges it poses for a system.
  • Describe basic properties of common sensors in autonomous systems.
  • Explain the principles for fusing sensor information in autonomous systems.
  • Use learning-based methods for perception in autonomous systems.
  • Explain the principles of motion planning in autonomous systems.
  • Explain the principles of automatic control in autonomous systems.
  • Use some common software tools for the design of autonomous systems.

In this course we will look at some of the building blocks of autonomous systems along with some common software tools. A traditional and highly simplified model of a system divides it into sensing, planning, and acting.

Sensors allow an autonomous system, be it an autonomous truck, a service robot, or an autonomous forklift, to gather information about the internal state (temperature, electrical currents, etc.) and the state of the surrounding world as well as its position in that world. We will look at different sensors and study the type of data they provide, where they are applicable, and what their strengths and weaknesses are. The problem of perception is to process raw data from the sensors to extract information that can be used by the autonomous system. We will look at two examples of this; 1) the problem of estimating the position of a vehicle using a traditional, model-based, approach to sensor fusion; and 2) how learning-based models can be employed to solve many perception problems, such as detecting objects. Given the information extracted from the sensors and refined with perception methods, we will study motion planning. Finally, we look at controlling a system so that some objective, such as position or speed, is met or that the previously computed
motion plan is executed.

Lecture material (slides) and hand-in assignments distributed via the course homepage.

The examination in the course consists of four assignments to be completed individually and in groups. Some of the assignments or parts thereof will be carried out or examined during the in-person 2-day meetings to allow for more interaction and better support.

A re-examination will be made available, upon request, about 6 months after the course covering completion of missing parts.

If you are not a student at KTH you must login via https://canvas.kth.se/login/canvas