随着船舶设计与仿真技术迈向精细化、复杂化,船舶行业对计算资源、数据存储和共享以及协同工作环境的要求日益严苛。传统的本地计算模式和单机设计方式,在面对现代船舶设计的诸多挑战时,已显得捉襟见肘。以大型邮轮设计为例,其涉及众多复杂系统,从船体结构的优化设计到动力系统的精确仿真,从内部舱室布局的模拟到水动力性能的分析,各环节紧密相连,对计算资源、数据交互和团队协作要求极高。而传统模式下:
1)不同设计阶段,如船体结构设计与水动力性能仿真之间,数据流通常因格式不兼容、系统不互通等问题受阻,形成信息孤岛,使得设计与仿真难以高效协同。例如,船体设计完成后,水动力仿真团队可能因无法直接获取准确的设计数据,需重新录入,不仅耗时费力,还易出错。
2)随着船舶设计复杂度的飙升,像超大型集装箱船的设计,对计算资源的需求呈指数级增长。传统本地计算资源,如单个企业内部的服务器集群,根本无法满足大规模流体动力学仿真、结构强度模拟等复杂计算任务的需求。
云平台作为一种新兴的信息技术架构,具有强大的计算能力、海量的数据存储和灵活的资源调配能力,为船舶设计与仿真领域带来了新的解决方案。云平台能够提供按需使用的计算资源,用户无需投入大量资金购买和维护高性能计算设备,只需通过网络接入云平台即可获取所需的计算能力,大大降低了企业的运营成本。同时云平台的分布式存储技术可以实现数据的安全存储和高效共享,不同地区的设计团队和仿真人员可以实时访问和协同处理数据,打破了数据传输和共享的地域限制。
近年来,国内外有众多学者对基于云平台的船舶设计与仿真技术进行了研究。赵英燕等[1]为了提升船舶水动力数值模拟计算效率,提出构建基于工业云平台的高性能的数值计算软件,充分利用云平台的高性能计算资源,为船型的快速准确设计提供了助力。刘思源等[2]提出将CAE软件和云平台技术进行有效结合,对CAE软件在云平台中应用的整体结构、可视化、负载均衡等进行了研究。牟泓宇等[3]将云平台计算应用于CFD的分布式计算服务中,并研究了不同配置的客户端对最终CFD计算效率的影响。
然而,现有研究仍存在一些不足,这些研究多聚焦于技术层面的应用,如计算效率提升、软件与云平台结合等,却较少考虑到船舶设计与仿真过程中各参与方的协作问题。船舶设计与仿真涉及多个专业领域,包括船体结构设计、动力系统设计、水动力分析等,各领域人员需要紧密协作,共享数据和成果。但目前尚未构建起一个完善的基于云平台的协作环境,导致信息流通不畅,协同效率较低[4 − 5]。本文提出一种基于云平台的船舶设计与仿真的协作环境设计方案,该协作环境可实现不同专业人员之间的实时沟通与协作,打破信息壁垒,提高船舶设计与仿真项目的整体推进效率。
1 基于云平台的协作环境整体架构设计 1.1 整体设计为充分发挥云平台在船舶设计与仿真中的价值,打造一个科学合理、层次分明的系统结构至关重要。设计了基于云平台的船舶设计与仿真协作环境的4层式结构,如图1所示,从底层硬件资源的搭建,到上层应用功能的实现,致力于构建一个全面、高效、协作的船舶设计与仿真云环境,推动船舶行业的数字化转型与创新发展。其中,基础设施层提供硬件资源、分布式存储与虚拟化技术,支撑计算与数据存储;平台服务层负责云平台管理、数据库服务与中间件服务,保障资源调度与数据处理;应用功能层涵盖设计、仿真、协作模块,实现船舶设计、仿真及团队协作;用户交互层有Web界面、移动应用与API接口,方便用户跨设备访问及与第三方集成。
|
图 1 基于云平台的船舶设计与仿真协作平台整体架构 Fig. 1 Overall architecture of ship design and simulation collaboration platform based on cloud platform |
1)硬件资源:此层汇聚了搭建云平台必不可少的各类物理硬件设施,如服务器集群、存储设备(如磁盘阵列)以及网络设备(路由器、交换机等)。以大型船舶设计企业为例,其服务器集群广泛分布于多个地理位置的数据中心,借助高速网络互联互通,构建起强大的计算能力矩阵。在进行超大型油轮的设计与仿真任务时,面对复杂的结构分析和流体动力学模拟等计算需求,这些服务器能够依据任务的优先级和具体需求,动态且精准地分配计算资源,实现高效的分布式计算,确保设计与仿真任务快速推进。
2)分布式存储:采用诸如Ceph、GlusterFS这类分布式文件系统,专门用于存储船舶设计与仿真进程中生成的海量数据。在船舶设计领域,数据量极为庞大,在一艘新型远洋货轮的设计中,从初步设计草图到详细的CAD设计图纸,再到CAE分析产生的大量结果数据以及各类仿真数据,都需要妥善存储。分布式存储系统将这些数据分散存储于多个存储节点,不仅极大提高了数据的可靠性,即便某个节点出现故障,数据也不会丢失,还显著提升了读写性能。同时,该系统支持数据冗余备份机制,进一步保障数据的安全性。不同用户依据各自权限,可便捷地访问和共享存储在其中的船舶CAD设计图纸、CAE分析结果、仿真数据等,促进团队协作与数据流通。
3)虚拟化技术:借助虚拟化技术(如VMware、KVM等),将物理硬件资源进行抽象整合,进而创建多个虚拟机实例。每个虚拟机犹如一个独立的计算机环境,能够单独运行操作系统和各类应用程序,实现资源的有效隔离与高效利用。在船舶设计与仿真实际工作场景中,依据不同的任务特性和需求,可灵活创建多个虚拟机。比如在进行船舶动力系统的设计与仿真时,可专门创建虚拟机用于运行复杂的动力系统模拟软件,进行CAD设计时又可创建适合CAD软件运行的虚拟机环境,通过这种方式,大大提高了资源的利用率和任务执行的灵活性[6]。
1.2.2 平台服务层(Platform Service Layer)1)云平台管理:提供云平台的基础管理功能,包括资源分配、监控、调度等。通过资源分配模块,可以根据用户的需求和优先级,动态分配计算资源和存储资源。监控模块实时监测服务器的性能指标(如 CPU使用率、内存使用率、网络带宽等)和存储设备的状态,及时发现并处理异常情况。调度模块根据任务的类型和紧急程度,合理安排任务在不同服务器上的执行顺序,实现分布式计算的高效调度。
2)数据库服务:提供关系型数据库(如MySQL、Oracle)和非关系型数据库(如MongoDB、Redis)服务,用于存储和管理船舶设计与仿真过程中的结构化和非结构化数据。数据库服务支持数据的备份、恢复、查询和分析等操作,为上层应用提供数据支持。船舶的设计参数、仿真结果、项目信息等可以存储在数据库中,方便用户进行查询和统计分析。
3)中间件服务:提供消息队列、缓存、负载均衡等中间件服务,提高系统的性能和可靠性。消息队列(如RabbitMQ、Kafka)用于实现不同模块之间的异步通信,确保数据的可靠传输。缓存服务(如Redis)可以缓存频繁访问的数据,减少数据库的访问压力,提高系统的响应速度。负载均衡器(如Nginx、HAProxy)可以将用户的请求均匀分配到多个服务器上,避免单点故障,提高系统的可用性。
1.2.3 应用功能层(Application Function Layer)1)设计模块:CAD(计算机辅助设计)集成主流的CAD软件(如AutoCAD、SolidWorks等),并进行二次开发,使其能够在云平台上运行。设计师可以通过浏览器访问CAD软件,进行船舶的三维建模、结构设计等工作。CAD 软件与云平台的分布式存储系统集成,设计师可以将设计文件实时保存到云端,方便团队成员之间的共享和协作。CAE(计算机辅助工程)提供CAE分析工具(Ansys、ABAQUS 等)的云化服务。工程师可以在云平台上提交CAE分析任务,利用云平台的分布式计算资源进行大规模的结构力学分析、热分析等。CAE 软件与数据库服务集成,分析结果可以自动存储到数据库中,方便后续的查询和比较。
2)仿真模块:利用计算流体力学(CFD)软件(如 Fluent、STAR-CCM+等)进行船舶在水中的流体动力学仿真。云平台的分布式计算能力可以加速CFD仿真计算过程,提高仿真效率。仿真过程中产生的数据可以存储在分布式存储系统中,支持多人同时访问和分析。采用有限元分析软件对船舶的结构强度进行仿真分析。通过云平台的分布式计算资源,可以对复杂的船舶结构进行精细建模和分析,评估船舶在不同工况下的结构安全性。仿真结果可以通过可视化的方式展示,方便工程师进行评估和优化。
3)协作模块:可以实现项目管理、文件共享以及实时通信功能。项目管理支持项目负责人在云平台创建项目,合理分配任务并设置优先级与截止日期,通过进度跟踪实时把控项目进展,及时解决问题;文件共享允许团队成员上传、下载、共享设计文件、仿真结果等,且具备版本管理功能以便回溯和比较;实时通信提供即时通讯、在线会议等方式,成员可通过文本、语音、视频交流,及时解决设计与仿真中遇到的问题。
1.2.4 用户交互层(User Interaction Layer)1)Web界面:为用户提供统一的Web界面,用户可以通过浏览器访问云平台的各种应用功能。Web 界面采用响应式设计,支持在不同的设备上(如电脑、平板、手机)进行访问,方便用户随时随地进行船舶设计与仿真工作。
2)移动应用:开发移动应用程序,支持iOS和 Android操作系统。用户可以通过移动应用访问云平台的部分功能,如查看项目进度、接收消息通知、进行简单的文件操作等,提高工作的灵活性和便捷性。
3)API接口:提供开放的API接口,允许第三方应用程序与云平台进行集成。船舶设计企业的其他业务系统可以通过API接口与云平台进行数据交互,实现业务流程的自动化和信息化。
2 高效能云端多人协同技术基于云平台的船舶设计与仿真协作平台采用分布式存储和计算架构,将硬件资源如服务器集群分布在不同地理位置的数据中心。通过智能的资源调度算法,根据多人协同任务的需求,动态分配计算资源和存储资源。在船舶设计与仿真项目中,当多名设计师同时进行CAD建模或工程师开展CAE分析时,云平台可依据各任务的优先级和资源需求,实时调配CPU、内存等资源,确保任务高效执行。
2.1 低延迟技术多人协同使得不同成员可以同时在各自擅长的领域开展工作,避免了单人执行时因个人精力和专业限制导致的资源闲置。在CAE分析中,单人执行时间较长,而多人协同下,不同成员负责模型搭建、参数设置、结果分析等不同环节,有效利用了时间和人力资源。
在多人协同操作过程中,记录数据从一个用户端产生修改到同步至其他用户端的时间延迟,如图2所示。可以发现数据传输延迟在整个时间区间内较为稳定,主要集中在30~35 ms波动,波动幅度相对较小,说明在该测试场景下,数据同步的实时性和稳定性表现良好,数据从一个用户端产生修改到同步至其他用户端所需的时间相对固定且处于较低水平,能够满足多人协同工作对数据实时交互的要求。其原理主要是借助消息队列(如RabbitMQ、Kafka)等中间件技术,实现不同模块和用户之间的实时通信。在多人协同设计过程中,设计师对CAD模型的修改、工程师对仿真参数的调整等操作产生的数据,能通过消息队列实时传输并同步到相关人员的工作界面,保证信息的及时共享和一致性。同时,利用版本控制机制,对共享文件的修改历史进行记录,方便追溯和冲突解决。
|
图 2 用户端数据传输延迟 Fig. 2 Client data transmission delay |
船舶设计与仿真的多端配合需要合理的任务分配,以实现不同计算平台负载均衡,以最大化程度利用不同硬件计算平台的基础算力,能够同时响应客户端的多个设计及仿真要求。
针对某一个CAE分析任务,云平台上部署有10个硬件计算平台,计算平台配置不完全相同,对任务开始后硬件计算平台CPU工作情况进行监控,结果如图3所示。可以发现不同计算平台在响应这个任务时所调用的计算资源有很大区别,这是由于在云平台上对该分析任务的分配不合理,且不同计算平台配置存在差异,在这种情况下就需要采用负载均衡算法才能较好地实现船舶设计与仿真的协作功能。
|
图 3 未采用负载均衡的CPU利用率 Fig. 3 The CPU usage is not used for load balancing |
本文使用加权最少连接算法来实现多个硬件计算平台的负载均衡问题,旨在更合理地分配任务到不同硬件计算平台。综合考虑了2个关键因素:平台的处理能力(通过权重体现)和当前负载(通过连接数体现)[7]。对于不同的硬件计算平台,其性能存在差异。某些服务器可能配备了更强大的CPU、更多的内存或更快的存储设备,这些平台理论上能够处理更多的任务。因此,为每个平台分配一个权重,权重值越高,表示该平台处理能力越强。同时,任务在执行过程中,每个平台会有一定数量的任务处于处理状态,即连接数。连接数反映了平台当前的负载情况。连接数越多,说明平台越繁忙[8]。
假设有n个硬件计算平台,记为
对于每个平台Pi,计算其连接数与权重的比值
这个比值反映了平台当前负载相对于其处理能力的程度。遍历所有平台,找到比值ri最小的平台。即找到j,使得
当有新任务到来时,将该任务分配给平台Pj。当下一个新任务到来时,重新计算各平台的比值ri,并再次将任务分配给比值最小的平台,从而持续保证负载均衡。该算法通过计算每个平台的连接数与权重的比值,将新任务分配给比值最小的平台,这样既能利用处理能力强的平台处理更多任务,又能避免将过多任务分配给已经繁忙的平台,从而实现负载均衡。
针对同样的CAE分析任务,对负载均衡后的硬件计算平台CPU工作情况进行监控,结果如图4所示。各硬件计算平台的CPU利用率相对较为均匀,没有出现部分平台CPU利用率极高,而部分平台极低的情况。这表明负载均衡策略在一定程度上有效,实现了计算任务在各平台间的合理分配,使得各平台的CPU资源都得到了较为充分且均衡的利用。
|
图 4 采用负载均衡的CPU利用率 Fig. 4 Use load balancing for CPU utilization |
构建基于云平台的船舶设计与仿真协作环境,成为推动船舶行业数字化转型与创新发展的关键举措。本文结论主要包括:
1)设计的基于云平台的船舶设计与仿真协作环境4层式结构科学合理。基础设施层提供硬件、存储及虚拟化支持;平台服务层保障资源调度与数据处理;应用功能层实现设计、仿真与团队协作;用户交互层方便跨设备访问与第三方集成,为船舶设计与仿真打造了全面、高效、协作的云环境。
2)高效能云端多人协同技术优势突出。低延迟技术借助消息队列等中间件,实现了数据在用户端的实时同步,数据传输延迟稳定在30~35 ms的较低区间,波动幅度小,有力地保障了多人协同工作中数据的实时交互。加权最少连接算法实现的负载均衡技术,充分考虑了硬件计算平台的处理能力与当前负载,将任务合理分配至各平台,从监控结果来看,各硬件计算平台的CPU利用率均匀,避免了资源的过度集中与闲置,显著提高了计算效率,为船舶设计与仿真项目的高效推进提供了坚实支撑。
| [1] |
赵英燕, 曹群生, 曹振南, 等. 国产船舶水动力数值软件在工业云平台的实现[J]. 系统仿真学报, 2022, 34(8): 1855-1863. ZHAO Y Y, CAO Q S, CAO Z N, et al. Implementation of domestic ship hydrodynamics numerical software on the industrial cloud platform[J]. Journal of System Simulation, 2022, 34(8): 1855-1863. |
| [2] |
刘思源, 李胜忠, 鲍家乐, 等. CAE软件云化应用研究——典型船舶CFD软件初探[J]. 新型工业化理论与实践, 2024, 1(4): 226-241. LIU S Y, LI S Z, BAO J L, et al. Research on the cloud application ofcaesoftware - a preliminary exploration of typical ship cfd software[J]. Theory and Practice of New Industrialization, 2024, 1(4): 226-241. |
| [3] |
牟泓宇, 马轶聪, 淮晓永. 面向云计算环境的CFD数据可视化分析服务[J]. 电子技术应用, 2023, 49(3): 118-123. MOU H Y, MA Y C, HUAI X Y. CFD data visualization analysis service for cloud computing environment[J]. Application of Electronic Technique, 2023, 49(3): 118-123. |
| [4] |
李杰. 面向有限元分析的云计算性能优化关键技术研究及实现[D]. 杭州: 浙江工业大学, 2018.
|
| [5] |
孙自梅. 基于HCI架构的中大型企业私有云平台研究与设计[J]. 内江科技, 2024, 45(12): 22-23+115. SUN Z M. Research and design of a private cloud platform for medium and large enterprises based on the hci architecture[J]. Neijiang Science & Technology, 2024, 45(12): 22-23+115. |
| [6] |
史佩昌, 王怀民, 郑子彬, 等. 面向云际计算的自主对等协作环境[J]. 中国科学: 信息科学, 2017, 47(9): 1129-1148. SHI P C, WANG H M, ZHENG Z B, et al. An autonomous peer-to-peer collaboration environment for inter-cloud computing[J]. Scientia Sinica Informationis, 2017, 47(9): 1129-1148. DOI:10.1360/N112017-00071 |
| [7] |
闫静. 云环境下协作学习平台的研究[J]. 福建电脑, 2016, 32(10): 69-70. YAN J. Research on the collaborative learning platform in the cloud environment[J]. Fujian Computer, 2016, 32(10): 69-70. |
| [8] |
陈树生, 刘丽媛, 阎超, 等. CFD软件自动化验证确认云平台设计与实现[J]. 航空学报, 2017, 38(3): 48-56. CHEN S S, LIU L Y, YAN C, et al. Design and implementation of a cloud platform for automated verification and validation of CFD software[J]. Acta Aeronautica et Astronautica Sinica, 2017, 38(3): 48-56. |
2025, Vol. 47
