Computer-automated tuning of semiconductor double quantum dots into the single-electron regime

We report the computer-automated tuning of gate-defined semiconductor double quantum dots in GaAs heterostructures. We benchmark the algorithm by creating three double quantum dots inside a linear array of four quantum dots. The algorithm sets the correct gate voltages for all the gates to tune the double quantum dots into the single-electron regime. The algorithm only requires (1) prior knowledge of the gate design and (2) the pinch-off value of the single gate $T$ that is shared by all the quantum dots. This work significantly alleviates the user effort required to tune multiple quantum dot devices.

Electrostatically defined semiconductor quantum dots have been the focus of intense research for the application of solid-state quantum computing [1][2][3]. In this architecture, quantum bits (qubits) can be defined by the spin state of an electron. Recently, several experiments have shown coherent manipulation of such spins for the purpose of spin-based quantum computation [4][5][6][7][8]. Enabled by advances in device technology, the number of quantum dots that can be accessed is quickly increasing from very few to many [9,10]. Up to date, all these quantum dots have been tuned by 'hand'. This is a slow process whereby gate voltages are tweaked carefully, first to reach a regime with one electron in each of the dots, and then to adjust the strength of all the tunnel barriers. Defects and variations in the local composition of the heterostructure lead to a disordered background potential landscape, which must be compensated for by the gate voltages. On top, cross-capacitances of each gate to neighboring dots increases the tuning complexity as the number of dots increases. The ability to tune these dots automated by computer algorithms, including tuning of many dots in parallel, is an important ingredient towards the scalability of this approach to create a largescale quantum computer.
In this Letter, we demonstrate the computer automated tuning of double quantum dot (DQD) devices. We have created an algorithm that only requires as input: (1) prior knowledge of the gate design, which is reasonable for future large-scale quantum dot circuits and (2) the measured pinch-off value of the single gate T shared by all the quantum dots. We describe the algorithm used and verify its robustness by creating three independent DQDs inside a quadruple dot array. The algorithm finds the correct gate voltages to tune all DQDs into the singleelectron regime and the computer recognizes that this goal has been achieved within an overnight measurement.
A scanning electron microscopy (SEM) image of a device nominally identical to the one used is shown in Fig. 1(a). Gate electrodes fabricated on the surface of a GaAs/AlGaAs heterostructure are biased with appropriate voltages to selectively deplete regions of the twodimensional electron gas (2DEG) 90 nm below the surface and define the quantum dots. The main function of each gate is as follows: gates L and R set the tunnel coupling with the left and right reservoir, respectively. D1 − D3 control the three inter-dot tunnel couplings and P 1 − P 4 are used to set the electron number in each dot. However, each gate influences the other parameters as well. Changing L for example, will also change the electron number in dot 1 and influence the inter-dot tunnel barrier between dot 1 and 2. This needs to be taken into account by the algorithm. Two other nearby quantum dots on top of the qubit array, sensing dot 1 and 2 (SD1 and SD2), are created in a similar way and function as a capacitively coupled charge sensor of the dot array. When positioned on the flank of a Coulomb peak, the conductance through the sensing dot is very sensitive to the number of charges in each of the dots in the array. Changes in conductance are measured using radiofrequency (RF) reflectometry [11]. High-frequency lines are connected via bias-tees to gates P 1, P 3 and P 4. The device was cooled inside a dilution refrigerator to a base temperature of ∼15 mK. All measurements were taken at zero magnetic field.
Before running the algorithm the user is required to input a range of T -values for which the algorithm should try to find DQDs. This range is currently determined by measuring the pinch-off value of T manually, and then choosing a set of gate voltages more negative than this pinch-off value. The pinch-off value can for example be determined by setting all other gates to 0 mV and next measuring the current from O1 to O4 (other ohmics open) whilst sweeping T . This step could be automated in future work.
The algorithm consists of 3 steps: (1) to determine the starting values for the gate voltages, we first measure the pinch-off characteristic between each individual gate and the shared T -gate. Based on those results we (2) cre- To measure the pinch-off characteristic we apply a small voltage-bias (∼ 500 µV) to O4 and measure the current I array through the quadruple dot array. Variations in the local composition of the heterostructure underneath each gate will be reflected in the required voltage to create quantum point contacts (QPCs). We term this voltage the transition value, V tr gate,i , which is defined as the gate voltage for which I array is at ∼ 30% of its maximum value (see Supplementary Information II A). This procedure is repeated for a range of T -values. Figs. 1(bd) show an example for T = −400 mV and the gates controlling the leftmost dot (L, P 1 and D1). In practice, it is best to continue with the most positive T -value that still allows pinch-off for all gates. In our experience this tends to create better quantum dots for this gate design.
We start by creating single quantum dots, as they already include much of the cross-talk between gates, dots and barriers, that is present in double dots. To create single quantum dots we apply a fixed voltage for the plunger gate (usually -80 mV) which we know is appropriate for this device design, and use the transition values of the barrier gates as input for a 2D coarse scan. A suitable scan range is [V tr gate,i -10 mV, V tr gate,i +400 mV]. We again monitor I array . The structure of these scans is always similar: for negative gate voltages the channel is closed, so there is no current. For more positive voltages the channel is open, so there is a large current. We fit a tetragon to the area corresponding to large current, see Fig. 2(a) for an example of the leftmost dot (details can be found in Supplementary Information II B). We next take a finer scan of the area closest to the tetragon corner with the most negative gate voltages, see Figs. 2(b-e). In the experiments we have performed, this point is always showing the start of quantum dot formation through the appearance of a Coulomb peak. We use this point as the starting point in gate-space for creating DQDs. The exact location of the Coulomb peak is determined using a Gabor filter and is shown as black dots in Figs. 2 When going to double dots, transport measurements are not suitable as current levels through few-electron double dots are impractically low for this device design. Therefore, once the single dots have been formed, we tune the SDs in a similar way. They can then be used for non-invasive charge sensing which does allow one to distinguish single-electron transitions in the dot array through RF-reflectometry. To achieve a high sensitivity it is important that the SD is tuned to the flank of one of its Coulomb peaks. After finding a Coulomb peak for the SD in a similar way as described for the qubit dots, we make a 1D scan of the plunger gates, see Fig. 2(f). Each detected Coulomb peak is given a score based on its height and slope that allows the algorithm to continue with the most sensitive operating point for the corresponding plunger gate (see Supplementary Information II C).
With the SD tuned we create a double dot in the following way: first we set the voltages of the gates for the double dot to the values found for the individual single dots (black dots in Figs. 2(b-e)). For the single gate shared by the two individual dots (e.g. gate D1 for the leftmost double dot) the average of the two values is used. Next, we record a charge stability diagram of the double dot structure by varying the two plunger gate voltages involved. We use a heuristic formula to determine the correct scan range that takes into account the capacitive coupling of the gates to the dots (see Supplementary Information II D). Typical results for such scans are shown in Fig. 3(a-c). Scans involving two plungers are measured by applying a triangular voltage ramp to the plungers on the horizontal axis using an arbitrary waveform generator, and by stepping the other plunger gate using DACs [12]. Whilst stepping the latter gate we also adjust the sensing dot plunger gate to compensate for cross-capacitive coupling and thereby improve the operating range of the SD.
To verify that the double dot has reached the singleelectron regime, the algorithm first detects how well specific parts of the charge stability diagrams match the shape of a reference cross (see inset of Fig. 3). Each match should ideally correspond to the crossing of a charging line from each dot. The shape of the reference cross is derived from the various capacitive couplings, which follow from the gate design and are known approximately from the start. Instead of detecting crosses, one could also try to detect the individual charge-transition lines. This turned out to be more sensitive to errors for two reasons: (1) Extra features in the charge stability diagrams that do not correspond to charging lines are wrongfully interpreted as dot features. (2) Not all charging lines are straight across the entire dataset; this makes it harder to interpret which line belongs to which dot. The cross-matching algorithm is robust against such anomalies because of the local, instead of global, search across the dataset. In future work it could actually be useful to still detect these extra and/or curved lines. They could give information about e.g. unwanted additional dots and aid in determining the electron numbers in regions with higher tunnel couplings. For the current goal of finding the single-electron regime this extra information is not required.
Next, the algorithm checks whether within a region slightly larger than 70×70 mV 2 , it finds other charge transitions for more negative gate voltages with respect to the most bottom-left detected cross (see Supplementary Information II D). These regions are depicted by the green tetragons in Fig. 3. If no extra transitions are detected: the single-electron regime has been found and the result is given a score of 1 for that specific measurement outcome. If extra transitions are found the algorithm outputs the score 0. In both cases this is where the algorithm stops. At the end of the run the user can see the measurement results for the various initial choices of T and select the best one.
All combined, the running of this complete algorithm (for a single value of the T -gate) takes ∼ 200 minutes. Per device typically 5 T -values are tested. In practice we have observed that for some cooldowns of the sample the algorithm could not attain the single-electron regime. A thermal cycle combined with different bias cooling [13] can significantly influence the tuning and solve this issue; just as for tuning done by hand. The key difference is that with the computer-aided tuning hardly any user effort is required to explore tuning of double dots to the few-electron regime. In future work the time required for automated tuning (as well as for tuning by hand) can be further reduced by also connecting the tunnel barrier gates of each single dot to a high-frequency line which would allow much faster scans for Figs. 1-2 [14]. These scans currently form the bottleneck in the overall tuning process. Future experiments will also address the automated tuning of more than two dots and the tuning of the tunnel couplings in between dots and their reservoirs, which are key parameters for operating dots as qubit devices.
In summary, we have demonstrated computerautomated tuning of double quantum dot devices into the single-electron regime. This work will simplify tuning dots in the future and forms the first step towards automated tuning of large arrays of quantum dots.

