Научная статья на тему 'Разработка модели квантового вычислителя'

Разработка модели квантового вычислителя Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
157
56
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Разработка модели квантового вычислителя»

Раздел VI. Вычислительные комплексы нового поколения и нейрокомпьютеры

O.K. Евсеев, СМ. Гушанский, В.Ф. Гузик РАЗРАБОТКА МОДЕЛИ КВАНТОВОГО ВЫЧИСЛИТЕЛЯ

, , последовательного выполнения операций в рамках задачи. Конечно, производительность современных компьютеров высока, но существуют классы задач, принципиально не решаемых при данном подходе - вычислительные задачи экспоненциальной сложности (вычислительные и временные затраты на решение растут экспоненциально сложности задачи). К таким задачам относятся: факторизация больших чисел [2,3], поиск в неупорядоченных массивах данных, взлом криптографических кодов и некоторые другие.

Квантовый вычислитель (компьютер) [1] - вычислительное устройство, работающее по законам квантовой физики и имеющее экспоненциальную производительность за счёт использования эффектов запутанности состояний (entanglement) и квантового параллелизма вычислений.

Вычислитель может быть физически реализован на основе спинов электронов и атомных ядер и их вероятностных характеристик [4]. Результат решения задачи также имеет вероятностный характер, а состояние квантовой системы разрушается непосредственно после его считывания. Под запутанностью состояний подразумевается свойство квантовых частиц сохранять “информационное” взаимодействие друг с другом, даже, если сами частицы физически полностью изоли-.

условиях вызывает изменение состояния всех других частиц, находящихся с нею в состоянии квантовой связи. Данное явление и приводит к квантовому параллелиз-. , -, -

.

Из-за принципиальной разницы в организации вычислительного процесса, квантовый алгоритм отличен от классического. Он задаёт конфигурацию квантовой вычислительной системы, начальные состояния её элементов и набор операто-, . -, ( -- ). В качестве входной информации используются пси-функции, определяющие пространство начальных состояний элементов системы и их вероятности. На выходе имеем результат эволюции системы в виде выходной пси-функции, соответствующей вероятностному результату вычисления.

Квантовый вычислитель даёт принципиальный выигрыш в быстродействии при решении далеко не всех типов задач, поэтому приоритетной целью стало создание как можно большего числа квантовых алгоритмов, расширяющих область его применения. Наличие модели квантовой вычислительной (не физической) системы существенно ускоряет разработку и проверку работоспособности квантовых

алгоритмов, т.к. избавляет от необходимости каждый раз просчитывать поведение .

Предложен ряд способов реализации моделирующих систем [5]: написание закрытых моделей с фиксированным набором возможностей и операций на языках программирования высокого уровня (Delphi, C++); создание открытых библиотек для сред программирования [6] (QDD: A C++ Quantum Computer Emulation Library); разработка “кантовых” языков программного описания систем (QASM [7], Qgol [8]); дополнение стандартных программ моделирования типа Maple “квантовыми” библиотеками [9] (проект OpenQUACS); использование возможностей языков аппаратного описания (*HDL) [10] и т.д.

Так или иначе, подавляющее большинство существующих моделирующих систем базируется на матричном методе, т.к. он практически полностью копирует общепринятое математическое представление квантовых вычислений [2].

Вероятностное состояние квантового бита (рис.1) представляется как вектор-столбец состояния одиночного кубита / (одна из форм записи / -функции квантовой сис-, ): а

,

где а и \ - амплитуды кубита такие, что^2 +|в\2 = 1.

I |2

а соответствует вероятности, что измерение состояния даст “0”, и | в\2 - что “1”. Пример действия оператора на :

/ =

(l)

ах х/ =

~0 і ч/ а|0) "а1°"

l 0^ А . Д 10. .Д|о>.

(2)

где ох - оператор Х-преобразования.

Системы из 2-х и более частиц (рис.2) характеризуются квантовыми связями, для описания которых не достаточно пси-функций исходных подсистем, которые больше не являются обособленными. Пси-функции кубитов системы:

¥г =«1|0) + Д|1) .

1^2 =«2|0) + Л11)

Пси-функция системы:

Суперпозиция состояний системы из 2-х кубит

(3)

/=/=

а. а2

Д А.

а0а2 а Д 2

Да2

ДД

(4)

и-

I*) .

если х= О СГК SCIIU 7. = 1

Пример действия оператора (рис.З) на систему:

Рис.3. Действие оператора

CN =

"l 0 0 0“ а0а2|ш) а0а2|і0)

0 l 0 0 а^ р2 Iі1) = аіД П)

0 0 0 l X Да2100) Да2101)

0 0 l 0 Рі Р2|01> Д1Д2 00)

2l4

Основной проблемой при моделировании больших систем является увеличение размерности матриц пропорционально экспоненте сложности системы, что при больших размерах моделируемой вычислительной системы делает работу эмулятора экспоненциально сложной.

Университетом Мичигана был предложен способ экономии вычислительных ресурсов, получивший название QuIDD (Quantum Information Decision Diagram) [3] и заключающийся в построение модели, оперирующей более оптимальными в смысле скорости обработки списками и правилами их сжатия, а не громоздкими .

Сжатие предусматривает метод “упаковки” матриц, позволяющий хранить только часть матрицы без необходимости её восстанавливать для проведения преобразований. Этот принцип основан на повторяющейся структуре матриц большинства квантовых операторов. В рамках метода матрицы операторов и векторы состояний представляются в виде графов.

QuIDD-

QuIDD- , ,

целиком, а частями, т.к. при больших размерностях матриц это - запредельно

сложная процедура, требующая громоздких алгоритмов. То есть вся матрица разбивается на квадратные блоки по двоичным разрядам индексов элемен-, , матрица имела размерность n х n и большую, чем 2х2 (дая квантовых опера-

n 2), -

рархия блоков будет иметь n уровней. На 1-ом шаге будет получено 4 блока размерностью nхn, на 2-ом - 16 X 4х4, на последнем (&-ом) - kn блоков 2 х2.

, , -сковой структуры матрицы. Вначале строится граф, представляющий 0-ой (верхний) уровень иерархии, т.е. корневая вершина представляет матрицу, промежуточные вершины - индексы порядка 2-1, терминальные вершины - блоки 1-го уровня. Аналогично строятся блоки остальных уровней иерархии. В результате будет получена последовательность блоков матрицы, которую останется только состыковать в единый граф.

Уточним общие правила построения QuIDD-графов [3]:

1. 1 1 .

2. Вершины в графе стыкуются посредством связей “=0” и “=1”.

3. .

4. = .

5. -, .

Рассмотрим применение метода на примере матрицы духкубитового преобразования Адамара [3] (рис.5,6).

ур.0 Ряд индексов (строки и столбцы):

(инд22) 000 0J01 0)10 011 [100 [101 [110 [ill

yp.l Блок 0

(инд 21) 00 01 О [11

Блок 1

00 01 О Ці

ур.2 Блок 00 Блок 01

(инд 2°) 0 1 0 1

Рис. 4.

Блок 10 Блок 11 0 1 0 1

Метод построения QuIDD-графов путём блочного разбиения матриц

Получаем

и=4блоков

і і і і'

2 2 2 2

1 -11 11 -1 2 __2 \2_ 2

11 Р -1

2 2 I 2 2

1 -1 -1 і ^7 2 2 2.

Сп = 0 Сп = 1

Граф

матрицы

(ур.0)

-

НЫ блоки 2 X 2

-

ряющейся структуре матрицы присутствуют 2- :

Рис. 5. Построение QuIDD-гpaфa уровня 0 матрицы оператора

Графы блоков (УР-1)

В соответствии с разработанным методом № блока соответствует 0-ой компоненте индекса

,

- 1-

1 1

2 2

Рис. 6. Построение QuIDD-гpaфa уровня 1 и сборка графа матрицы оператора

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

С1 = 0

С

В итоге, получена матрица из 2-х элементов вместо 16 и ОиГОБ-фаф, хранящий структуру исходной матрицы.

Представление векторов состояний имеет некоторую специфику, но в целом проще. Вначале надо подготовить матрицы (т.е. векторы), далее графы векторов формируются по правилам, применяемым к графам матриц (рис.7).

Граф вектора состояния "1"

0 Г|11>1

_1_ 0 м

о

00

01

I00)

о

10

00

01

10

11

11

будет иметь вид:

Рис. 7. Построение QuIDD-гpaфoв векторов состояний

Отличительная особенность данного метода заключается в том, что при моделировании работы квантовой схемы, представленной РиГОБ-графами, нет необходимости “распаковывать” графы, что увеличит быстродействие модели. Все квантовые преобразования реализуются через операцию преобразования графов.

В отличие от экспоненциального роста затрат на хранение и обработку числового массива (количество хранимых “узлов”), результаты, полученные в [1] (рис.8), указывают на всего лишь сверхполиномиальный рост списковых структур, что значительным образом отразится на производительности моделирующей системы.

На основании проведённой исследовательской работы производится построение модели квантового вычислителя по методике QuIDD. -

стояние моделируемой системы задаётся вводом пси-функций кубитов системы, QuIDD- -

.

определяется квантовой схемой, набираемой из примитивов в редакторе схем. Подразумевается использование шаб-QuIDD- , -

но и их синтез по выведенной методике, в специфических частях схемы. Весь процесс преобразований протекает в терминах графов; результирующая пси-функция транслируется в матричный вид. Помимо результирующей пси-функции, на выходе моделирующей системы предусматривается получение диаграммы временных затрат на моделирование вычисления. Согласно результатам [1], использование методики QuIDD существенно сокращает временные затраты и значительно ускоряет получение решения, что позволит создать высокоэффективную систему моделирования работы квантового .

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Квантовый компьютер и квантовые вычисления // Журнал “Регулярная и хаотическая динамика”, под ред. Садовничего В.А. - Ижевск:, 1999. - 262 с.

2. Риффель Э., Полак В. Основы квантовых вычислений // Журнал “Квантовый компьютер

и квантовые вычисления ”. - М., 2000, т. 1, № 1.

3. Viamontes G. F., Markov I. L., Hayes J. P. High-Performance QuIDD-based Simulation of

Quantum Circuits. / http://arXiv:quant-ph/0309060, v2, 29, Nov 2003.

4. Кокин A.A. Физические реализации квантового компьютера. М.: ФТИАН /

http://elanina.narod.ru/lanina/index.files/student/tehnology/text/kvant.htm#J18

5. Гузик В.Ф., Гушанский С.М. Моделирование квантовых схем // Известия ТРТУ. Специальный выпуск. - Таганрог: Изд-во ТРТУ, №9(53), 2005. - С. 66.

6. Greve David. QDD: A C++ Quantum Computer Emulation Library. /

http://thegreves.com/ david/index.html

7. Chuang Isaac L. Quantum Computation and Quantum Information. / http://ichuang@mit.edu

8. Baker Gregory. Документация к пакету Q-gol / http://www.ifost.org.au/~gregb/q-gol/QgolThesis.pdf

9. McCubbin Chris. OpenQUACS / http://userpages.umbc.edu/~cmccub1/quacs/quacs.html

10. Udrescu Mihai. Using Hardware Engineering in Quantum Computation: Efficient Circuit Simulation and Reliability Improvement / http://www.sigda.org/daforum/abs/38.pdf

С.Ю. Касаев, B.E. Золотовский

СРАВНИТЕЛЬНЫЙ АНАЛИЗ МЕТОДОВ РАНЖИРОВАНИЯ ПРИ ИХ АПАРАТНЫХ РЕАЛИЗАЦИЯХ

При проектировании различных устройств часто возникает проблема сорти. . количество различных методов, которые решают данную задачу. Каждый метод

700000

яЗ 600000

Cl 500000 и

Я 400000

В

g* 300000

CQ

О 200000 О

s 100000

qI---- -г———I-------1-----1-----1------1-----1------N

0 100 200 300 400 500 600 700 800

Рис. 8.

представления оператора обратного преобразования Фурье для N=2n квантовых

i Надоели баннеры? Вы всегда можете отключить рекламу.