MQT IonShuttler

The MQT IonShuttler is a tool for generating shuttling schedules for trapped-ion quantum computers with a grid-type Memory Zone based on the Quantum Charge Coupled Device (QCCD) architecture. It is developed as part of the Munich Quantum Toolkit (MQT).

We recommend you to start with the installation instructions. Then proceed with the sections below. If you are interested in the theory behind the MQT IonShuttler, have a look at the publications in the publication list.

We appreciate any feedback and contributions to the project. If you want to contribute, you can find more information in the contribution guide. If you are having trouble with the installation or the usage of MQT QuSAT, please let us know on our support page.

Overview

The MQT IonShuttler supports

  • exact shuttling schedules for small architectures with a single processing zone (PZ), and

  • heuristic shuttling schedules for larger devices with one or multiple processing zones.

(a) Potential QCCD device with four processing zones (b) Corresponding interaction graph

Figure 1: (a) Potential QCCD device with four processing zones; (b) corresponding graph abstraction.

The exact solution guarantees optimality but is limited to a single PZ, while the heuristic method scales to many qubits and PZs. In the heuristic workflow, an optional compilation feature (use_dag) allows for dynamic rescheduling of gates based on the current ion positions and dependencies, potentially reducing shuttling overhead compared to executing a fixed sequence.

Usage

Exact Solution (single PZ)

(.venv) $ mqt-ionshuttler-exact --help
(.venv) $ mqt-ionshuttler-exact inputs/algorithms_exact/qft_06.json

The script supports an additional --plot argument to visualise the result. Architectures and algorithms are specified in JSON files. For examples, see inputs/algorithms_exact.

Heuristic Solution (single & multiple PZs)

(.venv) $ mqt-ionshuttler-heuristic --help
(.venv) $ mqt-ionshuttler-heuristic inputs/algorithms_heuristic/qft_60_4pzs.json

Architectures and algorithms are specified in JSON files. For examples, see inputs/algorithms_heuristic.

Contributors and Supporters

The Munich Quantum Toolkit (MQT) is developed by the Chair for Design Automation at the Technical University of Munich and supported by the Munich Quantum Software Company (MQSC). Among others, it is part of the Munich Quantum Software Stack (MQSS) ecosystem, which is being developed as part of the Munich Quantum Valley (MQV) initiative.

MQT Banner
MQT Banner

Thank you to all the contributors who have helped make the MQT IonShuttler a reality!

The MQT will remain free, open-source, and permissively licensed—now and in the future. We are firmly committed to keeping it open and actively maintained for the quantum computing community.

To support this endeavor, please consider: