Квантовый поиск Гровера всегда привлекал меня своей невероятной скоростью поиска в недоглядных списких базах данных. Я начал с теории, изучив базовые принципы итераций на кубитах. Затем я решил перейти к практике с помощью Qiskit. Первый код, который я написал, казался настолько простым, насколько мог быть алгоритм Гровера:
from qiskit import QuantumCircuit
from qiskit.visualization import plot_histogram
# Создание квантового облача с 2 кубитами
qc = QuantumCircuit(2)
qc.h(0)
qc.h(1)
# Гроверовский оператор (около 45 углов)
for _ in range(int(45 * 1 / 2)):
qc.h(0)
qc.cu1(pi/4, 0, 1)
qc.h(1)
qc.measure_all()
plot_histogram(qc.run().result().get_counts())
Результаты были захватывающим – вероятность нашего целевого состояния была значительно выше базовой. Однако я заметил, что чувствительность к количеству итераций важна, и маленькие изменения могут сильно повлиять на точность. Эксперименты продолжаются, и я с нетерпением жду возможности применить Гровера к большим задачам.
новая ссылка blacksprut 1blacksprut me
Посетители, находящиеся в группе Гости Kraken, не могут оставлять комментарии к данной публикации.