Computational Photonics
Using Machine Learning techniques, we seek to accelerate the design of photonic circuits.
Why Photonics?
Electronics are the bread and butter of current day computing. However, as the size of transistors has recently stalled in the past few years, they look to have reached their peak. Photonics looks to make a splash in the upcoming years as an alternative to electronics in many different fields and applications such as communications, processing, and eventually, opening the door to quantum computing. There are many barriers that still need to be broken or reduced before widespread photonic adaption occurs. One of the larger ones is curent photonic simulation methods.
SiPANN
Current Simulation Methods
Current simulation methods of photonic circuits include FDTD, FEM, EME and others all based on the notoriously complex Maxwell's Equations. The one things nearly all these methods have in common is extreme computational power required to run even the smallest and simplest of devices. They require numerous cores along with days or weeks of running time to estimate even the simplest of devices. These restraints have slowed and nearly halted the design of photonic circuits in many cases, since iterative design can take up to months or years for more complicated devices.
Machine Learning
Enter Machine Learning. Artificial Intelligence and Machine Learning have been some of the most popular topics in the past few years and we see these algorithms as having a potential incredible impact in the field of photonics. Using techniques such as neural networks, support vector regressions, and even simply multivariate linear regressions, the attributes of photonic circuit building blocks such as waveguides, y-branches, and directional couplers can be learned quickly and precisely for many orders of magnitude speed increases as compared to traditional methods.
Directional Coupler
Our current focus is on the directional coupler, one of the most basic building blocks of a photonic circuit. Directional couplers leverage the fact that as light travels through a waveguide (the photonic equivalent of a wire), it distributes in a bell curve shape, where the "tails" of this bell curve actually live outside of the waveguide. This means as two waveguides come close together, some of the light may leak out into the other waveguide, effectively creating a power divider.
We've worked to extend a recent model [1] that estimates coupling based on the even and odd supermodes of coupled straight waveguides. We have named this extension SCEE (simulator of photonic coupling devices based on eigenmode estimation). [2] By using multivariate linear regressions, gaussian quadrature, and extending the model to include phase tracking, SCEE accurately produces both magnitude and phase outputs of directionals couplers with arbitrary waveguide and path geometry orders of magnitude faster than current methods. SCEE is also scale invariant.
We have made SCEE, and all of photonic simulators based on machine learning methods, available in the python package SIPANN. You can learn more here.
Sources
[1] Meisam Bahadori, Mahdi Nikdast, Sébastien Rumley, Liang Yuan Dai, Natalie Janosik, Thomas Van Vaerenbergh, Alexander Gazman, Qixiang Cheng, Robert Polster, and Keren Bergman, "Design Space Exploration of Microring Resonators in Silicon Photonic Interconnects: Impact of the Ring Curvature," J. Lightwave Technol. 36, 2767-2782 (2018)
[2] Easton Potokar, R Scott Collings, Alec M Hammond, and Ryan Camacho, "Rapid Simulation of Complete Scattering Parameters for Coupled Waveguides with Arbitrary Geometries", Preprint.
[3] https://edge-ai-vision.com/2015/11/using-convolutional-neural-networks-for-image-recognition/
Simphony
Creating Open Source PIC Simulation Tools
In the electronics industry, there are a number of useful software tools for the design and simulation of electric circuits. These tools exploit the relative ease of abstracting circuit components into simple representations and turn complex problems into simple ones that can be solved easily.
Photonics Integrated Circuits (PICs) are much harder to design and simulate with software because the abstractions used in electronics are not available with photonics. The problems become complex very quickly, with only a few available programs existing today that can solve them. Unfortunately, these programs are expensive, and they do not integrate well with other programs.
To fill the need for useful software, we have built our own open source toolbox and framework for designing and simulating PICs called Simphony: A Simulator for Photonic Circuits. It is a linear, optical scattering-parameter based, circuit simulator implemented in Python. It is easily extensible, allowing users to supply their own component models or use the included library of components. It is also capable of reading and simulating circuits created in KLayout with SiEPIC Tools, a toolbox created at the University of British Columbia.
EMEPy
Artificial Neural Network Enhanced Open-Source Eigenmode Expansion
There are many methods used for modeling photonic devices. One of these methods, eigenmode expansion, solves optical modes in the frequency domain and utilizes mode overlap theory and phase propagation to calculate scattering parameters for an optical structure.
EMEPy, to our knowledge, is the very first eigenmode expansion entirely implemented in python. In addition, EMEPy is the first EME package that utilizes neural networks to solve for optical field patterns for use in the EME process. This package uses Simphony, described above, to cascade S parameters between optical interfaces for a device and model photonic structures much faster than other EME and FDTD models.