Kirim program analog menggunakan QuEra Aquila - Amazon Braket

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Kirim program analog menggunakan QuEra Aquila

Halaman ini memberikan dokumentasi komprehensif tentang kemampuan Aquila mesin dariQuEra. Detail yang dibahas di sini adalah sebagai berikut: 1) Hamiltonian berparameter yang disimulasikan olehAquila, 2) parameter program AHS, 3) konten hasil AHS, 4) parameter kemampuan. Aquila Kami menyarankan menggunakan pencarian teks Ctrl+F untuk menemukan parameter yang relevan dengan pertanyaan Anda.

Hamiltonian

AquilaMesin dari QuEra mensimulasikan Hamiltonian berikut (tergantung waktu) secara asli:

Persamaan matematika dengan penjumlahan yang mewakili Hamiltonian dari suatu sistem, yang melibatkan penggerak, detuning lokal, dan suku kopling interdot.
catatan

Akses ke detuning lokal adalah kemampuan Eksperimental dan tersedia berdasarkan permintaan melalui Braket Direct.

di mana

  • H drive,k (t) =( 1/2Ω (t) e iφ (t) S −,k + 1/2Ω (t) e −Iφ (t) S) + (−Δ global (t+,k​) n), k

    • Ω (t) adalah amplitudo penggerak global yang bergantung pada waktu (alias frekuensi Rabi), dalam satuan (rad/ s)

    • φ (t) adalah fase global yang bergantung pada waktu, diukur dalam radian

    • S −,k​ dan S +,k adalah operator penurun dan peningkatan putaran atom k (dalam basis |↓⟩ =|g⟩, |↑=|r⟩, mereka adalah S =|g⟨r|, S =( S) † =|r⟨g|) +

    • Δ global (t) adalah detuning global yang bergantung pada waktu

    • n k adalah operator proyeksi pada keadaan Rydberg atom k (yaitu n=|r⟨r|)

  • H local detuning,k (t) =-Δ local (t) h n k k

    • Δ local (t) adalah faktor yang bergantung pada waktu dari pergeseran frekuensi lokal, dalam satuan (rad/s)

    • h k adalah faktor yang bergantung pada lokasi, bilangan tak berdimensi antara 0,0 dan 1,0

  • V vdw,k,l = C6​/(dk,l) 6 n k nl,

    • C 6 adalah koefisien van der Waals, dalam satuan (rad/s) * (m) ^6

    • d k,l adalah jarak Euclidean antara atom k dan l, diukur dalam meter.

Pengguna memiliki kontrol atas parameter berikut melalui skema program Braket AHS.

  • Susunan atom 2-d (kkkoordinat x dan y dari setiap atom k, dalam satuan um), yang mengontrol jarak atom berpasangan d k,l​ dengan k, l=1,2,... N

  • Ω (t), frekuensi Rabi global yang bergantung pada waktu, dalam satuan (rad/s)

  • φ (t), fase global yang bergantung pada waktu, dalam satuan (rad)

  • Δ global (t), detuning global yang bergantung pada waktu, dalam satuan (rad/s)

  • Δ local (t), faktor yang bergantung pada waktu (global) dari besarnya detuning lokal, dalam satuan (rad/s)

  • hk, faktor yang bergantung pada lokasi (statis) dari besarnya detuning lokal, bilangan tak berdimensi antara 0,0 dan 1,0

catatan

Pengguna tidak dapat mengontrol level mana yang terlibat (yaitu S, S+​, n operator tetap) atau kekuatan koefisien interaksi Rydberg-Rydberg (C). 6

Skema program Braket AHS

Braket.ir.ahs.program_v1.Program objek (contoh)

