CN105550427A - 一种基于改进pbil算法的软硬件划分方法 - Google Patents

一种基于改进pbil算法的软硬件划分方法 Download PDF

Info

Publication number
CN105550427A
CN105550427A CN201510905918.5A CN201510905918A CN105550427A CN 105550427 A CN105550427 A CN 105550427A CN 201510905918 A CN201510905918 A CN 201510905918A CN 105550427 A CN105550427 A CN 105550427A
Authority
CN
China
Prior art keywords
algorithm
population
fitness
pbil
hardware
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.)
Granted
Application number
CN201510905918.5A
Other languages
English (en)
Other versions
CN105550427B (zh
Inventor
张涛
张彩霞
余益科
邱亮
巫红英
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianjin University
Original Assignee
Tianjin University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tianjin University filed Critical Tianjin University
Priority to CN201510905918.5A priority Critical patent/CN105550427B/zh
Publication of CN105550427A publication Critical patent/CN105550427A/zh
Application granted granted Critical
Publication of CN105550427B publication Critical patent/CN105550427B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2117/00Details relating to the type or aim of the circuit design
    • G06F2117/08HW-SW co-design, e.g. HW-SW partitioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Geometry (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种基于改进PBIL算法的软硬件划分方法,包括:1、初始化概率向量;2、对PBIL算法的第l代种群中N个个体进行适应度评估;3、如果第l代种群的平均适应度小于第l-1代种群的平均适应度,则Threshold累计加1,否则Threshold=0;4、判断如果Threshold=Limit;5、在N个个体中选择适应度最好的前M个个体;6、更新学习因子;7、更新第l+1代的概率向量;8、如果PBIL算法迭代次数小于最大进化代数,转到2,否则转到9;9、改进PBIL算法的软硬件划分方法结束。本发明不仅能减少仿真算法在执行时间方面的系统开销,而且能大幅度地提高设计系统的质量,高效完成嵌入式系统。在解决软硬件划分问题的时候具有较好的性能表现和稳定性。

Description

一种基于改进PBIL算法的软硬件划分方法
技术领域
本发明涉及一种嵌入式设计领域中的软硬件划分方法。特别是涉及一种基于改进PBIL算法的软硬件划分方法。
背景技术
嵌入式系统是以应用为中心、以计算机和集成电路技术为基础、软硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。嵌入式系统内部功能模块有两种基本的实现方法:软件和硬件。软件方法以微处理器为平台,通过设计代码程序来完成系统的特定功能。而硬件方法是通过设计专用逻辑电路来实现系统功能。一般来说,硬件比软件能提供更好的性能,而软件更容易开发和修改,灵活性更强、成本比硬件更低。这两种手段在性能和成本上存在巨大差异,为了达到成本和性能的最佳结合,兼顾速度和灵活性,目前大部分嵌入式系统都采用软硬件共同实现的方式。既然嵌入式系统大多采用软硬件共同实现的方式,那么软硬件划分就成了一个影响嵌入式系统性能非常重要的环节。
软硬件划分是软硬件协同设计的重要环节和组成部分,起着非常关键的作用。软硬件划分是指在设计系统时,确定各个模块是采取软件还是硬件的实现方式。其主要任务是在满足各项设计约束的条件下,把系统功能划分到目标结构中的软件和硬件部分上,并为系统提供最佳的软硬件折衷方案。
软硬件划分问题的模型可以用一个任务流图来描述,整个任务流图又是一个有向无环图(DAG图),如图1所示,记作G=(V,E)。
其中,V是任务的集合,V={V0,V1,....,Vn},Vi表示系统中的一个任务,可以用软件或者硬件实现,每个任务节点包含其软件、硬件的执行时间与功耗等节点属性信息;E是边的集合,E={e0,e1,....,em},代表任务之间的控制关系或数据流向,每条边的终点任务必须在此边的始点任务完成之后才可以开始执行,边的权重代表两个节点之间的通讯开销。
设X={x1,x2,..,xn}为一个软硬件划分方案,xi代表一个任务节点的软硬件实现方式,xi=1表示该节点用硬件实现,xi=0表示该节点用软件实现。
为了方便系统分析,也使得系统分析更具针对性,本专利将目标函数设为执行时间,对其他系统参数有一定的约束即可。在这种情况下,软硬件划分问题的精确模型为:
min T ( X ) s . t . a r e a ( X ) ≤ a r e a lim i t s . t . p r i c e ( X ) ≤ p r i c e lim i t s . t . p o w e r ( X ) ≤ p o w e r lim i t s . t . s t o r a g e ( X ) ≤ s t o r a g lim i t . . .
其中T(X)、area(X)、price(X)、power(X)、storage(X)分别代表软硬件划分方案X的任务执行时间、面积、成本、功耗、存储开销。
基于群体的增量学习(Population-basedIncreasedLearning,简称PBIL)算法是一种以统计学概率向量为基础的新型演化类算法。它最初由美国卡内基一梅隆大学的Baluja.S.在1994年提出。该算法集成了基于函数优化的遗传搜索和竞争学习两种策略,将进化过程视为学习过程,通过竞争学习所获取的知识-学习概率(LearningProbability)来指导后代的产生。此类算法的主要思想是:构造一个概率向量,并根据概率向量来采样生成群体,通过评估群体判断当前代个体的优劣,并用这种信息来动态地更新概率向量,从而实现了演化。这种概率向量是整个进化过程的信息积累,同遗传算法的双亲基因重组相比,用它指导产生的后代将会更优生,因此能获得较快的收敛速度和理想的计算结果。
其算法可以描述为:目标函数的个体可以用长度为N的比特串来表示S={s1,s2,…,sN},其中si=(0,1)。设P={p1,p2,…,pN}代表一个长度为N的概率向量,每个向量元素pi∈[0,1],概率向量中的每一个分量元素代表着群体中个体对应位置取比特“1”的概率。算法通过概率向量P来生成新的个体,并对个体进行评估。最后选择每一代种群中适应度最高的个体来修正学习概率。整个迭代过程逐步朝向局部或全局最优解逼近,算法最终收敛时的特征表现为:概率向量元素的大小分别接近于1.0或0.0。
发明内容
本发明所要解决的技术问题是,提供一种在解决软硬件划分问题的时候具有较好的性能表现和稳定性的基于改进PBIL算法的软硬件划分方法。
本发明所采用的技术方案是:一种基于改进PBIL算法的软硬件划分方法,包括如下步骤:
1)初始化概率向量P0(x),设置种群规模N,将阈值Threshold置零,设置PBIL算法最大进化代数maxgen,设置阈值上限Limit;
2)对PBIL算法的第l代种群中N个个体进行适应度评估,得到每个个体的适应度f(x1),…,f(xN)和种群的平均适应度并按照适应度从高到低排序种群个体
3)如果第l代种群的平均适应度小于第l-1代种群的平均适应度,则Threshold累计加1;否则Threshold=0;
4)判断如果Threshold=Limit,转到步骤9);否则转到步骤5);
5)在N个个体中选择适应度最好的前M个个体
6)按照下式更新学习因子
a = a 0 × [ t / t 0 ] max g e n + a w ( - 1 ) T mod 10 - - - ( 1 )
其中,a0和aw分别是学习因子的基准。maxgen是算法最大的进化代数,t为进化代数,t0为进化的间隔代数。T为种群最优个体连续未得到改善的代数。mod是取模运算,[t/t0]是不大于t/t0的最大整数。
7)利用下式更新第l+1代的概率向量Pl(x)
P l + 1 ( x ) = ( 1 - a ) P l ( x ) + a 1 M Σ k = 1 M x k : N l - - - ( 2 )
8)如果PBIL算法迭代次数小于最大进化代数maxgen,转到步骤2);否则转到步骤9);
9)改进PBIL算法的软硬件划分方法结束。
本发明的一种基于改进PBIL算法的软硬件划分方法,将采用自适应学习因子和邻域跳出机制的改进PBIL算法运用到解决动态软硬件划分问题。不仅能减少仿真算法在执行时间方面的系统开销,而且能大幅度地提高设计系统的质量,高效完成嵌入式系统。在解决软硬件划分问题的时候具有较好的性能表现和稳定性。
附图说明
图1是软硬件划分系统DAG图;
图2是PBIL算法的流程图。
具体实施方式
下面结合实施例和附图对本发明的一种基于改进PBIL算法的软硬件划分方法做出详细说明。
本发明的一种基于改进PBIL算法的软硬件划分方法,其特征在于,包括如下步骤:
1)初始化概率向量P0(x),设置种群规模N,将阈值Threshold置零,设置PBIL算法最大进化代数maxgen,设置阈值上限Limit;
2)对PBIL算法的第l代种群中N个个体进行适应度评估,得到每个个体的适应度f(x1),…,f(xN)和种群的平均适应度并按照适应度从高到低排序种群个体
3)如果第l代种群的平均适应度小于第l-1代种群的平均适应度,则Threshold累计加1;否则Threshold=0;
4)判断如果Threshold=Limit,转到步骤9);否则转到步骤5);
5)在N个个体中选择适应度最好的前M个个体
6)按照下式更新学习因子
a = a 0 × [ t / t 0 ] max g e n + a w ( - 1 ) T mod 10 - - - ( 1 )
其中,a0和aw分别是学习因子的基准。maxgen是算法最大的进化代数,t为进化代数,t0为进化的间隔代数。T为种群最优个体连续未得到改善的代数。mod是取模运算,[t/t0]是不大于t/t0的最大整数。
7)利用下式更新第l+1代的概率向量Pl(x)
P l + 1 ( x ) = ( 1 - a ) P l ( x ) + a 1 M Σ k = 1 M x k : N l - - - ( 2 )
8)如果PBIL算法迭代次数小于最大进化代数maxgen,转到步骤2);否则转到步骤9);
9)改进PBIL算法的软硬件划分方法结束。
下面给出具体实例:
1、初始化概率向量P0(x)=(0.5,…,0.5),设置种群规模N=40,将阈值Threshold置零,设置PBIL算法最大进化代数maxgen=1000,设置阈值上限Limit=30。
2、用TGFF工具产生8个静态软硬件划分环境。TGFF工具的参数配置如表1所示。
表1TGFF工具的参数设置
编号 结点数 软件耗时 硬件耗时 硬件面积 通信耗时 面积约束
1 15 423±34 107±22 55±18 41±9 450
2 30 273±30 83±16 76±27 38±8 1150
3 45 119±26 57±11 98±38 33±7 2200
4 60 443±62 153±29 71±26 60±15 1900
5 75 774±103 252±47 43±12 89±23 1500
6 90 513±66 179±32 58±16 62±16 3000
7 105 258±33 110±17 73±20 35±10 4500
8 115 88±11 64±8 87±24 15±5 5500
3、利用本发明的基于改进PBIL算法的软硬件划分方法分别对这8个软硬件划分问题进行求解,为了降低随机因素的影响用改进PBIL算法对这8个软硬件划分问题求解20次,将20次的平均系统执行时间、硬件面积开销、算法仿真时间作为衡量性能的指标。
4、通过实验结果数据,分析改进PBIL算法在系统执行时间、硬件面积开销、算法仿真时间方面的改进效果。

