Proofreading mechanism for colloidal self-assembly
Extracted source text · arXiv 2312.08619
\documentclass[letterpaper,floatfix,reprint,aps,pre,superscriptaddress]{revtex4-2}
%\documentclass[letterpaper,floatfix,preprint,superscriptaddress]{revtex4-2}
\usepackage{graphicx}% Include figure files
%\usepackage{dcolumn}% Align table columns on decimal point
%\usepackage{bm}% bold math
\usepackage{gensymb}
\usepackage{tabularx}
\usepackage{color}
\usepackage{amsmath}
\usepackage{hyperref}% add hypertext capabilities
%\usepackage[mathlines]{lineno}% Enable numbering of text and display math
%\linenumbers\relax % Commence numbering lines
\newcounter{MD}
\newcommand*\MD%
{%
\ifnum\theMD>0%
{MD}\fi%
\ifnum\theMD=0%
{Molecular Dynamics (MD) \setcounter{MD}{1}}\fi%
}
\newcounter{SI}
\newcommand*\SI%
{%
\ifnum\theSI>0%
{SI}\fi%
\ifnum\theSI=0%
{Supplementary Information (SI) \cite{supp} \setcounter{SI}{1}}\fi%
}
\begin{document}
\preprint{APS/123-QED}
% \title{Designing self-limited assembly with programmable patchy particles}
\title{Proofreading mechanism for colloidal self-assembly}
\author{Qian-Ze \surname{Zhu}}
\affiliation{School of Engineering and Applied Sciences, Harvard University, Cambridge MA 02139, USA}
\author{Chrisy Xiyu \surname{Du}}
\affiliation{School of Engineering and Applied Sciences, Harvard University, Cambridge MA 02139, USA}
\affiliation{Mechanical Engineering, University of Hawai`i at Mānoa, Honolulu HI 96822, USA}
\author{Ella M. \surname{King}}
\affiliation{Department of Physics, Harvard University, Cambridge MA 02138, USA}
\author{Michael P. \surname{Brenner}}
\affiliation{School of Engineering and Applied Sciences, Harvard University, Cambridge MA 02139, USA}
\affiliation{Department of Physics, Harvard University, Cambridge MA 02138, USA}
\date{\today}
\begin{abstract}
Designing components that can robustly self-assemble into structures with biological complexity is a grand challenge for material science. Proofreading and error correction is required to improve assembly yield beyond equilibrium limits, using energy to avoid kinetic traps in the energy landscape. Here we introduce an explicit two staged proofreading scheme for patchy particle colloidal assemblies that substantially improves assembly yield and robustness. The first stage implements local rules whereby particles increase their binding strengths when they detect a local environment corresponding to a desired target. The second stage corrects remaining errors, adding a reverse pathway inspired by kinetic proofreading. The scheme shows significant yield improvements, eliminating kinetic traps, giving a much broader temperature range with high yield. Additionally, the scheme is robust against quenched disorder in the components. Our findings illuminate a pathway for advancing programmable design of synthetic living materials, potentially fostering the synthesis of novel biological materials and functional behaviors.
\end{abstract}
\maketitle
Living matter exhibits far more complicated structures and dynamics than those we create synthetically. For example, enzymes exquisitely regulate metabolic pathways \cite{newsholme1973regulation}; microtubules and virus shells can self-assemble and disassemble on cue \cite{knossow2020mechanism, vanburen2005mechanochemical, bruinsma2021physics, buzon2021virus}; in DNA proofreading, polymerase massively reduces binding errors beyond equilibrium yield \cite{reha2010dna}. Inspired by living matter, a longstanding goal is to create synthetic materials that exhibit this level of biological complexity. An essential component of a strategy is using programmable building blocks, with examples ranging from DNA nanotechnology\cite{iinuma2014polyhedra,ke2009multilayer,rothemund2006folding}, to biological assemblies like clathrin, where triskelia are programmed to interact for emergent behaviors \cite{morris2019cryo}. In all of these cases, building blocks are programmed to achieved properties that far exceed the functionality of a random set.
% Here we present a minimal programmable model that qualitatively maps out the potential design space to both provide guidance on the design of life-like material and help understand the origin of life.
%
Yet, on its own, programmability has limits \cite{zeravcic2014size,murugan2015undesired,huntley2016information}. Even with programmable components, there are strict limits to complexity and size of the emergent structure. Programmable models in DNA origami create complicated structures yet with uncontrollable errors \cite{rothemund2006folding}. %Colloidal systems can be programmed to assemble into specific structures\cite{perry2016segregation,meng2010free} or exhibit particular pattern of crystallization \cite{gasser2001real}, where the tuning knobs are the species of the particles and the isotropic interactions.
To create more robust assembly pathways, we hypothesized that it is necessary to proofread errors during assembly pathways. To explore this, we aimed to construct the simplest system where proofreading could be implemented. Given that enzymatic activity requires bond directionality, isotropic colloids \cite{meng2010free,zeravcic2017colloquium} seem insufficient, so we used a set of identical patchy particles (see Fig.~\ref{fig:1}(a)) in two spatial dimensions, powerful enough to capture the complex properties yet simple enough to design \cite{pawar2010fabrication}. Each patch can be programmed to interact with other patches, by modifying its interaction strength and range.
% This system gives a vast design space for tuning interactions.
Our model for proofreading is inspired by the dynamic growth of microtubule \cite{knossow2020mechanism, vanburen2005mechanochemical} and allosteric interactions in protein binding \cite{nussinov2014principles, ni2019allosteric}, where bonds can be enzymatically catalyzed to strengthen or weaken when their local environment assembles correctly. To capture this, we ascribe to each particle the concept of a {\sl state}, which dictates how the patches on a particle interact with other particles. Each particle has an identical initial state; yet as assembly proceeds, particles are able to measure their local neighborhood and correspondingly change their state. A particle with changed state has patches with different interaction strengths, ranges and (potentially) locations. Our key question is whether it is possible to program state changes to achieve the assembly of particular structures. Note that state change implies energy consumption: the energy an individual particle contributes to the configuration energy changes when it changes state. State change is a programmed allosteric response, a synthetic analogue of allostery \cite{changeux2012allostery}.
The design space for programmable patchy particles with state change is enormous: for a given structure, we aim to find a series of transitions of patches that optimize assembly yield. To find the optimal parameters, we leverage automatic differentiation methods\cite{baydin2018automatic}, which made it possible for modern machine learning to search models with billions of parameters. This allows us to navigate the parameter space of a complex model with gradient descent. Previous research has demonstrated that this method can efficiently find patch locations and strengths for designing structures with patchy particles, as well as discover new physics \cite{jaxmd_patchy}.
Specifically, inspired by microtubule growth, we aim to develop rules to robustly grow a two-dimensional ladder-like structure.
The individual patchy particle consists of a central particle that interacts via a soft sphere potential and three patches that interact via a Morse potential, see the illustration and interaction matrix in Fig.~\ref{fig:1}(a).
%
All subsequent studies were conducted using molecular dynamics simulation under constant temperature and volume condition, and with periodic boundary condition (see \SI for more simulation details).
%
We begin the assembly with a seed consisting of two rigidly connected particles, with valid contacts only in one direction (Fig.~\ref{fig:1}(b)).
%HOW ARE YOU MEASURING YIELD? WHAT IS THE LENGTH OF THE LADDER?
Fig. ~\ref{fig:1}(c) shows the yield curve for assembly of this structure, quantified in a system with 10 particles.
The yield is defined as the ratio of the number of instances of error-free assemblies with size 10 to the total number of instances (for a detailed definition see \SI).
In the low temperature regime (left), the structures are kinetically trapped in local minima of free energy, while in the high temperature regime (right), dissociated monomers are entropically favored over stable bonds.
The maximum yield is around 90 percent, a high number, but perfect assembly does not occur even in this extremely simple structure. Our goal is to develop a proofreading scheme to improve suboptimal yields.
%
% \begin{table}[h]
% \begin{tabular}{|c | c | c | c | c|}
% \hline
% & central & red & blue & green \\
% \hline
% central & soft sphere & & & \\
% \hline
% red & & & Morse($\epsilon_1$) & \\
% \hline
% blue & & Morse($\epsilon_1$) & & \\
% \hline
% green & & & & Morse($\epsilon_2$)\\
% \hline
% \end{tabular}
% \caption{Interaction matrix}
% \label{tab:1}
% \end{table}
%
% \section{Two-stage proofreading scheme}
%
%Specifically, we consider a 2D patchy particle system, where individual component consisting of a central particle that interacts via soft sphere potential and three patches that interact via morse potential.
%
%The interaction matrix is shown in Table~\ref{tab:1}, where the blank space indicates no interaction.
%
\begin{figure}
\centering
\includegraphics[width = 1.0\linewidth]{Figs/fig1.pdf}
\caption{\textbf{System and two-stage proofreading mechanism} (a) Left: Individual patchy particle consisting of a central sphere (1: purple) and three distinct patches (2: blue; 3: red; 4: green). Right: Interaction matrix illustrating inter-component interactions. Grey squares represent soft sphere or Morse potential as specified. Blank squares denote no interactions. (b) Schematic illustration of the seed particle. (c) Yield curve for a conventional mono-species system. x axis is the temperature $k_BT$ rescaled by the interaction potential energy $\epsilon$. Inset: exemplary final configurations of 40000-step forward simulations in (left) kinetic regime, (middle) optimal regime
% kT/e = 0.02,
(right) entropically-favored monomer regime.
% , kT/e = 0.25
(d) Illustration of the state change mechanism. Yellow represents weaker interactions, and purple represents stronger interactions. Only correct bonds (highlighted by the red box) are reinforced. (e) Illustration of the full proofreading mechanism via the engineer of free energy landscape. Insets display (left) a local defect; (middle) configuration at the energy barrier; (right) part of a correctly assembled structure.}
\label{fig:1}
\end{figure}
We design the proofreading scheme as follows: errors in assembly occur because of local minima, whereby particles form a ring with a smaller number of contacts than the dense ladder (see the left inset of Fig.~\ref{fig:1}(e)). To inhibit this, we need a rule where a particle only strengthens its bonds when its {\sl local environment} meets desired criteria. This process is depicted in Fig.~\ref{fig:1}(d): the initial state of the particle (yellow, species 1) has weak interactions $E_1$. When the right bonds are made in its local environment (red box in Fig.~\ref{fig:1}(d)), it changes state (purple, species 2) strengthening the interactions to $E_2$. This is the first stage of the proofreading process. Errors still occur after the first stage because of mismatches with different local environments. We therefore introduce a second stage, inspired by kinetic proofreading \cite{hopfield1974kinetic}, whereby we add a reverse pathway to decrease the bond strength of randomly chosen particles. This modulates the free energy landscape to favor the transition from local minima to the target structure (Fig.~\ref{fig:1}(e)).
%In the first stage, all the particles belong to the weakly interacting species (species 1, yellow one). The interaction strength is comparable to the thermal energy of the system, so the bonds could break from thermal fluctuations and explore more configuration space, providing the opportunity for error correction.
%
%
%Therefore, in this way by carefully designing the update rule for state change, we can reinforce the correct bonds while allowing the incorrect bonds to perform self-correction.
%
We demonstrate in what follows that when the rules are properly chosen, this two-stage proofreading mechanism substantially increases the yield of the desired structures over a much broader temperature range.
\begin{figure}
\centering
\includegraphics[width = 1.0\linewidth]{Figs/fig2.pdf}
\caption{\textbf{State change} (a) Schematic illustration of GNN as the update rule for state change. (b) The loss trajectory during GNN training.
% Each optimization step involves automatic differentiation through a 256-ensemble average over 40000-step forward simulation.
Inset: 100000-step forward simulation using the indicated parameters at optimization step 0 (red), 50 (yellow), and 400 (green). (c) Yield curves for (green) conventional mono-species and (red) state change systems. $x$-axis is temperature rescaled by the dominant interaction energy scale. Note for the state change system, the interaction energy scale refers to the strong bond strength $E_2$.}
\label{fig:2}
\end{figure}
\textit{State change.} -- In this first stage of our proofreading scheme, we program a local update rule for each particle that senses its surrounding environment, and determines whether it matches the desired target. If so, the particle changes state, strengthening its bonds with its neighbors.
%
The key question is to figure out how to program the rule for changing state: if the rule is either too permissive or too stringent in defining the desired local environment, assembly yield is degraded (See \SI). The space of possible local rules is large: to search it systematically, we parameterize the
sensing and decision making process with a graph neural network (GNN), which allows us to easily encode the geometry of the local environment
\cite{battaglia2018relational}.
%
Given the local environment of the particle within a prespecified cut off range, the network predicts the probability that the particle changes state.
We learn the parameters of the GNN to improve the yield of our target structure, using automatic differentiation to back-propagate the gradient of a loss returned from a batch of forward molecular dynamics simulations.
Specifically, we construct the GNN (Fig.~\ref{fig:2}(a)) as follows \cite{bapst2020unveiling}:
First, we encode the local environment of a particle into the node and edge embedding of the graph. The node encodes the states of neighboring particles, whereas the edge includes pairwise distances between particle centers and patches. We choose a cutoff range of three times the radius, covering nearest neighbors and next nearest neighbors in the target structure.
% ii). Apply edge update function, which is a multi-layer perceptron (MLP), whose input is the concatenation of edge embedding, the incoming and outgoing nodes of this edge; and the output being the new edge embedding. iii). Apply node update function, which is also a MLP, whose input is the concatenation of the node embedding, and the summation of all the connected edge embeddings; and the output being the new node embedding. iv).
The GNN then aggregates the local information from the neighbors of each particle and updates its edge and node embeddings successively using multi-layer perceptrons (MLP). Ultimately this information is decoded to give the probability of state change of each particle. The MLPs have 79 parameters in total, which we denoted by
$\hat{\theta}$.
%
To optimize these 79 parameters simultaneously in the context of a molecular dynamics simulation of assembly, we use JAX-MD, an end-to-end differentiable and GPU-accelerated MD engine \cite{jaxmd_git}. To train the model, we measure the performance of the update rule with a loss function indicating how far the final structure maps to the desired one:
$\mathcal{L} = \mathcal{L}(s_1, s_2, \cdots, s_N; \hat{\theta})$, where $s_i$ represents the state of particle $i$, which includes position, orientation, species and other information.
%
The loss function has two terms (see \SI), one penalizing deviations from our desired target (the compact ladder structure), with the other encouraging elongation of the structure .
Since state change is an intrinsically discrete process, to ensure differentiability, we adapt the REINFORCE algorithm (a.k.a. score function) \cite{williams1992simple}, making it possible to take gradients through the simulation.
%
The probability that particle $i$ goes through state change is a function of its current state and the GNN parameters $\rho(s_i(t); \hat{\theta})$.
%
Therefore the objective of the optimization, an ensemble average of the loss function at the final simulation step $t$, can be written as,
\begin{equation}
\begin{aligned}
\langle \mathcal{L}\rangle = \int_{\substack{\text{configuration} \\ \text{space}}}
&\mathbf{\mathcal{D}s}(t) \mathcal{L}(s_1(t),\cdots,s_N(t); \hat{\theta}) \\
&\cdot P[s_1(t),\cdots,s_N(t); \hat{\theta}]
\end{aligned}
\end{equation}
where $P[s_1(t),\cdots,s_N(t); \hat{\theta}]$ is the joint probability of the final configuration of the whole system $[s_1(t),\cdots,s_N(t)]$ with the current parameters $\hat{\theta}$,
\begin{equation}
P[s_1(t),\cdots,s_N(t); \hat{\theta}] = \prod_{\tau = 0}^t \prod_{i = 1}^{N}\rho(s_i(\tau); \hat{\theta})
\end{equation}
Using the REINFORCE algorithm, we can take gradients of the loss function with respect to the parameter $\hat{\theta}$,
\begin{equation}
\begin{aligned}
\nabla_{\hat{\theta}}\langle \mathcal{L}\rangle & = \int \mathbf{\mathcal{D}s}(t) \nabla_{\hat{\theta}}( \mathcal{L}(\mathbf{s}(t); \hat{\theta}) P[\mathbf{s}(t), \hat{\theta}])\\
& = \int \mathbf{\mathcal{D}s}(t) P(\nabla_{\hat{\theta}}\log P)\mathcal{L} + \int \mathbf{\mathcal{D}s}(t) P\nabla_{\hat{\theta}}\mathcal{L} \\
& = \langle (\nabla_{\hat{\theta}}\log P)\mathcal{L} \rangle + \langle \nabla_{\hat{\theta}}\mathcal{L} \rangle
\end{aligned}
\end{equation}
where the first term is the REINFORCE gradient, and the second term is the conventional gradient.
To optimize the state change parameters, we consider a system consisting of 21 particles at temperature $k_BT = 1.0$, with weak interaction $E_1 = 4.0$, strong interaction $E_2 = 50.0$.
Following the optimization procedure described in \cite{jaxmd_patchy}, we use Adam optimizer to run 400 optimization steps with a concatenated learning rate scheme of $(0.005, 0.001)$.
Each optimization step is performed by running 512 replicates of 41000-step forward simulation and back-propagating the loss over the last 1000 steps of the simulation.
This makes it possible to store the trajectories in memory on an A100 with 80GB of RAM.
We include a python notebook demonstrating the basic construction of the mechanism and optimization of the GNN update rule
\cite{notebook_git}.
We find that it is difficult for the learning rule to converge when we initialize the GNN with random initial parameters. Instead we pretrain the model by initializing it with logical rules for the desired local structure (see \SI), which allows optimization to rapidly converge to a set of optimal parameters, as shown in Fig.~\ref{fig:2}(b).
%
The insets show the final configurations of 100000-step forward simulations using the GNN parameters at different optimization stages.
%
Curiously, the training dynamics exhibits an initial plateau in the loss trajectory before converging to a lower state.
This indicates that the system is initially trapped in a local minimum of the optimization, where it tries to minimize the deviation from ideal ladder structure as much as possible.
This consequently inhibits the growth, as indicated in the yellow inset of Fig.~\ref{fig:2}(b).
It then makes a few attempts to jump out of the local minimum, marked by the intermittent spikes.
Ultimately, the system successfully learns the optimal growth rule balancing mitigating errors with growth.
% Consistent with the locality of the update rule, when we train the update rule in a small system of $N = 20$ particles, the rule also works with a larger system of $N = 100$ particles (see SI).
Fig.\ref{fig:2}(c) shows the yield curve for the state change scheme compared with the mono-species assembly. For a fair comparison with Fig.~\ref{fig:1}(c), we rescale the temperature with respect to the strong interaction energy $E_2$ after state change.
%The definition of yield here is the same as the one used in Fig.~\ref{fig:1}(c).
% Here in calculating the yield, we fix the number of particles in the system to be 10, and only when all of them are assembled into the desired structure will it be counted as a correct case, more detailed definition of the yield see SI.
The state change scheme greatly improves the yield, especially in the regime where structures are typically kinetically trapped in local minima.
\begin{figure}
\centering
\includegraphics[width = 1.0\linewidth]{Figs/fig3.pdf}
\caption{\textbf{Full proofreading mechanism} (a) Schematic illustration of the full proofreading mechanism, including both the state change and the reverse pathway. Lower panel: interaction matrix between the three particle species. (b) Step-by-step illustration of the proofreading mechanism. (c) Snapshots of the proofreading dynamics in an increasing-time order. (d) Yield curve for (green) conventional mono-species and (blue) full proofreading mechanism. $x$-axis is temperature rescaled by the dominant interaction energy scale. Note for proofreading mechanism, the interaction energy scale refers to the medium bond strength $E_3$.}
\label{fig:3}
\end{figure}
% \section{Reverse Pathway}
\textit{Reverse pathway.} -- Yet, the state change scheme still leaves errors, where the local environments around different particles are not registered with each other. When state change occurs, the bonds essentially become irreversible, so any errors are frozen in (for illustration see \SI). We find that there are mainly two kinds of errors that the state change rule produces: Either free floating particles accidentally undergo state change, or incorrectly bonded particles undergo state change resulting in dislocation in the structure (Fig.~\ref{fig:3}(b) left panel).
The second stage of our proofreading scheme aims to fix these issues by adding a reverse pathway to weaken bonds. Inspired by kinetic proofreading \cite{hopfield1974kinetic}, we randomly choose particles to transition to an intermediate species 3 with moderate bond strength $E_3 = 15.0$.
The transition dynamics and interaction matrix between these three species is shown in Fig.~\ref{fig:3}(a).
We choose the probability of a species 2 (purple) particle to transition into species 3 (orange) particle to be $k_2 = 2\times 10^{-5}$, and the probability of a species 3 (orange) particle to transition into species 1 (yellow) particle is $k_3 = 2\times 10^{-4}$.
This reverse process is identical for all particles in the structure, and does not depend on whether the bonding environment is correct.
We reason that if a particle's bonding environment is correct, it will quickly reform its original structure through the state change mechanism (the right loop of Fig.~\ref{fig:3}(b)).
If the bonding environment is in a local minimum, it has a chance to correct itself, breaking an incorrect bond, and ultimately stabilize in the correct structure through the state change mechanism, as shown in Fig.~\ref{fig:3}(b).
%
Snapshots in Fig.~\ref{fig:3}(c) and the accompanying supplementary videos clearly show the error correcting process.
%
The reverse pathway effectively modulates the free energy landscape,
elevating the activation barrier for escaping local minima to a level that is comparable to the thermal energy ($\Delta E_{LM} \lesssim k_B T$).
% so the activation barrier for jumping out of the local minima is comparable to the thermal energy ,
While the energy depth of the ground state remains significantly greater than the thermal energy ($\Delta E_{GS} \gg k_B T$), as illustrated in Fig.~\ref{fig:1}(c).
This results in a net transition from the wrong bonds to the right bonds, thereby substantially improving the yield.
%
%The introduction of the reverse pathway can fix both types of errors enumerated above: a free floating species 2 particle can transition back to species 1 particle through the intermediate species 3, given the probability of wrongly going through state change a second time is small, thus fixing the error (supplementary videos).
%
\begin{figure}
\centering
\includegraphics[width = 1.0\linewidth]{Figs/fig4.pdf}
\caption{\textbf{Quenched disorder} (a) Examples of individual particles with quenched disorder. (b) A correctly assembled structure with quenched disorder. (c) Yield curve for (green) conventional mono-species, (red) state change mechanism and (blue) full proofreading mechanism. $x$-axis is temperature rescaled by the dominant interaction energy scales.}
\label{fig:4}
\end{figure}
% Fig.\ref{fig:3}(b) shows the proofreading scheme step-by-step. Species 1 particles bind with some probability to the state-changed species 2 particles (Fig.~\ref{fig:3}(b) lower panels). Due to the small differences in the local environment, the state change update rule then gives a substantial probability to the particle to go through the state change, even in the incorrect binding case (Fig.~\ref{fig:3}(b) middle panels).
% If there is no reverse pathway between species 1 and 2, the incorrect structures would remain forever. However, by randomly choose species 2 particle to decrease bond strength to become species 3 particle with a probability $k_2$, the wrong bonds are more likely to break due to the accumulated strain and transition into the correct bonds, while the correct bonds are much more stable and stay in the right loop in Fig.~\ref{fig:3}(b). This results in a net transition from the wrong bonds to the right bonds, thus greatly improving the yield.
Fig.\ref{fig:3}(d) shows the result for yield as a function of rescaled temperature for the full two-stage proofreading scheme compared with the conventional mono-species assembly.
For a fair comparison, we again rescale the temperature with respect to the dominant energy scale, which is the intermediate interaction $E_3$ for proofreading.
The proofreading scheme not only greatly improves the yield, but also largely broadens the optimal temperature range where the yield is relatively high, both in the kinetic and thermal regimes.
% Note for fair comparison here the x-axis again is rescaled the temperature with respect to the dominating energy scale in the system .
\textit{Quenched disorder} -- In addition to thermal noises, there may also be intrinsic disorder in the geometry of the patches, whereby the patches do not form at exactly the optimal configuration. Is our proofreading scheme robust to such errors? To model this quenched disorder, we perturb the location of the patches in individual components away from their optimal ($90^\circ$ angle) geometry. For every patch ($\alpha = 1,2,3$) on every particle ($i=1,\cdots, N$) we move the angle by $\varepsilon_{i\alpha}$ from its regular location, where $\left\{\varepsilon_{i\alpha}\right\}$ are drawn from a uniform distribution bounded by the magnitude of the quenched disorder.
Note that in this scheme every particle in the simulation is manufactured slightly differently.
%
Here the magnitude of disorder is set to be 0.2 (radian). Fig.~\ref{fig:4}(a) illustrates two examples of such disordered particles. Fig.~\ref{fig:4}(b) shows a correctly assembled structure using these disordered particles.
% Fig.~\ref{fig:4}(a) chooses the disorder parameter as 0.2, though we sweep this over a larger range (\SI), with similar results.
%
However, the disorder makes it substantially less likely to form error-free structures because defects will accumulate in the assembly process.
We use the identical proofreading scheme described above, without retraining the parameters and again calculate the yield curves for each of the three cases (conventional mono-species, state change, full two-stage proofreading) with the disordered components.
To fairly compare the yield with intrinsic disorder in the system, we loosen the threshold in yield definition (see \SI). Fig.\ref{fig:4}(c) shows the yield for the conventional mono-species assembly (green curve) decreases substantially with quenched disorder. Both the state change (red curve) and the full proofreading (blue curve) recover high yields, demonstrating the robustness of the proofreading mechanism.
\textit{Discussion.} --
% summarize
Here we have demonstrated that it is possible to program proofreading mechanisms to substantially improve yield during self assembly. Although we have studied a particular example of colloidal assembly, the principles uncovered here could have much broader applicability.
The basic idea of the proofreading scheme is conceptually simple: every component is able to validate its local environment, and when the environment is correct, it undergoes a state change to increase bond strengths. Such allosteric changes occur in biology, catalyzed by hydrolysis of an energy containing molecule like GTP orATP. The state change mechanism requires substantial tuning to work most effectively: we accomplished this by parameterizing the decision rule with a neural network and then directly optimizing it through a molecular dynamics simulation of the assembly process.
The resulting scheme with state change is highly efficient but still suffers errors. This is predominantly because defects can still arise due to discordances between local environments. To fix these, we introduce a proofreading scheme inspired by Hopfield's kinetic proofreading\cite{hopfield1974kinetic}. Particles that have undergone state change randomly transition to states with weaker bond strengths which allow these errors to be corrected. From this configuration, the probability of correcting an error is much higher than the probability of forming a new error, and hence this results in nearly perfect yield.
While the conceptual foundations of these ideas has long existed \cite{changeux2012allostery,hopfield1974kinetic}
to our knowledge this is the first time that this has been explicitly programmed in a simulation of colloidal particles. Although our demonstration used a simple structure to assemble, both the concepts and the programming framework we outline here are general and should work for assembly of other structures with other types of components. Goals for future work should apply these schemes to other structures such as the assembly of 3D shells that can encapsulate or release their contents, or to other functional behaviors, such as self-replication and disassembly.
A key aspect of this work is the use of differentiable molecular dynamics simulations with patchy particles, a possibility enabled by the development of patchy particle simulations within a differentiable library \cite{jaxmd_patchy}. The ability to carry out this type of optimization within a molecular dynamics simulations opens up enormous possibilities for the design of novel components. Furthermore, the ability to program interactions and state change opens the door to even more complicated structures and behaviors. As examples, we could design components to engineer the yield shape itself, by optimizing the width and temperatures where particular structures occur. Alternatively, the system could be programmed to exhibit multifarious assembly \cite{murugan2015multifarious}, whereby different seeds nucleate different structures. Yet another direction is to consider the distribution of manufacturable components and directly optimize over this distribution, for example optimizing the distribution of the position of patches. To facilitate the development of these possibilities, we have have open sourced the code coupling molecular dynamics simulations to the training of local rules \cite{notebook_git}.
This work is the first step to a long standing goal of building synthetic materials with the properties of living ones \cite{zeravcic2017colloquium}. Being able to design these materials in a computer is a necessary but not sufficient condition for implementing them in experiments. We now must develop these computational approaches in systems that can be experimentally realized, and tune the computational models to reflect the experimental system accurately enough that we can use computation to guide experiments. The development of such a system is an important and unsolved problem. Possible experimental systems range from magnetic handshake materials \cite{niu2019magnetic}, to DNA origami \cite{ke2009multilayer, rothemund2006folding}.
\textbf{Acknowledgments:} We thank Francesco Mottes for suggesting that we consider quenched disorder, and all members of the Brenner group for a stimulating environment to use automatic differentiation technologies for optimizing dynamical problems. This material is based upon work supported by the Office of Naval Research (ONR N00014-17-1-3029, ONR N00014-23-1-2654), the NSF Grant DMR-1921619, and the NSF AI Institute of Dynamic Systems (\#2112085).
\bibliographystyle{apsrev4-2}
\bibliography{main}
\end{document}
%apsrev4-2.bst 2019-01-14 (MD) hand-edited version of apsrev4-1.bst
%Control: key (0)
%Control: author (72) initials jnrlst
%Control: editor formatted (1) identically to author
%Control: production of article title (-1) disabled
%Control: page (0) single
%Control: year (1) truncated
%Control: production of eprint (0) enabled
\begin{thebibliography}{30}%
\makeatletter
\providecommand \@ifxundefined [1]{%
\@ifx{#1\undefined}
}%
\providecommand \@ifnum [1]{%
\ifnum #1\expandafter \@firstoftwo
\else \expandafter \@secondoftwo
\fi
}%
\providecommand \@ifx [1]{%
\ifx #1\expandafter \@firstoftwo
\else \expandafter \@secondoftwo
\fi
}%
\providecommand \natexlab [1]{#1}%
\providecommand \enquote [1]{``#1''}%
\providecommand \bibnamefont [1]{#1}%
\providecommand \bibfnamefont [1]{#1}%
\providecommand \citenamefont [1]{#1}%
\providecommand \href@noop [0]{\@secondoftwo}%
\providecommand \href [0]{\begingroup \@sanitize@url \@href}%
\providecommand \@href[1]{\@@startlink{#1}\@@href}%
\providecommand \@@href[1]{\endgroup#1\@@endlink}%
\providecommand \@sanitize@url [0]{\catcode `\\12\catcode `\$12\catcode
`\&12\catcode `\#12\catcode `\^12\catcode `\_12\catcode `\%12\relax}%
\providecommand \@@startlink[1]{}%
\providecommand \@@endlink[0]{}%
\providecommand \url [0]{\begingroup\@sanitize@url \@url }%
\providecommand \@url [1]{\endgroup\@href {#1}{\urlprefix }}%
\providecommand \urlprefix [0]{URL }%
\providecommand \Eprint [0]{\href }%
\providecommand \doibase [0]{https://doi.org/}%
\providecommand \selectlanguage [0]{\@gobble}%
\providecommand \bibinfo [0]{\@secondoftwo}%
\providecommand \bibfield [0]{\@secondoftwo}%
\providecommand \translation [1]{[#1]}%
\providecommand \BibitemOpen [0]{}%
\providecommand \bibitemStop [0]{}%
\providecommand \bibitemNoStop [0]{.\EOS\space}%
\providecommand \EOS [0]{\spacefactor3000\relax}%
\providecommand \BibitemShut [1]{\csname bibitem#1\endcsname}%
\let\auto@bib@innerbib\@empty
%</preamble>
\bibitem [{\citenamefont {Newsholme}\ \emph {et~al.}(1973)\citenamefont
{Newsholme}, \citenamefont {Start} \emph {et~al.}}]{newsholme1973regulation}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {E.~A.}\ \bibnamefont
{Newsholme}}, \bibinfo {author} {\bibfnamefont {C.}~\bibnamefont {Start}},
\emph {et~al.},\ }\href@noop {} {\emph {\bibinfo {title} {Regulation in
metabolism.}}}\ (\bibinfo {year} {1973})\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Knossow}\ \emph {et~al.}(2020)\citenamefont
{Knossow}, \citenamefont {Campanacci}, \citenamefont {Khodja},\ and\
\citenamefont {Gigant}}]{knossow2020mechanism}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {M.}~\bibnamefont
{Knossow}}, \bibinfo {author} {\bibfnamefont {V.}~\bibnamefont {Campanacci}},
\bibinfo {author} {\bibfnamefont {L.~A.}\ \bibnamefont {Khodja}},\ and\
\bibinfo {author} {\bibfnamefont {B.}~\bibnamefont {Gigant}},\ }\href@noop {}
{\bibfield {journal} {\bibinfo {journal} {Iscience}\ }\textbf {\bibinfo
{volume} {23}} (\bibinfo {year} {2020})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {VanBuren}\ \emph {et~al.}(2005)\citenamefont
{VanBuren}, \citenamefont {Cassimeris},\ and\ \citenamefont
{Odde}}]{vanburen2005mechanochemical}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {V.}~\bibnamefont
{VanBuren}}, \bibinfo {author} {\bibfnamefont {L.}~\bibnamefont
{Cassimeris}},\ and\ \bibinfo {author} {\bibfnamefont {D.~J.}\ \bibnamefont
{Odde}},\ }\href@noop {} {\bibfield {journal} {\bibinfo {journal}
{Biophysical journal}\ }\textbf {\bibinfo {volume} {89}},\ \bibinfo {pages}
{2911} (\bibinfo {year} {2005})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Bruinsma}\ \emph {et~al.}(2021)\citenamefont
{Bruinsma}, \citenamefont {Wuite},\ and\ \citenamefont
{Roos}}]{bruinsma2021physics}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {R.~F.}\ \bibnamefont
{Bruinsma}}, \bibinfo {author} {\bibfnamefont {G.~J.}\ \bibnamefont
{Wuite}},\ and\ \bibinfo {author} {\bibfnamefont {W.~H.}\ \bibnamefont
{Roos}},\ }\href@noop {} {\bibfield {journal} {\bibinfo {journal} {Nature
Reviews Physics}\ }\textbf {\bibinfo {volume} {3}},\ \bibinfo {pages} {76}
(\bibinfo {year} {2021})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Buz{\'o}n}\ \emph {et~al.}(2021)\citenamefont
{Buz{\'o}n}, \citenamefont {Maity}, \citenamefont {Christodoulis},
\citenamefont {Wiertsema}, \citenamefont {Dunkelbarger}, \citenamefont {Kim},
\citenamefont {Wuite}, \citenamefont {Zlotnick},\ and\ \citenamefont
{Roos}}]{buzon2021virus}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {P.}~\bibnamefont
{Buz{\'o}n}}, \bibinfo {author} {\bibfnamefont {S.}~\bibnamefont {Maity}},
\bibinfo {author} {\bibfnamefont {P.}~\bibnamefont {Christodoulis}}, \bibinfo
{author} {\bibfnamefont {M.~J.}\ \bibnamefont {Wiertsema}}, \bibinfo {author}
{\bibfnamefont {S.}~\bibnamefont {Dunkelbarger}}, \bibinfo {author}
{\bibfnamefont {C.}~\bibnamefont {Kim}}, \bibinfo {author} {\bibfnamefont
{G.~J.}\ \bibnamefont {Wuite}}, \bibinfo {author} {\bibfnamefont
{A.}~\bibnamefont {Zlotnick}},\ and\ \bibinfo {author} {\bibfnamefont
{W.~H.}\ \bibnamefont {Roos}},\ }\href@noop {} {\bibfield {journal}
{\bibinfo {journal} {Science advances}\ }\textbf {\bibinfo {volume} {7}},\
\bibinfo {pages} {eabg0811} (\bibinfo {year} {2021})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Reha-Krantz}(2010)}]{reha2010dna}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {L.~J.}\ \bibnamefont
{Reha-Krantz}},\ }\href@noop {} {\bibfield {journal} {\bibinfo {journal}
{Biochimica et Biophysica Acta (BBA)-Proteins and Proteomics}\ }\textbf
{\bibinfo {volume} {1804}},\ \bibinfo {pages} {1049} (\bibinfo {year}
{2010})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Iinuma}\ \emph {et~al.}(2014)\citenamefont {Iinuma},
\citenamefont {Ke}, \citenamefont {Jungmann}, \citenamefont {Schlichthaerle},
\citenamefont {Woehrstein},\ and\ \citenamefont {Yin}}]{iinuma2014polyhedra}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {R.}~\bibnamefont
{Iinuma}}, \bibinfo {author} {\bibfnamefont {Y.}~\bibnamefont {Ke}}, \bibinfo
{author} {\bibfnamefont {R.}~\bibnamefont {Jungmann}}, \bibinfo {author}
{\bibfnamefont {T.}~\bibnamefont {Schlichthaerle}}, \bibinfo {author}
{\bibfnamefont {J.~B.}\ \bibnamefont {Woehrstein}},\ and\ \bibinfo {author}
{\bibfnamefont {P.}~\bibnamefont {Yin}},\ }\href@noop {} {\bibfield
{journal} {\bibinfo {journal} {science}\ }\textbf {\bibinfo {volume}
{344}},\ \bibinfo {pages} {65} (\bibinfo {year} {2014})}\BibitemShut
{NoStop}%
\bibitem [{\citenamefont {Ke}\ \emph {et~al.}(2009)\citenamefont {Ke},
\citenamefont {Douglas}, \citenamefont {Liu}, \citenamefont {Sharma},
\citenamefont {Cheng}, \citenamefont {Leung}, \citenamefont {Liu},
\citenamefont {Shih},\ and\ \citenamefont {Yan}}]{ke2009multilayer}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {Y.}~\bibnamefont
{Ke}}, \bibinfo {author} {\bibfnamefont {S.~M.}\ \bibnamefont {Douglas}},
\bibinfo {author} {\bibfnamefont {M.}~\bibnamefont {Liu}}, \bibinfo {author}
{\bibfnamefont {J.}~\bibnamefont {Sharma}}, \bibinfo {author} {\bibfnamefont
{A.}~\bibnamefont {Cheng}}, \bibinfo {author} {\bibfnamefont
{A.}~\bibnamefont {Leung}}, \bibinfo {author} {\bibfnamefont
{Y.}~\bibnamefont {Liu}}, \bibinfo {author} {\bibfnamefont {W.~M.}\
\bibnamefont {Shih}},\ and\ \bibinfo {author} {\bibfnamefont
{H.}~\bibnamefont {Yan}},\ }\href@noop {} {\bibfield {journal} {\bibinfo
{journal} {Journal of the American Chemical Society}\ }\textbf {\bibinfo
{volume} {131}},\ \bibinfo {pages} {15903} (\bibinfo {year}
{2009})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Rothemund}(2006)}]{rothemund2006folding}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {P.~W.}\ \bibnamefont
{Rothemund}},\ }\href@noop {} {\bibfield {journal} {\bibinfo {journal}
{Nature}\ }\textbf {\bibinfo {volume} {440}},\ \bibinfo {pages} {297}
(\bibinfo {year} {2006})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Morris}\ \emph {et~al.}(2019)\citenamefont {Morris},
\citenamefont {Jones}, \citenamefont {Halebian}, \citenamefont {Wu},
\citenamefont {Baker}, \citenamefont {Armache}, \citenamefont {Avila~Ibarra},
\citenamefont {Sessions}, \citenamefont {Cameron}, \citenamefont {Cheng}
\emph {et~al.}}]{morris2019cryo}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {K.~L.}\ \bibnamefont
{Morris}}, \bibinfo {author} {\bibfnamefont {J.~R.}\ \bibnamefont {Jones}},
\bibinfo {author} {\bibfnamefont {M.}~\bibnamefont {Halebian}}, \bibinfo
{author} {\bibfnamefont {S.}~\bibnamefont {Wu}}, \bibinfo {author}
{\bibfnamefont {M.}~\bibnamefont {Baker}}, \bibinfo {author} {\bibfnamefont
{J.-P.}\ \bibnamefont {Armache}}, \bibinfo {author} {\bibfnamefont
{A.}~\bibnamefont {Avila~Ibarra}}, \bibinfo {author} {\bibfnamefont {R.~B.}\
\bibnamefont {Sessions}}, \bibinfo {author} {\bibfnamefont {A.~D.}\
\bibnamefont {Cameron}}, \bibinfo {author} {\bibfnamefont {Y.}~\bibnamefont
{Cheng}}, \emph {et~al.},\ }\href@noop {} {\bibfield {journal} {\bibinfo
{journal} {Nature structural \& molecular biology}\ }\textbf {\bibinfo
{volume} {26}},\ \bibinfo {pages} {890} (\bibinfo {year} {2019})}\BibitemShut
{NoStop}%
\bibitem [{\citenamefont {Zeravcic}\ \emph {et~al.}(2014)\citenamefont
{Zeravcic}, \citenamefont {Manoharan},\ and\ \citenamefont
{Brenner}}]{zeravcic2014size}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {Z.}~\bibnamefont
{Zeravcic}}, \bibinfo {author} {\bibfnamefont {V.~N.}\ \bibnamefont
{Manoharan}},\ and\ \bibinfo {author} {\bibfnamefont {M.~P.}\ \bibnamefont
{Brenner}},\ }\href@noop {} {\bibfield {journal} {\bibinfo {journal}
{Proceedings of the National Academy of Sciences}\ }\textbf {\bibinfo
{volume} {111}},\ \bibinfo {pages} {15918} (\bibinfo {year}
{2014})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Murugan}\ \emph
{et~al.}(2015{\natexlab{a}})\citenamefont {Murugan}, \citenamefont {Zou},\
and\ \citenamefont {Brenner}}]{murugan2015undesired}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {A.}~\bibnamefont
{Murugan}}, \bibinfo {author} {\bibfnamefont {J.}~\bibnamefont {Zou}},\ and\
\bibinfo {author} {\bibfnamefont {M.~P.}\ \bibnamefont {Brenner}},\
}\href@noop {} {\bibfield {journal} {\bibinfo {journal} {Nature
communications}\ }\textbf {\bibinfo {volume} {6}},\ \bibinfo {pages} {6203}
(\bibinfo {year} {2015}{\natexlab{a}})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Huntley}\ \emph {et~al.}(2016)\citenamefont
{Huntley}, \citenamefont {Murugan},\ and\ \citenamefont
{Brenner}}]{huntley2016information}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {M.~H.}\ \bibnamefont
{Huntley}}, \bibinfo {author} {\bibfnamefont {A.}~\bibnamefont {Murugan}},\
and\ \bibinfo {author} {\bibfnamefont {M.~P.}\ \bibnamefont {Brenner}},\
}\href@noop {} {\bibfield {journal} {\bibinfo {journal} {Proceedings of the
National Academy of Sciences}\ }\textbf {\bibinfo {volume} {113}},\ \bibinfo
{pages} {5841} (\bibinfo {year} {2016})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Meng}\ \emph {et~al.}(2010)\citenamefont {Meng},
\citenamefont {Arkus}, \citenamefont {Brenner},\ and\ \citenamefont
{Manoharan}}]{meng2010free}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {G.}~\bibnamefont
{Meng}}, \bibinfo {author} {\bibfnamefont {N.}~\bibnamefont {Arkus}},
\bibinfo {author} {\bibfnamefont {M.~P.}\ \bibnamefont {Brenner}},\ and\
\bibinfo {author} {\bibfnamefont {V.~N.}\ \bibnamefont {Manoharan}},\
}\href@noop {} {\bibfield {journal} {\bibinfo {journal} {Science}\ }\textbf
{\bibinfo {volume} {327}},\ \bibinfo {pages} {560} (\bibinfo {year}
{2010})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Zeravcic}\ \emph {et~al.}(2017)\citenamefont
{Zeravcic}, \citenamefont {Manoharan},\ and\ \citenamefont
{Brenner}}]{zeravcic2017colloquium}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {Z.}~\bibnamefont
{Zeravcic}}, \bibinfo {author} {\bibfnamefont {V.~N.}\ \bibnamefont
{Manoharan}},\ and\ \bibinfo {author} {\bibfnamefont {M.~P.}\ \bibnamefont
{Brenner}},\ }\href@noop {} {\bibfield {journal} {\bibinfo {journal}
{Reviews of Modern Physics}\ }\textbf {\bibinfo {volume} {89}},\ \bibinfo
{pages} {031001} (\bibinfo {year} {2017})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Pawar}\ and\ \citenamefont
{Kretzschmar}(2010)}]{pawar2010fabrication}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {A.~B.}\ \bibnamefont
{Pawar}}\ and\ \bibinfo {author} {\bibfnamefont {I.}~\bibnamefont
{Kretzschmar}},\ }\href@noop {} {\bibfield {journal} {\bibinfo {journal}
{Macromolecular rapid communications}\ }\textbf {\bibinfo {volume} {31}},\
\bibinfo {pages} {150} (\bibinfo {year} {2010})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Nussinov}\ \emph {et~al.}(2014)\citenamefont
{Nussinov}, \citenamefont {Tsai},\ and\ \citenamefont
{Liu}}]{nussinov2014principles}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {R.}~\bibnamefont
{Nussinov}}, \bibinfo {author} {\bibfnamefont {C.-J.}\ \bibnamefont {Tsai}},\
and\ \bibinfo {author} {\bibfnamefont {J.}~\bibnamefont {Liu}},\ }\href@noop
{} {\bibfield {journal} {\bibinfo {journal} {Journal of the American
Chemical Society}\ }\textbf {\bibinfo {volume} {136}},\ \bibinfo {pages}
{17692} (\bibinfo {year} {2014})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Ni}\ \emph {et~al.}(2019)\citenamefont {Ni},
\citenamefont {Liu},\ and\ \citenamefont {Sheng}}]{ni2019allosteric}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {D.}~\bibnamefont
{Ni}}, \bibinfo {author} {\bibfnamefont {N.}~\bibnamefont {Liu}},\ and\
\bibinfo {author} {\bibfnamefont {C.}~\bibnamefont {Sheng}},\ }\href@noop {}
{\bibfield {journal} {\bibinfo {journal} {Protein Allostery in Drug
Discovery}\ ,\ \bibinfo {pages} {313}} (\bibinfo {year} {2019})}\BibitemShut
{NoStop}%
\bibitem [{\citenamefont {Changeux}(2012)}]{changeux2012allostery}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {J.-P.}\ \bibnamefont
{Changeux}},\ }\href@noop {} {\bibfield {journal} {\bibinfo {journal}
{Annual review of biophysics}\ }\textbf {\bibinfo {volume} {41}},\ \bibinfo
{pages} {103} (\bibinfo {year} {2012})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Baydin}\ \emph {et~al.}(2018)\citenamefont {Baydin},
\citenamefont {Pearlmutter}, \citenamefont {Radul},\ and\ \citenamefont
{Siskind}}]{baydin2018automatic}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {A.~G.}\ \bibnamefont
{Baydin}}, \bibinfo {author} {\bibfnamefont {B.~A.}\ \bibnamefont
{Pearlmutter}}, \bibinfo {author} {\bibfnamefont {A.~A.}\ \bibnamefont
{Radul}},\ and\ \bibinfo {author} {\bibfnamefont {J.~M.}\ \bibnamefont
{Siskind}},\ }\href@noop {} {\bibfield {journal} {\bibinfo {journal}
{Journal of Marchine Learning Research}\ }\textbf {\bibinfo {volume} {18}},\
\bibinfo {pages} {1} (\bibinfo {year} {2018})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {King}\ \emph {et~al.}(ress)\citenamefont {King},
\citenamefont {Du}, \citenamefont {Zhu}, \citenamefont {Schoenholz},\ and\
\citenamefont {Brenner}}]{jaxmd_patchy}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {E.~M.}\ \bibnamefont
{King}}, \bibinfo {author} {\bibfnamefont {C.~X.}\ \bibnamefont {Du}},
\bibinfo {author} {\bibfnamefont {Q.-Z.}\ \bibnamefont {Zhu}}, \bibinfo
{author} {\bibfnamefont {S.~S.}\ \bibnamefont {Schoenholz}},\ and\ \bibinfo
{author} {\bibfnamefont {M.~P.}\ \bibnamefont {Brenner}},\ }\href@noop {}
{\bibfield {journal} {\bibinfo {journal} {Proceedings of the National
Academy of Sciences}\ } (\bibinfo {year} {in press})},\ \Eprint
{https://arxiv.org/abs/2312.05360} {arXiv:2312.05360} \BibitemShut {NoStop}%
\bibitem [{sup()}]{supp}%
\BibitemOpen
\href@noop {} {}\bibinfo {howpublished} {See Supplemental Material at
"\url{URL_will_be_inserted_by_publisher}" for details regarding the
simulation, yield definition, and construction and optimization of the
GNN.}\BibitemShut {Stop}%
\bibitem [{\citenamefont {Hopfield}(1974)}]{hopfield1974kinetic}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {J.~J.}\ \bibnamefont
{Hopfield}},\ }\href@noop {} {\bibfield {journal} {\bibinfo {journal}
{Proceedings of the National Academy of Sciences}\ }\textbf {\bibinfo
{volume} {71}},\ \bibinfo {pages} {4135} (\bibinfo {year}
{1974})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Battaglia}\ \emph {et~al.}(2018)\citenamefont
{Battaglia}, \citenamefont {Hamrick}, \citenamefont {Bapst}, \citenamefont
{Sanchez-Gonzalez}, \citenamefont {Zambaldi}, \citenamefont {Malinowski},
\citenamefont {Tacchetti}, \citenamefont {Raposo}, \citenamefont {Santoro},
\citenamefont {Faulkner} \emph {et~al.}}]{battaglia2018relational}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {P.~W.}\ \bibnamefont
{Battaglia}}, \bibinfo {author} {\bibfnamefont {J.~B.}\ \bibnamefont
{Hamrick}}, \bibinfo {author} {\bibfnamefont {V.}~\bibnamefont {Bapst}},
\bibinfo {author} {\bibfnamefont {A.}~\bibnamefont {Sanchez-Gonzalez}},
\bibinfo {author} {\bibfnamefont {V.}~\bibnamefont {Zambaldi}}, \bibinfo
{author} {\bibfnamefont {M.}~\bibnamefont {Malinowski}}, \bibinfo {author}
{\bibfnamefont {A.}~\bibnamefont {Tacchetti}}, \bibinfo {author}
{\bibfnamefont {D.}~\bibnamefont {Raposo}}, \bibinfo {author} {\bibfnamefont
{A.}~\bibnamefont {Santoro}}, \bibinfo {author} {\bibfnamefont
{R.}~\bibnamefont {Faulkner}}, \emph {et~al.},\ }\href@noop {} {\bibfield
{journal} {\bibinfo {journal} {arXiv preprint arXiv:1806.01261}\ } (\bibinfo
{year} {2018})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Bapst}\ \emph {et~al.}(2020)\citenamefont {Bapst},
\citenamefont {Keck}, \citenamefont {Grabska-Barwi{\'n}ska}, \citenamefont
{Donner}, \citenamefont {Cubuk}, \citenamefont {Schoenholz}, \citenamefont
{Obika}, \citenamefont {Nelson}, \citenamefont {Back}, \citenamefont
{Hassabis} \emph {et~al.}}]{bapst2020unveiling}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {V.}~\bibnamefont
{Bapst}}, \bibinfo {author} {\bibfnamefont {T.}~\bibnamefont {Keck}},
\bibinfo {author} {\bibfnamefont {A.}~\bibnamefont {Grabska-Barwi{\'n}ska}},
\bibinfo {author} {\bibfnamefont {C.}~\bibnamefont {Donner}}, \bibinfo
{author} {\bibfnamefont {E.~D.}\ \bibnamefont {Cubuk}}, \bibinfo {author}
{\bibfnamefont {S.~S.}\ \bibnamefont {Schoenholz}}, \bibinfo {author}
{\bibfnamefont {A.}~\bibnamefont {Obika}}, \bibinfo {author} {\bibfnamefont
{A.~W.}\ \bibnamefont {Nelson}}, \bibinfo {author} {\bibfnamefont
{T.}~\bibnamefont {Back}}, \bibinfo {author} {\bibfnamefont {D.}~\bibnamefont
{Hassabis}}, \emph {et~al.},\ }\href@noop {} {\bibfield {journal} {\bibinfo
{journal} {Nature Physics}\ }\textbf {\bibinfo {volume} {16}},\ \bibinfo
{pages} {448} (\bibinfo {year} {2020})}\BibitemShut {NoStop}%
\bibitem [{jax(2023)}]{jaxmd_git}%
\BibitemOpen
\href@noop {} {}\bibinfo {howpublished}
{\url{https://github.com/jax-md/jax-md}} (\bibinfo {year} {2023})\BibitemShut
{NoStop}%
\bibitem [{\citenamefont {Williams}(1992)}]{williams1992simple}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {R.~J.}\ \bibnamefont
{Williams}},\ }\href@noop {} {\bibfield {journal} {\bibinfo {journal}
{Machine learning}\ }\textbf {\bibinfo {volume} {8}},\ \bibinfo {pages} {229}
(\bibinfo {year} {1992})}\BibitemShut {NoStop}%
\bibitem [{not(2023)}]{notebook_git}%
\BibitemOpen
\href@noop {} {}\bibinfo {howpublished}
{\url{https://github.com/brennergroup/paper_notebooks/blob/main/Proofreading_self_assembly.ipynb}}
(\bibinfo {year} {2023})\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Murugan}\ \emph
{et~al.}(2015{\natexlab{b}})\citenamefont {Murugan}, \citenamefont
{Zeravcic}, \citenamefont {Brenner},\ and\ \citenamefont
{Leibler}}]{murugan2015multifarious}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {A.}~\bibnamefont
{Murugan}}, \bibinfo {author} {\bibfnamefont {Z.}~\bibnamefont {Zeravcic}},
\bibinfo {author} {\bibfnamefont {M.~P.}\ \bibnamefont {Brenner}},\ and\
\bibinfo {author} {\bibfnamefont {S.}~\bibnamefont {Leibler}},\ }\href@noop
{} {\bibfield {journal} {\bibinfo {journal} {Proceedings of the National
Academy of Sciences}\ }\textbf {\bibinfo {volume} {112}},\ \bibinfo {pages}
{54} (\bibinfo {year} {2015}{\natexlab{b}})}\BibitemShut {NoStop}%
\bibitem [{\citenamefont {Niu}\ \emph {et~al.}(2019)\citenamefont {Niu},
\citenamefont {Du}, \citenamefont {Esposito}, \citenamefont {Ng},
\citenamefont {Brenner}, \citenamefont {McEuen},\ and\ \citenamefont
{Cohen}}]{niu2019magnetic}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {R.}~\bibnamefont
{Niu}}, \bibinfo {author} {\bibfnamefont {C.~X.}\ \bibnamefont {Du}},
\bibinfo {author} {\bibfnamefont {E.}~\bibnamefont {Esposito}}, \bibinfo
{author} {\bibfnamefont {J.}~\bibnamefont {Ng}}, \bibinfo {author}
{\bibfnamefont {M.~P.}\ \bibnamefont {Brenner}}, \bibinfo {author}
{\bibfnamefont {P.~L.}\ \bibnamefont {McEuen}},\ and\ \bibinfo {author}
{\bibfnamefont {I.}~\bibnamefont {Cohen}},\ }\href@noop {} {\bibfield
{journal} {\bibinfo {journal} {Proceedings of the National Academy of
Sciences}\ }\textbf {\bibinfo {volume} {116}},\ \bibinfo {pages} {24402}
(\bibinfo {year} {2019})}\BibitemShut {NoStop}%
\end{thebibliography}%
%apsrev4-2.bst 2019-01-14 (MD) hand-edited version of apsrev4-1.bst
%Control: key (0)
%Control: author (72) initials jnrlst
%Control: editor formatted (1) identically to author
%Control: production of article title (-1) disabled
%Control: page (0) single
%Control: year (1) truncated
%Control: production of eprint (0) enabled
\begin{thebibliography}{2}%
\makeatletter
\providecommand \@ifxundefined [1]{%
\@ifx{#1\undefined}
}%
\providecommand \@ifnum [1]{%
\ifnum #1\expandafter \@firstoftwo
\else \expandafter \@secondoftwo
\fi
}%
\providecommand \@ifx [1]{%
\ifx #1\expandafter \@firstoftwo
\else \expandafter \@secondoftwo
\fi
}%
\providecommand \natexlab [1]{#1}%
\providecommand \enquote [1]{``#1''}%
\providecommand \bibnamefont [1]{#1}%
\providecommand \bibfnamefont [1]{#1}%
\providecommand \citenamefont [1]{#1}%
\providecommand \href@noop [0]{\@secondoftwo}%
\providecommand \href [0]{\begingroup \@sanitize@url \@href}%
\providecommand \@href[1]{\@@startlink{#1}\@@href}%
\providecommand \@@href[1]{\endgroup#1\@@endlink}%
\providecommand \@sanitize@url [0]{\catcode `\\12\catcode `\$12\catcode
`\&12\catcode `\#12\catcode `\^12\catcode `\_12\catcode `\%12\relax}%
\providecommand \@@startlink[1]{}%
\providecommand \@@endlink[0]{}%
\providecommand \url [0]{\begingroup\@sanitize@url \@url }%
\providecommand \@url [1]{\endgroup\@href {#1}{\urlprefix }}%
\providecommand \urlprefix [0]{URL }%
\providecommand \Eprint [0]{\href }%
\providecommand \doibase [0]{https://doi.org/}%
\providecommand \selectlanguage [0]{\@gobble}%
\providecommand \bibinfo [0]{\@secondoftwo}%
\providecommand \bibfield [0]{\@secondoftwo}%
\providecommand \translation [1]{[#1]}%
\providecommand \BibitemOpen [0]{}%
\providecommand \bibitemStop [0]{}%
\providecommand \bibitemNoStop [0]{.\EOS\space}%
\providecommand \EOS [0]{\spacefactor3000\relax}%
\providecommand \BibitemShut [1]{\csname bibitem#1\endcsname}%
\let\auto@bib@innerbib\@empty
%</preamble>
\bibitem [{not(2023)}]{notebook_git}%
\BibitemOpen
\href@noop {} {}\bibinfo {howpublished}
{\url{https://github.com/brennergroup/paper_notebooks/blob/main/Proofreading_self_assembly.ipynb}}
(\bibinfo {year} {2023})\BibitemShut {NoStop}%
\bibitem [{\citenamefont {King}\ \emph {et~al.}(ress)\citenamefont {King},
\citenamefont {Du}, \citenamefont {Zhu}, \citenamefont {Schoenholz},\ and\
\citenamefont {Brenner}}]{jaxmd_patchy}%
\BibitemOpen
\bibfield {author} {\bibinfo {author} {\bibfnamefont {E.~M.}\ \bibnamefont
{King}}, \bibinfo {author} {\bibfnamefont {C.~X.}\ \bibnamefont {Du}},
\bibinfo {author} {\bibfnamefont {Q.-Z.}\ \bibnamefont {Zhu}}, \bibinfo
{author} {\bibfnamefont {S.~S.}\ \bibnamefont {Schoenholz}},\ and\ \bibinfo
{author} {\bibfnamefont {M.~P.}\ \bibnamefont {Brenner}},\ }\href@noop {}
{\bibfield {journal} {\bibinfo {journal} {Proceedings of the National
Academy of Sciences}\ } (\bibinfo {year} {in press})},\ \Eprint
{https://arxiv.org/abs/2312.05360} {arXiv:2312.05360} \BibitemShut {NoStop}%
\end{thebibliography}%