跳转到内容

结构优化器

结构优化器(Structural Optimizer) 搜索的是设计的结构,而不仅仅是其厚度。每一步它都会随机变异层堆栈:通过增、删、拆、合一个层,对结果重新精炼,并使用模拟退火规则决定是否保留它。因为它能改变层的数量与排布,它可以达到固定结构的 精炼 乃至基于插入的 针式渐进演化 工具都无法达到的设计。

每一代,它会提出当前设计的若干变异,对每一个进行精炼,并取这批中最佳的一个。一个更差的设计仍可能以由温度决定的概率被接受——温度随运行推进而降温——而这正是让搜索能够爬出局部极小值的原因。实时设计始终跟踪所找到的最佳结果,因此停止、重置或切换标签页时,你始终停留在最佳设计上。

变异 效果
增(Add) 在随机位置插入一个新层(材料来自材料池)。
删(Remove) 删除一个层。
拆(Split) 将一个层切成两个。
合(Merge) 合并相邻层。
扰(Perturb) 抖动一个层的厚度。

被锁定的层永远不会被触碰,厚度边界始终被遵守。

候选池 算子可以使用的材料(全部(All)/ 清空(Clear))。

变异种类:允许搜索使用的算子开关。

最大迭代次数(Max iter):要运行的最多代数。

目标评价函数(Target MF):一旦评价函数达到该值即停止。

T₀(温度):起始退火温度。较高的值在初期接受更多上坡移动,从而拓宽搜索。

抖动(Jitter) 算子的厚度扰动尺度。

精炼迭代次数:对每个提出的候选设计应用的精炼步数。

dMin:被添加或拆分的层的最小厚度。

最大添加数 / 最大层数(Max add / Max layers):设计可增长幅度的上限。

并行 K(Parallel K):每一代一起精炼的候选数量。

内层精炼器:精炼每个候选所用的方法。可选方法见 优化方法

搜索期间最小和最大厚度限制被放宽;之后通过 精炼设计清理器 处理重新启用它们。

评价函数趋势(MF trend) 图将最佳评价函数和当前评价函数都对代数作图,而一个已接受改进历史列出了每一个新的最佳结果及其产生的变异。帕累托 / 最佳设计(Pareto / Top-Designs) 面板让你可以比较所找到的最佳设计。最佳(Best) 可随时恢复全局最佳。

该工具在有余地重构的设计上表现出色(例如多层增透膜);在单层设计上没有任何结构可做,因此请改用精炼。一个好的模式是先运行它来发现更优的拓扑,然后在你的制造下限上用精炼收尾。

  • S. Kirkpatrick, C. D. Gelatt, M. P. Vecchi, Science 220, 671 (1983).
  • A. V. Tikhonravov & M. K. Trubetskov, Appl. Opt. 51, 7319 (2012).
  • H. A. Macleod, Thin-Film Optical Filters, 5th ed., Ch. 9.