Claims (1)

1.一种基于改进PBIL算法的软硬件划分方法,其特征在于,包括如下步骤:
1)初始化概率向量P0(x),设置种群规模N,将阈值Threshold置零,设置PBIL算法最大进化代数maxgen,设置阈值上限Limit;
2)对PBIL算法的第l代种群中N个个体进行适应度评估,得到每个个体的适应度f(x1),…,f(xN)和种群的平均适应度并按照适应度从高到低排序种群个体
3)如果第l代种群的平均适应度小于第l-1代种群的平均适应度,则Threshold累计加1;否则Threshold=0;
4)判断如果Threshold=Limit,转到步骤9);否则转到步骤5);
5)在N个个体中选择适应度最好的前M个个体
6)按照下式更新学习因子
a = a 0 × [ t / t 0 ] max g e n + a w ( - 1 ) T mod 10 - - - ( 1 )
其中,a0和aw分别是学习因子的基准。maxgen是算法最大的进化代数,t为进化代数,t0为进化的间隔代数。T为种群最优个体连续未得到改善的代数。mod是取模运算,[t/t0]是不大于t/t0的最大整数。
7)利用下式更新第l+1代的概率向量Pl(x)
P l + 1 ( x ) = ( 1 - a ) P l ( x ) + a 1 M Σ k = 1 M x k : N l - - - ( 2 )
8)如果PBIL算法迭代次数小于最大进化代数maxgen,转到步骤2);否则转到步骤9);
9)改进PBIL算法的软硬件划分方法结束。
CN201510905918.5A 2015-12-09 2015-12-09 一种基于改进pbil算法的软硬件划分方法 Active CN105550427B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510905918.5A CN105550427B (zh) 2015-12-09 2015-12-09 一种基于改进pbil算法的软硬件划分方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510905918.5A CN105550427B (zh) 2015-12-09 2015-12-09 一种基于改进pbil算法的软硬件划分方法