Program( braketSchemaHeader=BraketSchemaHeader( name='braket.ir.ahs.program', version='1' ), setup=Setup( ahs_register=AtomArrangement( sites=[ [Decimal('0'), Decimal('0')], [Decimal('0'), Decimal('4e-6')], [Decimal('4e-6'), Decimal('0')], ], filling=[1, 1, 1] ) ), hamiltonian=Hamiltonian( drivingFields=[ DrivingField( amplitude=PhysicalField( time_series=TimeSeries( values=[Decimal('0'), Decimal('15700000.0'), Decimal('15700000.0'), Decimal('0')], times=[Decimal('0'), Decimal('0.000001'), Decimal('0.000002'), Decimal('0.000003')] ), pattern='uniform' ), phase=PhysicalField( time_series=TimeSeries( values=[Decimal('0'), Decimal('0')], times=[Decimal('0'), Decimal('0.000001')] ), pattern='uniform' ), detuning=PhysicalField( time_series=TimeSeries( values=[Decimal('-54000000.0'), Decimal('54000000.0')], times=[Decimal('0'), Decimal('0.000001')] ), pattern='uniform' ) ) ], localDetuning=[ LocalDetuning( magnitude=PhysicalField( times_series=TimeSeries( values=[Decimal('0'), Decimal('25000000.0'), Decimal('25000000.0'), Decimal('0')], times=[Decimal('0'), Decimal('0.000001'), Decimal('0.000002'), Decimal('0.000003')] ), pattern=Pattern([Decimal('0.8'), Decimal('1.0'), Decimal('0.9')]) ) ) ] ) )

JSON (contoh)

{ "braketSchemaHeader": { "name": "braket.ir.ahs.program", "version": "1" }, "setup": { "ahs_register": { "sites": [ [0E-7, 0E-7], [0E-7, 4E-6], [4E-6, 0E-7], ], "filling": [1, 1, 1] } }, "hamiltonian": { "drivingFields": [ { "amplitude": { "time_series": { "values": [0.0, 15700000.0, 15700000.0, 0.0], "times": [0E-9, 0.000001000, 0.000002000, 0.000003000] }, "pattern": "uniform" }, "phase": { "time_series": { "values": [0E-7, 0E-7], "times": [0E-9, 0.000001000] }, "pattern": "uniform" }, "detuning": { "time_series": { "values": [-54000000.0, 54000000.0], "times": [0E-9, 0.000001000] }, "pattern": "uniform" } } ], "localDetuning": [ { "magnitude": { "time_series": { "values": [0.0, 25000000.0, 25000000.0, 0.0], "times": [0E-9, 0.000001000, 0.000002000, 0.000003000] }, "pattern": [0.8, 1.0, 0.9] } } ] } }
Bidang utama
Bidang program jenis deskripsi

setup.ahs_register.sites

Daftar [Daftar [Desimal]]

Daftar koordinat 2-d di mana pinset menjebak atom

setup.ahs_register.filling

Daftar [int]

Menandai atom yang menempati situs perangkap dengan 1, dan situs kosong dengan 0

Hamiltonian.drivingFields [] .amplitude.time_series.times

Daftar [Desimal]

titik waktu amplitudo mengemudi, Omega (t)

Hamiltonian.drivingFields [] .amplitude.time_series.values

Daftar [Desimal]

nilai amplitudo mengemudi, Omega (t)

Hamiltonian.drivingFields [] .amplitude.pattern

str

pola spasial amplitudo mengemudi, Omega (t); harus 'seragam'

Hamiltonian.drivingFields [] .phase.time_series.times

Daftar [Desimal]

titik waktu fase mengemudi, phi (t)

Hamiltonian.drivingFields [] .phase.time_series.values

Daftar [Desimal]

nilai fase mengemudi, phi (t)

Hamiltonian.drivingFields [] .phase.pattern

str

pola spasial fase mengemudi, phi (t); harus 'seragam'

Hamiltonian.drivingFields [] .detuning.time_series.times

Daftar [Desimal]

titik waktu detuning mengemudi, Delta_global (t)

Hamiltonian.drivingFields [] .detuning.time_series.values

Daftar [Desimal]

nilai detuning mengemudi, delta_global (t)

Hamiltonian.drivingFields [] .detuning.pattern

str

pola spasial detuning mengemudi, Delta_global (t); harus 'seragam'

Hamiltonian.localdeTuning [] .magnitude.time_series.times

Daftar [Desimal]

