对于一类具有随机变迭代长度的问题,如功能性电刺激,用户可以提前结束实验过程,论文也是将离散矩阵延迟指数函数引入到状态方程中。

论文中关于迭代长度有三个定义值:\(Z^Ta\) 为最小的实验长度,\(Z^Td\) 为期望实验长度,\(Z^Tk\) 为k次迭代的实验长度。

柯西状态方程如下:

\[\begin{aligned}
x(t+1) &=A x(t)+A_{1} x(t-\sigma)+f(t), \quad t \in \mathbb{Z}_{0}^{\infty} \\
x(t) &=\varphi(t), \quad t \in \mathbb{Z}_{-\sigma}^{0}
\end{aligned}
\]

引入离散矩阵延迟指数函数,状态x(k)的解为:

\[\begin{aligned}
x(t)=& A^{t} e_{\sigma}^{B_{1} t} A^{-\sigma} \varphi(-\sigma)+\sum_{j=-\sigma+1}^{0} A^{(t-j)} e_{\sigma}^{B_{1}(t-\sigma-j)}[\varphi(j)-A \varphi(j-1)] \\
&+\sum_{j=1}^{t} A^{(t-j)} e_{\sigma}^{B_{1}(t-\sigma-j)} f(j-1)
\end{aligned}
\]

随机变迭代实验长度内容部分:

存在两种情况:1. \(T_k>T_d\),2. \(T_a<T_k<T_d\) 。对于第一种情况,只用Td以内的数据用来更新输入信号,对于第二情况只用\(Tk\)之内的数据进行更新。

η_k (t)为伯努利分布,其中值1表示以p(t)的概率运行到t时刻,值0表示以1-p(t)的概率不能运行到时刻t。对于Ta到Td这段时间的概率计算公式如下:

\[p(t)=\left\{\begin{array}{ll}
1, & t \in \mathbb{Z}_{0}^{T_{a}} \\
\sum_{i=t}^{T_{d}} p_{i}, & t \in \mathbb{Z}_{T_{a+1}}^{T_{d}} .
\end{array}\right.
\]

举一个例子通俗地讲一下,上面地内容主要是用在算法收敛性证明的。前6次迭代实验的长度如下图所示,1为上面伯努利分布的1事件,0同理。



把Ta=6作为最小的运行时刻,期望运行时刻为Td=10,第一次迭代的终止时刻为6,把这个事件称之为M6,第六次迭代时,到T=11结束,即运行时刻大于Td,把这种情况同样视为M10。在上面的这张表中,运行到[7,10]的概率如下所示:其中pi为事件Mi发生的概率。那么系统能运行到时刻8的概率p(8)等于大于时刻8事件的概率3/5。

p(t)的概率表达式为:

\[p(t)=\mathbf{P}\left[\bigcup_{i=t}^{10} \mathbf{M}_{i}\right]=\sum_{i=t}^{10} \mathbf{P}\left[\mathbf{M}_{i}\right]=\sum_{i=t}^{10} p_{i}
\]

关于误差的定义

由于存在实际实验长度小于期望长度,所以这部分的误差当作0来计算:

\[\tilde{e}_{k}(t):=\eta_{k}(t) e_{k}(t)=\left\{\begin{array}{ll}
e_{k}(t), & t \in \mathbb{Z}_{0}^{T_{k}} \\
0, & t \in \mathbb{Z}_{T_{k+1}}^{T_{d}}
\end{array}\right.
\]

两种学习控制律

\[u_{k+1}(t)=u_{k}(t)+L_{1} \tilde{e}_{k}(t), \quad t \in \mathbb{Z}_{0}^{T_{d}}
\]
\[u_{k+1}(t)=u_{k}(t)+L_{2} \tilde{e}_{k}(t+1), \quad t \in \mathbb{Z}_{0}^{T_{d}}
\]

对于(9)式要把期望时间间隔设置为0到Td+1。算法的收敛性略(其实是我不会)。

代码见GITHUB

Iterative learning control for linear discrete delay systems via discrete matrix delayed exponential function approach的更多相关文章

  1. A Statistical View of Deep Learning (IV): Recurrent Nets and Dynamical Systems

    A Statistical View of Deep Learning (IV): Recurrent Nets and Dynamical Systems Recurrent neural netw ...

  2. 机器学习---最小二乘线性回归模型的5个基本假设(Machine Learning Least Squares Linear Regression Assumptions)

    在之前的文章<机器学习---线性回归(Machine Learning Linear Regression)>中说到,使用最小二乘回归模型需要满足一些假设条件.但是这些假设条件却往往是人们 ...

  3. CheeseZH: Stanford University: Machine Learning Ex5:Regularized Linear Regression and Bias v.s. Variance

    源码:https://github.com/cheesezhe/Coursera-Machine-Learning-Exercise/tree/master/ex5 Introduction: In ...

  4. Andrew Ng Machine Learning 专题【Linear Regression】

    此文是斯坦福大学,机器学习界 superstar - Andrew Ng 所开设的 Coursera 课程:Machine Learning 的课程笔记. 力求简洁,仅代表本人观点,不足之处希望大家探 ...

  5. 机器学习---用python实现最小二乘线性回归算法并用随机梯度下降法求解 (Machine Learning Least Squares Linear Regression Application SGD)

    在<机器学习---线性回归(Machine Learning Linear Regression)>一文中,我们主要介绍了最小二乘线性回归算法以及简单地介绍了梯度下降法.现在,让我们来实践 ...

  6. 转载 Deep learning:二(linear regression练习)

    前言 本文是多元线性回归的练习,这里练习的是最简单的二元线性回归,参考斯坦福大学的教学网http://openclassroom.stanford.edu/MainFolder/DocumentPag ...

  7. [笔记]机器学习(Machine Learning) - 01.线性回归(Linear Regression)

    线性回归属于回归问题.对于回归问题,解决流程为: 给定数据集中每个样本及其正确答案,选择一个模型函数h(hypothesis,假设),并为h找到适应数据的(未必是全局)最优解,即找出最优解下的h的参数 ...

  8. Machine Learning No.1: Linear regression with one variable

    1. hypothsis 2. cost function: 3. Goal: 4. Gradient descent algorithm repeat until convergence { (fo ...

  9. Machine Learning No.2: Linear Regression with Multiple Variables

    1. notation: n = number of features x(i) = input (features) of ith training example  = value of feat ...

随机推荐

  1. CS229 Lecture 01

    CS229 Lecture notes 01 机器学习课程主要分为4部分:监督学习:学习理论:无监督学习:增强学习. $x^{(i)}$表示特征,$y^{(i)}$表示目标,$i=1...m$.m是训 ...

  2. 通达OA<=11.5版本SQL注入——日程安排

    注入点产生位置

  3. samba 随笔

    SElinux以及防火墙的关闭 关闭SELinux的方法: 修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启. 如果不想重启 ...

  4. docker(1)下载安装for mac

    前言 Docker 提供轻量的虚拟化,你能够从Docker获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器,而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个D ...

  5. 从微信小程序到鸿蒙js开发【05】——tabs组件&每日新闻

    目录: 1.tabs, tab-bar, tab-content 2.tabs的事件处理 3.tabs实现的每日新闻 1.tabs, tab-bar, tab-content 上章说到,鸿蒙的list ...

  6. c++格式化输入输出以及操纵器的使用

    C++格式化输入和输出 1,ios类中定义的格式控制标志 ios类中定义了一个数据成员:格式控制标志字,long x_flags x_flags每一位的状态值用枚举符号常量定义:如下列出常用几个 en ...

  7. Codeforces Round #643 (Div. 2) D. Game With Array (思维,构造)

    题意:给你两个正整数\(N\)和\(S\),构造一个长度为\(N\)并且所有元素和为\(S\)的正整数数组,问是否能找到一个\(K (0\le K \le S)\)使得这个数组的任意_子数组_的和都不 ...

  8. Codeforces Global Round 9 B. Neighbor Grid (构造,贪心)

    题意:给一个\(n\)X\(m\)的矩阵,矩阵中某个数字\(k\)表示其四周恰好有\(k\)个不为0的数字,你可以使任意位置上的数字变大,如果操作后满足条件,输出新矩阵,否则输出NO. 题解:贪心,既 ...

  9. WPF Dispatcher 频繁调度导致的性能问题

    问题 WPF Dispatcher 提供了UI线程之外的线程异步操作(请求)UI变化.一次Invoke/BeginInvoke调用产生一个DispatcherOperation,将挂在调度队列中,按照 ...

  10. TextCNN代码实践

    在上文<TextCNN论文解读>中已经介绍了TextCNN的原理,本文通过tf2.0来做代码实践. 数据集:来自中文任务基准测评的数据集IFLYTEK 导库 import os impor ...