主要内容gydF4y2Ba

约束执行控制设计gydF4y2Ba

一些控制应用程序需要控制器选择控制行动,这样植物状态不违反某些关键约束。在许多情况下,约束是对植物状态控制器不直接控制。相反,你定义一个gydF4y2Ba约束函数gydF4y2Ba定义约束的控制动作信号。这个约束函数可以是一个或一个已知的关系,必须从实验数据中学习。gydF4y2Ba

约束执行块gydF4y2Ba

的gydF4y2Ba约束执法gydF4y2Ba块,这就需要优化工具箱™软件,计算修改后的控制动作接近指定控制行动受约束和行动。块使用二次规划(QP)解算器找到控制行动gydF4y2BaugydF4y2Ba最小化函数gydF4y2Ba |gydF4y2Ba ugydF4y2Ba −gydF4y2Ba ugydF4y2Ba 0gydF4y2Ba |gydF4y2Ba 2gydF4y2Ba 在真正的时间。在这里,gydF4y2BaugydF4y2Ba0gydF4y2Ba是修改的控制器的控制作用。gydF4y2Ba

解算器适用于以下约束优化问题。gydF4y2Ba

fgydF4y2Ba xgydF4y2Ba +gydF4y2Ba ggydF4y2Ba xgydF4y2Ba ugydF4y2Ba ≤gydF4y2Ba cgydF4y2Ba ugydF4y2Ba 最小值gydF4y2Ba ≤gydF4y2Ba ugydF4y2Ba ≤gydF4y2Ba ugydF4y2Ba 马克斯gydF4y2Ba

在这里:gydF4y2Ba

  • fgydF4y2BaxgydF4y2Ba和gydF4y2BaggydF4y2BaxgydF4y2Ba是约束函数的系数依赖于植物的状态吗gydF4y2BaxgydF4y2Ba。gydF4y2Ba

  • cgydF4y2Ba是一个开往约束函数。gydF4y2Ba

  • ugydF4y2Ba最小值gydF4y2Ba是一个下界的控制作用。gydF4y2Ba

  • ugydF4y2Ba马克斯gydF4y2Ba是一个上界控制动作。gydF4y2Ba

自gydF4y2Ba约束执法gydF4y2Ba块修改原来的控制动作,最后闭环系统可能不会达到最初的设计目标控制器,如稳定的利润。gydF4y2Ba

你必须确认控制器和相结合gydF4y2Ba约束执法gydF4y2Ba块满足您原来的控制目标。如果系统不符合原来的目标,考虑更新原来的控制器设计。例如,您可以添加额外的增益和相位的利润来弥补任何潜在的性能下降。gydF4y2Ba

约束函数系数gydF4y2Ba

根据您的应用程序中,系数gydF4y2BafgydF4y2BaxgydF4y2Ba和gydF4y2BaggydF4y2BaxgydF4y2Ba约束函数可以是线性的或非线性的功能植物状态和可以是已知或未知。gydF4y2Ba

为例,利用已知的非线性约束函数系数,明白了gydF4y2Ba强制约束的PID控制器gydF4y2Ba。这个示例约束函数来自植物动力学。gydF4y2Ba

当你无法直接从植物中获得约束函数,你必须学习系数使用输入/输出实验数据或模拟。学习这样的约束,您可以创建一个函数的估计值和调优近似者再现input-to-output仿真或实验数据的映射。gydF4y2Ba

学习线性系数函数,你可以找到一个最小二乘解的数据。使用这种方法的例子,看到gydF4y2Ba火车RL代理自适应巡航控制与约束执行gydF4y2Ba和gydF4y2Ba火车RL代理车道保持辅助约束执行gydF4y2Ba。gydF4y2Ba

对于非线性系数函数,您必须调整一个非线性函数的估计值。这种近似者的例子包括:gydF4y2Ba

  • 深层神经网络(需要深度学习工具箱™软件)gydF4y2Ba

  • 非线性确定系统模型(需要系统辨识工具箱™软件)gydF4y2Ba

  • 模糊推理系统(需要模糊逻辑工具箱™软件)gydF4y2Ba

的例子学习非线性系数函数通过训练神经网络深处,看到的gydF4y2Ba学习和限制申请PID控制器gydF4y2Ba和gydF4y2Ba强化学习培训代理约束执行gydF4y2Ba。gydF4y2Ba

另请参阅gydF4y2Ba

块gydF4y2Ba

相关的话题gydF4y2Ba