I. METHODS AND MATERIALS
The experiment was performed on a GaAs/Al 0.307 Ga 0.693 As heterostructure grown by molecular-beam epitaxy, with a 90-nm-deep 2DEG with an electron density of 2.2 · 10 11 cm −2 and mobility of 3.4 · 10 6 cm 2 V −1 s −1 (measured at 1.3 K). The metallic (Ti-Au) surface gates were fabricated using electron-beam lithography. The device was cooled inside an Oxford Triton 400 dilution refrigerator to a base temperature of 15 mK. To reduce charge noise the sample was cooled while applying a positive voltage on all gates (ranging between 100 and 400 mV) [13]. Gates P 1, P 3 and P 4 were connected to homebuilt bias-tees (RC=470 ms), enabling application of d.c. voltage bias as well as high-frequency voltage excitation to these gates. Frequency multiplexing combined with RF reflectometry of the SDs was performed using two LC circuits matching a carrier wave of frequency 107.1 MHz for SD1 and 86.4 MHz for SD2. The inductors are formed by microfabricated NbTiN superconducting spiral inductors with an inductance of 3.2 µH (SD1) and 4.6 µH (SD2). The power of the carrier wave arriving at the sample was estimated to be -93 dBm. The reflected signal was amplified using a cryogenic Weinreb CITLF2 amplifier and subsequently demodulated using homebuilt electronics. Data acquisition was performed using a FPGA (DE0-Nano Terasic) and digital multimeters (Keithley). Voltage pulses to the gates were applied using a Tektronix AWG5014.

