Scientific journal
Modern problems of science and education
ISSN 2070-7428
"Перечень" ВАК
ИФ РИНЦ = 0,931

DESIGN OF OPERATORS OF PHYSICAL QUANTITIES IN MATLAB

Kalmychkov V.A. 1 Kurganskaya L.V. 2 Shestova E.A. 3 Egoshin A.V. 4 Shumkov D.S. 4
1 Saint-Petersburg State Electrotechnical University
2 Institute of Control Sciences of Russian Academy of Sciences
3 Southern Federal University
4 Volga State University of Technology
В статье приводится подход моделирования квантовых состояний, определяющих свойства некой аб-страктной системы, средствами среды проектирования и моделирования Matlab, а также средствами инструментального пакета Simulink, входящего в состав данной среды. Описывается представление квантовой системы двумя способами: в виде векторов состояний и в виде матриц плотности. Рассматри-ваются унарные, бинарные и тернарные логические операции над кубитами, называемые квантовыми преобразователями. Описан процесс задания кубитов, способ их визуализации, применение квантового преобразования к кубитам и визуализация результатов работы преобразователей в среде Matlab. Разра-ботана модель, которая показывает применение двухкубитного преобразователя контролируемое НЕ (CNOT) с последующей визуализацией результата его работы в системе визуального моделирования Simulink. Сделаны выводы о применимости сред Matlab/Simulink к задачам моделирования квантовых систем.
The article provides an approach of modeling quantum states which determine the properties of an abstract system, means the design and simulation environment Matlab, as well as means of instrumental package Simulink. Describes the representation of a quantum system in two ways: in the form of the state vector and in the form of density matrices. Considered unary, binary and ternary logical operations on qubits, called quantum converters. The process of assignment of qubits, the method of imaging, the use of quantum transformation to qubits, and visualization of results of converters in the environment Matlab are described. Developed a model that shows the use of the converter two qubits converter controlled NOT (CNOT), followed by visualization of the results of his work in the visual simulation system Simulink. Conclusions are drawn on applicability of the Matlab/Simulink environments to problems of modeling of quantum systems.
Hilbert space
quantum converter
qubit
modeling

Введение

Активное вторжение в область нанотехнологий должно сочетать рассмотрение вопросов, связанных с подготовкой вычислительной среды на атомарном уровне, с представлением различных аспектов классических и неклассических алгоритмов, обеспечивающих возможность эффективного использования такой среды. В этом случае в качестве языка спецификаций и средства описания неклассических алгоритмов может быть использован формализм алгебры гильбертова пространства [4], позволяющий представить совместно описание и своеобразную декомпозицию на элементарные операции. Первые предложения по квантовой логике были сделаны Биркхофом и фон Нейманом [3]. Согласно их подходу, ставшему классическим, значение элементарных экспериментальных положений квантовой теории расценивается как определенные подходящие наборы состояний квантовых объектов. Так как эти наборы должны удовлетворить некоторым специальным замкнутым условиям, то в структуре традиционной квантовой логики положения могут быть адекватно интерпретируемы как подпространства гильбертова пространства, связанного с исследуемой физической системой.

В классической теории состояние определяется заданием всех координат и скоростей составных частей системы в определенный момент времени. В квантовой теории квантовое состояние – это полный набор данных (физических величин), определяющих свойства системы. Какие именно данные определяют состояние – зависит от конкретной системы. Так как состояние – совокупный набор данных, то можно сказать, что состояние есть объект типа «вектор» в Гильбертовом пространстве.

Простейшим является пространство двух базовых состояний – квантовый бит (кубит). В квантовой теории информации кубит определяется как единица квантовой информации, аналогично тому, как бит определяется как единица в классической теории информации.

Главным отличием квантового двухуровневого элемента (кубита) от классического бита с двумя булевыми состояниями 0 или 1, принимаемыми с вероятностями либо P(0) = 1, либо P(1) = 1, является способность кубита находиться одновременно сразу в обоих своих базисных состояниях, т. е. образовывать когерентную суперпозицию базисных квантовых состояний, которая в случае чистого (когерентного) квантового состояния описывается одним из двух эквивалентных способов, а именно:

а) вектором состояния (это спинор первого ранга в двумерном гильбертовом пространстве состояний, в котором базисные векторы состояний играют роль единичных ортогональных векторов – ортов), представляемым двухрядной матрицей-столбцом: , , где – комплексные амплитуды, , – вероятности, с которыми спин находился в базисных состояниях и (для записи векторов используется нотация Дирака). Вектор состояния характеризуется тремя независимыми вещественными параметрами (по 2 вещественных числа на и без одного, обусловленного наличием ограничения );

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

, , где – знак эрмитова сопряжения.

Если квантовая система описана с помощью матрицы плотности [1], то при переходе к классике у матрицы плотности пропадут недиагональные элементы и .

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

Пусть базисные состояния и представлены в виде двух векторов: и . Тогда для двух векторных бит в общем случае могут быть получены следующие 4 состояния, определяющие ортогональный базис: .

Например, при использовании этой формы записи одно из состояний формируется как .

Набор N кубитов составляет квантовый регистр. Регистр, в общем случае, также подчиняется принципу суперпозиции и находится одновременно во всех своих базовых классических состояниях, число которых . Произвольное состояние регистра записывается в виде . Общее состояние такой системы кубитов описывается тензорным произведением входящих в нее кубитов. Для матриц произведение Кронекера (тензорное) выполняется по правилу: .

