Requirement Specifications for Autonomous Systems (Coursera)

Requirement Specifications for Autonomous Systems (Coursera)

This course will discuss different ways of formally modeling requirements of interest for autonomous systems. Examples of such requirements include stability, invariance, reachability, regular languages, omega-regular languages, and linear temporal logic properties. In addition, it will introduce non-deterministic finite and büchi automata for recognizing, respectively, regular languages and omega-regular languages.

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

What you'll learn

  • Utilize formal methods to specify and verify requirements for autonomous systems.
  • Model system behaviors and verify stability using various analytical methods.
  • Apply reachable set computation and robustness analysis in system design.

Syllabus

Course Introduction
In this course, we delve into both low-level and high-level specifications, fundamental to the development of safe autonomous systems. This module is specifically designed to equip students with an in-depth understanding of expressing system behaviors through formal methods, including linear temporal logic and automata on both finite and infinite strings. Through a collection of detailed examples and practical applications, participants will acquire the skills needed to define and analyze key properties of autonomous systems, such as safety and reachability.

Low-Level Specifications
This module offers a concise introduction to normed vector spaces and stability concepts in autonomous systems, encompassing both asymptotic stability and global asymptotic stability. It emphasizes the application of Lyapunov's Stability Theorem for the formal verification of these properties in complex systems, including its application to various simple systems, such as linear ones. Through illustrative examples, we will demonstrate the significance of these concepts in analyzing and ensuring the stability of systems.

High-Level Specifications: Reachability, Safety, Regular and ω-Regular Properties
Delve into the topic of reachable sets and uncover their critical role in guaranteeing system safety. This module introduces frameworks for exploring computational techniques to over-approximate reachable sets across diverse system classes. You will have the chance to apply your knowledge in real-world contexts, investigate the use of zonotopes, and recognize their beneficial properties in the computation of reachable sets. Moreover, we delve into fundamental concepts of formal languages, and regular and omega-regular expressions, offering succinct and formal methods to express regular and omega-regular languages, respectively.

Nondeterministic Finite and Büchi Automata (NFA and NBA)
This module immerses you in the essential principles of regular and ω-regular properties and how they are represented via non-deterministic finite automata (NFA) and Büchi automata (NBA), respectively. You will study the notation and architecture of NFAs and NBAs, master the construction of regular and ω-regular expressions, and grasp their correlation with these automata. The course will navigate you through the conversion of NFAs to regular expressions and NBAs to ω-regular expressions and the inverse, elucidating the significance of these concepts in the verification of finite and infinite behaviors of systems.

Linear Temporal Logic Formulae
This module provides an in-depth exploration of Linear Temporal Logic (LTL) formulas, a mathematical formalism for describing languages containing infinite words. It presents a framework for articulating the temporal dimensions of system behaviors, offering a syntax that closely mirrors natural language. By melding propositional logic with temporal operators, LTL furnishes a powerful toolkit for specifying the rich behaviors of systems.

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

Related Courses

State Estimation and Localization for Self-Driving Cars (Coursera) Coursera
University of Toronto

State Estimation and Localization for Self-Driving Cars (Coursera)

Welcome to State Estimation and Localization for Self-Driving Cars, the second course in University of Toronto’s Self-Driving Cars Specialization. We recommend you take the first course in the Specialization prior to taking this course. This course will introduce you to the different sensors and how we can use them for state estimation and localization in a self-driving car.

Sep 21st 2026
5-12 Weeks
Fundamentals of TinyML (edX) EdX
HarvardX,Harvard University

Fundamentals of TinyML (edX)

Focusing on the basics of machine learning and embedded systems, such as smartphones, this course will introduce you to the “language” of TinyML. What do you know about TinyML? Tiny Machine Learning (TinyML) is one of the fastest-growing areas of Deep Learning and is rapidly becoming more accessible. This course provides a foundation for you to understand this emerging field.

Self Paced
Self-Paced
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
Introduction to Embedded Systems Software and Development Environments (Coursera) Coursera
University of Colorado Boulder

Introduction to Embedded Systems Software and Development Environments (Coursera)

Welcome to the Introduction to Embedded Systems Software and Development Environments. This course is focused on giving you real world coding experience and hands on project work with ARM based Microcontrollers. You will learn how to implement software configuration management and develop embedded software applications. Course assignments include creating a build system using the GNU Toolchain GCC, using Git version control, and developing software in Linux on a Virtual Machine.

Oct 12th 2026
4 Weeks
Electrónica Digital Bit a Bit: Diseñando circuitos complejos (Coursera) Coursera
Pontificia Universidad Católica de Chile

Electrónica Digital Bit a Bit: Diseñando circuitos complejos (Coursera)

Los circuitos digitales más complejos como memorias y procesadores, que contienen millones de transistores gracias a su reducido tamaño, pueden ser divididos en circuitos más simples ya conocidos para facilitar su diseño e implementación. Lo mismo podemos realizar utilizando Verilog para diseñar circuitos digitales complejos que realizan muchas funciones o cuentan con un gran número de entradas y salidas.

Jun 22nd 2026
5-12 Weeks
Introduction to Architecting Smart IoT Devices (Coursera) Coursera
EIT Digital

Introduction to Architecting Smart IoT Devices (Coursera)

Embedded Systems are so ubiquitous that some of us take them for granted: we find them in smartphones, GPS systems, airplanes and so on. But have you ever wondered how these devices actually work? If so, you're in the right place! In this course, you'll learn about the characteristics of embedded systems: the possibilities, dangers, complications and recipes for success.

Jun 15th 2026
3 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.

Sep 28th 2026
5-12 Weeks
Web Connectivity and Security in Embedded Systems (Coursera) Coursera
EIT Digital

Web Connectivity and Security in Embedded Systems (Coursera)

In this course, we will explore several technologies that bring modern devices together, facilitating a network of connected things and making devices internet enabled. We will discuss rules, protocols, and standards for these devices to communicate with each other in the network. We will also go through security and privacy issues and challenges in cyber physical systems (CPS). We will explore measures and techniques for securing systems from different perspectives. Possible attack models are introduced and solutions to tackle such attacks are discussed. Moreover, some basic concepts related to privacy in cyber physical systems are presented.

Oct 12th 2026
5-12 Weeks
Design of CPS with ARM processor using Embedded C (Coursera) Coursera
L&T EduTech

Design of CPS with ARM processor using Embedded C (Coursera)

This comprehensive course is designed to equip participants with the knowledge and practical skills required to design and implement Cyber-Physical Systems (CPS) tailored for industrial applications. From foundational concepts to hands-on development using Embedded C programming on ARM processors, participants will explore the interdisciplinary nature of CPS, demystify its complexities, and gain the expertise needed to navigate the evolving landscape of smart systems.

Sep 21st 2026
4 Weeks
Real-Time Project for Embedded Systems (Coursera) Coursera
University of Colorado Boulder

Real-Time Project for Embedded Systems (Coursera)

The final course emphasizes hands-on building of an application using real-time machine vision and multiple real-time services to synchronize the internal state of Linux with an external clock via observation. Compare actual performance to theoretical and analysis to determine scheduling jitter and to mitigate any accumulation of latency.

Sep 28th 2026
5-12 Weeks