PhoTOS: Topology Optimization of Photonic Components using a Shape Library
Abstract
Topology Optimization (TO) holds the promise of designing next-generation compact and efficient photonic components. However, ensuring the optimized designs comply with fabrication constraints imposed by semiconductor foundries remains a challenge. This work presents a TO framework that guarantees designs satisfy fabrication criteria, particularly minimum feature size and separation. Leveraging recent advancements in machine learning and feature map** methods, our approach constructs components by transforming shapes from a predefined library, simplifying constraint enforcement. Specifically, we introduce a Convo-implicit Variational Autoencoder to encode the discrete shape library into a differentiable space, enabling gradient-based optimization. The efficacy of our framework is demonstrated through the design of several common photonic components.
Keywords Topology Optimization Photonics Fabrication Constraints Machine Learning
1 Introduction
![Refer to caption](x1.png)
Topology optimization (TO) are a class of methods used to optimize material distribution within a design domain, achieving optimal performance under given constraints. These methods efficiently navigate complex design spaces that challenge conventional, intuition-based approaches. While traditionally applied in structural mechanics, TO has seen increasing adoption in photonics [1], where advances in integrated photonic device design are critical for progress in high-speed communication [2], quantum computing [3], and machine learning accelerators [4].
While various TO methods have been proposed, density-based approaches have been widely adopted [5]. Here, the design is parameterized by a set of pixels, and the optimal material is assigned to each pixel [6, 7]. This results in organic, free-form designs. Consider, for example, the design of a waveguide bend (fig. 2(a)), where light from the input port (right) is to be directed to the output port (bottom) with minimal back reflection and maximum transmission. fig. 2(b) illustrates a typical density-based design. While offering significant design freedom, the resulting designs can be difficult to interpret [8], manufacture, and constrain to fabrication criteria [9, 7, 10].
Conversely, alternative techniques have been proposed that represent the design using simpler geometric shapes such as bars [11], plates [12], and polygons [13]. These methods, collectively referred to as feature map** methods [14] parameterize shapes by high-level descriptors such as width, radius, and angle. Varying these parameters generates various dimensions of the shape that are projected onto the design domain. For instance fig. 2(c) showcases the waveguide bend composed of triangles. As evident, these techniques yield more interpretable designs that are easier to constrain. However, while simplifying the enforcement of manufacturing constraints, they significantly limit design freedom [8].
This work proposes an optimization framework that strikes a balance between density-based and feature-map** methods. Our approach offers increased design freedom [15] while retaining the interpretability and ease of constraint enforcement characteristic of feature-map** techniques. Specifically, we make the following contributions:
-
1.
We extend feature-map** methods, traditionally limited to a single shape, to accommodate multiple shapes (section 2.2).
-
2.
We introduce a Convo-implicit Variational Autoencoder (VAE) [16] to transform a discrete library of shapes into a continuous and differentiable form, enabling gradient based optimization (section 2.2.2).
-
3.
We present an optimization framework that produce fabricable, optimized photonic components by selecting and transforming shapes from the library (section 2.4).
-
4.
We apply our framework to design waveguide bends and mode converters, demonstrating its ability to reliably produce photonic components that meet both performance and fabrication criteria (section 3).
![Refer to caption](x2.png)
2 Proposed Method
2.1 Overview
In this study, we focus on the TO of photonic components. We begin by assuming that the performance criteria; typically the allowable insertion, reflection and cross-talk loss have been prescribed. Further, we assume that the fabrication criteria: minimum feature size (MFS) and minimum separation distance (MSD) (fig. 5) have also been specified. Finally, we assume that a library of () shapes has been prescribed (fig. 3). The objective then is to find through gradient based optimization, an optimal configuration (selection, translation, orientation, and scaling) (see fig. 4) of shape instances from the library onto the design space such that the optimized design meets the required performance and fabrication criteria.
2.2 Shape Library
![Refer to caption](x3.png)
We compose our library (fig. 3) of generic shapes frequently employed in photomask fabrication [17] and other common shapes. The shapes are chosen to meet an MFS (fig. 5(a)) of 40 nm [18]. Importantly, we observe that these shapes are not derived from a single parametric family; rather, the library includes a variety of discrete shapes without common defining parameters.
Recall that gradient-based optimization relies on the ability to continuously vary its optimization parameters. In other words, the optimizer must be able to continuously vary between the shapes in the library. Thus, to facilitate the optimal choice of shapes by the optimizer, we transform our discrete shape library into a continuous and differentiable representation. In particular, a continuous representation of the shape library entails two key components:
-
(a)
a continuous representation of each individual shape within the library (section 2.2.1).
-
(b)
a continuous representation of the collective library itself (section 2.2.2).
![Refer to caption](x4.png)
![Refer to caption](x5.png)
2.2.1 Shape Representation
![Refer to caption](x6.png)
To achieve continuous shape representation, we represent our shapes using signed distance fields (SDFs). SDFs () are continuous functions, with the value at any point defined as the shortest distance to the shape’s boundary (fig. 6). We compute the SDFs for the shapes in our library over the bounding box (). In addition to their continuous nature, the implicit definition of distances from the boundary, facilitates the computation of the MSD constraint (see fig. 5(b), section 2.4).
2.2.2 Library Representation
To achieve continuous library representation, we employ a VAE. VAEs are a particular construct of neural networks, that among other attributes, convert discrete data into a continuous and differentiable representation. This facilitates gradient-based optimization [19, 20, 21].
Specifically, the shape SDFs from the previous section serve as both the input and output data for the VAE. We propose a VAE architecture with the following key attributes:
-
(a)
A continuous and differentiable latent space that represents the shape library, facilitating gradient-based optimization.
-
(b)
An implicit representation of the output shape SDFs as a function of spatial coordinates. This enables the querying of SDF values at arbitrary locations and resolutions, a crucial requirement for our optimization formulation.
To achieve these attributes, we propose a convo-implicit VAE architecture. This architecture employs a convolutional encoder in conjunction with an implicit encoder [16, 22, 23] and decoder. The proposed Convo-Implicit VAE architecture (fig. 7) comprises the following components:
-
1.
Firstly, the shape SDFs of size are propagated through the convolutional encoder. Here, denotes the resolution of the SDF images in the training set. This results in an output latent space of size . In particular, we have .
-
2.
The coordinates of the SDFs () of size are propagated through an implicit encoder [22]. Here, is the total number of pixels in the training images. This results in an output of projected coordinates of size .
-
3.
The latent space and the projected coordinates are concatenated. This combined tensor of size is propagated through the decoder, producing the reconstructed feature SDFs of size .
![Refer to caption](x7.png)
![Refer to caption](x8.png)
We train the Convo-Implicit VAE to minimize the discrepancy between the reconstructed and input SDFs by reducing their mean squared error [24]. Additionally, the latent space (fig. 8) is constrained to resemble a standard normal distribution through a KL divergence loss term [19]. The Convo-Implicit VAE’s net loss can be expressed as:
(1) |
Where the parameter is the relative weight of the KL divergence loss term. Convergence was achieved after training for epochs with a learning rate of using the Adam optimizer.
After training, we discard the convolutional encoder. The retained implicit encoder and decoder can be queried with spatial and latent coordinates respectively to obtain the SDF . For instance querying at and , we obtain the SDF of the rounded triangle (fig. 8).
2.2.3 Approximating the SDF
The retained implicit encoder and decoder allow us to query shape SDFs at any spatial coordinate, including those outside the training bounding box (section 2.2). However, this presents two challenges:
-
1.
Querying the VAE for each shape instance over a large number of spatial coordinates can be computationally expensive.
-
2.
The VAE must extrapolate SDF values outside the training bounding box, leading to inaccurate results.
To address these challenges, we propose approximating the shape SDF outside its bounding box. Observe that at large distances, the SDF of any shape approaches the Euclidean distance from the origin (Figure 9). Therefore, we can approximate the SDF as:
(2) |
![Refer to caption](x9.png)
Importantly, note that since we retain the SDF values within the training bounding box, this approximation does not compromise the accuracy of our optimization.
2.2.4 Geometric Projection
![Refer to caption](x10.png)
The central idea of geometry projection is to map shapes, as described by their SDFs, onto density fields (fig. 10). This map** subsequently enables us to simulate the design. The density field, , is defined such that denotes the region outside the shape and denotes the region inside the shape. Given as the SDF at a point of shape , the corresponding density , is obtained as:
(3) |
Where is the sigmoid function with a projection sharpness of . Observe that this map** is differentiable, thus enabling gradient-based optimization. Once the density fields of all shape instances are computed, the overall design density is obtained by taking the union using a -norm formulation:
(4) |
Finally, the design domain is populated with Silicon where the density equals 1, and Silicon dioxide where the density equals 0. The permittivity at a point can then be expressed as:
(5) |
Where and are the permittivities of Silicon oxide and Silicon respectively.
2.3 Shape Transformation
Recall that our objective is to achieve an optimal configuration of shapes from the library within the design space (fig. 4). Further, recall that each shape is defined in its local (library) frame of reference (fig. 7). We achieve the configurations through affine transformations from the local to the global (design) frame of reference. In particular, we define a translation (), orientation (), and scaling () operation for each shape instances . With being coordinates in the design frame of reference (typically, center coordinates of a simulation mesh elements), we obtain the transformed coordinates as:
(6) |
where are the coordinate after translation:
(7) |
and is the orientation matrix:
(8) |
2.4 Optimization
Having established a differentiable representation of the shape library and the necessary methods for its transformation within the design domain, we now outline the key components of the design optimization framework.
Design Variables : The optimization process encompasses the selection (as determined by latent coordinate ), translation , orientation , and scaling of each shape instance . Collectively, this forms our design variables where .
Simulation : Upon computing the permittivities (eq. 5) at the center of mesh elements, we simulate the optical response of the component by employing a Frequency Domain Finite Difference (FDFD) solver. The electric field, , is determined by solving the linear system:
(9) |
,
where represents the system matrix at frequency and denotes the source(s). Specifically, we utilize Ceviche [25], an open-source FDFD electro-magnetic simulator. The resulting electric field is then used to compute the scattering spectra, which serves as the metric for evaluating the objective function.
Objective: We aim to achieve photonic devices that meet performance specifications, specifically, desired levels of insertion and reflection losses. Following the approach in [9], we express these specifications by defining cutoff values for the magnitudes of the scattering spectra at the monitored wavelengths at the input and output ports. With representing the scattering spectra obtained with design parameters , we can express our objective as:
(10) |
where denotes the softplus function, and represents the relative weights for each entry in the scattering spectra. For a detailed discussion, we refer the reader to [9].
Minimum Separation Distance Constraint : We impose a minimum spacing constraint to promote fabricability. Following [26] [27], we offset the feature instances by an amount equal to half of the MSD (i.e., ). Then, with representing the ReLU function and representing the number of elements on the mesh, we can express the minimum separation distance constraint as:
(11) |
Latent Space Constraint : Observe that while the optimizer continuously varies the latent coordinates during optimization, the shapes encoded from the library occupy discrete points in the latent space. In other words, the optimizer is allowed to explore shapes outside the library during optimization. However, at convergence, we expect to select shapes exclusively from the library. To enforce this, we impose a constraint on the distances between the latent coordinates of selected shape instances and those of the library shapes. With being the pairwise distances between the latent coordinates of shape instances and library shapes:
(12) |
We can express the constraint as:
(13) |
To facilitate gradient-based optimization, we use the LogSumExp approximations of the max and min functions.
Bound Constraints : Given that the latent space coordinates , we constrain . Further, the translation coordinates are constrained to lie within the bounding box of the design domain (fig. 4). The orientation parameter is constrained as . Furthermore, the scaling parameter is constrained to . The lower bound ensures the MFS constraint is met. For example, with a library MFS of nm, imposing an MFS of nm requires (see section 3.2). The upper bound , the ratio of the diagonal lengths of the design and shape bounding boxes, ensures the shape instance does not exceed the design domain.
Optimization : Collecting the objective (eq. 10), solver (eq. 9), and constraint (eqs. 11 and 13) the optimization problem can be expressed as:
(14a) | ||||
subject to | (14b) | |||
(14c) | ||||
(14d) | ||||
(14e) |
Where collectively represent the bound constraints on the design variables. The method of moving asymptotes (MMA) [28]; a gradient-based constrained optimizer is employed to perform the design updates. Finally, to update the design variables , we require the gradients of the objectives and constraints with respect to these variables. Leveraging the automatic differentiation (AD) capabilities of JAX [29], we automatically derive the sensitivities [30, 31]. In practice, this means we only define the forward expressions, and JAX’s autograd library computes all necessary derivatives with machine precision.
2.5 Algorithm
Having defined all components of the framework, we now summarize and present the complete algorithm.
As mentioned earlier, we assume a library of shapes has been provided. The procedure begins with training the VAE as detailed in section 2.2.2. The network is trained till sufficiently high representational accuracy is attained. The convolutional encoder is then discarded and the implicit encoder and decoder are retained (). The network now takes the latent space coordinates and spatial coordinates as input and returns the SDF of the shape at the pertinent latent and spatial coordinates.
The main optimization algorithm is summarized in algorithm 1. Initially, the design domain is discretized, and the coordinates of the element centers are computed (line 1). The design variables are then randomly initialized (line 2). We iterate the optimization process until convergence. During each iteration, the latent space coordinates and transformation parameters of the shape instances are obtained from the design variables (line 5). The transformed coordinates of the design space are computed using the transformation parameters (line 6). The SDFs of the shape instances are then computed using the latent space coordinates and the transformed coordinates (line 7). The SDFs are then projected to obtain the density fields (line 8). The design density field is then computed as a union of the density fields of the shape instances (line 9). We then determine the permittivity field from the density field (line 10). We utilize the permittivities to simulate the optical response of the design (line 11). The scattering spectra are computed using the optical response (line 12). Then the objective, minimum separation distance and latent space constraints are computed (line 13, line 14, line 15). The sensitivities are computed in an automated fashion (line 16) and the design variable is updated using MMA (line 17). The process continues until the MMA tolerances are met or the iterations exceed a maximum value (line 19).
3 Numerical Experiments
In this section, we present several experiments to demonstrate the proposed framework. Without loss of generality, the default parameters for the experiments are set as follows:
-
1.
The computational domain consists of a grid of elements, representing a design domain of .
-
2.
A MFS of 40 nm and a MSD of 60 nm is imposed on the design.
-
3.
The design is populated with 36 shape instances initialized on a grid. The latent coordinates are initialized randomly with a seed of 27.
-
4.
All components are optimized for their performance within two nm wavelength bands centered at nm and nm (O-band). Excitation source in their fundamental mode is considered.
-
5.
Designs with an insertion loss above -0.5 dB and a back reflection loss below -20 dB are desired.
-
6.
The input and output port waveguides have a width of nm.
-
7.
Optimization is performed using MMA with a move limit set to for a maximum of 150 iterations. All other default parameters correspond to the version of MMA presented in [28].
-
8.
All experiments are conducted on a MacBook M3 Pro, using the JAX library [29] in Python.
3.1 Convergence
In this section, we apply our TO framework to the design of waveguide bends and mode converters. fig. 11(i) depicts the convergence of a waveguide bend. Given an excitation from port 1 (bottom), our objective is to maximize transmission to port 2 (right) while minimizing back reflection. fig. 11(ii) illustrates the convergence of a mode converter design, where the goal is to achieve maximum conversion of the fundamental waveguide mode at port 1 (bottom) to the second-order mode at port 2 (top), with minimal back reflection.
Initially, both designs exhibit poor performance, characterized by low transmission to the output port and significant reflection at the input port. Further, the latent coordinates of the shapes do not align with those of our library shapes. However, subsequent updates substantially modify the design topology by optimizing the transformation parameters and latent coordinates.
By the iteration, the target performance specifications are met. Additionally, the separation and latent coordinate constraints are satisfied, with the latent coordinates of the shapes in the design completely overlap** those of our library shapes. In essence, we obtain designs that fulfill the performance requirements while adhering to the MFS and MSD constraints. fig. 11(d) confirms that the final designs consist of well-separated shapes from our library, satisfying the MSD constraint.
![Refer to caption](x11.png)
3.2 Feature Size Constraints
![Refer to caption](x12.png)
A key consideration during the design stage is investigating the impact of the feature sizes; MFS and MSD. While larger feature sizes may enhance fabricability and be necessary for certain fabrication processes, they also restrict the solution space. Recall that the MFS is enforced through a lower bound on the scaling range, and the MSD is imposed via eq. 11.
We explore various combinations of MFS/MSD in fig. 12 for the waveguide bend and mode converter. In all cases, our framework successfully satisfied the imposed size constraints and met performance requirements. However, it is important to note that if the required feature sizes are large, the optimizer may fail to achieve the desired performance due to a lack of feasible points in the solution space. In such scenarios, exploring optimization with larger component dimensions may be necessary.
3.3 Effect of Initialization
![Refer to caption](x13.png)
In this experiment, we investigate the influence of initial design on the optimization result. Given the non-convex, non-linear nature of our optimization problem, we anticipate that different initializations will lead to distinct local optima. We initialize the optimization with a grid of equi-spaced shapes, setting the scaling to the mean of the MFS and domain diagonal length. The latent coordinates are initialized randomly as .
For example, consider fig. 13. Here we optimize mode convertors with varying seeds for the latent coordinates. Observe that while we obtain diverse topologies, the performances are similar; as indicated by their scattering parameters. This suggests that, as expected, the loss landscape is highly non-convex with numerous local solutions. Additionally, it indicates the robustness of our TO framework, capable of discovering designs with the desired performance regardless of initialization.
4 Conclusion
In this work, we presented a topology optimization framework for the design of fabricable photonic components. Building upon feature map** methods, our approach extends their capabilities to encompass multiple generic shapes. Further, we incorporate fabrication constraints, namely minimum feature size and separation in our design. We leveraged a convo-implicit variational autoencoder (VAE) to transform the discrete shape library into a continuous and differentiable latent space, facilitating gradient-based optimization. The effectiveness of our framework was demonstrated through the successful design of waveguide bends and mode converters, highlighting its ability to generate high-performance photonic components that adhere to strict fabrication constraints.
We also identify several avenues for improvement. While the current convo-implicit VAE is trained solely on SDF images, incorporating the Eikonal equation into the training process could enhance accuracy [22]. Further, the number of shape instances was predetermined in this study. Future work will investigate the inclusion of this number as a design variable, offering greater flexibility. In addition, our library was limited to approximately 15 shapes for illustrative purposes. Expanding the library to include a wider variety of shapes would increase the design space and potentially yield even better results. Furthermore, our current implementation is focused on 2D designs. Extending the framework to 3D designs and validating the fabricated compoents’ performance is of significant interest. Finally, we aim to leverage the expanded design space offered by our approach to design more complex photonic components [10, 32, 33].
Acknowledgments
No external funding was used in supporting this work.
Compliance with ethical standards
The authors declare that they have no conflict of interest.
Replication of Results
The Python code is available at github.com/aadityacs/PhoTOS
References
- [1] Rasmus E Christiansen and Ole Sigmund. Inverse design in photonics by topology optimization: tutorial. JOSA B, 38(2):496–509, 2021.
- [2] David Marpaung, Jian** Yao, and José Capmany. Integrated microwave photonics. Nature photonics, 13(2):80–90, 2019.
- [3] Juan M Arrazola, Ville Bergholm, Kamil Brádler, Thomas R Bromley, Matt J Collins, Ish Dhand, Alberto Fumagalli, Thomas Gerrits, Andrey Goussev, Lukas G Helt, et al. Quantum circuits with many photons on a programmable nanophotonic chip. Nature, 591(7848):54–60, 2021.
- [4] Gordon Wetzstein, Aydogan Ozcan, Sylvain Gigan, Shanhui Fan, Dirk Englund, Marin Soljačić, Cornelia Denz, David AB Miller, and Demetri Psaltis. Inference in artificial intelligence with deep optics and photonics. Nature, 588(7836):39–47, 2020.
- [5] Ole Sigmund and Kurt Maute. Topology optimization approaches: A comparative review. Structural and multidisciplinary optimization, 48(6):1031–1055, 2013.
- [6] Ronald P Jenkins, Sawyer D Campbell, and Douglas H Werner. General-purpose algorithm for two-material minimum feature size enforcement of freeform nanophotonic devices. ACS Photonics, 10(4):845–853, 2022.
- [7] Mingkun Chen, Jiaqi Jiang, and Jonathan A Fan. Design space reparameterization enforces hard geometric constraints in inverse-designed nanophotonic devices. ACS Photonics, 7(11):3141–3151, 2020.
- [8] Julián A Norato. Topology optimization with supershapes. Structural and Multidisciplinary Optimization, 58(2):415–434, 2018.
- [9] Martin F Schubert, Alfred KC Cheung, Ian AD Williamson, Aleksandra Spyra, and David H Alexander. Inverse design of photonic devices with strict foundry fabrication constraints. ACS Photonics, 9(7):2327–2336, 2022.
- [10] Alexander Y Piggott, Jesse Lu, Konstantinos G Lagoudakis, Jan Petykiewicz, Thomas M Babinec, and Jelena Vučković. Inverse design and demonstration of a compact and broadband on-chip wavelength demultiplexer. Nature photonics, 9(6):374–377, 2015.
- [11] JA Norato, BK Bell, and Daniel A Tortorelli. A geometry projection method for continuum-based topology optimization with discrete elements. Computer Methods in Applied Mechanics and Engineering, 293:306–327, 2015.
- [12] Shanglong Zhang, Julián A Norato, Arun L Gain, and Naesung Lyu. A geometry projection method for the topology optimization of plate structures. Structural and Multidisciplinary Optimization, 54:1173–1190, 2016.
- [13] Aaditya Chandrasekhar. Polyto: Structural topology optimization using convex polygons. arXiv preprint arXiv:2305.04406, 2023.
- [14] Fabian Wein, Peter D Dunning, and Julián A Norato. A review on feature-map** methods for structural optimization. Structural and multidisciplinary optimization, 62:1597–1638, 2020.
- [15] Yohan Choi, Aki Fujimura, and Abhishek Shendre. Curvilinear masks: an overview. Photomask Technology 2021, 11855:157–172, 2021.
- [16] Jeong Joon Park, Peter Florence, Julian Straub, Richard Newcombe, and Steven Lovegrove. Deepsdf: Learning continuous signed distance functions for shape representation. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, pages 165–174, 2019.
- [17] Krishnaparvathy Puthankovilakam, Toralf Scharf, Hans Peter Herzig, Uwe Vogler, and Reinhard Voelkel. Unified rule based correction for corners in proximity lithography mask using high resolution features. Microelectronic Engineering, 172:35–44, 2017.
- [18] Mo Chen, Rasmus E Christiansen, Jonathan A Fan, Göktuğ Işiklar, Jiaqi Jiang, Steven G Johnson, Wenchao Ma, Owen D Miller, Ardavan Oskooi, Martin F Schubert, et al. Validation and characterization of algorithms and software for photonics inverse design. JOSA B, 41(2):A161–A176, 2024.
- [19] Diederik P Kingma, Max Welling, et al. An introduction to variational autoencoders. Foundations and Trends® in Machine Learning, 12(4):307–392, 2019.
- [20] Diederik P Kingma and Max Welling. Auto-encoding variational bayes. arXiv preprint arXiv:1312.6114, 2013.
- [21] Carl Doersch. Tutorial on variational autoencoders. arXiv preprint arXiv:1606.05908, 2016.
- [22] Vincent Sitzmann, Julien Martel, Alexander Bergman, David Lindell, and Gordon Wetzstein. Implicit neural representations with periodic activation functions. Advances in neural information processing systems, 33:7462–7473, 2020.
- [23] Matthew Tancik, Pratul Srinivasan, Ben Mildenhall, Sara Fridovich-Keil, Nithin Raghavan, Utkarsh Singhal, Ravi Ramamoorthi, Jonathan Barron, and Ren Ng. Fourier features let networks learn high frequency functions in low dimensional domains. Advances in Neural Information Processing Systems, 33:7537–7547, 2020.
- [24] Mahindra Rautela, J Senthilnath, Armin Huber, and S Gopalakrishnan. Towards deep generation of guided wave representations for composite materials. IEEE Transactions on Artificial Intelligence, 2022.
- [25] Tyler W Hughes, Ian AD Williamson, Momchil Minkov, and Shanhui Fan. Forward-mode differentiation of maxwell’s equations. ACS Photonics, 6(11):3010–3016, 2019.
- [26] Zhan Kang, Yaguang Wang, and Yiqiang Wang. Structural topology optimization with minimum distance control of multiphase embedded components by level set method. Computer Methods in Applied Mechanics and Engineering, 306:299–318, 2016.
- [27] Boyang Deng, Kyle Genova, Soroosh Yazdani, Sofien Bouaziz, Geoffrey Hinton, and Andrea Tagliasacchi. Cvxnet: Learnable convex decomposition. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, pages 31–44, 2020.
- [28] Krister Svanberg. Mma and gcmma-two methods for nonlinear optimization. vol, 1:1–15, 2007.
- [29] James Bradbury, Roy Frostig, Peter Hawkins, Matthew James Johnson, Chris Leary, Dougal Maclaurin, George Necula, Adam Paszke, Jake VanderPlas, Skye Wanderman-Milne, and Qiao Zhang. JAX: composable transformations of Python+NumPy programs, 2018.
- [30] Aaditya Chandrasekhar, Saketh Sridhara, and Krishnan Suresh. Auto: a framework for automatic differentiation in topology optimization. Structural and Multidisciplinary Optimization, 64(6):4355–4365, 2021.
- [31] Momchil Minkov, Ian AD Williamson, Lucio C Andreani, Dario Gerace, Beicheng Lou, Alex Y Song, Tyler W Hughes, and Shanhui Fan. Inverse design of photonic crystals through automatic differentiation. Acs Photonics, 7(7):1729–1741, 2020.
- [32] Weijie Chang, Xinshu Ren, Yingquan Ao, Longhui Lu, Mengfan Cheng, Lei Deng, Deming Liu, and Minming Zhang. Inverse design and demonstration of an ultracompact broadband dual-mode 3 db power splitter. Optics Express, 26(18):24135–24144, 2018.
- [33] Omer Yesilyurt, Zhaxylyk A Kudyshev, Alexandra Boltasseva, Vladimir M Shalaev, and Alexander V Kildishev. Efficient topology-optimized couplers for on-chip single-photon sources. ACS Photonics, 8(10):3061–3068, 2021.