连续系统模型分布并行仿真算法研究
作者单位:国防科学技术大学
学位级别:硕士
导师姓名:姚新宇
授予年度:2013年
学科分类:08[工学] 080203[工学-机械设计及理论] 0802[工学-机械工程]
主 题:实时分布并行仿真 RK4 Memory环节 面向对象 时延 噪声
摘 要:随着实时仿真应用的领域不断扩大,参与仿真的系统模型越来越复杂,对计算速度的要求日益苛刻,对计算资源的需求也越来越大。基于分布多目标机平台进行分布实时仿真的应用应运而生,节点可以是同构的,也可以是异构的,为了充分挖掘分布仿真平台中每个节点的计算能力和速度,在进行仿真前需要将模型进行分割并分布至多节点,确定节点间通信模式,确保节点间的仿真计算同步并行化进行,以使整个仿真系统达到理想的加速比。工程系统大多是连续系统,而连续系统一般是以微分方程组的形式来表示的,对于微分方程组通常采用数值积分算法来求解。本文从龙格-库塔四阶积分算法(简记为RK4)入手,深入研究了RK4积分算法的内在并行性,从计算时间和通信开销两个方面来度量并行RK4积分算法在分布仿真系统中的性能,总结出两个结论:(1)状态变量积分子步间频繁的数据交换是制约并行仿真加速比的关键因素。(2)进行并行仿真时,模型的分割粒度不能太小。全面分析了单步法、多步法的内在并行性,归纳总结出了构造连续系统并行积分算法的三大策略:它们是系统(或问题)分割并行化方法、方法分割的并行化方法以及时间分割的并行化方法。设计并实现了基于C语言的通用RK4并行积分引擎,通过积分引擎的统一管理,优化了仿真过程中的数据交互过程,提高了仿真的效率;设计实现了基于Simulink的分布并行积分方法,基于面向对象的仿真方法,通过引入Memory环节来优化提高分布并行仿真效率。分析了Memory环节的引入对系统动态造成的误差,建立误差的数学模型。针对引入Memory模块而带来的额外“一拍时间延迟,对系统状态变量的输出值进行外推,采用传统的线性外推lagra(lagrange的缩写)算法对系统进行补偿并分析补偿效果,实验结果表明,外推效果一般。半实物仿真中由于自然环境、设备物理特性等的影响,采样过程中往往会出现随机噪声,随着仿真的进行,噪声所导致的异常数据会影响仿真结果的准确性。针对此问题,经过理论分析,本文提出了拟合外推lsqe(least squares estimator的缩写)算法,在设计实验上,通过分析高斯白噪声的数学特征,实现高斯白噪声的生成函数并引入模型中。实验结果显示,拟合外推方法可以很好的剔除噪声的影响,确保外推结果准确。针对一类守恒、满足时不变约束关系微分系统的数值求解问题,结合文献,归纳出了针对此类系统求解过程中产生误差的coordinate projection补偿算法,coordinate projection算法采取按步线性化的思路推导出了1 1 1()n n nX t X X??????间的误差传播规律,建立了误差之间的相互关系,进而推导出了补偿公式。分析了此算法在守恒系统分布仿真中的适用性。