当前位置:文档之家› MATLABANN工具箱实用指南

MATLABANN工具箱实用指南

MATLABANN工具箱实用指南
MATLABANN工具箱实用指南

Matlab的神经网络工具箱实用指南

文章摘要:第一章是神经网络的基本介绍,第二章包括了由工具箱指定的有关网络结构和符号的基本材料以及建立神经网络的一些基本函数,例如new、init、adapt和train。第三章以反向传播网络为例讲解了反向传播网络的原理和应用的基本过程。

第一章介绍

1.神经网络

神经网络是单个并行处理元素的集合,我们从生物学神经系统得到启发。在自然界,网络功能主要由神经节决定,我们可以通过改变连接点的权重来训练神经网络完成特定的功能。

一般的神经网络都是可调节的,或者说可训练的,这样一个特定的输入便可得到要求的输出。如下图所示。这里,网络根据输出和目标的比较而调整,直到网络输出和目标匹配。作为典型,许多输入/目标对应的方法已被用在有监督模式中来训练神经网络。

神经网络已经在各个领域中应用,以实现各种复杂的功能。这些领域包括:模式识别、鉴定、分类、语音、翻译和控制系统。

如今神经网络能够用来解决常规计算机和人难以解决的问题。我们主要通过这个工具箱来建立示范的神经网络系统,并应用到工程、金融和其他实际项目中去。

一般普遍使用有监督训练方法,但是也能够通过无监督的训练方法或者直接设计得到其他的神经网络。无监督网络可以被应用在数据组的辨别上。一些线形网络和Hopfield网络是直接设计的。总的来说,有各种各样的设计和学习方法来增强用户的选择。

神经网络领域已经有50年的历史了,但是实际的应用却是在最近15年里,如今神经网络仍快速发展着。因此,它显然不同与控制系统和最优化系统领域,它们的术语、数学理论和设计过程都已牢固的建立和应用了好多年。我们没有把神经网络工具箱仅看作一个能正常运行的建好的处理轮廓。我们宁愿希望它能成为一个有用的工业、教育和研究工具,一个能够帮助用户找到什么能够做什么不能做的工具,一个能够帮助发展和拓宽神经网络领域的工具。因为这个领域和它的材料是如此新,这个工具箱将给我们解释处理过程,讲述怎样运用它们,并且举例说明它们的成功和失败。我们相信要成功和满意的使用这个工具箱,对范例

和它们的应用的理解是很重要的,并且如果没有这些说明那么用户的埋怨和质询就会把我们淹没。所以如果我们包括了大量的说明性材料,请保持耐心。我们希望这些材料能对你有帮助。

这个章节在开始使用神经网络工具箱时包括了一些注释,它也描述了新的图形用户接口和新的运算法则和体系结构,并且它解释了工具箱为了使用模块化网络对象描述而增强的机动性。最后这一章给出了一个神经网络实际应用的列表并增加了一个新的文本--神经网络设计。这本书介绍了神经网络的理论和它们的设计和应用,并给出了相当可观的MATLAB和神经网络工具箱的使用。

2.准备工作

基本章节

第一章是神经网络的基本介绍,第二章包括了由工具箱指定的有关网络结构和符号的基本材料以及建立神经网络的一些基本函数,例如new、init、adapt和train。第三章以反向传播网络为例讲解了反向传播网络的原理和应用的基本过程。

帮助和安装

神经网络工具箱包含在nnet目录中,键入help nnet可得到帮助主题。

工具箱包含了许多示例。每一个例子讲述了一个问题,展示了用来解决问题的网络并给出了最后的结果。显示向导要讨论的神经网络例子和应用代码可以通过键入help nndemos 找到。

安装神经网络工具箱的指令可以在下列两份MATLAB文档中找到:the Installation Guide for MS-Windows and Macintosh或者the Installation Guide for UNIX。

第二章神经元模型和网络结构

1.符号

数学符号

下面给出等式和数字中用到的基本符号:

标量--小写的斜体字.....a,b,c

向量--小写加粗的非斜体字.....a,b,c

矩阵-大写加粗的非斜体字.....A,B,C

向量表示一组数字

数学符号和字符的等价

从数学符号到字符的转换或者反过来可以遵循一些规则,为了便于今后引用我们将这些规则列出。为了从数学符号变为MATLAB符号用户需要:

变上标为细胞数组标号

例如

变下标为圆括号标号

例如和

变圆括号标号为二维数组标号

例如

变数学运算符为MATLAB运算符和工具箱函数

例如

2.神经元模型

单神经元

下图所示为一个单标量输入且无偏置的神经元。

这个输入标量通过乘以权重为标量w的连结点得到结果wp,这仍是一个标量。这里,加权的输入wp仅仅是转移函数f的参数,函数的输入是标量a。右边的神经元有一个标量偏置b,你既可以认为它仅仅是通过求和节点加在结果wp上,也可以认为它把函数f左移了b个单位,偏置除了有一个固定不变的输入值1以外,其他的很像权重。标量n是加权输入wp和偏置b的和,它作为转移函数f的参数。函数f是转移函数,它可以为阶跃函数或者曲线函数,它接收参数n给出输出a,下一节将给出各种不同的转移函数。注意神经元中的w和b 都是可调整的标量参数。神经网络的中心思想就是参数的可调整使得网络展示需要和令人感兴趣的行为。这样,我们就可以通过调整权重和偏置参量训练神经网络做一定的工作。或者神经网络自己调整参数以得到想要的结果。

在这个工具箱里所有的神经元都提供偏置,我们的许多例子中都用到了偏置并且假定它在这个工具箱的大多数情况下都要用到。可是,如果你愿意的话,你也可以在一个神经元中省略偏置。

正如上面所提到的,在神经元中,标量b是个可调整的参数。它不是一个输入。可是驱动偏置的常量1却是一个输入而且当考虑线性输入向量时一定要这样认为。

转移函数

在这个工具箱里包括了许多转移函数。你能在"Transfer Function Graphs"中找到它们的完全列表。下面列出了三个最常用的函数。

上图所示的阶跃转移函数限制了输出,使得输入参数小于0时输出为0,大于或等于0时输出为1,在第三章中我们将用它来进行分类。

工具箱中有一个函数hardlim来数学上的阶跃,如上图所示。我们可以输入以下代码n=-5:0.1:5;

plot(n,hardlim(n),'c+:');

它产生一张在-5到5之间的阶跃函数图。

所有在工具箱中的数学转移函数都能够用同名的函数实现。

线性转移函数如下图所示

这种类型的神经元将在第四章的自适应线性滤波中用作线性拟合。

下图显示的曲线转移函数的输入参数是正负区间的任意值,而将输出值限定于0到1之间。

这种传递函数通常用于反向传播(BP)网络,这得益于函数的可微性。

在上面所示的每一个转移函数图的右边方框中的符号代表了对应的函数,这些图表将替换网络图的方框中的f来表示所使用的特定的转移函数。

第13章列出了所有的转移函数和图标。你能够定义自己的传递函数,你可以不限于使用第13章所列的转移函数。你能够通过运行示例程序nn2n1来试验一个神经元和各种转移函数。

带向量输入的神经元

一个有R个元素输入向量的神经元如下图所示。这里单个输入元素

乘上权重

得到加权值输入求和节点。它们的和是Wp,单行矩阵W和向量p的点乘。

这个神经元有一个偏置b,它加在加权的输入上得到网络输入n,和值n是转移函数f 的参数。表达式自然可用MATLAB代码表示为:n=W*p+b

可是,用户很少要写如此底层的代码,因为这些代码已经被建立到函数中来定义和模拟整个网络。上面所示的图包括了许多细节。当我们考虑有许多神经元和可能是许多神经元组成的多层网络时,我们可能会漏掉许多细节。因此,作者设计了一个简洁的符号代表单个神经元。这个符号如下图中所示,它将会在以后的多重神经元电路中用到。

这里输入向量p用左边的黑色实心竖条代表,p的维数写在符号p下面,在图中是Rx1。(注意我们用的是大写字母,正如在以前句子里R用来表示向量大小时一样。)因此,p是一个有R个输入元素的向量。这个输入列向量乘上R列单行矩阵W。和以前一样,常量1作为一个输入乘上偏置标量b,给转移函数的网络输入是n,它是偏置与乘积Wp的和。这个和值传给转移函数f得到网络输出a,在这个例子中它是一个标量。注意如果我们有超过一个神经元,网络输出就有可能是一个向量。

上面图中定义了神经网络的一层。一层包括权重的组合,乘法和加法操作(这里就是向量乘积Wp),偏置b和转移函数f。输入数组,即向量p不包括在一层中。

这个简洁的网络符号每一次都会被用到,向量的大小会显示在矩阵变量名字的下面。我们希望这个符号会让你理解神经网络的结构以及与之相关的矩阵数学。

正如前面所讨论的,当特定的转移函数在一张图中被使用时,转移函数将用上面所示的符号代替。下面是几个例子:

你可以通过运行示例程序nnd2n2来试验有2个元素的神经元。

3.网络结构

两个或更多的上面所示的神经元可以组合成一层,一个典型的网络可包括一层或者多层。我们首先来研究神经元层。

单层神经元网络

有R输入元素和S个神经元组成的单层网络如下图所示:

在一个单层网络中,输入向量p的每一个元素都通过权重矩阵W和每一个神经元连接起来。第I个神经元通过把所有加权的输入和偏置加起来得到它自己的标量输出n(i)。不同的n(i)合起来形成了有S个元素的网络输入向量n。最后,网络层输出一个列向量a,我们在图的底部显示了a的表达式。

注意输入元素个数R和神经元个数S通常是不等的,我们也并不需要这两者相等。你也可以建立一个简单的复合神经元层,它将上面所示的网络并行的合在一起,使用不同的转移函数。所有的网络都有相同的输入,而每一个网络都会产生输出。

输入向量元素经加权矩阵W作用输入网络。

W=

注意加权矩阵W的行标标记权重的目的神经元,列标标记待加权的输入标号。因此,的

