您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 智能控制理论与技术试题
武汉理工大学课程名称:智能控制理论与技术一、简答题(40分,每小题10分)1.智能控制由哪几部分组成?各自的作用是什么?答:智能控制系统一般由五部分组成:广义对象、感知信息处理、认知部分、规划和控制部分、常规控制器及执行器。其作用如下:不完全任务描述任务协调混合知识表示感知信息处理规划/控制常规控制过程认知各种传感器执行器广义对象广义对象:通常意义下的控制对象和所处的环境。感知信息处理:将传感器得到的原始信息加以处理,并与内部环境模型产生的期望信息进行比较,完成信息的获取、辨识、整理及更新的功能。认知部分:主要用来接收和存储信息、知识、经验和数据,并对他们进行分析、推理做出行动的决策,送至规划和控制部分。规划和控制部分:是整个系统的核心,它根据给定的任务要求,反馈信息以及经验知识,进行信息自动搜索、推理决策、动作规划,最终产生具体的控制作用。常规控制器及执行器:作用于控制对象。2.智能控制和传统控制差异是什么?答:在应用领域方面,传统控制着重解决不太复杂的过程控制和大系统的控制问题;而智能控制主要解决高度非线性、不确定性和复杂系统控制问题。在理论方法上,传统控制理论通常采用定量方法进行处理,而智能控制系统大多采用符号加工的方法;传统控制通常捕获精确知识来满足控制指标,而智能控制通常是学习积累非精确知识;传统控制通常是用数学模型来描述系统,而智能控制系统则是通过经验、规则用符号来描述系统。在性能指标方面,传统控制有着严格的性能指标要求,智能控制没有统一的性能指标,而主要关注其目的和行为是否达到。但是,智能控制与传统的或常规的控制有密切的关系,互相取长补短,而并非互相排斥。基于智能控制与传统控制在应用领域方面、理论方法上和性能指标等方面的差异,往往将常规控制包含在智能控制之中,智能控制也利用常规控制的方法来解决“低级”的控制问题,力图扩充常规控制方法并建立一系列新的理论与方法来解决更具有挑战性的复杂控制问题。控制方案传统控制智能控制控制过程较精确的模型,固定的控制算法仿人智能控制决策控制模型模型框架控制理论的方法和人工智能的灵活框架结合起来控制性能缺乏灵活性和应变能力改变控制策略去适应对象的复杂性和不确定性控制对象线性、时不变,简单系统复杂,包括不确定性的控制过程3.人工神经元网络的拓扑结构主要有哪几种?答:人工神经网络从拓扑结构上来说,主要分为层状和网状结构。①层状结构。网络由若干层组成,每层中有一定数量的神经元,相邻层中神经元单向联接,一般同层内神经元不能联接。前向网络:只有前后相邻两层之间神经元相互联接,各神经元之间没有反馈。每个神经元从前一层接收输入,发送输出给下一层。②网状结构:网络中任何两个神经元之间都可能双向联接。反馈网络:从输出层到输入层有反馈,每一个神经元同时接收外来输入和来自其它神经元的反馈输入,其中包括神经元输出信号引回自身输入的自环反馈。混合型网络:前向网络的同一层神经元之间有互联的网络。4.设计智能控制系统的主要步骤有哪些;答:1.建立被控系统的模型;2.如果需要,可以简化模型;3.分析模型,确定其性质;4.确定性能指标;5.确定所采用的控制器类型;6.如果可能,设计控制器满足性能指标;不能的话,修改性能指标或者拓宽控制器的类型。二、计算题(10分)设论域12345{,,,,}Uuuuuu,且123450.20.40.910.5Auuuuu13450.10.710.3Buuuu试求,,CABABA(补集),CB(补集)答:𝐴⋃𝐵=0.2𝑢1+0.4𝑢2+0.9𝑢3+1𝑢4+0.5𝑢5𝐴⋂𝐵=0.1𝑢1+0.7𝑢3+1𝑢4+0.3𝑢5𝐴𝐶=0.8𝑢1+0.6𝑢2+0.1𝑢3+0.5𝑢5𝐵𝐶=0.9𝑢1+1𝑢2+0.3𝑢3+0.7𝑢5三、作图题(10分)1.画出以下应用场合下适当的隶属函数:(a)我们绝对相信4附近的e(t)是“正小”,只有当e(t)足够远离4时,我们才失去e(t)是“正小”的信心;(b)我们相信2附近的e(t)是“正大”,而对于远离2的e(t)我们很快失去信心;(c)随着e(t)从4向左移动,我们很快失去信心,而随着e(t)从4向右移动,我们较慢失去信心。答:(a)假设偏离𝜋4±𝜋4算足够远离,选择钟形隶属度函数,参数设为:gbellmf(x,[21.50.785]),图像如图3.1所示。图3.1钟形隶属度函数曲线(b)假设“很快失去信心”表示偏离𝜋2±𝜋4处隶属度降为零,选择三角形隶属度函数,参数设为trimf(x,[0.785,1.570,2.356]),图像如图3.2所示。图3.2三角形隶属度函数曲线(C)假设“很快失去信心”表示偏离𝜋4±𝜋4处隶属度降为零,“较慢失去信心”表示偏离𝜋4±3𝜋4处隶属度降为零,选择三角形隶属度函数,参数设置为trimf(x,[0,0.785,3.141]),图像如图3.3所示。图3.3三角形隶属度函数曲线2.画出以下两种情况的隶属函数:(a)精确集合{}82Axx的隶属函数;(b)写出单一模糊(singletonfuzzification)隶属函数的数学表达形式,并画出隶属函数图。答:(a)选取梯形隶属度函数,参数设置为trapmf(x,[pi/8,pi/8,pi/2,pi/2]),曲线如图3.4所示。图3.4梯形隶属度函数曲线(b)单一模糊的数学表达式如下:𝜇𝐴(𝑥)={1,𝑥=𝑥00,𝑂𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒隶属度函数图像如图3.5所示:图3.5单一模糊隶属度函数曲线四、利用静态多层前向人工神经网络(BP网络)(40分)1.实现))102sin(5.0314cos(5.1y6xx2.结合1研究变学习因子算法对网络收敛性能的影响4.1函数逼近此时BP神经网络用作逼近器,可以取图4.1所示的结构。图中k为网络的迭代次数,u(k)为逼近器的输入,y(k)为实际输出,𝑦𝑛(𝑘)为BP网络的输出。误差信号作为网络的调整信号。对象BPu(k)y(k)yn(k)+-图4.1BP神经网络逼近4.1.1BP网络的学习算法BP算法的学习过程由前向传播和反向传播组成。①前向传播:计算网络的输出隐层神经元的输入为:𝑥𝑗=𝑤𝑖𝑗𝑥采用S形激发函数,隐层神经元的输出为:𝑥𝑗′=𝑓(𝑥𝑗)=11+𝑒−𝑥𝑗则𝜕𝑥𝑗′𝜕𝑥𝑗=𝑥𝑗′(1−𝑥𝑗′)输出层神经元的输出为(输出层采用线性激发函数)𝑦𝑛(𝑘)=∑𝑤𝑘𝑜𝑥𝑗′𝑗误差信号为:𝑒(𝑘)=𝑦(𝑘)−𝑦𝑛(𝑘)误差性能指标函数为:𝐸=12𝑒(𝑘)2②反向传播:采用𝛿学习算法,并引入动量项,调整各层权系数输出层及隐层的连接权系数𝑤jk学习算法为:Δwjk=−𝜂𝜕𝐸𝜕𝑤jk=−𝜂·𝑒(𝑘)·𝜕𝑦𝑛𝜕𝑤jk=𝜂·𝑒(𝑘)·𝑥𝑗′式中𝜂为学习速率,𝜂0。𝑘+1时刻网络的权值为:𝑤jk(𝑘+1)=𝑤jk(𝑘)+Δwjk+𝛼(𝑤jk(𝑘)−𝑤jk(𝑘−1))式中𝛼为动量因子,𝛼∈[0,1]。隐层及输入层连接权值学习算法为:Δwij=−𝜂𝜕𝐸𝜕𝑤ij=𝜂·𝑒(𝑘)·𝜕𝑦𝑛𝜕𝑤ij式中𝜕𝑦𝑛𝜕𝑤ij=𝜕𝑦𝑛𝜕𝑥𝑗′·𝜕𝑥𝑗′𝜕𝑥𝑗·𝜕𝑥𝑗𝜕𝑤ij=𝑤ko·𝑥𝑗′(1−𝑥𝑗′)·𝑥𝑘+1时刻网络的权值为:𝑤ij(𝑘+1)=𝑤ij(𝑘)+Δwij(𝑘)+𝛼(𝑤ij(𝑘)−𝑤ij(𝑘−1))BP神经网络算法的计算流程如图4.2所示,MATLAB代码参见附录。开始初始化权值、输入训练样本前向计算各层的输入输出计算输出层误差反向依次调整各层的连接权系数训练完毕?结束是否图4.2BP神经网络计算流程选择的BP网络逼近器结构为1-10-1,如图4.3所示,含有一个隐层,其中有10个神经元。xyjwijWjkxjXj图4.3用于逼近的BP网络(1-10-1)程序中各参数设置如下:学习速率net.lr=0.1;动量因子net.mc=0.8;隐层神经元个数net.nHidden=10;训练样本数trainNum=1e4;最大训练代数net.epochs=1e2;期望训练误差net.goal=1e−4;程序运行结果如图4.4和4.5所示。图4.4神经网络训练结果图4.5神经网络训练误差变化曲线从上图中可以看出,BP网络的输出曲线和理想输出曲线基本重合,训练误差在第二代就已经达到目标要求。但是对网络进行测试的结果却非常不尽人意,测试数据仍然选用训练网络时的输入数据,结果如图4.6所示。图4.6网络测试结果从上图可以看出,网络输出特性十分糟糕。BP网络实现非线性函数逼近要达到的效果我想是这样的:对于已训练好的网络,各连接关系的权值已经调整到最优,对给定的输入便会产生期望的输出,而不需要再去调整权值了。按这样的理解,上述输出结果很差的原因可能有:1.网络结构不合适。只要有足够多的隐层和隐层节点,BP网络可以逼近任意的非线性映射关系[1]。此处网络结构为1-10-1,较为简单,而要逼近的函数非线性程度较为严重,选择更为复杂的网络也许可以改善测试结果。经测试如果要逼近的是正弦函数的话,能得到一个比较好的测试结果,如图4.7所示。图4.7正弦函数的测试结果(前3秒为测试数据)2.学习算法还有待改进,BP网络的学习算法为最速梯度下降法,这里引入了动量项加以改进。可以改进的措施还有:1)变尺度法,它采用的是二阶梯度法,相较于一阶梯度法收敛要快,因而可以选择更小的误差进行训练;2)变步长法,这种方法的学习速率在训练过程中可以自适应地调整,以比较合适的学习速率逼近目标,也可以加快算法收敛速度。4.1.2使用MATLAB的神经网络工具箱如果使用MATLAB神经网络工具箱逼近所需的非线性函数,可以输入以下代码:clear;rng('default');rng(0);%%%%%%%%%%%%%%%%%%Datatobetrained%%%%%%%%%%%%%%%%%%%%%%%%%%%%trainNum=1e4;input=linspace(0,0.04,trainNum);targets=1.5*cos(314*input+0.5*sin(2*pi*1e6*input));%%%%%%%%%%%%%%%%%%Setnetparameters%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%hiddenLayers=10;net=fitnet(hiddenLayers);[net,tr]=train(net,input,targets);figure;plotperform(tr);%%%%%%%%%%%%%%%%%%%%%%%%Testnetwork%%%%%%%%%%%%%%%%%%%%%%%%%%%%%testIn=linspace(0,0.08,trainNum);testTargets=1.5*cos(314*testIn+0.5*sin(2*pi*1e6*testIn));testOut=sim(net,testIn);figure;plot(testIn,testTargets,testIn,testOut);所采用的网络结构如图4.8所示。图4.8MATLAB默认的网络结构网络结构为1-10-1,每个神经元还有一个基权值b,学习算法为Levenberg-Marquardt算法,可以得到如下结果:图4.9网络训练误差变化曲线图4.10网络测试结果(前0.04秒为训练数据)可以看出在第15代算法收敛,对于训练过的数据,网络能给出很好的输出结果。4.2学习率对网络收敛性能的影响学习速率对网络收敛性能的影响体现为:学习率越小,收敛越慢;学习率越大,收敛越快,但是有可能导致振荡甚至发散[1]。对于手写代码,选择学习速率为0.1,精度为1e-4时,
本文标题:智能控制理论与技术试题
链接地址:https://www.777doc.com/doc-2315611 .html