【论文精读】时序逻辑应用之模型预测控制Model Predictive Control with Signal Temporal Logic Specifications

前言:因为天天写代码实在是太枯燥了,所以读点其他东西来调剂一下,这样科研进度不至于停下。前面读了几篇关于时序逻辑学习的文章,今天来了解一下时序逻辑公式在控制中的应用。

Raman, V., Donze, A., Maasoumy, M., Murray, R. M., Sangiovanni-Vincentelli, A., & Seshia, S. A. (2014, December). Model predictive control with signal temporal logic specifications. 53rd IEEE Conference on Decision and Control. https://doi.org/10.1109/cdc.2014.7039363

概览

对系统特性做出约束是时序逻辑的作用之一。在这篇文章中,STL可以用来描述系统的safety, response, bounded liveness等多种属性。而控制器的设计要把这些属性约束考虑在内,这篇文章探讨的就是如何将形式语言转化为模型语言,即数学公式,设计控制器使得系统满足时序逻辑约束。本文把混合整数线性规划问题与模型预测控制相结合,完成了对STL公式的编码。验证实验为大楼的能源和温度控制。

流水账笔记

1 Introduction

  • 主要工作
  1. 将STL约束编码 转换为MILP约束
  2. 设计MPC控制器
  3. 大楼暖空的模型验证

2 Preliminary

A. Discrete-Time Continuous Systems

离散时间连续系统:采样时间是离散值,信号的状态可以取连续值。
x t + 1 = f ( x t , u t ) x_{t+1}=f(x_t,u_t) xt+1=f(xt,ut)
DTCS的三要素:

  • 初始状态 x 0 x_0 x0
  • 控制信号 u N = u 0 u 1 u 2 . . . u N − 1 \mathbf{u}^N = u_0 u_1 u_2 ... u_{N-1} uN=u0u1u2...uN1
  • 状态轨迹(run) x ( x 0 , u N ) = x 0 x 1 x 2 … x N \mathbf{x}\left(x_{0}, \mathbf{u}^{N}\right)=x_{0} x_{1} x_{2} \ldots x_{N} x(x0,uN)=x0x1x2xN
    这里我们把N称作信号的边界(horizon),代表装填轨迹的最大编号。
    接下来还定义了代价函数: J ( x , u ) J(\mathbf{x}, \mathbf{u}) J(x,u),具体怎么用还没讲。

B. Signal Temporal Logic

参考前几篇文献对STL的定义。
另外补充bounded-time STL的时间上界(Horizon)的求取方法:
所有嵌套额时序操作子的上边界相加,表示为验证时序逻辑公式所需的最小轨迹长度。

C. Robust Satisfication of STL formulas

这篇文献.

3 Problem Statement

基于STL的优化控制

在系统轨迹符合STL公式 φ \varphi φ的前提下,优化一个与系统轨迹有关的代价函数:
argmin ⁡ u N J ( x ( x 0 , u N ) )  s.t.  x ( x 0 , u N ) ⊨ φ \begin{array}{ll} \operatorname{argmin}_{\mathbf{u}^{N}} & J\left(\mathbf{x}\left(x_{0}, \mathbf{u}^{N}\right)\right) \\ & \text { s.t. } \mathbf{x}\left(x_{0}, \mathbf{u}^{N}\right) \models \varphi \end{array} argminuNJ(x(x0,uN)) s.t. x(x0,uN)φ

基于STL的模型预测控制

最小化每一步的代价函数:
argmin ⁡ u H , t J ( x ( x t , u H , t ) , u H , t ) )  s.t.  x ( x 0 , u ) ⊨ φ \begin{aligned} \operatorname{argmin}_{\mathbf{u}^{H, t}} &\left.J\left(\mathbf{x}\left(x_{t}, \mathbf{u}^{H, t}\right), \mathbf{u}^{H, t}\right)\right) \\ & \text { s.t. } \mathbf{x}\left(x_{0}, \mathbf{u}\right) \models \varphi \end{aligned} argminuH,tJ(x(xt,uH,t),uH,t)) s.t. x(x0,u)φ
这里解释一下优化控制的优化函数与MPC的优化函数的主要差别。观察前后两式,唯一不同的就在于输入信号轨迹的长度一个是 N N N而另一个是 H

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值