标号表示从输入信号的第二个元素到第一个神经元的权重是。有S个神经元和R个输入元素的神经网络也能够简化成以下符号:

这里,p是一个有R个元素的输入向量,W是一个SxR的矩阵,a和b是有S个元素的向量。如前面所定义的,神经元层包括权重矩阵,乘法运算,偏置向量b,求和符和转移函数框。

输入和层

我们将要讨论多层网络,所以我们需要拓展我们的符号来描述这样的网络。特别是我们要弄清连接输入的权重矩阵和连接层的权重矩阵之间的区别。我们也要分清权重矩阵的目的和源。

我们将把连接输入的权重矩阵成为输入权重,把来自层输出的权重矩阵称为层矩阵。进一步说,我们在各个权重和其他网络元素中将用上标区分源(第二个标号)和目的(第一个标号)。作为示例,我们用简化的形式重画了上面所画的单层多输入网络。

你可以看到,我们把连接输入向量p的权重矩阵标记为输入权重矩阵(IW1,1),第二个标号1是源,第二个标号1是目的。同样,第一层的元素,比如偏置、网络输入和输出都有上标1来表示它们属于第一层。

在下一章节,我们将用LW表示层权重矩阵,用IW表示输入权重矩阵。

你可以复习以下这一章开始的符号那一节,它把特定的网络net中用数学符号表示的层权重矩阵转换成代码,如下所示:

IW1,1net.IW{1,1}

这样,你就可以写代码来得到对转移函数的网络输入了:

n{1}=net.IW{1,1}*p+net.b{1}

多层神经元网络

一个网络可以有几层,每一层都有权重矩阵W,偏置向量b和输出向量a。为了区分这些权重矩阵、输出矩阵等等,在图中的每一层,我们都为感兴趣的变量以上标的形式增加了层数。你能够看到在下面所示的三层网络图和等式中使用层符号。

上面所示的网络有R1个输入,第一层有S1个神经元,第二层有S2个神经元,以次类推。一般不同层有不同数量的神经元。每一个神经元的偏置输入是常量1。

注意中间层的输出就是下一层的输入。第二层可看作有S1个输入,S2个神经元和S1xS2阶权重矩阵W2的单层网络。第二层的输入是a1,输出是a2,现在我们已经确定了第二层的所有向量和矩阵,我们就能把它看成一个单层网络了。其他层也可以照此步骤处理。

多层网络中的层扮演着不同的角色。给出网络输出的层叫做输出层。所有其他的层叫做隐层。上图所示的三层网络有一个输出层(第三层)和两个隐层(第一和第二层)。有些作者把输入作为第四层,这里不用这种指定。

上面所示的三层网络的简洁画法如下图所示:

多层网络的功能非常强大。举个例子,一个两层的网络,第一层的转移函数是曲线函数,第二层的转移函数是线性函数,通过训练,它能够很好的模拟任何有有限断点的函数。这种两层网络集中应用于"反向传播网络"。

注意我们把第三层的输出a3标记为y。我们将使用这种符号来定义这种网络的输出。

4.数据结构

这一节将讨论影响网络仿真的输入数据结构的格式。我们首先讨论静态网络,在讨论动态网络。

我们将关心两种基本的输入向量类型:同步(同时或者无时序)向量和异步向量。对异步向量来说,向量的顺序是非常重要的。对同步向量来说,顺序是不重要的,并且如果我们已经有一定数量的并行网络我们就能把一个输入向量输入到其中的任意网络。

静态网络中的同步输入仿真

仿真静态网络(没有反馈或者延迟)是网络仿真最简单的一种。在这种情况中,我们不需要关心向量输入的时间顺序,所以我们可以认为它是同时发生的。另外,为了是问题更简单,我们假定开始网络仅有一个输入向量。我们用下面的网络作为例子。

为了建立这个网络我们可以用以下命令:

net=newlin([-11;-11],1);

简单起见我们假定权重矩阵和偏置为

W=[1,2],b=[0]

其命令行是:

net.IW{1,1}=[12];

net.b{1}=0;

假定模拟的网络有四个无序向量,即Q=4:

这些同步向量可以用一个矩阵来表示:

P=[1223;2131];

现在我们就可以模拟这个网络了:

A=sim(net,P)

A=

5485

我们向网络输入一个简单的同步向量矩阵,得到了一个简单的同步向量输出矩阵。结果不论是由一个网络串行输出还是由四个网络并行输出得到的都是一样的。由于输入并无关联,输入向量的顺序并不重要。

动态网络中的异步输入仿真

当网络中存在延迟时,顺序发生的输入向量就要按一定的序列输入网络。为了演示这种情况,我们用了一个有延迟的简单网络。

为了建立这个网络我们可以用以下命令:

net=newlin([-11],1,[01]);

net.biasConnect=0;

假定权重矩阵为:

W=[1,2]

命令行为:

net.IW{1,1}=[12];

假定输入顺序为:

p(1)=[1],p(2)=[2],p(3)=[3],p(4)=[4]

输入序列可以用一个细胞数组来表示:

P={1234};

这样我们就能模拟这个网络了:

A=sim(net,P)

A=

[1][4][7][10]

我们输入一个包含输入序列的细胞数组,网络产生一个包含输出序列的细胞数组。注意异步输入中的输入顺序是很重要的。在这个例子中,当前输出等于当前输入乘1加上前一个输入乘2。如果我们改变输入顺序,那么输出结果也回随之改变。

动态网络中的同步输入仿真

如果我们在上一个例子中把输入作为同步而不是异步应用,我们就会得到完全不同的响应。(虽然我们不清楚为什么要在动态网络中使用这种方式。)这就好象每一个输入都同时加到一个单独的并行网络中。在前一个例子中,如果我们用一组同步输入,我们有:p1=[1],p2=[2],p3=[3],p4=[4]

这可用下列代码创建:

P=[1234];

模拟这个网络,我们得到:

A=sim(net,P)

A=

1234

这个结果和我们同时把每一个输入应用到单独的网络中并计算单独的输出没什么两样。注意如果我们没有初始化延迟时间,那么缺省值就是0。在这个例子中,由于当前输入的权重是1,输出就是输入乘1。在某些特定的情况下,我们可能想要在同一时间模拟一些不同序列的网络响应。这种情况我们就要给网络输入一组同步序列。比如说,我们要把下面两个

序列输入网络:

p(1)=[1],p(2)=[2],p(3)=[3],p(4)=[4]

p(1)=[4],p(2)=[3],p(3)=[2],p(4)=[1]

输入P应该是一个细胞数组,每一个数组元素都包含了两个同时发生的序列的元素。

P={[14][23][32][41]};

现在我们就可以模拟这个网络了:

A=sim(net,P);

网络输出结果将是:

A={[14][411][78][105]}

你可以看到,每个矩阵的第一列是由第一组输入序列产生的输出序列,每个矩阵的第二列是由第二组输入序列产生的输出序列。这两组序列之间没有关联,好象他们是同时应用在单个的并行网络上的。

下面的图表显示了当我们有Q个TS长度的序列时,在函数sim中输入P的一般格式。它函盖了单输入向量的所有的情况。每一个细胞数组的元素都是一个同步向量矩阵,它对应于每一个序列的同一时间点。如果有多输入向量,那么在细胞数组中的矩阵里就有多行。

这一节我们我们把同步和异步输入应用到了动态网络中。在以前的章节中我们把同步输入应用到了静态网络中。我们也能把异步序列应用到静态网络中。这不会改变网络的输出响应,但是这会影响训练过的网络的形式。在下一节你会更清楚的了解这一点。

5.训练方式

在这一节中,我们将描述两种不同的训练方式。在增加方式中,每提交一次输入数据,网络权重和偏置都更新一次。在批处理方式中,仅仅当所有的输入数据都被提交以后,网络权重和偏置才被更新。

增加方式(应用与自适应网络和其他网络)

虽然增加方式更普遍的应用于动态网络,比如自适应滤波,但是在静态和动态网络中都可以应用它。

在这一节中我们将示范怎样把增加方式应用到这两种网络中去。

静态网络中的增加方式

继续考虑前面用过的第一个静态网络的例子,我们用增加方式来训练它,这样每提交一次输入数据,网络权重和偏置都更新一次。在这个例子里我们用函数adapt,并给出输入和目标序列:

假定我们要训练网络建立以下线性函数:

t=2p1+p2

我们以前用的输入是:

目标输出是:

t1=[4],t2=[5],t3=[7],t4=[7]

我们首先用0初始化权重和偏置。为了显示增加方式的效果,我们把学习速度也设为0。

net=newlin([-11;-11],1,0,0);

net.IW{1,1}=[00];

net.b{1}=0;

为了用增加方式,我们把输入和目标输出表示为以下序列:

P={[1;2][2;1][2;3][3;1]};

T={4577};

前面的讨论中,不论是作为一个同步向量矩阵输入还是作为一个异步向量细胞数组输入,模拟的输出值是一样的。而在训练网络时,这是不对的。当我们使用adapt函数时,如果输入是异步向量细胞数组,那么权重将在每一组输入提交的时候更新(就是增加方式),我们将在下一节看到,如果输入是同步向量矩阵,那么权重将只在所有输入提交的时候更新(就是批处理方式)。

我们现在开始用增加方式训练网络:

[net,a,e,pf]=adapt(net,P,T);

由于学习速度为0,网络输出仍然为0,并且权重没有被更新。错误和目标输出相等。

a=[0][0][0][0]

e=[4][5][7][7]

如果我们设置学习速度为0.1,我们就能够看到当每一组输入提交时,网络是怎么调整的了。

net.inputWeights{1,1}.learnParam.lr=0.1;

net.biases{1,1}.learnParam.lr=0.1;

[net,a,e,pf]=adapt(net,P,T);

a=[0][2][6.0][5.8]

e=[4][3][1.0][1.2]

由于在第一个输入数据提交前还没有更新,第一个输出和学习速率为0时一样。由于权重已更新,第二个输出就不一样了。每计算一次错误,权重都不断的修改。如果网络可行并且学习速率设置得当,错误将不断的趋向于0。

