基于Simulink的神经网络
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
便可打开如图3-5所示的控制系统模块库窗口。
图3-5 控制系统模块库窗口
神经网络的控制系统模块库中包含三个控制器和一 个示波器。关于它们的使用方法将在下一节专门介绍。
6
资料仅供参考,不当之处,请联系改正。
3.1.2 模块的生成 在MATLAB工作空间中,利用函数gensim( ),
能够对一个神经网络生成其模块化描述,从而可 在Simulink中对其进行仿真。gensim( ) 函数的调用 格式为:
图3-4 权值模块库窗口
上面的这些模块需要的权值向量必须定义为列向量。 这是因为Simulink中的信号可以为列向量,但是不能 为矩阵或者行向量。
5
资料仅供参考,不当之处,请联系改正。
4. 控制系统模块库(Control Systems) 用鼠标的左键双击Control Systems模块库的图标,
10
资料仅供参考,不当之处,请联系改正。
在系统辨识阶段,主要任务是对需要控制的系统建 立神经网络模型;在控制设计阶段,主要使用神经网 络模型来设计(训练)控制器。在本节将要介绍的三 种控制网络结构中,系统辨识阶段是相同的,而控制 设计阶段则各不相同。
对于模型预测控制,系统模型用于预测系统未来的 行为,并且找到最优的算法,用于选择控制输入,以 优化未来的性能。 对于NARMA-L2(反馈线性化)控制,控制器仅仅 是将系统模型进行重整。
设计一个线性网络,并生成其模块化描述。
定义网络的输入为:X=[1 2 3 4 5],相应的目标为:
T=[1 3 5 7 9]。
解 实现以上任务的MATLAB命令为:
Ex3_1
结果显示: y=
13579 可以看出,网络已经正确地解决了问题。 >>gensim(net,-1)
8
资料仅供参考,不当之处,请联系改正。
图3-3 网络输入模块库窗口
4
资料仅供参考,不当之处,请联系改正。
3. 权值模块库(Weight Functions) 用鼠标的左键双击Weight Functions模块库的图标,
便可打开如图3-4所示的权值模块库窗口。权值模块库 中的每个模块都以一个神经元权值向量作为输入,并 将其与一个输入向量(或者是某一层的输出向量)进 行运算,得到神经元的加权输入值。
资料仅供参考,不当之处,请联系改正。
3.1 基于Simulink的神经网络模块 神经网络工具箱中提供了一套可在Simulink
中用来建立神经网络的模块,对于在MATLAB工 作空间中建立的网络,也能够使用函数gensim( ) 生成一个相应的Simulink 网络模块。
1
资料仅供参考,不当之处,请联系改正。
12
资料仅供参考,不当之处,请联系改正。
1) 系统辨识 模型预测的第一步就是训练神经网络未来表示网络
的动态机制。模型输出与神经网络输出之间的预测误 差,用来作为神经网络的训练信号,该过程用图3-11 来表示。
2
资料仅供参考,不当之处,请联系改正。
1. 传输函数模块库(Transfer Functions) 用鼠标的左键双击Transfer Functions模块库的
图标,便可打开如图3-2所示的传输函数模块库窗 口。传输函数模块库中的任意一个模块都能够接受 一个网络输入向量,并且相应地产生一个输出向量, 这个输出向量的组数和输入向量相同。
gensim(net,st ) 其中 第一个参数指定了MATLAB工作空间中需要 生成模块化描述的网络,第二个参数指定了采样 时间,它通常情况下为一正数。如果网络没有与 输入权值或者层中权值相关的延迟,则指定第二 个参数为-1,那么函数gensim( )将生成一个连续采 样的网络。
7
例3-1
资料仅供参考,不当之处,请联系改正。
对于模型参考控制,控制器是一个神经网络,它被 训练以用于控制系统,使得系统跟踪一个参考模型, 这个神经网络系统模型在控制器训练中起辅助作用。
11
资料仅供参考,不当之处,请联系改正。
3.2.1 神经网络模型预测控制 1. 模型预测控制理论
神经网络预测控制器是使用非线性神经网络模 型来预测未来模型性能。控制器计算控制输入, 而控制输入在未来一段指定的时间内将最优化模 型性能。模型预测第一步是要建立神经网络模型 (系统辨识);第二步,使用控制器来预测未来 神经网络性能。
图3-2 传输函数模块库窗口
3
资料仅供参考,不当之处,请联系改正。
2. 网络输入模块库(Net Input Functions) 用鼠标的左键双击Net Input Functions模块库的图标,
便可打开如图3-3所示的网络输入模块库窗口。 网络输入模块库中的每一个模块都能够接受任意数
目的加权输入向量、加权的层输出向量,以及偏值向 量,并且返回一个网络输入向量。
3.2 基于Simulink的神经网络控制系统 神经网络在系统辨识和动态系统控制中已经
得到了非常成功的使用。由于神经网络具有全局逼 近能力,使得其在对非线性系统建模和对一般情况 下的非线性控制器的实现等方而应用的比较普遍。 本节将介绍三种在神经网络工具箱的控制系统模块 (Control Systems)中利用Simulink实现的比较普遍的 神经网络结构,它们常用于预测和控制,并已ຫໍສະໝຸດ Baidu MATLAB对应的神经网络工具箱中给出了实现。
9
资料仅供参考,不当之处,请联系改正。
这三种神经网络结构分别是: .神经网络模型预测控制(NN Predictive Controller) .反馈线性化控制(NARMA-L2 Controller) .模型参考控制(Model Reference Controller)
使用神经网络进行控制时,通常有两个步骤:系统 辨识和控制设计。
3.1.1 模块的设置 在 Simulink 库 浏 览 窗 口 的 Neural Network
Blockset节点上,通过单击鼠标右键后,便可打开如 图3-1所示的Neural Network Blockset模块集窗口。
图3-1 Neural Network Blockset模块集
在Neural Network Blockset模块集中包含了四个 模块库,用鼠标的左键双击各个模块库的图标,便可 打开相应的模块库。
图3-5 控制系统模块库窗口
神经网络的控制系统模块库中包含三个控制器和一 个示波器。关于它们的使用方法将在下一节专门介绍。
6
资料仅供参考,不当之处,请联系改正。
3.1.2 模块的生成 在MATLAB工作空间中,利用函数gensim( ),
能够对一个神经网络生成其模块化描述,从而可 在Simulink中对其进行仿真。gensim( ) 函数的调用 格式为:
图3-4 权值模块库窗口
上面的这些模块需要的权值向量必须定义为列向量。 这是因为Simulink中的信号可以为列向量,但是不能 为矩阵或者行向量。
5
资料仅供参考,不当之处,请联系改正。
4. 控制系统模块库(Control Systems) 用鼠标的左键双击Control Systems模块库的图标,
10
资料仅供参考,不当之处,请联系改正。
在系统辨识阶段,主要任务是对需要控制的系统建 立神经网络模型;在控制设计阶段,主要使用神经网 络模型来设计(训练)控制器。在本节将要介绍的三 种控制网络结构中,系统辨识阶段是相同的,而控制 设计阶段则各不相同。
对于模型预测控制,系统模型用于预测系统未来的 行为,并且找到最优的算法,用于选择控制输入,以 优化未来的性能。 对于NARMA-L2(反馈线性化)控制,控制器仅仅 是将系统模型进行重整。
设计一个线性网络,并生成其模块化描述。
定义网络的输入为:X=[1 2 3 4 5],相应的目标为:
T=[1 3 5 7 9]。
解 实现以上任务的MATLAB命令为:
Ex3_1
结果显示: y=
13579 可以看出,网络已经正确地解决了问题。 >>gensim(net,-1)
8
资料仅供参考,不当之处,请联系改正。
图3-3 网络输入模块库窗口
4
资料仅供参考,不当之处,请联系改正。
3. 权值模块库(Weight Functions) 用鼠标的左键双击Weight Functions模块库的图标,
便可打开如图3-4所示的权值模块库窗口。权值模块库 中的每个模块都以一个神经元权值向量作为输入,并 将其与一个输入向量(或者是某一层的输出向量)进 行运算,得到神经元的加权输入值。
资料仅供参考,不当之处,请联系改正。
3.1 基于Simulink的神经网络模块 神经网络工具箱中提供了一套可在Simulink
中用来建立神经网络的模块,对于在MATLAB工 作空间中建立的网络,也能够使用函数gensim( ) 生成一个相应的Simulink 网络模块。
1
资料仅供参考,不当之处,请联系改正。
12
资料仅供参考,不当之处,请联系改正。
1) 系统辨识 模型预测的第一步就是训练神经网络未来表示网络
的动态机制。模型输出与神经网络输出之间的预测误 差,用来作为神经网络的训练信号,该过程用图3-11 来表示。
2
资料仅供参考,不当之处,请联系改正。
1. 传输函数模块库(Transfer Functions) 用鼠标的左键双击Transfer Functions模块库的
图标,便可打开如图3-2所示的传输函数模块库窗 口。传输函数模块库中的任意一个模块都能够接受 一个网络输入向量,并且相应地产生一个输出向量, 这个输出向量的组数和输入向量相同。
gensim(net,st ) 其中 第一个参数指定了MATLAB工作空间中需要 生成模块化描述的网络,第二个参数指定了采样 时间,它通常情况下为一正数。如果网络没有与 输入权值或者层中权值相关的延迟,则指定第二 个参数为-1,那么函数gensim( )将生成一个连续采 样的网络。
7
例3-1
资料仅供参考,不当之处,请联系改正。
对于模型参考控制,控制器是一个神经网络,它被 训练以用于控制系统,使得系统跟踪一个参考模型, 这个神经网络系统模型在控制器训练中起辅助作用。
11
资料仅供参考,不当之处,请联系改正。
3.2.1 神经网络模型预测控制 1. 模型预测控制理论
神经网络预测控制器是使用非线性神经网络模 型来预测未来模型性能。控制器计算控制输入, 而控制输入在未来一段指定的时间内将最优化模 型性能。模型预测第一步是要建立神经网络模型 (系统辨识);第二步,使用控制器来预测未来 神经网络性能。
图3-2 传输函数模块库窗口
3
资料仅供参考,不当之处,请联系改正。
2. 网络输入模块库(Net Input Functions) 用鼠标的左键双击Net Input Functions模块库的图标,
便可打开如图3-3所示的网络输入模块库窗口。 网络输入模块库中的每一个模块都能够接受任意数
目的加权输入向量、加权的层输出向量,以及偏值向 量,并且返回一个网络输入向量。
3.2 基于Simulink的神经网络控制系统 神经网络在系统辨识和动态系统控制中已经
得到了非常成功的使用。由于神经网络具有全局逼 近能力,使得其在对非线性系统建模和对一般情况 下的非线性控制器的实现等方而应用的比较普遍。 本节将介绍三种在神经网络工具箱的控制系统模块 (Control Systems)中利用Simulink实现的比较普遍的 神经网络结构,它们常用于预测和控制,并已ຫໍສະໝຸດ Baidu MATLAB对应的神经网络工具箱中给出了实现。
9
资料仅供参考,不当之处,请联系改正。
这三种神经网络结构分别是: .神经网络模型预测控制(NN Predictive Controller) .反馈线性化控制(NARMA-L2 Controller) .模型参考控制(Model Reference Controller)
使用神经网络进行控制时,通常有两个步骤:系统 辨识和控制设计。
3.1.1 模块的设置 在 Simulink 库 浏 览 窗 口 的 Neural Network
Blockset节点上,通过单击鼠标右键后,便可打开如 图3-1所示的Neural Network Blockset模块集窗口。
图3-1 Neural Network Blockset模块集
在Neural Network Blockset模块集中包含了四个 模块库,用鼠标的左键双击各个模块库的图标,便可 打开相应的模块库。