Background & Summary

The maximum independent set (MIS) problem belongs to the computational class of nondeterministic polynomial (NP)-complete problems, the hardest computational problems of no known classical algorithms that are efficient1. For a given graph G(V, E), the MIS problem aims to find the maximum independent set, the largest set among the independent sets, where the independent set I V is defined as a set of unedged vertices, i.e., vi, vjI and \(({v}_{i},{v}_{j})\notin E\). Rydberg quantum simulators are currently one of the biggest quantum computing physical platforms, capable of utilizing up to a few hundred qubits2,3. In particular, the constraint of the independent set is implementable intrinsically with the Rydberg blockade effect that forbids two atoms proximate within a certain distance from being simultaneously excited to the same Rydberg-atom state4,5,6,7. Therefore, a set of atoms arranged to a graph and simultaneously pumped to Rydberg atoms results in a non-adjacent arrangement of Rydberg atoms fulfilling the independent set constraint. In addition, by tuning the Hamiltonian of the atoms to maximize the number of Rydberg atoms, the MIS is achieved by the set of Rydberg atoms in the many-body ground state. In that regards, Rydberg-atom systems could perform adiabatic quantum computation (AQC) for the MIS problem in such a way that a target many-body ground state is prepared adiabatically from an easily preparable initial ground state. There are several recent experiments computing the solution of the MIS problem on the Rydberg-atom system by AQC8,9,10.

Here we provide a set of experimental AQC data of the MIS problem performed on the Rydberg-atom system. We first prepare an 11-by-18 array of optical tweezers. This lattice is identical to the union-jack-like king graph11 recently experimented by Ebadi et al.8, in which its NP completeness on MIS problem has been addressed, as in Fig. 1. The MIS problem embedded on this graph has also been researched theoretically about its possibilities on quantum speedup12,13. On 198 optical tweezer traps, atoms are stochasitcally loaded with about probability of about 50%, and resulting random graphs are used. The size of experimented atom arrays is maximally 141 and on average about 104. Atoms then go through the initial state preparation stage, and the global laser field is applied to drive the total system for AQC. Laser intensity (Rabi frequency) and frequency (detuning) is slowly sweeped from the initial condition, and the initially prepared ground states are turned into the target final state before being measured with the imaging of the post AQC atomic array. There are 45 different experiment sets with different parameters including adiabatic sweep time, initial and final detunings, and for each set of data about 5,000 to 30,000 experiments were repeated. Besides the main data, we analyze major error sources from the measurement, Rydberg state decay, and the atom loss due to the finite temperature of the atoms. The pure effect of the control error scales with respect to the AQC sweeping time of an order of τ−0.54(4), comparable with the earlier reported τ−0.48(2) in Ebadi et al.8. This data could be harnessed for the analysis of adiabatic computing behavior, the exploration of quantum phase transitions (QPT) in the transverse Ising model, and as a reference for conducting benchmark tests of the Rydberg atom approach to optimization problems14.

Fig. 1
figure 1

Image of 198 optical tweezers with its index. Right side of the figure shows the connection between the atoms. The nearest atoms (6 μm) and the next nearest atoms (\(6\sqrt{2}\,\mu m\)) are connected (Rydberg blockade radius rb 10 μm), configuring king graph.

Methods

Atom-array preparation

