一种基于径向基函数神经网络的电机PID控制方法
技术领域
本发明涉及自动化控制技术领域,特别涉及一种基于径向基函数神经网络的电机PID控制方法。
背景技术
PID即Proportional(比例)、Integral(积分)、Differential(微分)的缩写,具有原理简单,易于实现,适用面广,控制参数相互独立,参数的选定比较简单等优点,在电机控制领域也具有广泛的应用。在传统的PID控制技术中,其PID参数包括比例系数、积分系数和微分系数等往往根据控制过程的动态性能和实际经验进行预先设置,这些PID参数一旦固化就难以修改,而电机控制***的应用环境复杂多变,负载变化、外部干扰、内部扰动等不确定因素会引起整个控制***的动态特性变化,导致预先设定的PID参数就无法达到较好的控制效果。为了解决上述问题,人们提出了基于RBF(Radial Basis Function,径向基函数)神经网络的PID控制方法,采用RBF神经网络的学习训练能力对PID参数进行动态调节以改善PID控制的性能,由于RBF神经网络由输入到隐含层的映射是非线性的,而隐含层空间到输出空间的映射是线性的,从而大幅加快了学习速度,使得神经元对历史数据反应更灵敏。RBF神经网络是一种包括输入层、隐含层和输出层的三层前馈型神经网络模型,具有全局收敛的作用,其中心向量、宽度向量以及隐含节点的数量的选择对RBF神经网络的预测结果的准确性具有非常大的影响,为此人们研究出了使用PSO(Particle Swarmoptimization,粒子群优化)算法为RBF神经网络提供准确的中心向量、宽度向量以及隐含节点的数量等参数,然而由于PSO算法搜索最优解的过程具有较强的随机性,其自身收敛速度往往较慢,同时也存在搜索得到的参数在目标跟踪误差的收敛速度上无法达到预期的情况。
发明内容
本发明正是基于上述问题,提出了一种基于径向基函数神经网络的电机PID控制方法,能够提高最优解搜索过程的收敛速度以及RFB神经网络模型的目标跟踪误差的收敛速度。
有鉴于此,本发明提出了一种基于径向基函数神经网络的电机PID控制方法,包括:
构建径向基函数神经网络的参数向量以及与所述参数向量相对应的速度向量
构建所述参数向量的个体最优向量以及全部所述参数向量的全局最优向量
其中j=(1,2,…,n);
在预设的数值范围内随机生成n个所述参数向量以及n个与所述参数向量相对应的速度向量/>
使用以下公式迭代计算所述速度向量以及所述参数向量/>的各个分量:
其中i=(1,2,…,7),w为预设的惯性权重,c1和c2为预设的学习常数,r1和r2为(0,1)之间的随机数;
将每一次迭代计算得到的参数向量代入径向基函数神经网络模型中计算目标跟踪误差的收敛速度/>
当将/>赋值给所述个体最优向量/>
更新所述全局最优向量
获取所述全局最优向量在所述径向基函数神经网络模型中的目标跟踪误差的收敛速度/>
当时,使用以下公式迭代计算所述参数向量/>的各个分量:
其中ε1为预设的第一收敛速度阈值;
当时,使用所述全局最优向量/>作为所述径向基函数神经网络模型的参数向量生成PID控制参数,其中其中ε2为预设的第二收敛速度阈值,且ε2<ε1。
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在迭代计算所述速度向量以及所述参数向量/>的各个分量的步骤之后,还包括:
判断所述速度向量中的各个分量是否满足vij(t+1)<vmin,其中vmin为预先配置的最小速度阈值;
当所述速度向量中任一分量满足vij(t+1)<vmin时,使用以下公式重置所述分量:
vij(t+1)=σ·aij(t),
其中σ为(0,0.5)之间的随机数。
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在获取所述全局最优向量在所述径向基函数神经网络模型中的目标跟踪误差的收敛速度的步骤之后,还包括:
获取预先配置的第一迭代次数T1;
当且t+1≤T1时,继续执行使用以下公式迭代计算所述速度向量以及所述参数向量/>的各个分量:
当或t+1>T1时,执行使用以下公式迭代计算所述参数向量/>的各个分量:
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在将所述全局最优向量代入所述径向基函数神经网络模型中计算目标跟踪误差的收敛速度的步骤之后,还包括:
获取预先配置的第一迭代次数T2,其中T2>T1;
当且T1≤t+1≤T2时,继续执行使用以下公式迭代计算所述参数向量/>的各个分量:
当或t+1>T1时,执行使用所述全局最优向量/>作为所述径向基函数神经网络模型的参数向量生成PID控制参数的步骤。
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,将每一次迭代计算得到的参数向量代入径向基函数神经网络模型中计算目标跟踪误差的收敛速度/>的步骤具体包括:
将所述参数向量代入所述径向基函数神经网络模型中迭代计算所述径向基函数神经网络的输出层的输出值:
其中l=(1,2,…,m),m为隐含层的节点数,ωl为所述径向基函数神经网络的权重向量,为hl所述径向基函数神经网络的每个隐含层节点的输出值;
计算每一次迭代的跟踪误差:
e(k)=y(k)-ym(k);
获取预先配置的最小跟踪误差阈值emin;
当e(k)<emin时,计算收敛速度:
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,将所述参数向量代入所述径向基函数神经网络模型中迭代计算所述径向基函数神经网络的输出层的输出值的步骤具体包括:
迭代计算所述径向基函数神经网络的权重向量宽度向量/>以及每个隐含层节点的中心向量/>
其中所述径向基函数神经网络的权重向量的迭代算法如下:
所述径向基函数神经网络的宽度向量的迭代算法如下:
所述径向基函数神经网络的隐含层节点的中心向量的迭代算法如下:
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在迭代计算所述径向基函数神经网络的权重向量宽度向量/>以及每个隐含层节点的中心向量的步骤之后,还包括:
根据所述径向基函数神经网络的权重向量宽度向量/>以及每个隐含层节点的中心向量/>的计算所述径向基函数神经网络的每个隐含层节点的输出值:
其中为输入向量。
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在计算跟踪误差的步骤之后,还包括:
迭代计算所述基于径向基函数神经网络的电机的PID输入项xcp、xci和xcd:
将所述参数向量代入所述径向基函数神经网络模型中迭代计算目标控制项:
u(k)=u(k-1)+Kp(k)·xcp+Ki(k)·xci+Kd(k)·xcd。
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,将所述参数向量代入所述径向基函数神经网络模型中迭代计算目标控制项的步骤具体包括:
将所述参数向量代入所述径向基函数神经网络模型中迭代计算PID参数增量:
使用所述PID参数增量计算PID参数:
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在获取所述全局最优向量在所述径向基函数神经网络模型中的目标跟踪误差的收敛速度的步骤之前,还包括:
配置全局静态变量Q及F;
在执行更新所述全局最优向量的步骤后,将的j值赋值给所述全局静态变量Q,并将相应参数向量对应的收敛速度赋值给所述全局静态变量F,即:
获取所述全局最优向量在所述径向基函数神经网络模型中的目标跟踪误差的收敛速度/>的步骤具体包括:
将所述全局静态变量F确定为所述全局最优向量在所述径向基函数神经网络模型中的目标跟踪误差的收敛速度/>
本发明提出了一种基于径向基函数神经网络的电机PID控制方法,通过在预设的数值范围内随机生成参数向量以及与参数向量相对应的速度向量,迭代计算速度向量以及参数向量,将每一次迭代计算得到的参数向量代入径向基函数神经网络模型中计算目标跟踪误差的收敛速度以更新个体最优向量和全局最优向量,获取全局最优向量在径向基函数神经网络模型中的目标跟踪误差的收敛速度,当其收敛速度小于预设的第一收敛速度阈值时,更换参数向量的迭代策略,当其收敛速度小于预设的第二收敛速度阈值时,使用该全局最优向量作为径向基函数神经网络模型的参数向量生成PID控制参数,能够提高最优解搜索过程的收敛速度以及RFB神经网络模型的目标跟踪误差的收敛速度。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
在本发明的描述中,术语“多个”则指两个或两个以上,除非另有明确的限定,术语“上”、“下”等指示的方位或位置关系为方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。术语“连接”、“安装”、“固定”等均应做广义理解,例如,“连接”可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本说明书的描述中,术语“一个实施例”、“一些实施方式”、“具体实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或实例。而且,描述的具体特征、结构、材料或特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
本发明提出了一种基于径向基函数神经网络的电机PID控制方法,包括:
构建径向基函数神经网络的参数向量以及与所述参数向量相对应的速度向量
构建所述参数向量的个体最优向量以及全部所述参数向量的全局最优向量
其中j=(1,2,…,n);
在预设的数值范围内随机生成n个所述参数向量以及n个与所述参数向量相对应的速度向量/>
使用以下公式迭代计算所述速度向量以及所述参数向量/>的各个分量:
其中i=(1,2,…,7),w为预设的惯性权重,c1和c2为预设的学习常数,r1和r2为(0,1)之间的随机数;
将每一次迭代计算得到的参数向量代入径向基函数神经网络模型中计算目标跟踪误差的收敛速度/>
当将/>赋值给所述个体最优向量/>
更新所述全局最优向量
获取所述全局最优向量在所述径向基函数神经网络模型中的目标跟踪误差的收敛速度/>
当时,使用以下公式迭代计算所述参数向量/>的各个分量:
其中ε1为预设的第一收敛速度阈值;
当时,使用所述全局最优向量/>作为所述径向基函数神经网络模型的参数向量生成PID控制参数,其中其中ε2为预设的第二收敛速度阈值,且ε2<ε1。
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在迭代计算所述速度向量以及所述参数向量/>的各个分量的步骤之后,还包括:
判断所述速度向量中的各个分量是否满足vij(t+1)<vmin,其中vmin为预先配置的最小速度阈值;
当所述速度向量中任一分量满足vij(t+1)<vmin时,使用以下公式重置所述分量:
vij(t+1)=σ·aij(t),
其中σ为(0,0.5)之间的随机数。
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在获取所述全局最优向量在所述径向基函数神经网络模型中的目标跟踪误差的收敛速度的步骤之后,还包括:
获取预先配置的第一迭代次数T1;
当且t+1≤T1时,继续执行使用以下公式迭代计算所述速度向量以及所述参数向量/>的各个分量:
当或t+1>T1时,执行使用以下公式迭代计算所述参数向量的各个分量:
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在将所述全局最优向量代入所述径向基函数神经网络模型中计算目标跟踪误差的收敛速度的步骤之后,还包括:
获取预先配置的第一迭代次数T2,其中T2>T1;
当且T1≤t+1≤T2时,继续执行使用以下公式迭代计算所述参数向量/>的各个分量:
当或t+1>T1时,执行使用所述全局最优向量/>作为所述径向基函数神经网络模型的参数向量生成PID控制参数的步骤。
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,将每一次迭代计算得到的参数向量代入径向基函数神经网络模型中计算目标跟踪误差的收敛速度/>的步骤具体包括:
将所述参数向量代入所述径向基函数神经网络模型中迭代计算所述径向基函数神经网络的输出层的输出值:
其中l=(1,2,…,m),m为隐含层的节点数,ωl为所述径向基函数神经网络的权重向量,为hl所述径向基函数神经网络的每个隐含层节点的输出值;
计算每一次迭代的跟踪误差:
e(k)=y(k)-ym(k);
获取预先配置的最小跟踪误差阈值emin;
当e(k)<emin时,计算收敛速度:
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,将所述参数向量代入所述径向基函数神经网络模型中迭代计算所述径向基函数神经网络的输出层的输出值的步骤具体包括:
迭代计算所述径向基函数神经网络的权重向量宽度向量/>以及每个隐含层节点的中心向量/>
其中所述径向基函数神经网络的权重向量的迭代算法如下:
所述径向基函数神经网络的宽度向量的迭代算法如下:
所述径向基函数神经网络的隐含层节点的中心向量的迭代算法如下:
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在迭代计算所述径向基函数神经网络的权重向量宽度向量/>以及每个隐含层节点的中心向量的步骤之后,还包括:
根据所述径向基函数神经网络的权重向量宽度向量/>以及每个隐含层节点的中心向量/>的计算所述径向基函数神经网络的每个隐含层节点的输出值:
其中为输入向量。
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在计算跟踪误差的步骤之后,还包括:
迭代计算所述基于径向基函数神经网络的电机的PID输入项xcp、xci和xcd:
将所述参数向量代入所述径向基函数神经网络模型中迭代计算目标控制项:
u(k)=u(k-1)+Kp(k)·xcp+Ki(k)·xci+Kd(k)·xcd。
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,将所述参数向量代入所述径向基函数神经网络模型中迭代计算目标控制项的步骤具体包括:
将所述参数向量代入所述径向基函数神经网络模型中迭代计算PID参数增量:
使用所述PID参数增量计算PID参数:
进一步的,在上述的基于径向基函数神经网络的电机PID控制方法中,在获取所述全局最优向量在所述径向基函数神经网络模型中的目标跟踪误差的收敛速度的步骤之前,还包括:
配置全局静态变量Q及F;
在执行更新所述全局最优向量的步骤后,将的j值赋值给所述全局静态变量Q,并将相应参数向量对应的收敛速度赋值给所述全局静态变量F,即:
获取所述全局最优向量在所述径向基函数神经网络模型中的目标跟踪误差的收敛速度/>的步骤具体包括:
将所述全局静态变量F确定为所述全局最优向量在所述径向基函数神经网络模型中的目标跟踪误差的收敛速度/>
本发明提出了一种基于径向基函数神经网络的电机PID控制方法,通过在预设的数值范围内随机生成参数向量以及与参数向量相对应的速度向量,迭代计算速度向量以及参数向量,将每一次迭代计算得到的参数向量代入径向基函数神经网络模型中计算目标跟踪误差的收敛速度以更新个体最优向量和全局最优向量,获取全局最优向量在径向基函数神经网络模型中的目标跟踪误差的收敛速度,当其收敛速度小于预设的第一收敛速度阈值时,更换参数向量的迭代策略,当其收敛速度小于预设的第二收敛速度阈值时,使用该全局最优向量作为径向基函数神经网络模型的参数向量生成PID控制参数,能够提高最优解搜索过程的收敛速度以及RFB神经网络模型的目标跟踪误差的收敛速度。
应当说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
依照本发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。本发明仅受权利要求书及其全部范围和等效物的限制。