动态网络中的增加方式

我们同样也能用增加方式训练动态网络。实际上,这是最普遍的情况。让我们用前面用过的那个有输入延迟的线性网络作为例子,我们将初始化权重为0,并把学习速率设为0.1。

net=newlin([-11],1,[01],0.1);

net.IW{1,1}=[00];

net.biasConnect=0;

为了用增加方式,我们把输入和目标输出表示为细胞数组的元素:

Pi={1};

P={234};

T={357};

这里我们尝试训练网络把当前输入和前一次输入加起来作为当前输出。输入序列和我们

以前使用sim的例子中用过的一样,除了我们指定了输入序列的第一组作为延迟的初始状态。现在我们可以用adapt来训练网络了:

[net,a,e,pf]=adapt(net,P,T,Pi);

a=[0][2.4][7.98]

e=[3][2.6][-1.98]

由于权重没有更新,第一个输出是0。每一个序列步进,权重都改变一次。

批处理方式

在批处理方式中,仅仅当所有的输入数据都被提交以后,网络权重和偏置才被更新,它也可以应用于静态和动态网络。我们将在这一节讨论这两种类型。

静态网络中的批处理方式

批处理方式可以用adapt或train函数来实现,虽然由于由于采用了更高效的学习算法,train通常是最好的选择。增加方式只能用adapt来实现,train函数只能用于批处理方式。

让我们用前面用过的静态网络的例子开始,学习速率设置为0.1。

net=newlin([-11;-11],1,0,0.1);

net.IW{1,1}=[00];

net.b{1}=0;

用adapt函数实现静态网络的批处理方式,输入向量必须用同步向量矩阵的方式放置:P=[1223;2131];

T=[4577];

当我们调用adapt时将触发adaptwb函数,这是缺省的线性网络调整函数。learnwh是缺省的权重和偏置学习函数。因此,Widrow-Hoff学习法将会被使用:

[net,a,e,pf]=adapt(net,P,T);

a=0000

e=4577

注意网络的输出全部为0,因为在所有要训练的数据提交前权重没有被更新,如果我们显示权重,我们就会发现:

>>net.IW{1,1}

ans=4.90004.1000

>>net.b{1}

ans=

2.3000

经过了用adapt函数的批处理方式调整,这就和原来不一样了。

现在用train函数来实现批处理方式。由于Widrow-Hoff规则能够在增加方式和批处理方式中应用,它可以通过adapt和train触发。我们有好几种算法只能用于批处理方式(特别是Levenberg-Marquardt算法),所以这些算法只能用train触发。

网络用相同的方法建立:

net=newlin([-11;-11],1,0,0.1);

net.IW{1,1}=[00];

net.b{1}=0;

在这种情况下输入向量即能用同步向量矩阵表示也能用异步向量细胞数组表示。用train 函数,任何异步向量细胞数组都会转换成同步向量矩阵。这是因为网络是静态的,并且因为train总是在批处理方式中使用。因为MATLAB实现同步模式效率更高,所以只要可能总是采用同步模式处理。

P=[1223;2131];

T=[4577];

现在我们开始训练网络。由于我们只用了一次adapt,我们这里训练它一次。缺省的线性网络训练函数是trainwb。learnwh是缺省的权重和偏置学习函数。因此,我们应该和前面缺省调整函数是adaptwb的例子得到同样的结果。

net.inputWeights{1,1}.learnParam.lr=0.1;

net.biases{1}.learnParam.lr=0.1;

net.trainParam.epochs=1;

net=train(net,P,T);

经过一次训练后,我们显示权重发现:

>>net.IW{1,1}

ans=4.90004.1000

>>net.b{1}

ans=

2.3000

这和用adapt训练出来的结果是一样的。在静态网络中,adapt函数能够根据输入数据格式的不同应用于增加方式和批处理方式。如果数据用同步向量矩阵方式输入就用批处理方式训练;如果数据用异步方式输入就用增加方式。但这对于train函数行不通,无论输入格式如何,它总是采用批处理方式。

动态网络中的增加方式

训练静态网络相对要简单一些。如果我们用train训练网络,即使输入是异步向量细胞数组,它也是转变成同步向量矩阵而采用批处理方式。如果我们用adapt。输入格式决定着网络训练方式。如果传递的是序列,网络用增加方式,如果传递的是同步向量就采用批处理方式。

在动态网络中,批处理方式只能用train完成,特别是当仅有一个训练序列存在时。为了说明清楚,让我们重新考虑那个带延迟的线性网络。我们把学习速率设为0.02(当我们采用梯度下降算法时,我们要用比增加方式更小的学习速率,应为所有的分立的梯度都要在决定权重改变步进之前求和)

net=newlin([-11],1,[01],0.02);

net.IW{1,1}=[00];

net.biasConnect=0;

net.trainParam.epochs=1;

Pi={1};

P={234};

T={356};

我们用以前增加方式训练过的那组数据训练,但是这一次我们希望只有在所有数据都提交后才更新权重(批处理方式)。因为输入是一个序列,网络将用异步模式模拟。但是权重将用批处理方式更新。

net=train(net,P,T,Pi);

经过一次训练后,权重值为:

>>net.IW{1,1}

ans=0.90000.6200

这里的权重值和我们用增加方式得到的不同。在增加方式中,通过训练设置,一次训练可以更新权重三次。在批处理方式中,每次训练只能更新一次。

第三章反向传播网络(BP网络)

1.概述

前面介绍了神经网络的结构和模型,在实际应用中,我们用的最广泛的是反向传播网络(BP网络)。下面就介绍一下BP网络的结构和应用。

BP网络是采用Widrow-Hoff学习算法和非线性可微转移函数的多层网络。一个典型的BP网络采用的是梯度下降算法,也就是Widrow-Hoff算法所规定的。backpropagation就是指的为非线性多层网络计算梯度的方法。现在有许多基本的优化算法,例如变尺度算法和牛顿算法。神经网络工具箱提供了许多这样的算法。这一章我们将讨论使用这些规则和这些算法的优缺点。

一个经过训练的BP网络能够根据输入给出合适的结果,虽然这个输入并没有被训练过。这个特性使得BP网络很适合采用输入/目标对进行训练,而且并不需要把所有可能的输入/目标对都训练过。为了提高网络的适用性,神经网络工具箱提供了两个特性--规则化和早期停止。这两个特性和用途我们将在这一章的后面讨论。这一章还将讨论网络的预处理和后处理技术以提高网络训练效率。

2.基础

网络结构

神经网络的结构前一章已详细讨论过,前馈型BP网络的结构结构和它基本相同,这里就不再详细论述了,这里着重说明以下几点:

1.常用的前馈型BP网络的转移函数有logsig,tansig,有时也会用到线性函数purelin。当网络的最后一层采用曲线函数时,输出被限制在一个很小的范围内,如果采用线性函数则输出可为任意值。以上三个函数是BP网络中最常用到的函数,但是如果需要的话你也可以创建其他可微的转移函数。

2.在BP网络中,转移函数可求导是非常重要的,tansig、logsig和purelin都有对应的导函数dtansig、dlogsig和dpurelin。为了得到更多转移函数的导函数,你可以带字符"deriv"的转移函数:

tansig('deriv')

ans=dtansig

网络构建和初始化

训练前馈网络的第一步是建立网络对象。函数newff建立一个可训练的前馈网络。这需要4个输入参数。第一个参数是一个Rx2的矩阵以定义R个输入向量的最小值和最大值。第二个参数是一个颟顸每层神经元个数的数组。第三个参数是包含每层用到的转移函数名称的细胞数组。最后一个参数是用到的训练函数的名称。

举个例子,下面命令将创建一个二层网络,其网络模型如下图所示。

它的输入是两个元素的向量,第一层有三个神经元,第二层有一个神经元。第一层的转移函数是tan-sigmoid,输出层的转移函数是linear。输入向量的第一个元素的范围是-1到2,

输入向量的第二个元素的范围是0到5,训练函数是traingd。

net=newff([-12;05],[3,1],{'tansig','purelin'},'traingd');

这个命令建立了网络对象并且初始化了网络权重和偏置,因此网络就可以进行训练了。我们可能要多次重新初始化权重或者进行自定义的初始化。下面就是初始化的详细步骤。

在训练前馈网络之前,权重和偏置必须被初始化。初始化权重和偏置的工作用命令init 来实现。这个函数接收网络对象并初始化权重和偏置后返回网络对象。下面就是网络如何初始化的:

net=init(net);

我们可以通过设定网络参数net.initFcn和https://www.doczj.com/doc/90455157.html,yer{i}.initFcn这一技巧来初始化一个给定的网络。net.initFcn用来决定整个网络的初始化函数。前馈网络的缺省值为initlay,它允许每一层用单独的初始化函数。设定了net.initFcn,那么参数https://www.doczj.com/doc/90455157.html,yer{i}.initFcn也要设定用来决定每一层的初始化函数。

对前馈网络来说,有两种不同的初始化方式经常被用到:initwb和initnw。initwb函数根据每一层自己的初始化参数(net.inputWeights{i,j}.initFcn)初始化权重矩阵和偏置。前馈网络的初始化权重通常设为rands,它使权重在-1到1之间随机取值。这种方式经常用在转换函数是线性函数时。initnw通常用于转换函数是曲线函数。它根据Nguyen和Widrow[NgWi90]为层产生初始权重和偏置值,使得每层神经元的活动区域能大致平坦的分布在输入空间。它比起单纯的给权重和偏置随机赋值有以下优点:(1)减少神经元的浪费(因为所有神经元的活动区域都在输入空间内)。(2)有更快的训练速度(因为输入空间的每个区域都在活动的神经元范围中)。

初始化函数被newff所调用。因此当网络创建时,它根据缺省的参数自动初始化。init 不需要单独的调用。可是我们可能要重新初始化权重和偏置或者进行自定义的初始化。例如,我们用newff创建的网络,它缺省用initnw来初始化第一层。如果我们想要用rands重新初始化第一层的权重和偏置,我们用以下命令:

