Hopfield神经网络算法在数学建模中的应用.docx
摘 要神经网络是神经网络发展历史上的一个重要发展阶段,它成功地解决了计算难题。神经网络是一种反馈型神经网络,它的稳定形态比前向型网络要繁杂得多。神经网络分为离散型和连续型两种网络模型,神经网络模型具有高效性和稳定性,但是神经网络算法是一种贪心算法,是通过寻找局部最优解来达到全局解,但是这个全局解不一定为全局最优解,所以本文尝试对此进行改进,以达到最优解,避免不足之处。本文介绍了神经网络在数学建模中的应用,运用神经网络算法求解智能RGV的动态调度优化问题。关键词:神经网络算法;问题;智能RGV动态调度。目 录1 引言P12 神经网络的基本理论P12.1 离散型神经网络算法的定义及特性 P1 2.2 连续型神经网络算法的定义及特性 P3 2.3 网络当前的研究成果 P53 神经网络在数学建模中的应用 P63.1 神经网络求解 P63.2 应用举例:智能RGV的动态调度优化研究 P73.2.1问题重述 P8 3.2.2问题分析 P9 3.2.3问题假设 P103.2.4符号说明 P103.2.5模型的建立与求解 P123.2.6检验模型的实用性和算法有效性 P163.2.7模型的评价与推广 P164 神经网络的发展展望 P17致谢P17参考文献P18 附录A 神经网络模型代码 P19神经网络算法在数学建模中的应用1 引 言神经网络是神经网络发展历史上的一个重要的里程碑。1982年,美国加州理工学院物理学家J.J.教授对神经网络的相关问题进行研究,研究结果显示是一种单层反馈神经网络。除此之外,1984年,教授设计并研制了网络模型的电路,并成功地解决了计算难题。神经网络是一种反馈型神经网络,它的稳定形态比前向型网络要繁杂得多。神经网络分为离散型和连续型两种网络模型,分别记作 () 和 () 。神经网络算法主要用于解决问题,但是现在还有很多方面都可应用神经网络算法,例如许多由所衍生的问题都可用神经网络算法解决,但是需要将神经网络模型改进,从而得到问题的答案。神经网络模型具有高效性和稳定性。通过找出所有路径的组合之后,再进行比较从而找到最佳路径来解决问题,但是这种传统穷举法的计量工作量会随着维数的增加而大幅度增加,用神经网络算法来解决问题就可以避免这种情况,但是神经网络算法是一种贪心算法,通过寻找局部最优解来达到全局解,但是这个全局解不一定为全局最优解,所以本文改进约束条件能量函数,达到最优解,避免不足。 2 神经网络的基本理念神经网络分为离散型和连续型两种网络模型,分别记作 () 和 () 。与的主要差别在于:神经元激活函数使用sigmord函数,而神经元激活函数使用了硬极限函数。2.1 离散型神经网络算法的定义及特性离散神经网络():神经元的输出取1代表其为激活形态,取0代表其为抑制形态,二值神经元的计算公式如下, 其中为外部输入,并且有: 离散神经网络是一个单层网络,有个神经元节点,每个神经元节点的输出都能接到其它神经元节点的输入。各节点没有自反馈,每个节点都附有一个阀值。每个节点都可处于一种可能的状态(1或1),即当阀值比神经元所受的刺激大时,神经元就处于一种状态(比如-1),否则神经元就始终处于另一种状态(比如1)。一个的网络状态是输出神经元信息的集合。对于一个输出层是个神经元的网络,其时刻的状态为一个维向量:因为可以取值为1或0,故维向量Y(t)有2种状态,即网络有2种状态。如图所示:如果神经网络是一个稳定网络,有3个神经元,则有种状态。由图2-1可得:若在网络的其中一个端点上加上一个输入向量,则网络的状态会产生变化,即从正八面体的一个顶点转向另一个顶点,最终趋于稳定。图2-1 3神经元8种状态的立方体模型假设一个,其状态为:如果对于任何,当神经网络从开始,有初始状态。经过有限时刻,有:则称网络是稳定的。神经网络稳定的充分条件:权系数矩阵是对称矩阵,并且对角线元素为0。无自反馈的权系数对称神经网络是稳定的。 图2-2 稳定的神经网络离散神经网络有联想记忆的功能。对于神经网络,用它作联想记忆时,先确定权系数的值,使得所记忆的信息在网络的维正八面体的某一个顶角的能量最小。当网络的权系数确定之后,只要给网络加上输入向量,网络依旧可以完整输出所记忆的信息。2.2 连续型神经网络算法的定义及特性连续神经网络()拓扑结构和的结构相同。不同之处在于其函数不是阶跃函数,而是形的连续函数。一般取 连续型神经网络()是联接简易的电子线路形成的。每个神经元都拥有一个输出值,这个输出值有着连续地时间变化。模拟神经元的型单调输入输出关系,即图2-3 电子线路连接的连续神经网络(a)图2-3 电子线路连接的连续神经网络(b)对于一个节点的模型来说,其神经元状态变量的动态变化可用下述非线性微分方程组来描述能量函数定义为的能量函数与物理意义上的能量函数不同,只是双方都表示网络状态的变化趋势。定理:若作用函数是单调递增且连续的,则能量函数是单调递减且有界的。用非线性微分方程描述,网络的稳定性通过其能量函数(又称函数)的构造,并用第二稳定性定理进行判断。2.3神经网络当前的研究成果神经网络在解决问题上颇有建树,1985年和用神经网络求解问题,并以此进行深入研究,最终确定了神经网络优化的新方法。弱引力透镜具有对暗能量的状态方程严格限制的潜力。然而,这只有在剪切测量方法可达到精度所要求的水平的时候才能成为可能。通过将总的点扩散函数(PSF)利用数据的直接去卷积,采用表示PSF作为特普利茨矩阵的线性代数形式主义,使得我们可以通过应用神经网络迭代方案来解决卷积方程。星系在去卷积图像中的椭圆率使用图像的自相关函数的二阶矩就能够得到测量。在水质评价上,可以利用神经网络的特性,并且在与其他水质评价方法对比之后,更有它的独到之处。在简化模型中,运用奇异设计值分解连接权重,使得运行效率提升。而且通过删除不重要的权重得到了更为简单的神经网络结构。事实证明了该简化模型用于水质评价中的效率和可行性。3 神经网络在数学建模中的应用3.1 神经网络求解 对于一个城市规模为的问题来说,需要用一组个神经元的输出表示其旅行次序。假设当城市规模=6时,则需要的神经元数为36个,其神经元输出矩阵如图3-1所示。图3-1 神经元输出矩阵图3-2 旅行路径图3-1代表一组神经元的输出状态,城市在本次行程中的顺序用输出矩阵每一行中1的位置来表示,假设起点为,则图3-1表示的旅行顺序为,其旅行路径(见图3-2)长度,这里表示市与市间的距离。显然,在利用神经网络求解时,要求各神经元的输出矩阵在每一行每一列中有且仅有一个1,便可确定唯一的一条旅行路线。利用神经网络求解,主要是将能量函数构造出来。此能量函数应包含两部分:一是对能量函数取得极小值时,各神经元输出矩阵在每一行每一列中有且仅有一个1;二是将旅行路径的长度表示出来。例如: 式中此时神经元和的连接权值为:其中:权值给定时,随机设置神经网络初始输入,网络将最终收敛于某个平衡状态。然而随着城市数量的扩大,其个神经元数量也对应扩大,此时神经网络存在大量的平衡点,很难通过若干次计算得到全局最优解。而利用神经网络求解的优势在于:当城市数量适中时,的最优解一定在网络的平衡点中。所以,当城市数量较多时,若可以先减少城市数量后再利用 神经网络求解,则能较快的得到原问题的一个较优解。3.2 应用举例:智能RGV的动态调度优化研究随着科技的进步,越来越多的智能系统代替了繁琐的人工操作。现有一种由8台计算机数控机床(CNC)、1辆轨道式自动引导车(RGV)、1条RGV直线轨道、1条上料传送带、1条下料传送带等附属设备组成的智能加工系统。其中,RGV是一种无人驾驶、能在固定轨道上自由运行的智能车,它能根据指令自动控制移动方向和距离,并自带一个机械手臂、两只机械手爪和物料清洗槽,能够完成上下料及清洗物料等作业任务。由于8台机床都可同时作业,且都能完成生料到熟料的加工转换,但轨道式自动引导车RGV仅有一辆,为了提高工厂的工作效率,保证在最短时间内得到最大的工作效益,即每班次传送带输送出更多加工完成的成料。因此,我们通过分析RGV的机械手爪工作顺序以及移动距离、各台CNC的加工情况、传送带物料的运送等一系列问题,在一般情况和出现故障的特殊情况下分别讨论一道工序和两道工序时加工系统的工作效率。对于任务:针对一般情况下,要求我们分别给出一道工序和两道工序时加工系统的RGV动态调度模型以及相应的算法。由于RGV小车要从初始位置在轨道上对8台CNC进行上下料作业且最终回到初始位置,对此我们受“组合优化问题”的启发,建立非线性规划模型,运用此模型,我们可以很自然想到运用神经网络算法求解。3.2.1 问题重述(1)问题的背景:在这个快节奏高效率的生活时代中,为了提高各个工厂物料生产的效率,满足供给需求,人们引进智能加工系统,通过RGV这一有轨穿梭小车的运转、CNC加工台的加工以及上下料传送带三者的配合,进行物料的加工合成、清洗和传送。在这个智能加工系统中,RGV起着纽带的作用,它通过自带的机械手臂和两个机械手爪负责将生料进行搬移至加工台上,完成加工、清洗、送出等一系列动作,从而完成生料到成料的转换。RGV具有移动速度快、运行平稳、停车位置准确且容易控制位置、可靠性高等一系列优点,但是RGV运行的先后顺序又决定了其运行的时间长短以及物料生产的效率。(2)问题的提出:针对一般问题进行研究,给出RGV动态调度模型和相应的求解算法。这里的一般问题指的是每台CNC在加工作过程中都正常运行,均不发生故障的情况。换言之,就是研究在每台CNC均正常运行,一道工序的物料加工作业(每台CNC安装相同的刀具加工)情况和两道工序的物料加工作(每个物料的第一和第二道工序分别由两台不同的CNC依次加工)情况。利用表3-2中系统作业参数的数据分别检验模型的实用性和算法的有效性,即运用表3-2中的数据,带入问题一中所建立的数学模型以及给出的离散型神经网络算法进行验证。3.2.2 问题分析(1)智能系统的运行状况及物料的加工传送过程从智能加工系统中,我们可以了解到,智能加工系统通电启动后,RGV在CNC1#和CNC2#正中间的初始位置(如下图3-3),所有CNC都处于空闲状态。由于RGV为偶数编号的CNC一次上下料所需时间要大于为奇数编号的CNC一次上下料所需时间,所以RGV在刚刚通电启动时,先收到CNC1#发出上料需求信号,随后它会自行确定该CNC的上下料作业次序,并依次按顺序为其上下料作业。根据需求指令,RGV运行至需要作业的某台CNC处,同时上料传送带将生料送到该CNC正前方,供RGV上料作业。此时,RGV中的机械臂前端上方手爪抓住上料传送带上的生料A,机械臂下方空置的手爪抓住CNC台上未清洗的但已加工完成的熟料B,旋转手爪,将生料A对准放置刚刚加工熟料B的加工台位置,然后即刻抓取清洗槽中的成料C放于下料传送带送出系统。同时将熟料B放置于RGV中的物料清洗槽,这就完成了一个完整的物料加工过程。如此循环直至一个班次(8小时)作业结束时停止。考虑到RGV上下手爪抓取的物料顺序以及移动过程中所耗费的时间,我们需要根据不同的情况进行分类讨论,从而建立相应的数学模型。图3-3 智能加工系统(2)计算机数控机床CNC在加工过程中没有发生故障的情况智能加工系统在通电后,先收到CNC1#的上料需求信号,完成上料后,立即移动到相应位置给其它需要上料的CNC机器上料,我们对此情况进行模拟,发现当RGV给所有需要上料的机器CNC上料后并返回到初始位置(第一台上料的CNC)时,RGV仍需要一定的时间等待第一台CNC加工完成,由此联系到图论中的优化问题,针对一道工序和两道工序,我们可以运用同一个模型来带入求解。同时,针对物料的状态(生料、熟料、成料)我们也可以看作是两道工序分别讨论。因此根据已知量可以建立相应的非线性规划模型。对于算法,我们先求局部的最优解,再通过各局部的最优解进行相加得到全局的最优解,因此,我们联想到应用神经网络算法来解决问题。(3)RGV的调度策略和系统作业的效率由于机器故障完全未知,而机器故障的概率已预知(故障发生概率为1%),于是本文主要考虑在预调度的每个工序之前加入一定长度的故障排除时间,即我们选用的RGV的调度策略是基于机器故障概率分布的预调度算法。系统的作业效率也可以相当于系统在实际过程中加工的熟料个数与原计划(理想状态)加工的物料个数的比值,因此,我们得考虑在可能发生故障的情况下,一个班次内正常运行的CNC机器数量以及它能产生的熟料个数。换句话说,我们要考虑正常的一个班次内所有不能按理想状态生产熟料的机器数量,即机器的故障数量和因故障维修所耽误的机器数量。3.2.3 问题假设1.一般情况下,在人工智能系统作业的八小时之内不出现故障;2.一般情况下,RGV在智能加工系统通电启动后,先给CNC1#上料,然后再给其它有发出需求信号的CNC加工台上料,并返回初始位置,且还需要等待CNC1#加工成熟。 3.在使用RGV机械手臂旋转的过程中,没有消耗时间。4.在可能发生故障的情况下,维修CNC加工台的时间均为20分钟。5.RGV为CNC一次上料和一次下料花费的时间相同。3.2.4 符号说明表3-1 符号说明符号系统作业参数物料计算机数控机床CNC,第、道工序第个物料的第道工序在第台CNC上起始加工时间第个物料的第道工序在第台CNC上加工的时间8个生料成料总花费时间第个物料的第道工序在第台CNC上起始加工时间第个物料的第道工序在第台CNC上加工时间神经元神经元的状态第台CNC的神经元神经元的位置有效路径网络能量函数总能量, ,激励函数神经元输入神经元输出RGV移动一个单位所需时间RGV移动两个单位所需时间RGV移动三个单位所需时间CNC加工完成一个一道工序的物料所需时间CNC加工完成一个两道工序物料的第一道工序所需时间CNC加工完成一个两道工序物料的第二道工序所需时间RGV为CNC1#,3#,5#,7#一次上下料所需时间RGV为CNC2#,4#,6#,8#一次上下料所需时间RGV完成一个物料的清洗作业所需时间3.2.5 模型的建立与求解(1)根据上述问题的假设,在一般情况下,我们设物料为,此时的物料包括在上料传送带上的生料以及下料传送带上的成料;计算机数控机床CNC为台,且,;工序为道或道,且,;第个物料的第道工序在第台CNC上起始加工时间为;第个物料的第道工序在第台CNC上加工的时间为;8个生料成料总花费时间为;第个物料的第道工序在第台CNC上起始加工时间为;第个物料的第道工序在第台CNC上加工时间为。建立如下非线性规划模型:约束条件为:;此时 (2)由上述问题假设得,当给一道或者两道工序的物料加工时,RGV在给第一台CNC机器上料后,立即移动到相应位置给其它需要上料的CNC上料,我们对此情况进行模拟,发现当RGV给所有需要上料的机器CNC上料后并返回到初始位置(第一台上料的CNC)时,RGV仍需要一定的时间等待第一台CNC加工完成,由此联系到图论中的优化问题。而我们发现,问题的解决需要做的是优化时间,让时间达到最小值,若想优化时间就必须考虑RGV的有效路径。因此应用神经网络算法给出相应的解答,当路径达到最小值时,总能量最小,时间也就得到最优解。“神经网络”是指一种递归神经网络,同时又是一个单层网络,每个神经元节点的输出都能接到其它神经元节点的输入。各节点没有自反馈,在一般情况下,根据它的特点,我们可以先算出局部能量最小,通过各部分的累加从而保证全局能量的最小值。因此设神经元为,神经元的状态为,满足;保证矩阵V的每行只有一个1;保证矩阵V的每列只有一个1;保证矩阵V中为1的恰好个,此时达到最小值;且、为局部最优解,表示全局最优解;又因为利用神经网络算法是为了考虑路径的合理性,我们引进神经网络能量函数为有效路径的长度信息,若路径最佳时,达到最小值;若路径较好时,达到极小值,所以,构造总能量关于路径的函数关系式: 将上式代入神经网络电路标准能量函数公式得:且神经元与之间的导纳值为:,其中激励函数和定义为:,外激励函数为,将分别代入网络状态方程得:其中为神经元的输入,为神经元的输出,两者关系为:i) 当网络节点输出为连续型时,;ii) 当网络节点输出为离散型时, 因此,当为1时,,总能量最小,即有效路径最佳,对应的RGV在轨道上移动消耗的时间也是最少。一旦确定了最佳路径,我们就可以给出RGV在轨道上的运行路径以及给各个CNC加工的顺序。图3-4:神经网络模型模型的程序流程图3.2.6 检验模型的实用性和算法的有效性应用任务一所得的非线性规划模型,以最小完工时间为目标,利用神经网络算法进行求解,将表3-2的数据带入,得到三组物料加工上下料时间的数据,并计算出一个班次(8小时)CNC中最多可生产的成料数量,它的结果表明算法的有效性。以第一组数据为例,题中给予我们RGV为奇数编号和偶数编号的CNC一次上下料所需的总时间,假设一次上料和一次下料花费的时间相同,且考虑的是CNC机器不出现故障的情况,先算出前八台CNC的上下料开始时间,由表得出,RGV在给第八台CNC上料之后返回到初始位置时,第一台CNC仍未完成加工,(162.5秒<560秒)接着利用8台机器下料开始时间为第二轮的起始点再一次计算,于是得到其中的规律,应用EXCEL处理数据得出最终8小时内的工作情况,具体算法如下表3-2,具体代码见附录A表3-2 8小时内的工作情况(单位:秒)加工物料序号加工CNC编号上料开始时间下料开始时间110560+28/2=574220+28/2=1414+588+25*1+15.5*0+14*0=6273314+31/2+20=49.549.5+588+25*2+15.5*1+14*0=7034449.5+28/2=63.563.5+588+25*3+15.5*1+14*1=7565563.5+31/2+20=9999+588+25*4+15.5*2+14*1=8326699+28/2=113113+588+25*5+15.5*2+14*1=88577113+31/2+20=148.5148.5+588+25*6+15.5*3+14*2=96188148.5+28/2=162.5162.5+588+25*7+15.5*3+14*3=101491574+28/2=588574+574=1148102627+31/2=642.5627+574=1201113703+28/2=717703+574=1277124756+31/2=771.5756+574=1330135832+28/2=846832+574=1406146885+31/2=900.5885+574=1459157961+28/2=975961+574=15351681014+31/2=1029.51014+574=15881711148+28/2=11621148+574=17221821201+31/2=1216.51201+574=1775.3.2.7 模型的评价与推广(1)模型优缺点分析A优点:高效性、稳定性。通过找出所有路径的组合之后,再进行比较从而找到最佳路径来解决问题,但是这种传统穷举法的计量工作量会随着维数的增大而大幅度增大,用神经网络算法来解决问题就可以避免这种情况;把问题转换成适合于神经元网络处理的形式,使神经元的输出与问题的解相对应。神经网络通过对能量函数的构造,对判断网络的稳定性有了根本依据,当网络达到稳定状态的时候,也就是它的能量函数达到最小的时候,结果一目了然,这样就不会出现计算工作量太大的问题。B缺点:神经网络算法是一种贪心算法,通过寻找局部最优解来达到全局解,但是这个全局解不一定为全局最优解,同时也很难找到通用的学习算法。(2) 模型的改进分析:在运用神经网络算法的模型过程中,能量函数不仅计算速度慢,而且容易陷入局部最优解,这说明能量函数约束不够强,所以改进约束条件能量函数,达到最优解,避免了它的不足。4 神经网络的发展展望神经网络是一种反馈型神经网络,可以通过反馈增强全局稳定性。通常,在参数设置合理的情况下,神经网络可以用来优化任何问题。神经网络通过对能量函数的构造,对判断网络的稳定性有了根本依据,当网络达到稳定状态的时候,也就是它的能量函数达到最小的时候,结果一目了然,这样就不会出现计算工作量太大的问题。利用神经网络求解问题,是一种优化神经算法,在参数设置合理的情况下,可能找到真实最优解,会比近似算法计算的效果要好,但是神经网络比较依赖初始权值的设置,会受到初始输入状态和输出状态的随机性影响,不一定每次都可以找到最优解,也可能是不同的次优解。希望以后神经网络的发展可以解决这个问题,找到全局最优解。神经网络提供了模拟人类记忆的模型。它在人工智能之机器学习、联想记忆、模式识别、优化计算、VLSI和光学设备的并行实现等方面有着广泛应用。本文给出的例子为神经网络在优化计算中的应用,但是神经网络的应用领域远远不止优化计算,在数学建模中,神经网络算法应用较多的为人工神经网络算法和神经网络算法,但是神经网络算法也有上述两种算法所没有的优点,希望更多人可以关注神经网络,改正它的问题,取其精华去其糟粕。致 谢吋光飞逝,转眼间四年紧张而又充实的大学生生活即将画上句号。在这四年的学习期间,我得到了很多老师、同学和朋友的关怀和帮助。在毕业论文即将完成之际,我要向所有期间给予我支持、帮助和鼓励的人表示我最诚挚的谢意。首先,我要感谢我的指导老师平征老师对我的教导。从论文的选题、构思、撰写到最终的定稿,平征老师都给了我悉心的指导和热情的帮助,使我的毕业论文能够顺利的完成。平征老师对工作的认真负责、对学术的钻研精神和严谨的学风,都是值得我终生学习的。其次,感谢数理学院的全体领导和老师,由于他们的悉心教导,我学到了专业的数学知识,掌握了扎实的专业技能。最后,感谢我的家人在此期间给予我的包容、关爱和鼓励,以及所有陪我一路走来的同学和朋友,正是由于他们的支持和照顾,我才能安心学习,并顺利完成我的学业。毕业在即,在今后的工作和生活中,我会铭记师长们的教诲,继续不懈努力和追求,来报答所有支持和帮助过我的人!参 考 文 献1帅训波,马书南,一种基于遗传 神经网络求解 问题的算法J. 微型机与应用,2009:11-5881/TP.2高炜欣,罗先觉,朱颖,贪心算法结合神经网络优化配电变电站规划J电网技术,2004(4):73宋绍剑,薛国英,基于神经网络算法的WSN路径优化J.控制理论与应用,2010,29(7)4石红国,绕煜,郭寒英,基于神经网络求解较大规模的新方法J.综合运输,2018(49):77-825储心怡 张明超 赵中睿 王超杰. 基于寻优算法的智能RGV的动态调度问题J. 信息通信, 2019(07):48-49.6徐晓龙 张商州 黄乐乐. 智能RGV的动态调度模型研究J. 商洛学院学 报,2019(04):12-16.7王惠 崔杰 王树乔. 基于离散神经网络的企业信息资源管理水平评价研究J. 管理现代化, 2014(06):90-92.8丁雪梅 陈贝贝. 基于标准数据集的异常检测技术综述与实验分析J. 莆田学院学报, 2012(02):58-65.9潘舒曼 薛怡宁 许诺. 基于贪心算法的RGV动态调度模型J. 自动化应 用,2019(05):99-100.附录A23