模型预测控制应用程序中相对于最佳性能值的优良性能的系统和方法与流程

文档序号:13518211阅读:233来源:国知局
模型预测控制应用程序中相对于最佳性能值的优良性能的系统和方法与流程

本公开大体上涉及控制应用程序中被称为最佳性能值的高性能操作点,以及提供相对于模型预测控制器中的这些最佳性能值达成优良动态性能。



背景技术:

在典型多变量控制策略中,计算操纵变量(mv)值使得满足某些指定控制目标。这些控制目标最常见的是基于工艺经济性而表达为固定期望值(或设定值)和/或优化成本函数,并且在彼此之间以期望的优先次序排列。控制策略设计为首先使用稳态模型来计算静态最优操作点,关于所述操作点设计动态跟踪控制策略。由于不可行性,控制变量(cv)的这些稳态目标值可以不同于用户指定的值(例如,设定值或实时优化(rto)目标)或可以具有比指定cv界限值内的其它可能值更高的经济成本。这使得可能在cv和mv界限值内存在静态不可行的高潜在值。设定值和/或经济目标函数转译为静态目标以用于跟踪会使控制策略放掉暂态的效益,因为控制移动计划是基于追踪静态目标而不是满足原始控制目标。一些先前设计通过在动态跟踪控制设计中使用指定的原始设定值或经济函数来解决这一问题,导致关于最佳稳态的不对称的cv动态响应。

jamesb.rawlings、dennisbonnè、johnb.aswinn.venkat和stenbay在《ieee自动控制汇刊(ieeetransactionsonautomaticcontrol)》(第53卷,第9期,第2209-2215页,2008年)的文章《模型预测控制中的不可达设定值(unreachablesetpointsinmodelpredictivecontrol)》以及j.rawlings和r.amrit在《非线性模型预测控制(nonlinearmodelpredictivecontrol)》(第119-138页,2009年)的文章《使用模型预测控制的优化进程经济性能(optimizingprocesseconomicperformanceusingmodelpredictivecontrol)》中论述了此类先前系统。

稳态目标是其中cv除非扰动否则保持静态的值。然而,在现实世界情况下,由于例如噪声和未模型化干扰,这些稳态目标不会保持静态且因此cv大部分时间处于瞬态。如果存在可用的任何高潜在区域,那么这开发了提取关于邻近用户指定的设定值或经济效益的更高累积效益的可能性。

几乎所有的控制应用程序在本质上都是多目标的,其中控制目标含有以指定的优先次序排列并且针对指定的动态响应速度动态调谐的混合的设定值、cv界限值和经济函数。针对不对称响应的先前模型预测控制器设计不考虑多个控制目标以及动态响应速度与cv值的相对稳态重要性之间的差异。本发明旨在提供考虑所有目标以及其相对和/或绝对优先级排序的更高控制器性能。



技术实现要素:

根据本公开,在此公开一种用于通过产生不对称动态行为推移到操作窗口边缘的系统和方法。当设定值变得不可行时,控制器在远离设定值移动时减速。当不可行性清除时,控制器开始朝向设定值移回,控制器将遵循调谐后的动态速度。当控制器在逆着经济收益的方向上移动时,控制器减速,并且当在经济收益的方向上移动时,控制器遵循调谐后的动态速度。最佳性能值(bpv)由控制器针对每个控制变量(cv)限定并计算,且等于cv的设定值,其中控制值的界限值之间的设定值或最高收益值受经济函数影响。

在一个实施例中,针对模型的控制变量指定设定值。确定稳态目标值和最佳性能值。在系统中估计干扰。在一个或多个实施例中,估计干扰是以下中的一个或多个:设备模型不匹配、模型不确定性、未建模扰动、未预料的扰动、传感器噪声、测量噪声、温度变化、质量测量值变化、控制变化、库存水平变化以及库存数量变化。还确定一个或多个动态调整权重。调整一个或多个最佳性能值使得它们与动态调整权重和稳态目标相一致,其中稳态目标可以至少部分地基于指定静态模型。创建动态控制目标并且对控制问题求解。

