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.

Jun 15th 2026
5-12 Weeks
Renewable Energy: Resources and Technologies (Coursera) Coursera
Peter the Great St. Petersburg Polytechnic University

Renewable Energy: Resources and Technologies (Coursera)

In our course, you will become familiar with the basic concepts of renewable energy. Get an idea about the basics of determining the potential of renewable energy resources, including its territorial, temporal and climatic variability. We paid great attention to the study of modern technologies for converting solar, wind and hydropower, as well as to operating modes of power plants based on renewables in power supply systems for autonomous and grid consumers.

Aug 1st 2022
5-12 Weeks
Design and Prototype Embedded Computer Systems (FutureLearn) FutureLearn
Raspberry Pi Foundation,National Centre for Computing Education

Design and Prototype Embedded Computer Systems (FutureLearn)

Discover embedded system design and work your way through the product design lifecycle. Supported by Google. Learn how to design your own embedded system. On this course from the Raspberry Pi Foundation, you will explore how embedded systems are used in the world around us. You will learn what makes an embedded system different from a general purpose system (such as a PC) and discover how embedded systems are specialised for a particular use case.

Nov 1st 2021
3 Weeks
System Validation (Canvas Network) Canvas Network
Halmstad University

System Validation (Canvas Network)

Anyone who has ever designed an embedded system or a communication protocol involving several components executing simultaneously knows that such software is inherently susceptible to bugs. Typical problems include race conditions, deadlocks, and unexpected interplay between different components. The parallel nature of these systems makes it notoriously hard to detect such bugs using testing (timing, e.g., plays a crucial role). This course is designed to provide an introduction to the problems that arise in the design of such systems. It provides ways to model such systems and reason about them.

Self Paced
Self-Paced
Fundamentals of Transistors (edX) EdX
Purdue University,PurdueX

Fundamentals of Transistors (edX)

This course develops a simple framework for understanding the essential physics of transistors, including modern nanoscale transistors. Important technology considerations and circuit applications are also discussed. The transistor has been called the greatest invention of the 20th century - it enabled the electronics systems that have shaped the world we live in. Today's nanotransistors are a high volume, high impact success of the nanotechnology revolution.

Feb 13th 2023
5-12 Weeks
Systèmes embarqués et objets connectés - Démarche de conception (FUN) FUN
Université Fédérale Toulouse Midi-Pyrénées

Systèmes embarqués et objets connectés - Démarche de conception (FUN)

Coproduit par l'INP Toulouse et l'INSA Toulouse, ce MOOC constitue un module de positionnement général des systèmes embarqués et objets connectés dans leurs contextes opérationnels. Fortement novateur, il aborde ces systèmes selon un ensemble de points de vue pluridisciplinaires. L'objectif de ce MOOC est de vous permettre d'acquérir une démarche méthodologique, de mettre en place une pensée globale prenant en compte l'écosystème du domaine des systèmes embarqués et objets connectés dans une finalité de compréhension générale du système.

No sessions available
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
System Validation: Automata and behavioural equivalences (Coursera) Coursera
EIT Digital

System Validation: Automata and behavioural equivalences (Coursera)

Have you ever experienced software systems failing? Websites crash, calendar not synchronising, or even a power blackout. Of course you have! But did you know that many of these errors are the result of communication errors either within a system or between systems? Depending on the system, the impact of software failures can be huge, even resulting in massive economic damage or loss of lives. Software, and in particular the communication between software-intensive systems, is very complex and very difficult to get right. However, we _need_ dependability in the systems we use, directly or indirectly, to support us in our everyday lives.

Jun 1st 2026
3 Weeks
Linux System Programming and Introduction to Buildroot (Coursera) Coursera
University of Colorado Boulder

Linux System Programming and Introduction to Buildroot (Coursera)

This course provides an overview of System Programming for the Linux operating system, or software which is interfacing directly with the Linux Kernel and C library. The basic components of a Linux Embedded System, including kernel and root filesystem details are discussed. The Buildroot build system is introduced, which students use to build their own custom Embedded Linux system through programming assignments.

Jun 15th 2026
4 Weeks