Difference between revisions of "EECI 2020: Computer Session: TuLiP"

From Murray Wiki
Jump to navigationJump to search
m
 
(7 intermediate revisions by 2 users not shown)
Line 6: Line 6:


==  Lecture Materials ==
==  Lecture Materials ==
* Lecture slides: [http://www.cds.caltech.edu/~murray/courses/eeci-sp13/C2_tulip-21Mar13.pdf TuLiP]
* Lecture slides: [http://www.cds.caltech.edu/~murray/courses/eeci-sp2020/C2_TuLiP-11Mar2020.pdf TuLiP]
* MATLAB plotting: [http://www.cds.caltech.edu/~murray/courses/eeci-sp12/plotRobotSim.m plotRobotSim.m], [http://www.cds.caltech.edu/~murray/courses/eeci-sp12/plotCarSim.m plotCarSim.m]
* amination script: [http://www.cds.caltech.edu/~murray/courses/eeci-sp2020/animate.py animate.py]
* [http://www.cds.caltech.edu/~murray/courses/eeci-sp12/tulip_examples.zip Example TuLiP files] (zip file):
* [http://www.cds.caltech.edu/~murray/courses/eeci-sp2020/c2-tulip.zip Example TuLiP files] (zip file):
** 6 cell robot, discrete state space: [http://www.cds.caltech.edu/~murray/courses/eeci-sp12/robot_discrete_simple.py robot_discrete_simple.py]
** 6 cell robot, discrete state space: [http://www.cds.caltech.edu/~murray/courses/eeci-sp2020/robot_simple_discrete.ipynb robot_simple_discrete.ipynb]
** 6 cell robot, with dynamics: [http://www.cds.caltech.edu/~murray/courses/eeci-sp12/robot_simple.py robot_simple.py], [http://www.cds.caltech.edu/~murray/courses/eeci-sp12/robot_simple2.py robot_simple2.py] (alternative formulation)
** 6 cell robot, with dynamics: [http://www.cds.caltech.edu/~murray/courses/eeci-sp2020/robot_simple_continuous.ipynb robot_simple_continuous.ipynb]
** 3x3 exercise: [http://www.cds.caltech.edu/~murray/courses/eeci-sp2020/exercise_3x3.ipynb exercise_3x3.ipynb]
** Left turn exercise: [http://www.cds.caltech.edu/~murray/courses/eeci-sp2020/exercise_leftturn.ipynb exercise_leftturn.ipynb]


== Further Reading ==
== Further Reading ==

Latest revision as of 18:50, 18 March 2020

Prev: Reactive Synthesis Course home Next: Minimum Violation Planning

This lecture provides an overview of TuLiP, a Python-based software toolbox for the synthesis of embedded control software that is provably correct with respect to a GR[1] specifications. TuLiP combines routines for (1) finite state abstraction of control systems, (2) digital design synthesis from GR[1] specifications, and (3) receding horizon planning. The underlying digital design synthesis routine treats the environment as adversary; hence, the resulting controller is guaranteed to be correct for any admissible environment profile. TuLiP applies the receding horizon framework, allowing the synthesis problem to be broken into a set of smaller problems, and consequently alleviating the computational complexity of the synthesis procedure, while preserving the correctness guarantee.

A brief overview of TuLiP will be followed by hands-on exercises using the toolbox.

Lecture Materials

Further Reading

Additional Information