A compiler framework to derive microfluidic platforms for manufacturing hierarchical, compartmentalized structures that maximize yield of chemical reactions

In this work, we propose a framework that derives the configuration of an artificial, compartmentalized, cell-like structure in order to maximize the yield of a desired output reactant given a formal description of the chemistry. The configuration of the structure is then used to compile G-code for 3D printing of a microfluidic platform able to manufacture the aforementioned structure. Furthermore, the compiler output includes a set of pressure profiles to actuate the valves at the input of the microfluidic platform. The work includes an outline of the steps involved in the compilation process and a discussion of the algorithms needed for each step. Finally, we provide formal, declarative languages for the input and output interfaces of each of these steps.


Introduction
The main objective of the European Commission-funded project Artificial Cells with Distributed Cores to Decipher Protein Function (ACDC) is to manufacture a programmable platform employing artificial cell technologies and, in particular, microfluidic systems. Similar to a living cell, the platform consists of hierarchical structures, i.e. compartments that are enclosed by surrounding compartments on multiple levels. The potential applications of such a platform include protein expression, small drug discovery and genetic mutation screening, all achieved by exploiting key properties (small size, hierarchical structures) of living cells. Specifically, for the synthesis of branched polymers, In Weyland et al. (2013), we showed that a microfluidic platform operating on hierarchically organized structures can outperform regular one-pot reaction systems in terms of yield. This is achieved by compiling an abstract description of the microfluidic platform configuration needed to perform the synthesis, given a set of input reactants, the desired chemical output as well as information on the click chemistry (Kolb et al., 2001). In the aforementioned work, we also discuss other chemistries that are applicable in such a system in a biochemical context. While the work is specifically tailored to branched polymers, a general yield-maximizing strategy is desirable to derive the configuration of a synthesis platform from a description of the chemical inputs and the target output. In this work, we propose a framework currently under development, that formalizes the steps required to achieve the aforementioned general chemical compiler. In doing so, we introduce declarative languages for each step, unifying various aspects of the ACDC project: the description of chemistries, the optimization of synthesis, making good use of hierarchical structures and the configuration of microfluidic platforms.

The Chemical Compiler
As mentioned in the introduction, the chemical compiler derives a suitable configuration of a microfluidic platform based on a desired chemical output. It operates in a sequence of four steps shown in Fig. 1: (1) Enumerate synthesis paths, (2) identify best synthesis, (3) optimization, (4) compile output files: G-code to print the platform, and pressure profiles to achieve the desired outcome. In the following sections, each of these steps is described in more detail.
(1) Enumeration of synthesis paths: The chemistry is provided as chemical reaction network (CRN) (Temkin et al., 1996), i.e., a graph-theoretical representation of the chemistry including all reactants and their reaction mechanisms. In addition to the chemistry, the desired chemical output reactant is an input for this step. In contrast to the approach for branched polymers mentioned in the introduction, there is no need to specify the input reactants here since all possible inputs are already implied by the chemistry. Given the aforementioned input, all synthesis paths towards the desired output are enumerated in this first step. This can be achieved with the technique already introduced in Weyland et al. (2013), yielding a (potentially large) tree of synthesis paths. As explained there, different ways to to synthesize the target structure are found by traversing this tree from the root to a set of leaves.
(2) Identification of best synthesis: Naturally, some reaction paths will be preferable to others regarding, e.g., the yield, the number of reaction steps, duration of the synthesis, input reactants, required environmental conditions etc. According to those criteria, one synthesis tree is selected in this step. State-of-the-art techniques such as those proposed by Kim et al. (2018) or a forward simulation employing the Gillespie algorithm (Gillespie, 1976(Gillespie, , 1977 can be used to identify, e.g., the synthesis path that maximizes the yield. Furthermore, proof-search algorithms can be used to prune the tree from undesired paths, reducing the time of search. On a side note, such algorithms could potentially even be included during the enumeration step (1), reducing the memory footprint of the resulting synthesis tree. In any case, the output of step (2) is a specific synthesis path, i.e., a subtree of the synthesis tree which is provided as input in this step.
(3) Optimization: Up until now, chemical by-products were only considered in the context of yield loss. However, intermediate by-products can also interact with future synthesis steps. This is especially problematic if the chemical system involves a limited number of click chemistry linkers (Weyland et al., 2013). In this step, such interactions are avoided by exploiting the compartmentalized and hierarchical structures that are key to the ACDC project. In theory, one could install a dedicated reaction chamber (compartment) for each step in the reaction path and install transports between the reaction chambers to spatially segregate every reaction and resulting by-product. However, that would yield a substantial number of compartments -a setup that is very challenging to implement in practice. An alternative approach is therefore pursued: Again using the aforementioned forward simulation techniques, each step of the reaction is simulated and new compartments are only assigned when the yield is reduced due to interaction effects. As explained in Schneider et al. (2019a,b), some limitations in the three-dimensional arrangement of the compartments need to be accounted for. These limitations impose additional constraints to the compartmentalization of the reaction and are therefore considered by the optimizer. This step results in a formal description of the compartmentalized system, including the compartments, interactions between compartments and the reactions that occur inside each compartment. We propose to use the Systems Biology Markup Language (SBML) (Hucka et al., 2003) to describe this system.
(4) Compilation of output files: Using the aforementioned SBML description, a microfluidic platform is derived to manufacture the desired system. This process involves further simulations (Schneider et al., 2019a,b) to ensure that the resulting structures assume the correct arrangement in a stable and reliable fashion. G-Code is then produced to manufacture the desired platform employing 3D printing technology (Li et al., 2020). Furthermore, a set of pressure profiles is compiled to accurately steer the valves that are connected to the printed platform. A python program uses those profiles to actuate the valve controller using the manufacturer's programming interface.

Conclusions
In this work, we have outlined four steps involved in the fabrication of a microfluidic platform used for manufacturing hierarchical, compartmentalized structures to maximize yield of chemical reactions. This compiler is currently under development and, once completed, will hopefully streamline the manufacture of such structures.