第5章优化(Optimizer)工具的使用
电路模拟(仿真)是非常重要的,它辅助工程师设计了各种电路。但与期望的EDA还有距离,人们是从两方面解决这个问题。一是基于数学的最优化算法;一是基于知识信息系统,二者都有很大发展。PSpice/Optimizer是基于前者,这就需要读者了解一些数学的最优化算法,本章只做一些简介,主要是介绍优化(Optimizer)工具的使用方法。
5.1 优化(Optimizer)工具的工作流程
优化(Optimizer)工具的工作流程如图5-1所示。
图5-1 优化工具(Optimizer)的工作流程
图中:
从流程图中可以看出,优化程序是在分析的基础上进行的,优化的方法涉及到了数学的最优化算法,下面先介绍有关优化算法的基本知识。然后再按优化工作流程具体介绍优化(Optimizer)工具的使用方法。
5.2 优化的基本概念
5.2.1 设计变量
优化问题离不开设计变量、目标函数和约束条件等三个方面的问题。而首当其冲的就是如何选择设计变量。
设计变量:就是在优化设计中出现的各个可以选择取值的变动参数。
例:一个RC单管放大电路如图-2所示。在工作时,有一个100pf的寄生负载电容。我们希望设计一个增益为40,并具有改善通频带的放大器。
这个初始电路是设计者依据本身或他人的(书本的)经验进行选择的。它具有较为合理的拓扑结构以及较好的元器件参数(标称值作为优化初始值)。这些元器件参数都对设计结果有影响,都可以选作设计变量。通常只选择那些影响较大的元器件参数作为设计变量。PSpice/Optimizer 设计变量包含:
设计变量也可通过灵敏度、参数分析进行选择,PSpice/Optimizer9.0版本原可选择8个设计变量,10.3版本没有限定。本例的设计变量选择L和RL,于是,可用数学上独立变量的符号写出
5.2.2目标函数和约束条件
目标函数是待优化的目标。目标函数是评价电路优化设计好坏的标准。它是n个设计变量的一个实函数,也就是一个向量X的函数,写成
由此可见,所谓电路的优化设计,从数学角度上看,就是在一定的约束条件下,求目标函数的极值问题。
最优化算法由于要考虑各种不同要求,所以涉及面很广。诸如要不要考虑约束条件?是等式约束还是不等式约束?目标函 数是线性的(称为线性规划)还是非线性的(称为非线性规划)?是单目标优化还是多目标优化?是确定性优化(设计变量取值是确定的)还是随机性优化(设计变量取值不确定,是按一定的概率统计分布取值)等等。PSpiceA/D9.0/Optimizer只能完成的是目标和约束8项排列组合,即无约束的8个(线性的或非线性的)目标优化直到有7个(等式或非等式的)约束和1个(线性的或非线性的)单目标优化的各种组合。
目标函数和约束条件代表一个设计的理想性能,而这个性能不易得到。例如,一门电路不能完成零传输延迟,优化的目的是尽可能接近目标值(也就是尽量减少误差)。
当解决具有目标和约束的问题时,即PSpice10.3/Optimizer调整目标使之接近目标值时,会出现与约束的规定相背离的状况,就是对于一个给定的迭代指令在值域上不可能总是减小,有时反而增大。
在进行优化时必须确定哪个是目标哪个是约束?而在很多情况下,目标和约束可以有几种合法的方式(排列组合)来描述同一设计。
例如:若设计一个电阻终端连接器如图5-3所示。它在两个电阻之间的接点能产生一个3.75V(±0.1)输出电压(Ve),并且两个电阻的等效阻抗Re必须等于100Ω(±1)目的是找到符合这两个条件的最佳电阻值。
显然,R1和R2为设计变量,用下面的联立方程能够解决这个问题。
PSpice/Optimizer时,下面三种方式中任一种都能够描述这个设计,都是合法方式。
注释:因为至少要有一个优化目标,所以不存在Ve和Re均为约束的情况。
像这样有唯一解的问题,PSpice/Optimizer用这三种方式都能有同样的解,然而大部分设计问题不会这样只有一个确切的解,而是在约束条件下,其解是一个与目标值误差最小化的设计值,由于目标、约束选择各异,因此答案并不唯一。
按目标、约束进行划分时,PSpice10.3 /Optimizer可以解决四类问题,见表5-1。
文章评论(0条评论)
登录后参与讨论