CN108268710B - 一种基于遗传算法的ima***动态重构策略优化方法 - Google Patents
一种基于遗传算法的ima***动态重构策略优化方法 Download PDFInfo
- Publication number
- CN108268710B CN108268710B CN201810003355.4A CN201810003355A CN108268710B CN 108268710 B CN108268710 B CN 108268710B CN 201810003355 A CN201810003355 A CN 201810003355A CN 108268710 B CN108268710 B CN 108268710B
- Authority
- CN
- China
- Prior art keywords
- time
- ima
- load
- module
- ima system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/15—Vehicle, aircraft or watercraft design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computer Hardware Design (AREA)
- Molecular Biology (AREA)
- Automation & Control Theory (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Aviation & Aerospace Engineering (AREA)
- Genetics & Genomics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Physiology (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于遗传算法的IMA***动态重构策略优化方法,属于综合电子***设计领域。本发明使用遗传算法技术解决了IMA***进行动态重构时配置方案状态空间***问题,通过加入IMA***可靠性、实时性和静态负载平衡分析方法,得到了一种有效的IMA***动态重构策略模型。通过对IMA***软硬件和时间配置进行重构配置编码,可以转化为IMA***配置方案AADL模型,通过AADL模型进行IMA***的可靠性、实时性约束和多维负载平衡分析,可以得到遗传算法分析优化中的致死基因和适应度函数。通过遗传算法操作,可以有效的寻较优的IMA***动态重构配置方案。
Description
技术领域
本发明属于综合电子***设计领域,涉及一种航空电子***设计中的综合化航空电子***配置方法,具体涉及一种在综合化航空电子***(IMA)动态重构时通过遗传算法对其软硬件配置策略进行优化的方法。
背景技术
航空电子***涉及通信、导航、识别、探测、飞行管理、显示控制等功能,为飞行员提供全面准确的战场态势信息,以增强飞行员对战场环境中潜在威胁进行识别、监控、分析和反应的能力,是整个战机的中枢神经。航空电子的发展经历了分立式、联合式、综合式以及先进综合式几个阶段,旨在增强航空电子***功能、性能,降低飞机生命周期费用的同时,解决***软硬件的升级移植问题。
由于现代飞机结构、功能复杂,故障位置、构成的变化,运行模式、运行环境以及结构等问题的限制,工程师不可能定义所有的配置来应对飞机起飞后所有可能发生的关键情况,因而***需要针对计划中或计划外事件实时生成各项配置,即我们常说的***重构。***的动态重构是提高***可靠性的主要手段,在嵌入式***设计时,对***动态重构失效及其错误进行建模是件困难的事。
新一代航空电子***需要具有容错、重构功能,即在发生硬件故障时,需要对***进行重构,即将功能重新划分至安全的模块。由于IMA***模块的通用性,***配置的方式是多种多样可选的,并且任务需求的变化(例如巡航、搜索、攻击等模式切换)或故障的不确定性(模块故障、分区故障、应用软件故障等)导致***根据需要重构时***配置的方式也是多样的,不同的配置变化形成不同的配置方案和配置路径,各种不同的配置方案的综合性能的高低也不同。现有对IMA重构的分析方法仅限于对现有的IMA***配置方案进行基于模型的计算分析,通过不同配置方案之间多特性的比较来评价配置方案的优劣,而缺乏针对IMA重构过程,基于模型的可靠性、实时性和负载平衡特性综合的策略生成方法。针对在多任务模式和多约束条件下的动态重构策略设计问题,迫切需要研究一种IMA***动态重构策略的综合设计方法,构建一种设计支撑手段,为IMA***的综合化设计奠定基础,也将进一步支撑下一代IMA动态重构技术的发展。
IMA***配置涉及到应用软件部署到IMA平台之后,其关键特性是否满足***设计的要求,国内外相关研究机构对各个单项特性开展了专项研究。目前基于模型的IMA***特性分析已经有了许多完善的评价方法,针对IMA的可靠性研究主要集中在***体系架构的可靠性设计上,提出一些基于ARINC653以及ASSAC规范设计***来提高可靠性的方法,针对***的实时性要求提出了基于模型的***动态重构配置整体的实时性分析方法。在此之外,针对***重构配置的负载平衡分析方法还十分缺乏,无法在***可靠性实时性等指标满足的情况下比较不同配置方案的优劣。同时,这些方法只适用于评价现有的IMA***配置方案。在理论上虽然可以通过穷举所有可能的配置方案并进行评价以筛选最优的配置方案,但在实际的IMA***动态重构策略分析中,由于可能的配置方案存在状态空间***问题,通过穷举优化动态重构配置是难以实现的。对于IMA***复杂的软硬件绑定关系,无法通过穷举可能的配置方案找出最优的IMA***动态重构配置策略,需要一种能够在高效率搜索算法下通过综合多种特性对IMA***动态重构策略进行评估筛选以得到最优的IMA***配置方案的优化方法。
发明内容
本发明使用遗传算法技术解决了IMA***进行动态重构时配置方案状态空间***问题,通过加入IMA***可靠性、实时性和静态负载平衡分析方法,得到了一种有效的IMA***动态重构策略模型。通过对IMA***软硬件和时间配置进行重构配置编码,可以转化为IMA***配置方案AADL模型,通过AADL模型进行IMA***的可靠性、实时性约束和多维负载平衡分析,可以得到遗传算法分析优化中的致死基因和适应度函数。通过遗传算法操作,可以有效的寻较优的IMA***动态重构配置方案。
具体地,本发明的一种基于遗传算法的IMA***动态重构策略优化方法,分为以下步骤:
步骤一、建立基于AADL的IMA***动态重构策略分析模型;
使用AADL语言对IMA***结构和动态重构过程进行建模,建立IMA***动态重构策略分析模型,并在IMA***动态重构策略分析模型中加入IMA***策略优化分析所需要的***可靠性、实时性和负载平衡分析属性。针对可靠性分析,主要包括***各软硬件的基本可靠度和任务转移概率。针对实时性分析,主要包括***软件的响应和运行时间,任务转移概率和起始标识等。针对负载平衡分析,需要给出IMA模块的时间调度机制,明确各IMA模块允许的主时间框架长度和时间片单位,另外需要明确IMA***分区间通信接口和通道的顶层配置,即在不同的软硬件匹配关系下的配置。
步骤二、设置IMA***遗传算法分析算法;
采用遗传算法对IMA***进行分析,首先对IMA***的软硬件匹配和时间配置进行编码。在IMA***软硬件各项参数及顶层任务链确定,且设定IMA***的每个分区中仅工作一个软件的情况下,IMA***动态重构结构问题的参数可以用时间参数和空间参数表示,所述的时间参数包括软件占用的时间片数量和顺序,所述的空间参数是指软件所在的硬件位置。所述编码可以采用二进制编码,包含***配置的软件编号、硬件编号、时间片数量和顺序信息。
在将IMA***的不同特性作为个体判断条件来生成和筛选种群时,针对可靠性和实时性分析采用了现有的随机Petri网模型和分析方法进行分析。在负载平衡分析中,针对***的任务负载和通信负载,提出了多个评价指标,分别在时间和空间维度上用运行时间比和内存占用比描述了***的任务负载;针对通信负载,提出了总线带宽占用量描述***空间维度上的通信负载。综合以上特性分析,得到IMA***动态重构策略优化的判断依据。
在采用遗传算法进行IMA动态重构方案的搜索优化时,初始种群选择了在随机配置方案优选基础上迭代产生较优的初始种群的方法。遗传算法操作中选择轮盘赌选择法、单点交叉法或二进制变异算法。在终止搜索时,确定搜索的代数上限作为终止条件。
步骤三、计算***配置的可靠性与实时性作为个体筛选条件;
通过***软硬件匹配和时间配置编码,可以得到IMA***的AADL配置模型,同时在IMA***AADL多特性分析基础模型中,已经包含了***软件和硬件相应的可靠性和实时性属性,可以通过AADL模型转化为Petri网模型并在Petri网模型的基础上计算IMA***在当前配置下的可靠性和实时性指标,并与设计允许值进行比较,用以在遗传算法中作为致死基因判断个体是否存活。
步骤四、对配置方案进行负载平衡分析得到个体适应度;
在IMA***软硬件配置和动态重构时,配置方案首先需要满足***的性能要求,如可靠性和实时性需求。在满足这些必要条件的基础上,我们仍然希望IMA***配置方案能够更好地适应当前的任务需求,使得IMA***的工作效率最大化,并减小IMA模块间的通信需求,降低发生故障的可能。通过借鉴分布式***中负载平衡问题的分析方法,针对IMA***进行静态负载平衡分析,通过运行时间比和内存占用比描述IMA***的任务处理能力,通过IMA模块间通信占据的总线带宽描述其通信能力,以作为IMA***配置方案的评价指标。综合以上三种评价指标作为个体的适应度函数。
步骤五、将遗传算法搜索得到的最优基因解码得到IMA***动态重构配置方案;
遗传算法在搜索收敛或完成规定代数后,可以得到算法最优的个体基因,其中包括IMA***动态重构配置方案的软硬件匹配和时间调度信息,通过解码得到相应的软硬件匹配矩阵和各模块上的时间调度信息,将这些信息对应到***架构的AADL模型上,可以得到相应的IMA***动态重构配置方案。
本发明的优点在于:
1、采用了遗传算法对IMA***进行动态重构策略优化,解决了IMA***动态重构配置方案空间***问题。
2、在遗传算法对IMA***动态重构配置进行描述时,具体采用了对***软硬件匹配和时间配置进行编码的方式,在解码时将编码信息加入到IMA***AADL模型中去以得到完整的配置方案AADL模型。将IMA***配置的可靠性和实时性作为致死基因加入到遗传操作中,保证了配置的可靠性和实时性满足IMA***要求。
3、所述步骤四中,用以判断配置方案适应度所采用的***负载平衡分析方法,综合了IMA***配置方案的任务负载和通信负载。其中任务负载包括以通过运行时间比描述的时间维度任务负载和以内存占用比描述的空间维度上的任务负载。在通信能力的描述上,由于IMA***的通信时延远小于任务按时间片轮转的调度间隔,只包含以IMA模块间通信占据的总线带宽描述的空间维度上的通信负载。
附图说明
图1是本发明提供的基于遗传算法的IMA***动态重构策略优化方法流程图;
图2是IMA***分区调用过程示意图;
图3是IMA***不同模块内存占用示意图;
图4是IMA***分区间通信方式多层结构图;
图5是实例IMA***基本应用程序AADL模型示意图;
图6是实例IMA***可靠性、实时性分析软件架构Petri网模型图;
图7是IMA***配置方案解码得到的AADL模型示意图。
具体实施方式
下面结合附图和实施例对本发明进行详细说明。
现有对IMA***动态重构的分析方法仅限于简单地用包含配置信息的模型生成配置文件,并直接通过配置信息仿真分析不同配置下的可调度性和资源约束,只能判断***动态重构配置是否满足功能需求和可靠性、实时性等单个特性指标,无法根据***的整体需求自动生成适合的动态重构配置方案。本发明针对IMA***在动态重构后应达到的高可靠性和性能完备等需求,在建立包含特性分析属性的IMA***动态重构策略分析模型的基础上,分别在IMA***可靠性、实时性和负载平衡特性上进行分析,建立多个IMA***单项分析模型。并在此基础上,通过遗传算法对***的配置方案进行编码,将***可靠性、实时性和负载平衡需求加入到遗传算法的筛选搜索条件中,以得到满意的IMA***动态重构配置方案,完成了一种基于遗传算法的IMA***动态重构策略优化方法。
如图1所示流程图,本发明提供的基于遗传算法的IMA***动态重构策略优化方法,包括如下步骤:
步骤一、建立基于AADL的IMA***动态重构策略分析模型。
使用AADL语言为建模语言,对IMA***体系结构进行建模,体系结构设计模型中,首先根据IMA***的概要设计文档对***的软件、硬件和软硬件间连接关系进行建模,包括***的模块数量,模块上的分区配置和总线连接方式等;然后根据***详细设计文档在模型中加入各部分的功能属性,例如总线带宽、端口通道配置,软件需要的运行时间长度和存储空间、***模块允许的最大主时间框架长度、时间片颗粒度和存储空间等。在体系结构设计模型的基础上建立动态重构模型,用AADL错误附件等描述IMA***重构触发条件,用行为附件和模态描述重构过程和重构前后的不同状态。在动态重构模型中加入IMA***策略优化分析所欲要的***可靠性、实时性和负载平衡分析属性,得到本发明的包含特性分析属性的IMA***动态重构策略分析模型。
针对可靠性分析,主要包括***各软硬件的基本可靠度和任务转移概率。针对实时性分析,主要包括***软件的响应和运行时间,任务转移概率和起始标识等。针对负载平衡分析,需要给出IMA模块的时间调度机制,明确各模块允许的主时间框架长度和时间片单位,另外需要明确IMA***分区间通信接口和通道的顶层配置,即在不同的软硬件匹配关系下的配置。需要加入的特性分析属性如表1、表2。
表1可靠性分析输入属性
表2实时性分析输入属性
步骤二、IMA***动态重构配置编码,设置IMA***遗传算法分析算法;
IMA***在实际的航空器运用中运行的任务较多,将任务分配在IMA***的IMA模块上并为IMA模块分配相应时间片的两级配置方式又十分灵活多变,所以在IMA***配置和重构时,存在配置方案状态空间***的问题。在使用AADL语言对IMA***进行建模时,需要采用ARINC653附件对IMA模块内部的分区结构进行建模,将AADL结构模型内的组件处理器、进程和线程分别对应到ARINC653附件中的模块、分区和分区内进程。在ARINC653附件中,对应于实际的通用IMA***标准,一个对应IMA模块的子***可以绑定255个分区进程。在将任务分配到分区之后,还需要配置任务的运行时间,在不确定的主时间框架上为任务划分时间片,这将导致配置方案的状态空间进一步增加。
设一个IMA***配置空间模型:
F=(d,s,n,T,t0)
其中d为IMA***的模块数量,s为IMA***的软件数量;n为IMA***的模块可容纳的最大分区数量;T为IMA***允许的最大主时间框架周期,t0为IMA***的模块划分时间片的颗粒度,T是t0的倍数。
对于一个中等大小的IMA***,假设:
F=(d,s,n,T,t0)=(4,20,225,120,10)
由于IMA***中各模块是等效的,可以通过第二类斯特林数方法计算IMA***的动态重构配置方案个数为:
可以看到,在进行IMA***第二级的时间维度配置之前,***可能的重构配置方案个数已经达到了百亿级别,如果使用简单地排列和筛选方法得到最优重构配置方案,由于***的可靠性实时性等分析需要在***配置方案确定后才能进行,无法生成全部的重构配置方案将导致后续工作无法开展。
通过计算可知,通过暴力枚举和筛选的方法得到IMA***的最优重构配置方案是不现实的。因此,考虑采用合适的启发式算法寻找重构方案的较优解。遗传算法作为一种借鉴生物界的进化规律演化而来的随机化搜索方法,可以直接对结构对象进行操作,不存在求导和函数连续性的限定,并且具有内在的隐并行性和更好的全局寻优能力。遗传算法采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则。而在对IMA***进行最优重构方案搜索时,遇到的问题除了搜索空间过大以外,还有需要综合可靠性、实时性和负载平衡特性来进行方案评估,评判标准十分复杂。为了克服这些问题,选择使用遗传算法进行IMA***重构方案的分析优化。
采用遗传算法对IMA***进行分析,需要首先设计遗传算法框架。遗传算法的搜索流程是基于生物学的,需要首先建立IMA重构配置方案的初始种群,初始种群中的个体包含了用二进制编码的IMA***动态重构配置方案信息。然后需要评估初始种群中个体的“自然环境”适应度,适应度由重构配置方案中需要评价的特性来决定。初始种群通过选择和繁殖产生下一代,形成新种群。这时,新种群的个体代表了由基因交叉和变异得到的新的重构配置方案。遗传算法可以不断地重复这个过程以找到最适应的个体,设置终止条件可以在有限的时间内得到一个较优的重构配置方案。由此,遗传算法基本的算法实际包括a)编码、b)适应度函数、c)初始种群设计、d)遗传操作和终止条件,下面将分别详细介绍这几点。
a)编码;
在IMA***软硬件各项参数及顶层任务链确定、且设定每个分区中仅工作一个软件的情况下,IMA***重构结构问题的参数可以用时间参数和空间参数表示,所述的时间参数包括软件占用的时间片数量和顺序,所述的空间参数是指软件所在的硬件位置。
软件编号、硬件编号、时间片数量和顺序均为离散变量,采用二进制编码具有直接的语义。模块具有的空闲时间片长度应同样遵守时间片颗粒度t0,同样可以用二进制编码表示。
设函数f(x1)和f(x2,x3,x4),其中,
x1={1,2,…,s},x2={1,2,…,T/t0},x3={1,2,…,n},x4={1,2,…,d}
其中s为IMA***的软件数量;T为IMA***允许的最大主时间框架周期,t0为模块划分时间片的颗粒度;n为模块可容纳的最大分区数量;d为IMA***的模块数量。
采用长度为L=sl+dl'的二进制字符串进行定长编码,其中,
l=l1+l2+l3=[log2(T/t0)]+[log2n]+[log2d]
l'=[log2(T/t0)]
l1,l2,l3分别表示软件所占的时间片单位长度,所在模块的调度顺位和所在模块,l'表示模块的主时间框架长度。各数值均从0开始计数。
所有配置方案构成状态空间:
SL={a1,a2,…,ak}
其中,对于任意一个重构配置方案k的编码为:
ak=(ak1,ak2,…,aks,ak'1,…,ak'd)
其中包含s个针对软件的编码因子(ak1,ak2,…,aks)和d个针对硬件的编码因子(ak'1,…,ak'd),分别为:
aks=(aks1,aks2,…,aksl),ak'd=(ak'd1,ak'd2,…,ak'dl')
重构配置方案即个体编码的字符串形式为:
sk=ak11ak12…ak1lak21…akslak'11ak'12…ak'1l'ak'21…ak'dl'(从右往左依次表示从低位到高位)。
例如,对于F=(d,s,n,T,t0)=(4,20,225,120,10)的一个IMA***来说,每个配置方案的编码长度为296位二进制码,其中l1=l'=4,l2=8,l3=2。
对于某个配置方案,对于第1个软件,其编码为aks1=00110000001000,编码长度为14。由于各项数值都从0开始计数,从二进制还原为十进制时需要+1。所以对于该软件,其中前l1位为0011,表示软件占用4个单位的时间片长度,之后l2位数00000010表示该软件是其所属模块中的第4个软件,最后l3位为00表示该软件在第1个模块上;
对于第1个模块其编码为ak'd1=1000,表示该模块的主时间框架长度为9,等于该模块中所有软件占用时间片长度及所有空闲时间片长度之和。
b)适应度函数;
通过编码译码得到的IMA***重构配置方案的Petri网模型,进而计算IMA***的可靠性和实时性指标。可靠性和实时性只需满足***需求,不作为适应度函数评价指标,仅在构建子群时作为致死基因考虑。
负载平衡特性分析中,可以直接通过编码中含有的分区信息计算***的时间维度任务负载,而空间维度的任务负载需要读取顶层的内存分配情况,进而通过还原的AADL模型进行计算。由于遗传算法编码中不含有***的信息交互方式信息,***应该在顶层的软件任务链中预设各任务之间的分区内和分区间信息交互方式。通过读取顶层的信息交互方式,可以还原得到包含端口通道信息的AADL模型,进而计算***相应的通信负载平衡指标。在进行指标综合之后,负载平衡指标可以作为适应度函数的一部分评价个体的适应度。
当***负载平衡花费越小时,重构配置方案越优。
则适应度函数f(x),当costmax-cost(x)>0,f(x)=costmax-cost(x);否则,f(x)=0。
其中,costmax表示***可能达到的最大负载花费,即选择负载花费最大的配置方案时***的负载花费;cost(x)表示选择配置方案x时***的负载花费。
c)初始群体选取。
通过代码编写完成后,实际验证确定遗传算法的初始种群选取方法,由于IMA***状态空间极大而且各任务对特性影响不同,预知哪一类分配方法容易达到更高的适应度较为困难,所以在选择初始种群时,先随机生成一定数目的个体,然后从中挑出最好的个体加到初始种群中。这种过程不断迭代,直到初始种群中个体数达到了预先确定的规模。
例如,对于IMA***F=(d,s,n,T,t0)=(4,20,225,120,10),其可能的重构配置方案个数在百亿以上级别。在获得初始种群时,每次随机生成100个重构配置方案,然后从中挑出最好的个体,不断迭代直到得到100个个体作为初始种群。
d)种群进化;
遗传操作(种群进化)包括以下三个基本遗传算子:选择、交叉和变异。个体遗传算子的操作都是在随机扰动情况下进行的。因此,群体中个体向最优解迁移的规则是随机的,但这种随机化操作和传统的随机搜索方法不同,是一种高效有向的随机搜索方法。在采用遗传算法进行IMA重构配置方案的搜索优化时,本发明选择了比较常见的遗传操作方法。
在选择运算中,采用轮盘赌选择法(roulette wheel selection),在该方法中,各个个体的选择概率和其适应度值成比例。个体适应度越大,其被选择的概率就越高,反之亦然。对于可靠性和实时性不满足的个体表现为无法存活,不会被选择到交配对中。计算出初始种群中各个个体的选择概率后,为了选择交配个体,需要进行多轮选择。每一轮产生一个[0,1]之间均匀随机数,将该随机数作为选择指针来确定被选个体。个体被选后,可随机地组成交配对,以供后面的交叉操作。
在交叉运算中将上述交配对的基因进行交换,产生新的基因组合,以期望有益的基因能够组合在一起。采用了最常用的单点交叉(one-point crossover)方法。具体操作是:在个体串中随机设定一个交叉点,实行交叉时,该点前或后的两个个体的部分结构进行互换,并生成两个新个体。
在变异运算中,对初始种群中的个体串的某些基因座上的基因值作出变动,以避免算法进入局部收敛。采用了二进制变异算法,变异概率为0.01。
e)终止条件;
设置迭代的代数上限作为终止条件以保证***能够在适宜的时间内完成搜索过程,对于规模约为F=(d,s,n,T,t0)=(4,20,225,120,10)的IMA***,设定遗传算法的代数为200代。
步骤三、计算***配置的可靠性与实时性作为个体筛选条件。
通过***软硬件和时间配置编码,可以得到IMA***的AADL配置模型,同时在IMA***AADL多特性分析基础模型中,已经包含了***软件和硬件相应的可靠性和实时性属性,可以通过AADL模型转化为Petri网模型并在Petri网模型的基础上计算***在当前配置下的可靠性和实时性指标,并与设计允许值进行比较,用以在遗传算法中作为致死基因判断个体是否存活。
对进行IMA***可靠性分析,按照转化规则,将AADL模型中的构件和连接件分别对应到Petri网模型中的库所和变迁,将构件、连接件之间的连接关系对应到有向弧,将AADL模型转化为可靠性分析Petri网模型,根据加权SAPetri网(Software Architecture PetriNet,软件架构Petri网)的迁移概率生成测试路径PW,测试路径PW的迁移概率可以计算如下:
其中,Pti表示软件架构Petri网中弧i的迁移概率。
测试路径PW为C1→L1→C2→L2→……→Ln→Cn+1,包括n+1个构件Ci对应的库所和n个连接件Li对应的变迁,库所和变迁间共有2n条弧,该测试路径PW的可靠性计算如下:
其中,Rci是SAPN该测试路径PW中构建Ci对应的库所的可靠度,RLi是SAPN该测试路径PW中连接件Li对应的变迁的可靠度,RTi是库所和变迁间有向弧Ti的可靠性;
***的可靠性RSA,即整个SAPN的可靠性通过全部m条测试路径PW的可靠性和迁移概率计算得到,其中每条测试路径考虑了n+1个库所和n个变迁及其之间迁移过程的可靠性,如下式:
其中,PPWi表示沿第i个测试路径PW的迁移概率,RPWi表示第i个测试路径PW的可靠性。
当重构配置方案的可靠度RSA不满足***要求时,该重构配置方案对应编码的个体应在相应的种群中被排除。
进行实时性分析时,首先根据IMA***AADL模型到Petri网模型的转换规则将AADL***架构模型转化成SAPetri网模型;除了将描述任务执行和信息交互的时间属性转化成位置元素和迁移元素中的时间特性外,还需要对描述任务响应时间的属性进行转化,根据时间SAPetri模型和给出的任务起点和终点位置生成测试路径,可以通过广度优先搜索(BFS)算法求出从初始点到终止点的测试路径,对每条测试路径进行实时性分析,可以计算:
将测试路径上元素的时间属性累加可得实时性分析结果。测试路径PW上共有2n+1个元素O(包括n+1个构件对应的库所和n个连接件对应的变迁),其中代表第i个构件O的时间属性,TPW表示该测试路径PW花费的总时间。对于所有测试路径,IMA重构配置策略应满足其中代表***允许的测试路径j的最大时间限,TPWj表示当前配置下测试路径j的实际花费时间。当重构配置方法不满足上述条件时,该个体应在所在的种群中被排除。
步骤四、对重构配置方案进行负载平衡分析得到个体适应度;
在IMA***软硬件配置和动态重构时,重构配置方案首先需要满足IMA***的性能要求,如可靠性和实时性需求。在满足这些必要条件的基础上,我们仍然希望IMA***配置方案能够更好地适应当前的任务需求,使得***的工作效率最大化,并减小模块间的通信需求,降低发生故障的可能。通过借鉴分布式***中负载平衡问题的分析方法,针对IMA***进行静态负载平衡分析,通过运行时间比和内存占用比描述IMA***的任务处理能力,通过模块间通信占据的总线带宽和通信步长描述其通信能力,以作为IMA***重构配置方案的评价指标。
(1)运行时间比;
在IMA***中,不同于分布式***处理单元上的任务抢占调度方法,任务首先被分配到不同的分区,各个分区在一个主时间框架内,分配不同的时间窗口。分区基于时间片轮转的调度策略,只能在分配的时间槽内获取处理资源并被调用执行。如图2所示,在一个主时间框架中可以包含1到k个分区和部分空闲分区,空闲分区可以位于任何两个工作分区之间。各个分区按照时间顺序从左向右顺序执行,在执行完当前主时间框架之后,秩序周期循环运行。
对于一个一般性的IMA***,***包含d个模块。其中第l个模块上有kl个分区。第l个模块在时间维度上的任务负载可以表示为:
其中,ζ1为第l个模块的最大运行负载值,表示该模块的计算处理能力;ωf1为第l个模块上第f分区的任务载荷。
IMA***同一模块上的各分区任务是分时进行的,所以在上述的第l个模块在时间维度上的任务负载公式中,第l个模块在时间维度上的任务负载表示为第l个模块上所有分区的任务载荷的和与第l个模块最大运行负载值之比。针对IMA***的结构和调度特性,我们可以对所述的第l个模块在时间维度上的任务负载表示公式进行进一步的简化。
在IMA***基于时间片轮转调度策略中,即使分区在调用执行过程中发生故障,如分区不能在分配的时间槽内结束运行,***会强制结束该分区,将时间窗口移至下一个时间片。相应的,即使分区应用在分配的时间槽结束前已经完成,***也不会将这部分空闲时间分配给其他任务。即任务占用的时间维度计算资源和其本身的计算需求无关,而只与分配的时间槽长度相关。当分配的时间片过少使得任务无法完成时,***的调度需求得不到满足,重构配置方案会被直接否决,不需要进一步的负载平衡分析。所以第l个模块上第f分区的任务载荷为:
所以第l个模块在时间维度上的任务负载的表示公式可以转化为:
在IMA***中,d个模块是同时运行的,IMA***在时间维度上的任务负载costtimescale表示为各模块负载的最大值,即:
由上式可以看出,对于满足***调度需求的重构配置方案,***在时间维度上的任务负载与模块各分区任务的实际计算需求无关,而仅与时间片的分配有关。当costtimescale最小时,可以得到***在时间维度上计算能力负载最优的重构配置方案。
(2)内存占用比;
IMA***各个模块具有独立的处理单元,各分区按照时间片轮转调度方法占用处理单元资源,每个分区任务运行时,除了分配到的时间片长度不同以外,占用的模块内存大小也不同。为了更优的利用***资源和提高***的健壮性,需要尽可能的平衡各模块的内存占用比。
***的配置方案变化的最小单位为一个分区,相对于不同分区任务之间内存占用量的差别,单个分区运行的内存占用量波动可以忽略不计。由于***需要保证运行功能,单个分区占用的内存资源不会超过模块内存上限,可以通过任务运行内存占用量的平均值表征分区的空间维度处理能力载荷。
如图3所示,模块1的主时间框架长度为T1,其内存占用量在每个分区运行时是不变的,而分区之间的内存占用量不同,当运行到空闲时间片时,模块的内存占用量为0。模块2的主时间框架长度为T2,模块r的主时间框架长度为Tr,各模块的主时间框架长度不同,分区的时间片划分除遵循相同的最小颗粒度外也不尽相同,进而每个模块上分区占用内存的变化规律也不相同。IMA***各模块的分区数量、分区占用的时间片长度和主时间框架长度都是不同的,占用内存量相同的两个任务当其运行时间不同时,对***负载平衡的影响也是不同的。所以考虑IMA***在空间维度上的负载能力时,仍然需要按照时间属性对内存占用量进行加权。
空间上的任务负载可以表示为:
其中,M1为第l个模块的总内存大小;mf1为第l个模块上第f分区运行占用的平均内存量。
为了满足IMA***的硬件可替代性,各模块的内存总量是相同的,对任意模块l,Ml=M1=M,***空间维度上的任务负载costspacescale表示为各模块空间负载的最大值,即:
利用任务运行的内存占用描述***在空间维度上的负载能力时,需要考虑任务占用内存的大小和时间,因此也可以说内存占用比是在时空耦合维度上描述了***的负载能力。当costspacescale最小时,可以得到***负载能力的最优的重构配置方案。
(3)总线带宽占用量;
IMA***中,分区间通信按照采样或队列模式通过端口间的通道缓存进行,如图4,通道向上连接应用层的分区端口,向下连接硬件层的硬件端口,可以连接一个源分区和一到多个目的分区端口。在时间资源上,分区间的通信延迟远小于分区任务按照时间片轮转运行带来的时间偏差,分区间通信时间是由分区所在模块的时间片配置决定的,在满足***实时性要求的情况下,不会造成额外的时间资源消耗。
在空间资源上,同一模块内,模块预先配置足够的缓存用于分区间信息交互,不影响任务运行占据的空间资源。而模块间的分区通信需要经过***总线进行,可以用***总线带宽的占用量来描述***的通信能力。在IMA***中,不同于分布式***网络中信息传递的带宽动态分配,某两个分区通过***总线进行通信时用到的端口和可占用的总线带宽是预先配置的,所以IMA***的通信资源花费costspacecomm仅与配置的信息交互通道数量和通道的预设带宽值有关,可以表示为:
其中,mck为通道k占用的总线带宽,Mc为***总线的带宽总量。
由于***总线带宽分配是预设的,通道的使用效率并不影响***通信开销,在IMA***中主要是通过减少***总线上的通道数量,尤其是占用总线带宽较大的通道来减少***的通信开销。
(4)评价指标综合;
由以上IMA***负载平衡评价指标可以看出,IMA***可以根据其***结构参数进行静态负载平衡分析,不需要借助其他模型来考虑任务运行产生的影响。即IMA***的负载平衡分析可以借由其AADL结构模型进行,不需要建立单独的负载平衡分析模型。
IMA***的预先配置在确保***功能的同时,降低了***模块和分区间的耦合,因此得到了各评价指标是相对独立的,在进行指标综合时,不再需要规避***运行状态引起的指标效用变化。为了更加灵活的描述IMA***的负载平衡特性,对三种指标进行加权求和:
当***总负载cost越小时,表明***配置方案的负载平衡特性越优。
遗传算法的适应度函数f(x)有:
当costmax-cost(x)>0,f(x)=costmax-cost(x),否则,f(x)=0。
步骤五、将遗传算法搜索得到的最优基因进行解码,得到IMA***动态重构配置方案。
遗传算法在搜索收敛或完成规定代数后,可以得到算法最优的个体基因,其中包括IMA***动态重构配置方案的软硬件匹配和时间调度信息,通过解码得到相应的软硬件匹配矩阵和各模块上的时间调度信息,将这些信息对应到***架构的AADL模型上,可以得到相应的IMA***动态重构配置方案。
以下通过一个简化的飞控***实例描述IMA***动态重构策略优化方法的具体实施过程。
在飞行控制***中,“飞行状态选择器”(State_selector)及“飞控操纵台”(Operating)是飞控***的人机接口。它具有驾驶员对***工作状态的设置功能及对***工作状态的指示功能。***由增稳/控制增稳(pcs,lcs)、自动驾驶仪控制/模态(ap_manage)和自动配平(pap,lap)构成;其中增稳/自动增稳和自动驾驶仪控制/模态分别有稳定传感器和GPS作为信息输入接口。同时***还有控线分***,主要是飞行状态选择器(CDS)、启动逻辑、余度管理、操作***和***BIT组成。该方法的具体实施步骤如下。
步骤一、建立基于AADL的IMA***动态重构策略分析模型。
该***主要软件程序的AADL模型示意图如图5,操作***、启动逻辑、BIT、余度管理、增稳/控制增稳、自动配平、自动驾驶仪控制/模态、飞行状态选择作为软件应用,飞控操作台、飞行状态选择器、稳定传感器和GPS作为外设,软件、应用之间的连接关系如图所示。在AADL模型中加入***给的可靠性和实时性分析属性数据如表3、表4。
表3可靠性分析数据
表4实时性分析数据(单位:ms)
配置该IMA***的动态重构策略要求,***重构后,应将以上10个基本软件应用分配到5个等效的IMA***模块上,模块的时间配置在以下配置空间模型中给出。
***配置空间模型为:
F=(d,s,n,T,t0)
其中d为***的模块数量,s为***的软件数量;n为模块可容纳的最大分区数量;T为***允许的最大主时间框架周期,t0为模块划分时间片的颗粒度。
对于该IMA***有:
F=(d,s,n,T,t0)=(5,10,10,10,1)
步骤二、设置IMA***遗传算法分析算法。
a)编码
设函数f(x1),f(x2,x3,x4),其中,
x1={1,2,…,10},x2={1,2,…,10},x3={1,2,…,10},x4={1,2,…,5}
采用长度为L=sl+dl'=130的二进制字符串进行定长编码,其中,
l=l1+l2+l3=[log2(T/t0)]+[log2n]+[log2d]=11
l'=[log2(T/t0)]=4
建立位串空间:
SL={a1,a2,…,ak}
配置方案k的编码为:
ak=(ak1,ak2,…,aks,ak'1,…,ak'd)
其中包含s个针对软件的编码因子和d个针对硬件的编码因子:
aks=(aks1,aks2,…,aksl),ak'd=(ak'd1,ak'd2,…,ak'dl')
配置方案即个体的向量ak=(ak1,ak2,…,aks,ak'1,…,ak'd),其字符串形式为
sk=ak11ak12…ak1lak21…akslak'11ak'12…ak'1l'ak'21…ak'dl'(从右往左依次表示从低位到高位)。b)适应度函数
适应度函数f(x),
当costmax-cost(x)>0,f(x)=costmax-cost(x);否则,f(x)=0。
其中costmax和cost(x)的计算方法将在步骤4中给出。
c)初始群体选取
例如,对于IMA***F=(d,s,n,T,t0)=(5,10,10,10,1),软硬件匹配状态空间数量按照第二类斯特林数方法计算得对每种软硬件匹配配置又拥有不同数量的时间片调度配置方案。选择在获得初始群体时,每次随机生成100个状态方案,然后从中挑出最好的个体,不断迭代直到得到100个个体作为初始群体。
d)遗传操作
在选择运算中,采用轮盘赌选择法,各个个体的选择概率和其适应度值成比例。对于可靠性和实时性不满足的个体表现为无法存活,不会被选择到交配对中。计算出群体中各个个体的选择概率后,为了选择交配个体,需要进行多轮选择。每一轮产生一个[0,1]之间均匀随机数,将该随机数作为选择指针来确定被选个体。在交叉运算中将上述交配对的基因进行交换,产生新的基因组合,以期望有益的基因能够组合在一起。采用了最常用的单点交叉方法。在变异运算中,采用了二进制变异算法,变异概率为0.01。
e)终止条件
设置迭代的代数上限作为终止条件以保证***能够在适宜的时间内完成搜索过程,通过实际验证,对于该IMA***,遗传算法代数设置为50代即可得到较优的搜索结果。
步骤三、计算***配置的可靠性与实时性作为个体筛选条件
建立Petri网模型进行IMA***重构策略的可靠性和实时性分析,根据AADL体系结构模型转化到Petri网图形如图6,其中C1到C10代表构件C1到C10转化得到的库所,L1到L10代表连接件L1到L10转化得到的变迁,搜索得到测试路径如表5。
表5测试路径
根据路径转移权值平均原则,得到各路径的平均转移概率,进而计算各测试路径的路径可靠度如表6:
表6测试路径可靠度
编号 | 转移概率 | 路径可靠度 |
P1 | 0.031250 | 0.790 |
P2 | 0.078125 | 0.900 |
P3 | 0.062500 | 0.922 |
P4 | 0.125000 | 0.922 |
P5 | 0.078125 | 0.890 |
P6 | 0.125000 | 0.900 |
P7 | 0.125000 | 0.922 |
P8 | 0.125000 | 0.922 |
P9 | 0.031250 | 0.860 |
利用上述计算结果带入体系结构计算总公式,计算的体系结构可靠度为:
RSA=0.7074085/0.78125=0.9055
***的可靠度指标Ro=0.9000,RSA>Ro满足***的可靠性要求。
根据测试路径经过构件的执行时间和触发时间计算各测试路径的运行时间如表7:
表7测试路径运行时间
对于所有路径,IMA重构配置策略的运行时间应小于最长运行时间限。
对于可靠性和实时性不满足要求的个体,应当在子代群体中排除。由上述计算可以得出在该配置方案中可靠性和实时性都满足,可以继续进行个体的适应度分析。
步骤四、对配置方案进行负载平衡分析得到个体适应度
从***重构策略AADL模型中提取***配置信息和通信信息如下表8、表9:
表8***软硬件配置(时间单位:s)
表9***通信配置
且***各模块的内存总量相同,有Ml=M=1000,***总线带宽总量Mc=3000。
根据以上信息,计算***配置方案的三个负载平衡特性:
(1)运行时间比
***模块l在时间维度上的任务负载可以表示为:
各模块的任务负载如表10:
表10模块任务时间负载
***在时间维度上的任务负载表示为各模块负载的最大值,有:
costtimescale=max(l)tcost=0.9
(2)内存占用比
各模块的内存总量相同,Ml=M=1000,每个模块的任务负载如表11:
表11模块任务空间负载
***空间维度上的任务负载表示为各模块空间负载的最大值,即:
costspacescale=max(l)scost=0.85
(3)总线带宽占用量
IMA***的通信资源花费仅与配置的信息交互通道数量和通道的预设带宽值有关,将表中同一模块内的通信舍去,其余各项通道带宽相加可以得到:
其中mck为通道k占用的总线带宽。
(4)评价指标综合
对三种指标进行求和:
cost=costtimescale+costspacescale+costspacecomm=0.9+0.85+0.8=2.55
当***总负载cost越小时,表明***配置方案的负载平衡特性越优。
遗传算法的适应度函数有f(x)=costmax-cost(x)=3-2.55=0.45。
步骤五、将遗传算法搜索得到的最优基因解码得到IMA***动态重构配置方案
遗传算法在搜索收敛或完成规定代数后,可以得到算法最优的个体基因,其中包括IMA***动态重构配置方案的软硬件匹配和时间调度信息,通过解码得到相应的软硬件匹配矩阵和各硬件模块上的时间调度信息,将这些信息对应到***架构的AADL模型上,可以得到相应的IMA***动态重构配置方案。
假设当前方案为遗传算法得到的最优方案,从方案个体编码中可以得到的信息见表12表13:
表12软件配置信息
构件编号 | 构件位置 | 时间片长度 | 内存大小 |
C1 | M3 | 4 | 500 |
C2 | M1 | 4 | 500 |
C3 | M2 | 2 | 300 |
C4 | M2 | 2 | 200 |
C5 | M3 | 3 | 200 |
C6 | M4 | 2 | 300 |
C7 | M4 | 2 | 200 |
C8 | M2 | 5 | 350 |
C9 | M5 | 4 | 400 |
C10 | M5 | 3 | 350 |
表13模块配置信息
模块编号 | 主时间框架长度 |
M1 | 6 |
M2 | 10 |
M3 | 8 |
M4 | 5 |
M5 | 10 |
将这些信息对应到***架构的AADL模型上,可以得到相应的IMA***动态重构配置AADL模型如图7所示。如图7,构件C1到C10分别位于五个模块M1到M5上的分区中,构件之间的连接关系由***任务需求决定,和图5中相同。
Claims (3)
1.一种基于遗传算法的IMA***动态重构策略优化方法,其特征在于:包括以下步骤:
步骤一、建立基于AADL的IMA***动态重构策略分析模型;
使用AADL语言对IMA***结构和动态重构过程进行建模,并在IMA***动态重构中加入***可靠性、实时性和负载平衡分析属性,建立基于AADL的IMA***动态重构策略分析模型;针对可靠性分析,包括***各软硬件的基本可靠度和任务转移概率;针对实时性分析,包括***软件的响应和运行时间,任务转移概率和起始标识;针对负载平衡分析,需要给出IMA模块的时间调度机制,明确各IMA模块允许的主时间框架长度和时间片单位,另外需要明确IMA***分区间通信接口和通道的顶层配置,即在不同的软硬件匹配关系下的配置;
步骤二、设置IMA***遗传算法分析算法;
采用遗传算法对IMA***进行分析,首先对IMA***的软硬件匹配和时间配置进行编码;所述编码采用二进制编码,包含***配置的软件编号、硬件编号、时间片数量和顺序信息;
采用遗传算法,在将IMA***的不同特性作为个体判断条件来生成和筛选种群时,针对可靠性和实时性分析采用了现有的随机Petri网模型和分析方法进行分析;在负载平衡分析中,针对***的任务负载和通信负载,分别在时间和空间维度上用运行时间比和内存占用比描述了***的任务负载;针对通信负载,提出了总线带宽占用量描述***空间维度上的通信负载;综合以上特性分析,得到IMA***动态重构策略优化的判断依据;
遗传算法操作中选择轮盘赌选择法、单点交叉法或二进制变异算法;在终止搜索时,确定搜索的代数上限作为终止条件;
步骤三、计算***配置的可靠性与实时性作为个体筛选条件;
通过***软硬件匹配和时间配置编码,得到IMA***的AADL配置模型,同时在IMA***AADL多特性分析基础模型中,已经包含了***软件和硬件相应的可靠性和实时性属性,通过AADL模型转化为Petri网模型并在Petri网模型的基础上计算IMA***在当前配置下的可靠性和实时性指标,并与设计允许值进行比较,用以在遗传算法中作为致死基因判断个体是否存活;
步骤四、对配置方案进行负载平衡分析得到个体适应度;
在IMA***软硬件配置和动态重构时,配置方案首先需要满足***的可靠性和实时性需求;在满足这些必要条件的基础上,针对IMA***进行静态负载平衡分析,通过运行时间比和内存占用比描述IMA***的任务处理能力,通过IMA模块间通信占据的总线带宽描述其通信能力,以作为IMA***配置方案的评价指标;所述的评价指标为三种,分别为:运行时间比、内存占用比和总线带宽占用量;综合以上三种评价指标作为个体的适应度函数;
步骤五、将遗传算法搜索得到的最优基因解码得到IMA***动态重构配置方案;
遗传算法在搜索收敛或完成规定代数后,得到算法最优的个体基因,其中包括IMA***动态重构配置方案的软硬件匹配和时间调度信息,通过解码得到相应的软硬件匹配矩阵和各模块上的时间调度信息,将这些信息对应到***架构的AADL模型上,得到相应的IMA***动态重构配置方案。
2.根据权利要求1所述的一种基于遗传算法的IMA***动态重构策略优化方法,其特征在于:遗传算法包括a)编码、b)适应度函数、c)初始种群设计、d)遗传操作和终止条件;
a)编码;
在IMA***软硬件各项参数及顶层任务链确定、且设定每个分区中仅工作一个软件的情况下,IMA***重构结构问题的参数用时间参数和空间参数表示,所述的时间参数包括软件占用的时间片数量和顺序,所述的空间参数是指软件所在的硬件位置;
软件编号、硬件编号、时间片数量和顺序均为离散变量,采用二进制编码具有直接的语义;模块具有的空闲时间片长度应同样遵守时间片颗粒度t0,同样用二进制编码表示;
b)适应度函数;
通过编码译码得到的IMA***重构配置方案的Petri网模型,进而计算IMA***的可靠性和实时性指标;可靠性和实时性只需满足***需求,不作为适应度函数评价指标,仅在构建子群时作为致死基因考虑;
负载平衡特性分析中,直接通过编码中含有的分区信息计算***的时间维度任务负载,而空间维度的任务负载需要读取顶层的内存分配情况,进而通过还原的AADL模型进行计算;当***负载平衡花费越小时,重构配置方案越优;则适应度函数f(x),当costmax-cost(x)>0,f(x)=costmax-cost(x);否则,f(x)=0;
其中,costmax表示***可能达到的最大负载花费,即选择负载花费最大的配置方案时***的负载花费;cost(x)表示选择配置方案x时***的负载花费;
c)初始群体选取;
在选择初始种群时,先随机生成一定数目的个体,然后从中挑出最好的个体加到初始种群中;这种过程不断迭代,直到初始种群中个体数达到了预先确定的规模;
最好的个体指的是:包含了用二进制编码的IMA***动态重构配置方案信息的个体;
d)种群进化;
在选择运算中,采用轮盘赌选择法,在该方法中,各个个体的选择概率和其适应度值成比例;个体适应度越大,其被选择的概率就越高,反之亦然;对于可靠性和实时性不满足的个体表现为无法存活,不会被选择到交配对中;计算出初始种群中各个个体的选择概率后,为了选择交配个体,需要进行多轮选择,每一轮产生一个[0,1]之间均匀随机数,将该随机数作为选择指针来确定被选个体;个体被选后,随机地组成交配对,以供后面的交叉操作;在变异运算中,采用了二进制变异算法,变异概率为0.01;
e)终止条件。
3.根据权利要求1所述的一种基于遗传算法的IMA***动态重构策略优化方法,其特征在于:步骤四中针对IMA***进行静态负载平衡分析,通过运行时间比和内存占用比描述IMA***的任务处理能力,通过模块间通信占据的总线带宽和通信步长描述其通信能力,以作为IMA***重构配置方案的评价指标,具体如下:
(1)运行时间比;
在IMA***中,任务首先被分配到不同的分区,各个分区在一个主时间框架内,分配不同的时间窗口;分区基于时间片轮转的调度策略,只能在分配的时间槽内获取处理资源并被调用执行;
对于一个一般性的IMA***,***包含d个模块,其中第一个模块上有kl个分区,第一个模块在时间维度上的任务负载表示为:
其中,ζ1为第一个模块的最大运行负载值,表示该模块的计算处理能力;ωf1为第一个模块上第f分区的任务载荷;
所以第一个模块在时间维度上的任务负载的表示公式转化为:
t1w为第一个模块在一个主时间框架内总的工作时间;
在IMA***中,d个模块是同时运行的,IMA***在时间维度上的任务负载costtimescale表示为各模块负载的最大值,即:
tlw为模块在一个主时间框架内总的工作时间;
由上式看出,对于满足***调度需求的重构配置方案,***在时间维度上的任务负载与模块各分区任务的实际计算需求无关,而仅与时间片的分配有关,当costtimescale最小时,得到***在时间维度上计算能力负载最优的重构配置方案;
(2)内存占用比;
空间上的任务负载表示为:
其中,M1为第一个模块的总内存大小;mf1为第一个模块上第f分区运行占用的平均内存量;
为了满足IMA***的硬件可替代性,各模块的内存总量是相同的,对任意模块l,Ml=M1=M,***空间维度上的任务负载costspacescale表示为各模块空间负载的最大值,即:
当costspacescale最小时,得到***负载能力的最优的重构配置方案;
(3)总线带宽占用量;
IMA***的通信资源花费costspacecomm仅与配置的信息交互通道数量和通道的预设带宽值有关,表示为:
其中,mck为通道k占用的总线带宽,Mc为***总线的带宽总量;
(4)评价指标综合;
对三种指标进行加权求和:
当***总负载cost越小时,表明***配置方案的负载平衡特性越优;遗传算法的适应度函数f(x)有:
当costmax-cost(x)>0,f(x)=costmax-cost(x),否则,f(x)=0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810003355.4A CN108268710B (zh) | 2018-01-03 | 2018-01-03 | 一种基于遗传算法的ima***动态重构策略优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810003355.4A CN108268710B (zh) | 2018-01-03 | 2018-01-03 | 一种基于遗传算法的ima***动态重构策略优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108268710A CN108268710A (zh) | 2018-07-10 |
CN108268710B true CN108268710B (zh) | 2021-07-09 |
Family
ID=62773281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810003355.4A Active CN108268710B (zh) | 2018-01-03 | 2018-01-03 | 一种基于遗传算法的ima***动态重构策略优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108268710B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109814920B (zh) * | 2019-01-24 | 2020-09-11 | 华东师范大学 | 一种软件结构复杂度降解装置 |
CN110298060B (zh) * | 2019-04-30 | 2023-04-07 | 哈尔滨工程大学 | 一种基于改进自适应遗传算法的间冷燃气轮机状态空间模型辨识方法 |
CN110263371B (zh) * | 2019-05-13 | 2020-10-02 | 北京航空航天大学 | 基于aadl的ima动态重构过程配置路径生成方法 |
CN110414097B (zh) * | 2019-07-12 | 2023-05-26 | 北京旋极信息技术股份有限公司 | Ima***资源配置验证方法和***、计算机可读存储介质 |
CN110737441B (zh) * | 2019-09-03 | 2023-08-01 | 中国航空无线电电子研究所 | 一种基于微服务架构的ima配置生成方法 |
CN112947993B (zh) * | 2019-12-31 | 2021-12-07 | 深圳市明源云链互联网科技有限公司 | ***框架的重构方法、装置、电子设备及存储介质 |
CN111258754A (zh) * | 2020-01-09 | 2020-06-09 | 上海依图信息技术有限公司 | 一种基于时间窗口的资源处理方法、装置、介质以及*** |
CN111552585A (zh) * | 2020-04-16 | 2020-08-18 | 中国航空无线电电子研究所 | 一种ima***动态重构过程配置路径生成方法 |
CN112488387B (zh) * | 2020-11-30 | 2023-08-29 | 重庆邮电大学 | 一种基于多目标优化算法的软件产品线配置方法 |
CN112463628B (zh) * | 2020-12-11 | 2022-03-29 | 北京航空航天大学 | 一种基于模型基框架的自主无人***软件自适应演化方法 |
CN112883526B (zh) * | 2021-03-15 | 2023-04-07 | 广西师范大学 | 一种任务延迟和可靠性约束下的工作负载分配方法 |
CN114330879B (zh) * | 2021-12-29 | 2022-09-16 | 蔷薇大树科技有限公司 | 一种多维度约束的订单分配方法及*** |
CN116719621B (zh) * | 2023-06-01 | 2024-05-03 | 上海聚水潭网络科技有限公司 | 一种针对海量任务的数据回写方法、装置、设备及介质 |
CN116880978B (zh) * | 2023-07-07 | 2024-04-09 | 郑州轻工业大学 | 一种基于模型检验的实时***分区调度方法及调度器 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624870A (zh) * | 2012-02-01 | 2012-08-01 | 北京航空航天大学 | 基于智能优化算法的云制造计算资源可重构配置方法 |
EP3155758A4 (en) * | 2014-06-10 | 2018-04-11 | Sightline Innovation Inc. | System and method for network based application development and implementation |
CN104202188B (zh) * | 2014-09-01 | 2017-04-26 | 北京航空航天大学 | 一种采用遗传算法进行afdx网络路径优化的方法 |
CN105226702B (zh) * | 2015-09-02 | 2017-09-08 | 山东大学 | 一种交直流混合微电网动态架构及其重组方法 |
CN105373650B (zh) * | 2015-10-15 | 2018-09-28 | 北京航空航天大学 | 基于aadl的ima动态重构建模方法 |
CN105704255B (zh) * | 2016-04-29 | 2019-01-08 | 浙江理工大学 | 一种基于遗传算法的服务器负载均衡方法 |
CN106920015B (zh) * | 2017-04-11 | 2021-05-11 | 东南大学 | 适用于配电网重构问题编码的最短环路动态划分方法 |
-
2018
- 2018-01-03 CN CN201810003355.4A patent/CN108268710B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108268710A (zh) | 2018-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108268710B (zh) | 一种基于遗传算法的ima***动态重构策略优化方法 | |
CN101464922B (zh) | 基于集群***的计算机体系结构方案并行模拟优选方法 | |
Wang et al. | Characterizing deep learning training workloads on alibaba-pai | |
US20050278680A1 (en) | Methodology for scheduling, partitioning and mapping computational tasks onto scalable, high performance, hybrid FPGA networks | |
CN109844730A (zh) | 对具有多个谓词表达式的查询的高效评估 | |
Czarnul et al. | Survey of Methodologies, Approaches, and Challenges in Parallel Programming Using High‐Performance Computing Systems | |
JP2014525640A (ja) | 並列処理開発環境の拡張 | |
CN102624870A (zh) | 基于智能优化算法的云制造计算资源可重构配置方法 | |
Xiao et al. | Prometheus: Processing-in-memory heterogeneous architecture design from a multi-layer network theoretic strategy | |
Usman et al. | ZAKI+: A machine learning based process mapping tool for SpMV computations on distributed memory architectures | |
CN102193830A (zh) | 面向众核环境的分治映射/归约并行编程模型 | |
Hua et al. | Hadoop configuration tuning with ensemble modeling and metaheuristic optimization | |
CN111860804B (zh) | 分形计算装置、方法、集成电路及板卡 | |
Awile et al. | Toward an Object‐Oriented Core of the PPM Library | |
Chen et al. | ReGraph: Scaling graph processing on HBM-enabled FPGAs with heterogeneous pipelines | |
Chan et al. | Topology-aware performance optimization and modeling of adaptive mesh refinement codes for exascale | |
Ding et al. | Classification rules mining model with genetic algorithm in cloud computing | |
CN112433853A (zh) | 一种面向超级计算机数据并行应用的异构感知数据划分方法 | |
CN115309544A (zh) | 一种集群资源规划方法、设备及装置 | |
CN107168795B (zh) | 基于cpu-gpu异构复合式并行计算框架的密码子偏差系数模型方法 | |
CN104778088A (zh) | 一种基于减少进程间通信开销的并行i/o优化方法与*** | |
Franklin et al. | A general matrix iterative model for dynamic load balancing | |
Li et al. | Performance optimization algorithm of radar signal processing system | |
Zhou et al. | Pim-dl: Boosting dnn inference on digital processing in-memory architectures via data layout optimizations | |
Geimer et al. | Recent developments in the scalasca toolset |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |