又是一篇有关STL任务分解的文章
[1] Z. Zhang and S. Haesaert, “Modularized Control Synthesis for Complex Signal Temporal Logic Specifications.” arXiv, Mar. 29, 2023. doi: 10.48550/arXiv.2303.17086.
文章目录
Outline
- 通过一系列规则将复杂的STL公式转化为独立的模块,从而提高MILP的求解效率
- 证明了分解后子公式与原公式的等价性
- 提出LSR方法求解控制律
1 Intro
通常的STL综合问题使用MILP进行编码求解,但是当公式比较复杂的时候求解时间很长,因此本文提出使用模块化公式的方法,分开求解控制律以提升计算效率。
提升控制综合效率的方法还有:
- model checking方法:[14]将STL转化为timed Automata
- CBF[12]和Funnel法[15]
2 Preliminaries and Problem Statement
系统表示
本文处理连续时间系统,系统动态由以下微分方程表示:
STL语法分解
定义子公式:不可用布尔逻辑算子继续分解的公式
分解规则:
φ
=
φ
1
U
(
a
,
b
)
φ
2
\varphi=\varphi_1 U_{(a,b)}\varphi_2
φ=φ1U(a,b)φ2能够拆分为(4)式
- (4)式在说什么呢?
- φ = φ 1 U ( a , b ) φ 2 \varphi=\varphi_1 U_{(a,b)}\varphi_2 φ=φ1U(a,b)φ2能够以两种情况成立,这里以递归的形式进行定义
- 要么在某个 τ \tau τ时刻之前完成
- 如果在
τ
\tau
τ时刻之后完成,则
(
a
,
τ
)
(a,\tau)
(a,τ)时
φ
1
\varphi_1
φ1一直成立,并且在
τ
\tau
τ瞬间,再次分两种情况:
- φ 1 \varphi_1 φ1和 φ 2 \varphi_2 φ2在这一瞬间同时成立
- 或者之后剩下的时间里满足 φ 1 U ( 0 , b − t ) φ 2 \varphi_1 U_{(0,b-t)}\varphi_2 φ1U(0,b−t)φ2
- 简单的来说,就是对于 ( a , b ) (a,b) (a,b)中的任何一个时刻 τ \tau τ,要么在这个时间前、要么当时、要么之后确定公式的满足性
- 这里的花括号 { τ } \{\tau\} {τ}表示 t = τ t=\tau t=τ这个时间点
Reachable Set and Largest Satisfaction Region
接下来要我们一步一步引入本文最核心的概念——LSR
- R τ ( X 0 ) \mathscr R_\tau(\mathscr X _0) Rτ(X0)reachable set: 由某一初始状态集合出发在** τ \tau τ时刻的所有可能状态**
- R τ − 1 ( X τ ) \mathscr R_\tau^{-1}(\mathscr X _\tau) Rτ−1(Xτ) inverse reachable set: 能到达当前状态的全部初始状态
- U τ ( X 0 , φ ) \mathscr U_\tau(\mathscr X _0,\varphi) Uτ(X0,φ) admissible control set: 所有使得系统状态不违反约束的的控制序列
- S 0 ( φ ) S_0(\varphi) S0(φ) largest specification region: 存在控制下最大的初始状态集合,使得轨迹满足约束(也就是排除掉怎么都会破坏约束的剩余初始状态)
Problem Statement
本文接下来要解决三个问题:
-
分解STL公式,使得时间区间尽量短且没有区域重合
-
由子公式的LSR得到原公式的LSR
-
从LSR中选择一个初始状态设计开环控制器
3 Main Results
这一章中,首先定义了什么是充分分解式,其次提出了一套将普通公式转化为这类公式的方法,最后提出使用模块化方法求解LSR与控制律
A. Sufficiently Separate Formulas
- S2-formulas: 子公式的时间区间不重合的公式
- 以下两种公式的所有的子公式没有重合的时间内区间为充分分离
- γ \gamma γ-formulas: always式的逻辑与组合
- ξ \xi ξ-formulas: eventually式的逻辑或组合
-
γ
\gamma
γ型和
ξ
\xi
ξ型公式的数量相等称为充分分离
- ψ \psi ψ-formula: 上面2种公式的逻辑与组合
- 以下两种公式的所有的子公式没有重合的时间内区间为充分分离
B. 将 ψ \psi ψ型公式转化为 S 2 S^2 S2型
首先看两条引理:
Lemma 1:
- 对于单个时间点,always和eventually等价
- 对于单个时间点,always or可以直接拆分(一般情况是不能的)
- 对于单个时间点,always always和eventually eventually可以直接简化
Lemma 2:
- always可以用and将时间区间拆开,eventually可以用or将时间区间拆开
分别可以对 γ \gamma γ型和 ξ \xi ξ型公式引出分解规则:
- 时间区间的拆分
- 布尔逻辑的拆分
以上的拆分方法都是不改变语义的,能够保证公式的soundness
C.Modularized Solution of Largest Satisfying Regions
B中的方法能够将所有的 ψ \psi ψ型公式转化为S2型,这一部分介绍了如何从子公式的LSR中求解复杂总公式的LSR。
τ \tau τ-LSR
- 前面的LSR S 0 S_0 S0 为初始状态集合,而Def4修改定义为 τ \tau τ时刻状态集合
- 总公式的LSR根据子公式的布尔逻辑组合方式得到(显而易见)
- 逻辑与就是取交集
- 逻辑或就是取并集
D. Modularized Synthesis of an Ψ \Psi Ψ-class formula
控制综合3步走:
- 将 ψ \psi ψ型公式分解为 γ \gamma γ型和 ξ \xi ξ型公式两类
- 求解每个子公式的LSR,并利用C中的规则得到总LSR
- 模块化控制综合
- 第 j j j个公式头部第与 j j j个公式尾部的定义:
- 由于分解过程中涉及到时间区间的分割,因此需要确保轨迹的连贯性:设计控制器时需保证 a j + 1 a_{j+1} aj+1时刻的状态落在剩余公式的LSR中
- 这个方法提升效率的原因在于每当过去的一个子公式被满足,就可以以后不用再考虑
- 对于eventually子公式有一个特殊处理,不需要等到子公式的时域结束就能够判断其满足性,因此只要为真就移除,以减小计算负担
- 通过求解优化问题得到问题的解
4 Case Study
实验场景设置为如下平面空间,机器人考虑为单积分器模型,控制量大小有上限。
机器人要处理的任务为: ψ = G [ 0 , 30 ] φ 0 ∧ G [ 15 , 45 ] φ 1 ∧ F [ 0 , 45 ] φ 2 \psi=G_{[0,30]}\varphi_0 \land G_{[15,45]}\varphi_1 \land F_{[0,45]}\varphi_2 ψ=G[0,30]φ0∧G[15,45]φ1∧F[0,45]φ2
- 30秒前,每5秒至少访问一次 Z 0 Z_0 Z0: φ 0 = F [ 0 , 5 ] ( ζ ∈ Z 0 ) \varphi_0=F_{[0,5]}(\zeta\in Z_0) φ0=F[0,5](ζ∈Z0)
- 15s-45s,机器人离开 Z 1 Z_1 Z1后必须在5s内回来 : 6 φ 1 = ¬ ( ζ ∈ Z 1 ) → F [ 0 , 5 ] ( ζ ∈ Z 1 ) \varphi_1=\neg(\zeta\in Z_1)\to F_{[0,5]}(\zeta\in Z_1) φ1=¬(ζ∈Z1)→F[0,5](ζ∈Z1)
- 45s前,必须在 Z 2 Z_2 Z2内待够3s充电 : G [ 0 , 3 ] ( ζ ∈ Z 2 ) G_{[0,3]}(\zeta\in Z_2) G[0,3](ζ∈Z2)
接下来作者用这个例子一步一步演示了自己的算法:
第一步:将原公式改写为S2型
第二步:求LSR,也就是Fig 1中粉红色的部分
第三步:模块化控制综合
根据第一步的分解,将公式切分为了0-15,15-30和30-45三段,因此分段求出了控制律
得到的轨迹信息如下,可见总轨迹是满足STL约束的,且求解优化问题的总时间明显更短
5 Conclusion
局限:
- 只处理always和eventually的分解
- 开环,对不确定性不具有鲁棒性
读后心得
- 所谓模块化,不如说是分阶段求解,本文实际上上将复杂公式拆解为时间窗口不重合几段进行分别求解