Rubidium atoms (87Rb) are loaded on to an array of 18 by 11 optical tweezers, with the nearest atom distance of d = 6.0 μm. Figure 2(a) shows the experimental setup. To successfully trap the hundreds of atoms, all 198 tweezer traps are prepared as uniformly as possible. Tweezer traps are generated by Fourier transform of the phase displayed on the spatial light modulator (SLM, ODPDM512 by Meadowlark optics) shown in Fig. 2(a). The initial trap phase was generated with the Gerchberg-Saxton weighted (GSW) algorithm with 100 iterations starting from the uniform trap phase guess15. For a calibration of uniform traps, we measure the intensity of each 198 traps by (1) first image the trap beam itself with the charged coupled device (CCD) (2) resonance scan the amount of a.c. Stark shift of the each trap site with the push-out beam (5S1/2, F = 2 → 5P3/2, F′ = 3). Meausred intensity is used to determine the weight given for each trap while iterating the GSW algorithm as \({w}_{i}=\langle {I}_{i}\rangle /(1-0.7(1-{I}_{i}/\langle {I}_{i}\rangle ))\)16, where Ii is the intensity of the i-th trap. We achieve the standard deviation below 3% based on the atomic resonance. Initially inside the vacuum chamber, the 87Rb atoms are cooled and loaded inside the magneto optical trap (MOT) as an ensemble initially by turning on the anti-Helmholtz coil and the Doppler cooling beam. Optical tweezer beam from the Ti:Sapphire oscillator (TiC of Avesta) with wavelength 813 nm is turned on and atoms are loaded and by polarization gradient cooling (PGC) cooled down to 30 μK inside the optical tweezer. We use objective lens with high numerical aperture (NA) of 0.5 (G Plan Apo 50X of Mitutoyo). Each trap has a beam radius of 1.1 μm, therefore each tweezer has about 1 mK depth in average. The trap depth data of all sites are recorded (see Data Records). The temperature is measured using the release and recapture method17 before the main experiment. The temperature change due to laser conditions of the MOT beam causes different loss rate, which is considered in Technical Validation. Atoms are stochastically loaded in the tweezers with the per-site loading probability 0.5, because of the collisional blockade18, resulting in a random geometry to be experimented for each repetition. Atom lifetime inside the trap is 40 s and the experiment is operated with a repetition cycle of 1 s.

Fig. 2
figure 2

(a) Experimental setup. (b) Experimental sequence. Loaded atoms are imaged initially, then the tweezer is turned off. The Rydberg operation is performed, and the tweezer is turned on, then results are imaged. (c) Adiabatic quantum computing sequence. Rabi frequencies are turned on and off linearly with time tΩ with the maximum value Ω0, and the detuning is swept from Δi to Δf linearly during the time tΔ.

AQC programming of MIS problem

Atoms are prepared in a random graph G(V, E), in which a vertice in V corresponds to each atom and an edge in E corresponds to the van der Waals interaction between a strongly interacting atom pair. To be specific, we regard the atoms within the Rydberg blockade radius rb = (C6/Ω)1/6 10 μm are edged. The nearest neighbor distance is 6 μm, and the next nearest neighbor distance (of diagonal edges) is \(6\sqrt{2} \sim 8.5\,\mu {\rm{m}}\), so the atoms are edged according to the union-jack-like king graph as shown in Fig. 1. Solving the MIS problem on the given graph is the same as finding the many-body ground state of the atom array in the MIS phase. The Hamitonian of the given Rydberg system consists is a transverse anti-ferromagnetic (AF) Ising Hamiltonian, given by

$${\widehat{H}}_{{\rm{R}}yd}=\frac{\Omega (t)}{2}\mathop{\sum }\limits_{i=1}^{N}{\widehat{\sigma }}_{i}^{x}-\frac{\Delta (t)}{2}\mathop{\sum }\limits_{i=1}^{N}{\widehat{\sigma }}_{i}^{z}+\sum _{i,j}{U}_{ij}{\widehat{n}}_{i}{\widehat{n}}_{j},$$
(1)

where Ω is Rabi frequency, Δ is detuning, \({U}_{ij}={C}_{6}/{R}_{ij}^{6}\) is is the distance Rij dependent interaction for \({C}_{6}=2\pi \times 1023\,{\rm{G}}HZ/\mu {{\rm{m}}}^{-6}\), and \({\widehat{n}}_{i}=({\widehat{\sigma }}_{i}^{z}+1)/2\) defined for a psedo-spinor system of \(g=5{S}_{1/2},F=2,{m}_{F}=2\) and \(r=71{S}_{1/2},{m}_{J}=1/2\). The hamiltonian is driven and controlled with the two-photon transition of 780 nm and 480 nm beams. For Ω = 0, Δ < 0, the many-body ground state is the paramagnetic gN. When Ω = 0, 0 < Δ < Udiag, the many-body ground state is in the MIS phase10.

