一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于MPC算法对被控系统进行动态控制的方法、设备和介质与流程

2022-05-06 11:04:44 来源:中国专利 TAG:

基于mpc算法对被控系统进行动态控制的方法、设备和介质
技术领域
1.本公开的实施例总体涉及控制领域,并且更具体地涉及一种基于mpc(model predictive control,模型预测控制)算法对被控系统进行控制的方法、设备和介质。


背景技术:

2.目前,被控系统通常会包括多个被控设备,各个被控设备之间往往存在相互耦合的影响,因此对每一被控设备的控制都会影响整个被控系统的控制输出。因此,如何实现对这些被控设备的全局最优的协同控制非常关键。
3.例如,这样的被控系统的示例包括压缩空气系统。压缩空气系统通常包括空气压缩站(后面简称为“空压站”),空压站中可包括多个空气压缩机(后面简称为“空压机”),如果针对这些空压机的控制方案不合适,则很容易导致空压站与生产车间的用气供需差异,从而使得各个空压机频繁启停,造成输出的压力和流量产生较大的波动,无法维持在稳定的区间内,进而造成能源的浪费。目前,经常使用单机控制或plc联控的方法来对空压机进行控制。在单机控制方法中,对每个空压机分开地进行层叠式压力带控制(对于工频空压机)或者pid控制(对于变频空压机),而无法实现各个空压机之间的协同控制,而且在控制时仅基于当前压力状态进行控制,而无法适应工况的变化更无法准确判断供需差异,因此无法达到全局最优的控制效果。在plc联控控制方法中,通常根据预设的简单规则来按顺序启停空压机,这些规则通常是基于当前状态来进行判断的,因此各个设备之间仍缺乏协同运作,并且无法适应工况的变化更无法准确判断供需差异,因此其仍然无法达到全局最优的控制效果。


技术实现要素:

4.针对上述问题,本公开提供了一种基于mpc算法对被控系统进行动态控制的方法和设备,使得能够实现对被控系统的各个被控设备的全局最优的协同控制,进而达到节能的效果。
5.根据本公开的第一方面,提供了一种基于mpc算法对被控系统进行动态控制的方法,包括:在当前采样时刻,测量被控系统的当前状态数据集合和当前控制输出数据;部分基于所述当前状态数据集合和当前控制输出数据,使用多个预测模型为所述被控系统估计下一采样时刻的控制输出数据和状态数据集合;部分基于第一控制输出数据和第一状态数据集合,使用所述多个预测模型为所述被控系统估计下下采样时刻的控制输出数据和状态数据集合;在为所述被控系统估计了第一预定数目的控制输出数据之后,基于预先设定的损失函数,基于所估计的控制输出数据与目标输出数据之间的差值,为所述被控系统确定第一预定数目的最优控制输入数据集合,所确定的最优控制输入数据集合使所述损失函数最小化;以及使用为所述被控系统估计的最优控制输入数据集合之一,对所述被控系统的被控对象进行控制。
6.根据本公开的第二方面,提供了一种计算设备,包括:至少一个处理器;以及与所
述至少一个处理器通信连接的存储器;所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开的第一方面的方法。
7.在本公开的第三方面中,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中所述计算机指令用于使计算机执行本公开的第一方面的方法。
8.在一些实施例中,所述多个预测模型中的每一预测模型的模型参数是通过以下操作确定的:基于随机游走算法,生成新的控制输入数据集合;测量所述被控系统在所述新的控制输入数据集合控制下的状态数据集合、控制输出数据和负载数据;基于所测量的状态数据集合、控制输出数据和负载数据以及所述新的控制输入数据集合,使用递归最小二乘法为每一预测模型确定新的模型参数,每一预测模型的初始模型参数是以随机方式确定的;以及重复前面的操作,直到满足预定的更新停止条件为止,以便得到每一预测模型的最终模型参数。
9.在一些实施例中,基于随机游走算法,生成新的控制输入数据集合包括:对于当前控制输入数据集合中的每一控制输入数据,确定该控制输入数据与相应的调整值之间的和值;如果所确定的和值在相应的最小控制输入数据和最大控制输入数据之间,则确定相应的新的控制输入数据为所述所确定的和值;如果所述所确定的和值小于相应的最小控制输入数据,则确定该相应的新的控制输入数据为该最小控制输入数据;如果所述所确定的和值大于相应的最大控制输入数据,则确定该相应的新的控制输入数据为该最大控制输入数据。
10.在一些实施例中,所述调整值通过在相应的负安全步长和相应的正安全步长之间均匀采样得到的。
11.在一些实施例中,所述更新停止条件包括所述多个预测模型的当前模型预测误差小于预定的误差阈值。
12.在一些实施例中,所述多个预测模型均为线性预测模型,并且所述多个预测模型包括一个或多个状态数据预测模型和一个控制输出数据预测模型,每一状态数据预测模型被配置为基于相应采样时刻之前第二预定数目的控制输入数据集合和状态数据集合、相应采样时刻之前第二预定数目的控制输出数据以及相应的负载数据确定该相应采样时刻的相应状态数据,所述控制输出数据预测模型被配置为基于所述相应采样时刻之前第二预定数目的状态数据集合以及相应的负载数据确定该相应采样时刻的控制输出数据。
13.在一些实施例中,所述被控系统包括多个被控对象,并且每一控制输入数据集合包括多个控制输入数据,每一控制输入数据用于控制所述多个被控对象中的相应被控对象。
14.在一些实施例中,每一状态数据集合包括所述被控系统的一个或多个状态数据,每一状态数据指示所述被控系统的相应部分的相关状态。
15.在一些实施例中,所述被控系统为压缩空气系统,所述被控对象为所述压缩空气系统中的空气压缩站中的多个空压机,所述空压机为工频空压机或变频空压机。
16.在一些实施例中,每一状态数据集合包括所述压缩空气系统的相应产气端压力数据和产气端流量数据,并且每一控制输出数据为相应用气端压力数据。
17.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特
征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
18.结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标注表示相同或相似的元素。
19.图1示出了用于实现根据本发明的实施例的基于mpc算法对被控系统进行动态控制的方法的示例系统100的示意图。
20.图2示出了根据本公开的实施例的空气压缩系统的示意图。
21.图3示出了根据本公开的实施例的用于被控系统的控制方案的说明性示意图。
22.图4示出了根据本公开的实施例的基于mpc算法对被控系统进行动态控制的方法400的流程图。
23.图5示出了根据本公开的实施例的用于确定多个预测模型中的每一预测模型的模型参数的方法500的流程图。
24.图6a示出了根据本公开的实施例的示例控制效果的示意图。
25.图6b示出了根据本公开的实施例的示例控制效果的示意图。
26.图7示出了根据本公开的实施例的电子设备700的框图。
具体实施方式
27.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
28.在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
29.如上所述,目前,被控系统通常会包括多个被控设备,各个被控设备之间往往存在相互耦合的影响,因此对每一被控设备的控制都会影响整个被控系统的控制输出。因此,如何实现对这些被控设备的全局最优的协同控制非常关键。
30.为了至少部分地解决上述问题以及其他潜在问题中的一个或者多个,本公开的示例实施例提出了一种基于mpc算法对被控系统进行动态控制的方法,包括:在当前采样时刻,测量被控系统的当前状态数据集合和当前控制输出数据;部分基于所述当前状态数据集合和当前控制输出数据,使用多个预测模型为所述被控系统估计下一采样时刻的控制输出数据和状态数据集合;部分基于第一控制输出数据和第一状态数据集合,使用所述多个预测模型为所述被控系统估计下下采样时刻的控制输出数据和状态数据集合;在为所述被控系统估计了第一预定数目的控制输出数据之后,基于预先设定的损失函数,基于所估计的控制输出数据与目标输出数据之间的差值,为所述被控系统确定第一预定数目的最优控制输入数据集合,所确定的最优控制输入数据集合使所述损失函数最小化;以及使用为所
述被控系统估计的最优控制输入数据集合之一,对所述被控系统的被控对象进行控制。以此方式,有助于准确判断出与目标输出(即目标值)之间的差异,从而能够实现对被控系统的各个被控设备的全局最优的协同控制,进而达到节能的效果。
31.图1示出了用于实现根据本发明的实施例的基于mpc算法对被控系统进行动态控制的方法的示例系统100的示意图。在图1所示的示例中,系统100采用云-边-端架构。也就是说,如图1所示,系统100可包括云端服务器110、边缘服务器120、网关130和被控系统140。被控系统140可包括多个被控设备1401以及一个或多个传感器1402。被控设备1401可以是工业控制系统中的各种被控对象,例如为压缩空气系统中的空压机或干燥机等等。传感器1402用于在控制过程中测量被控系统140的状态数据。例如在空气压缩系统中,传感器1402可包括设置在母管处的用气端压力传感器和用气端流量传感器,其分别用于测量相应的用气端压力和用气端流量,以帮助更好地对被控设备1401进行控制。边缘服务器120可经由网关130(诸如,物联网关)与对被控系统120中的各个被控设备1401以及传感器1402进行通信,并且可被配置为运行相应的mpc算法,以实现对各个被控设备的协同控制。例如,被控设备1401和传感器1402均可例如经由工业总线(诸如,rs232总线或rs485总线)与网关130连接,以边经由该工业总线将数据发送给网关130,以供网关130转发给边缘服务器120,或者经由该工业总线接收由网关130转发的来自边缘服务器120的数据。网关130可经由有线连接或无线连接与边缘服务器120进行数据交互,由此网关130可经由有线通信或无线通信与边缘服务器120进行通信。在一些实施例中,网关130可经由一个或多个基站(诸如,4g或5g基站)(图中未示出)与边缘服务器进行通信(诸如,4g或5g通信)。边缘服务器120经由无线网络(诸如,因特网)与云端服务器110连接。由于云端服务器110的算力相对更大,因此在本公开中,可使用云端服务器110来对mpc算法中用到的各个预测模型进行训练学习,并将经训练的各个预测模型发送给该边缘服务器120以供该边缘服务器120在各对被控系统进行协同控制时使用。在一些实施例中,边缘服务器120可经由一个或多个基站(诸如,4g或5g基站)与云端服务器210进行通信(诸如,4g或5g通信)。云端服务器110和边缘服务器120均可由一个或多个计算设备实现,这些计算设备可为诸如台式计算机、膝上型计算机、工业控制计算机、嵌入式控制设备等,其具体结构例如可以如下结合图7所述的电子设备。这些计算设备可以包括至少一个处理器以及与该至少一个处理器耦合的至少一个存储器,该存储器中存储有可由该至少一个处理器执行的指令,该指令在被该至少一个处理器执行时执行如下所述的方法400。虽然在图1所示的示例中,用于实现根据本发明的实施例的基于mpc算法对被控系统进行动态控制的方法的系统采用云-边-端架构,但是这种系统也可以采用其他架构形式,例如可使用与各个被控设备耦接的一个或多个服务器(这些服务器可相互连接)来对mpc算法中用到的各个预测模型进行训练学习,并使用该一个或多个服务器来运行这些预测模型以对各个被控设备进行协调控制。
32.图1所示的被控系统140的一个示例为如图2所示的压缩空气系统,这时多个被控对象为压缩空气系统的空气压缩站中的多个空气压缩机(即,空压机)。应了解,虽然在图2中仅示出空压站中包括四个空压机,但是在实际使用中空压站中可包括更多或更少的空压机,而仍在本公开的保护范围内。在本公开中,各个空压机可以为工频空压机或变频空压机。对于工频空压机,其控制输入数据可以是至少以下之一:用于控制该空压机停机(即使得该空压机的电机不运转并且该空压机不产气)的控制输入域数据、用于控制该空压机卸
载(即使得该空压机的电机仍在运转,但是该空压机不产气)的控制输入数据、用于控制该空压机加载(即使得该空压机的电机运转并且该空压机产气)的控制输入数据等。对于变频空压机,其控制输入数据可以是至少以下之一:用于控制该空压机停机的控制输入数据、用于控制该空压机卸载的控制输入数据、用于控制该空压机加载的控制输入数据、用于使该空压机以相应频率运转的控制输入数据等。在本公开中,可基于mpc算法确定为每一个空压机确定在每一个采样时刻的相应控制输入数据,以便更精确地逼近所需的目标输出。
33.为了清楚起见,下面结合图3示出对根据本公开的实施例的用于如图1和2所示的被控系统的控制方案的原理的进行简要说明。如图3所示,在本公开的控制方案中,基于mpc框架将多个预测模型和优化模型整合在了一起,从而可实现多个被控设备的多周期协同控制。为了便于描述,下面对图3中示出的各个控制参数进行简要的说明。在图3中,r(k)表示在第k个采样时刻的目标输出数据,例如对于压缩空气系统,指示在第k个采样时刻的用气需求,即在第k个采样时刻的所需用气端压力;u(k)表示在第k个采样时刻的控制输入数据集合,即在第k个采样时刻,分别用于控制被控系统中的多个被控设备的控制输入数据的集合(例如,在压缩空气系统中,为在第k个采样时刻用于分别控制空压站中的多个空压机的控制输入的集合);x(k)表示在第k个采样时刻的状态数据集合,即在第k个采样时刻,在被控系统上测量得到的一个或多个状态数据的集合(例如,对于压缩空气系统,其可以是在第k个采样时刻由产气端压力传感器和产气端流量传感器分别测量到的产气端压力数据和产气端流量数据的集合);d(k)表示在第k个采样时刻的负载数据,即在第k个采样时刻由相应的传感器测量的被控系统的总电量(例如,对于压缩空气系统而言,为该系统的总电量);y(k)表示在第k个采样时刻的控制输出数据,即在第k采样时刻通过相应的传感器测量得到的被控系统的实际控制输出(例如,对于压缩空气系统,为在第k个采样时刻由用气端压力传感器测量得到的实际用气端压力数据);y(k j|k)表示在第k个采样时刻,对第k j个采样时刻的控制输出数据进行估计而得到的控制输出数据,其中j可以是大于等于1的整数。具体地,根据图3,通过多个预测模型,可基于当前采样时刻(例如图3中的第k个采样时刻)的控制输入数集合u(k)、状态数据集合x(k)和/或负载数据d(k)来估计(或预测)出多个后续采样时刻(例如j个后续采样时刻)的控制输出数据(即y(k j|k),其中j为大于或等于1的整数),并基于这些估计出的控制输出数据以及相应的目标输出数据(即相应的r(k j))之间的差值来确定在预测步长l内的最优预测控制输入序列(包括预测步长l内的多个控制输入数据集合),使得优化模型的目标函数j最小,最优预测控制输入序列中一个控制输入数据(通常为该序列中的第一个控制输入数据)可作为下一采样时刻(在图3中为第k 1个采样时刻)的系统控制输入,以对被控系统进行控制。在下一采样时刻(在图3中为第k 1个采样时刻),可重复前面的过程,以得到下下采样时刻(在图3中为第k 2个采样时刻)的最优系统输入,这种滚动优化的策略能够保证每一采样时刻的控制输入都是基于当前状态计算到的最优值,从而可以保证控制的高精度和强鲁棒,进而起到节能的效果。下面将结合图4对具体的控制过程进行更详细的描述。
34.图4示出了根据本公开的实施例的基于mpc算法对被控系统进行动态控制的方法400的流程图。方法400可由例如如图1所示的边缘服务器120执行,也可以在图7所示的电子设备700处执行。应当理解的是,方法400还可以包括未示出的附加框和/或可以省略所示出的框,本公开的范围在此方面不受限制。
35.在步骤402,在当前采样时刻,测量被控系统的当前状态数据集合和当前控制输出数据。
36.具体地,步骤402指的是在当前采样时刻,测量被控系统在当前控制输入数据集合控制下的当前状态数据集合和当前控制输出数据。
37.在本公开中,被控系统可包括多个被控对象,并且每一控制输入数据集合包括多个控制输入数据,每一控制输入数据用于控制该多个被控对象中的相应被控对象。例如,在被控系统为压缩空气系统的情况下,这些被控对象为空气压缩站中的各个空压机,并且每一控制输入数据集合包括分别用于控制这些空压机的多个控制输入数据。在本公开中,空气压缩站的各个空压机可以是工频空压机也可以是变频空压机。对于工频空压机,其控制输入数据可以是至少以下之一:用于控制该空压机停机(即使得该空压机的电机不运转并且该空压机不产气)的控制输入域数据、用于控制该空压机卸载(即使得该空压机的电机仍在运转,但是该空压机不产气)的控制输入数据、用于控制该空压机加载(即使得该空压机的电机运转并且该空压机产气)的控制输入数据等。对于变频空压机,其控制输入数据可以是至少以下之一:用于控制该空压机停机的控制输入数据、用于控制该空压机卸载的控制输入数据、用于控制该空压机加载的控制输入数据、用于使该空压机以相应频率运转的控制输入数据等。
38.在本公开中,每一状态数据集合可包括被控系统的多个状态数据,每一状态数据指示所述被控系统的相应部分的相关状态。例如,对于压缩空气系统,每一状态数据集合可包括相应的产气端压力数据和产气端流量数据,并且每一控制输出数据为相应用气端压力数据。
39.在步骤404,部分基于当前状态数据集合和当前控制输出数据,使用多个预测模型为被控系统估计下一采样时刻的控制输出数据和状态数据集合。
40.在本公开中,各个预测模型均为线性预测模型,并且这些预测模型可包括一个或多个状态数据预测模型和一个控制输出数据预测模型。
41.每一状态数据预测模型被配置为基于相应采样时刻(即要预测的采样时刻)之前第二预定数目的控制输入数据集合和状态数据集合(即紧接在相应采样时刻之前的第二预定数目的采样时刻的控制输入数据集合和状态数据集合)、相应采样时刻之前第二预定数目的控制输出数据以及相应的负载数据(即紧接在相应采样时刻之前的一个采样时刻的负载数据)确定该相应采样时刻的相应状态数据。
42.具体地,每一状态数据预测模型均可使用以下线性模型(1)表示(但是,针对不同状态数据的状态数据预测模型的模型参数是不同的):
ꢀꢀ
(1)其中,xi(k 1|k)表示在第k个采样时刻(例如,在步骤404中为当前采样时刻),对第k 1个采样时刻(例如在步骤404中为下一采样时刻)的相应状态数据xi进行估计(或预测)得到的数据值,t表示第二预定数目;x1(k-t)表示状态数据集合中的第一个状态数据在第k-t个采样时刻的数据值;xm(k-t)表示状态数据集合中的第m个状态数据在第k-t个采样
时刻的数据值;m为状态数据集合中所包括的状态数据的个数;y(k-t)表示第k-t个采样时刻的控制输出数据的数据值,u1(k-t)表示控制输入数据集合中的第一个控制输入数据在第k-t个采样时刻的数据值;un(k-t)表示控制输入数据集合中的第n个控制输入数据在第k-t个采样时刻的数据值;n为控制输入数据集合中所包括的控制输入数据的个数;d(k)表示第k个采样时刻的负载数据的数据值;a
1t
……amt
、y
t
、b
1t
……bnt
和d
x
为相应状态数据预测模型的模型参数。
43.在本公开中,控制输出数据预测模型被配置为基于相应采样时刻之前第二预定数目的状态数据集合以及相应的负载数据确定该相应采样时刻的控制输出数据。
44.具体地,控制输出数据预测模型可使用以下线性模型(2)表示:
ꢀꢀꢀꢀꢀ
(2)其中,y(k 1|k)表示在第k个采样时刻(例如,在步骤404中为当前采样时刻),对第k 1个采样时刻(例如在步骤404中为下一采样时刻)的控制输出数据y进行估计(或预测)得到的数据值;t表示第二预定数目;x1(k-t)表示状态数据集合中的第一个状态数据在第k-t个采样时刻的数据值;xm(k-t)表示状态数据集合中的第m个状态数据在第k-t个采样时刻的数据值;m为状态数据集合中所包括的状态数据的个数;d(k)表示第k个采样时刻的负载数据的数据值;c
1t
……cmt
和dy为该控制输出数据预测模型的模型参数。
45.在本公开中,第二预定数目t的取值可取决于具体的应用。例如,对于压缩空气系统,第二预定数目t的取值可根据采样频率和压力传导时滞性确定,比如采样采频可通常为例如2s,压力从产气端到用气端的时滞通常为例如30s,由此t的初始值可选例如30/2=15,候选范围为12~18。
46.另外,如前所述,对于压缩空气系统,每一状态数据集合可包括相应的产气端压力数据和产气端流量数据。由此,对于压缩空气系统,可包括针对产气端压力数据的状态数据预测模型和针对产气端流量数据的状态数据预测模型。经训练学习发现,未来采样时刻的产气端压力数据可依赖于当前和过去的多个采样时刻的产气端压力数据、产气端流量数据、用气端压力数据和负载数据这些依赖变量估算(即其他模型参数可选为零);未来采样时刻的产气端流量数据可依赖于当前采样时刻的控制输入数据进行估算(即,其他模型参数可选为零);由此,未来采样时刻的用气端压力数据实际上依赖于当前和过去的多个采样时刻的用气端压力数据、产气端压力数据、产气端流量数据和负载数据这些依赖变量估算。
47.在一些实施例,以上各个预测模型中的模型参数可使用被控系统的多个相应的历史运行数据(例如,先前使用其他控制方法对被控系统进行控制时获取的各个相应的状态数据、控制输出数据和负载数据)通过最小二乘法来学习得到。
48.然而,由于这样的历史运行控制输入通常会将输出控制数据控制在一个相对稳定的范围内,导致相应的历史数据不够丰富。因此,在另一些实施例中,以上各个预测模型中的模型参数还可使用以下结合图5所描述的方法来学习得到。
49.在步骤406,部分基于第一控制输出数据和第一状态数据集合,使用该多个预测模型为所述被控系统估计下下采样时刻的控制输出数据和状态数据集合。
50.在本公开中,可采用前面提到的多个预测模型来估计下下采样时刻的控制输出数据和状态数据集合。
51.在步骤408,在为被控系统估计了第一预定数目的控制输出数据之后,基于预先设定的损失函数,基于所估计的控制输出数据与目标输出数据之间的差值,为被控系统确定第一预定数目的最优控制输入数据集合,所确定的最优控制输入数据集合使损失函数最小化。
52.例如仅作为示例,如果当前采样时刻为k,并且第一预定数目为l,则当前控制输出数据为y(k),当前状态数据集合为xi(k)的集合(其中i为1到m),所估计的下一采样时刻的控制输出数据为y(k 1|k),所估计的下一采样时刻的状态数据集合为xi(k 1|k)的集合,所估计的下下采样时刻的控制输出数据为y(k 2|k),所估计的下下采样时刻的状态数据集合为xi(k 2|k)的集合,并以此类推,一直估计得到第k l个采样时刻的控制输出数据y(k l|k)和第k l个采样时刻的状态数据集合xi(k l|k)的集合,即总共l个控制输出数据和l个状态数据集合。在估计得到了该l个控制输出数据之后,即可基于所估计的每一个控制输出数据与相应的目标输出数据之间的差值来求解第一预定数目的最优控制输入数据集合。
53.在被控系统为压缩空气系统的情况下,目标输出数据为用气需求(即用气端压力的需求量),所估计的控制输出数据是对相应采样时刻的实际控制数据数据的估计值, 因此所估计的控制输出数据与目标输出数据之间的差值相当于相应采样时刻的供需差异。
54.在本公开中,可基于以下损失函数(3)来为被控系统确定第一预定数目的最优控制输入数据集合:
ꢀꢀꢀꢀ
(3)在本公开中,以上损失函数应满足以下约束条件,,。
55.在以上损失函数中,i用于指示不同的被控设备(例如,不同的空压机),c与被控设备的类型有关,因此表示相应参数对于不同类型的被控设备是不同的(例如,对于工频空压机,表示相应工频空压机的相应输入,对于变频空压机表示相应变频空压机的相应输入),l为第一预定数目,即预测步长,u
min
为最小控制输入数据,u
max
为最大控制输入数据(根据前面的条件可知对于不同类型的被控设备,相应的最大值和最小值是不同的),δ表示安全步长(根据前面的条件可知,对于不同类型的被控设备,δ的取值可以是不同的)。在该损失函数中,等号右边加号前面的部分表示控制输出信号与目标输出数据之间的差值(这两者之间应尽量接近),等号右边加号后面的部分表示被控系统的总能耗,q和r表示这两部分目标的权重(根据前面的条件可知,对于不同类型的被控设备而言,r的取值也可以是不同的)。因此通过使得以上j最小,可求解出最优的控制输入序列。在实际计算时,可假设在预测优化步长l内,负载保持不变,即。对于系统状态和输出,如果,则,。
56.例如根据前面的示例,基于该损失函数,可以得到最优控制输入数据集合u(k 1|k)、u(k 2|k)、
……
、u(k l|k)。
57.在本公开中,由于是基于所估计的控制输出数据与目标输出数据之间的差值来为被控系统确定第一预定数目的最优控制输入数据集合的,而不是仅基于当前的压力状态来
进行控制的,因此本公开的方法可以达到全局最优的控制效果。
58.在步骤410,使用为被控系统估计的最优控制输入数据集合之一,对被控系统的被控对象进行控制。
59.在本公开中,通常是使用为被控系统估计的最优控制输入数据集合中的第一个最后控制输入数据集合(即u(k 1|k))来对被控系统中的各个被控对象进行控制。
60.在本公开中,在每一采样时刻都需执行前面提到的步骤402到410,因此本公开的控制实际上是根据未来工况的变化情况来进行的控制,因此可以实现更好的控制效果。另外,在本公开中,由于使用了优化模型(即前面提到的基于损失函数的优化计算),因此能够实现对被控系统的全局最优的协同控制,进而达到节能的效果。
61.图5示出了根据本公开的实施例的用于确定多个预测模型(即步骤404和步骤406中提到的多个预测模型)中的每一预测模型的模型参数的方法500的流程图。方法500可由如图1所示的服务器110执行,也可以在图7所示的电子设备700处执行。应当理解的是,方法500还可以包括未示出的附加框和/或可以省略所示出的框,本公开的范围在此方面不受限制。
62.在步骤502,基于随机游走算法,生成新的控制输入数据集合。
63.在本公开中,步骤502可包括以下操作。
64.对于当前控制输入数据集合中的每一控制输入数据ui,确定该控制输入数据与调整值v
ic
之间的和值,该调整值可通过在相应的负安全步长(-δc)和相应的正安全步长(即 δc)之间均匀采样得到的。如果所确定的和值在相应的最小控制输入数据u
cmin
和最大控制输入数据u
cmax
之间,则确定相应的新的控制输入数据为该所确定的和值。如果所确定的和值小于相应的最小控制输入数据,则确定该相应的新的控制输入数据为该最小控制输入数据。如果该和值大于相应的最大控制输入数据,则确定该相应的新的控制输入数据为该最大控制输入数据。
65.例如,以上操作可以通过以下公式(4)来表示:
ꢀꢀꢀꢀꢀꢀ
(4)其中即表示v
ic
可通过在相应的负安全步长(-δc)和相应的正安全步长(即 δc)之间均匀采样得到。
66.在本公开中,各个控制输入数据u(k)的安全范围[u
cmin
, u
cmax
]和安全步长δc可基于相应的历史数据来确定。
[0067]
在步骤504,测量被控系统在新的控制输入数据集合控制下的状态数据集合、控制输出数据和负载数据。
[0068]
具体地,可使用所得到的新的控制数据集合对被控系统中的各个被控设备进行控制,然后对相应的状态数据集合、控制输出数据和负载数据进行测量。
[0069]
在步骤506,基于所测量的状态数据集合、控制输出数据和负载数据以及所述新的控制输入数据集合,使用递归最小二乘法为每一预测模型确定新的模型参数,每一预测模型的初始模型参数是以随机方式确定的。
[0070]
在本公开中,可以预先使用随机方式确定各个预测模型的初始模型参数,然后使其前面的方式来确定新的模型参数,以替换先前确定的模型参数。
[0071]
在步骤508,重复前面的操作(即重复前面的步骤502-206),直到满足预定的更新停止条件为止,以便得到每一预测模型的最终模型参数。也就是说,在本公开中,在训练结束之后,即可得到最终需要的各个预测模型。
[0072]
在一些实施例中,以上更新停止条件可包括该多个预测模型的当前模型预测误差小于预定的误差阈值。当前模型预测误差可以例如基于在步骤504中测量得到的控制输出数据和利用在步骤506中确定的各个预测模型估计得到的控制输出数据计算绝对误差、平均绝对误差(mean absolute error, 简称为mae)、平均绝对百分比误差(mean absolute percentage error,简称为mape)或r2等来确定。
[0073]
通过采用上述手段,本公开能够更准确地确定各个预测模型。
[0074]
例如,如图6a和6b所示,分别示出了被控系统的分别经过第k采样时刻的优化和第k 1采样时刻的优化之后得到的控制效果的示意图。通过比较6a和6b可以看出,经过优化之后,使得实际控制输出数据与目标控制输出数据之间的差异变得更小,而不会造成各个被控设备的频繁启停,也不会造成各个状态数据产生较大的波动,而可维持在稳定的区间内,进而使得可以更节省能源。
[0075]
图7示出了可以用来实施本公开内容的实施例的示例电子设备700的示意性框图。例如,如图1所示的云端服务器110和边缘服务器120均可以由一个或多个电子设备700来实施。如图所示,电子设备700包括中央处理单元(cpu)701,其可以根据存储在只读存储器(rom)702中的计算机程序指令或者从存储单元708加载到随机存取存储器(ram)703中的计算机程序指令,来执行各种适当的动作和处理。在随机存取存储器703中,还可存储电子设备700操作所需的各种程序和数据。中央处理单元701、只读存储器702以及随机存取存储器703通过总线704彼此相连。输入/输出(i/o)接口705也连接至总线704。
[0076]
电子设备700中的多个部件连接至输入/输出接口705,包括:输入单元706,例如键盘、鼠标、麦克风等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0077]
上文所描述的各个过程和处理,例如方法400和500,可由中央处理单元701执行。例如,在一些实施例中,方法400和500可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由只读存储器702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序被加载到随机存取存储器703并由中央处理单元701执行时,可以执行上文描述的方法400和500的一个或多个动作。
[0078]
本公开涉及方法、装置、系统、电子设备、计算机可读存储介质和/或计算机程序产品。计算机程序产品可以包括用于执行本公开的各个方面的计算机可读程序指令。
[0079]
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上
存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
[0080]
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘计算设备。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
[0081]
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c 等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
[0082]
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
[0083]
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
[0084]
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
[0085]
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用
于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0086]
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献