APP下载

基于AI的桥梁自动布跨及三维可视化技术研究

2023-09-27杨璟林周清华韩广晖

铁道标准设计 2023年10期

杨璟林,周清华,宋 浩,韩广晖,李 纯

(中铁工程设计咨询集团有限公司,北京 100055)

引言

为减少铁路建设对环境的影响,桥梁在新建铁路中所占比重越来越大,设计大量采用“以桥代路”[1]。其中,桥梁布跨是铁路工程设计的重要一环。传统的桥梁布跨流程为设计人员参照选定的线路位置,依据规范要求和设计经验,先选择控制性工点进行连续梁等特殊孔跨布置,满足控制性工点跨越要求之后,再选择常规简支梁进行局部填充设计[2]。整个流程费时费力,自动化水平低,且容易产生“碎跨”,难以实现桥跨的最优布置。近年来,随着人工智能技术的发展,AI被越来越多地应用到土木工程领域[3],目前在结构健康监测、高层结构设计、施工安全等领域已取得了大量研究成果[4],但针对桥梁布跨设计的AI应用还有待进一步研究[5]。

同时,随着数字化技术发展[6],虚拟工程交付成为三维设计持续发展的最终目标,以往的二维图纸设计将逐渐被工程信息模型所替代[7]。行业内学者在利用参数化建模设计方面进行了大量研究。荆倩婧通过直接输入参数建立路基标准横断面,实现了路基标准横断面的快速构建[8];王玺翔针对标准化的中小跨径桥梁,将构件参数化,利用拼接算法生成桥梁模型[9];陈明采用基于桥梁设计知识的建模方法,提高建模效率[10];高应振提出了基于参数化的有限元建模思想,从而完成桥梁结构模型的建立[11];佘宇深在对Revit软件中族的概念进行深入分析和总结的基础上,研究了桥梁构件族参数化设计的原理,并提出了一套合理的桥梁族参数化创建的设计流程[12]。但是利用三维可视化技术在虚拟地理环境下进行自动布跨设计的研究尚未成熟[13]。

因此,本文提出一种基于AI的桥梁自动布跨及三维可视化方法,并建立桥梁构件资源库,在设计智能布跨算法研究基础上,结合参数化建模方法在三维地理信息环境下实现桥梁孔跨自动布置及桥梁三维模型的快速建立,更加直观地表达设计方案。

1 基于AI的桥梁自动布跨研究

1.1 桥梁布跨原则

铁路桥梁的孔跨布置是指在铁路桥梁设计中确定桥梁跨度(孔跨)组合和桥墩(桥台)位置的工作[13]。孔跨布置方案的选择对桥梁结构稳定性、承载能力和经济性等方面有重要影响。线路要求、地理和地质条件、荷载条件、施工条件、桥梁经济性等都影响桥梁孔跨布置方案的选择。根据相关规范及设计经验,桥梁孔跨布置应考虑以下布置原则。

(1)跨径选择原则:根据设计要求和实际情况,选择合适的跨度范围。考虑列车荷载、地形地质条件、施工工艺等因素,确定合适的跨度。

(2)施工可行性原则:孔跨布置方案应考虑施工的可行性和安全性,便于桥梁施工和调整。

(3)经济性原则:孔跨布置应考虑经济性,尽量降低建设和维护成本,提高桥梁的经济效益。

(4)环境保护原则:孔跨布置应尽量减少对环境的影响,包括生态环境、水文水资源和土壤侵蚀等。

1.2 强化学习算法

强化学习(Reinforcement Learning)是一种机器学习方法[14],旨在让智能体(Agent)通过与环境的交互学习做出正确决策以最大化累积奖励[15]。该方法模拟了人类学习的过程,通过试错和与环境的交互来获取经验并进行决策。在强化学习中[16],智能体通过观察环境状态,执行特定的动作,接收环境给予的奖励或惩罚,以及进一步更新其策略来优化决策过程[17]。这种学习过程基于奖励信号的反馈,智能体通过不断尝试和学习,逐步改进策略,使其在特定环境中达到最优的行为。强化学习算法通常包括以下要素。

状态(State):描述智能体在环境中所处的状态。状态可以是离散的(如棋盘上的位置)或连续的(如机器人的传感器读数)。

动作(Action):智能体基于当前状态所采取的行为或决策。动作可以是离散的(如向左或向右移动)或连续的(如施加特定的力或速度)。

奖励(Reward):环境给予智能体的反馈信号,用于评估智能体的行为。奖励可以是立即的(即时奖励)也可以是延迟的(累积奖励)。

策略(Policy):智能体根据当前状态选择动作的策略。策略可以是确定性的(如根据规则选择最佳动作)或概率性的(如根据概率分布选择动作)。

值函数(Value Function):用于评估状态或状态-动作对的价值,指示智能体在某个状态或采取某个动作后预期获得的累积奖励。

