В одной из закрытых тем нашел такой пример от
george66 (пояснение принципа работы квантового компьютера):
Цитата:
Лично мне помогла вероятностная аналогия. Возьмём 50 обычных битов, получим
возможных комбинаций. Если на пространстве состояний задано распределение вероятностей, это будет
действительных чисел (вероятностей). Среди всех распределений вероятностей есть небольшое подмножество разложимых, которые делаются так: задаём вероятности
того, что наши биты принимают значение 1 (для каждого бита своё число), тогда вероятности всех
комбинаций легко вычисляются. Далеко не все распределения вероятностей разложимы! Для разложимого надо задать 50 чисел, а для произвольного
! В квантовой механике вместо вероятностей комплексные числа (амплитуды), но в остальном всё то же самое. Задаём исходные 50 чисел
. Проделываем над битам какие-то вычисления, получаем один из
возможных ответов, вероятности их легко вычислить. А затем фокус: проводим такое измерение, что ответ будет зависеть от всех
возможных результатов (классически это невозможно). Для этого выбираем в пространстве состояний произвольный базис (формально это
векторов, но реально чисел надо гораздо меньше, поскольку вектора берём разложимые)
Правильно ли понимать это так:
Упростим пример и представим, что есть задача, входными данными для которой является N-битный вектор
. Требуется получить "среднее" решение задачи, полученное, как некоторая взвешенная сумма всех решений задачи для всех векторов
. Если мы по какой-то причине используем не последовательный, а случайный перебор векторов
, то корректное "среднее" решение задачи будет получено в пределе, если мы берем вектор
так, что вероятность состояния любого его бита равна
.
Классический компьютер либо должен решить все
задач последовательно, либо решить достаточно большое количество случайных задач из этой области, а затем усреднить результаты решения по заданному алгоритму взвешенной суммы. Квантовый компьютер получает средневзвешенный результат в одно действие. Это достигается тем, что он на самом деле вычисляет гораздо меньше классического компьютера, но точно в заданном направлении. Он не решет ни одной частной задачи, чтобы затем просто взять среднее, отбросив таким образом горы бесполезных вычислений. Если бы он так делал, то был бы не быстрее классического компьютера. Он сразу же вычисляет средний результат в обход решения частных задач. Нельзя даже сказать, что квантовые вычисления - это увеличение скорости классических вычислений. Скорее, это совсем другие вычисления, которые позволяют получать ответы совершенно другим путем.