Parallel fault-tolerant programming of an arbitrary feedforward photonic
  network
  Reconfigurable photonic mesh networks of tunable beamsplitter nodes can
linearly transform $N$-dimensional vectors representing input modal amplitudes
of light for applications such as energy-efficient machine learning hardware,
quantum information processing, and mode demultiplexing. Such photonic meshes
are typically programmed and/or calibrated by tuning or characterizing each
beam splitter one-by-one, which can be time-consuming and can limit scaling to
larger meshes. Here we introduce a graph-topological approach that defines the
general class of feedforward networks commonly used in such applications and
identifies columns of non-interacting nodes that can be adjusted
simultaneously. By virtue of this approach, we can calculate the necessary
input vectors to program entire columns of nodes in parallel by simultaneously
nullifying the power in one output of each node via optoelectronic feedback
onto adjustable phase shifters or couplers. This parallel nullification
approach is fault-tolerant to fabrication errors, requiring no prior knowledge
or calibration of the node parameters, and can reduce the programming time by a
factor of order $N$ to being proportional to the optical depth (or number of
node columns in the device). As a demonstration, we simulate our programming
protocol on a feedforward optical neural network model trained to classify
handwritten digit images from the MNIST dataset with up to 98% validation
accuracy.
