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

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.

May 25th 2026
4 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.

Jun 1st 2026
1 Week
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
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
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
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.

May 18th 2026
3 Weeks
Sistemas Digitales: De las puertas lógicas al procesador (Coursera) Coursera
Universitat Autònoma de Barcelona

Sistemas Digitales: De las puertas lógicas al procesador (Coursera)

En este curso aprenderemos los fundamentos del diseño de los circuitos digitales actuales, siguiendo una orientación eminentemente práctica. A diferencia de otros cursos más "clásicos" de Circuitos Digitales, nuestro interés se centrará más en el Sistema que en la Electrónica que lo sustenta. Este enfoque nos permitirá sentar las bases del diseño de Sistemas Digitales complejos.

Jun 8th 2026
5-12 Weeks
Real-Time Embedded Systems Concepts and Practices (Coursera) Coursera
University of Colorado Boulder

Real-Time Embedded Systems Concepts and Practices (Coursera)

This course can also be taken for academic credit as ECEA 5315, part of CU Boulder’s Master of Science in Electrical Engineering degree. Course Description: In this course, students will design and build a microprocessor-based embedded system application using a real-time operating system or RT POSIX extensions with Embedded Linux. The course focus is on the process as well as fundamentals of integrating microprocessor-based embedded system elements for digital command and control of typical embedded hardware systems.

Jun 8th 2026
4 Weeks
M2M & IoT Interface Design & Protocols for Embedded Systems (Coursera) Coursera
University of Colorado Boulder

M2M & IoT Interface Design & Protocols for Embedded Systems (Coursera)

This course can also be taken for academic credit as ECEA 5348, part of CU Boulder’s Master of Science in Electrical Engineering degree. M2M and IoT Interface Design and Protocols is the third of three classes in the Embedded Interface Design (EID) specialization, an online version of the on-campus EID class taught in graduate embedded systems design. This course is focused on connecting devices to each other and to the cloud to create prototypes and actual systems that flow data from devices to consumers. The class includes an introduction to M2M (Machine-to-Machine) and IoT (Internet of Things) concepts, using the cloud to develop IoT systems (specifically AWS (Amazon Web Services) and its IoT framework), a review of common communications protocols at every level of connected devices, and other IoT design concerns such as security, message queuing approaches, and the use and design of APIs and microservices .

Jun 8th 2026
4 Weeks