技术简报
当前位置:首页» 技术简报

CODE V 优化的约束模式:精确、加权和罚函数

 任何实际的优化都是在提高性能的同时寻找一种能够满足设计指标的方案,包括制造型指标。CODE V 优化引擎 (AUT),使用像差评价函数来量化性能(成像质量),同时也量化那些设计指标,作为约束条件。优化引擎内建有非常多的和光学相关的误差评价函数和约束,同时也允许你定义。对于约束条件,有一些技巧可以帮助你在优化时,如何进行选择,如何使用控制。

1.jpg

默认的约束是为了硬约束,必须满足,不考虑对评价函数的影响效果。CODE V 的优化引擎使用拉格朗日乘数法来控制这些“硬的”或者“精确的”约束条件。把评价函数从约束条件中进行有效的分离处理,拉格朗日乘数法对于随变量改变而线性改变的约束非常有效,比如光学量里面的有效焦距,机械量里面的总长,等等,非常多。对于你明确要求的特定约束,你可以有几种选项来定义约束方法:相等(=),或者上边界、下边界、同时有上下边界(<>)。CODE V的默认普通约束,例如保证可加工制造的约束也是使用这种方法进行精确的控制。

加权的约束模式(MIN化(权重))和罚函数约束模式把对约束条件的偏离纳入评价函数。这种模式使你可以平衡成像质量的相对权重和约束条件对目标值的偏离。这种把约束植入评价函数的方法,当你在处理“软约束”的时候是很有用的。特别是约束随着变量在做非线性变化,我们发现当你试图平衡诸如畸变或者表面形状偏离等约束时,加权的约束模式比精确模式更有效果。当精确的约束加入和退出时,优化的输出会显示出来,如果同样的约束不断地加入、退出,就说明如果把此约束放入评价函数会比较好。

对于加权的约束模式,你设置目标和权重:偏离目标,评价函数就会增加。对于罚函数约束模式,你定义一个目标和边界:边界内的约束对于评价函数的影响很小,出了边界范围,约束对于评价函数的贡献急剧增加。

下图比较了MIN化约束模式和罚函数约束模式对于评价函数的贡献,约束内容是要求畸变小于1%。如果使用权重为0.1的MIN化模式(几乎贴地的绿线),和罚函数的效果一样(看正负0.01处,红线和绿线纵坐标一样高)。但是你可以看见,正负0.01范围以外,贡献还是非常小,所以约束没有很好地控制。如果使用权重0.8,MIN化约束模式和罚函数模式在正负0.02处产生一样的贡献(纵坐标)。然而在正负0.01范围内,MIN化模式对评价函数产生的贡献非常显著(蓝线)。这会导致优化出来的方案有一个不必要的比较紧的畸变控制,代价会是成像质量变差些。所以对于非线性边界的约束,罚函数模式是比较理想的植入评价函数的约束模式。

2.jpg

在加权模式或者罚函数模式,设置权重时,我们建议先运行一个评价优化(优化迭代次数为零),然后检查输出,文本显示整个评价函数、像差分量和约束分量。例如,考虑一个系统,由下面的数量开始, WTC 或者 PTC 1

CYCLE NUMBER 0:

ABERR F. =      207.00337909
CONST F. =        0.05946438
ERR. F.  =      207.06284347

约束的贡献开始很小,不像会对结果有多大的影响。这可能有维持住约束值不变的效果,如果此约束值本来有一个机会在优化过程中会变化,但你想维持住,这倒是非常好。如果约束没有满足,你可能希望增加约束权重,直到像差分量和约束分量幅度差不多,这样可以驱赶约束进入一个可以接受的范围。上面的例子中,如果我们增加约束的权重到150,评价函数的各个分量就会比较平衡:

CYCLE NUMBER 0:

ABERR F. =      207.00337909
CONST F. =      148.66094760
ERR. F.  =      355.66432669

考虑约束模式、调整权重,对于优化的收敛可以有显著的效果,你就可以找到一种既满足成像质量,又符合设计规格的形式。理解这些设置是如何影响优化的,对于帮助你在更短的时间内找到更好的解决方案是非常有价值的。

分享到:
 更新时间:2014-10-7  【打印此页】  【关闭

地址:上海市普陀区桃浦路306号B座1014室
电话:021-32562316
版权所有: 沪ICP备15043844号
技术支持:江苏大观

沪公网安备 31010702007407号

手机浏览

关注微信