跳转至

LithoGRPO: Fast Inverse Lithography via GRPO Reinforced Flow Matching

会议: ICML 2026
arXiv: 2606.00228
代码: https://github.com/laiyao1/LithoGRPO
领域: 科学计算 / 半导体制造 / Flow Matching / 强化学习
关键词: 逆光刻(ILT)、Rectified Flow、GRPO、不可微指标、Shot Count

一句话总结

LithoGRPO 把光刻掩模生成建模为以目标版图为条件的 rectified flow,并用 GRPO 强化学习微调,让一次前向就能同时优化 L2/PVB(可微)与 EPE/Shot(不可微)四类光刻指标,配合一个 130×–490× 加速的快速 shot-count 算法,在 LithoBench 上把综合排名从 5.6 拉到 4.3,单样本推理仅 0.1 s。

研究背景与动机

领域现状:在半导体制造中,光刻把电路版图通过掩模投影到晶圆上。当特征尺寸缩到曝光波长以下,衍射会让"投出来的图"严重偏离"想要的图"。传统补救手段 OPC(光学邻近校正)只在已有边缘上做局部位移;ILT(逆光刻)则把整张掩模当像素级反问题来优化,是当前最强的范式。ILT 方法大致分两类:基于优化的(MOSAIC、LevelSet 等,迭代梯度下降)和基于学习的(GAN-OPC、Neural-ILT、DAMO、ILILT、扩散模型等,端到端 image-to-image)。

现有痛点:优化派慢且只能处理可微目标;学习派则被两件事卡住——其一,监督数据本身来自优化派结果,质量天花板被锁死;其二,训练损失仍然必须可微,所以两个真正决定良率与成本的关键指标——EPE(边缘位置误差,离散计数)Shot Count(掩模被分解为多少个矩形 shot,写片成本直接相关)——在训练里完全被忽略,只在最终评估时算一遍。基于扩散的 ILT(如 DiffOPC、AdaOPC 系扩散变体)虽然图像质量高,但多步采样推理太慢。

核心矛盾:ILT 的目标函数天然是"可微 + 不可微"混合的——L2 与 PVB 可以走梯度,EPE 和 Shot 不行;而且这四个指标互相打架(追 L2 会让掩模几何更碎,Shot 立刻飙)。纯生成模型只能学到训练数据分布,没有"指标反馈"通道;纯优化又只能爬一种可微地形。

本文目标:用一个统一框架同时优化四个指标,并且保持单步推理速度;同时把 Shot 这个评估瓶颈本身也加速到可以放进训练循环里。

切入角度:作者把 ILT 类比成"带物理 reward 的图像合成"——光刻 metric 本来就是显式、确定性的标量函数,天生适合当 RL 的 reward;这正好对应近期 Flow-GRPO 系列把 GRPO 搬到流模型上的做法。

核心 idea:用 rectified flow 把掩模建模为从噪声到掩模的直线 ODE(一步推理),再用 GRPO 强化学习通过随机化的 SDE 采样在同一目标下生成多个候选掩模,按四指标 reward 做组内归一化优势计算,从而把不可微指标也接入梯度更新;同时设计一个最小重叠矩形覆盖 ILP 替代 NP-hard 的传统 shot-count,让 RL 训练循环跑得起来。

方法详解

整体框架

LithoGRPO 把"给定目标版图、生成最优掩模"这个像素级反问题,转化成一个以目标版图 \(\mathbf{T}\) 为条件的 rectified flow 生成任务:一个 87M 参数的 U-Net 参数化时间相关速度场 \(\mathbf{v}_\theta(\mathbf{x}_t, t; \mathbf{T})\)(噪声 \(\mathbf{x}_t\)\(\mathbf{T}\) 沿通道拼接),推理时从高斯噪声出发用 Euler 法走一步 \(\mathbf{x}_1 = \mathbf{x}_0 + \mathbf{v}_\theta(\mathbf{x}_0, 0; \mathbf{T})\) 即出掩模,512×512 整张图 0.1 s。真正的难点不在生成而在指标——四个光刻指标里 L2/PVB 可微、EPE/Shot 不可微且彼此打架,所以训练被拆成 Pretrain(学版图→掩模的条件分布)、SFT(接入可微指标把 L2/PVB 推到饱和)、RLFT(用 GRPO 让不可微的 EPE/Shot 也能反向影响参数)三阶段,逐步把不同性质的指标喂进同一个流模型。

