The term "formal methods" refers to mathematical techniques for verification and automatic synthesis of systems to ensure that the systems satisfy desirable properties given as specification. Formal methods are essential for building systems used for life-critical and mission critical applications. As robots are increasingly being used for such applications, use of formal methods has become critical for building robotic systems. In this course, we will study the recent development of formal methods based techniques for building software for robots. The course will cover basic concepts in formal methods and control theory and illustrate the potential of such techniques to be effective in the developent of high quality robotic software.
The course does not have any formal prerequisites. The students are expected to have mathematical maturity of the level of an undergraduate degree in engineering. However, some familiarity with finite state machines and ordinary differential equations, and programming experience will be helpful.
Mid-Semester Examination - 20%
Literature Review and Class Presentation - 20%
Project - 60%
Mid-Semester Examination - Feb 15-19, 2016
Class Presentation - March 28, 2016, March 30, 2016, April 4, 2016
Project Presentation - April 20, 2016 from 5pm to 7pm, Venue: KD103
Project Report Submission - April 24, 2016
Lecture | Date | Topic | References |
1 | December 30, 2015 | Introduction to the course, Modeling Systems | [BK08] |
2 | January 4, 2016 | Specifying Systems Using Linear Time Properties, Invariant Verification, Safety Properties, Liveness Properties | [BK08] |
3 | January 6, 2016 | Linear Temporal Logic (LTL), Computation Tree Logic (CTL), Basic Algorithms to Verify LTL and CTL Properties | [BK08] |
4 | January 11, 2016 | Discrete-Time Markov Chain (DTMC), Probabilistic Computation Tree Logic (PCTL), Model Checing of DTMC against PCTL Properties | [BK08] |
5 | January 13, 2016 | Markov Reward Model (MRM), Probabilistic Reward Computation Tree Logic (PRCTL), Markov Decision Process (MDP), Model Checking of MDP against PCTL Properties | [BK08] |
6 | January 18, 2016 | Fairness, Fairness in CTL, Fairness in LTL | [BK08] |
7 | January 20, 2016 | Equivalence between LTL and CTL Formulae, Symbolic CTL Model Checking, Binary Decision Diagram (BDD) | [BK08], [Bry86] |
8 | January 25, 2016 | Synthesis of Reactive Design | [PPS06] |
9 | January 27, 2016 | SAT and SMT Solvers | [NOT06], [BSST09], [dMB08] |
10 | February 1, 2016 | Bisimulation Equivalence | [BK08] |
11 | February 3, 2016 | Modeling and Verification of Timed Systems | [BK08], [AD94] |
12 | February 8, 2016 | Basics of Feedback Control Theory | [AM09] |
13 | February 10, 2016 | Compositional Temporal Logic Multi-Robot Motion Planning using SMT Solvers | [SRK+14] |
-- | February 15, 2016 | Mid-Semester Examination | |
-- | February 17, 2016 | Mid-Semester Examination | |
14 | February 22, 2016 | Basic Search Techniques for Motion Planning | [LaV06] |
15 | February 24, 2016 | Sampling-Based Motion Planning | [LaV06] |
16 | February 29, 2016 | Automatic Deployment of Distributed Team of Robots | [KB10], [CDSB12] |
17 | March 2, 2016 | Incremental Motion Planning for Swarm of Robots | [SRK+16] |
18 | March 7, 2016 | Multi-Robot Motion Planning for Timed Specification | [QBI04] |
19 | March 9, 2016 | Reactive Mission and Motion Plan Synthesis from Temporal Logic Specification | [KFP09], [WTM12] |
20 | March 14, 2016 | Probabilistic Analysis of High-Level Reactive Robot Behavior | [JK12] |
21 | March 16, 2016 | Revising Motion Planning under Linear Temporal Logic Specifications in Partially Known Workspaces | [GHD13] |
-- | March 21, 2016 | Mid-Semester Recess | |
-- | March 23, 2016 | Mid-Semester Recess | |
22 | March 28, 2016 | Motion Planning from Temporal Logic Specifications (Student Presentation) | [FGKP09] |
23 | March 30, 2016 | Motion Planning from Temporal Logic Specifications (Student Presentation) | [BKV10] |
24 | April 4, 2016 | Motion Planning from Temporal Logic Specifications (Student Presentation) | [USD+13] |
25 | April 6, 2016 | Applications beyond Motion Planning: An SMT Approach to Security against Sensor Attackcs, Formal Methods for Semi-Autonomous Driving | [SNB+15], [SPN+15], [LSSS14], [SSS15] |
-- | April 11, 2016 | No Class: Travel to attend CPSWeek 2016 | |
-- | April 13, 2016 | No Class: Travel to attend CPSWeek 2016 |
[AD94] Rajeev Alur, David L. Dill: A Theory of Timed Automata. Theor. Comput. Sci. 126(2): 183-235, 1994.
[AM09] K. J. Astrom and R. M. Murray. Feedback Systems: An Introduction for Scientists and Engineers. Prince- ton University Press, 2009.
[Bry86] R. E. Bryant. Graph-based algorithms for boolean function manipulation. IEEE Trans. Computers,
35(8):677-691, 1986.
[BK08] C. Baier and J.-P. Katoen. Principles of Model Checking. The MIT Press, 2008.
[BKV10] Amit Bhatia, Lydia E. Kavraki, Moshe Y. Vardi:
Sampling-based motion planning with temporal goals. ICRA 2010: 2689-2696.
[BSST09] C. Barrett, R. Sebastiani, S. A. Seshia, and C. Tinelli. Satisfiability modulo theories. In Armin Biere, Hans van Maaren, and Toby Walsh, editors, Handbook of Satisfiability, volume 4, chapter 8. IOS Press, 2009.
[CDSB12] Yushan Chen, Xu Chu Ding, Alin Stefanescu, Calin Belta:
Formal Approach to the Deployment of Distributed Robotic Teams. IEEE Transactions on Robotics 28(1): 158-171 (2012).
[CGP99] E. M. Clarke, Jr., O. Grumberg, and D. A. Peled. Model Checking. MIT Press, 1999.
[CLH+05] H. Choset, K. M Lynch, S. Hutchinson, G. Kantor, W. Burgard, L. E. Kavraki, and S. Thrun. Principles of Robot Motion: Theory, Algorithms, and Implementations. MIT Press, 2005.
[dMB08] L. M. de Moura and N. Bjørner. Z3: An efficient smt solver. In TACAS, pages 337-340, 2008.
[FGKP09] G. E. Fainekos, A. Girard, H. Kress-Gazit, and G. J. Pappas. Temporal logic motion
planning for dynamic robots. Automatica, 45(2):343-352, 2009.
[GHD13] Meng Guo, Karl H. Johansson and Dimos V. Dimarogonas. Revising Motion Planning under Linear Temporal Logic Specifications in Partially Known Workspaces.
In ICRA, pages 5025-5032, 2013.
[JK12] B. Johnson, H. Kress-Gazit:
Probabilistic guarantees for high-level robot behavior in the presence of sensor error. Auton. Robots 33(3): 309-321 (2012).
[KB10] M. Kloetzer and C. Belta. Automatic deployment of distributed teams of robots from temporal
logic motion specifications. IEEE Transactions on Robotics, 26(1):48-61, 2010.
[KFP09] H. Kress-Gazit, G. E. Fainekos, and G. J. Pappas. Temporal-logic-based reactive mission and motion
planning. IEEE Transactions on Robotics, 25(6):1370-1381, 2009.
[LaV06] S. M. LaValle. Planning Algorithms. Cambridge University Press, 2006.
[LSSS14] W. Li, D. Sadigh, S. S. Sastry, and S. A. Seshia. Synthesis for human-in-the-loop control systems. In TACAS, pages 470-484, 2014.
[NOT06] R. Nieuwenhuis, A. Oliveras, C. Tinelli. Solving SAT and SAT Modulo Theories: From an abstract Davis--Putnam--Logemann--Loveland procedure to DPLL(T). J. ACM 53(6): 937-977, 2006.
[PPS06] N. Piterman, A. Pnueli, and Y. Sa'ar. Synthesis of reactive(1) designs. In VMCAI, pages 364-380, 2006.
[QBI04] M. M. Quottrup, T. Bak, R. Izadi-Zamanabadi:
Multi-robot Planning: a Timed Automata Approach. ICRA 2004: 4417-4422.
[SNB+15] Yasser Shoukry, Pierluigi Nuzzo, Nicola Bezzo, Alberto L. Sangiovanni-Vincentelli, Sanjit A. Seshia, Paulo Tabuada:
Secure state reconstruction in differentially flat systems under sensor attacks using satisfiability modulo theory solving. CDC 2015: 3804-3809.
[SPN+15] Yasser Shoukry, Alberto Puggelli, Pierluigi Nuzzo, Alberto L. Sangiovanni-Vincentelli, Sanjit A. Seshia, Paulo Tabuada:
Sound and complete state estimation for linear dynamical systems under sensor attacks using Satisfiability Modulo Theory solving. ACC 2015: 3818-3823.
[SRK+14] I. Saha, R. Ramaithitima, V. Kumar, G. J. Pappas, and S. A. Seshia. Automated composition of motion primitives for multi-robot systems from safe LTL specifications. In IROS, pages 1525-1532, 2014.
[SRK+16] I. Saha, R. Ramaithitima, V. Kumar, G. J. Pappas, and S. A. Seshia. Implan: Scalable Incremental Motion Planning for Multi-Robot Systems. In ICCPS, pages 1525-1532, 2016.
[SSS15] Sanjit A. Seshia, Dorsa Sadigh, S. Shankar Sastry:
Formal methods for semi-autonomous driving. DAC 2015: 148:1-148:5.
[USD+13] Alphan Ulusoy, Stephen L. Smith, Xu Chu Ding,
Calin Belta, Daniela Rus:
Optimality and Robustness in Multi-Robot Path Planning with Temporal Logic
Constraints. I. J. Robotic Res. 32(8): 889-911 (2013).
[WTM12] T. Wongpiromsarn, U. Topcu, R. M. Murray. Receding Horizon Temporal Logic Planning. IEEE Trans. Automat. Contr. 57(11): 2817-2830. 2012.