EffectiveQM is an effective local search algorithm for solving qubit mapping problems. This repository contains the entire code implementation of EffectiveQM, the device coupling graph used in the experiment, the quantum circuits, full versions of the tables from the paper, and other data and tables related to the paper and EffectiveQM.
sh build.sh
By executing the script file, the user can build an executable of EffectiveQM in the repository root directory. Please note that this script should be run on 64-bit GNU/Linux OS. EffectiveQM is cross-platform, for other OS, please follow the Makefile in the src directory to build it by yourself.
The command to run EffectiveQM once is as follows:
./EffectiveQM [RANDOM_SEED] [RESULT_FILE_PATH] [DEVICE_NAME] [DELTA] [THETA] [LAMBDA] [QASM_FILE_PATH]
DEVICE_NAME is the parameter used to specify the quantum device, and its enumerated values are listed in the following table:
value | device in paper |
---|---|
TOKYO |
IBM Tokyo |
Q16 |
Q16 |
GUADALUPE |
IBM Guadalupe |
ROCHESTER |
IBM Rochester |
torino |
IBM Torino |
SYCAMORE |
Google Sycamore |
./EffectiveQM 1 log.txt TOKYO 5 5 500 ./benchmarks/4gt13_92.qasm
Running this command will call the EffectiveQM
program, using 0
as random seed and set the hyperparameters ./benchmarks/4gt13_92.qasm
quantum circuit on the IBM Tokyo
device, and store the resulting in the ./log.txt
file.
The directory named src/
includes the implementation of EffectiveQM.
The directory named benchmarks/
contains all testing benchmarks' qasm files.
As mentioned in the paper, the main competitors of EffectiveQM are ILS, SAHS, FiDLS, Qiskit, Tket, QMAP and TB-OLSQ2. Their codes can be obtained from the following link.
-
FiDLS: https://github.com/BensonZhou1991/Qubit-Mapping-Subgraph-Isomorphismr
-
TB-OLSQ2: https://github.com/WanHsuanLin/OLSQ2
Among them, for the three stochastic algorithms ILS, SAHS and Qiskit, we have slightly modified the implementation of the random number generation part of them for generating reproducible experimental results.
As we mentioned in Section V of the paper, we did not show the experimental results for EffectiveQM and SAHS due to space limits. To this end, we have placed the complete table containing the SAHS in the repository.
The directory is organized as follows:
- full_table: Provides PDF file containing the original tables of the paper after added SAHS.
The directory result/
contains the raw data after preliminary statistics.
73BE
The directory is organized as follows:
- original_data: Provides the original experimental results of EffectiveQM, ILS, SAHS, FiDLS, Qiskit and Tket on all devices.
-
table: Provides collated experimental data against tables in the paper.
- comp: Comparison data between EffectiveQM and all competitors.
-
abalation: Provides data for ablation analysis experiments.
- abalation_for_Potential_Guided: The experimental data of the ablation analysis of Potential-guided scoring Function, that is, the comparative data of the Alt-2 version in the paper.
- abalation_for_Mode_Aware: The experimental data of the ablation analysis of Mode Aware, that is, the comparative data of the Alt-1 version in the paper.
- hyper-para: Experimental data for hyperparameter analysis experiments.
-
discussion: Experimental data for discussion experiments in paper.
- discussion_on_bridge: Experimental data for discussion of Bridge effectiveness.
- discussion_on_more_benchmark: Experimental data discussed for more benchmark sets (i.e., RW, QUEKNO, and QV).
The directory example
contains examples of mode-aware search strategies from Section IV-B of the manuscript.
The directory is organized as follows:
- example.txt: Provide the complete examples mentioned in Section IV-B of the manuscript.
- readme.md: Provide a detailed readme document to explain how to interpret the examples.