titik waktu dari faktor yang bergantung pada waktu dari magnitudo detuning lokal, delta_local (t)

Hamiltonian.localdeTuning [] .magnitude.time_series.values

Daftar [Desimal]

nilai faktor yang bergantung pada waktu dari besaran detuning lokal, delta_local (t)

Hamiltonian.localdeTuning [] .magnitude.pattern

Daftar [Desimal]

faktor yang bergantung pada situs dari besaran detuning lokal, h_k (nilai sesuai dengan situs di setup.ahs_register.sites)

Kolom metadata
Bidang program jenis deskripsi

braketSchemaHeader.nama

str

nama skema; harus 'braket.ir.ahs.program'

braketSchemaHeader.versi

str

versi skema

Skema hasil tugas Braket AHS

braket.tasks.analog_hamiltonian_simulation_quantum_task_result. AnalogHamiltonianSimulationQuantumTaskResult(contoh)

AnalogHamiltonianSimulationQuantumTaskResult( task_metadata=TaskMetadata( braketSchemaHeader=BraketSchemaHeader( name='braket.task_result.task_metadata', version='1' ), id='arn:aws:braket:us-east-1:123456789012:quantum-task/12345678-90ab-cdef-1234-567890abcdef', shots=2, deviceId='arn:aws:braket:us-east-1::device/qpu/quera/Aquila', deviceParameters=None, createdAt='2022-10-25T20:59:10.788Z', endedAt='2022-10-25T21:00:58.218Z', status='COMPLETED', failureReason=None ), measurements=[ ShotResult( status=<AnalogHamiltonianSimulationShotStatus.SUCCESS: 'Success'>, pre_sequence=array([1, 1, 1, 1]), post_sequence=array([0, 1, 1, 1]) ), ShotResult( status=<AnalogHamiltonianSimulationShotStatus.SUCCESS: 'Success'>, pre_sequence=array([1, 1, 0, 1]), post_sequence=array([1, 0, 0, 0]) ) ] )

JSON (contoh)