物理建模侧,掩模 \(\mathbf{x}\) 经 Hopkins 衍射模型 \(\mathbf{I} = \sum_k \mu_k |h_k \otimes \mathbf{x}|^2\) 得到空中像,再经 sigmoid 软化阈值 \(\mathbf{Z} = 1/(1+\exp[-\alpha(\mathbf{I}-I_\mathrm{th})])\) 得到光刻胶图像;整条 \(g(\mathbf{x}) = f(h(\mathbf{x}))\)\(\mathbf{x}\) 可微,正是 L2 与 PVB 能走梯度的反传通道。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    A["目标版图 T + 高斯噪声"] --> B["Rectified Flow U-Net<br/>一步 Euler 生成掩模"]
    B --> C["三阶段流匹配训练<br/>Pretrain → SFT → RLFT"]
    C --> D["GRPO + 颜色噪声 SDE 采样<br/>采 G=6 个候选掩模"]
    D --> E["Fast Shot Count ILP<br/>最小重叠矩形覆盖快速算 Shot"]
    E --> F["四指标 reward → 组内归一化优势<br/>policy gradient 更新流模型"]
    F --> G["单步推理出最优掩模 0.1 s"]

关键设计

1. 三阶段 Pretrain → SFT → RLFT 流匹配训练:把生成与冲突指标逐层解耦

如果一上来就把四个相互冲突的指标全塞进损失,梯度会被四个方向同时拉扯而卡死,尤其 Shot 这种离散目标根本没有梯度。作者画的训练动力学图(Fig. 4)揭示了这个冲突的物理根源:L2/EPE 在 Pretrain+SFT 阶段单调下降,但 Shot 反而单调上升——这正是"追 fidelity 会把掩模做碎、shot 数飙升"的固有 trade-off。于是三阶段分工:Pretrain 用标准 rectified flow loss \(\mathcal{L}_\mathrm{flow} = \mathbb{E}[\|\mathbf{v}_\theta(\mathbf{x}_t, t) - (\mathbf{x}_1 - \mathbf{x}_0)\|^2]\) 学条件分布;SFT 在任意中间时刻 \(t\) 把当前速度投影到终点 \(\mathbf{x}_1 = \mathbf{x}_t + (1-t)\mathbf{v}_\theta\),在 \(\mathbf{x}_1\) 上算可微指标,损失为 \(\mathcal{L}_\mathrm{sft} = \lambda_\mathrm{flow}\mathcal{L}_\mathrm{flow} + \lambda_{\mathrm{L2}}\mathrm{L2} + \lambda_\mathrm{PVB}\mathrm{PVB}\);RLFT 则在"可微指标已饱和"的初始化上专门用 GRPO 修 Shot。这样 RLFT 不必同时管四个目标,只需在一个已经很好的起点上把飙起来的 Shot 擦回去而不掉其余三项,结果才稳定。

2. GRPO + 颜色噪声 SDE 采样:给确定性流模型注入"可制造"的随机探索

Rectified flow 本身是确定性 ODE,采不出多条轨迹,没法做 GRPO 的组内优势归一化;而 ILT 又要求掩模几何"成片成块",不能像 GAN 那样像素级抖动。作者把确定性 ODE 重写为等价 SDE 并用 Euler–Maruyama 离散化 \(\mathbf{x}_{t+\Delta t} = \mathbf{x}_t + [\mathbf{v}_\theta + \frac{\sigma_t^2}{2t}(\mathbf{x}_t + (1-t)\mathbf{v}_\theta)]\Delta t + \sigma_t\sqrt{\Delta t}\boldsymbol{\varepsilon}\)\(\sigma_t = a\sqrt{(1-t)/t}\)),在保持边缘分布不变的前提下生成 \(G=6\) 个候选掩模;reward 取四指标负归一化和 \(R = -\sum_{k \in \{\mathrm{L2,PVB,EPE,Shot}\}} k/k_0\)\(k_0\) 为 SFT 末态基线),优势 \(A_i = (R_i - \mathrm{mean}) / (\mathrm{std} + \varepsilon)\)。其中最关键的工程选择是:噪声 \(\boldsymbol{\varepsilon}\) 不用白噪声,而用低频颜色噪声(在傅里叶域对白噪声低通滤波得到)——白噪声会在掩模上撒高频碎片,直接把 shot count 顶飞,而颜色噪声保留空间相关性、不打破掩模拓扑,恰好把"RL 要探索"和"掩模要可制造"这对矛盾需求拼到一起。幅度 \(a=0.1\) 最佳:太小(0.01)探索过慢,太大(0.5)初始 reward 就崩。

3. 最小重叠矩形覆盖 ILP 的 Fast Shot Count:把 NP-hard 指标压进 RL 循环

