a)!o @ 摘要 x[|}.Ew f'F?MINJP
+Z,;,5'5G x
o;QCOH 现代
光学系统的
优化一般会涉及到大量的
参数,例如:优化
光栅时不仅需要考虑光栅的几何参数,还有所需的入射方向。随着参数数量的大量增加,优化越来越具有挑战性。对于这种情况,VirtualLab Fusion提供了与Dynardo的optiSLang软件的接口,可以使用不同的高级优化算法。
m%0p\Y-/ Q@= Q0 VirtualLab Fusion和optiSLang的界面 Mg+2.
8% YByLoM* VirtualLab Fusion是一种灵活且可定制的建模工具平台,可以
仿真复杂的光学装置,例如:将一组平面波耦合入光波导。
wC"FDr+ M^A48u{,"
),_@WW;k
)| ccX optiSLang是一种包含各种高级工具的
软件平台,包括敏感度分析、多元和多学科优化、鲁棒性评估、可靠性分析和鲁棒设计优化。
9FF0%*tGo 两种软件平台的结合使得例如智能光波导耦合等高级光栅结构变为可能。
"BAK !N$9 BqEI(c6 VirtualLab Fusion – 光学装置初始化 4a&RYx D2#ZpFp"h 初始装置
&.3"Uo\# ─ 一般来说,在VirtualLab中定义的
光学系统都可以使用optiSLang进行优化。
7o\@>rNWP ─ 该例中的光学系统包含了平面波
光源和用于周期性介质的波导耦合探测器。
xexaQuK A]*}HZ,
/>C^WQI^ 2'l'8 VirtualLab Fusion – 波导耦合探测器 ~"gA,e-) 1pVS&0W 波导耦合探测
WpDSg*fk=Y ─ 波导耦合探测器是一种特殊工具,用以探测某个周期性结构以特定角度范围入射的效率。
1> ?M>vK ─ 可以从探测器的编辑对话框中的目录定义或加载周期性结构。
DmK57V4L^ sVQ|*0(J0r
'I|v[G$l "> ypIR< VirtualLab Fusion – 波导耦合探测器 *YI98 波导耦合探测
VD AaYDi ─ 该例中使用了倾斜光栅。
TT%M'5& oE@a'*.\
$B+8Of t}a: p6D] VirtualLab Fusion – 波导耦合探测器 _1X!EH" 波导耦合探测
m<G,[Yc ─ 该例中使用了倾斜光栅。
?Rb9|`6 P.se'z)E
N>uRf0E> e}voV0y\v: VirtualLab Fusion – 波导耦合探测器 h#I>M`| _>?\DgjH 波导耦合探测
8qoMo7-f ─ 输入光源的入射角度范围在探测器编辑对话框中指定。
Mc
lkEfn ─ 通过最小和最大笛卡尔坐标系角度alpha和beta与它们的采样点数定义。
'd0~!w BkAm/R
-
nm"of\o uo:J\ E VirtualLab Fusion – 波导耦合 DDQx
g 1y&\5kB 波导耦合探测
b1q"!+8y ─ 可以从探测得到的效率计算平均值和均匀对比度,并在探测器结果标签页中给出。
Q>qUk@ ─ 作为结果,探测器可以用于评估在特定角度范围内的周期性结构。
> tS'Q`R |T /ZL!
r wL`Czs 'ycJMYP8 VirtualLab Fusion – 输出LPD至OPtiSLang b)#hSjWO# sfH_5
#w 输出LPD至OPtiSLang
W.jGGt\<\ ─ File→Export→Export to optiSlang Project
QpH'PYy
$QF{iV@6d4 <\y@*fg+ VirtualLab Fusion – 输出LPD至OPtiSLang *tFHM &a FgnTGY} 输出LPD至OPtiSLang
@&!ZZ
1V8 ─ File→Export→Export to optiSlang Project
Eh`7X=Z7E ─ 输出LPD文件,并产生输入至optiSLang的必要光学装置文件。
=[ 46`-_ hF?1y `20
KM0ru ;LfXi 8) VirtualLab Fusion – 输出LPD至OPtiSLang lgAoJ[ ~Gp[_ %K 输出LPD至OPtiSLang
RU{twL.B ─ 在输出对话框窗口。
$p8xEcQdU# 可定义参数空间,并包含了参数的变化范围。
;a!S!%.h 可以选择保存到的输出文件夹。
e
,'_xV 可以指定
模拟引擎,用于分析。
v~+(GqR=+ A|[?#S((]
FZQP%]FX iXkF1r]i optiSLang – 初始化优化 iU918!!N z
kP_6T09 设置求解器系统
NX.6px17 ─ File→New project…
Jrf=@m\dk b6M[q_
;C#F>SG\S k}CVQ@nd optiSLang – 初始化优化 gaxsv[W>^ ja'T+!k 设置求解器系统
9=M$AB ─ 继续,拖动求解器(Solver)向导到场景(Scenery)窗口。
Q} JOU ─ 打开了一个对话框,列出了几种求解器(Solver)范例。
+/7?HGf ─ 求解器(Solver)范例中必须选择VirtualLab。
8%mu8l :G=fl)!fE
TqQB@-! optiSLang – 初始化优化 K3&qq[8.e c]<5zyl"j1 设置求解器系统
wu6;.xTLl ─ 然后会弹出文件对话框,必须打开VirtualLab输出的system.lpd文件。
DK~xrU' p>N(Typ0b
j_[tu!~ 7+cO_3AB optiSLang – 初始化优化 bs&43Ae sdrfsrNvB- 参数化的求解器系统
'BxX0 ─ 参数化的求解器系统包含相应的VirtualLab文件和两个含有参数和结果的XML文件,用于定义优化函数。
]q[D>6_ ─ 请务必保存计划。
=*.~BG ]A`n(
"%
@bLy,Xr& }#+^{P3 ; optiSLang – 初始化优化 r<EY]f^`u iVr J Q 参数化的求解器系统
jd"@t*ZV ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。
<dNOd0e Hio0HL-
7z,C}-q Y-z(zS^1 optiSLang – 初始化优化 B mb0cFQ est9M*Fn 参数化的求解器系统
(L:>\m&NO ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。
W
i.&e ─ 通过双击结果(Result)设计标签页中的参数化(Parametric)求解器系统窗口,可以检查参数和结果。
1.hyCTnI >|=ts
UDFDJm$ $wa{~' optiSLang –设置优化 hZ,_6mNg ]N]!o#q}L 参数化的求解器系统
C.P*#_R ─ optiSLang可以进行多目标函数的光学系统优化。
}>|s=uGW ─ 这可以在参数化(Parametric)求解器系统配置的判据(Criteria)标签页中定义。
Q{>k1$fkV {S\{Ii6
DCa^
u'f = svN#q5s optiSLang –设置优化 Ix}sK"}[n `}\
"Aw c 参数化的求解器系统
JR|ck=tq ─ 可以通过拖动均匀化对比度(Uniformity Contrast)到目标最小化(Objective Minimize)判据中定义第一目标函数。
_LnpnL: ─ 因此优化算法会尽可能地使均匀度对比最小化。
TX/Xt7#R: >:!5*E5?
~ Iuf}D; T!{w~'=F optiSLang –设置优化 FV!q!D e9tjw[+A 参数化的求解器系统
t@;p ─ 可以通过拖动平均值(Mean)到目标最小化(Objective Maximize)判据中定义第二目标函数。
Fo_sgv8O< ─ 因此优化算法会尽可能地使平均效率最大化。
Izc\V9+ ─ 这步操作被称为多目标优化。
3?yg\ Y=KT eYW`
5tkAFb4P Zi
i optiSLang –设置优化 Or+U@vAnk 00y!K
m_D 优化向导
,0 sm ─ 下一步可以通过拖放来使用优化向导。
BO&bmfp7, ^
@5QP$.
_H%c;z+ `wVyb>T optiSLang –设置优化 ioCsV Llo"MO*sr 优化向导
?l )[7LR4 ─ 第一步,提供了各种系统参数,包括其指定的值范围。
am'7uy!ka~ ─ 此外,optiSLang提供了一个可视化的值范围,其中标出了初始值。
/~?*=}c^m ─ 然后点击下一步。
)akoa,#%6c bE. .P&"
j^JPZ{ej? t*u:hex optiSLang –设置优化 q9_OGd|P /3T1U 优化向导
Sm|6 %3 ─ 第二步,如果在参数化的求解器系统中没有指定优化条件,则此时可以指定。
kJ}`V ─ 也可以从其他文档中输入条件。
=,8]nwgo ─ 然后点击下一步。
9A=,E& O>,e~#!
+\9NDfYIA `^&OF uee optiSLang –设置优化 o*H<KaX tsjrRMR 优化向导
Yq
KCeg ─ 第三步,选择优化方法。
;_(4Q*Yx ─ optiSLang提供了类似于红绿灯的建议形式来选择合适的方法:
L4HI0Mx 红:不适用
wHy!CP% 黄:适用
p5iuYHKk? 绿:推荐
:F?C)F ─ 该例中推荐使用进化算法。
Lf&kv7Wj ─ 然后点击下一步。
5b*C1HS@X y)@wjH{6
GTd,n= W6Fo6a"< optiSLang –设置优化 1+s;FJ2}
8A#;WG 优化向导
7<R E_/] ─ 然后,需要指定一些附加选项。
0 H:X3y+ ─ 建议在算法运行期间显示后期处理选项,以便在优化运行期间访问结果数据。
hgq;`_;1, ─ 然后点击结束。
ZECfR>`x 1qA;/-Zr<o
xJe%f\UDu <P_-s*b optiSLang –进化算法的高级设置 JZx[W&]zT bt?5*ETA 高级设置
xqh ─ 双击创建优化,可以调整优化算法的详细参数。
F^:3?JA_ B@ EC5Ap*
!nnC3y{G optiSLang –进化算法的高级设置 [/r(__. L4W5EO$ 高级设置
'w aaw_>b ─ 双击创建优化,可以调整优化算法的详细参数。
E1
2uZ$X ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。
1% ` Rs
He@KV=
>t+P(*u (bS&D/N. optiSLang –进化算法的高级设置
0y\Z9+G: :3 mh@[V 高级设置
%cn<ych
G ─ 双击创建优化,可以调整优化算法的详细参数。
UEL_uij ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。
h(DTa ─ 在标签页“其他”中,提供了一些预定义的参数,适用于大部分优化。(例如“EA 10000”)
H PVEnVn 4xj4=C~i
2\$oV %BODkc Zh optiSLang –进化算法的高级设置 ca9X19NG {!`6zBsP 高级设置
MdF2Gk-9 ─ 此外,作为附加选项,可以调整optiSLang是否自动保存。
lB4WKn=?Kl ─ 默认情况下,在计算每个设计迭代后,项目会自动保存。
7tp36 TE ─ 特别是对于计算时间短的设计,这会产生大量开销并减慢优化速度。
*Pr )% ─ 因此,建议将自动保存选项设置为每50或100个完成的设计后保存。
"dlVk~ z$sGv19pB
0g;|y4SN= E{(;@PzE optiSLang –设计计算的并行化 kx^/*~ex ar,7S&s