II. SOFTWARE AND ALGORITHMS
The software was developed using Python [1] with SciPy [2].
The image processing is performed in pixel coordinates. We specify the parameters of algorithms in physical units such as mV. The corresponding parameter in pixel units is then determined by translating the value using the scan parameters. By specifying the parameters in physical units the algorithms remain valid if we make scans with a different resolution. Of course making scans with a different resolution can lead to differences in rounding of numbers leading to slightly different results.

A. Determination of the transition values
To determine the transition values we perform the following steps: • Determine the lowvalue (L) and highvalue (H) of the scan by taking a robust minimum and maximum. For L this is done by taking the 1 th per-centile of the values. H is determined by first taking the 90 th percentile of the scan data H 0 and then the 90 th percentile of all the values larger then (L+H 0 )/2. This two-stage process to determine H also works well when the pinch-off occurs for very positive gate voltages. Simply taking for example the 99 th percentile of the scan data could then result in a too low estimate.
• Smoothen the signal and find the first element in the scan larger than .7L + .3H. The position of that value is selected as the transition value.
• Perform several additional checks. The above two steps will always results in a transition value, even though the channel could be completely open or closed. The checks include amongst others: -If the transition value is near the left border of the scan we conclude the transition has not been reached. We then set the transition value to the lowest value of the gate that has been scanned. In principle the algorithm could continue to search for a transition value for more negative gate voltages. However, making gate voltages too negative may induce charge noise in the sample so we do not want to apply very negative voltages. Choosing the most negative voltage of the scan range then turns out to be a good choice. In the next steps of the algorithm, this transition voltage is just a starting value and the gate voltage will still be varied. Due to cross-talk, the neighboring gates in follow-up steps will together with the gate that did not yet close, typically still ensure the formation of single dots.
-The difference of the mean of the measured values left of the transition value and the mean of the values right of the transition value should be large enough. Large enough means more than 0.3 times the standard deviation of all the values in the scan. If it is not large enough, we set the transition value to the lowest value of the gate that has been scanned following a similar reasoning as for the previous check. In this scenario we assume that the scan range started at a voltage around 0 mV, and thus that no significant change in the measured current corresponds to a channel that was always open.

