Verification and Synthesis of Autonomous Systems (Coursera)

Verification and Synthesis of Autonomous Systems (Coursera)

This course will provide different techniques on the verification of autonomous systems against stability, regular, or omega-regular properties. Such techniques include Lyapunov theories, reachability analysis, barrier certificates, and model checking. Finally, it will introduce several techniques on designing controllers enforcing properties of interest over the original autonomous systems.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

This course is part of the Foundations of Autonomous Systems Specialization.

What you'll learn

  • Analyze stability properties of linear systems
  • Compute over-approximations of reachable sets for some classes of systems
  • Perform model checking for finite systems
  • Synthesize controllers for safety and reachability specifications for finite systems using fixed-point algorithms

Syllabus

Course Introduction
Welcome to the beginning of our exploration into formal verification and synthesis within the model-based design framework. In this introductory module, we will guide you through the key processes of specification, design, verification, and refinement of systems. We will delve into the vital role of formal methods in guaranteeing the correctness of systems. Through captivating examples, we will demonstrate the importance of formal verification, especially in safety-critical and life-critical applications. This module lays the foundation for the more advanced topics we will address throughout the course.

Verification of Finite Systems
In this module, we focus on the verification of finite systems, particularly emphasizing regular safety properties and ω-regular properties (including those expressed as linear temporal logic formulae). We will explore a variety of verification techniques and delve into the theoretical underpinnings essential for understanding how finite systems are verified. Through detailed examples and clear, comprehensive explanations, we aim to provide a deep understanding of how these properties are verified in the context of finite systems.

Synthesis for Finite Systems
In this module, we explore the synthesis of controllers for finite systems, focusing on enforcing certain linear temporal logic (LTL) formulas, including safety, reachability, persistence, and recurrence. We aim to understand how controllers can be designed to render specific LTL formulas for closed-loop systems. The module provides essential theoretical frameworks and practical algorithms necessary for synthesizing such controllers, with an emphasis on the roles of fixed-point operators and algorithms in the computation processes. Additionally, we will discuss various synthesis techniques that depend on the properties of the system and the involved LTL formulas.

Abstraction and Refinement
In this module, we will explore the concepts of abstraction and refinement within the context of control systems. We will delve into feedback refinement relations to understand how controllers can be modified or replaced to meet new specifications without altering the overall system behavior. The module also covers the computation of abstractions, demonstrating how we derive abstract models from complex systems to facilitate analysis and design. Additionally, we will discuss practical methods for abstracting different types of control systems, equipping us with the skills to apply theoretical concepts in real-world scenarios.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Enhancing Catholic School Identity (edX) EdX
KU Leuven University,KULeuvenX

Enhancing Catholic School Identity (edX)

How to build a Catholic Dialogue School in a pluralising and secularising world. The Catholic identity of schools today is being challenged by processes of pluralisation and secularisation. While school communities used to be considered more or less homogeneous, nowadays schools are characterised by increasing diversity and a diminishing interest in the Catholic faith tradition, among students as well as teachers.

Self Paced
Self-Paced
Introduction to Automated Analysis (Coursera) Coursera
University of Minnesota

Introduction to Automated Analysis (Coursera)

This course introduces state-of-the-art techniques for automated analysis. Automated analysis encompasses both approaches to automatically generate a very large number of tests to check whether programs meet requirements, and also means by which it is possible to *prove* that software meets requirements and that it is free from certain commonly-occurring defects, such as divide-by-zero, overflow/underflow, deadlock, race-condition freedom, buffer/array overflow, uncaught exceptions, and several other commonly-occurring bugs that can lead to program failures or security problems.

Aug 10th 2026
4 Weeks
Intelligent Systems: An Introduction to Deep Learning and Autonomous Systems (FutureLearn) FutureLearn
University of York

Intelligent Systems: An Introduction to Deep Learning and Autonomous Systems (FutureLearn)

Discover the benefits and risks of deep learning and its uses in systems such as assistive technology and facial recognition. Delve into the inner workings of deep learning. From Ada Lovelace until the first decade of this century, we have relied on expert computer programmers to design and write software.

Self Paced
3 Weeks
How Computers Work (Coursera) Coursera
University of London,Goldsmiths, University of London

How Computers Work (Coursera)

Computers are everywhere, they aren't just the desktops and laptops we use for work but the phones in our pockets and even the watches on our wrists are also computers. You probably use a computer every day and in fact you are reading this on a computer! Just because we use computers all the time, doesn't mean that we understand them, or find them easy to use. Computer Science is the science of computers, it is the field of knowledge that experts use to understand computer systems. Knowing a little computer science will help you understand the computers all around you.

Aug 24th 2026
4 Weeks
Multi-Object Tracking for Automotive Systems (edX) EdX
Chalmers University of Technology,ChalmersX

Multi-Object Tracking for Automotive Systems (edX)

Learn how to localize and track dynamic objects with a range of applications including autonomous vehicles. Autonomous vehicles, such as self-driving cars, rely critically on an accurate perception of their environment. In this course, we will teach you the fundamentals of multi-object tracking for automotive systems.

Self Paced
Self-Paced
Building a Future with Robots (FutureLearn) FutureLearn
The University of Sheffield

Building a Future with Robots (FutureLearn)

Explore the role of robots and autonomous systems in the factories, homes, hospitals, schools and cars of our near future. In the near future, many of us will work alongside robots. Knowledge of robotics and autonomous systems will be a helpful skill for a surprising number of today’s careers. On this course, we’ll look at current and future developments in the field of robotics that could shape many different aspects of our daily lives.

Available now
3 Weeks
The Road to Autonomy: Exploring EV Technologies (Coursera) Coursera
Coursera Instructor Network

The Road to Autonomy: Exploring EV Technologies (Coursera)

Electric Vehicle Autonomous Technologies is a dynamic and forward-looking course that covers the transformative realm of autonomous electric vehicles (AEVs). In an era where transportation is on the brink of a revolution, this course provides a setting to analyze the fusion of electric propulsion and autonomous driving. It explores the convergence of cutting-edge technologies that are reshaping the automotive landscape, offering learners a journey into the future of mobility.

Aug 24th 2026
1 Week
Problem Solving Using Computational Thinking (Coursera) Coursera
University of Michigan

Problem Solving Using Computational Thinking (Coursera)

Have you ever heard that computers "think"? Believe it or not, computers really do not think. Instead, they do exactly what we tell them to do. Programming is, "telling the computer what to do and how to do it." Before you can think about programming a computer, you need to work out exactly what it is you want to tell the computer to do. Thinking through problems this way is Computational Thinking. Computational Thinking allows us to take complex problems, understand what the problem is, and develop solutions. We can present these solutions in a way that both computers and people can understand.

Aug 17th 2026
5-12 Weeks
Autonomous Aerospace Systems (Coursera) Coursera
University of Naples Federico II

Autonomous Aerospace Systems (Coursera)

The course aims to provide the knowledge needed to design and develop efficient driving and navigation solutions for autonomous vehicles. Driving can be strategic or tactical while navigation is the function that provides information about the position, speed and orientation of the vehicle. It is made by integrating measurement from different sources, such as sensors and receivers.

Aug 17th 2026
5-12 Weeks