在一个实施例中,控制变量的设定值包括上限设定值和下限设定值或界限值。这些界限值可以由用户指定。在其它实施例中,存在多个控制变量,其中每个控制变量具有相关联的设定值。

本文公开的方法在技术上是有利的,因为提供了用于产生不对称动态行为的方法。也就是说,每当设定值变得不可行时,控制器就在远离设定值移动时减速。当不可行性清除时,控制器开始朝向设定值移回,控制器将遵循调谐后的速度。当控制器在逆着经济收益的方向上移动时,控制器减速,并且当在经济收益的方向上移动时,控制器遵循调谐后的动态速度。最佳性能值(bpv)由控制器针对每个cv计算,且等于cv的设定值,其中cv的界限值之间的设定值或最高收益值受经济函数影响,从而提供改进的总体控制性能。

附图说明

通过参考结合附图进行的以下描述可以获得对本发明的实施例及其优点的更全面理解,其中相同的参考标号指示相同的特征,并且其中:

图1示出根据本公开的一个或多个实施例的实例信息处理系统;

图2示出根据本公开的一个或多个实施例的最佳性能值;

图3示出使用bpv构造动态控制目标的流程图;以及

图4示出根据本公开的一个或多个实施例的调整后的bpv。

虽然本公开容许各种修改和替代形式,其具体实例实施例已在附图中示出且在本文中详细描述。然而,应理解,本文中对具体实例实施例的描述并不意在将本公开限制于本文中所公开的特定形式,而是相反,本公开应当涵盖所附权利要求书限定的所有修改和同等物。

具体实施方式

控制器可以用于控制许多环境中的进程,例如,石油化工环境中的进程。在此类控制进程中,可以对环境施加某些上限和下限约束以在一组指定参数内维持操作。例如,可以对环境中的系统施加温度、压力和数量水平约束以努力维持稳态操作。例如,在某些环境中,由于安全、经济、进程控制或所属领域的技术人员已知的任何其它问题,可能需要在某些约束内维持操作。

现参考附图,示意性地说明具体实例实施例的细节。图中相同的元件将用相同的数字表示,并且类似的元件将用相同的数字加上不同的小写字母后缀表示。

对于本发明的一个或多个实施例,可以利用信息处理系统来实施一个或多个实施例。无论所使用的平台,此类实施例都可以在几乎任何类型的信息处理系统上实施。用于实施本文所描述的实施例中的一个或多个的此类信息处理系统硬件可以包含处理器,所述处理器被配置成执行存储于非暂时性计算机可读介质上的一个或多个指令序列、编程实例或代码。例如,如图1所示,信息处理系统100包含一个或多个中央处理单元(cpu)102、相关联的存储器104(例如,随机存取存储器(ram)、只读存储器(rom)、高速缓冲存储器、快闪存储器等)、存储装置106(例如,硬盘、固态存储器、高密度光盘驱动器或数字视频光盘(dvd)驱动器等光盘驱动器、快闪记忆棒等),以及当今的计算机典型的多种其它元件和功能(未图示)。cpu102可用以执行来自一个或多个模块的程序指令,其中所述程序指令存储于存储器装置中,例如存储器104或存储装置106或所属领域的普通技术人员已知的任何其它存储器。cpu102可被配置成执行本发明的一个或多个实施例所涵盖的应用程序118。cpu102可以是通用微处理器、微控制器、数字信号处理器、专用集成电路(asic)、现场可编程门阵列(fpga)、可编程逻辑装置、控制器、状态机、门控逻辑、离散硬件组件、人工神经网络,或所属领域的普通技术人员已知的可以根据本发明执行其它数据操纵计算的任何类似的合适硬件。信息处理系统100还可包含i/o接口108以用于发送和/或接收输入,例如来自键盘、鼠标或麦克风的输入。i/o接口108还可以接收信息,例如多维(例如,3d)地球物理数据、与来自任何一个或多个进程、系统或外部组件的一个或多个读数、设置、结果、变量、反馈(或所属领域的普通技术人员已知的任何其它类型的数据)相关的一个或多个值,包含与天然气液化相关的此类信息,或所属领域的普通技术人员已知的在系统中用于模型预测控制的任何其它信息。例如,在某些实施例中,i/o接口108可以从环境内的组件接收质量控制、水平、压力、温度或所属领域的普通技术人员已知的任何其它读数。此外,信息处理系统100可以包含输出装置,例如显示器114(例如,液晶显示器(lcd)、等离子显示器或阴极射线管(crt)监视器)。显示器114包括显示本发明的一个或多个实施例中的任一个所必要的任何类型的数据的必要元件。

