人在仿真软件金宝app

金宝appSimulink &基于模型的设计

优化超环轨道

本周,马特·布劳尔是回来描述的进一步分析了吗hyperloop运输概念

世界不是平坦的

我们以前出版过二维分析基于横向加速度极限的超回路路线。这次我看了问题的另一个方面:高程.这将完全完成所需的输入数据模拟Hyperloop

我使用优化来确定最佳的立面轮廓,结合沿途的柱子和隧道86公里隧道,最长的连续隧道约2公里长。这一结果大约是隧道开挖量的三倍α设计文档.当然,这一结论受到用于优化支柱高度和垂直重力的方法的严重影响。

推导出超级高铁的高程剖面推导出超级高铁的高程剖面

下面是我如何得出结果的。

假设和配方

我首先假设二维路径是固定的。这种假设使得高程成为一维问题,比同时处理三维问题要简单得多。然而,这个问题仍然不是微不足道的。我决定用优化工具箱为了搬运重物。

根据我的经验,有4个关键元素能够指导优化技术的成功使用:

  • 数据的公式
  • 成本函数
  • 优化例程配置
  • 初步猜测

这些元素的正确组合可以非常有效地解决复杂问题。我将简要介绍如何设置这些元素来解决此问题。

待优化的数据

我为优化数据选择了一个简单的公式。我在路线上每30米使用一个柱高/深度矢量。我发现为了保持优化问题的可操作性,我需要将路线分成12个子部分。收敛时间似乎随着数据集的增大而渐近增加。

定义成本函数

要执行数值优化,必须对解决方案进行量化评估。然后,可以使用优化工具箱最小化此成本函数,以收敛到最佳解决方案。我选择将两个要素纳入成本函数;(1) 由于管道高度/深度而产生的施工成本和(2)基于垂直加速度的乘客舒适度。我创建了下表,以量化路线上每个点的这些成本要素。

建筑成本和乘客舒适度的成本表建筑成本和乘客舒适度的成本表

下面的公式用于得到完整路径的最终值。我可以通过调整来影响乘客舒适度和施工成本的相对优先级wConstwComf

建筑成本和乘客舒适度的成本函数

配置优化例程

为了计算优化数据的成本函数,我需要额外的数据,比如地面高程。我能够将这些数据传递给我的成本函数elevOpt通过创建下面的函数句柄。这个声明中定义x作为优化数据,但允许z_dist(平移距离),兹埃列夫(地面高程)z_水平(车辆速度)也作为参数传递。

%创建用于传递附加数据的函数句柄handle_trajOpt=@(x)elevOpt(x,z_dist,z_elev,z_vel);

我尝试了几种不同的优化算法,并使用fminunc.我还必须增加最大迭代和功能评估,以确保我得到一个适当的解决方案。

%设置选项选项=最佳选项(@fminunc,“算法”,“拟牛顿”,...“显示”,“国际热核实验堆”,“麦克斯特”, 5000,“PlotFcns”{@optimplotfval, @plotElevOpt},...“MaxFunEvals”1 e7);

最初的猜测

我开始尝试两个不同的起点进行调查:离地高度恒定为3米,高度恒定为绝对平坦的轨迹。对轨迹的初始猜测如何影响优化速度和最终结果,这很有趣。我能够想象结果是如何形成的自定义绘图功能。您可以在上面的代码中看到该功能,绘图仪,被认为是绘图仪优化选项中的参数。

这里有两个均匀和扁平种子的例子。为了保持它们的趣味性,这些绘图速度提高了约5倍。

[x,~,~,~]=fminunc(句柄_trajOpt,x0,选项);

以下是从地面以上3m高度开始的优化过程:

均匀高度初始猜测优化均匀高度初始猜测优化

现在从平坦的恒定高程开始:

具有平坦初始猜测的优化具有平坦初始猜测的优化

对于一些路段,这两种方法的混合使用效果最好适合函数的曲线拟合工具箱在恒定高度的轨迹上以一个更平滑的曲线作为初始猜测。该剖面基本遵循地面高程,但没有垂直加速度峰值过大。对于更平坦的部分,这个最初的猜测非常接近最终的解决方案。

现在轮到你了

你将如何确定最优的超级高铁路线?请留下留言让我们知道这里的评论

|

评论

要留下评论,请点击在这里登录到您的MathWorks帐户或创建一个新帐户。