来自系列:了解模型预测控制
Mathworks Melda Ulusoy
要使用MPC控制器成功控制系统,您需要仔细选择其设计参数。该视频提供了选择控制器采样时间,预测和控制视野以及约束和权重的建议。
在这个视频中,我们将讨论MPC的设计参数。为这些参数选择合适的值是很重要的,因为它们不仅影响控制器的性能,而且还影响MPC算法的计算复杂度,MPC算法在每个时间步长的在线优化问题。在这里,我们将为您提供一些关于如何选择控制器样本时间、预测和控制范围、约束条件和权重的建议。通过选择采样时间,我们确定控制器执行控制算法的速率。如果它太大,当干扰进来时,控制器将不能对干扰做出足够快的反应。相反,如果采样时间过小,控制器对扰动和设定值变化的反应会快得多,但这导致了过多的计算负载。为了在性能和计算工作量之间找到正确的平衡,建议在开环系统响应的上升时间内拟合10到20个样本。
正如我们之前讨论的那样,在每次步骤中,MPC控制器都使预测到未来的工厂输出,并且优化器找到最佳的控制输入序列,从而尽可能接近设定点驱动预测的工厂输出。预测的未来时间步骤的数量称为预测地平线,并显示了控制器预测到未来的距离。如果太短会发生什么?想到以下例子。在50英里/小时的同时,你知道如果你按下制动踏板,它会把你的车停止5秒。如果您的预测视野是2秒,当您看到交通灯时,将刹车太晚将太晚。在通过红绿灯后,汽车只能停止。因此,我们应该选择一个预测地平线,涵盖系统的重要动态。我们为什么不选择更长的预测视野,然后?说你已经预测了你的速度远远进入未来,以便按时到达目的地。 Unexpected things can happen, such as boxes falling from the back of a truck, pedestrians crossing the road, or a change in the road profile; these all may affect your speed and you may need to throw away a significant part of your planning, wasting your computations. Assuming the sample time is chosen based on what we’ve discussed before, the recommendation for choosing the prediction horizon is to have 20 to 30 samples covering the open-loop transient system response.
另一个设计参数是控制地平线。如果这是导致该预测工厂输出的未来控制动作的集合,则控制时间步骤M的控制次数称为控制范围。其余输入保持恒定。控制地平线中的每个控制移动可以被认为是优化器需要计算的可自由变量。因此,控制地平线越小,计算越少。为什么我们总是选择1的控制范围,然后?我们可以,但它可能不会给我们最好的机动。通过增加控制地平线,我们可以获得更好的预测,但以提高复杂性的成本。我们甚至可以选择使控制地平线与预测视野相同。但是,注意,通常只有第一对照移动对预测的输出行为具有显着影响,而剩余的移动仅具有轻微效果。 Therefore, choosing a really large control horizon only increases computational complexity. A good rule of thumb for choosing the control horizon is setting it to 10 to 20% of the prediction horizon and having minimum 2-3 steps.
MPC可以包含对输入、输入变化率和输出的约束。这些约束可以是软约束也可以是硬约束。硬约束不能被违背,而软约束可以被违背。我们假设MPC控制器通过调节油门踏板来控制汽车的速度。由于油门踏板可以移动多少是有物理限制的,我们希望有一个严格的限制,以便油门踏板的位置保持在这个范围内。我们可能还想强制速度保持在特定值之间。然而,同时对输入和输出施加硬约束并不是一个好主意,因为这些约束可能会相互冲突,导致优化问题的解不可行。这里有一个场景来演示这种情况。假设汽车在高速公路上以每小时50英里的速度行驶,限速如图所示。当汽车开始爬山时,它的速度就会下降。 The controller will apply more throttle to increase the speed. But due to the heavy load on top of the car, the speed will keep decreasing even though the controller applies full throttle. So, if the speed constraint is hard, the optimizer won’t be able to find a feasible solution that meets both input and output constraints. However, if the speed constraint is soft, the controller will allow violating it until the car overcomes the hill and the conflict won’t occur. Note that to keep the violation of the soft constraint small, it is being minimized by the optimization problem. The recommendation is to set output constraints as soft and avoid having hard constraints both on the inputs and the rate of change of the inputs.
我们在生活中有多个目标。有些人可能在睡觉、吃饭、和朋友出去玩、赚钱。你将如何管理你的时间来完成所有这些目标?你可以分配权重。例如,如果对你来说,睡觉比吃饭更重要,那么你就会把睡觉看得比吃饭重。同样,MPC也有多个目标。我们希望输出尽可能接近它们的设定值,但同时我们希望有平稳的控制动作,以避免激进的控制机动。在这些相互竞争的目标之间实现平衡性能的方法是权衡相对于彼此的输入率和输出。我们不仅要权衡这两个组之间的相对权重,而且还要调整组内的相对权重。例如,在这个2x2系统中,如果对第一个输出执行参考跟踪比对第二个输出执行参考跟踪更重要,我们就为第一个输出分配一个更大的权值,并且输出之间的比值大于1。
在此视频中,我们解释了用于设计MPC控制器的需要选择的参数。有关更多信息,您可以查看Bemporad教授的视频,了解如何设计模型预测控制器和视频描述中给出的链接。在下一个视频中,我们将讨论在植物或约束中处理非线性时可以使用的方法和成本函数。
你也可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。