B. Analysis of single dots
As described in the main text the initial analysis of a 2D scan is performed by fitting a tetragon to the image. area. In this scan we search for the Coulomb peaks using a Gabor filter [3,4]. A Gabor filter is a sinusoidal wave multiplied by a Gaussian function. The sinusoidal wave seeks out features that show contrast with their environment. We define G(x, y, λ, θ, ψ, σ, γ) = exp − with x = cos(θ)x + sin(θ)y, y = − sin(θ)x + cos(θ)y. We create a Gabor filter with the following parameters: The orientation is set to θ = π/4, standard deviation of Gaussian σ = 12.5 mV, γ = 1, λ = 10 mV, ψ = 0. A rectangular image patch of size 40 × 40 mV 2 is created using this Gabor function (see inset Fig. 5). The response of the Gabor filter to the 2D scan of Fig. 5 is shown in Fig. 6. 1 From the response figure it is clear that there is a peak (red color) at the location of the Coulomb peak. To extract the precise location of the peaks we threshold the image with a value automatically determined from the response image and determine the connected components, i.e. the pixels that together constitute a relevant feature. The center of the component 1 We use the OpenCV function matchTemplate with method TM CCORR NORMED.
furthest into the direction of the closed region is selected as the best Coulomb peak (green point). The concept of connected components for a binary image is standard in the computer vision community. We find these using OpenCv, see http://docs.opencv.org/3.0.0/d0/d7a/ classcv_1_1SimpleBlobDetector.html, but any implementation will return the same results. If there are more than two Coulomb peaks there are two possibilities: 1. Both peaks are converted into two separate connected components. Then, the blob furthest into the direction of the closed region of the scan is selected.
2. One of the two peaks might be much stronger than the other. In that case the other peak is below the threshold selected by the algorithm and the other peak will be not be visible.
In our experiments we observed that for the single dots at most a couple of Coulomb peaks are visible. Scans of the region of Fig. 5 with a charge sensor instead of the current through the array confirm that the last Coulomb peak visible in the image is indeed the Coulomb peak corresponding to the zero-to-one electron transition. This behavior is typical for this specific gate design and influences the choice for the plunger gate values for the DQD scans such as shown in Fig. 3 to find the single-electron regime, see also section II D.

C. Selection of Coulomb peaks
In this section we describe how the selection of Coulomb peaks for the SD is performed. We start with a scan of the plunger gate SDxb (x is 1 or 2) in a configuration for which Coulomb peaks can be expected. In the The peaks in the data are detected by selecting the local maxima in the plot. All peaks below a minimum threshold are discarded. 2 For each of the peaks the position of the peak half-height on the left and right side is determined. Also the bottom of the peak is determined (see details at the end of this section). From these values we can determine the peak properties such as the height and the half-width of the peak. Finally the peaks are filtered based on the peak height and overlapping peaks are removed (see details at the end of this section) leading to the detected peaks shown in Fig. 8. After this filtering step the peaks are ordered according to a score. For various applications we can define different scores. In this work the SD-peaks are primarily selected for proper charge sensing. For a good charge sensitivity we need a large peak with a steep slope. We then tune the SD to the position at half-height on the left of the highest-scoring peak. The scoring function we used is score = height 2 1 + hw/hw 0 The value of hw 0 is a scaling parameter determining the typical half width of a Coulomb peak. In our experiments we used hw 0 = 10 mV. In our experience, this scoring represents a reasonable trade-off between the height and the slope of a peak. The result is shown in Fig. 9. Details to detect the bottom left of a peak : the xcoordinate of a peak, x peak , has already been determined by selecting the local maxima in the data. To find the x-coordinate of the bottom on the left side of the peak, l, the following steps are performed after smoothing the data: 1. Search for the x-coordinate, x bottom low , of the minimum value (bottom low) in the range [x peak − 3 × thw, x peak ]. The variable thw is a measure for the typical half width of a peak and is set to ∼ 10 mV.

