Qiskit: Membangun Masa Depan Komputasi Kuantum
Kembali ke Artikel

Qiskit: Membangun Masa Depan Komputasi Kuantum

Arif Susilo

Komputasi kuantum bukan lagi sekadar teori fiksi ilmiah. Dengan perkembangan pesat perangkat keras kuantum, kebutuhan akan perangkat lunak yang dapat menjembatani dunia klasik dan kuantum menjadi semakin krusial. Di sinilah Qiskit mengambil peran utama.

Qiskit adalah Software Development Kit (SDK) open-source yang dikembangkan oleh IBM untuk bekerja dengan komputer kuantum pada tingkat sirkuit, pulsa, dan algoritma.

Mengapa Qiskit?

Qiskit memberikan fleksibilitas bagi para peneliti, pengembang, dan pelajar untuk:

  1. Mendesain Sirkuit Kuantum: Membangun sirkuit menggunakan gerbang logika kuantum standar maupun kustom.
  2. Simulasi & Eksekusi: Menjalankan algoritma pada simulator lokal berkinerja tinggi atau pada perangkat keras kuantum nyata (IBM Quantum) melalui cloud.
  3. Analisis Error: Menggunakan noise models untuk mensimulasikan ketidaksempurnaan perangkat keras nyata.

Memulai dengan Qiskit

Qiskit dibangun di atas Python, menjadikannya sangat mudah diakses oleh ekosistem developer yang sudah ada.

Instalasi

Cukup gunakan pip untuk menginstal paket Qiskit:

pip install qiskit

Membuat Program Kuantum Pertama

Mari kita buat salah satu keadaan kuantum yang paling terkenal: GHZ State (Greenberger–Horne–Zeilinger state), sebuah keadaan terbelit (entangled) tiga qubit.

Berikut adalah contoh kode sederhana:

import numpy as np
from qiskit import QuantumCircuit

# 1. Buat sirkuit kuantum dengan 3 qubit
qc = QuantumCircuit(3)

# 2. Terapkan gerbang Hadamard pada qubit 0 (superposisi)
qc.h(0)

# 3. Tambahkan fase kuantum
qc.p(np.pi / 2, 0)

# 4. Buat entanglement menggunakan CNOT gate
qc.cx(0, 1) # Control: qubit 0, Target: qubit 1
qc.cx(0, 2) # Control: qubit 0, Target: qubit 2

# 5. Ukur semua qubit
qc.measure_all()

print(qc)

Kode di atas akan menghasilkan sirkuit yang menciptakan superposisi dan kemudian "mengikat" (entangle) status qubit lainnya ke qubit pertama.

Eksekusi: Sampler & Estimator

Qiskit modern menggunakan konsep Primitives untuk menjalankan beban kerja kuantum:

  • Sampler: Digunakan untuk mendapatkan distribusi probabilitas dari hasil pengukuran (misalnya, menghitung berapa kali kita mendapatkan '000' vs '111').
  • Estimator: Digunakan untuk menghitung nilai ekspektasi dari operator kuantum tertentu, sangat berguna untuk algoritma seperti VQE (Variational Quantum Eigensolver).
from qiskit.primitives import StatevectorSampler

# Jalankan sirkuit menggunakan Sampler
sampler = StatevectorSampler()
job = sampler.run([qc], shots=1000)
result = job.result()

print(f"Hasil Pengukuran: {result[0].data.meas.get_counts()}")

Salah satu kekuatan terbesar Qiskit adalah kemampuannya untuk menukar backend. Kode yang sama yang Anda jalankan di simulator laptop Anda dapat dikirim ke komputer kuantum superkonduktor IBM yang sesungguhnya hanya dengan mengubah beberapa baris konfigurasi layanan.

Transpiler Qiskit akan secara otomatis mengoptimalkan sirkuit Anda agar sesuai dengan topologi dan batasan fisik dari chip kuantum target.


Tertarik untuk menyelami dunia mekanika kuantum? Kunjungi dokumentasi resmi di Qiskit.org atau cek repositori GitHub mereka di Qiskit/qiskit.