原创 【转】从实例中学习OrCAD-PSpice 10.3-AA(第5章 优化) 4

2010-11-13 09:14 883 3 3 分类: PCB

5.6 优化设计引擎 
        Optimizer工具采用多种优化算法,又称优化引擎。PSpice/Optimizer对单目标优化可以在Optimizer工具窗口执行 Edit Profile Settings 子命令,显示在Optimizer标签页以曲线作为优化指标的参数设置与优化引擎相关的参数设置,通过One Goal栏,选择直接最小算法:点击(Minimize),即是导数法,或最小二乘法:点击(Least Squares)。多目标函数均是用最小二乘法。其中又分为改进的最小二乘法(又称engine引擎,MLSQ:Modified Least Squares Quadratic)、最小二乘法(LSQ:Modified Least Squares Quadratic)以及随机引擎(Random engine)和离散引擎(Discrete engine),如图5-7所示。
 
下面主要介绍4种优化引擎的功能特点:


1.改进的最小二乘法(又称engine引擎,MLSQ:Modified Least Squares Quadratic)
    采用该引擎能快速的确定到被测量目标函数的最佳值。改进的最小二乘法引擎使用的是有约束和无拘束的最小化运算法则, 允许它将优化目标按非线性特点来约束。 通常改进的最小二乘法引擎比最小二乘法引擎运行的要更快更准确。MLSQ优化引擎的具体功能参数设置如图5-7所示。
图5-7中:
  (1) 行:相对比例变化值(以百分比的形式体现)。例如: 若一个参数实际值为10-8,Delta设定为1%(默认值),则MLSQ引擎在以10-10来选择参数。1%的默认值准确性可以很好的适应多数模拟仿真工作情况的需要。根据设计要求的准确性可以适当的改变Delta值大小。如果数据的准确性很好,并且需要调整的数据很小,则可以适当的减小Delta值。如果数据的准确性很糟糕,并且需要调整的数据很大,则可以适当的增大Delta值;
  (2) 行:最大优化次数;
  (3) 行:当MLSQ 引擎对目标函数减少搜索时的最小内在分数值;
  (4) 行:MLSQ 引擎调整最佳化参数的门限值。默认值为0是为了让参数的小改动不被优化引擎运行所拒绝,为了得到理想的优化结果,可以适当的调整门限值大小。如果数据质量很好,并且门限值比零大,则可以适当减小门限值来找出更为准确的参数值。如果数据质量不可靠,则可以适当增大门限值来确定 optimizer 在运行期间不被阻止,顺利运行。

2.最小二乘法(LSQ:Modified Least Squares Quadratic)
    若采用的改进的最小二乘法不能达到理想结果,可以使用最小二乘法引擎来确定被测量目标函数的最佳值。LSQ优化引擎的具体功能参数设置如图5-8所示。
 
图5-8中:
(1) 行:灵敏度扰动大小,该项主要是在灵敏度工具运行过程中控制Delta值的增加,以便来确定参数值的大小。默认值为0.005是指在每次灵敏度分析中,将现有的参数值乘以0.5%得到的参数值结果;
(2) 行:绝对函数容差参数集合(AFCTOL),其发生条件为:在RFCTOL 和 XCTOL 测试已经失败的情况下,LSQ 引擎找出的函数值(平方根总和的1/2)小于AFCTOL 的点;
(3) 行:相对函数容差参数集合(RFCTOL),可以检测错误值的大小,其发生条件为: ;
(4) 行:在指定的X范围内的容差参数集合(XCTOL),可以检测阶跃值的大小,其发生条件为实验过的牛顿阶跃和相对阶跃值小于等于XCTOL;
(5) 行:错误的容差参数集合(XFTOL),可以检测在运行过程中从集合点到非关键点的集合。其发生条件为:
   1) 无AFCTOL,FCTOL或XCTOL集合; 
   2)实际阶跃产生值小于两次的预测减小值;
   3)相对阶跃值小于等于XFTOL。
(6) 行:最小量因素到增量可信区域,在LSQ engine运行中,可以增加的阶跃最小值;
(7) 行:最大量因素到增量可信区域,在LSQ engine运行中,可以增加的阶跃最大值;
(8) 行:LSQ engine运行的最大次数。


3.随机引擎(Random engine)
    选用随机引擎,随机的选取优化初始值,将解决MLSQ和LSQ不能确定初始值和局部最小极值点的问题。随机引擎的具体功能参数设置如图5-9所示。
 
图5-9中:
 每次阶跃的范围。例如:设定该值为7。有一个参数最小值是10,最大值是16,则该参数显示的结果为10, 11, 12, 13, 14, 15, 16;
 最大运行次数;
 运行结束时返回运行的最佳值;
 设置随机改变元器件值的不同顺序号。该随机产生的“种子”不像蒙特卡洛分析工具那样,该引擎的“种子”在运行过程中不会自动改变。因此,如果重新运行优化引擎时不改变任何参数值将会得到相同的结果。

4.离散引擎(Discrete engine)
    离散引擎是指选定与优化结果要求最接近的商品化元器件系列标称值。离散引擎的具体功能参数设置如图5-10所示。可以通过Discrete Files来添加、删除相应的离散文件,在Discrete Table中选择符合设计要求的离散值系列。具体在优化结果中如何选择符合设计要求的商品化元器件系列标称值,可以参考5.8.6运用离散引擎确定参数值相关内容。
 
    上述4种优化引擎的具体功能参数在实际应用中一般不用改动,均采用默认值就能很好的完成优化任务。若有特殊要求,可以根据实际设计要求调整。在实际优化过程中,通常是几个优化引擎结合起来综合使用。一般选用的顺序是:首先是随机引擎,然后是最小二乘法或者改进的最小二乘法,最后是离散引擎分析。其中运用最广的是改进的最小二乘法。
    下面再回到工作流程图,介绍优化(Optimizer)工具的使用方法。


5.7 启动Optimizer工具
    本章仍然以射频放大器为例,设置交流模拟分析(不多赘述,参看第四章4.3节相关内容),要求该射频放大器的增益在5-5.5dB范围内,带宽不小于200MHz,启动Optimizer工具与启动Sensitivity工具方式相同如图5-11 所示。
 
运行Optimizer则出现Optimizer工具窗口如图5-12所示。
 
图中,①、②、③为优化分析结果显示区(也是高级分析(AA)五个工具各自不同结果的显示区)。
①“Parameters”表格区:显示优化过程调整元器件参数区。
②“Specifications”表格区:显示优化过程调整目标函数和约束条件区。
③误差图(“Error Graph”)区:显示优化过程动态进程区。
    下面将逐一介绍优化工具窗口中各个区域功能特点及其使用方法。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
3
关闭 站长推荐上一条 /3 下一条