The experimental sequence diagram, which includes AQC, is depicted in Fig. 2(b). AQC takes place when the optical tweezers are turned off, and photographs are taken of each randomly configured graph along with the final results both before and after the AQC process. We program our AQC to sweep the atom array from the paramagnetic \({| g\rangle }^{\otimes N}\) phase to the MIS phase. Initially, we prepare the initial ground state gN by optical pumping. Then we take three passages, as in Fig. 2(c), changing (Ω, Δ) from (1) (0, Δi) → (Ω0, Δi) for tΩ, (2) (Ω0, Δi) → (Ω0, Δf) for tΔ, and (3) (Ω0, Δf) → (0, Δf) for tΩ while turning off the trap. For our experiment, we fix tΩ = 0.3 μs and Ω0 is position dependent along the y-axis of the lattice because the beam is Gaussian, and the values of Ω0 for different positions are calculated from Rabi freuqency measurements as in Table 1 (see Technical Validations). We then turn off the trap for 6.5 μs for an AQC experiment. There are 45 distinct experiments characterized by varying tΔ, Δi, and Δf, each having data of 4,000 to 30,000 repetitions. The experiments are summarized in Table 2. For the all 45 experiments, the final detuning Δf is larger than 0 and smaller than the diagonal interaction Udiag = C6/(8.5 μm)6 = 2π × 2.7 MHz, satisfying the MIS conditions.

Table 1 Average y pixel and Rabi frequency for each of 11 rows.
Table 2 Initial, final detunings, detuning sweep time, prg number, and repetition number of the experiment.

Identification of random atom array and AQC measurement

To obtain the information of the initial atom array and the AQC result, two images of the atom array embedded in the tweezers Fig. 3(a) are captured in each experimental iteration using the electron-multiplied charged coupled device (EMCCD, iXon Ultra 888 by Andor). The first photo, e.g., in Fig. 3(b), is taken following array preparation, where atoms are loaded randomly and the second photo, e.g., in Fig. 3(c), is taken after the AQC process. During each image taking, the fluorescence of each trap site is analyzed to determine whether an atom is trapped inside the optical tweezer. Discriminating between the photon counts of trapped and non-trapped atoms provides digitized data for the experiment, as in Fig. 3(d). Notably, for the second photo taken after AQC, the trap is activated before the photograph, causing atoms in the Rydberg state to be anti-trapped from the optical tweezers. Therefore, the remaining atoms in the second photo are considered to be in the ground state g, while the disappeared atoms are regarded as being in the Rydberg state r.

Fig. 3
figure 3

Data processing of quantum computing data (a) Initial 198 optical tweezer sites (b) Atoms are randomly loaded into tweezer with a probability of  0.5 (c) Atoms after the AQC. Rydberg atoms are anti-trapped. (d) Digitize the prepared array (circles) and the Rydberg atoms (filled circles) with the images from (b) and (c). (e) Classify the graph into connected components (colored if connected) (f) List all connected graphs, same sizes linked by the linked list structure, where each node contains a graph, exact MIS solution, experimented MIS solutions (by the list), and the graph hash.

Data Records

The compilation of 45 distinct experimental parameters can be found in Table 2. The complete dataset, including codes for analyzing data, is accessible through the figshare data repository19.

For the seperate links; Raw image data https://doi.org/10.25452/figshare.plus.24503680 for experiments 1 to 30, and https://doi.org/10.25452/figshare.plus.24523198 for experiments 31 to 45. Additionally, the raw images for release-and-recapture measurements and Rabi frequency calibration are available at https://doi.org/10.25452/figshare.plus.24540988. Fluorescence data, trap position data, and trap depth data can be accessed through https://doi.org/10.6084/m9.figshare.23828004. The GraphTable data, which is explained below, is provided at https://doi.org/10.6084/m9.figshare.23911413.