信息处理系统100可通过网络接口连接110连接到网络116(例如,局域网(lan)、因特网等广域网(wan),或任何其它类似类型的网络)以接收本发明的任何一个或多个实施例所需要的来自传感器的数据、测量值、读数或所属领域的普通技术人员已知的任何其它数据。所属领域的技术人员将理解,存在许多不同类型的信息处理系统,并且前述输入和输出构件可以采用其它形式。一般来说,信息处理系统100至少包含实践本发明的实施例所必要的最少的处理、输入和/或输出装置,无论是硬件、软件还是其任何组合。

信息处理系统100的cpu102还可以执行应用程序118。应用程序118可以包含一个或多个处理器(未图示),其中处理器是指设计为执行先进进程控制(apc)的基于多变量模型的预测估计器或控制器(mpc)。cpu102可以执行针对许多功能的指令,包含i/o通信、变量和测量值验证、估计和预测、稳态优化,以及与应用程序118相关的控制移动计算。应用程序118可以含有其自身的估计功能,但是具有可用于与包含cpu102的其它处理单元连接和协作的参数。

在说明书中和在权利要求书中,术语‘操纵变量’(mv)用来指可通过应用程序118操纵的变量,且术语‘控制变量’(cv)用来指必须通过先进进程控制器保持在预定值(设定值)或在预定范围(设定范围)内的变量。术语‘干扰变量’(dv)用来指可以独立于控制器改变其值但是其效果包含于控制器模型中的变量。术语‘中间变量’用来指作为控制器模型的输出但是具有作为其它模型输出的输入的关系的变量。用语“变量集”用来指由应用程序的给定应用程序118使用的限定变量群组。给定应用程序118可以具有许多变量集且任何变量可以是变量集的一部分。然而,变量仅在变量集中出现一次。用语“优化变量”用来指变量或变量的函数的最大化或最小化,以及指将变量维持在预定值。术语‘最佳性能’用来指最接近给定情形下用户提供值(设定值/rto目标)或经济上最高收益/最低成本中更高优先级的一个。术语进程输出变量(pov)是指通过进程输入中的改变而改变其值的变量。术语最佳性能值(bpv)用来指将对应于指定cv界限值内的最佳性能的值,其中cv界限值是在可行性恢复之前的原始界限值,因为界限值的放宽被视为性能的下降。bpv值是静态计算的副产物。用语‘实时优化’用来指通过给定约束计算某一进程的最佳经济操作点的自动化进程。

应用程序118中的变量可基于其与进程的结构关系而进行进一步分类。进程输入可以分类为mv(将由控制器调整的独立进程设置)或分类为dv(将不由其应用程序的控制器调整的独立进程设置,以及不受mv中的改变影响的进程测量值)。pov可以包含cv、mv或iv中的任何一个或多个作为属性或所属领域的普通技术人员已知的任何其它属性。

应用程序mv可以分组为子系统以优化其处理。应用程序可以含有协调层,所述协调层管理每个个体子系统且确保子系统之间的适当协作。应用程序118计算可以包含静态优化和动态移动计算。静态优化,其中可以基于当前测量值、预测响应、优先化约束和指定(静态优化)经济函数来估计每个cv的稳态目标值。动态移动计算,其中基于响应调谐和计算出的目标值来确定每个控制器mv的当前移动和推估移动计划。

