EUV
EUV is an AI-driven computational lithography lab that corrects mask geometry so the simulated pattern printed on a wafer better matches the intended chip design.
Core trick
Runs an LLM proposing mask corrections through a numerical optics simulator, then tunes them with Bayesian optimization against held-out focus and dose conditions.
Description
EUV is an AI-driven computational lithography lab that corrects mask geometry so the simulated pattern printed on a wafer better matches the intended chip design. It combines a numerical optics simulator, AI-proposed corrections, and Bayesian optimization.
README excerpt
# Astra Lithography Lab [Open the replay lab](https://kiankyars.github.io/euv/) · [Controller comparison](docs/comparison.md) · [Research audit](docs/research-candidate-audit.md) A computational lithography laboratory that Astra can operate through measured experiments. Inspect the target, correction mask, aerial exposure, and printed contours; follow each hypothesis back to its simulation; test the final mask on focus/dose conditions withheld from optimization. The local application runs real experiments. The GitHub Pages build explores exported recordings without a backend or model credentials. Neither mode claims calibrated wafer predictions. ## 50-second saved-run demo - **0–10 s:** Open the replay lab → **Experiments** → **Line ends · Astra and Bayesian search**. - **10–25 s:** Keep **Candidate 02 / FINAL** selected. Show the corrected mask and printed contour; toggle **Compare before**, then **Show selected**. - **25–40 s:** Show Astra's hypothesis and requested optimizer action in **Lab notes**, then the **9/9** search and **16/16** withheld passes (baseline: **3/9**). - **40–50 s:** Click a condition, then **Inspect provenance**. Explain that these saved scalar simulations use a **4 nm mean-edge-error criterion with intact features**. ## Run locally Requires [uv](https://docs.astral.sh/uv/) and Node.js 22+. The reference numerical runtime is Apple Silicon on macOS 26; Python 3.12 is selected automatically by uv. Other runtimes must pass their own numerical gate