Журнал «Компьютерра» № 9 от 06 марта 2007 года - Компьютерра (чтение книг .TXT) 📗
Юрий Ожигов
«КТ» уже столько писала об этом удивительном предмете (впервые еще в 1997 году в номере 224, без малого десять лет назад, а в новостях КК теперь мелькает почти на каждой неделе) что и читатели, и авторы уже выработали у себя в голове некое рабочее представление о квантовом компьютере: там внутри совокупность частиц (кубитов), находящаяся в едином, «запутанном» квантовом состоянии, и эту совокупность постепенно подкручивают в абстрактном квантовом пространстве, то один кубит, то другой, до тех пор, пока она не займет там нужное положение — и тогда все это измеряют, и получают ответ. Чудо в том, что есть задачи, требующие запредельного счета на обычном компьютере, но решаемые (теоретически) очень быстро на КК. Не потому, что КК перемалывает те же биты быстрее, чем просто К. А за счет того, что квантовая система способна каким-то образом одновременно проживать все возможные варианты своего развития — и среди них можно (с хорошей вероятностью) выбрать тот, что кодирует решение требуемой задачи.
Если кого-то не удовлетворяют такие заклинания — надо лезть в книги. Могу поделиться личным опытом. Не так давно я нашел в себе силы разобрать простейший и исторически первый пример квантового вычисления, обгоняющего обычное, классическое. Это пример того, как в квантовом случае можно за одну операцию узнать ответ к задаче, которая в классике требует ровно двух операций. Тем, кто готов затратить время и силы — рекомендую. Производит впечатление! Потому что трюк основан именно на том, что частица одновременно проходит по двум разным путям. И это выражено самой простой, школьной математикой на основе самых-самых азов квантовой механики — самой, в свою очередь, подтвержденной на опыте теорией из всех физических теорий, хотя и неинтуитивной донельзя.
Однако для того, чтобы действительно считать на КК такое, что на классическом компе, даже очень большом, посчитать сейчас невозможно, нужно много кубитов — тысячи, или хотя бы сотни. Их нужно поддерживать в этом страшно хрупком «запутанном» состоянии, да еще и управлять ими. Сейчас уже придумано несколько технологий, которые потенциально могут быть основой для такой машины.
В нашумевшем эксперименте 2001 года, выполненном группой Айзека Чуаня (Isaac Chuang), КК состоял из одной молекулы, а кубитами были ядра входящих в нее атомов (семь штук). Воздействуя на эти ядра радиоимпульсами, удалось реализовать квантовый алгоритм факторизации — представить число 15 как 3х5. Этот подход относится к так называемым ЯМР-технологиям; считается, что много кубитов на них получить вряд ли удастся (сейчас рекорд — то ли 12, то ли 8, по данным разных экспертов).
Вот еще ряд технологий, с которыми активно экспериментируют. Ионные ловушки в полупроводнике — тут уже получены запутанные состояния ионов меди и магния (тоже все в районе десяти штук). Идет работа над кубитами на квантовых точках («искусственных атомах») — это особые зоны, состоящие примерно из миллиона атомов в полупроводнике, а внутри этих зон удерживаются один или несколько электронов. Кубит — пара квантовых точек, значение «ноль» соответствует состоянию «электрон в „левой“ точке», «единица» — электрон в «правой» точке, а в процессе счета — ну, элементарно, часть электрона в одной точке, часть в другой, причем эти части измеряются комплексными числами… Есть еще идея — применить цепочки ядерных спинов, нанометровые структуры в полупроводнике: в канал в кремнии имплантируется 104—106 ионов фосфора, и получается кубит. Наконец, p-контакт — кубит в виде перехода на границе высокотемпературных сверхпроводников, его энергия имеет два минимума (ноль и единица).
Однако все эти технологии нацелены на такую архитектуру КК, где нужно последовательное и очень точное воздействие на отдельные кубиты при сохранении системы в неприкасаемом «запутанном» состоянии абсолютного квантового единства. Добиться выполнения всех этих условий для большого числа кубитов так сложно, что некоторые теоретики уже задумываются, возможно ли это хотя бы в принципе. Поэтому активно идут поиски других архитектур, где требования к точности и к изоляции от внешней среды были бы не такими жесткими.
Несколько лет назад появилась идея адиабатического КК (АКК). Исходные данные задачи кодируются исходным состоянием набора кубитов — тем, которое имеет наименьшую возможную энергию. Потом систему начинают медленно менять. И это состояние минимальной энергии («основное состояние») тоже медленно меняется, но все время остается (по идее) состоянием с минимальной возможной энергией. И в конце концов процесс выруливает к такой конфигурации этого основного состояния, которая и кодирует ответ. Именно эту архитектуру выбрала для своего КК D-Wave.
О достоинствах и подводных камнях АКК во врезке рассказывает Артур Экерт. «Элементная база», на которой работает Orion — решетка размером 4х4 из сверхпроводящих элементов, колец из алюминия и ниобия. "Состояние кубита здесь зависит от наличия или отсутствия магнитного потока через кольцо. Этот поток для таких колец тоже квантуется. Как организовать взаимодействие кубитов? Детали, возможно, известны специалистам по сверхпроводимости; в препринте, на который ссылаются разработчики, речь идет об индуктивной связи через контур", — пояснил нам Юрий Ожигов.
Именно непроясненность принципиальных деталей и разочаровала академическое сообщество, следящее за проектом.
•
В пресс-релизах D-Wave говорится о решении NP-полных задач, таких как составление расписаний авиаперелетов и головоломки судоку. Однако уже давно стало ясно, что с помощью КК скорее всего не удастся эффективно решать такие проблемы. Известно, как с помощью КК экспоненциально ускорить решение некоторых «структурированных» задач — например, факторизации целых чисел. Для NP-полных задач известно лишь, как добиться квадратичного ускорения по сравнению с прямым перебором вариантов. Это фундаментальный момент, который почти никто из писавших о D-Wave в популярной прессе не отметил.
• На вопрос об этом D-Wave отвечает: «все верно, но нас интересуют не точные, а приближенные решения, и не любых NP-полных задач, а только важных для практики». Однако и для таких задач ничто не указывает на возможность радикального ускорения при помощи КК. Для многих NP-полных задач получить приближенный ответ так же трудно, как точный. Более того, неизвестно, будет ли «адиабатический квантовый алгоритм», который D-Wave предлагает использовать, работать на практических задачах лучше, чем классический алгоритм — например, метод имитации отжига (simulated annealing).
• Демонстрация, проведенная D-Wave, сама по себе ничего не доказывает. Глядя на нее, невозможно сказать, не ограничились ли они тем, что построили 16-битный классический компьютер (не по 16-битной архитектуре — а просто состоящий ровно из 16 битов). Задачи, которые были показаны, ничего не стоит решить на обычном компьютере, даже на графическом калькуляторе — и когда об этом говорят, как о «первом коммерческом квантовом компьютере», это комедия какая-то. Вполне возможно, что D-Wave действительно сделала нечто интересное на своих сверхпроводящих кубитах. Но по такой демонстрации экспертам со стороны невозможно это оценить, не зная технических деталей: каково время декогеренции? Каковы перспективы масштабируемости? Увы, именно детали такого рода D-Wave, по-видимому, до сих пор не раскрывает, ссылаясь на озабоченность проблемами с интеллектуальной собственностью. Многие журналисты готовы толковать любые сомнения в пользу D-Wave. Но академический подход возлагает бремя доказательства на D-Wave, и только на нее.