By Pingchuan Ma, Zhengqi Gao, Meng Zhang, Haoyu Yang, Mark Ren, Rena Huang, Duane S. Boning, and Jiaqi Gu†.
This repo is the official implementation of "MAPS: Multi-Fidelity AI-Augmented Photonic Simulation and Inverse Design Infrastructure" (DATE 2025)
[2026/07/05] Released v0.0.4
- Integrate fdtdx(https://github.com/ymahlau/fdtdx) solver to enable GPU-accelerated 3D FDTD and (broadband) adjoint optimization. Currently depend on private internal fdtdx-adjoint library to support adjoint 3D FDTD inverse design
- Support reduced-degree-of-freedom FEM-based differentiable/adjoint HEAT solver to enable thermo-optical co-simulation and inverse design.
- Add various 2.5D/3D Si/SiN device inverse design examples
- Use Tidy3d for uniform/nonuniform Autogrid discretization/rasterization. fdtdx also supports rectilinear grid simulation.
- Major update to Grid system: (Native optical grid, Native heat grid, Export uniform grid)
- Major update to plot function that supports 3D view, multiple design region, grad plot.
- Support differentiable 3D extrusion with certain sidewall angle from 2D geometry.
- Support callback function in InvDes module.
- Levelset parametrization uses SubpixelSmoothedProjection instead of Heaviside
- Support 3D to 2.5D effective index simulation.
- Support various NCG optimizers.
- Support nonuniform rectilinear grid 2d FDFD with precondition support, native grid objective.
- Support polygon and edgebox for shape optimization
[2025/11/05] Released v0.0.3
- Integrate pydiso solver to enable reusing matrix symbolic factorization for speedup. For the same polarization (e.g., Ez), there is only one solver instance as all matrices have the same sparse structure to avoid memory explosion.
- Add EtchMMI device with rectangles in the design region.
- Add continuous geometry parameterization. Support rectangles (box) with gradient calculation.
- Support exp2 sharpness scheduler
- Add video generation based on steady-state field solution
- Add differentiable morphology operator in reparametrization
- Add gaussian-smoothed linear interpolation in levelset
- Add Tidy3d for fast high-resolution epsilon map building, add cynlinder geometry.
- Add LM optimizer
- Change mdm behavior as MUX+converter
- Support wdm_SiN, mdm_SiN
- [important] remove levelset knot normalization
[2025/10/19] Released v0.0.2
- MAPS-InvDes supported. Levelset-based photonic device inverse design
- MAPS-Data supported. Photonic simulation dataset generation, including forward fields, adjoint fields, S parameters, etc.
- MAPS-train supported. Framework for AI model training for optical simulation prediction.
Inverse design has emerged as a transformative approach for photonic device optimization, enabling the exploration of high-dimensional, non-intuitive design spaces to create ultra-compact devices and advance photonic integrated circuits (PICs) in computing and interconnects. However, practical challenges, such as suboptimal device performance, limited manufacturability, high sensitivity to variations, computational inefficiency, and lack of interpretability, have hindered its adoption in commercial hardware. Recent advancements in AI-assisted photonic simulation and design offer transformative potential, accelerating simulations and design generation by orders of magnitude over traditional numerical methods. Despite these breakthroughs, the lack of an open-source, standardized infrastructure and evaluation benchmark limits accessibility and cross-disciplinary collaboration. To address this, we introduce MAPS, a multi-fidelity AI-augmented photonic simulation and inverse design infrastructure designed to bridge this gap. MAPS features three synergistic components: (1) MAPS-Data: A dataset acquisition framework for generating multi-fidelity, richly labeled devices, providing high-quality data for AI-for-optics research. (2) MAPS-Train: A flexible AI-for-photonics training framework offering a hierarchical data loading pipeline, customizable model construction, support for data- and physics-driven losses, and comprehensive evaluations. (3) MAPS-InvDes: An advanced adjoint inverse design toolkit that abstracts complex physics but exposes flexible optimization steps, integrates pre-trained AI models, and incorporates fabrication variation models. This infrastructure MAPS provides a unified, open-source platform for developing, benchmarking, and advancing AI-assisted photonic design workflows, accelerating innovation in photonic hardware optimization and scientific machine learning.
In MAPS-Data, users can sample photonic device data using customized sampling strategy.
MAPS-Train supports AI model training using MAPS-Data as datasets for AI-assisted photonic device simulation and inverse design. It supports standardized input, flexible neural network model definition, and diverse datadriven/physics-driven loss function calculation.
MAPS-InvDes is a framework with full support of simulation and adjoint-based inverse design. Users can use the AI models trained from MAPS-Train to accelerate inverse design.
- configs/: Configuration files for various simulation aspects.
- fdfd/: Hierarchical YAML configuration files.
- core/: Contains the core codebase of MAPS.
- fdfd/: Differentiable FDFD solver.
- invdes/: MAPS-InvDes framework: optimization plan, device definition, and examples.
- train/: MAPS-Train framework: datasets, examples, model definition, builder, etc.
- data/: MAPS-Data framework: generate device simulation datasets.
- scripts/: Experiment launching scripts.
- thirdparty/: Thirdparty libraries.
- ceviche/: Thirdparty ceviche for FDFD inverse design.
- unitest/: Example scripts demonstrating module usage.
- Python 3.11 or higher
- Required Python packages (listed in requirements.txt)
- pyutils[https://github.com/JeremieMelo/pyutility]
git clone https://github.com/ScopeX-ASU/MAPS
- run examples of inverse design, e.g., waveguide bending
python core/invdes/examples/bending.py
or
python scripts/device/train.py
For 3D:
unset LD_LIBRARY_PATH;
export CUDA_VISIBLE_DEVICES=0 python core/invdes/examples/bending_3d.py
If broadband 3D FDTD adjoint solve is needed (experimental)
unset LD_LIBRARY_PATH;
export CUDA_VISIBLE_DEVICES=0 MAPS_ENABLE_BROADBAND_ADJOINT=1 python core/invdes/examples/bending_3d.py
- generate photonic device simulation datasets, e.g., generate 8 bending devices with perturbation applied
python data/fdfd/dataset_generation_launcher.py \
--device-name bending \
--num-devices 8 \
--num-gpus 4 \
--include-perturb
- train AI model on device dataset for forward Maxwell Equation prediction task, e.g., Fourier neural operator on bending forward Ez field prediction.
python scripts/nn/fno/train_fwd_model.py
@inproceedings{ma2025maps,
title={{MAPS: Multi-Fidelity AI-Augmented Photonic Simulation and Inverse Design Infrastructure}},
author={Pingchuan Ma and Zhengqi Gao and Meng Zhang and Haoyu Yang and Mark Ren and Rena Huang and Duane S. Boning and Jiaqi Gu},
year={2025},
booktitle={Design, Automation and Test in Europe Conference (DATE)},
url={https://arxiv.org/abs/2503.01046},
}
Pingchuan Ma, Zhengqi Gao, Meng Zhang, Haoyu Yang, Mark Ren, Rena Huang, Duane S. Boning and Jiaqi Gu, "MAPS: Multi-Fidelity AI-Augmented Photonic Simulation and Inverse Design Infrastructure," Design, Automation and Test in Europe Conference (DATE), Lyon, France, Mar. 31 - Apr. 02, 2025.