https://www.doczj.com/doc/90455157.html,yers{1}.initFcn='initwb';

net.inputWeights{1,1}.initFcn='rands';

net.biases{1,1}.initFcn='rands';

net.biases{2,1}.initFcn='rands';

net=init(net);

网络模拟(SIM)

函数sim模拟一个网络。sim接收网络输入p,网络对象net,返回网络输出a,这里是simuff用来模拟上面建立的带一个输入向量的网络。

p=[1;2];

a=sim(net,p)

a=

-0.1011

(用这段代码得到的输出是不一样的,这是因为网络初始化是随机的。)

下面调用sim来计算一个同步输入3向量网络的输出:

p=[132;241];

a=sim(net,p)

a=

-0.1011-0.23080.4955

网络训练

一旦网络加权和偏差被初始化,网络就可以开始训练了。我们能够训练网络来做函数近

似(非线性后退),模式结合,或者模式分类。训练处理需要一套适当的网络操作的例子--网络输入p和目标输出t。在训练期间网络的加权和偏差不断的把网络性能函数net.performFcn减少到最小。前馈网络的缺省性能函数是均方误差mse--网络输出和目标输出t之间的均方误差。这章的余项将描述几个对前馈网络来说不同的训练算法。所有这些算法都用性能函数的梯度来决定怎样把权重调整到最佳。梯度由叫做反向传播的技术决定,它要通过网络实现反向计算。反向传播计算源自使用微积分的链规则。基本的反向传播算法的权重沿着梯度的负方向移动,这将在下一节讲述。以后的章节将讲述更复杂的算法以提高收敛速度。

反向传播算法

反向传播算法中有许多变量,这一章将讨论其中的一些。反向传播学习算法最简单的应用是沿着性能函数最速增加的方向--梯度的负方向更新权重和偏置。这种递归算法可以写成:

xk+1=xk-a k g k

这里xk是当前权重和偏置向量,g k是当前梯度,a k是学习速率。有两种不同的办法实现梯度下降算法:增加模式和批处理模式。在增加模式中,网络输入每提交一次,梯度计算一次并更新权重。在批处理模式中,当所有的输入都被提交后网络才被更新。下面两节将讨论增加模式和批处理模式。

增加模式训练法(ADAPT)

函数adapt用来训练增加模式的网络,它从训练设置中接受网络对象、网络输入和目标输入,返回训练过的网络对象、用最后的权重和偏置得到的输出和误差。

这里有几个网络参数必须被设置,第一个是net.adaptFcn,它决定使用哪一种增加模式函数,缺省值为adaptwb,这个值允许每一个权重和偏置都指定它自己的函数,这些单个的学习函数由参数net.biases{i,j}.learnFcn、net.inputWeights{i,j}.learnFcn、https://www.doczj.com/doc/90455157.html,yerWeights{i,j}.learnFcn和Gradient Descent(LEARDGD)来决定。对于基本的梯度最速下降算法,权重和偏置沿着性能函数的梯度的负方向移动。在这种算法中,单个的权重和偏置的学习函数设定为"learngd"。下面的命令演示了怎样设置前面建立的前馈函数参数:net.biases{1,1}.learnFcn='learngd';

net.biases{2,1}.learnFcn='learngd';

https://www.doczj.com/doc/90455157.html,yerWeights{2,1}.learnFcn='learngd';

net.inputWeights{1,1}.learnFcn='learngd';

函数learngd有一个相关的参数--学习速率lr。权重和偏置的变化通过梯度的负数乘上学习速率倍数得到。学习速率越大,步进越大。如果学习速率太大算法就会变得不稳定。如果学习速率太小,算法就需要很长的时间才能收敛。当learnFcn设置为learngd时,就为每一个权重和偏置设置了学习速率参数的缺省值,如上面的代码所示,当然你也可以自己按照意愿改变它。下面的代码演示了把层权重的学习速率设置为0.2。我们也可以为权重和偏置单独的设置学习速率。

https://www.doczj.com/doc/90455157.html,yerWeights{2,1}.learnParam.lr=0.2;

为有序训练设置的最后一个参数是net.adaptParam.passes,它决定在训练过程中训练值重复的次数。这里设置重复次数为200

net.adaptParam.passes=200;

现在我们就可以开始训练网络了。当然我们要指定输入值和目标值如下所示:

p=[-1-122;0505];

t=[-1-111];

如果我们要在每一次提交输入后都更新权重,那么我们需要将输入矩阵和目标矩阵转变

为细胞数组。每一个细胞都是一个输入或者目标向量。

p=num2cell(p,1);

t=num2cell(t,1);

现在就可以用adapt来实现增加方式训练了:

[net,a,e]=adapt(net,p,t);

训练结束以后,我们就可以模拟网络输出来检验训练质量了。

a=sim(net,p)

a=

[-0.9995][-1.0000][1.0001][1.0000]

带动力的梯度下降法(LEARDGDM)

除了learngd以外,还有一种增加方式算法常被用到,它能提供更快的收敛速度--learngdm,带动量的最速下降法。动力允许网络不但根据当前梯度而且还能根据误差曲面最近的趋势响应。就像一个低通滤波器一样,动量允许网络忽略误差曲面的小特性。没有动量,网络又可能在一个局部最小中被卡住。有了动量网络就能够平滑这样的最小。动量能够通过把权重变得与上次权重变化的部分和由算法规则得到的新变化的和相同而加入到网络学习中去。上一次权重变化对动量的影响由一个动量常数来决定,它能够设为0到1之间的任意值。当动量常数为0时,权重变化之根据梯度得到。当动量常数为1时新的权重变化等于上次的权重变化,梯度值被忽略了。

Learngdm函数有上面所示的learngd函数触发,除非mc和lr学习参数都被设置了。由于每一个权重和偏置有它自己的学习参数,每一个权重和偏置都可以用不同的参数。

下面的命令将用lerangdm为前面建立的用增加方式训练的网络设置缺省的学习参数:net.biases{1,1}.learnFcn='learngdm';

net.biases{2,1}.learnFcn='learngdm';

https://www.doczj.com/doc/90455157.html,yerWeights{2,1}.learnFcn='learngdm';

net.inputWeights{1,1}.learnFcn='learngdm';

[net,a,e]=adapt(net,p,t);

批处理训练方式

训练的另一种方式是批处理方式,它由函数train触发。在批处理方式中,当整个训练设置被应用到网络后权重和偏置才被更新。在每一个训练例子中的计算的梯度加在一起来决定权重和偏置的变化。

批处理梯度下降法(TRAINGD)

与增加方式的学习函数learngd等价的函数是traingd,它是批处理形式中标准的最速下降学习函数。权重和偏置沿着性能函数的梯度的负方向更新。如果你希望用批处理最速下降法训练函数,你要设置网络的trainFcn为traingd,并调用train函数。不像以前章节的学习函数,它们要单独设置权重矩阵和偏置向量,这一次给定的网络只有一个学习函数。

Traingd有几个训练参数:epochs,show,goal,time,min_grad,max_fail和lr。这里的学习速率和lerangd的意义是一样的。训练状态将每隔show次显示一次。其他参数决定训练什么时候结束。如果训练次数超过epochs,性能函数低于goal,梯度值低于mingrad或者训练时间超过time,训练就会结束。

下面的代码将重建我们以前的网络,然后用批处理最速下降法训练网络。(注意用批处理方式训练的话所有的输入要设置为矩阵方式)

net=newff([-12;05],[3,1],{'tansig','purelin'},'traingd');

net.trainParam.show=50;

net.trainParam.lr=0.05;

net.trainParam.epochs=300;

net.trainParam.goal=1e-5;

p=[-1-122;0505];

t=[-1-111];

net=train(net,p,t);

TRAINGD,Epoch0/300,MSE1.59423/1e-05,Gradient2.76799/

1e-10

TRAINGD,Epoch50/300,MSE0.00236382/1e-05,Gradient

0.0495292/1e-10

TRAINGD,Epoch100/300,MSE0.000435947/1e-05,Gradient

0.0161202/1e-10

TRAINGD,Epoch150/300,MSE8.68462e-05/1e-05,Gradient

0.00769588/1e-10

TRAINGD,Epoch200/300,MSE1.45042e-05/1e-05,Gradient

0.00325667/1e-10

TRAINGD,Epoch211/300,MSE9.64816e-06/1e-05,Gradient

0.00266775/1e-10

TRAINGD,Performance goal met.

a=sim(net,p)

a=

-1.0010-0.99891.00180.9985

用nnd12sd1来演示批处理最速下降法的性能。

带动量的批处理梯度下降法(TRAINGDM)

带动量的批处理梯度下降法用训练函数traingdm触发。这种算法除了两个例外和learmgdm是一致的。第一.梯度是每一个训练例子中计算的梯度的总和,并且权重和偏置仅仅在训练例子全部提交以后才更新。第二.如果在给定重复次数中新的性能函数超过了以前重复次数中的性能函数的预定义速率max_perf_inc(典型的是1.04)倍,那么新的权重和偏置就被丢弃,并且动量系数mc就被设为0。

在下面的代码重,我们重建了以前的网络并用带动量的梯度下降算法重新训练。Traingdm的训练参数和traingd的一样,动量系数mc和性能最大增量max_perf_inc也是如此。(无论什么时候,只要net.trainFcn倍设为traingdm,训练参数就被设为缺省值。)

net=newff([-12;05],[3,1],{'tansig','purelin'},'traingdm');

net.trainParam.show=50;

net.trainParam.lr=0.05;

net.trainParam.mc=0.9;

net.trainParam.epochs=300;

net.trainParam.goal=1e-5;

p=[-1-122;0505];

t=[-1-111];

net=train(net,p,t);

TRAINGDM,Epoch0/300,MSE3.6913/1e-05,Gradient4.54729/

1e-10

TRAINGDM,Epoch50/300,MSE0.00532188/1e-05,Gradient

0.213222/1e-10

TRAINGDM,Epoch100/300,MSE6.34868e-05/1e-05,Gradient

0.0409749/1e-10