传统 shot count 是"最小不重叠矩形分割",NP-hard,每张 mask 要算 30–150 s;而 GRPO 一次迭代要算 \(G \times \text{batch}\) 张掩模,完全跑不动,这一段才是把 RL 跑通的真正瓶颈。作者把它近似成一个可解的"最小集合覆盖 ILP",三步流水线完成:先用基于直方图的扫描在 \(O(N^2)\) 内枚举所有局部最大矩形作候选,再在 \(O(K^2)\) 内剪掉被完全包含的冗余候选,最后让剩余候选构成集合覆盖 ILP、用行扫描在 \(O(NK^2)\) 内生成约束并交 PuLP 求解——允许 shot 之间重叠,正好契合现代多电子束(multi-beam)写片实践。代价是"重叠覆盖"的绝对计数会比"非重叠分割"略大,但作者证明 GRPO 的组内归一化(Eq. 12)会自动消掉这个常数偏移,只要组内排序保持,policy gradient 就不受影响,因此放任绝对值、只保排序即可。这套"算法-训练目标共同设计"实测把单张掩模从 60 s 量级压到 0.2 s,与传统实现相关系数 \(R^2 = 0.994\)

损失函数 / 训练策略

总训练 = 50 epoch Pretrain + 25 epoch SFT + 1000 step RLFT(Metal 设置,Via 设置略减)。GRPO 用标准 clipped 形式 \(\mathcal{L}_\mathrm{grpo} = -\mathbb{E}_\mathbf{T}[\sum_i \min(r_i A_i, \mathrm{clip}(r_i, 1-\varepsilon, 1+\varepsilon) A_i)]\),其中 \(r_i = \pi_\theta(\mathbf{x}_1^{(i)}|\mathbf{T}) / \pi_{\theta_\mathrm{old}}(\mathbf{x}_1^{(i)}|\mathbf{T})\),每步过渡 log-prob 用 \(\mathcal{N}(\boldsymbol{\mu}_t, \sigma_t^2 \Delta t \mathbf{I})\) 近似。硬件为 4 × RTX 3090,每阶段 < 8 小时,推理默认 1 步采样。

实验关键数据

主实验

在 LithoBench 的 4 个数据集(MetalSet / StdMetal / ViaSet / StdContact)上对 4 个指标 + 推理时间共 17 列做综合排名(越低越好):

类别 方法 MetalSet L2 MetalSet Shot ViaSet L2 StdContact Shot 时间(s) Avg. Rank
优化派 MOSAIC 35860 361 0.940 9.8
优化派 LevelSet 34712 263 9632 275 2.290 6.9
优化派 MultiLevel 27893 1250 4268 1473 1.030 5.6
学习派 GAN-OPC 43414 574 14767 276 0.010 7.4
学习派 Neural-ILT 36670 476 12723 265 0.025 6.5
学习派 DAMO 32579 523 5081 458 0.028 5.7
混合 ILILT 30353 433 4666 510 0.441 5.9
本文 LithoGRPO (Pretrain) 32824 487 11595 377 0.104 6.6
本文 LithoGRPO (SFT) 29123 803 4270 1546 0.104 4.7
本文 LithoGRPO (RLFT) 28933 444 4276 889 0.104 4.3

LithoGRPO (RLFT) 在综合排名上取得 4.3,显著领先此前最强基线 MultiLevel 的 5.6;推理时间 0.1 s 仅次于 GAN-OPC/Neural-ILT 等更快但精度差很多的方法。±std(4 个随机种子)控制在 ±21–541 之间,结果稳定。

消融实验

配置 MetalSet Shot ↓ 关键观察
Pretrain only 487 flow 基线,L2/Shot 都一般
+ SFT(可微指标) 803 L2/PVB 大幅下降,但 Shot 飙升 65%
+ RLFT(四指标 GRPO) 444 Shot 比 SFT 阶段砍掉 45%,且 L2/PVB/EPE 不退步
RLFT + 白噪声 SDE 掩模碎裂,Shot 显著变差
RLFT + 颜色噪声 \(a=0.5\) 初始 reward 崩,但仍能收敛
RLFT + 颜色噪声 \(a=0.01\) 探索过慢
RLFT + 颜色噪声 \(a=0.1\)(默认) 444 最佳
推理 1 步 vs 2/5/10 步 444 / 460 / 483 / 491 1 步已和多步打平,速度优势保留

Fast Shot Count 单独评估:在 4 个数据集上分别取得 134.6× / 398.2× / 251.1× / 491.3× 加速,与传统实现相关 \(R^2 = 0.994\)

关键发现

  • 三阶段拆分是必要的:训练动力学图显示 L2/EPE 在 SFT 单调降但 Shot 单调升;如果一开始就把 Shot 塞进 reward,模型会被冲突梯度卡住。SFT 把可微指标推到饱和、RLFT 再"擦"Shot 的分工,是结果稳定的关键。
  • 颜色噪声是工程上的关键 trick:它解决了"RL 探索需要噪声"和"掩模需要连续区域"之间的物理冲突。如果直接用白噪声,整篇文章的 Shot 优势会全部消失。
  • GRPO 的组内归一化天然容忍 reward 的常数偏移,这一点被作者用来在数学上证明可以放心地用 fast shot 替代精确 shot——这是把 NP-hard 指标接入 RL 训练循环的整篇工作的支柱。
  • OOD 泛化最难:StdContact 是 ViaSet 的 OOD 测试集,RLFT 在 L2 上从 LevelSet 的 50770 降到 19102(–62%),是所有 baseline 里最大的提升。