变量集提供用于显示和用于交易控制(例如,改变模式)的分组cv。经济函数用于限定控制器的具体稳态(或静态)优化目标,且确定符合cv全集和控制器模型这两者的每个cv的目标值。应用程序的模式是应用程序的控制器运行的方式,包含不在作用中、备用(暂存)和作用中(运转)。可针对操作者或用户创立特殊权限设置以限制对改变应用程序的模式的接入权。

操作者或用户应将请求的模式设置成作用中以供应用程序118执行估计或控制。操作者或用户可在准备作用中模式时或在需要短期干预应用程序的动作时将应用程序118置于备用状态。当应用程序118置于备用状态时,操作设置将保持在其当前请求的模式中。如果希望使控制器较长时段不起作用,那么具有特殊权限的操作者可以将控制器118置于不在作用中模式;这将自动地使应用程序的操作设置和经济函数返回到不在作用中。

用户可以是任何操作者、工程师、一个或多个信息处理系统100或所属领域的普通技术人员已知的任何其它用户。

此外,所属领域的技术人员将理解,前述信息处理系统100的一个或多个元件可以位于远程位置并且经由网络连接到一个或多个其它元件。此外,本发明的实施例可以在具有多个节点的分布式系统上实施,其中本发明的每个部分可以位于分布式系统内的不同节点上。例如,显示器114可以位于远离信息处理系统100的其它组件。信息处理系统100可以包括一个或多个客户端装置、服务器或其任何组合。

参考图2,总体以200示出了根据本公开的一个或多个实施例的最佳性能值。图2所示是两个cv的情况,其中标记cv1的轴线表示cv1的值且标记cv2的轴线表示cv2的值。如由标记cv1和cv2的方框所示,cv1和cv2的上限和下限形成矩形。静态模型函数由标记静态模型的实线表示。经济函数成本轮廓线由椭圆环表示,其中全局最优值在cv界限值之外。静态模型的静态目标是经济函数轮廓线与稳态线相切的点,并且由标记静态目标的实线圆表示。bpv是由标记最佳性能值的实线圆指示的最佳可实行经济成本点。经济成本椭圆轮廓线是表示相等成本值(例如,指定轮廓线上具有相同经济成本的任一点)的线。由于目标是试图最大限度地减少成本,因此方法寻找cv1-cv2空间中经济成本最小(收益最高)的点。这通过识别其中经济轮廓线与cv约束方框相切的点(在图2中的红色点)找到。此红色点是(cv1,cv2)值,并且因此cv1在此点处的值是cv1的最佳性能值。在以200示出的实例中,系统已经经历将约束推移至cv界限值之外的干扰,如由标记扰动约束的实线圆指示。可以计算bpv值作为静态计算的副产物。

参考图3,总体以300描绘了计算bpv值和使用bpv构造动态控制目标的流程图。在步骤302,针对cv指定可以包含设定值、界限值、经济函数的控制目标以及这些目标的相对优先级排序。在一个或多个实施例中,可以利用一个或多个cv。例如,如图2所示,可以利用两个cv,其中每个cv具有两个设定值。在步骤304和306,考虑指定的控制目标及其指定的优先级排序以及来自估计计算的干扰估计值来确定所有cv的bpv和静态目标。干扰可以是温度、质量控制、水平、数量的改变或所属领域的普通技术人员已知的任何其它干扰。干扰还可以由于进程模型不匹配而出现。对于给定环境可能出现一个或多个干扰。

随后,在步骤310,至少部分地基于与用户的所需动态响应速度相关的一个或多个用户规格确定动态调谐权重。由于检测到的干扰,在步骤312,确定bpv中的潜在调整以使得动态优化问题与静态目标相一致,因此在长期运行中动态控制解会聚至期望稳态。不一致通常是由静态控制问题中的控制目标的相对优先级排序引起,所述控制目标表示静态控制目标,其不同于就所有cv的相对响应速度而言指定的动态目标。通过借助后续问题的解必须等于计算出的静态解这一事实来计算bpv中的潜在调整(调和):