TRAINGDM,Epoch114/300,MSE9.06235e-06/1e-05,Gradient

0.00908756/1e-10

TRAINGDM,Performance goal met.

a=sim(net,p)

a=

-1.0026-1.00440.99690.9992

注意,既然我们在训练前重新初始化了权重和偏置,我们就得到了一个和使用traingd 不同的均方误差。如果我们想用traingdm重新初始化并且重新训练,我们仍将得到不同的军方误差。初始化权重和偏置的随机选择将影响算法的性能。如果我们希望比较不同算法的性能,我们应该测试每一个使用着的不同的权重和偏值的设置。

用nnd12mo来演示批处理最速下降法的性能。

Matlab优化工具箱函数简介

Matlab优化工具箱函数简介 一维搜索问题fminbnd 无约束极小值fminunc, fminsearch 约束极小值fmincon 线性规划linprog 二次规划quadprog 1.一维搜索问题 优化工具箱函数fminbnd 对应问题:min f(x) x10表示计算收敛,exitflag=0表示超过了最大的迭代次数,exitflag<0表示计算不收敛,返回值output有3个分量,其中iterations是优化过程中迭代次数,funcCount是代入函数值的次数,algorithm是优化所采用的算法。 例: clear fun='(x^5+x^3+x^2-1)/(exp(x^2)+sin(-x))' ezplot(fun,[-2,2])

结构设计方案说明

结构设计方案说明 一、工程概况: 本工程位于XX省XX市XX区,位于XX街路南,XX路东,地块总用地面积1A327平方米,总建筑面积1713A0平方米,地上建筑面积1A1A00平方米(其中金融科技服务平台A300平方米,科技资源服务平台A50平方米,创新孵化服务平台A50平方米,配套服务A00平方米),地下建筑面积A0平方米(其中地下停车场A00平方米,半地下绿地覆盖商业A0平方米)。地下1层,地上B层,裙房商业2层。 二、设计依据: 1、本项目的结构设计合理使用年限为50年,建筑安全等级为二级。 2. 本项目依据国家及XX省现行建筑结构规范、规程和标准进行设计,依据的规程规范主要有: (1) 《建筑结构荷载规范》GB50009-2012 (2) 《混凝土结构设计规范》GB50010-2010 (3) 《地基基础设计规范》GB50007-2011 (4) 《建筑桩基技术规范》JGJ94-2008 (5) 《建筑工程抗震设防分类标准》GB50223-2008 (6) 《建筑抗震设计规范》GB50011-2010 (7) 《高层建筑混凝土结构技术规程》JGJ3-2010 J186-2010 (8) 《人民防空地下室设计规范》GB50038-2005 (9) 《地下工程防水技术规范》GB50108-2008 (10) 《砌体结构设计规范》GB 50003-2011 (11) 《灌注桩后注浆技术规程》 (12) 《湿陷性黄土场地勘察及地基处理技术规范》3.竖向荷载 根据不同的建筑功能,楼面活荷载取值如下: 4.地震作用 本项目的抗震设防烈度为8度,设计基本地震加速度值为0.20g,设计地震分组为第一组。建筑抗震设防类别为乙类。 5.风荷载 本项目风荷载作用下的结构刚度和强度设计均采用100年一遇的基本风压0.45KN/m2,地面粗糙度取为B类。由于建筑单体距离较为接近,确定风荷载取值时,需考虑相邻建筑干扰效应的影响。 6.其他荷载及作用 基本雪压为0.40KN/m2(100年一遇),与或荷载不同时考虑。温度作用考虑计算温差+30度/-30度。地下室人防区域按照平战结合的人防设计考虑设计荷载取值。本工程人防为核5常5,甲类二等人员掩蔽所或甲类人防物资库。 7.场地条件

《包装结构设计》课设说明书解读

《包装结构设计》课程设计说明书东林甲子系列白酒包装 学生姓名:贾文霞 学号:20091308 班级:09包装2班 指导教师:李琛

完成时间:2012.11.7 目录 第一节、产品特性简述及设计定位------------------------------3 1、产品介绍------------------------------------------3 2、商品定位------------------------------------------3 3、设计定位------------------------------------------3 第二节、内包装容器结构设计----------------------------------4 1、材料的选取---------------------------------------4 2、材料特性介绍-------------------------------------4 3、容器成型方法-------------------------------------5 4、容器的结构设计-----------------------------------5 5、容器结构图---------------------------------------7 第三节、外包装纸盒结构设计---------------------------------8 1、瓦楞纸箱选择-------------------------------------8 2、瓦楞纸板的厚度设计-------------------------------8 3、纸盒的尺寸设计-----------------------------------8 4、纸盒的结构图------------------------------------11 第四节、外包装装潢设计------------------------------------12 第五节、整体包装结构效果图--------------------------------12 第六节、创意说明------------------------------------------13 第七节、设计总结------------------------------------------13

matlab拟合工具箱的使用

matlab拟合工具箱使用 2011-06-17 12:53 1.打开CFTOOL工具箱。在Matlab 6.5以上的环境下,在左下方有一个"Start"按钮,如同Windows的开始菜单,点开它,在目录"Toolboxes"下有一个"Curve Fitting",点开"Curve Fitting Tool",出现数据拟合工具界面,基本上所有的数据拟合和回归分析都可以在这里进行。也可以在命令窗口中直接输入”cftool”,打开工具箱。 2.输入两组向量x,y。 首先在Matlab的命令行输入两个向量,一个向量是你要的x坐标的各个数据,另外一个是你要的y坐标的各个数据。输入以后假定叫x向量和y向量,可以在workspace里面看见这两个向量,要确保这两个向量的元素数一致,如果不一致的话是不能在工具箱里面进行拟合的。 例如在命令行里输入下列数据: x = [196,186, 137, 136, 122, 122, 71, 71, 70, 33]; y=[0.012605,0.013115,0.016866,0.014741,0.022353,0.019278,0.041803,0.0 38026,0.038128,0.088196]; 3.数据的选取。打开曲线拟合共工具界面,点击最左边的"Data..."按钮,出现一个Data对话框,在Data Sets页面里,在X Data选项中选取x向量,Y Data 选项中选取y向量,如果两个向量的元素数相同,那么Create data set按钮就激活了,此时点击它,生成一个数据组,显示在下方Data Sets列表框中。关闭Data对话框。此时Curve Fitting Tool窗口中显示出这一数据组的散点分布图。

结构设计总说明

结构设计总说明 一、概述 1.1本工程为暨南大学旅游学院教学楼,6层,结构采用现浇混凝土 框架结构,建筑物总高21.6米,相对标高±0.000等于于绝对设计 标高28.300m 1.2本工程主要依据除另行注明者外,均按初步设计审批文件、岩土工程勘察报告和以下建筑工程现行设计规范: 1、建筑工程抗震设防分类标准(GB50223-2008); 2、建筑结构荷载规范(GB50009-2012); 3、混凝土结构设计规范(GB50010-2010); 4、建筑抗震设计规范(GB50011-2010); 5、建筑地基基础设计规范(GB50007-2011); 6、建筑地基处理技术规程(JGJ79-2012); 1.3建筑设计使用年限:50年;结构安全等级:二级;抗震设防分类:丙类 1.4本工程抗震设计的类别和等级: 1.5本工程主要使用荷载(标准值,KN/m2):荷载根据《GB50009-2012》 规定按功能分区选用。基本风压:W=0.75KN/m2(50年一遇);地面 粗糙度类别:C类 1.6本工程设计未考虑冬季施工措施,施工单位应根据有关施工规范自定。施工单位在整个施工过程中应严格遵守国家现行的各项施工

质量验收规范,如按施工规范对跨度较大的梁、板起拱等 1.7未经技术鉴定或设计许可,不得改变结构的用途和使用环境。1.8本工程图纸中的标高单位均为m(米),尺寸单位均为mm(毫米)。 二、材料 2.1混凝土 2.1.1混凝土强度等级:(混凝土施工中应采取有效措施防止开裂)基础垫层为C15;基础梁为C25,楼梯间梯段板为C30,基础及 ±0.000以下外墙混凝土抗渗等级P6,基础梁保护层:有垫层40mm 2.1.2结构混凝土环境类别及耐久性要求: 基础及与土壤接触部位、露天构件为二b类,卫生间等室内潮湿环境为二a类,其余为一类。 耐久性要求如下: 2.2钢筋:为H PB300钢筋;为HRB335钢筋;为HRB400钢筋;1、钢筋强度标准值应具有不小于95%的保证率。 2、抗震等级为一、二、三级的框架结构,其纵向受力钢筋采用普通钢筋时,钢筋的抗拉强度 实测值与屈服值的比值不应小于1.25;且钢筋的屈服强度实测值与 强度标准值的比值不应 大于1.3;且钢筋在最大拉应力下的总伸长率实测值不应小于9%。2.3焊条: 2.4吊钩、吊环应采用 HPB235级钢筋;受力预埋件的锚筋应采用

包装方案设计说明书(版)

Q/ZT 浙江众泰汽车制造有限公司企业标准 QGZTZZ/ 包装方案设计说明书 2017-03-16发布 2017-03-16实施 浙江众泰汽车制造有限公司发布 前言

为了实现众泰汽车制造公司(ZOTYE)包装管理的标准化,降低物流成本,提高物流和生产效率,能更好地使零件“准时”供应到众泰汽车制造公司各收货点,特制定符合供货要求的通用包装规则。 本标准由浙江众泰汽车制造有限公司提出 本标准由工艺技术部负责归口管理 本标准起草单位:工艺技术部 本标准起草人:郑浩 本标准审核人:应杰 本标准标准化人:王伟绩 本标准审定人:吕憬 本标准批准人:郑映波 本标准首次发布日期:2017年3月16日 文件/制定及修改情况记录 目录 1、目的 2、原则 3、木托盘标准