亮点与洞察

  • "指标即 reward"的范式迁移:ILT 这种带显式、确定性物理 metric 的任务,比文本到图像任务更适合 GRPO——奖励无需训练 reward model,物理就是 ground truth。这种思路完全可以迁移到其他"前向可仿真、后向不可微"的科学计算任务(如电磁仿真反演、PDE 控制、电路布线)。
  • flow matching + RL 这条线 在 ILT 域是第一次:它绕开了扩散多步推理的速度瓶颈,又保留了 SDE 探索能力。一步采样 + GRPO 微调的组合在其他需要部署效率的生成任务上有借鉴价值。
  • 算法-训练共同设计的范例:fast shot count 不是"独立加速器",而是"为 RL 量身定做的近似器"——只保证排序不变,绝对值放任,反过来让 GRPO 接受这种近似。如果把它当独立模块去追 \(R^2\),可能会过度工程化反而失去速度优势。
  • 不给顶级 trade-off 打满分的诚实:作者在 limitations 里直接说"jointly optimizing conflicting metrics remains inherently challenging"——这点很真实,四指标之间的 Pareto 前沿不是被消除而是被推进。

局限与展望

  • 多阶段训练在计算成本上确实更贵:Pretrain + SFT + RLFT 三段加起来近 24 GPU·h,比纯学习派(DAMO 等)训练成本高一个量级,作者把它当作"质量换成本"的权衡。
  • 评估只在 LithoBench:工业级版图(更大尺寸、更复杂层、EUV 工艺)未验证;论文也明确说"远离 cutting-edge industrial processes"。
  • GRPO 超参(\(G=6\)\(a=0.1\)、ILP 求解器)依赖人工选择:换工艺节点很可能需要重调,缺少自适应机制。
  • Shot 与 L2/PVB 的本质 trade-off 没有被消除:表 1 中 SFT 的 L2 比 RLFT 略低,但 Shot 几乎翻倍——RLFT 是在 Pareto 前沿上选了一个更好的折中点,而非全面碾压。
  • 可能的改进:把 reward 权重从均匀改为依据制造工艺成本自适应、引入差异化时间步的 reward shaping(参考 TempFlow-GRPO)、在多电子束写片成本模型上直接训练 reward。

相关工作与启发

  • vs ILILT(混合优化-学习):ILILT 用端到端可微 pipeline 把优化展开成学习,但仍受限于可微目标且推理 0.44 s 较慢;LithoGRPO 单步 0.1 s 且能动 Shot/EPE,综合排名 4.3 vs 5.9。
  • vs 扩散派 ILT(DiffOPC / AdaOPC 系):扩散需多步去噪,无法直接挂 GRPO(每步 reward 计算太贵);rectified flow 的直线路径 + 一步推理刚好让 RL 微调在算力上可行。
  • vs RL-OPC:同样用 RL 但只在 OPC 的 edge displacement 空间上操作,几何先验受限;LithoGRPO 把整个像素级掩模空间交给 flow 学,再用 RL 修,自由度高一个维度。
  • vs FlowGRPO / DanceGRPO / TempFlow-GRPO:本文是首个把 flow + GRPO 搬到 ILT 这个"物理 reward 已知"的科学计算任务上的工作,验证了 GRPO-on-flow 这套范式跨域的可迁移性。
  • 启发:任何"前向可仿真、后向不可微、有明确数值 metric"的科学问题(光学/电磁/电路/材料反演)都可以套用这个三阶段 + 颜色噪声 SDE-GRPO 的 recipe,关键是设计一个"排序保真度高、计算极快"的 reward 近似器。

评分

  • 新颖性: ⭐⭐⭐⭐⭐ 首次把 flow matching 与 GRPO 引入 ILT,并把 NP-hard 的 shot count 用 ILP + 排序不变性证明接入 RL 训练循环
  • 实验充分度: ⭐⭐⭐⭐ 4 数据集 × 4 指标 + 推理时间 + 4 种子,对比 9 个基线;缺工业级版图与 EUV 节点
  • 写作质量: ⭐⭐⭐⭐ 训练动力学图与噪声类型可视化很有说服力,物理建模与算法部分平衡得当
  • 价值: ⭐⭐⭐⭐⭐ 半导体良率与成本直接受益,是 RL+生成模型落地科学计算的一个干净示范