Q值函数(Q-Value Function):用于评估在给定状态下采取某个动作的价值,指示智能体在当前状态下采取某个动作后预期获得的累积奖励。

Q-learning算法是基于值函数的强化学习算法,通过迭代更新Q值函数,使智能体能够选择具有最大Q值的动作来更新策略。它是一种无模型学习方法,它不需要对环境的模型进行先验知识建模。这意味着Q-learning可以应用于未知和复杂的环境中,只需要通过与环境的交互来学习最优策略。其具有离线学习能力,可以从先前经验中学习,通过更新Q值改进策略;在满足一定条件时具有良好的收敛性和最优性,可以应对不同环境和任务的变化。在桥梁设计过程中,孔跨布置工作本身就是在一定条件下对设计方案进行优化的过程,应用Q-learning算法可以很好地满足桥梁孔跨布置工作要求。因此,本文选择Q-Learning算法进行桥梁智能布跨工作的研究。

1.3 桥梁孔跨自动布置算法设计

桥梁依据线路进行设计具有连续性。在桥梁孔跨布置算法设计过程中,对线路、地形等连续性因素要统筹考虑[18]。智能体的状态可以是离散的[19],因此在定义状态时,可将线路、地形等环境因素做离散化处理,在满足工程设计要求的同时,减少Q值存储所需空间。

动作空间是智能体可选择动作的集合,桥梁孔跨布置多采用跨度为24,32 m等的标准梁型,因此,智能体可选动作空间应尽量采用工程设计常用标准跨度,减少碎跨及非标准跨度梁型的出现。

奖励函数应结合桥梁所处环境信息进行设计。当智能体所选择布跨方案适应线路曲线和地形起伏条件时,给予智能体正向奖励,反之则给予负向奖励。

选择ε-Greedy策略作为Q-learning算法的动作策略。在每个时间步,智能体以概率ε选择一个随机动作,以便探索未知状态空间(探索阶段),而以概率1-ε选择具有最大Q值的动作(利用阶段)。

综合以上因素,桥梁布跨计算流程如下。

(1)设定Q值表初始值,初始化贪心系数、学习效率、折扣因子并设置收敛条件。

(2)当前状态设置为初始状态s0,在动作策略中选择动作。

(3)执行动作智能体后,计算得到新的状态和即时奖赏R。

(5)根据Q值表更新公式,见式(1),计算当前步骤的函数