The primary data is provided in the form of ‘.tif’ and ‘.mat’ files, including raw image files, fluorescence data for each atom, and digitized data for each atom. Raw image files are in TIF format, constituting a list of image files structured as a three-dimensional array. The first two dimensions denote the image, while the third dimension represents the stack of images across experimental repetitions. Due to the substantial file size, raw data is segmented into multiple files for the same experiments, named as ‘Exp{Exp#}_X{#}.tif’, where Exp# corresponds to the experiment index in Table 2, and # is assigned in sequential order. Fluorescence data and digitized data are stored in MATLAB data files, featuring the three-dimensional array variables ‘fluoAreshape’ and ‘fluodigreshape,’ alongside the variable ‘threshold,’ which establishes the threshold for fluorescence data digitization following the outlined methods. The 3D array data in ‘flouAreshape’ and ‘floudigreshape’ is organized as follows: the first dimension denotes each tweezer, the second dimension signifies the two photographs of each repetition, and the third dimension corresponds to the number of experiment repetitions. For instance, in MATLAB language, extracting the 2D array of the experiment for the first repetition from ‘fluodigreshape’ is achieved by using ‘squeeze(fluodigreshape(:,:,1))’. The first column of this array presents digitized data from the first photo, while the second column represents data from the second photo. A value of ‘1’ indicates that the atom is trapped, while a value of ‘0’ signifies that the atom is not trapped. Consequently, in the second column, a ‘1’ implies measurement in the ground state g, whereas a ‘0’ signifies measurement in the Rydberg state |r

The data for the |g → |r SPAM error is labeled as ‘SPAM{Prg, SPAM#}’, encompassing both the raw image file in ‘.tif’ format and the data file in ‘.mat’ format. The image file contains experiments related to release and recapture data, while the MATLAB data file incorporates variables such as ‘fluoAreshape’, ‘fluodigreshape’, along with two one-dimensional arrays, namely ‘Prg’ and ‘counts’. Within the MATLAB data, ‘Prg’ captures the measurement error of |g → |r for each atom, as determined by the release and recapture method (see Technical Validation). The ‘counts’ array stores the counts associated with the measurement of each ‘Prg’ data. It is noted that prg, SPAM# serves as the index for prg, SPAM data, varying across experiments due to distinct cooling laser conditions (see Technical Validation). The trap depth data is provided in a 1D MATLAB file named ‘trap_depth.mat’, featuring an array with the same name. Each value in this array corresponds to the a.c. Stark shift of each trap site. For instance, the initial value, 17.6691, signifies that the first trap site has an a.c. Stark shift of 2π × 17.6691MHz. The raw data for Rabi frequency calibration (see Technical Validation) is contained in the image file ‘RabiFrequencyCalibration.tif’, while its processed data can be found in the MATLAB file ‘RabiFrequencyCalibration.mat’.

We organize both the exact solution and the experimentally obtained solutions for each randomly configured (isomorphic) graph. Initially, the graphs are categorized into connected components, as illustrated in Fig. 3(e). Subsequently, for each connected graph, the exact solutions are determined using the ‘MISSolver.py’ code (see Code Availability). The resulting data is structured in a table implemented as a linked list class named ‘GraphTable’, and stored within the Python script ‘GraphTable.py’ (Fig. 3(f), see Code Availability). The instances of the generated ‘GraphTable’ are then saved by the pickle module of Python under the file name of ‘ExpExp#.pkl’. Each ‘GraphTable’ instance represents a Python list of the linked list class ‘GraphLinkedList’ (saved in ‘GraphLinkedList.py’, see Code Availability), arranged according to the graph size. |G| Within each ‘GraphLinkedList’, there exists a linked list pertaining to the same graph size |G|. Each instance of the node class (‘GraphNode’) encapsulates the data of each isomorphic graph, comprising the graph structure, exact solutions, and a Python list detailing the experimented solutions.

Technical Validation

In Fig. 4(a), the histogram illustrates log events organized by both the graph size G and the corresponding errors δG for each graph G in Experiment 10 as an example. The error δG for a given graph G is calculated as the difference between the exact MIS solution and the experimental MIS solution (Rydberg excitation number). The major error sources in the AQC include the state-preparation-and-measurement (SPAM) error and the control error. In the technical validation section, we assess the SPAM error’s magnitude and establish the validity of our data by analyzing the behavior of the control error while varying the sweep speed and final detuning of the AQC. SPAM errors are single-site bit-flip errors following a binomial distribution. Consequently, their effect on the MIS solution of the graph G(V, E) is, on average, proportional to the graph size |G| itself. In the quasi-adiabatic regime, the control error adheres to the quantum Kibble-Zurek mechanism (QKZM)2,20,21,22,23, which is also proportional to the graph size |G|. Thus, the overall error in the graph G(V, E) can be modeled on average as \(\langle {\delta }_{G}\rangle =(\alpha {p}_{gr}-(1-\alpha ){p}_{rg})|G|\), where α represents the average solution ratio, and pgr and pgr denote the error rates for transitions from \(\left|r\right\rangle \to \left|g\right\rangle \) and \(\left|g\right\rangle \to \left|r\right\rangle \), respectively.

Fig. 4
figure 4

Figures for technical validation (a) Plot of log events with regards to the graph size \(| G| \) and the error \({\delta }_{G}\) for ‘Exp10’. Here the error \({\delta }_{G}\) is the difference between the exact MIS solution and the experimented MIS solution. (b) Rabi frequency for each y pixel. Average values for each row are given in Table 1. (c) Measurement of Rydberg state decay time. Rydberg probability after π pulse and a time t is measured. (d) Calibration for initial detuning Δi. From the sequence of Fig. 3(c), the sequence (2) is deleted, and Δf = Δi for the calibration experiment, is expected to have no loss. Shaded region of Δi and tΩ = 0.3 μs are used for our main experiment, where loss probability is small. (e) Control error parameter CE as a function of sweep rate s. Fitting for s > 7.5 MHz/μs gives u = 0.54(4) comparable with the value from other group 0.48(2)8.

Rabi frequency for each atoms

Due to the finite radius of the Gaussian Rydberg beam, the Rabi frequencies of individual atoms exhibit variations. To see the difference of Rabi frequencies among atoms, we measure the Rabi frequency on 25 atoms, each positioned sufficiently far apart to ensure independence (with a minimum distance of 17 μm, where rB = 10 μm). The Rabi frequency for each y axis position is determined through fitting based on this data, allowing us to calculate the Rabi frequency for the 198 atoms in the main experiment as in Fig. 4(b). Additionally, we provide the average calculated Rabi frequency for each of the 18 rows of the experiment in Table 1 for reference. In the subsequent discussion on control error, we do not account for the differences in control error resulting from varying Rabi frequencies but instead focus on the average control error.

SPAM errors

SPAM errors originating from |r → |g (pgr, SPAM) and |g → |r (pgr, SPAM) stem from distinct sources. The SPAM error from |r → |g (pgr, SPAM) is predominantly attributed to the decay of the Rydberg state. Conversely, the error from |g → |r (pgr, SPAM) primarily results from atom loss in the trap, stemming from factors such as the finite temperature of atoms and non-resonant scattering, among others24. To characterize these errors, we initially examine the overlap of the fluorescence data at each atom site. Subsequently, we measure the Rydberg decay time, and finally, we directly measure the loss rate by releasing the atom and subsequently recapturing it.

For the measurement of the Rydberg decay time T1, we initiate a π pulse, followed by a wait period of t, and then apply another π pulse. By varying the duration t, we observe the decay of the measurement, as depicted in Fig. 4(c). Fitting the data with the model \({e}^{-t/{T}_{1}}+c\), we obtain T1 = 49(18)μs. While ideal theoretical considerations, accounting for black body radiation, suggest a lifetime of approximately 150 μs25, realistic errors have led to similar values, with other groups reporting T1 = 50(8) μs26. For our experiment, where the trap is turned off for 6.5 μs, we can calculate \({p}_{gr,{\rm{S}}PAM}=1-{e}^{-6.5/49(18)}=0.1{2}_{-0.03}^{+0.06}\).

To directly measure the atom loss rate stemming from factors like finite temperature and non-resonant laser scattering, the release and recapture method is employed17. After trapping the atom, we turn the trap off for a duration of 6.5 μs, aligning with the trap turning-off time in the main experiment. Subsequently, the atom is recaptured by reactivating the trap laser. The recapture rate is measured, and the loss rate prg, SPAM is determined as 1 minus the recapture rate. Three distinct prg, SPAM measurements (prg, SPAM # in Table 2) are presented, reflecting variations in cooling laser power conditions leading to different Polarization Gradient Cooling (PGC) rates and, consequently, distinct loss rates. In each instance, the mean loss rates are 0.0730, 0.0877, and 0.0966, respectively. The data for these three different loss rate measurements are also provided for each atom under the name ‘SPAM#.mat’ (see Data Records). To characterize the potential nonuniformity in the total optical tweezer array, which could result in a nonuniform atom loss rate for each trap site, the trap depth is measured for each tweezer site. The trap depth data is available in the ‘trapdepth.mat’ file, presented in frequency units (MHz).

Control errors

Early stage control error measurement for t Ω and Δi

To validate that our data exhibits minimal errors during the initial sweep of the measurement, we conducted experiments as depicted in Fig. 4(d). During this process, the laser is both turned on (ramping Ω from Ω0 to 0) and turned off (ramping Ω from 0 to Ω0) while maintaining a fixed detuning at the initial value Δi. In the absence of control errors during this stage, there should be no atom loss as the system returns to its initial condition. We varied the detuning from −4.4 MHz to 6.6 MHz with increments of 1 MHz and adjusted the ramping time tΩ from 0.1 μs to 1 μs with a step size of 0.1 μs. The loss probability is calculated as one minus the ratio of remaining atoms compared to the initially captured atoms. For the main experiment, we selected tΩ = 0.3 μs and Δi = −4.4 MHz and −4 MHz, as these parameters yielded the lowest loss probabilities among the considered parameters. Therefore, we can affirm that our main experiment is robust to early-stage control errors.

Control error estimates from the main experiment data

Control errors are investigated by conducting experiments with varying sweep rates in the sequence. The control errors in our experiment align with the universal scaling predicted by the Quantum Kibble-Zurek Mechanism (QKZM) in relation to the sweep speed. The sweep speed s is defined as s = (Δf − Δi)/tΔ, where tΔ is the detuning sweep time. Experiments 1 to 25, 26 to 35, and 36 to 45 can be grouped into experimental sets to examine control errors by altering specific parameters (s or Δf) while keeping others constant. The average total error is modeled as previously, \(\langle {\delta }_{G}\rangle =(\alpha {p}_{gr}-(1-\alpha ){p}_{rg})| G| \). This linear behavior can be observed in the initial segment of Fig. 4(a) (red line). We can now express the equation as follows:

$$CE\equiv \alpha {p}_{gr,{\rm{c}}ontrol}-(1-\alpha ){p}_{rg,{\rm{c}}ontrol}=\frac{\langle {\delta }_{G}\rangle }{| G| }+\left((1-\alpha ){p}_{rg,{\rm{S}}PAM}-\alpha {p}_{gr,{\rm{S}}PAM}\right)$$
(2)

We introduce the control error parameter CE to represent the second term of the equation, which characterizes the control error value in the experiment. The value CE can be computed using the last term of the equation, which is accessible through experimental data. The average solution rate, denoted as α, can be calculated from the exact solutions for each graph obtained in the experiment, with a fixed value of regardless of the sweep speed. The value \(\langle {\delta }_{G}\rangle /| G| \) represents the slope of the red line in Fig. 4(a) and varies with the sweep speed. Figure 4(e) illustrates the plot of CE for all experiments, where various sweep rates s were explored. In this context, it is clear that when Δf is held constant, the control error in our data follows the anticipated pattern: the control error diminishes for smaller sweep speeds s or extended annealing times s−1, while it escalates for larger sweep speeds s or abbreviated annealing times s−1. Furthermore, we can fit the control error as a function of the sweep rate s due to QKZM, yielding CEsμ with μ = 0.54(4) for the fitting range s = 7.5MHz/μs to 60MHz/μs. This value is in line with earlier research, which reported μ = 0.48(2) using the same lattice (supplementary of Ref. 8). We note that the slope values \(\langle {\delta }_{G}\rangle /| G| \) and the ratio α are obtained by using |G| < 50 data.

Usage Notes

The dataset is accessible using MATLAB. Python users can access the data using the scipy.io.loadmat function within the scipy library. Analysis of randomly generated graphs can be performed using the ‘networkx’ library in Python. The data can be grouped from 1 to 18, 19 to 25, 26 to 35, and 36 to 45, considering that only one parameter differs within each group.