{ "braketSchemaHeader": { "name": "braket.task_result.analog_hamiltonian_simulation_task_result", "version": "1" }, "taskMetadata": { "braketSchemaHeader": { "name": "braket.task_result.task_metadata", "version": "1" }, "id": "arn:aws:braket:us-east-1:123456789012:quantum-task/12345678-90ab-cdef-1234-567890abcdef", "shots": 2, "deviceId": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila", "createdAt": "2022-10-25T20:59:10.788Z", "endedAt": "2022-10-25T21:00:58.218Z", "status": "COMPLETED" }, "measurements": [ { "shotMetadata": {"shotStatus": "Success"}, "shotResult": { "preSequence": [1, 1, 1, 1], "postSequence": [0, 1, 1, 1] } }, { "shotMetadata": {"shotStatus": "Success"}, "shotResult": { "preSequence": [1, 1, 0, 1], "postSequence": [1, 0, 0, 0] } } ], "additionalMetadata": { "action": {...} "queraMetadata": { "braketSchemaHeader": { "name": "braket.task_result.quera_metadata", "version": "1" }, "numSuccessfulShots": 100 } } }
Bidang utama
Bidang hasil tugas jenis deskripsi

pengukuran [] .shotResult.Presequence

Daftar [int]

Bit pengukuran pra-urutan (satu untuk setiap situs atom) untuk setiap bidikan: 0 jika situs kosong, 1 jika situs diisi, diukur sebelum urutan pulsa yang menjalankan evolusi kuantum

pengukuran [] .shotResult.PostSequence

Daftar [int]

Bit pengukuran pasca-urutan untuk setiap bidikan: 0 jika atom dalam keadaan Rydberg atau situs kosong, 1 jika atom dalam keadaan dasar, diukur pada akhir urutan pulsa yang menjalankan evolusi kuantum

Kolom metadata
Bidang hasil tugas jenis deskripsi

braketSchemaHeader.nama

str

nama skema; harus 'braket.task_result.analog_hamiltonian_simulation_task_result'

braketSchemaHeader.versi

str

versi skema

Tugasmetadata. braketSchemaHeader.nama

str

nama skema; harus 'braket.task_result.task_metadata'

Tugasmetadata. braketSchemaHeader.versi

str

versi skema

Taskmetadata.id

str

ID tugas kuantum. Untuk tugas AWS kuantum, ini adalah tugas kuantum ARN.

Taskmetadata.shots

int

Jumlah bidikan untuk tugas kuantum

Taskmetadata.shots.deviceID

str

ID perangkat tempat tugas kuantum dijalankan. Untuk AWS perangkat, ini adalah perangkat ARN.

taskmetadata.shots.createdat

str

Stempel waktu pembuatan; formatnya harus dalam format string ISO-8601/RFC3339 YYYY-MM-DDTHH:MM: SS.sssz. Defaultnya adalah None.

taskmetadata.shots.endedat

str

Stempel waktu kapan tugas kuantum berakhir; formatnya harus dalam format string ISO-8601/RFC3339 YYYY-MM-DDTHH:MM: SS.sssz. Defaultnya adalah None.

Taskmetadata.shots.status

str

Status tugas kuantum (CREATED, QUEUED, RUNNING, COMPLETED, FAILED). Defaultnya adalah None.

taskmetadata.shots.failurereason

str

Alasan kegagalan tugas kuantum. Defaultnya adalah None.

TambahanMetadata.Action

Braket.ir.ahs.program_v1.program

(Lihat bagian skema program Braket AHS)

AdditionalMetadata.action. braketSchemaHeader.querametadata.name

str

nama skema; harus 'braket.task_result.quera_metadata'

AdditionalMetadata.action. braketSchemaHeader.querametadata.versi

str

versi skema

AdditionalMetadata.action. numSuccessfulShots

int

jumlah tembakan yang benar-benar berhasil; harus sama dengan jumlah tembakan yang diminta

pengukuran [] .shotmetadata.shotStatus

int

Status tembakan, (Sukses, Sukses sebagian, Kegagalan); harus “Sukses”

QuEra skema properti perangkat

braket.device_schema.quera.quera_device_capabilities_v1. QueraDeviceCapabilities(contoh)

QueraDeviceCapabilities( service=DeviceServiceProperties( braketSchemaHeader=BraketSchemaHeader( name='braket.device_schema.device_service_properties', version='1' ), executionWindows=[ DeviceExecutionWindow( executionDay=<ExecutionDay.MONDAY: 'Monday'>, windowStartHour=datetime.time(1, 0), windowEndHour=datetime.time(23, 59, 59) ), DeviceExecutionWindow( executionDay=<ExecutionDay.TUESDAY: 'Tuesday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(12, 0) ), DeviceExecutionWindow( executionDay=<ExecutionDay.WEDNESDAY: 'Wednesday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(12, 0) ), DeviceExecutionWindow( executionDay=<ExecutionDay.FRIDAY: 'Friday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(23, 59, 59) ), DeviceExecutionWindow( executionDay=<ExecutionDay.SATURDAY: 'Saturday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(23, 59, 59) ), DeviceExecutionWindow( executionDay=<ExecutionDay.SUNDAY: 'Sunday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(12, 0) ) ], shotsRange=(1, 1000), deviceCost=DeviceCost( price=0.01, unit='shot' ), deviceDocumentation= DeviceDocumentation( imageUrl='https://a.b.cdn.console.awsstatic.com/59534b58c709fc239521ef866db9ea3f1aba73ad3ebcf60c23914ad8c5c5c878/a6cfc6fca26cf1c2e1c6.png', summary='Analog quantum processor based on neutral atom arrays', externalDocumentationUrl='https://www.quera.com/aquila' ), deviceLocation='Boston, USA', updatedAt=datetime.datetime(2024, 1, 22, 12, 0, tzinfo=datetime.timezone.utc), getTaskPollIntervalMillis=None ), action={ <DeviceActionType.AHS: 'braket.ir.ahs.program'>: DeviceActionProperties( version=['1'], actionType=<DeviceActionType.AHS: 'braket.ir.ahs.program'> ) }, deviceParameters={}, braketSchemaHeader=BraketSchemaHeader( name='braket.device_schema.quera.quera_device_capabilities', version='1' ), paradigm=QueraAhsParadigmProperties( ... # See https://github.com/amazon-braket/amazon-braket-schemas-python/blob/main/src/braket/device_schema/quera/quera_ahs_paradigm_properties_v1.py ... ) )

JSON (contoh)

{ "service": { "braketSchemaHeader": { "name": "braket.device_schema.device_service_properties", "version": "1" }, "executionWindows": [ { "executionDay": "Monday", "windowStartHour": "01:00:00", "windowEndHour": "23:59:59" }, { "executionDay": "Tuesday", "windowStartHour": "00:00:00", "windowEndHour": "12:00:00" }, { "executionDay": "Wednesday", "windowStartHour": "00:00:00", "windowEndHour": "12:00:00" }, { "executionDay": "Friday", "windowStartHour": "00:00:00", "windowEndHour": "23:59:59" }, { "executionDay": "Saturday", "windowStartHour": "00:00:00", "windowEndHour": "23:59:59" }, { "executionDay": "Sunday", "windowStartHour": "00:00:00", "windowEndHour": "12:00:00" } ], "shotsRange": [ 1, 1000 ], "deviceCost": { "price": 0.01, "unit": "shot" }, "deviceDocumentation": { "imageUrl": "https://a.b.cdn.console.awsstatic.com/59534b58c709fc239521ef866db9ea3f1aba73ad3ebcf60c23914ad8c5c5c878/a6cfc6fca26cf1c2e1c6.png", "summary": "Analog quantum processor based on neutral atom arrays", "externalDocumentationUrl": "https://www.quera.com/aquila" }, "deviceLocation": "Boston, USA", "updatedAt": "2024-01-22T12:00:00+00:00" }, "action": { "braket.ir.ahs.program": { "version": [ "1" ], "actionType": "braket.ir.ahs.program" } }, "deviceParameters": {}, "braketSchemaHeader": { "name": "braket.device_schema.quera.quera_device_capabilities", "version": "1" }, "paradigm": { ... # See Aquila device page > "Calibration" tab > "JSON" page ... } }
Bidang properti layanan
Bidang properti layanan jenis deskripsi

Service.ExecutionWindows [] .ExecutionDay

ExecutionDay

Hari dari jendela eksekusi; harus 'Setiap Hari', 'Hari Kerja', 'Akhir Pekan', 'Senin', 'Selasa', 'Rabu', Kamis', 'Jumat', 'Sabtu' atau 'Minggu'

Service.ExecutionWindows []. windowStartHour

datetime.time

Format 24 jam UTC saat jendela eksekusi dimulai

Service.ExecutionWindows []. windowEndHour

datetime.time

Format 24 jam UTC saat jendela eksekusi berakhir

Service.qpu_capabilities.service.shotsrange

Tupel [int, int]

Jumlah bidikan minimum dan maksimum untuk perangkat

Service.qpu_capabilities.service.devicecost.price

float

Harga perangkat dalam hal dolar AS

Service.qpu_capabilities.service.devicecost.unit

str

unit untuk mengisi harga, misalnya: 'menit', 'jam', 'tembakan', 'tugas'

Kolom metadata
Bidang metadata jenis deskripsi

aksi [] .versi

str

versi skema program AHS

tindakan [] .actionType

ActionType

Nama skema program AHS; harus 'braket.ir.ahs.program'

layanan. braketSchemaHeader.nama

str

nama skema; harus 'braket.device_schema.device_service_properties'

layanan. braketSchemaHeader.versi

str

versi skema

Service.deviceDocumentation.ImageUrl

str

URL untuk gambar perangkat

Service.deviceDocumentation.Summary

str

deskripsi singkat tentang perangkat

Service.deviceDocumentation. externalDocumentationUrl

str

URL dokumentasi eksternal

Service.deviceLocation

str

lokasi geografis untuk perangkat

Service.updateDat

datetime

waktu ketika properti perangkat terakhir diperbarui