You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# This example was borrowed from [1, IX. Examples, A] whose dynamics comes from the model given in [2, Ch. 2.4].
8
-
# This is a **reachability problem** for a **continuous system**.
4
+
# This example was adapted from the numerical experiments in [1, Sec. 5] from Symbolically guided Model Predictive Control (SgMPC) [paper](https://doi.org/10.1016/j.ifacol.2022.09.039)..
5
+
# This is a **control problem** for a **discrete-time nonlinear system**.
9
6
#
10
7
# Let us consider the 3-dimensional state space control system of the form
11
8
# ```math
12
-
#\dot{x} = f(x, u)
9
+
#x_{t+1} = f(x_t, u_t)
13
10
# ```
14
-
# with $f: \mathbb{R}^3 × U ↦ \mathbb{R}^3$ given by
11
+
# with $f: \mathbb{R}^3 × \mathbb{R}^2 \to \mathbb{R}^3$ given by
# and with $U = [−1, 1] \times [−1, 1]$ and $α = \arctan(\tan(u_2)/2)$. Here, $(x_1, x_2)$ is the position and $x_3$ is the
19
-
# orientation of the vehicle in the 2-dimensional plane. The control inputs $u_1$ and $u_2$ are the rear
20
-
# wheel velocity and the steering angle.
21
-
# The control objective is to drive the vehicle which is situated in a maze made of obstacles from an initial position to a target position.
22
-
#
23
-
#
24
-
# In order to study the concrete system and its symbolic abstraction in a unified framework, we will solve the problem
25
-
# for the sampled system with a sampling time $\tau$.
26
-
# For the construction of the relations in the abstraction, it is necessary to over-approximate attainable sets of
27
-
# a particular cell. In this example, we consider the used of a growth bound function [1, VIII.2, VIII.5] which is one of the possible methods to over-approximate
28
-
# attainable sets of a particular cell based on the state reach by its center.
15
+
# and with state and control constraints given by:
# Here, $(x_1, x_2)$ represents the 2D Cartesian coordinates and $x_3$ is the angular orientation of a mobile cart.
23
+
# The control inputs $u_1$ and $u_2$ are the linear and angular velocities.
24
+
# The control objective is to drive the mobile cart to a desired reference position $x_r$.
29
25
#
30
-
#For this reachability problem, the abstraction controller is built by solving a fixed-point equation which consists in computing the pre-image
31
-
#of the target set.
26
+
#Considering this as a reachability problem, we will use it to showcase the capabilities of the Uniform grid abstraction solving discrete-time problem in Dionysos.
27
+
#The nonlinear constraints are handled as obstacles in the state-space.
32
28
33
29
# First, let us import [StaticArrays](https://github.com/JuliaArrays/StaticArrays.jl) and [Plots](https://github.com/JuliaPlots/Plots.jl).
34
30
using StaticArrays, Plots, Revise
@@ -40,16 +36,15 @@ using Dionysos, JuMP
40
36
# We first create a JuMP model:
41
37
model =Model(Dionysos.Optimizer)
42
38
43
-
# Define the prediction horizon
44
-
N =5
39
+
# Define the discretization step
45
40
discretization_step =0.1
46
41
47
-
# Define the state variables: x1(t), x2(t), x3(t) for t = 1, ..., N
42
+
# Define the state variables: x1(t), x2(t), x3(t) without specifying the start value since here it's a set. We will specify the start later using constraints.
# 1. G. Reissig, A. Weber and M. Rungger, "Feedback Refinement Relations for the Synthesis of Symbolic Controllers," in IEEE Transactions on Automatic Control, vol. 62, no. 4, pp. 1781-1796.
245
-
# 2. K. J. Aström and R. M. Murray, Feedback systems. Princeton University Press, Princeton, NJ, 2008.
236
+
# 1. Z. Azaki, A. Girard and S. Olaru, "Predictive and Symbolic Control: Performance and Safety for Non-linear Systems," in IFAC-PapersOnLine, 2022, vol. 55, no 16, pp. 290-295..
0 commit comments