lsez=rse,lsiz≤rsi

其中ybpv表示所有cv值的bpv值,∈表示对bpv值的任何潜在调整,lsez=rse,lsiz≤rsi是表示mv和cv界限值的等式和不等式约束集,并且qt是对角矩阵,其中对角元素是根据针对所有cv值的期望动态响应速度的用户规格确定的动态调谐权重。应注意,z表示cv、mv和状态的堆叠矢量。如果以上问题的解等于计算出的静态解,那么关于潜在调整后的bpv值用公式(ybpv+∈)表示的动态控制问题将在长期运行中始终会聚至静态解,并且因此控制器所计算出的动态动作计划将与静态目标相一致。

获得对bvp的调整的问题陈述为:

min∈′qt∈

s.t.arg{min(y-(ybpv+∈))′qt(y-(ybpv+∈))|lsez=rse,lsiz≤rsi}=yt

此问题通过用其最优性条件替换内部问题而转换为简单的二次规划问题(qp)。

由于qt≥0,内部问题是凸二次问题,因此一阶最优性条件是必要且充分的。在一个实施例中,可以使用两类最优性条件。两个最优性条件是求解此问题的两种方式。使用法锥条件证明比使用karush-kuhn-tucker(kkt)条件更繁琐。因此,本公开限于kkt条件。

内部问题的拉格朗日算符(langrangian)是:

对应的kkt条件是:

λi≥0

λ′i(lsiz-rsi)=0

因此外部优化变为:

此问题的解是使动态控制目标与稳态目标相一致所需的bpv中的最小调整。将此问题的解表示为可以例如通过对潜在调整后的bpv误差进行惩罚而关于用公式表示动态控制目标。

在步骤314,利用调整后的bpv创建与稳态目标相一致的动态控制目标。在步骤316,以脱离潜在调整后的bpv值测量误差为代价对动态控制优化求解,从而计算动作的mv计划。

bpv的调整后的值一般不具有任何工程意义。实际上,bpv的调整后的值确保相对于原始bpv对cv误差应用适当的惩罚值,使得在长期运行中cv维持在期望目标,如图4所示。在图4中,虚线轮廓线表示对应于动态调谐权重的成本轮廓线。由于动态调谐权重不同于静态权重和经济函数,因此集中围绕bpv值的动态控制问题将控制器驱动到由图4所示的交叉所标示的静态值(例如,动态控制阶段成本最低的稳态操作点)。由于动态权重一般不表示稳态控制目标(例如,优先级排序),因此相对于动态阶段成本最佳的此稳态值不同于通过静态控制问题计算出的静态解。因此,对bpv值作出最小的所需调整,使得当bpv值移位时,动态阶段成本轮廓线变得与稳态模型线在与期望静态解相同的点处相切,从而使静态和动态解一致。

图4还示出干扰情境,其中在没有干扰的情况下,bpv位于稳态线(绿色虚线)上,因此bpv是可行的(并且因此不需要进行bpv调整)。当干扰命中系统时,其将如图4所示的静态模型线移位到新位置,其中bpv不再位于静态模型上,并且由于静态和动态控制目标规格的差异,如先前所解释,bpv需要调整。因此,给定动态调谐权重、稳态目标和bpv的值,需要获得bvp中的调整使得bvp与目标相一致。使用以上函数,能确定调整后的bpv值,其确保相对于原始bpv对cv误差应用适当的惩罚值,使得在长期运行中cv维持在期望目标。

虽然参考各种实施方案和开发利用描述实施例,但应理解,这些实施例是说明性的,且本发明的主题的范围不限于这些实施例。可能存在许多变化、修改、添加和改进。

针对本文中描述为单个实例的组件、操作或结构可以提供多个实例。一般来说,在示范性配置中呈现为分开的组件的结构和功能性可以实施为组合结构或组件。类似地,呈现为单个组件的结构和功能性可实施为分开的组件。这些和其它变化、修改、添加和改进可属于本发明主题的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1