Любая логическая операция с кубитами называется квантовым вентилем (преобразователем). По числу кубитов преобразователи делятся на одно- и многокубитные. Преобразователь переводит одно состояние регистра в другое. Физически реализуемые преобразователи соответствуют унитарным операциям с волновой функцией регистра. Из унитарности оператора следует его обратимость. Для демонстрации действия квантового преобразователя на кубиты используют матричную запись унитарного оператора [5].

В теории классических вычислений показано, что любую логическую операцию можно представить как совокупность базовых операций, например, парой NOT и XOR. Аналогично в квантовом случае: любую обратимую унитарную операцию можно представить, например, как один трехкубитный преобразователь Тоффоли (CCNOT) или Фредкина (CSWAP) или одно- и двухкубитный преобразователи (например, NOT и CNOT). Примеры квантовых преобразователей приведены в [2].

Однокубитные состояния могут быть выражены как векторы в пространстве, и в этом представлении есть пространственные вращения:

по оси x: , по оси y: , по оси z: .

Однокубитный преобразователь NOT.

Действие преобразования Адамара (H) на каждый его вектор приводит к новому состоянию, которое фиксирует изменение положения вектора после преобразования:

.

Примерами двухкубитных преобразователей является преобразователи контролируемое НЕ (CNOT) и SWAP, который обеспечивает обмен содержимым между двумя кубитами. Введенные операторы позволяют создавать совокупность кубитов и преобразовывать их с помощью унитарных матриц.

Описание решения

Задание кубитов и визуализация матриц могут быть осуществлены в среде Matlab.

Явное задание первого кубита:

Q1=[1; 0]

Явное задание второго кубита:

Q2=[0; 1]

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

RD1 =10 00; RD2 =0001

»subplot(1,2,1); bar3(RD1);

»subplot(1,2,2); bar3(RD2);

Применение преобразователя Адамара к обоим кубитам дает следующий результат

HQ1 =0.7071, 0.7071; HQ2 =0.7071, –0.7071

Визуализация результата (рис. 1, верхние правые графики)

RD1_H =0.5000, 0.5000, 0.5000, 0.5000

RD2_H =0.5000, –0.5000, –0.5000, 0.5000

Рисунок 1. Визуализация матриц плотности двух кубитов (верхние левые графики); визуализация результата применение преобразователя Адамара к обоим кубитам (верхние правые графики); визуализация применения контролируемого обмена (нижние левые графики); визуализация применения контролируемого НЕ (нижние правые графики)

Применение контролируемого обмена с визуализацией результата (рис. 1, нижние левые графики)

RD1_H =0.5000, –0.5000, –0.5000, 0.5000

RD2_H =0.5000, 0.5000, 0.5000, 0.5000

»subplot(1,2,1); bar3(RD1_H);

»subplot(1,2,2); bar3(RD2_H);

Применение контролируемого НЕ с визуализацией результата (рис.1, нижние правые графики)

RD1_H =0.5000, –0.5000, –0.5000, 0.5000

RD2_H =0.5000, –0.5000, –0.5000, 0.5000

»subplot(1,2,1); bar3(RD1_H);

»subplot(1,2,2); bar3(RD2_H).

Особое место среди инструментальных приложений занимает система визуального моделирования SIMULINK. Разработка моделей средствами SIMULINK (s-моделей) основана на использовании технологии Drag-and-Drop.

Блоки, включаемые в создаваемую модель, могут быть связаны друг с другом как по информации, так и по управлению. Тип связи зависит от типа блока и от логики работы модели. Данные могут быть скалярными величинами, векторами или матрицами произвольной размерности. S-модель может иметь иерархическую структуру, число уровней иерархии практически неограниченно.

Представление преобразователя CNOT на рис. 2.

Рисунок 2. Преобразователь CNOT, реализованной в пакете Simulink

В блоке total_qubits вводится число кубитов, которое нужно создать. В блоке init формируется исходное состояние. Блок rotate_y(2) выполняет поворот второго кубита по оси y, для того чтобы преобразование CNOT можно было пронаблюдать.

Блоки to_Graph1, to_Graph2, to_Graph3 и to_Graph4 выполняют отображение состояния кубитов до и после преобразования. Блок CNOT выполняет контролируемое НЕ.

Пример работы модели показан на рис. 3. Первые два графика отображают исходные состояния кубитов, а третий и четвёртый – состояния после выполнения преобразования CNOT.

Рисунок 3. Преобразователь CNOT, реализованной в пакете Simulink

В данном случае второй кубит – контролирующий, поэтому с ним никаких изменений не произошло. Первый кубит – контролируемый, он изменил своё состояние.

Заключение

Разработан и апробирован подход моделирования операторов квантовых состояний в среде проектирования и моделирования Matlab и в его инструментальном пакете Simulink на примере работы двухкубитного преобразователя контролируемое НЕ (CNOT). Данный пример демонстрирует возможность применения сред Matlab/Simulink для проектирования систем, описываемых квантовыми состояниями.

Работа выполнена при поддержке Министерства образования и науки РФ в рамках Федеральной целевой программы «Научные и научно-педагогические кадры инновационной России на 2009–2013 годы» (Государственный контракт № 14.B37.21.2021 от 11 ноября 2012 г).

Рецензенты:

Водяхо Александр Иванович, д.т.н., проф. кафедры вычислительной техники. Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В. И. Ульянова (Ленина)», г. Санкт-Петербург.

Пузанков Дмитрий Викторович, д.т.н., зав. кафедрой вычислительной техники. Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В. И. Ульянова (Ленина)», г. Санкт-Петербург.