正在加载图片...
第11期 张红钢等:基于LabVIEW并行运算的优化算法及其在Ni一Ti合金线材无模拉拔中应用 ·1295· 次数过多,在Visual Basic、C++和JAVA等文本编 和模拟目标值的输出.为此,本文采用DEFORM软 程语言的基础上进行编写的程序只能按照先后顺序 件进行有限元计算. 执行,整个程序运算时间很长,即便采用多核高性能 在运行机制上,LabVIEW与文本编程语言平台 计算机,也只能进行单核运算,即无法发挥多核计算 有本质的区别,开发LabVIEW应用程序需考虑不同 机硬件的功能,使该优化方法在金属塑性加工领域 进程之间的互斥、同步及死锁现象等问题) 无法获得广泛应用.目前,虽然有研究者采用混合 在遗传算法或者粒子群算法程序编写过程中, 智能优化0或微型遗传算法优化技术B减少智能 LabVIEW并行程序与基于MATLAB等文本编程语 优化过程的模拟次数,但并未从根本上解决智能优 言平台程序的主要区别是能并行计算每一代(或迭 化过程计算时间成本较高的问题. 代次数)的个体(或粒子)的目标值,在此基础上进 LabVIEW是以数据流而不是命令的先后顺序 行适应度函数计算.此外,LabVIEW程序可以调用 决定程序框图元素的执行顺序,可创建具有并行操 MATLAB脚本节点,实现初始化个体(或粒子)以及 作的程序框图.因此,若能将LabVIEW的多线程 更新个体(或粒子)等步骤,这些步骤的运算时间与 并行运算应用于金属塑性加工工艺智能优化领域, 个体(或粒子)的有限元计算时间相比较可以忽略 有望大幅度缩短计算时间,提高运算效率,对金属塑 不计 性加工工艺智能优化方法的推广具有重要意义,同 采用LabVIEW编写了金属塑性加工工艺智能 时对工艺参数的在线控制仿真具有潜在的应用 优化的两线程并行程序如图1所示.该框图完成每 价值. 一代(或迭代次数)的个体(或粒子)的目标值计算, 本文提出了一种基于LabVIEW并行运算的智 在FOR循环包含一个平铺式顺序结构,该结构先后 能优化算法,以满足金属塑性加工工艺智能优化设 完成DB数据库的生成、有限元并行运算和目标值 计的时效性.在此基础上,以无模拉拔成形初始阶 的计算三个步骤.DB数据库的生成和目标值的计 段拉拔速度路径优化为例,采用基于LabVIEW平台 算分别调用MATLAB脚本节点,而有限元并行运算 的遗传算法和有限元模拟相结合的方法对无模拉拔 以“执行系统命令”同时启动多个DEFORM软件的 初始阶段的拉拔速度路径进行了优化,比较了基于 DB数据库文件计算. LabVIEW和MATLAB平台的运算时间,并对优化结 DB数据库的生成主要是通过修改DEFORM软 果进行实验验证 件的key文件中功能关键词(Action Keywords) 1利用LabVIEW设计智能优化并行程序 “USRDEF”下的10行字符,这些字符由个体(或粒 子)的值转换而来,然后以命令行DEF_PRE.EXE< DEFORM数值模拟软件专用于模拟金属体积 DF_SIM_CTL.TXT将修改后的key文件生成新的 成形(如锻造、轧制和拉拔),该软件允许用户无需 DB数据库 进入图形用户界面而采用文本模式就能对其数据库 有限元并行运算主要是通过命令行SDEF 进行操作,经过二次开发可以完成自变量的输入 ARM_CTL.com problemid B来运行新生成的数据库 DB数据库生成 有限元并行运算 目标值的计算 ■1g■1n1n■11a1■ ■■■■■。n可 山n1■■1a■nga■11a口 HATLAB seript HATLAB seript objvi=objeale((1ti2,:),1) 工作且「 HATLAB script AILAB seript ae6g+2,),2 bjv2=objcale(x(2+i2,),2) 图1金属塑性加工工艺智能优化的LabVIEW并行程序 Fig.I LabVIEW parallel operation program of intelligent optimization for metal plastic processing第 11 期 张红钢等: 基于 LabVIEW 并行运算的优化算法及其在 Ni--Ti 合金线材无模拉拔中应用 次数过多,在 Visual Basic、C + + 和 JAVA 等文本编 程语言的基础上进行编写的程序只能按照先后顺序 执行,整个程序运算时间很长,即便采用多核高性能 计算机,也只能进行单核运算,即无法发挥多核计算 机硬件的功能,使该优化方法在金属塑性加工领域 无法获得广泛应用. 目前,虽然有研究者采用混合 智能优化[1]或微型遗传算法优化技术[3--4]减少智能 优化过程的模拟次数,但并未从根本上解决智能优 化过程计算时间成本较高的问题. LabVIEW 是以数据流而不是命令的先后顺序 决定程序框图元素的执行顺序,可创建具有并行操 作的程序框图[5]. 因此,若能将 LabVIEW 的多线程 并行运算应用于金属塑性加工工艺智能优化领域, 有望大幅度缩短计算时间,提高运算效率,对金属塑 性加工工艺智能优化方法的推广具有重要意义,同 时对工艺参数的在线控制仿真具有潜在的应用 价值. 图 1 金属塑性加工工艺智能优化的 LabVIEW 并行程序 Fig. 1 LabVIEW parallel operation program of intelligent optimization for metal plastic processing 本文提出了一种基于 LabVIEW 并行运算的智 能优化算法,以满足金属塑性加工工艺智能优化设 计的时效性. 在此基础上,以无模拉拔成形初始阶 段拉拔速度路径优化为例,采用基于 LabVIEW 平台 的遗传算法和有限元模拟相结合的方法对无模拉拔 初始阶段的拉拔速度路径进行了优化,比较了基于 LabVIEW 和 MATLAB 平台的运算时间,并对优化结 果进行实验验证. 1 利用 LabVIEW 设计智能优化并行程序 DEFORM 数值模拟软件专用于模拟金属体积 成形( 如锻造、轧制和拉拔) ,该软件允许用户无需 进入图形用户界面而采用文本模式就能对其数据库 进行操作[6],经过二次开发可以完成自变量的输入 和模拟目标值的输出. 为此,本文采用 DEFORM 软 件进行有限元计算. 在运行机制上,LabVIEW 与文本编程语言平台 有本质的区别,开发 LabVIEW 应用程序需考虑不同 进程之间的互斥、同步及死锁现象等问题[7]. 在遗传算法或者粒子群算法程序编写过程中, LabVIEW 并行程序与基于 MATLAB 等文本编程语 言平台程序的主要区别是能并行计算每一代( 或迭 代次数) 的个体( 或粒子) 的目标值,在此基础上进 行适应度函数计算. 此外,LabVIEW 程序可以调用 MATLAB 脚本节点,实现初始化个体( 或粒子) 以及 更新个体( 或粒子) 等步骤,这些步骤的运算时间与 个体( 或粒子) 的有限元计算时间相比较可以忽略 不计. 采用 LabVIEW 编写了金属塑性加工工艺智能 优化的两线程并行程序如图 1 所示. 该框图完成每 一代( 或迭代次数) 的个体( 或粒子) 的目标值计算, 在 FOR 循环包含一个平铺式顺序结构,该结构先后 完成 DB 数据库的生成、有限元并行运算和目标值 的计算三个步骤. DB 数据库的生成和目标值的计 算分别调用 MATLAB 脚本节点,而有限元并行运算 以“执行系统命令”同时启动多个 DEFORM 软件的 DB 数据库文件计算. DB 数据库的生成主要是通过修改 DEFORM 软 件的 key 文件中功能关键词 ( Action Keywords) “USRDEF”下的 10 行字符,这些字符由个体( 或粒 子) 的值转换而来,然后以命令行DEF_PRE. EXE < DF_SIM_CTL. TXT 将修改后的 key 文件生成新的 DB 数据库. 有限元并行运算主要是通过命令行 $ DEF _ ARM_CTL. com problemid B 来运行新生成的数据库 ·1295·
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有