CN109543247B - 基于nsga-ⅱ的模拟集成电路参数优化设计方法及装置 - Google Patents
基于nsga-ⅱ的模拟集成电路参数优化设计方法及装置 Download PDFInfo
- Publication number
- CN109543247B CN109543247B CN201811300526.6A CN201811300526A CN109543247B CN 109543247 B CN109543247 B CN 109543247B CN 201811300526 A CN201811300526 A CN 201811300526A CN 109543247 B CN109543247 B CN 109543247B
- Authority
- CN
- China
- Prior art keywords
- chromosome
- candidate
- circuit
- population
- parameter
- 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
- 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)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Genetics & Genomics (AREA)
- Data Mining & Analysis (AREA)
- Physiology (AREA)
- Geometry (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开了一种基于NSGA‑Ⅱ的模拟集成电路参数优化设计方法及装置,所述方法包括:根据电路参数组成的染色体进行复制,形成染色体种群;基于NSGA‑Ⅱ算法对初始代染色体种群进行处理,并对处理后的染色体进行适应度函数构造后,进行带精英策略的快速非支配排序及拥挤度计算,最终得到优化后的电路参数。相比于现有技术中,采用遗传算法进行电路参数优化的方法,本发明通过优化初始代种群产生方案和构造适应度函数,并基于NSGA‑Ⅱ算法进行优化参数计算,解决了利用遗传算法进行电路参数优化设计时寻优算法收敛速度过慢或无法收敛的问题,实现对模拟集成电路参数的优化设计。
Description
技术领域
本发明涉及集成电路技术领域,尤其涉及一种基于NSGA-Ⅱ的模拟集成电路参数优化设计方法及装置。
背景技术
随着集成电路制造工艺水平的提高,电路的规模和复杂程度日益增加,采用传统的电路经验知识和电路设计规则进行电路设计的方法已经越发显得吃力。
为优化电路,完成复杂大规模电路的自动设计,现有技术中,采用遗传算法作为组合优化和全局搜索的主要工具,通过进化来满足给定要求的电路和装置结构,从而实现优化电路和复杂大规模电路的自动设计。但在电路中,细微的器件尺寸改变将会对电路的各种性能参数产生较大影响,而现有技术中采用的遗传算法多是多目标无差别寻优,因此容易导致进行电路优化设计时,现有的寻优算法的收敛速度很慢,甚至无法收敛。
发明内容
本发明实施例所要解决的技术问题在于,解决利用遗传算法进行电路参数优化设计时寻优算法收敛速度过慢或无法收敛的问题,实现对模拟集成电路参数的优化设计。
为解决上述问题,本发明实施例提供一种基于NSGA-Ⅱ的模拟集成电路参数优化设计方法,适于在计算设备中执行,至少包括如下步骤:
提取优化电路的电路参数,并根据所述电路参数组成的初始代染色体,对所述初始代染色体进行复制,形成初始代种群;
通过NSGA-Ⅱ算法对所述初始代种群进行快速非支配排序,并基于所述NSGA-Ⅱ算法计算所述初始代染色体在所述初始代种群中的拥挤度距离,得到含非支配序的染色体种群;
将所述含非支配序的染色体种群进行选择、交叉和变异操作,得到染色体候选种群后,调用与所述染色体候选种群对应的电路参数进行仿真;
提取所述染色体候选种群的仿真结果,并将所述候选染色体中的每个电路参数,与每个非主要电路指定参数一一进行比较,得到每个所述候选染色体的适应度函数值;其中,所述非主要电路指定参数为用于作为电路约束条件,将电路约束在正常工作的范围内的电路性能参数,或所述非主要电路指定参数为非重点优化的电路性能参数;
将得到所述适应度函数值的每个所述候选染色体进行带精英策略的快速非支配排序,并计算每个所述候选染色体在所述候选染色体种群中的拥挤度距离,得到新一代染色体种群,即优化后的电路参数。
进一步的,所述提取优化电路的电路参数,并根据所述电路参数组成的初始代染色体,对所述初始代染色体进行复制,形成初始代种群,具体为:
提取优化电路的电路参数写入netlist文件后,从所述netlist文件中提取所述电路参数构成所述初始代染色体,并根据预定的种群大小对所述染色体进行复制,形成所述初始代种群。
进一步的,所述调用与所述染色体候选种群对应的电路参数进行仿真,得到仿真结果,具体为:
将所述染色体候选种群中的候选染色体的相关信息写入netlist文件,并调用HSpice软件对所述候选染色体对应的所有电路参数进行仿真,得到仿真结果。
进一步的,所述提取所述染色体候选种群的仿真结果,并将所述候选染色体中的每个电路参数,与每个非主要电路指定参数一一进行比较,得到每个所述候选染色体的适应度函数值,具体为:
提取所述染色体候选种群的仿真结果,并将所述候选染色体中的每个电路参数,与每个所述非主要电路指定参数一一进行比较,若所述电路参数优于所述非主要电路指定参数,则将所述电路参数的值置换为对应的所述非主要电路指定参数的值。
进一步的,将得到所述适应度函数值的每个所述候选染色体基于NSGA-Ⅱ算法进行带精英策略的快速非支配排序,并基于NSGA-Ⅱ算法计算每个所述候选染色体在所述候选染色体种群中的拥挤度距离,得到新一代染色体种群,具体为:
将得到所述适应度函数值的每个所述候选染色体,根据每个所述候选染色体的个体非劣解水平,对所述染色体候选种群进行分层,并计算每个所述候选染色体的拥挤度距离,得到每个所述候选染色体的非支配序和拥挤度距离后,判断每个所述候选染色体的非支配序和拥挤度距离是否符合最优电路参数的条件;其中,若符合,则输出由每个所述候选染色体组成的所述新一代染色体种群;
若不符合,则以所述候选染色体为基础,迭代地进行交叉、变异操作,直至每个所述候选染色体的非支配序和拥挤度距离符合最优电路参数的条件。
进一步的,本发明实施例提供一种基于NSGA-Ⅱ的模拟集成电路参数优化设计装置,包括:
参数提取单元,用于提取优化电路的电路参数,并根据所述电路参数组成的初始代染色体,对所述初始代染色体进行复制,形成初始代种群;
算法处理单元,用于通过NSGA-Ⅱ算法对所述初始代种群进行快速非支配排序,并基于所述NSGA-Ⅱ算法计算所述初始代染色体在所述初始代种群中的拥挤度距离,得到含非支配序的染色体种群;
仿真处理单元,用于将所述含非支配序的染色体种群进行选择、交叉和变异操作,得到染色体候选种群后,调用与所述染色体候选种群对应的电路参数进行仿真;
函数构造单元,用于提取所述染色体候选种群的仿真结果,并将所述候选染色体中的每个电路参数,与每个非主要电路指定参数一一进行比较,得到每个所述候选染色体的适应度函数值;其中,所述非主要电路指定参数为用于作为电路约束条件,将电路约束在正常工作的范围内的电路性能参数,或所述非主要电路指定参数为非重点优化的电路性能参数;
优化处理单元,用于将得到所述适应度函数值的每个所述候选染色体进行带精英策略的快速非支配排序,并计算每个所述候选染色体在所述候选染色体种群中的拥挤度距离,得到新一代染色体种群,即优化后的电路参数。
进一步的,所述参数提取单元具体用于:
提取优化电路的电路参数写入netlist文件后,从所述netlist文件中提取所述电路参数构成染色体,并根据预定的种群大小对所述染色体进行复制,形成所述初始代种群。
进一步的,所述仿真处理单元具体用于:
将所述染色体候选种群中的候选染色体的相关信息写入netlist文件后,调用HSpice软件对所述候选染色体对应的所有电路参数进行仿真,得到仿真结果。
进一步的,所述函数构造单元具体用于:
提取所述仿真结果,并将所述候选染色体中的每个电路参数,与每个非主要电路指定参数一一进行比较,得到每个所述候选染色体的适应度函数值;其中,若所述电路参数优于所述非主要电路指定参数,则将所述电路参数的值置换为对应的所述非主要电路指定参数的值;所述非主要电路指定参数为用于作电路约束条件,或所述非主要电路指定参数为非重点优化的电路性能参数。
进一步的,所述优化处理单元具体用于:
将得到所述适应度函数值的每个所述候选染色体,根据每个所述候选染色体的个体非劣解水平,对所述染色体候选种群进行分层,并计算每个所述候选染色体的拥挤度距离,得到每个所述候选染色体的非支配序和拥挤度距离后,判断每个所述候选染色体的非支配序和拥挤度距离是否符合最优电路参数的条件;其中,若符合,则输出由每个所述候选染色体组成的所述新一代染色体种群;
若不符合,则以所述候选染色体为基础,迭代地进行交叉、变异操作,直至每个所述候选染色体的非支配序和拥挤度距离符合最优电路参数的条件。
实施本发明实施例,具有如下有益效果:
本发明实施例提供的一种基于NSGA-Ⅱ的模拟集成电路参数优化设计方法及装置,所述方法包括:根据电路参数组成的染色体进行复制,形成染色体种群;基于NSGA-Ⅱ算法对初始代染色体种群进行处理,并对处理后的染色体进行适应度函数构造后,进行带精英策略的快速非支配排序及拥挤度计算,最终得到优化后的电路参数。相比于现有技术中,采用遗传算法进行电路参数优化的方法,本发明通过优化初始代种群产生方案和构造适应度函数,并基于NSGA-Ⅱ算法进行优化参数计算,解决了利用遗传算法进行电路参数优化设计时寻优算法收敛速度过慢或无法收敛的问题,实现对模拟集成电路参数的优化设计。
附图说明
图1是本发明的一个实施例提供的基于NSGA-Ⅱ的模拟集成电路参数优化设计方法的流程示意图;
图2是本发明的又一个实施例提供的基于NSGA-Ⅱ的模拟集成电路参数优化设计方法的流程示意图;
图3是本发明的一个实施例提供的基于NSGA-Ⅱ的模拟集成电路参数优化设计装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1到2。
参见图1,是本发明的一个实施例提供的基于NSGA-Ⅱ的模拟集成电路参数优化设计方法的流程示意图,如图1所示,该任务处理方法包括步骤S11至步骤S15。各步骤具体如下:
步骤S11,提取优化电路的电路参数,并根据电路参数组成的初始代染色体,对初始代染色体进行复制,形成初始代种群。
步骤S12,通过NSGA-Ⅱ算法对初始代种群进行快速非支配排序,并基于NSGA-Ⅱ算法计算初始代染色体在初始代种群中的拥挤度距离,得到含非支配序的染色体种群。
步骤S13,将含非支配序的染色体种群进行选择、交叉和变异操作,得到染色体候选种群后,调用与染色体候选种群对应的电路参数进行仿真。
步骤S14,提取染色体候选种群的仿真结果,并将候选染色体中的每个电路参数,与每个非主要电路指定参数一一进行比较,得到每个候选染色体的适应度函数值。
其中,非主要电路指定参数为用于作为电路约束条件,将电路约束在正常工作的范围内的电路性能参数,或非主要电路指定参数为非重点优化的电路性能参数。
步骤S15,将得到适应度函数值的每个候选染色体进行带精英策略的快速非支配排序,并计算每个候选染色体在候选染色体种群中的拥挤度距离,得到新一代染色体种群,即优化后的电路参数。
对于步骤S11,具体的,提取优化电路的电路参数写入netlist文件后,从netlist文件中提取电路参数构成染色体,并根据预定的种群大小对染色体进行复制,形成初始代种群。
在本实施例中,获取人工计算得到的优化电路的最优解参数X0,将X0写入netlist和.sp文件,然后从netlist文件中提取X0并复制pop_size份,得到初代种群X0=[X0 1,X0 2,...,X0 pop_size]。pop_size是预先指定的种群大小。
需要说明的是,染色体包含了一个电路的全部器件的电路参数。种群包含所有的染色体,即包含了不同的电路参数。
进一步的,对于步骤S12,在本实施例中,初始代种群进行快速非支配排序的操作为,根据Pareto域支配理论对初始代种群进行分组。
进一步的,对于步骤S13,具体的,将所述含非支配序的染色体种群进行选择、交叉和变异操作,得到染色体候选种群后,将染色体候选种群中的候选色体的相关信息写入netlist文件,并调用HSpice软件对候选染色体对应的所有电路参数进行仿真,得到仿真结果。
在本实施例中,染色体种群的选择操作为根据支配序及适应度值对染色体种群进行选择。染色体种群的选择算法可以是轮盘法、锦标赛法或排序法。染色体种群的交叉操作为对选择出来的染色体进行交叉操作。交叉算法可以是单点交叉、两点交叉、算术交叉、线性交叉或基于方向的交叉。染色体种群的变异操作为对交叉得到的染色体进行变异操作。变异的算法可以是均匀交叉、高斯变异、动态变异以及基于方向的变异。
在本实施例中,交叉算法采用算术交叉算子,具体为:
其中,v1、v2随机选择的两条染色体,v1’、v2’为生成的两条染色体,λ为(0,1)的随机数。
进一步的,对于步骤S14,具体的,提取所述染色体候选种群的仿真结果,并将所述候选染色体中的每个电路参数,与每个所述非主要电路指定参数一一进行比较,若所述电路参数优于所述非主要电路指定参数,则将所述电路参数的值置换为对应的所述非主要电路指定参数的值;若电路参数不优于非主要电路指定参数,则不需要进行置换。
需要说明的是,非主要电路指定参数为用于作电路约束条件,或非主要电路指定参数为非重点优化的电路性能参数。
在本实施例中,假设候选染色体对应的电路参数为F=[F1,F2,...,Fm],非主要电路指定参数为F'=[F'1,F'2,...,F'i+n]。其中m为寻优的电路参数的个数,且i+n≤m,F’的值优于最优解参数X0。在寻优过程中,对提取到的电路参数F的值进行检测,若F'=[F'1,F'2,...,F'i+n]优于对应F'=[F'1,F'2,...,F'i+n]的值,则对应的Fk置为对应的F’k,其它值不变,最终得到每个候选染色体的适应度函数值。其中,k∈[i,i+n]。
进一步的,对于步骤S15,具体的,将得到适应度函数值的每个候选染色体,根据每个候选染色体的个体非劣解水平,对染色体候选种群进行分层,并计算每个候选染色体的拥挤度距离,得到每个候选染色体的非支配序和拥挤度距离后,判断每个候选染色体的非支配序和拥挤度距离是否符合最优电路参数的条件。若符合,则输出由每个候选染色体组成的新一代染色体种群;若不符合,则以候选染色体为基础,迭代地进行交叉、变异操作,直至每个候选染色体的非支配序和拥挤度距离符合最优电路参数的条件。
在本实施例中,根据每个候选染色体的快速非支配排序算法,计算候选染色体种群P中每个个体i的两个参数ni和Si,其中ni为种群中支配个体i的个体数,Si为种群中被个体i支配的个体集合ni=0。具体的计算方法为,找出种群中所有ni=0的个体,并保存在当前集合F1中;对于当前集合F1中每个个体i,其所支配的个体集合为Si,遍历Si中每个个体i,执行ni=ni-i。如果每个个体i,其所支配的个体集合为Si,则遍历Si中每个个体i,执行ni=ni-i;如果ni=0,则将i保存在集合H中。记F1中得到个体为第一个非支配层的个体,并以H为当前集合,重复以上操作,直到整个种群被分层。
在本实施例中,拥挤度表示在候选染色体种群中给定点的周围个体的密度,用id表示。直观上用个体i周围包含个体i但不包含其余个体的最大长方形的长来表示。计算每个候选染色体的拥挤度距离的具体方法为,将每个点的拥挤度id置为0。针对每个目标,对得到所述适应度函数值的候选染色体种群进行非支配排序,令边界的两个个体拥挤度距离为无穷,即Od=Id=∞。对其它个体进行拥挤度距离的计算,具体计算公式为:
在本实施中,精英策略具体为,将父代Pt和子代Qt全部个体合成为一个统一的种群Rt=Pt∪Qt。其中Rt的个体数为2N。将种群Rt快速非支配排序并计算每一个体局部拥挤度距离,依据等级的高低逐一选取个体,直到个体数量达到N时就形成了新的父代种群Pt+1,在此基础上开始新一轮的选择、交叉和变异,形成新的子代种群Qt+1。
在本实施例中,经过排序和拥挤距离计算,候选染色体种群中的每个个体i都得到两个属性,即非支配序irank和拥挤度距离id。若两个属性不符合最优电路参数的条件,则以候选染色体为基础,采用基于非支配序和拥挤度距离的锦标赛制选择算子,迭代地进行交叉、变异操作。
在本实施例中,锦标赛制选择算子的具体方法为:随机选择2个个体(k>1),当irank<jrank或irank=jrank且id>jd时,i个体优于j个体。
进一步的,本实施例采用一个对CMOS电压基准源电路进行优化设计的例子进行举例。以线性度(LS,Line sensitivity)、温度系数(TC,Temperature coefficient)、5种情况下输出电压之间差值(ΔVo,ΔVoltage output)、参考电压(vref,reference voltage)、总电流(Total current)作为适应度值,LS、TC、Vo、vref、current的参数个数分别为5、1、1、1、1。其中,当TC优于人工计算得到的优化电路对应的TC值时,TC置为固定值3.2e-05;当ΔVo不超过0.0018时,ΔVo置为固定值-0.001;Total current优于人工计算得到的优化电路对应的current值时,置为固定值-11。通过对LS、TC、Total current进行仿真,可以看到LS、TC、Total current优化幅度分别可达32.18%、12.5%、19.53%。
本发明实施例提供一种基于NSGA-Ⅱ的模拟集成电路参数优化设计方法,包括:提取优化电路的电路参数,并将电路参数组成的初始代染色体进行复制,得到初始代种群后,通过NSGA-Ⅱ算法对初始代种群进行操作,得到含非支配序的染色体种群;将含非支配序的染色体种群进行选择、交叉和变异操作,并对得到的结果进行适应度函数构造,再进行带精英策略的快速非支配排序及拥挤度计算,最终得到优化后的电路参数。相比于传统的电路参数优化设计方法,本发明通过优化初始代种群产生方案和构造适应度函数,并基于NSGA-Ⅱ算法进行优化参数计算,解决了利用遗传算法进行电路参数优化设计时寻优算法收敛速度过慢或无法收敛的问题,实现对模拟集成电路参数的优化设计,且通过引入精英策略,扩大了采样空间,防止最佳个体的丢失,提高了算法的运算速度和鲁棒性。
请参见图3。
参见图3,是本发明的一个实施例提供的基于NSGA-Ⅱ的模拟集成电路参数优化设计装置的结构示意图。包括:
参数提取单元101,用于提取优化电路的电路参数,并根据电路参数组成的初始代染色体,对初始代染色体进行复制,形成初始代种群。
在本实施例中,参数提取单元101,具体用于提取优化电路的电路参数写入netlist文件后,从netlist文件中提取电路参数构成染色体,并根据预定的种群大小对染色体进行复制,形成初始代种群。
在本实施例中,参数提取单元101用于获取人工计算得到的优化电路的最优解参数X0,将X0写入netlist和.sp文件,然后从netlist文件中提取X0并复制pop_size份,得到初代种群X0=[X0 1,X0 2,...,X0 pop_size]。pop_size是预先指定的种群大小。
需要说明的是,染色体包含了一个电路的全部器件的电路参数。种群包含所有的染色体,即包含了不同的电路参数。
算法处理单元102,用于通过NSGA-Ⅱ算法对初始代种群进行快速非支配排序,并基于NSGA-Ⅱ算法计算初始代染色体在初始代种群中的拥挤度距离,得到含非支配序的染色体种群。
在本实施例中,初始代种群进行快速非支配排序的操作为,根据Pareto域支配理论对初始代种群进行分组。初始代种群进行拥挤度计算操作为,基于NSGA-Ⅱ算法计算初始代染色体在初始代种群中的拥挤度距离。
仿真处理单元103,用于将含非支配序的染色体种群进行选择、交叉和变异操作,得到染色体候选种群后,调用与染色体候选种群对应的电路参数进行仿真,得到仿真结果。
在本实施例中,仿真处理单元103,具体用于将所述含非支配序的染色体种群进行选择、交叉和变异操作,得到染色体候选种群后,将染色体候选种群中的候选色体的相关信息写入netlist文件,并调用HSpice软件对候选染色体对应的所有电路参数进行仿真。
在本实施例中,染色体种群的选择操作为根据支配序及适应度值对染色体种群进行选择。染色体种群的选择算法可以是轮盘法、锦标赛法或排序法。染色体种群的交叉操作为对选择出来的染色体进行交叉操作。交叉算法可以是单点交叉、两点交叉、算术交叉、线性交叉或基于方向的交叉。染色体种群的变异操作为对交叉得到的染色体进行变异操作。变异的算法可以是均匀交叉、高斯变异、动态变异以及基于方向的变异。
在本实施例中,交叉算法采用算术交叉算子,具体为:
其中,v1、v2随机选择的两条染色体,v1’、v2’为生成的两条染色体,λ为(0,1)的随机数。
函数构造单元104,用于提取染色体候选种群的仿真结果,并将候选染色体中的每个电路参数,与每个非主要电路指定参数一一进行比较,得到每个候选染色体的适应度函数值。
需要说明的是,非主要电路指定参数为用于作为电路约束条件,将电路约束在正常工作的范围内的电路性能参数,或非主要电路指定参数为非重点优化的电路性能参数。
在本实施例中,函数构造单元104,具体用于提取染色体候选种群的仿真结果,并将候选染色体中的每个电路参数,与每个非主要电路指定参数一一进行比较,若电路参数优于非主要电路指定参数,则将电路参数的值置换为对应的所述非主要电路指定参数的值;若电路参数不优于非主要电路指定参数,则不需要进行置换。
需要说明的是,非主要电路指定参数为用于作电路约束条件,或非主要电路指定参数为非重点优化的电路性能参数。
在本实施例中,假设候选染色体对应的电路参数为F=[F1,F2,...,Fm],非主要电路指定参数为F'=[F'1,F'2,...,F'i+n]。其中m为寻优的电路参数的个数,且i+n≤m,F’的值优于最优解参数X0。函数构造单元104用于在寻优过程中,对提取到的电路参数F的值进行检测,若F'=[F'1,F'2,...,F'i+n]优于对应F'=[F'1,F'2,...,F'i+n]的值,则对应的Fk置为对应的F’k,其它值不变,最终得到每个候选染色体的适应度函数值。其中,k∈[i,i+n]。
优化处理单元105,用于将得到适应度函数值的每个候选染色体进行带精英策略的快速非支配排序,并计算每个候选染色体在候选染色体种群中的拥挤度距离,得到新一代染色体种群,即优化后的电路参数。
在本实施中,优化处理单元105,具体用于将得到适应度函数值的每个候选染色体,根据每个候选染色体的个体非劣解水平,对染色体候选种群进行分层,并计算每个候选染色体的拥挤度距离,得到每个候选染色体的非支配序和拥挤度距离后,判断每个候选染色体的非支配序和拥挤度距离是否符合最优电路参数的条件。若符合,则输出由每个候选染色体组成的新一代染色体种群;若不符合,则以候选染色体为基础,迭代地进行交叉、变异操作,直至每个候选染色体的非支配序和拥挤度距离符合最优电路参数的条件。
在本实施例中,根据每个候选染色体的快速非支配排序算法,需要计算候选染色体种群P中每个个体i的两个参数ni和Si,其中ni为种群中支配个体i的个体数,Si为种群中被个体i支配的个体集合ni=0。具体的计算方法为,找出种群中所有ni=0的个体,并保存在当前集合F1中;对于当前集合F1中每个个体i,其所支配的个体集合为Si,遍历Si中每个个体i,执行ni=ni-i。如果每个个体i,其所支配的个体集合为Si,则遍历Si中每个个体i,执行ni=ni-i;如果ni=0,则将i保存在集合H中。记F1中得到个体为第一个非支配层的个体,并以H为当前集合,重复以上操作,直到整个种群被分层。
在本实施例中,拥挤度表示在候选染色体种群中给定点的周围个体的密度,用id表示。直观上用个体i周围包含个体i但不包含其余个体的最大长方形的长来表示。计算每个候选染色体的拥挤度距离的具体方法为,将每个点的拥挤度id置为0。针对每个目标,对得到所述适应度函数值的候选染色体种群进行非支配排序,令边界的两个个体拥挤度距离为无穷,即Od=Id=∞。对其它个体进行拥挤度距离的计算,具体计算公式为:
在本实施中,精英策略具体为,将父代Pt和子代Qt全部个体合成为一个统一的种群Rt=Pt∪Qt。其中Rt的个体数为2N。将种群Rt快速非支配排序并计算每一个体局部拥挤度距离,依据等级的高低逐一选取个体,直到个体数量达到N时就形成了新的父代种群Pt+1,在此基础上开始新一轮的选择、交叉和变异,形成新的子代种群Qt+1。
在本实施例中,经过排序和拥挤距离计算,候选染色体种群中的每个个体i都得到两个属性,即非支配序irank和拥挤度距离id。优化处理单元105用于当两个属性不符合最优电路参数的条件时,以候选染色体为基础,采用基于非支配序和拥挤度距离的锦标赛制选择算子,迭代地进行交叉、变异操作。
在本实施例中,锦标赛制选择算子的具体方法为:随机选择2个个体(k>1),当irank<jrank或irank=jrank且id>jd时,i个体优于j个体。
本发明实施例提供一种基于NSGA-Ⅱ的模拟集成电路参数优化设计方法及装置,所述方法包括:提取优化电路的电路参数,并将电路参数组成的初始代染色体进行复制,得到初始代种群后,通过NSGA-Ⅱ算法对初始代种群进行操作,得到含非支配序的染色体种群;将含非支配序的染色体种群进行选择、交叉和变异操作,并对得到的结果进行适应度函数构造,再进行带精英策略的快速非支配排序及拥挤度计算,最终得到优化后的电路参数。相比于传统的电路参数优化设计方法,本发明通过优化初始代种群产生方案和构造适应度函数,并基于NSGA-Ⅱ算法进行优化参数计算,解决了利用遗传算法进行电路参数优化设计时寻优算法收敛速度过慢或无法收敛的问题,实现对模拟集成电路参数的优化设计,且通过引入精英策略,扩大了采样空间,防止最佳个体的丢失,提高了算法的运算速度和鲁棒性。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
Claims (8)
1.一种基于NSGA-Ⅱ的模拟集成电路参数优化设计方法,其特征在于,至少包括如下步骤:
提取优化电路的电路参数,并根据所述电路参数组成的初始代染色体,对所述初始代染色体进行复制,形成初始代种群;
通过NSGA-Ⅱ算法对所述初始代种群进行快速非支配排序,并基于所述NSGA-Ⅱ算法计算所述初始代染色体在所述初始代种群中的拥挤度距离,得到含非支配序的染色体种群;
将所述含非支配序的染色体种群进行选择、交叉和变异操作,得到染色体候选种群后,调用与所述染色体候选种群对应的电路参数进行仿真;
提取所述染色体候选种群的仿真结果,并将所述染色体候选种群的每个候选染色体中的每个电路参数,与每个非主要电路指定参数一一进行比较,得到每个所述候选染色体的适应度函数值,具体为:提取所述染色体候选种群的仿真结果,并将所述候选染色体中的每个电路参数,与每个所述非主要电路指定参数一一进行比较,若所述电路参数优于所述非主要电路指定参数,则将所述电路参数的值置换为对应的所述非主要电路指定参数的值;其中,所述非主要电路指定参数为作为电路约束条件,将电路约束在正常工作的范围内的电路性能参数,或所述非主要电路指定参数为非重点优化的电路性能参数;
将得到所述适应度函数值的每个所述候选染色体进行带精英策略的快速非支配排序,并计算每个所述候选染色体在所述候选染色体种群中的拥挤度距离,得到新一代染色体种群,即优化后的电路参数。
2.根据权利要求1所述的基于NSGA-Ⅱ的模拟集成电路参数优化设计方法,其特征在于,所述提取优化电路的电路参数,并根据所述电路参数组成的初始代染色体,对所述初始代染色体进行复制,形成初始代种群,具体为:
提取优化电路的电路参数写入netlist文件后,从所述netlist文件中提取所述电路参数构成所述初始代染色体,并根据预定的种群大小对所述染色体进行复制,形成所述初始代种群。
3.根据权利要求1所述的基于NSGA-Ⅱ的模拟集成电路参数优化设计方法,其特征在于,所述调用与所述染色体候选种群对应的电路参数进行仿真,得到仿真结果,具体为:
将所述染色体候选种群中的候选染色体的相关信息写入netlist文件,并调用HSpice软件对所述候选染色体对应的所有电路参数进行仿真,得到仿真结果。
4.根据权利要求1所述的基于NSGA-Ⅱ的模拟集成电路参数优化设计方法,其特征在于,将得到所述适应度函数值的每个所述候选染色体基于NSGA-Ⅱ算法进行带精英策略的快速非支配排序,并基于NSGA-Ⅱ算法计算每个所述候选染色体在所述候选染色体种群中的拥挤度距离,得到新一代染色体种群,具体为:
将得到所述适应度函数值的每个所述候选染色体,根据每个所述候选染色体的个体非劣解水平,对所述染色体候选种群进行分层,并计算每个所述候选染色体的拥挤度距离,得到每个所述候选染色体的非支配序和拥挤度距离后,判断每个所述候选染色体的非支配序和拥挤度距离是否符合最优电路参数的条件;其中,若符合,则输出由每个所述候选染色体组成的所述新一代染色体种群;
若不符合,则以所述候选染色体为基础,迭代地进行交叉和变异操作,直至每个所述候选染色体的非支配序和拥挤度距离符合最优电路参数的条件。
5.一种基于NSGA-Ⅱ的模拟集成电路参数优化设计装置,其特征在于,包括:
参数提取单元,用于提取优化电路的电路参数,并根据所述电路参数组成的初始代染色体,对所述初始代染色体进行复制,形成初始代种群;
算法处理单元,用于通过NSGA-Ⅱ算法对所述初始代种群进行快速非支配排序,并基于所述NSGA-Ⅱ算法计算所述初始代染色体在所述初始代种群中的拥挤度距离,得到含非支配序的染色体种群;
仿真处理单元,用于将所述含非支配序的染色体种群进行选择、交叉和变异操作,得到染色体候选种群后,调用与所述染色体候选种群对应的电路参数进行仿真,得到仿真结果;
函数构造单元,用于提取所述仿真结果,并对所述仿真结果进行适应度函数构造,得到所述染色体候选种群中每个候选染色体的适应度函数值,具体用于提取所述仿真结果,并将所述候选染色体中的每个电路参数,与每个非主要电路指定参数一一进行比较,得到每个所述候选染色体的适应度函数值;其中,若所述电路参数优于所述非主要电路指定参数,则将所述电路参数的值置换为对应的所述非主要电路指定参数的值;所述非主要电路指定参数为电路约束条件,或所述非主要电路指定参数为非重点优化的电路性能参数;
优化处理单元,用于将得到所述适应度函数值的每个所述候选染色体进行带精英策略的快速非支配排序,并计算每个所述候选染色体在所述候选染色体种群中的拥挤度距离,得到新一代染色体种群,即优化后的电路参数。
6.根据权利要求5所述的基于NSGA-Ⅱ的模拟集成电路参数优化设计装置,其特征在于,所述参数提取单元具体用于:
提取优化电路的电路参数写入netlist文件后,从所述netlist文件中提取所述电路参数构成染色体,并根据预定的种群大小对所述染色体进行复制,形成所述初始代种群。
7.根据权利要求5所述的基于NSGA-Ⅱ的模拟集成电路参数优化设计装置,其特征在于,所述仿真处理单元具体用于:
将所述染色体候选种群中的候选染色体的相关信息写入netlist文件后,调用HSpice软件对所述候选染色体对应的所有电路参数进行仿真,得到仿真结果。
8.根据权利要求5所述的基于NSGA-Ⅱ的模拟集成电路参数优化设计装置,其特征在于,所述优化处理单元具体用于:
将得到所述适应度函数值的每个所述候选染色体,根据每个所述候选染色体的个体非劣解水平,对所述染色体候选种群进行分层,并计算每个所述候选染色体的拥挤度距离,得到每个所述候选染色体的非支配序和拥挤度距离后,判断每个所述候选染色体的非支配序和拥挤度距离是否符合最优电路参数的条件;其中,若符合,则输出由每个所述候选染色体组成的所述新一代染色体种群;
若不符合,则以所述候选染色体为基础,迭代地进行交叉、变异操作,直至每个所述候选染色体的非支配序和拥挤度距离符合最优电路参数的条件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811300526.6A CN109543247B (zh) | 2018-11-01 | 2018-11-01 | 基于nsga-ⅱ的模拟集成电路参数优化设计方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811300526.6A CN109543247B (zh) | 2018-11-01 | 2018-11-01 | 基于nsga-ⅱ的模拟集成电路参数优化设计方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109543247A CN109543247A (zh) | 2019-03-29 |
CN109543247B true CN109543247B (zh) | 2023-01-20 |
Family
ID=65846411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811300526.6A Active CN109543247B (zh) | 2018-11-01 | 2018-11-01 | 基于nsga-ⅱ的模拟集成电路参数优化设计方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109543247B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110119558B (zh) * | 2019-04-30 | 2023-11-14 | 广州大学 | 一种基于差分优化算法的电路参数优化方法 |
CN112182974B (zh) * | 2020-10-09 | 2022-04-26 | 中国人民解放军陆军工程大学 | 一种神经元电路演化设计方法 |
CN113722871B (zh) * | 2021-11-03 | 2021-12-31 | 华中科技大学 | 一种x波段行波加速管的结构参数优化方法 |
CN116614830B (zh) * | 2023-07-18 | 2023-10-31 | 中国电信股份有限公司 | 网元优化方法、装置、计算机设备、存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103198359A (zh) * | 2013-04-03 | 2013-07-10 | 南京理工大学 | 基于nsga-ⅱ优化改进的模糊回归模型构造方法 |
CN105187051A (zh) * | 2015-07-14 | 2015-12-23 | 北京航空航天大学 | 一种基于NSGA-II用于不完全确定Reed-Muller电路功耗与面积优化方法 |
-
2018
- 2018-11-01 CN CN201811300526.6A patent/CN109543247B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103198359A (zh) * | 2013-04-03 | 2013-07-10 | 南京理工大学 | 基于nsga-ⅱ优化改进的模糊回归模型构造方法 |
CN105187051A (zh) * | 2015-07-14 | 2015-12-23 | 北京航空航天大学 | 一种基于NSGA-II用于不完全确定Reed-Muller电路功耗与面积优化方法 |
Non-Patent Citations (4)
Title |
---|
免疫遗传算法的混合动力汽车多目标优化;李婕等;《计算机工程与应用》;20180228(第04期);第239-240页 * |
基于NSGA-Ⅱ算法的SoC测试多目标优化研究;谈恩民等;《电子测量与仪器学报》;20110331(第03期);第227-230页 * |
基于智能算法的磁流变阻尼器位置优化;徐晓龙等;《江南大学学报(自然科学版)》;20080415(第02期);第222-225页 * |
模拟电路实时仿真进化设计方法;程从俊等;《仪器仪表用户》;20090808(第04期);第100-101页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109543247A (zh) | 2019-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109543247B (zh) | 基于nsga-ⅱ的模拟集成电路参数优化设计方法及装置 | |
Haldurai et al. | A study on genetic algorithm and its applications | |
JP6620439B2 (ja) | 学習方法、プログラム及び学習装置 | |
US20180365557A1 (en) | Information processing method and information processing apparatus | |
JP6646234B2 (ja) | プログラム生成装置、プログラム生成方法および生成プログラム | |
US11037061B2 (en) | Adaptive cataclysms in genetic algorithms | |
CN110119558B (zh) | 一种基于差分优化算法的电路参数优化方法 | |
CN117236278B (zh) | 一种基于数字孪生技术的芯片生产仿真方法及系统 | |
JP7141371B2 (ja) | 学習データの精練方法及び計算機システム | |
CN113609763A (zh) | 基于不确定性的卫星组件布局温度场预测方法 | |
CN117521788A (zh) | 一种具有双参考向量引导的多模态多目标进化方法 | |
Guo et al. | [Retracted] PLncWX: A Machine‐Learning Algorithm for Plant lncRNA Identification Based on WOA‐XGBoost | |
JAVIDI et al. | Research in random parameters of genetic algorithm and its application on TSP and optimization problems | |
Yang et al. | A particle swarm optimization-based approach with local search for predicting protein folding | |
CN110705889A (zh) | 一种企业筛选方法、装置、设备及存储介质 | |
CN113821975A (zh) | 一种燃料电池性能衰减预测方法及系统 | |
CN110504004B (zh) | 一种基于复杂网络结构可控性基因的识别方法 | |
JP2007257295A (ja) | パターン認識方法 | |
CN114723051A (zh) | 信息处理设备、信息处理方法和计算机可读记录介质 | |
CN113205185A (zh) | 网络模型优化方法、装置、计算机设备和存储介质 | |
Chuang et al. | Chaotic binary particle swarm optimization for feature selection using logistic map | |
Ünal et al. | Genetic algorithm | |
Spieth et al. | Inferring regulatory systems with noisy pathway information | |
Majid et al. | Optimization of warranty cost using genetic algorithm: a case study in fleet vehicle | |
KR101624014B1 (ko) | 퍼지 신경망을 이용한 유전자 선택 방법 및 시스템 |
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 |