没有设计是没有不确定性或自然变化的。例如,如何使用设计?它将如何应对环境因素或生产或操作流程的变化?这些类型的不确定性加剧了创建可靠和健壮的设计的挑战,这些设计随着时间的推移按照预期运行,并且对制造、操作或环境因素的变化不敏感。
本文以某汽车悬架系统为例,介绍了MATLAB中的工具和技术®,统计和机器学习工具箱™、优化工具箱™该软件允许您扩展传统的设计优化方法,以考虑设计中的不确定性,提高质量,减少原型测试和整体开发工作。
我们首先设计了一个悬挂系统,当汽车行驶在颠簸的道路上时,最大限度地减少前排和后排乘客所经历的力量。然后,我们修改设计,以考虑悬挂系统的可靠性;我们希望确保悬挂系统能够在至少10万英里的续航里程内表现良好。我们通过验证设计对货物和乘客质量的变化具有弹性或不受影响来结束我们的分析。
执行传统设计优化
我们的S万博1manbetximulink悬挂系统模型(图1)有两个输入-碰撞开始和结束高度-以及八个可调参数。我们可以修改定义前后悬挂系统刚度和阻尼率的四个参数:kf, kr, cf, cr。其余参数是通过将乘客和货物加载到车辆上定义的,不被认为是设计参数。
模型输出的是关于重心的角加速度(thetadotddot,IMAGE)和垂直加速度(zdotdot,IMAGE)。图2说明了我们的初始设计对道路上模拟颠簸的模型响应。
我们的目标是设置参数kf, kr, cf和cr,以最大限度地减少前排和后排乘客在颠簸的道路上行驶时的不适。我们用加速度来代表乘客的不适。设计优化问题可以总结如下:
摘要目的: | 最小化峰值和总加速度 |
设计变量: | 前/后弹簧/减震器设计(kr, kr, cf, cr) |
设计约束: | 汽车静止时是水平的。 悬挂系统的固有振动频率保持在2hz以下。 阻尼比保持在0.3 ~ 0.5之间。 |
这个问题在响应(图2)和设计约束方面都是非线性的。为了求解该问题,需要一个非线性优化求解器。优化工具箱求解器fmincon
是专门为这类问题设计的。
我们首先将优化问题转换为被接受的形式fmincon
.下表总结了问题的提法fmincon
用MATLAB语法定义悬架问题。
|
悬浮问题(MATLAB M-code) |
|
---|---|---|
客观的 |
\ (\ min_ {x} f (x) \) |
|
设计变量 |
\ \ (x) |
X = [kf, cf, kr, cr] |
非线性约束 |
\(c(x) \leq 0\) |
|
线性约束条件 |
\(A \cdot x \leq b\) |
A = [];% none用于此问题 |
绑定约束 |
\(lb \leq x \leq ub\) |
Lb = [10000;100;10000;100); |
设计目标定义为M-file函数myCostFcn
它接受两个输入:设计向量x
而且simParms
(图3)。x
包含悬架系统的设计变量。simParms
是传递Simulink模型的其余定义参数(Mb, Lf, Lr和Iyy)的结构。万博1manbetxmyCostFcn
定义的悬挂模型x
而且simParms
并返回乘客不适的测量值,该测量值为峰值和总加速度的加权平均值,如图3所示。乘客的不适感是标准化的,所以我们的初始设计的不适感等级是1。
在M-file函数中定义了非线性约束mynonlcon
返回c(x)和ceq(x)的值。线性约束和绑定约束如表中所示定义为常系数矩阵(A, Aeq)或向量(b, beq, lb, ub)。
图3显示了使用优化工具图形用户界面定义和解决的问题(optimtool
),它简化了定义优化问题、选择适当的求解器、设置求解器选项和运行求解器的任务。
使用传统的优化方法,我们发现最优设计是其中之一x
= [kf, cf, kr, cr] =[13333, 2225, 10000, 1927]。
图4显示了一个标准的“优化工具箱”解决方案进度图。上面的图显示了当前求解器迭代的设计变量的当前值,在迭代11中是最终解。下图显示了求解器迭代的目标函数值(乘客相对于初始设计的不适程度)。该图显示了我们的初始设计(迭代0)的不适水平为1,而在11次迭代后发现的优化设计的不适水平为0.46——比初始设计降低了54%。
确保悬挂系统可靠性
我们的优化设计满足了设计约束条件,但它是可靠的设计吗?在给定的时间段内,它会像预期的那样运行吗?我们希望确保我们的悬架设计能够在至少10万英里的续航里程中发挥应有的作用。
为了评估悬架的可靠性,我们使用类似悬架系统设计的历史维护数据(图5)。横轴表示驾驶时间,以英里为单位。纵轴显示有多少悬挂系统的性能下降,需要维修或服务。不同的数据集适用于不同阻尼比的悬架系统。阻尼比定义为
\[\eta = \frac{c}{2\sqrt{kM}}\]
在哪里c为阻尼系数(cf或cr),k弹簧刚度(kf或kr),和米是前悬架或后悬架所支持的质量量。万博1manbetx阻尼比是衡量悬架系统刚度的指标。
我们使用分布拟合工具(dfittool)将威布尔分布拟合到历史数据。每一个适合提供了一个概率模型,我们可以用来预测我们的悬挂系统的可靠性作为里程数的函数。总的来说,三个威布尔拟合让我们预测阻尼比如何影响悬挂系统的可靠性作为行驶里程的函数。例如,之前发现的优化设计前后悬架的阻尼比为0.5。使用图5中的图,我们可以预期在运行10万英里后,我们的设计将有88%的原始设计无需维修即可运行。相反,12%的原始设计在10万英里前需要维修。
我们想改进我们的设计使它在10万英里的运行中有90%的存活率。我们在传统的优化问题中加入了可靠性约束mynonlcon
.
Plimit = 0.90;减震器失效的最大概率%A = @(dampRatio) -1.0129e+005.*dampRatio。-28805 ^ 2。*dampRatio + 2.1831e+005;B = @(dampRatio) 1.6865.*dampRatio。-1.8534 ^ 2。*dampRatio + 4.1507;Ps = @(英里,dampRatio) 1 - wblcdf(英里,A(dampRatio), B(dampRatio));向现有约束添加不平等约束C = [C;%保持原始约束Plimit- Ps(cdf,哩数);…%前端可靠性约束Plimit- Ps(cdr,里程)];%后方可靠性约束
我们像使用前一样解决优化问题optimtool
.图6总结的结果表明,包括可靠性约束改变了cf和cr的设计值,并导致略高的不适水平。基于可靠性的设计仍然优于初始设计。
优化鲁棒性
我们的设计现在是可靠的——它满足我们的生活和设计目标——但它可能不是健壮的。悬架系统设计的运行受到乘客或货物负荷质量分布变化的影响。为了健壮,设计必须对质量分布的变化不敏感。
为了解释在我们的设计中质量载荷的分布,我们使用蒙特卡罗仿真,在给定的设计中,对大范围的质量载荷反复运行Simulink模型。万博1manbetx蒙特卡罗模拟将导致模型输出具有给定设计变量集的值分布。因此,我们优化问题的目标是最小化乘客不适感的均值和标准差。
我们替换了单个模拟调用myCostFcn
用蒙特卡罗模拟和优化设计值集,使总乘客不适感的均值和标准差最小化。我们将假设乘客和行李箱载荷的质量分布遵循瑞利分布,并随机抽样分布来定义条件,以测试我们的设计性能。
nRuns = 10000;front = 40 + raylrnd(40, nRuns, 1);前排乘客百分比-成人(公斤)back = 1.36 + raylrnd(40, nRuns, 1);后排乘客-包括儿童trunk = raylrnd(10, nRuns, 1);行李附加重量百分比(公斤)
根据汽车质量分布的变化,调整总质量、重心和转动惯量。
mcMb = Mb +前+后+主干;总质量%mcCm =(正面。*rf - back。*rr - trunk.*rt)./mcMb;%更新质心调整惯性矩mcIyy = Iyy + front.*rf。^2 + back.*rr。^2 + trunk.*rt。^ 2 - mcMb。* mcCm。^ 2;
优化问题,包括可靠性约束,在解决前optimtool
.结果如图7所示。稳健设计的平均不适水平高于基于可靠性的设计,导致设计具有更高的阻尼系数值。
图7中报告的不适度量是健壮性设计案例的平均值。图8显示了一个散点矩阵图,总结了在稳健设计案例中,由于不同质量载荷导致的不适感变化。
对角线表示轴上列出的变量的直方图。对角线上方和下方的图表对于快速发现各变量之间的趋势非常有用。前面、后面和主干的直方图表示模拟输入的分布。不适感直方图显示它集中在值0.47附近,近似正态分布。对角线以下的图没有显示出对干线装载水平的不适的强烈趋势,表明我们的设计对该参数的变化具有鲁棒性。有一个明确的趋势与不适的前负荷有关。前载荷近似线性,最小值为0.43,最大值为0.52。在背负荷和不适之间也可以看到一个趋势,但从这个图很难确定它是否是线性的。从这张图中,很难确定我们的设计是否具有反加载的鲁棒性。
使用不适结果的累积概率图(图9),我们估计在90%的情况下,乘客所经历的不适将低于初始设计的50%。我们还可以看到,我们的新设计几乎100%地保持了低于0.52的标准化不适水平。因此,我们得出的结论是,我们的优化设计总体上对负载的预期变化具有鲁棒性,并且将比我们的初始设计表现得更好。
设计的权衡
本文展示了如何使用MATLAB、统计和机器学习工具箱以及优化工具箱来捕获基于仿真的设计问题中的不确定性,以找到可靠和稳健的最佳悬架设计。
我们首先展示了如何将设计问题重新表述为优化问题,从而产生比初始设计执行得更好的设计。然后,我们修改了优化问题,以包括可靠性约束。结果表明,为了满足我们的可靠性目标,需要在性能上进行权衡。
我们完成了我们的分析,包括不确定性,我们将期望看到在汽车的质量负荷。结果表明,如果我们考虑了操作中的不确定性,并量化了性能的预期可变性,我们就得到了不同的设计。最终的设计牺牲了性能,以保持可靠性和健壮性。