Control of Discrete-Event Systems
Learning objectives:
- Study how to model discrete-event systems
- Study how to design feedback controllers for discrete-event systems
- Learn about how to build different control architectures: centralized, decentralized, distributed, hierarchical
Textbook / Reference:
There is no textbook for this course. An essential reference is the following:
"Supervisory Control of Discrete-Event Systems" by W.M. Wonham and Kai Cai, Springer, 2019.
Software:
This courses uses Matlab + TCT. You need Windows 64bit. To use the software, follow the steps below:
- Install Matlab (download the Windows 64bit version here, with university campus license). After you install the software, you also need to make a change according this document.
- Download MatlabTCT (with graphviz).
- Uncompress the downloaded file and use the folder "MatlabTCT" as the working directory for Matlab.
Test scripts (change file extension .txt to .m before running them in Matlab):
- create, displaydes, and trim (Test1.txt)
- complement (Test2.txt)
- selfloop, meet, sync, and nonconflict (Test3.txt)
- supervisory control design (Test4.txt)
- Test script for Supervisor Localization of Transfer Line (Test5.txt)
- Test script for observable (Test6.txt)
- Test script for Partial-Observation Supervisory Control Design of Mutual Exclusion (Test7.txt)
Additional information:
Software TCT is available for free online http://www.control.utoronto.ca/cgi-bin/dlxptct.cgi
To plot state-transition graph, you need to download software graphviz.zip
Manual of TCT is for download here
Prerequisites:
There is no prerequisite for this course. An undergraduate control and automata course would be a plus, but not required.
Course Outline:
Topics
- Introduction to discrete-event systems; symbols, alphabets, strings (Introduction) (Lecture1)
- Languages, finite-state automata (Lecture2)
- Operations on automata (Lecture3)
- Supervisory control basics (Lecture4)
- Controllability, main result of supervisory control (Lecture5)
- Optimal supervisory control (Lecture6)
- Supervisory control examples, TCT design software (Lecture7)
- Decentralized supervisory control (Lecture8)
- Distributed control architecture (Lecture9)
- Distributed control by supervisor localization (Lecture10)
- Distributed control examples (Lecture11)
- Partial observation, natural projection (Lecture12)
- Observability, partially-observed supervisory control (Lecture13)