Publications (2)

Publication Number Publication Date
CN105550427A true CN105550427A (zh) 2016-05-04
CN105550427B CN105550427B (zh) 2019-09-27

Family

ID=55829616

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510905918.5A Active CN105550427B (zh) 2015-12-09 2015-12-09 一种基于改进pbil算法的软硬件划分方法

Country Status (1)

Country Link
CN (1) CN105550427B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107146244A (zh) * 2017-04-11 2017-09-08 西安电子科技大学 基于pbil算法的图像配准方法
CN108446455A (zh) * 2018-02-27 2018-08-24 天津大学 一种基于烟花算法的多目标软硬件划分方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104516785A (zh) * 2014-12-19 2015-04-15 上海电机学院 一种云计算资源调度系统及方法
CN104573369A (zh) * 2015-01-14 2015-04-29 天津大学 一种基于混洗蛙跳的软硬件划分方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104516785A (zh) * 2014-12-19 2015-04-15 上海电机学院 一种云计算资源调度系统及方法
CN104573369A (zh) * 2015-01-14 2015-04-29 天津大学 一种基于混洗蛙跳的软硬件划分方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
田宇: "动态优化方法及其在软硬件动态划分中的应用研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107146244A (zh) * 2017-04-11 2017-09-08 西安电子科技大学 基于pbil算法的图像配准方法
CN107146244B (zh) * 2017-04-11 2019-10-11 西安电子科技大学 基于pbil算法的图像配准方法
CN108446455A (zh) * 2018-02-27 2018-08-24 天津大学 一种基于烟花算法的多目标软硬件划分方法
CN108446455B (zh) * 2018-02-27 2019-09-27 天津大学 一种基于烟花算法的多目标软硬件划分方法