2.
Starting from x bottom low , scan from left to right and select the first datapoint that fulfills the following two conditions: (1) the slope is positive, and (2) the y-value is larger than 'bottom low + 10% of the peak height'.
This method does not require a specific fitting model, and also works well for asymmetric Coulomb peaks.
Details of the filter to remove overlapping peaks: for each peak we have the position of the bottom on the left (l) and the top of the peak (p). For two peaks the overlap is defined using the intersection of the intervals [l 1 , p 1 ] and [l 2 , p 2 ]. The length of an interval L is denoted as ||L||. The overlap ratio is then equal to ||π([l 1 , p 1 ], [l 2 , p 2 ])||/ ||[l 1 , p 1 ]||||[l 2 , p 2 ]||. To make the overlap a bit more robust we use a smoothed version of this formula using Laplace smoothing: When the overlap s between two peaks is larger than a threshold (0.6), then the peak with the lowest score is removed.

D. Tuning and analysis of a double dot
The main text describes how we set the gate values for the tunnel barriers of each double dot using the information of the single dot scans. For the plunger gates of the double dot an extra compensation factor is added. When each single dot is formed, the dot-barrier gate of its neighbor is kept at zero Volt. When next making a double dot, these dot-barrier gates are activated and shift the electrochemical potential of their neighbor, for which we compensate with the corresponding plunger voltage. This compensation factor is determined heuristically. For a double dot with gates L − P 1 − M − P 2 − R the compensation values for P 1, P 2 are (−φR, −φL) , with φ = 0.1. See Table I for an example. In future experiments we plan to use the capacitive-coupling information from the single dot scans in order to create more precise compensation values for the tunnel barrier gates. The exact values of the plunger gates are not very important, since we will make a scan of the double dot using the plunger gates. A good initial guess does reduce the measurement time.
The important structures in the scan of a double dot are the charging lines and the crossings of two charging  lines. To determine the locations of the crossings in the image we create a template for such a crossing. We then search for crossings using template matching. The response to the template is thresholded and local maxima are calculated. The template of the crossing consists of 4 lines at angles π/8, 3π/8, 9π/8 and 11π/8 (radians) that are separated by a distance of 1.5 mV at 45 degrees that represents the interdot capacitive coupling (see inset of Fig. 3 of the main text). The width of these lines ensures that experimentally measured crossings still overlap with the template despite unavoidable small variations in the interdot capacitive coupling and the lever arms between gate voltage and electrochemical potential, which affect the slope of the transitions. The final step consists of checking whether extra charging lines are visible in a region of ∼70×70 mV 2 to the side of more negative gate voltages. The size of this region should be larger than the charging energy of each dot in mV. The topright corner of the 70×70 mV 2 area is located -10 mV southwest of the most bottom-left cross. We slightly extend this region on top and on the right to reduce the probability that a charging line is missed. If the total region falls outside the scan range of the data, the algorithm reduces the size of this region accordingly (alternatively, one could take data over a larger gate voltage range). The algorithm could then draw the wrong conclusion. When the region that results from clipping at the border of the scan range is smaller than 40×40 mV 2 , the algorithm will stop and output that it cannot properly determine whether the single-electron regime has been attained. In the typical case that the region is large enough, we first smoothen the data within this region. We subtract the smoothed data from the original data and check whether the resulting pixel values fall above a certain threshold that is proportional to the standard deviation of the smoothed dataset. If at most one pixel value is larger than the threshold, the algorithm classifies the dataset as 'single-electron regime'.