木托盘规格及技术要求 塑料托盘规格及技术要求 托盘的构成 托盘堆码标识要求 4、塑料箱标准 选择原则 一般要求 塑料箱尺寸及相关标准 塑料箱堆码高度规则 塑料箱堆码规则 塑料箱内衬设计要求 防尘盖设计盖要求 内衬设计要求 内衬材料选用 塑料箱标识要求 5、通用铁箱标准 选择原则 一般要求 材料要求 底部结构 众泰汽车制作公司推荐标准通用铁箱尺寸通用铁箱标识要求 6、专用器具标准

选择原则 一般要求 材料要求 专用器具推荐适用尺寸 专用器具堆跺脚标准 专用器具标识标准 专用器具内部结构 7、牵引装置标准 牵引杆 挂钩 牵引杆和挂钩安装位置 8、通用铁箱和专用器具制作工艺及油漆标准焊接 公差要求 油漆要求 9、脚轮标准 脚轮要求 减震脚轮技术参数 减震脚轮选用标准 脚轮使用年限 脚轮安装要求 10、瓦楞纸箱标准 进口件、贵重件和特殊采购零件要求

2019年matlab优化工具箱的使用

优化工具箱的使用 MATLAB的优化工具箱提供了各种优化函数,这些优化函数可以通过在命令行输入相应的函数名加以调用;此外为了使用方便,MA TLAB还提供了图形界面的优化工具(GUI Optimization tool)。 1 GUI优化工具 GUI优化工具的启动 有两种启动方法: (1)在命令行输入optimtool; (2)在MA TLAB主界面单击左下角的“Start”按钮,然后依次选择“Toolboxes→Optimization→Optimization tool” GUI优化工具的界面 界面分为三大块: 左边(Problem Setup and Results)为优化问题的描述及计算结果显示; 中间(Options)为优化选项的设置; 右边(Quick Reference)为帮助。为了界面的简洁,可以单击右上角“<<”、“>>”的按钮将帮助隐藏或显示。 1、优化问题的描述及计算结果显示 此板块主要包括选择求解器、目标函数描述、约束条件描述等部分。 选择合适的求解器以及恰当的优化算法,是进行优化问题求解的首要工作。 ?Solver:选择优化问题的种类,每类优化问题对应不同的求解函数。 ?Algorithm:选择算法,对于不同的求解函数,可用的算法也不同。 Problem框组用于描述优化问题,包括以下内容: ?Objective function: 输入目标函数。 ?Derivatives: 选择目标函数微分(或梯度)的计算方式。 ?Start point: 初始点。 Constraints框组用于描述约束条件,包括以下内容: ?Linear inequalities: 线性不等式约束,其中A为约束系数矩阵,b代表约束向量。 ?Linear equalities: 线性等式约束,其中Aeq为约束系数矩阵,beq代表约束向量。 ?Bounds: 自变量上下界约束。 ?Nonlinear Constraints function; 非线性约束函数。 ?Derivatives: 非线性约束函数的微分(或梯度)的计算方式。 Run solver and view results框组用于显示求解过程和结果。 (对于不同的优化问题类型,此板块可能会不同,这是因为各个求解函数需要的参数个数不一样,如Fminunc 函数就没有Constraints框组。) 2、优化选项(Options) ?Stopping criteria: 停止准则。

Matlab工具箱中地BP与RBF函数

Matlab工具箱中的BP与RBF函数 Matlab神经网络工具箱中的函数非常丰富,给网络设置合适的属性,可以加快网络的学习速度,缩短网络的学习进程。限于篇幅,仅对本章所用到的函数进行介绍,其它的函数及其用法请读者参考联机文档和帮助。 1 BP与RBF网络创建函数 在Matlab工具箱中有如表1所示的创建网络的函数,作为示例,这里只介绍函数newff、newcf、newrb和newrbe。 表 1 神经网络创建函数 (1) newff函数 功能:创建一个前馈BP神经网络。 调用格式:net = newff(PR,[S1 S2...S Nl],{TF1 TF2...TF Nl},BTF,BLF,PF) 参数说明: ?PR - R个输入的最小、最大值构成的R×2矩阵; ?S i–S NI层网络第i层的神经元个数; ?TF i - 第i层的传递函数,可以是任意可导函数,默认为'tansig',

可设置为logsig,purelin等; ?BTF -反向传播网络训练函数,默认为'trainlm',可设置为trainbfg,trainrp,traingd等; ?BLF -反向传播权值、阈值学习函数,默认为'learngdm'; ?PF -功能函数,默认为'mse'; (2) newcf函数 功能:创建一个N层的层叠(cascade)BP网络 调用格式:net = newcf(Pr,[S1 S2...SNl],{TF1 TF2...TFNl},BTF,BLF,PF) 参数同函数newff。 (3) newrb函数 功能:创建一个径向基神经网络。径向基网络可以用来对一个函数进行逼近。newrb函数用来创建一个径向基网络,它可以是两参数网络,也可以是四参数网络。在网络的隐层添加神经元,直到网络满足指定的均方误差要求。 调用格式:net = newrb(P,T,GOAL,SPREAD) 参数说明: ?P:Q个输入向量构成的R×Q矩阵; ?T:Q个期望输出向量构成的S×Q矩阵; ?GOAL:均方误差要求,默认为0。 ?SPREAD:分散度参数,默认值为1。SPREAD越大,网络逼近的函数越平滑,但SPREAD取值过大将导致在逼近变化比较剧烈的函

网站软件(结构)设计说明书()

网站软件(结构)设计说明书 一.引言 1.引言 1)将系统划分成物理部分,即程序、文件、数据库、文档、图片等。 2)设计软件结构,即将需求规格转换为体系结构,划分出程序的基本模块组成,确定模块间的相互关系,并确定系统的数据结构。 3)预期的读者:本说明书是软件体系结构设计的说明书,主要读者群为项目组成员,其次供公司上层(老师)评审,并指导开发人员的开发。 4)本说明书为系统的概要设计说明书,为系统详细的设计的主要依据。主要读者群为项目组成员,使得项目组内成员对整个系统的主要功能以及其概要的实现手段,有一个宏观的把握,是整个系统最初形,同时也是最基本的引导性文档(软件体系结构设计说明书),将从设计的角度对系统进行综合的描述,使用不同的视图来描述其不同方面。在本说明书中,将对该说明书的结构进行简要的说明,明确该说明书针对的读者群,指导他们正确的使用该说明书。 2.背景 1)项目名称:山桐子绿色能源科技有限责任公司 2)项目任务提出者:黄先生 3)项目负责人:杨卫 4)开发者:何文静,先雪莉,王娟,白瑜,杨卫 5)开发工具:Flash CS4;Dreamweaver8 6)运行平台:本项目采用WINDOW 2000为操作系统 7)适用用户:所有能上网浏览网页的用户,主要用户是需要山桐子的人群. 3.定义 1)该文档也需要将本文档中所涉及的所有术语、缩略语进行详细的定义。还有一种可简明的做法,就是维护在一个项目词汇表中,这样就可以避免在每个文档中都重复很多内容。 2)比如: DL:登录ZC:注册GSJJ:公司简介CPZS:产品展示SCYF:生产研发WDDD:我的订单XWZX:新闻中心LXWM:联系我们RCZP:人才招聘 4.参考资料 列出有关的参考资料,如: (1) 本项目的经核准的计划任务书和需求说明书; (2) 属于本项目的其他已发表的文件;如开发标准书; (3)本文件中各处引用到的文件资料: [1] 陈元国.需求分析说明书.参考资料书,2013.4 [2] 顾正刚.网站规划和建设.机械工业出版社,2010.2 [3] 张强.数据库设计说明书.参考资料书,2013.5

结构设计总说明(带图完整版)分解

混凝土结构设计总说明 1.工程概况 1.1 本工程位于xx市xxxxx,总建筑面积约13万平方米,由多栋商铺组成; 主要功能层数高度(m) 结构型式基础类型商铺 4 15.400 框架结构独基、管桩 2.设计依据 2.1 本工程主体结构设计使用年限为50年。 2.2 自然条件:基本风压:0.35kN/m 2(50年重现期);基本雪压:0.45kN/m 2; 抗震设防参数:本工程最大地震影响系数αmax=0.04(第一设防水准);场地特征周期Tg=0.35秒;场地为可进行建设的一般地段。本工程抗震基本烈度为6 度,场地土类别为Ⅱ类。 2.3 xxx工程有限公司2014.10xxx一期-4号中心岩土工程详细勘察报告书工 程编号:2014-K53 2.4 本工程施工图按初步设计审查批复文件和甲方的书面要求进行设计。 2.5 本工程设计采用的现行国家标准规范规程主要有: 建筑结构可靠度设计统一标准GB50068-2001 建筑地基基础设计规范GB50007-2011 建筑工程抗震设防分类标准GB50223-2008 建筑抗震设计规范GB50011-2010 建筑结构荷载规范GB50009-2012 混凝土结构设计规范GB50010-2010 砌体结构设计规范GB50003-2011 地下工程防水技术规范GB50108-2008 工业建筑防腐蚀设计规范GB50046-2008 建筑桩基技术规范JGJ 94-2008 人民防空地下室设计规范GB50038-2005 多孔砖砌体结构技术规范JGJ137-2001(200 3年局部修订) 混凝土外加剂应用技术规范GB50119-2013 补充收缩混凝土应用技术规程JGJ/T 178-2009 建筑边坡工程技术规范GB/T50330-2013 工程建设标准强制性条文(房屋建筑部分)2013年版(涉及规范版本更新及修订的应按现行规范执行) 2.6 桩基静载荷试验报告和地基载荷板试验报告(本工程需有前述报告后方可进 行基础施工) 3.图纸说明 3.1 计量单位(除注明外):长度:mm;角度:度;标高:m;强度:N/mm 2。 3.2 本工程±0.000相当于绝对标高41.700m。 3.3 本工程施工图与国标11G101-1《混凝土结构施工图平面整体表示方法制图 规则和构造详图》配套使用。 3.4 结构专业设计图应与其它专业设计图配合施工,并采用下列标准图: 国标 11G101-1、11G101-2、11G101-3、11G329-1;中南标 12ZG002、12ZG003、12ZG313 3.5 管桩专项说明另详。 3.6 本工程在设计使用年限内未经技术鉴定或设计许可,不得改变结构的用途和 使用环境。