Also Published As

Publication number Publication date
CN105550427B (zh) 2019-09-27

Similar Documents

Publication Publication Date Title
US9928040B2 (en) Source code generation, completion, checking, correction
CN111489365B (zh) 神经网络的训练方法、图像处理方法及装置
Gonen et al. Multiclass posterior probability support vector machines
Patil et al. Align-rudder: Learning from few demonstrations by reward redistribution
CN111611274A (zh) 一种数据库查询优化方法和系统
CN104516785B (zh) 一种云计算资源调度系统及方法
CN113515539B (zh) 一种数据库中数据的查询方法
CN110321116B (zh) 一种面向编译优化中计算代价约束问题的高效优化方法
De Alfaro et al. Magnifying-lens abstraction for Markov decision processes
CN114047770A (zh) 一种多内心搜寻改进灰狼算法的移动机器人路径规划方法
Grewal et al. Automatic flow selection and quality-of-result estimation for FPGA placement
CN105550427A (zh) 一种基于改进pbil算法的软硬件划分方法
US20190205763A1 (en) Information processing device, information processing method and information processing program
Trevizan et al. Short-sighted stochastic shortest path problems
Tusi et al. Using ABC and RRT algorithms to improve mobile robot path planning with danger degree
Ahsan et al. Optimization of quantum computer architecture using a resource-performance simulator
Gao et al. An adaptive framework to select the coordinate systems for evolutionary algorithms
CN117059169A (zh) 基于参数自适应成长优化器的生物多序列比对方法及系统
CN114707655B (zh) 一种量子线路转换方法、系统、存储介质和电子设备
CN116541268A (zh) 上下文感知依赖引导的内核模糊测试用例变异方法与系统
Mendes et al. Bounds for short covering codes and reactive tabu search
KR102559605B1 (ko) 함수 최적화 방법 및 장치
Mitra et al. Variable ordering for shared binary decision diagrams targeting node count and path length optimisation using particle swarm technique
CN114995818A (zh) 一种Simulink模型到C语言的优化参数自动配置方法
CN108983863B (zh) 一种基于改进萤火虫算法的光伏最大功率跟踪方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant