面向服务异构网格上的工作流驱动遗传算法航空优化系统的制作方法

文档序号:6427613阅读:296来源:国知局
专利名称:面向服务异构网格上的工作流驱动遗传算法航空优化系统的制作方法
技术领域
本发明是一种面向服务异构网格上的工作流驱动遗传算法航空优化系统,属于设计优化技术领域。
背景技术
飞行器的设计工作是一个复杂的系统工程,涉及到总体、动力、气动、结构、系统等多个相互交织和融合的领域和学科,时至今日简单的优化方法已经无法满足当代飞行器越来越高的设计的需求。为了满足飞行器各项性能的综合要求,保证飞行器的最高安全、最佳性能、最低成本、最优环保性,需要同时进行多个学科的综合优化,以达到理想的设计目标, 这也是近年来飞行器设计方法研究的主要发展方向之一。目前来说,在飞行器的优化工作中主要面临以下挑战 飞行器的设计目标与设计变量间存在一对多或多对多的复杂耦合影响,难以建立设计变量与目标函数清晰的数学表达式,例如以翼面复合材料铺层参数为设计变量与翼面结构的颤振速度为目标的优化;或以襟翼位置和角度为设计变量与噪声和升力为目标的优化等; 为了实现精确的优化设计,飞行器优化中选择的设计变量数量很大(上千个设计变量),设计变量间的解耦问题十分复杂,大大增加了优化难度; 飞行器设计模型越来越精确和庞大,并且因为在全局空间搜索最优解,带来计算工作量的成倍增加; 不同的学科计算模型交叉产生的联合求解问题,如空气动力学模型和有限元结构模型的联合求解,以及解决优化过程中几何位置变化产生的拓扑优化问题。为了解决以上问题,目前在飞行器设计工程上采用的方法主要有利用少数设计变量,通过数学解析或变分方法分别分析求出各变量的敏度关系,进行多学科优化。但由于设计变量与目标之间关系的复杂性,通过数学分析很难建立解析关系和进行敏度分析;当前的商用优化软件不能满足航空器优化设计中设计变量数量巨大的要求。采用多循环迭代方法可以解决大设计变量间的解耦问题。通常的优化设计方法分为数学规划法和优化准则法,但这两种方法一般只能得到局部最优解,而非全局最优方案。而对飞行器设计中的一些复杂的优化问题采用这些常规的优化方法,很难取得满意结果。遗传算法的特点使得这种方法可以收敛到全局最优解,效果较以往的方法由明显优势。遗传算法是一类可用于复杂优化计算的鲁棒搜索算法,具有与传统的算法不同的特点,但采用遗传算法其中一个主要的问题是产生较大的计算量,对所需的计算资源要求较高,包括大量的软件和硬件资源,因此如何提高遗传算法的运行速度显得尤为突出。由于遗传算法的内在并行机制,采用并行处理是提高其计算速度自然的解决途径。并行算法是将整个任务分解为若干子任务,分配到一组处理器分别并行求解各个子任务。设计各种并行执行策略、建立相应的并行化算法数学基础,对提高进化算法的效率有着重要意义。
网格计算是专门针对高性能复杂科学计算,伴随着网络和通信技术的进步而迅速发展起来的新型计算模式。这种计算模式是利用网络把分散在不同地理位置的计算资源按需要以服务的方式组织成一个“虚拟的超级计算机”,其中每一台参与计算的计算机作为一个“节点”,而整个计算是由成千上万个“节点”组成的一张“网格”,因此被称为网格计算系统。这样组织起来的“虚拟的超级计算机”有两个优势,一个是数据处理能力十分强大;另一个是能充分利用联网的以服务的形式提供的计算软硬件资源,可以灵活地增减替换。

发明内容
本发明正是针对上述现有技术状况而设计提供了一种面向异构环境服务网格上的工作流驱动遗传算法航空优化系统,其目的是建立一个适应航空多学科优化的软件平台,满足航空应用遗传算法流程复杂,并需要根据优化对象和策略进行调整的特点,实现在航空设计中多学科优化的应用。本发明系统将遗传算法计算过程切分成多个运行模块,并采用工作流引擎来灵活地组织这些模块的运行;同时针对遗传算法的大计算量和个体独立评估特点,工作流引擎可以将需要进行并行分布式计算的部分与本地计算部分分隔开来,将作业以服务请求形式通过多种网格平台分发到其他具有相应计算软件的集群。通常提供服务的网格平台和集群来自不同的单位,具有不同的来源,其配置一般是异构的,因此有必要采用异构网格系统以适应和利用多种平台和架构的资源。此外,异构网格系统也便于部署远程计算服务,实现知识产权保护,能够方便地组织跨单位的多学科多机构联合的优化系统。本发明的目的是通过以下技术方案来实现的该种面向服务异构网格上的工作流驱动遗传算法航空优化系统,其特征在于该系统包括控制模块,作为系统的用户接口,其功能是使用者可以有效地干预和监控系统运行,通过该模块设置和修订优化计算任务的运行参数,管理系统中优化计算任务的启动和中止或在条件许可(中间文件齐备,保留中断时的信息)时继续未完成的任务,监控系统运行状态、资源使用情况、运行的进程、任务执行的结果等,对不同用户的权限进行管理。该模块和驱动模块等一起部署,并通过远程侦听器部署到集群模块来获取集群模块的运行情况数据,通过命令行界面或Web界面与用户交互;驱动模块,与控制模块和算法模块连接,其功能是管理任务的输入数据和参数、 输出数据,驱动算法模块形成的工作流;驱动模块采用NOESIS 0PTIMUS驱动工作流,可以灵活的操作输入输出参数,组织和调用算法模块形成的工作流,使得算法可以以模块的方式运行,对各个本地和远程计算模块分别进行操作和管理;算法模块,与驱动模块和计算客户端连接,其功能是执行遗传算法的逻辑过程, 对目标问题进行遗传算法优化,并将计算量较大的任务提交到计算客户端以进行并行计算;遗传算法方案采用一个在先国防专利申请技术方案,其名称是飞机翼面蒙皮亚音速颤振优化方法,专利申请号是201110171379. 9,主要内容是用翼面每个蒙皮单元作为优化对象,同时将蒙皮的铺层角度,铺层厚度增量、铺层位置等选作设计变量,保证遗传算法的搜索是在包括了所有可能解的空间域内进行,采用双循环优化流程,解决了大设计变量(> 1000)情况下的解耦问题,同时有效地避免了算法的震荡,确保了算法的鲁棒性。算法模块是遗传算法方案在本系统中的具体实现,将遗传算法的种群生成、种群评估、种群进化等操作分别实现为可执行程序,其需要的参数以参数文件和命令行参数两种方式提供。其中计算量较小的部分可以在客户端计算机本地直接执行,计算量较大的工作通过计算客户端提交到远程网格中调用所需的服务以提高计算速度,根据以上可执行文件的运行顺序和输入输出关系建立的工作流,即可由驱动模块调用和驱动;计算客户端连接算法模块,并与一或多个NOVA任务分发器或GRIA网格系统连接, 其功能是接收算法模块提交的作业包并转存其中的数据,向NOVA任务分发器或GRIA网格系统提交作业申请以将其分派给集群模块进行运算,并查询作业的状态,若超时则进行重新发送,而运算完成时则回收计算代理转存的作业输出数据;计算客户端具有多个接口可以适应多种不同的网格管理平台(如NOVA或GRIA等),从而满足不同机构所拥有的不同网格平台的要求。NOVA任务分发器,与一个或多个由驱动模块、算法模块和计算客户端的组成连接, 又与一个或多个NOVA计算代理连接,其功能是接收来自计算客户端的作业请求,并依据不同的策略(顺序,优先级,加权等)进行调度,任务分发器向计算代理查询空闲资源情况, 若计算代理反映具有空闲资源则将作业分发到各个计算代理并监控计算代理返回的运行状态和结果,在查询得知作业完成时通知计算客户端回收作业输出数据;NOVA计算代理,与一个NOVA任务分发器和一个集群模块连接,在部署时集群模块中作业管理系统可以提交作业的节点上,其功能是从任务分发器获得作业信息及其输入数据位置并获取数据,将作业转发到集群模块以获取服务,在作业运行完成时转存作业输出数据以供计算客户端回收,计算代理能够沟通任务分发器和集群模块中的网格系统的作业管理系统,可以利用不同的接口与Condor、0penPBS、B0INC、LMS Platform等多种不同的集群作业管理系统相联接来提交作业,从而调用不同来自不同机构的、采用不同结构和作业管理系统、提供不同服务的计算资源;GRIA网格系统,与一个或多个计算客户端和一个集群模块连接,在部署时集群模块中作业管理系统可以提交作业的节点上,其功能是从接收计算客户端提交的作业并转存作业数据,通过多种不同的接口与集群模块的多种将不同的集群作业管理系统相联,将作业包提交到集群模块进行运算,监控作业运行的情况,并在计算完成时从集群模块回收计
算结果;集群模块,与一个计算代理或GRIA网格系统连接,其功能是管理一个由通过网络连接的多台计算机组成的集群并在其上运行计算代理或GRIA网格系统转发的、由算法模块生成的作业。集群模块由异构服务集群组成,是本系统执行任务中使用的主要计算资源,可以由通过网络相连接的计算机集群组成,这个集群可以包含若干不同架构、不同操作系统平台的计算机,通过多种不同的集群作业管理系统进行管理,可以部署在不同的物理位置和网络位置、隶属于不同机构,网格中各个计算节点需要运行解题器服务程序,主要用于计算由算法模块形成的、经过计算客户端、任务分发器和计算代理或者GRIA网格系统中转分发的作业,形成计算结果并逐级回传。如此,遗传算法中计算所需的应用只需要部署在计算节点上以服务的方式远程发布和分布式运行,而不用部署在本地机器中。
以下对本发明技术方案的特点及有益的效果进行说明一般的遗传算法优化系统将算法的所有流程固化在程序代码中,一旦需要对特定的优化目标和策略进行调整必须对整个优化系统进行调整,系统紧密耦合,难以灵活应用不同的优化目标和策略和调用不同解题器。本系统中的算法模块将算法步骤分割为不同的可执行程序并组成工作流,通过驱动模块的工作流引擎驱动计算流程,在进行调整时只需要替换对应的算法步骤可执行文件和相应的参数文件,并且可以准备若干个典型的备选可执行程序用于替换;对于不同的算法步骤通过调整工作流引擎的调用参数也可以灵活地满足其输入输出要求。与串行运行的遗传算法相比,算法模块的特点是,将并行计算的适应度评估等步骤与计算量较小的运行步骤分隔开来,便于将并行内容提交到网格系统进行并行计算。在对一个典型的、具有300个单元的有限元模型进行多循环迭代遗传算法优化时,一般将产生900个遗传算法种群,每轮迭代优化进行15代遗传算法搜索以及一次300单元的排序作业计13800次适应度评估计算;如果进行100轮迭代优化,则总计需要进行 1380000万次适应度评估。假设每次评估耗时1分钟,每一代生成遗传算法作业文件需要5分钟,总计算时间将达到((900+5)*15+300+5)*100 = 1388000分钟,计958. 3天; 如果将每20个作业打包成一个作业分发到45个节点上并行计算,则理想情况下每代遗传算法优化只需要20分钟,考虑到系统通信、作业分配和回收时间约10分钟,计算需时 ((5+20+10) *15+ (5+20+10)) *100 = 56000分钟,计38. 9天,计算效率得到了极大的提高。通过异构网格平台,本系统可以通过不同的计算代理接口方便地连接多种不同的网格资源,利用其中不同平台和架构的不同计算服务,使优化工作可以调用来自不同机构和解题服务提供方的远程资源(如计算颤振可使用Nastran或kro等工具),为多个机构在保护各自产品、工具的知识产权的前提下的联合优化研究工作提供了一个解决方案。综上所述,由以上算法工作流引擎和基于服务的异构网格平台系统有机结合而成的航空多学科遗传算法优化系统可以有效地提升航空优化设计的工作效率,实现良好的飞行器设计效果。


图1为本发明系统的结构框2为控制模块的软件流程3为算法模块的软件流程4为实施例子BRIDGE项目中中期检查网格优化计算测试系统示意5为实施例子BRIDGE项目中噪声-升力多学科联合遗传算法网格优化系统示意图本发明实施例的运算过程的软件流程图
具体实施例方式以下将结合附图和实施例对本发明技术方案作进一步地详述参见附图1所示,本发明述的面向服务异构网格上的工作流驱动遗传算法航空优化系统,其特征在于该系统包括
控制模块1,作为系统的用户接口,其功能是使用者通过其管理系统中任务的启动和中止,输入运行参数,监控系统运行状态,该模块是通过软件编程来实现的,其软件流程图参见附图2所示;首先任务启动时需要检查任务启动的参数,包括任务类型、输入数据和参数文件、 作业包命名方法、超时设置、遗传算法所需的参数等,之后选择任务需要的工作流模型,启动工作流驱动下层模块工作。工作中定时检察工作目录中指定的文件列表以及接受部署在远程机器上的侦听器传回的NOVA任务分发器5状态和集群模块8状态,判断其是否发生变化,根据变化判断任务的进展状态,若任务进度达到要求则结束任务,否则进行下一轮查询。不论是否发生变化都更新保存的系统状态。若超过一定时间系统状态在指定方面(输出结果等)没有变化则判断作业超时,向用户发出告警。驱动模块2,与控制模块1和算法模块3连接,其功能是管理任务的输入数据和参数、输出数据,组织和调用算法模块3形成的工作流;驱动模块采用NOESIS 0PTIMUS软件实现驱动功能。为实现该程序的功能,需要在安装该软件的计算机上建立工作目录,将算法模块3包含的各个可执行程序及其需要的数据和参数文件以及基于这些程序和数据建立的工作流模型文件部署到该目录下,如此, 启动0PTIMUS软件后载入工作流模型文件,配置驱动该工作流模型的参数后启动工作流过程,即可实现工作流的自动运行;算法模块3,与驱动模块2和计算客户端4连接,其功能是执行遗传算法的逻辑过程,对目标问题进行遗传算法优化,并将计算量较大的任务提交到计算客户端4以进行并行计算,该模块是通过软件编程来实现的,其主要逻辑参照前述在先专利“飞机翼面蒙皮亚音速颤振优化方法”描述的技术方案,软件流程图参见附图3所示;其中外循环负责对每一个遗传算法设计单元增加一个微小增量(其他单元不变) 形成对应的一个敏度排序个体,将所有敏度排序个体组成敏度排序种群,分别对每个个体进行敏度计算并对结果进行敏度排序;之后进入内循环寻找一个增量的最优增加方法。内循环结束后判断结果是否达到要求,否则进入下一轮排序和增量迭代。内循环采用标准的遗传算法流程,尝试将指定的一个增量以能产生最优良效果的方式增加到各个设计单元上,其中增加单元的位置由增加单元的数量取代,后者指出在敏度排序中的前若干个单元,则增加单元的位置即是这若干个单元的位置。首先采用随机投点(第一次内循环)或者依据上次内循环(其他内循环)形成的染色体生成种群,对这些种群并进行适应度评估,最后进行选择、交叉和变异等遗传算法操作,然后生成下一步内循环需要的染色体或在达到预设的最大内循环代数时输出内循环结果返回外循环。为了便于驱动模块2驱动算法模块3的运行,应以OPTMUS软件建立工作流模型确定各个算法模块3中的可执行程序的执行顺序及其输入数据的位置(文件名称,如可能还需指定数据在文件中的位置)。计算客户端4与多个NOVA任务分发器5和算法模块3连接,由北京航空航天大学计算机学院中德联合软件研究所提供JobClient网格平台应用程序接口组件实现,其功能是由算法模块3调用,将计算数据上传到NOVA服务计算机11中NOVA任务分发器5指定的数据目录或GRIA网格系统的数据服务,同时提交计算请求到NOVA任务分发器5或GRIA网格系统8的任务接口,进而通过定时查询的方式获取任务状态。并在作业完成时回收作业输出文件。计算客户端4的部署需要JDK1. 5以上环境,部署时将软件包复制到计算机中,在参数文件中设置与任务相关的超时参数、和NOVA任务分发器5的作业包命名约定等即可完成。NOVA任务分发器5与多个由驱动模块2、算法模块3和计算客户端4的组合相连接,又与多个NOVA计算代理6连接,由北京航空航天大学计算机学院中德联合软件研究所提供的Nova中间件解决方案的TaskProcess组件实现,其功能是作为全局调度节点,接受计算客户端4的作业请求和NOVA计算代理6返回的资源状况,通过匹配计算任务和响应的计算资源进行作业分配调度,进而对整个计算过程进行监控,确保计算任务能够顺利完成并通知计算客户端4下载。NOVA任务分发器5部署在Apache Tomcat (5. 23以上版本)服务器中并需要MySQL数据库(5.0以上)支持,包括Web服务接口及后端调度器两部分,其中, Web服务接口基于Web服务引擎Axis,支持任务条件、任务状态查询操作,计算客户端4通过调用这些接口实现任务提交、任务状态查询以及计算结果下载;后端调度器基于JDK1. 5 开发,并兼容JDK6及以上,主要包括与与集群模块8有关的资源监控、任务状态维护、调度策略、结果处理等功能。NOVA计算代理6由北京航空航天大学计算机学院中德联合软件研究所提供的 Nova中间件解决方案的JobExecute组件实现,与NOVA任务分发器5和集群模块8相连接, 其功能是从NOVA任务分发器5获得作业信息及其输入数据,转发到集群模块8以执行作业,在作业完成时转存作业输出数据以供计算客户端4回收。该模块运行在JDK1. 5以上的 Java环境中并需要MySQL数据库(5. O以上)支持,负责屏蔽底层异构的计算资源,支持集群模块8采用B0NIC、0penPBS、Platform LSF及Condor等集群管理系统,同时支持与NOVA 任务分发器5的交互,实现计算任务的处理。GRIA网格系统8与一个或多个计算客户端4和一个集群模块8连接,是英国南安普顿大学信息技术创新中心开发的网格平台前端代理系统,可以通过多种接口连接到一个由各种集群作业管理系统管理的集群模块,将作业提交到集群模块并监视其运行,并回收计算结果,在此基础上GRIA还提供安全传输、流量计费等多种功能。GRIA网格系统可以部署在Linux或Windows机器上,需要JDK5. O版以上、Tomcat 服务器5. O版以上和Apache服务器(如果需要开启安全功能)2. O版以上,并需要Perl支持。集群模块8,与一个NOVA计算代理6或GRIA网格系统8连接,其功能是管理一个包括通过网络连接的多台计算节点9的集群并在其上运行NOVA计算代理6或GRIA网格系统8转发的、由算法模块3生成的作业。集群模块8中每台计算节点9上应部署可供算法模块任务调用的服务程序(如 Nastran, HAJIF-II等)及相应的运行环境,和集群管理系统节点(如Condor,OpenPBS等) 等,从而使以上计算节点9能够提供集群的计算资源;而集群模块8中还包括一些节点(依在个节点安装集群管理系统节点时的配置而定)可以能够将作业提交到集群中进行计算, 这些节点被称为集群门户节点12。集群模块8中的计算机可能同时是计算节点9和集群门户节点12,或仅是其中之一。作业由部署在通过上述集群门户节点12上的NOVA计算代理6提交到集群管理系统,由集群管理系统将作业任务和输入数据传输到指派的计算节点9调用其上的服务进行计算,之后向NOVA计算代理6返回作业输出数据。本发明述的面向服务异构网格上的工作流驱动遗传算法航空优化系统中的控制模块1、驱动模块2、算法模块3应与计算客户端4 一起部署在一台用户计算机10上,NOVA 任务分发器5部署在一台NOVA服务计算机11上,NOVA计算代理6或GRIA网格系统部署在每个集群模块8中的一个集群门户节点上。控制模块1在NOVA服务计算机11和集群模块8中的集群门户节点12上部署侦听代理。以下将通过实例进一步描述本发明系统的工作过程。本系统曾成功应用于欧盟第六框架计划优先向项目BRIDGE (Bilateral Research and Industrial Development Enhancing and Integrating GRID Enabled Technologies) 航空应用研究中使用,该项目中,以飞机襟翼转轴位置和角度为设计变量,目标为降低飞机起降远场噪声并提高襟翼放下时的机翼升力。项目合作伙伴包括中国航空工业集团、北京航空航天大学、欧洲宇航防务集团EADS(空客研发部)、!^hG SCAI (德国弗劳恩霍夫协会算法和科学计算研究所)和比利时LMS公司等。由于设计变量的改变也会产生空气动力计算网格和机翼结构网格的几何变化,计算模型数量和变量搜索空间都十分巨大;气动噪声计算需要非定常气动力计算得到的流场压力脉动分布为基础,而非定常气动力计算所需资源极为庞大,无法进行全面模拟,因此通过建立响应关系的方法进行近似模拟。为了能够提供可靠的网格计算服务,在项目中期检查时相关单位首先建立了一个大规模的验证性系统以检查系统各方面功能,如远程服务和网格任务提交和分发等。系统部署在一个分布在欧洲和中国的洲际网络上,如下图4所示其中以一台位于欧洲的Windows平台笔记本计算机作为用户计算机10并在其上部署控制模块1、驱动模块2、算法模块3与计算客户端4,用于做计算作业的提交结果显示; 在该计算机上安装NOESIS 0PTIMUS软件,建立工作流项目,并将实现遗传算法的算法模块 3和其输入文件,以及计算客户端4的软件包放置到对应工作目录中。由于该机器在遗传算法流程中作为算法引擎负责种群生成、进化等操作,不进行适应度评估计算,因此计算量不大,也不用安装解题器。之后将控制模块1组建部署到该计算机的Tomcat服务器中并配置与驱动模块的连接参数。与计算客户端4相连接的有在欧洲LMS公司总部一个由OpenPBS集群管理系统管理的集群组成了一个集群模块8(a),选择其中的一个集群门户节点12nSSimdat. lmsintl. com并在其上安装和配置 Tomcat服务器和Perl环境等,之后将GRIA网格系统7部署到服务器上,最后部署一个控制模块1的侦听器;除了该节点外集群模块8包括其他若干个采用Linux平台、部署有提供静态气动弹性服务的Nastran解题器服务和OpenPBS终端的计算节点9 ;使用中国北航的一台Linux主机buaaO 1. ih印.ac. cn作为NOVA服务计算机11,并部署NOVA任务分发器5。该计算机采用的操作系统为Linux发行版CentOS 5. 2,在其上部署带Axis服务组件的tomcat HTTP服务器、MySQL数据库和OpenMQ消息中间件,为了在局域网中解析域名采用了 Bind DNS服务器。CentOS系统内嵌VSFTP服务器组件。以上支持组件就绪后将本发明中的NOVA任务分发器5模块TaskProcess和控制模块1的侦听器作为tomcat应用部署到tomcat服务器中。
NOVA组件将通过两个计算代理6连接位于北航的两个不同的集群模块8,包括主要由运行Linux操作系统的计算节点9组成的集群模块8(b)和由主要运行Windows操作系统的计算节点9组成的集群模块8 (c)组成。对于集群模块8 (b),采用和集群模块8 (a)类似的OpenPBS集群管理系统进行管理,在其中各个计算节点9上安装Nastran解题器服务和OpenPBS终端;而集群模块8(b) 中的一个集群门户节点12主机euchina09. buaa. edu. cn上则安装OpenPBS终端并设置为可以提交作业,并配置MySQL数据库和vsFTP服务器以支持计算代理6模块JobExecute在其上运行。对于集群模块8 (c)的配置和集群模块8 (b)类似,但该集群模块8采用Condor集群管理系统以获得对Windows更好的性能,在其中各个计算节点9机器上安装Condor终端,并部署HAJIF-II解题器以提供颤振求解服务,集群模块8 (c)中其中一个集群门户节点 12主机euchinalO. buaa. edu. cn上安装Condor终端并设置为可提交作业。为将集群模块 8(c)连接进本发明所述的网格,在集群门户节点12上安装MySQL数据库和vsFTP服务器, 并部署计算代理6模块JobExecute。集群门户节点均部署控制模块1的侦听器。运行时,在用户计算机10上的算法模块3工作目录中准备好遗传算法模块3的可执行程序并通过0PTIMUS软件建立工作流模型(opt文件),以及准备好所需的输入数据文件和参数文件。之后通过控制模块1启动驱动模块2的0PTIMUS工作流引擎载入工作流模型和启动工作流,则遗传算法任务在驱动模块2的驱动下开始运行。当运行至需要进行适应度评估的步骤时,算法模块3将依照服务发布的接口生成需要计算的作业输入文件和参数文件并按照计算客户端4约定的方式,将每10个输入文件、算法模块3的Nastran输出解析器以及作业包参数文件以tar. gz格式根据约定的命名方式进行压缩打包,之后计算客户端4根据作业的类型(静气弹计算或颤振计算)向集群模块8 (a)的集群门户节点12 上的GRIA网格系统7或NOVA服务计算机11上的NOVA任务分发器5提交作业请求,并通过HTTPS方式将作业发送到GRIA网格系统的数据服务空间中或通过FTP方式将作业包发送到NOVA服务计算机11上的指定的数据中转目录并在其下建立工作目录放置解压缩的作业数据,然后向GRIA网格系统7和NOVA任务分发器5轮询各个作业的状态并计时若作业完成则通过GRIA网格系统7的数据服务或NOVA服务计算机11上的FTP服务器从上述工作目录下载运算结果,待所有结果汇集后继续算法模块3的遗传算法运行过程;若作业运行时间超过了计算客户端4的参数预设的值(1800秒)则宣布作业超时,重新提交作业包最多3次,若仍然失败则向控制模块1宣告任务失败。作业提交到NOVA任务分发器5后,NOVA任务分发器5将作业进行排队,并通过 NOVA计算代理6 了解集群模块8的资源情况,若存在空闲且符合要求资源则将作业包分发到对应的集群模块8(b)或(c)中集群门户节点12上的NOVA计算代理6,NOVA计算代理6 将通过FTP方式从中转目录将作业包下载到计算代理的临时工作目录,然后将作业提交到集群模块8的作业管理系统OpenPBS或Condor,由作业管理系统将各个作业包分发到各自的计算节点9进行静气弹(Nastran)或颤振(HAJIF-II)计算。提交到GRIA网格系统8的作业则提交到相连的集群模块8 (a)的集群管理系统 OpenPBS,转发到各个计算节点9调用Nastran服务进行静气弹计算,并监视作业运行的情况。
当集群模块8完成了作业时,NOVA计算代理6将通知NOVA任务分发器5座业已完成并将集群模块8返回的作业输出文件从计算代理的临时工作目录转存到NOVA任务分发器5的数据目录下该作业对应的工作目录,则NOVA任务分发器5通知计算客户端4 ;GRIA网格模块7也从集群模块8回收作业结果并通知计算客户端4。计算客户端4将通过对两种网格平台不同的借口,以HTTPS方式从GRIA网格系统7的数据服务器,以FTP方式从NOVA 任务分发器5的工作中转目录中将计算结果文件下载到用户计算机10中的算法模块3工作目录,供算法模块使用。验证运行取得了圆满的成功,因此在项目接下来的研究中搭建了用于颤振和升力的多学科联合优化的网格平台系统,如下图5所示与验证系统相比,实际优化系统中取消了部署在中国北航和欧洲LMS的 OpenPBS-Linux集群模块8 (a)和(b),保留北航的Condor-Windows集群模块8 (c)并运行 HAJIF-II服务进行升力计算;同时在!^hG SCAI部署OpenPBS-Linux集群模块8(d)以提供噪声求解响应面服务。此时计算客户端4将通过GRIA网格系统7与集群模块8(d)连接, 而通过NOVA任务分发器5和NOVA计算代理6连接到集群模块8 (c)。如此,则算法模块3 可以使用来自i^hG SCAI的噪声求解响应面服务和来自北航的HAJIF-II服务进行优化计算。优化算例在平台上进行了 40余次遗传算法迭代,每轮迭代在基于服务的欧洲和中国的集群上进行噪声和机翼升力联合优化计算3000次,整个优化过程中共进行12万次计算,每次计算历时15天,共进行了两次,得到了很好的结果重复性,达到了预期的目标。
权利要求
1.面向服务异构网格上的工作流驱动遗传算法航空优化系统,其特征在于该系统包括控制模块(1),作为系统的用户接口,其功能是用户通过其管理该系统的任务启动和中止,输入运行参数,监控系统运行状态,对用户进行管理;驱动模块O),与控制模块(1)和算法模块C3)连接,其功能是管理任务的输入数据和参数、输出数据,驱动算法模块( 组织和运行工作流;算法模块(3),与驱动模块( 和计算客户端(4)连接,其功能是执行遗传算法的逻辑过程,进行遗传算法优化,并将该算法中生成的大量并行计算任务提交到计算客户端(4) 进行计算;计算客户端G),与一或多个NOVA任务分发器(5)或GRIA网格系统(7)相连接,另一方面连接算法模块(3),其功能是接收和转存算法模块(3)的数据,提交计算作业包至GRIA 网格系统(7)或NOVA任务分发器(5),以及过程监控,在运算完成时输出结果数据;NOVA任务分发器(5),与多个由驱动模块O)、算法模块C3)和计算客户端(4)的组成连接,又可与一或多个NOVA计算代理(6)连接,其功能是接收计算客户端(4)的作业请求,并进行排队调度,将其分发到各个NOVA计算代理(6)并监控运行状态和结果,在作业完成时通知计算客户端回收作业输出数据;NOVA计算代理(6),与一个NOVA任务分发器( 和一个集群模块(8)连接,其功能是 从NOVA任务分发器(5)获得作业信息,并获取输入数据,转发到集群模块(8)以执行作业, 在作业运行完成时转存作业输出数据以供计算客户端回收;GRIA网格系统(7),与一个或多个计算客户端(4)和一个集群模块(8)相连接,其功能是接收计算客户端(4)的作业请求并存储作业数据,转发到集群模块(8)以执行作业,记录作业过程,并在完成时回收输出数据;集群模块(8),与一个计算代理(6)或GRIA网格系统(7)连接,其功能是管理一个由通过网络连接的包含多个计算节点(9)的集群并在其上运行计算代理(6)或GRIA网格系统(7)转发的、由算法模块C3)生成的作业。
全文摘要
本发明是一种面向服务异构网格上的工作流驱动遗传算法航空优化系统,本系统可以通过不同的计算代理接口方便地连接多种不同的网格资源,利用其中不同平台和架构的不同计算服务,使优化工作可以调用来自不同机构和解题服务提供方的远程资源(如计算颤振可使用Nastran或Zero等工具),为多个机构在保护各自产品、工具的知识产权的前提下的联合优化研究工作提供了一个解决方案。
文档编号G06F17/50GK102289540SQ20111018201
公开日2011年12月21日 申请日期2011年7月1日 优先权日2011年7月1日
发明者崔德刚, 张睿, 杜海, 熊青岳, 王永剑 申请人:中国航空工业集团公司科学技术委员会, 中航复合材料有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1