包装结构设计课程设计说明书

包装结构设计课程设计说明书 香皂包装结构设计 学生姓名:王波 学号:20144062111 指导教师:王洪江 所在学院:食品学院 专业:包装工程 中国·大庆 2016年12月

本文对百醇饼干进行了包装结构设计。首先对被包装物饼干的化学物理特性和流通环境进行分析,确定饼干在流通过程中的防护要求,并通过设计计算选择合理的内、外包装材料和包装方式。采用材质较好的白纸板设计成管式折叠纸盒作为内包装,即销售包装;采用0201型瓦楞纸箱作为外包装,即运输包装。从而达到保护产品和促进销售的目的。 关键词:包装结构;设计;饼干

1设计的目的及意义 (3) 2设计内容 (3) 2.1市场调查 (3) 2.1.1调查目的 (3) 2.1.2调查结果分析 (3) 2.2内包装纸盒设计 (3) 2.2.1纸板品种及厚度的选择 (3) 2.2.2包装纸盒造型及结构设计 (4) 2.2.3包装纸盒尺寸设计 (4) 2.3.1瓦楞原纸等级、定量的选择及瓦楞楞型的确定 (5) 2.3.2瓦楞纸箱箱型选择及结构设计 (5) 2.3.3确定纸盒在瓦楞纸箱中排列方式 (5) 2.3.4瓦楞纸箱尺寸设计 (6) 2.3.5瓦楞纸箱抗压强度计算 (7) 2.3.6瓦楞纸箱最大堆码层数计算 (8) 2.3.7瓦楞纸箱载荷计算 (8) 3设计评价和体会 (9) 3.1设计评价 (9) 3.2体会 (9) 4参考资料 (9)

1设计的目的及意义 通过设计了解香皂包装现状和发展情况,设计出能够保护产品,促进销售的包装。从而加深对专业知识的系统认识,提高自己专业知识的运用能力,提升认识问题、分析问题、解决问题等各方面的能力。另外,通过这次设计,加深对白纸板和瓦楞纸箱分类及强度的认识。 2设计内容 2.1市场调查 2.1.1调查目的与意义 通过市场调查了解香皂包装现状和发展情况,以及消费者对香皂包装的喜好和需求,从而根据实际销售和运输情况,设计出适合香皂的结构造型。从而达到方便运输促进销售的目的。 2.1.2调查结果 香皂是一种不可缺乏的日用洗涤品,人们使用香皂的历史可以追溯到公元前的意大利。从八十年代开始,我国逐渐开始广泛使用香皂。宋代时就出现了一种人工合成的洗涤剂,是将天然皂荚捣碎细研,加入各种药用的花瓣粉末,做成球形专供洗面浴身之用。有的直接将皂荚用水蒸煮后,加入药用的花瓣,进行泡浴。 国产香皂在市场上难以占有一席之地。国外香皂注重包装、设计、广告投入、整体策划,使得香皂生产的附加成本增高。国外品牌对包装和设计等外在形象则普遍比较重视,不仅包装纸质较好,而且画面色彩明亮、活泼,在设计上重点突出,在广告投入上不惜血本,容易起到先声夺人、先入为主的市场效应。市场的销量,反而演变成一个高价优质的既定优势。国外品牌如舒肤佳、力士等对包装和设计等外在形象则普遍比较重视,不仅包装纸质较好,而且画面色彩明亮、活泼,在设计上重点突出,在广告投入上不惜血本,容易起到先声夺人、先入为主的市场效应。虽然这些外在形象“含金量”不能与产品内在质量的重要性相提并论,但外在形象仍就是为影响消费者重要因素。常见的一些包装形式有软纸盒、硬纸盒、塑料包装等 2.2内包装纸盒设计

(实例)matlab遗传算法工具箱函数及实例讲解

matlab遗传算法工具箱函数及实例讲解 核心函数: (1)function [pop]=initializega(num,bounds,eevalFN,eevalOps,options)--初始种群的生成函数 【输出参数】 pop--生成的初始种群 【输入参数】 num--种群中的个体数目 bounds--代表变量的上下界的矩阵 eevalFN--适应度函数 eevalOps--传递给适应度函数的参数 options--选择编码形式(浮点编码或是二进制编码)[precision F_or_B], 如 precision--变量进行二进制编码时指定的精度 F_or_B--为1时选择浮点编码,否则为二进制编码,由precision指定精度) (2)function [x,endPop,bPop,traceInfo] = ga(bounds,evalFN,evalOps,startPop,opts,... termFN,termOps,selectFN,selectOps,xOverFNs,xOverO ps,mutFNs,mutOps)--遗传算法函数 【输出参数】 x--求得的最优解 endPop--最终得到的种群 bPop--最优种群的一个搜索轨迹 【输入参数】 bounds--代表变量上下界的矩阵 evalFN--适应度函数 evalOps--传递给适应度函数的参数 startPop-初始种群 opts[epsilon prob_ops display]--opts(1:2)等同于initializega 的options参数,第三个参数控制是否输出,一般为0。如[1e-6 1 0] termFN--终止函数的名称,如['maxGenTerm'] termOps--传递个终止函数的参数,如[100] selectFN--选择函数的名称,如['normGeomSelect'] selectOps--传递个选择函数的参数,如[0.08] xOverFNs--交叉函数名称表,以空格分开,如['arithXover heuristicXover simpleXover'] xOverOps--传递给交叉函数的参数表,如[2 0;2 3;2 0] mutFNs--变异函数表,如['boundaryMutation multiNonUnifMutation nonUnifMutation unifMutation'] mutOps--传递给交叉函数的参数表,如[4 0 0;6 100 3;4 100 3;4 0 0]

MATLAB模型预测控制工具箱函数..

MATLAB模型预测控制工具箱函数 8.2 系统模型建立与转换函数 前面读者论坛了利用系统输入/输出数据进行系统模型辨识的有关函数及使用方法,为时行模型预测控制器的设计,需要对系统模型进行进一步的处理和转换。MATLAB的模型预测控制工具箱中提供了一系列函数完成多种模型转换和复杂系统模型的建立功能。 在模型预测控制工具箱中使用了两种专用的系统模型格式,即MPC状态空间模型和MPC传递函数模型。这两种模型格式分别是状态空间模型和传递函数模型在模型预测控制工具箱中的特殊表达形式。这种模型格式化可以同时支持连续和离散系统模型的表达,在MPC传递函数模型中还增加了对纯时延的支持。表8-2列出了模型预测控制工具箱的模型建立与转换函数。 表8-2 模型建立与转换函数 8.2.1 模型转换 在MATLAB模型预测工具箱中支持多种系统模型格式。这些模型格式包括: ①通用状态空间模型; ②通用传递函数模型; ③MPC阶跃响应模型; ④MPC状态空间模型;

⑤ MPC 传递函数模型。 在上述5种模型格式中,前两种模型格式是MATLAB 通用的模型格式,在其他控制类工具箱中,如控制系统工具箱、鲁棒控制工具等都予以支持;而后三种模型格式化则是模型预测控制工具箱特有的。其中,MPC 状态空间模型和MPC 传递函数模型是通用的状态空间模型和传递函数模型在模型预测控制工具箱中采用的增广格式。模型预测控制工具箱提供了若干函数,用于完成上述模型格式间的转换功能。下面对这些函数的用法加以介绍。 1.通用状态空间模型与MPC 状态空间模型之间的转换 MPC 状态空间模型在通用状态空间模型的基础上增加了对系统输入/输出扰动和采样周期的描述信息,函数ss2mod ()和mod2ss ()用于实现这两种模型格式之间的转换。 1)通用状态空间模型转换为MPC 状态空间模型函数ss2mod () 该函数的调用格式为 pmod= ss2mod (A,B,C,D) pmod = ss2mod (A,B,C,D,minfo) pmod = ss2mod (A,B,C,D,minfo,x0,u0,y0,f0) 式中,A, B, C, D 为通用状态空间矩阵; minfo 为构成MPC 状态空间模型的其他描述信息,为7个元素的向量,各元素分别定义为: ◆ minfo(1)=dt ,系统采样周期,默认值为1; ◆ minfo(2)=n ,系统阶次,默认值为系统矩阵A 的阶次; ◆ minfo(3)=nu ,受控输入的个数,默认值为系统输入的维数; ◆ minfo(4)=nd ,测量扰的数目,默认值为0; ◆ minfo(5)=nw ,未测量扰动的数目,默认值为0; ◆ minfo(6)=nym ,测量输出的数目,默认值系统输出的维数; ◆ minfo(7)=nyu ,未测量输出的数目,默认值为0; 注:如果在输入参数中没有指定m i n f o ,则取默认值。 x0, u0, y0, f0为线性化条件,默认值均为0; pmod 为系统的MPC 状态空间模型格式。 例8-5 将如下以传递函数表示的系统模型转换为MPC 状态空间模型。 1 2213)(232+++++=s s s s s s G 解:MATLAB 命令如下:

结构设计说明

结构设计总说明包括的有:设计依据,设计标高,设计基准年限,建筑安全等级,建筑重要程度,建筑地区防震烈度,抗震强度,荷载分布,建筑材料,标准图集目录,结构施工图纸目录 建筑设计图纸总说明与结构图纸设计总说明的关系 一是各说各的。 建筑的,不能用图来表示的,或图表示不如文字的,则用建筑设计图纸总说明来说明之,是设计文件的组成部分。 结构的不能用图来表示的,或图表示不如文字的,则用建筑设计图纸总说明来说明之,是设计文件的组成部分。 二是各有侧重点,建筑说建筑的,结构说结构的。 三是互为补充,结构上面说的,不一定全是结构的。建筑上面说的不一定全是建筑的。 四可能造成互为矛盾,因上述原因,不能避免遗漏,与矛盾。所要图纸会审,不仅局限于设计单位各专业间的校对与会审,设计,施工,建筑,监理。在施工前来要进行会审。达到施工图能符合现场实际的要求,消除矛盾等。 模板1国家有样本图集结构设计总说明一、工程概况本工程位于**文化路30号,*****迎宾馆院内东北角为**** *,为三层框架结构,基础形式采用桩基础. 主要柱网尺寸4.20*13.20m,地上高度为14.100m,结构高度12.600m,总长度39.300m,总宽度14.10m.高宽比0.89,长宽比2.79. 总建筑面积约为1732平方米.二、建筑结构的安全等级及设计使用年限建筑结构的安全等级:二级设计使用年限:50年建筑抗震设防类别:丙类地基基础设计等级:乙级框架抗震等级:三级桩基安全等级: 二级三、自然条件1.基本风压: Wo=0.45kN/m 地面粗糙度: B 类2.基本雪压: So=0.45kN/m 3.场地地震基本烈度: 7度抗震设防烈度: 7度设计基本地震加速度0.10g 设计地震分组第一组建筑物场地土类别:Ⅲ类4.场地标准冻深: 0.50m 5.场地的工程地质及地下水条件: 1)本工程根据******勘测公司2004年9月提供《***迎宾馆有限公司岩土工程勘察报告》进行设计. 2)地形地貌:本工程场地地貌单元属于黄河下游冲积平原.地面标高介于10.76 ~10.93m. 3)拟建场地自上而下各土层的工程地质特征如下1)杂填土,厚度0.50-1.20m,平均厚度0.82m,层底埋深0.50-1.20m, 平均埋深0.82m,Fak=70kPa. 2)素填土,厚度2.10-2.90m,平均厚度2.53m,层底埋深3.10-3.50m, 平均埋深3.35m,Fak=70kPa,Qsik=20kPa. 3)素填土,厚度0.70-1.30m,平均厚度0.95m,层底埋深4.00-4.80m, 平均埋深4.30m,Fak=70kPa,Qsik=20kPa. 4)杂填土,厚度0.70-1.50m,平均厚度0.97m,层底埋深 5.00-5.70m, 平均埋深5.27m,Fak=70kPa,Qsik=20kPa. 5)粉质粘土,厚度2.90-3.60m,平均厚度3.27m,层底埋深