Qt(s,a)=Qt-1(s,a)+α(R(s,a)+

(1)

(6)判断当前状态是否为最终状态,如果是则返回起始状态,训练次数+1,并进行收敛条件判断,如果不是则返回步骤(2)进行重复训练。

(7)计算结束。

2 桥梁布跨方案三维可视化方法

2.1 三维地理场景构建

在三维地理场景下,桥梁的三维模型呈现在一个虚拟仿真的三维地球上[20],模型在构建过程中需要与三维场景中的地形地貌进行交互计算,如桥墩高度是通过线路中心线和地面之间的投影高度计算所得。

三维场景构建的方法有两种[21],一种是利用数字三维地形和二维影像叠加的方式,渲染出具有真实纹理的三维地球表面;另一种方法是利用倾斜影像数据生成的实景三维模型作为三维场景。

前者数据获取相对容易,尤其是全球范围的地形和影像数据,可供构建各种地理位置的三维场景,WEB引擎支持STK高精度地形数据加载,提供了全球范围的STK在线地形数据服务,也支持加载基于DEM的地形瓦片数据[22]。三维地形服务[23]中加载了高程数据后,可以表现出地形高低起伏,为了提高三维场景的真实性,需要在地形表面映射纹理。纹理数据可以由符合OGC标准的WMS、WMTS、WCS等影像服务以及常用的在线地图服务来提供,包括天地图、Bing Maps、OpenStreetMap等[24]。但是数字三维地形和二维影像的数据源可能不一致,存在数据质量和精度的差异,可能会影响最终渲染结果的一致性,由于二维影像是从特定视角拍摄,叠加后的三维场景在其他视角下可能会显得不真实或缺乏细节。

后者是近年来发展迅速的一项高新技术,冲破了传统的摄影测量只能从下视影像提取信息的局限性,利用多台传感器分别从一个垂直角度和四个倾斜角度进行拍摄,将采集到的多视影像进行处理得到实景三维模型。由于倾斜摄影技术对同一地物获取了多种角度的影像数据,生成的模型更加真实可靠,但是倾斜影像数据的获取相对较为复杂和昂贵,数据后处理时间长。具体应用场景和需求会影响选择合适的方法,有时两种方法也可以结合使用,以平衡可视化效果和实际可行性。

2.2 桥梁参数化建模表达

桥梁三维模型的主体由梁身和桥墩组成,不同构件按照空间位置的拓扑关系连接而成。梁身可以采用参数化建模的方式,由二维截面沿中心线放样生成模型。桥墩同样可以采用参数化建模的方法,不同的是,桥墩是沿垂直地面方向进行放样建模。

三维模型建模过程如下。

(1)读取线路数据库,通过计算得到每座桥梁的三维设计中心线L。

(2)根据结构参数建立梁身二维截面图,如图1所示,截面主要参数有底板宽度OA1、腹板水平宽度OA2、翼缘宽度OA3、底板高度OB1、翼缘高度OB2。拉伸参数有梁长S。

图1 梁身截面参数Fig.1 Beam section parameters

(3)以O点作为梁身的坐标中心,利用二维截面,沿设计中心线L放样生成三维模型。

(4)沿中心线按一定的间距采样,得到桥墩布孔点位,依次计算桥墩点位在地形面上的投影点,布孔点与地面投影点相连生成桥墩中心线的集合H=[H1,H2,H3,…]。

(5)建立桥墩的二维截面,如图2所示,截面参数有墩直线宽度MC1,墩半径MC2,拉伸参数有墩高Hn。

图2 桥墩截面参数Fig.2 Pier section parameters

(6)以M点作为桥墩的坐标中心,沿桥墩中心线Hn放样生成单个桥墩模型。遍历所有桥墩中心线,逐个生成所有桥墩模型。

2.3 可视化策略

由于三维地理数据和桥梁三维模型数据量大,为解决网络传输速度和前端渲染效率的问题,三维可视化呈现时需要对三维数据进行分块和切片,并进行LOD(Levels of Detail)分层,实现在不同视点显示不同的模型细节层次,WEB前端在浏览的视角范围内呈现适合的分块和切片数据。因此,引入3DTile技术将三维模型数据进行LOD分层处理,形成新的数据组织结构,主要由两部分组成,分别为存储几何信息的模型文件(*.b3dm)和元数据索引文件(*.json),如图3所示。

图3 3DTile数据结构Fig.3 3DTile data structure

3DTiles数据结构设计目的在于为WEB端流畅加载和快速渲染海量的三维数据,将完整的数据集分割成可以拥有嵌套组织层级的块状瓦片集合。在每个瓦片中,B3DM文件关联了一种用于高效处理三维空间数据的树状结构,这种树状数据被称为R-Tree。与常规结构相比,R-Tree能够更高效地支持三维空间数据的增删改查操作并且更好地容纳不均匀分布的三维模型数据。图4为在WEB端渲染不均匀分布的桥梁和实景三维数据的实例。

图4 不均匀分布的三维数据Fig.4 Non-uniformly distributed 3D data

在传统的四叉树方法中,每块区域被分割成4个相同大小的子块,即使节点内部只包含少量数据,也会占用整个子节点的空间,而且树的深度可能会因为数据的不均匀分布而不平衡,某些节点可能会过度分割,而其他节点则可能包含大量数据,导致查询时的性能不均衡,一些查询可能需要遍历更深的层次(图5)。由于三维数据特殊的组织方式,桥梁模型会横跨多个切片区域,用传统四叉树结构的二维数据切分方法会存在空间浪费、不平衡的树结构、对数据分布敏感的问题。因此,本文应用3DTiles技术,采用自适应的四叉树分割策略,根据数据的实际分布情况进行分割,每个节点只占用包围盒内实际数据所需的空间,避免了传统四叉树的空间浪费,提高了空间利用率(图6)。

图5 传统四叉树Fig.5 Traditional quad-tree

图6 3DTiles四叉树Fig.6 3DTiles quad-tree

同时,3DTiles技术采用自适应的分层策略,根据数据的重要性和几何层次进行分层存储。重要的细节信息会以更高的分辨率存储,而次要的细节信息则以较低的分辨率存储。因此,此技术可以在保持数据细节的同时,减少存储和渲染的负载,使层次结构更紧凑。这种四叉树结构与现代图形硬件管线相结合,利用GPU进行并行渲染,通过裁剪和遮挡剔除等技术,可以仅渲染可见的节点,减少不必要的渲染开销,提高三维可视化过程中的渲染性能。

3 软件实现及应用

3.1 软件设计思路

为验证本文所提出的自动布跨和三维可视化方法,依托项目应用开发了桥梁自动布跨及三维可视化软件,实现了AI自动布跨及真实环境场景下的桥梁方案展示。软件的总体设计思路为:首先建立线路数据库;然后提取桥梁设计相关的数据,结合桥梁布跨设计的基本原则,通过AI算法实现桥梁自动布跨;最后基于Cesium引擎创建桥梁模型,并在三维场景中进行渲染展现。

3.2 线路数据库建立

桥梁布跨依赖设计线路走向,桥梁参数化建模需要提前准备线路数据库。为方便管理和查询,线路数据库包括平、竖曲线信息(表1、表2)及桥梁信息(表3)。

表1 平曲线信息Table 1 Alignment curve table

表2 竖曲线信息Table 2 Vertical curve table

表3 桥梁信息Table 3 Bridge table

线路数据中交点的平面坐标一般使用二维平面直角坐标系,由两根具有相同原点且相互垂直的数轴组成,其中,x轴指向正北方向,y轴指向正东方向。而本文应用的三维可视化引擎采用了World Geodetic System(WGS84)的地理坐标系统和三维笛卡尔坐标系统,因此,在桥梁布跨前需建立坐标映射关系(表4),通过坐标转换算法实现线路二维坐标到三维地理场景的自由转换。

表4 坐标系参数Table 4 Coordinate system parameter table

3.3 桥梁自动布跨及三维可视化

桥梁自动布跨技术采用强化学习方法,应用Q-Learning算法进行实现。算法将铁路桥梁的孔跨类型和桥墩尺寸作为输入参数,根据环境信息并结合设计要求,通过强化学习算法实现铁路常用跨度简支梁和连续梁的智能布跨,用AI代替人工完成桥梁布跨。软件可根据AI布跨结果快速创建桥梁方案模型,利用三维可视化技术对桥梁总体方案进行展示。

三维可视化建模和展示基于Cesium平台进行开发实现。Cesium是一种基于WebGL开发的三维地球引擎,通过封装WebGL的接口,可以在WEB页面中创建复杂三维结构,为三维模型的可视化分析提供丰富的功能,可实现在WEB端浏览影像、三维地形、倾斜模型、三维模型等,是一种开源的WebGIS开发框架[25]。软件基于桥梁三维模型构件库,根据布跨结果和线路数据库计算模型之间的空间位置,自动组装得到三维场景下的桥梁方案模型,如图7所示。

图7 三维场景下桥梁方案模型Fig.7 Bridge design models in a three-dimensional environment

3.4 应用案例

为验证本文桥梁自动布跨和三维可视化的算法,选择某城际铁路项目设计段落进行应用。首先构建该项目方案的线路数据库和三维场景;然后将线路、地质等环境信息离散化处理,以经济最优为目标,考虑桥梁所处的设计地区,结合以往设计经验,参考桥梁造价控制指标(表5)调用智能布跨算法得到桥梁布跨结果;最后通过三维可视化技术根据布跨方案进行桥梁模型的创建和渲染。

表5 桥梁综合估算Table 5 Bridge comprehensive estimation

将传统人工布跨及二维设计结果与AI布跨及三维可视化结果进行对比分析可知,智能布跨及三维可视化布置方案更加合理。在图8(a)中,传统人工布跨设计桥墩部分已经侵入道路中,而图8(b)种智能布跨方案则避免了这一情况。从效益分析角度,智能体给出设计方案速度更快,在整体墩高控制上,总墩高较传统设计减少了42 m,在满足桥梁孔跨布设要求、提高生产效率的同时,减少了工程造价,三维可视化的展示更能保证桥梁设计方案的准确表达。

图8 传统人工和AI智能布跨方案对比Fig.8 A comparison of manual and AI-based span arrangement modeling

4 结论

针对桥梁传统建模方法效率低的问题,提出一种基于AI的桥梁自动布跨及三维可视化技术的算法,并建立桥梁构件资源库,在设计智能布跨算法研究基础上,结合参数化建模方法在三维地理信息环境下实现桥梁孔跨自动布置及桥梁三维模型的快速建立,更加直观地表达设计方案。

首先,研究了基于AI的桥梁自动布跨方法,通过研究桥梁布跨原则、强化学习算法以及桥梁孔跨布置算法设计,实现了桥梁自动布跨的目标。这一方法大大提高了布跨效率和质量,减少了人工操作的工作量。

其次,探讨了桥梁布跨方案的三维可视化技术,通过构建三维地理场景、创建桥梁轻量化模型以及采用合适的可视化策略,实现了对桥梁布跨方案的直观展示和可视化分析,设计人员可以更加直观地理解和评估不同的布跨方案,从而提升设计决策的准确性和效率。

最后,介绍了AI的桥梁自动布跨及三维可视化软件的实现和应用,通过应用WebGL可视化技术、建立线路数据库、实现桥梁参数化建模等手段,开发了一套完整的软件。在某城际铁路的应用案例证明了智能布跨及三维可视化布置方案更加合理。

综上所述,本文的研究成果可为铁路桥梁布跨方案设计提供重要的技术支持。基于AI的桥梁自动布跨及三维可视化技术的应用,不仅大大提高了布跨效率和质量,而且为设计人员提供了更好的决策依据和可视化工具。这一成果和经验可进一步推广至隧道、路基等工程设计领域,以满足更广泛的应用需求。