饼干包装设计说明书

纸包装结构设计说明书 设计题目:“曲奇香”饼干包装设计目录 第一部分市场调查--------------------------------------------------------------------------2 1.1、调查目的---------------------------------------------------------------------------------2 1.2、调查对象及方式------------------------------------------------------------------------2 1.3、调查结果分析---------------------------------------------------------------------------2第二部分设计思路--------------------------------------------------------------------------2 2.1、造型设计---------------------------------------------------------------------------------2 2.2、结构设计---------------------------------------------------------------------------------2 2.3、装潢设计---------------------------------------------------------------------------------2 第三部分内包装盒的结构及装潢设计过程----------------------------------------------3 3.1、内包装盒的尺寸计算、结构设计---------------------------------------------------3 3.1.1、纸盒的尺寸计算--------------------------------------------------------------------3 3.1.2、盒盖结构-----------------------------------------------------------------------------3 3.1.3、材料选择-----------------------------------------------------------------------------3 3.2、内包装盒结构图-------------------------------------------------------------------------3 3.3、内包装盒装潢效果实物模型----------------------------------------------------------3 3.4、包装纸盒制造工艺流程----------------------------------------------------------------4第四部分瓦楞纸箱的结构及装潢设计过程---------------------------------------------4 4.1、瓦楞纸箱的尺寸计算-------------------------------------------------------------------4 4.1.1、内装物排列方式--------------------------------------------------------------------4 4.1.2、尺寸设计-----------------------------------------------------------------------------4

产品结构设计说明书汇编

产品结构设计说明书 姓名:杨宇欣 学号:51301081029 专业:13工业设计 学院:蚌埠学院 完成日期:2015/12/28

目录 一、椅子相关资料 二、椅子草图 三、椅子的基本功能 四、椅子连接结构—榫连接 五、椅子效果图

椅子的结构 一、椅子的相关资料 椅子的品牌 目前,市场上著名的椅子的品牌有:黑白调、卡弗特、八九间、木优、耐实、品成等。这些品牌的椅子都各有千秋。 椅子的材质 按照椅子的材质分为:实木椅、钢木椅、曲木椅、铝合金椅、金属椅、藤椅、塑料椅、玻璃钢椅、亚克力椅、板式椅、杂木椅、宝宝餐椅和圈椅等;按功能可分为中餐椅,西餐椅,咖啡椅,快餐椅,酒吧椅,办公椅等。每款不同功能的椅子都在空间中发挥其不同的作用。 椅子的进化史 其实,在中国古代,人们最开始是没有椅子可坐的,都是席地而坐。所谓的席地而坐,就是在地上铺上筵,再在筵上垫上席,人们就跪坐在席子上。直到东汉初年,胡床由西域少数名族传入中原,这时才有了椅子的形象。尽管当时“胡床”已经具备了椅子、凳子的形状,但并没有椅或者凳的称谓。到了唐明皇时期,带靠背的胡床出现,五代至宋,渐渐地人们不再称胡床为胡床,改为交椅,而且此时椅子的形式开始多起来,还出现了扶手椅、圈椅等,“椅”也才开始有了“椅子”的含义。直到现在,椅子的发展变得愈加的多种多样,出现了各种款式,各种材料的椅子。

二、椅子草图

三、椅子的基本功能 椅子是一种有靠背、有的还有扶手的坐具。椅子的形式多样,靠背椅、扶手椅、圈椅等。,纵观20世纪以来,,一张成功的椅子设计总是与制造的质量和使用功能紧密围绕联系在一起的.任何一个设计师通过一张椅子的创作同时也在演绎着椅子本身的特殊的需求和功能. 在实用设计的层面上,一把椅子的设计与创造要与人们心理与生理产生联系,以及要考虑到座椅的造型和材质.与此同时,还必须联系到使用者在知识、情感、美学、文化等精神层面上的特殊需要.在另一方面,就是设计与制造、工艺、结构之间的基本联系. 坐面旋转时,办公椅的支撑部分一般有两种,五爪轮或者是钢管支撑.后者不可移动,前者不但可轻易在平面移动,自身更可以360度旋转,,方便办公室内前后左右交流的需要. 在靠背倾仰时,不同座椅面的倾角会导致不同的椎间盘内压力及背部肌肉负荷.因此在一部分的办公椅的设计中,运用到了倾仰技术,即座椅可向后倾仰一定角度,从而减缓脊椎压力,提高工作效率. 在靠背倾仰锁定时,倾仰又分为不可锁定与可锁定两种.倾仰锁定可以让您的座椅固定倾仰角度,避免过仰造成的后翻或者其他伤害. 座椅的扶手支撑了我们肘部的重量,可调节高低的扶手升降功能,让座椅的扶手部分更贴合因人而异的高度要求,让办公椅的舒适度更高. 可旋转扶手可依据手肘的向内或向外摆放习惯调节扶手托把处的角度,贴合个人习惯,让您感觉轻松. 腰垫起到的作用就如同平时我们所用的靠垫,它托起了我们在坐下时下陷的腰部,使腰部受到的压力得以缓解,而且腰垫与座椅一体式可调节的设计,让我们更多地体验设计的人性化. 一张椅子在外表上看来是在制造一个实用的座具,其中也包含着其它的目的和风格上的考虑;从广义上看来,椅子的设计还涵盖了不同的意识观念、制造的方式和经济学理论等更深远的范畴.无论从哪个角度来看,一张椅子,从设计师到制造商都必须与社会的需求结合起来,实用功能是椅子的最终目的.所以无论是腰垫或是扶手体现的都是我们最的实现. 办公椅原本是一件给人们带来舒适的家具,而伴随着办公生活的需要,办公椅被赋予了身份的象征,办公座椅根据不同的使用者变更出了不同的样式。.办公椅的款式多种多样,并且不断地在功能与造型上有许多的创新设计.我们需要根据来选择座椅,不论哪种款式,目的只有一个:为了更好的办公.办公座椅展现了职场之中的睿智,为办公生活聚集了更多的舒适与人气.

matlab自带优化工具箱遗传算法中文解释

matlab自带优化工具箱遗传算法中文解释 problem setup and results设置与结果 problem fitness function适应度函数 number of variable变量数 constraints约束 linear inequalities线性不等式,A*x<=b形式,其中A是矩阵,b是向量 linear equalities线性等式,A*x=b形式,其中A是矩阵,b是向量 bounds定义域,lower下限,upper上限,列向量形式,每一个位置对应一个变量 nonlinear constraint function非线性约束,用户定义,非线性等式必须写成c=0形式,不等式必须写成c<=0形式 integer variable indices整型变量标记约束,使用该项时Aeq和beq必须为空,所有非线性约束函数必须返回一个空值,种群类型必须是实数编码 run solver and view results求解 use random states from previous run使用前次的状态运行,完全重复前次运行的过程和结果 population population type编码类型 double vector实数编码,采用双精度 bitstring二进制编码对于生成函数和变异函数,只能选用uniform和custom,对于杂交函数,只能使用 scattered singlepoint,twopoint或custom不能使用hybrid function和nonlinear constraint function custom 自定义 population size:种群大小 creation function:生成函数,产生初始种群 constraint dependent:约束相关,无约束时为uniform,有约束时为feasible population uniform:均匀分布 feasible population :自适应种群,生成能够满足约束的种群 initial population:初始种群,不指定则使用creation function生成,可以指定少于种群数量的种群,由creation function完成剩余的 initial scores:初始值,如果不指定,则有计算机计算适应度函数作为初始值,对于整型约束不可用,使用向量表示 initial range:初始范围,使用向量矩阵表示,第一行表示范围的下限,第二行表示上限 fitness scaling:适应度尺度 rank:等级。将适应度排序,然后编号 proportional:按比例 top:按比例选取种群中最高适应度的个体,这些个体有等比例的机会繁衍,其余的个体被淘汰 shift linear:线性转换

相关主题
文本预览
相关文档 最新文档