Завдяки цифровим змінам світ змінюється швидше, ніж будь-коли раніше.
З прийдешньою появою ще однієї абсолютно нової хвилі технологій, здатних кардинально змінити поточні парадигми з вражаючою швидкістю та потужністю: квантові обчислення, розуміння фундаментальних ідей цифрової ери стане ще важливішим.
Проривна техніка, яка називається квантовим обчисленням, використовує квантову фізику для вирішення проблем, які виходять за межі звичайних комп’ютерів.
Принципи квантової теорії показують, як поводяться матерія та енергія на атомному та субатомному рівнях, а Qiskit від IBM — це набір для розробки квантового програмного забезпечення з відкритим кодом, який допомагає створювати квантові обчислювальні системи.
Ця стаття намагається пояснити це та надати вам огляд квантових обчислень.
Ми пояснимо нашим читачам за допомогою квантового обчислення з відкритим кодом SDK, тобто Qiskit і дозвольте їм досліджувати за допомогою Jupyter ноутбуки розміщено в IBM Quantum Lab.
Що таке квантові обчислення?
Квантові обчислення це галузь інформатики, яка зосереджується на розробці комп’ютерних технологій з використанням ідей квантової теорії.
Він використовує виняткову здатність субатомних частинок одночасно існувати в багатьох станах, таких як 0 і 1.
Вони здатні обробляти набагато більше даних, ніж звичайні комп’ютери.
У процесах квантового обчислення кубіт створюється з використанням квантового стану об’єкта. Основними частинами інформації в квантових обчисленнях є кубіти.
Вони виконують ту саму функцію, що й біти в звичайних обчисленнях у квантових обчисленнях, але вони діють зовсім інакше. Квантові обчислення – це галузь, яка виникла у 1980-х роках.
Тоді було виявлено, що квантові алгоритми ефективніші при виконанні деяких комп’ютерних завдань, ніж їхні класичні аналоги.
Суперпозиція та заплутаність, дві концепції квантової фізики, є основою, на якій базуються ці суперкомп’ютери.
У порівнянні зі звичайними комп’ютерами, квантові комп’ютери наразі можуть виконувати завдання на порядки швидше, споживаючи при цьому значно менше енергії.
Ми повинні продовжити роботу квантових комп’ютерів, щоб повністю зрозуміти це. Давайте почнемо зараз.
Як насправді працює квантовий комп'ютер?
У порівнянні з традиційними комп’ютерами, до яких ми звикли, квантові комп’ютери інакше підходять до вирішення проблем. Для деяких завдань квантові комп’ютери є кращими перед традиційними з багатьох причин.
Вважається, що причиною є їхня здатність існувати одночасно в багатьох штатах. З іншого боку, звичайні комп’ютери можуть одночасно перебувати лише в одному стані.
Є три ключові концепції, які ви повинні зрозуміти, щоб зрозуміти, як працюють квантові комп’ютери:
- Суперпозиція.
- Заплутування.
- Втручання.
Суперпозиція
Біти є основними компонентами традиційних комп’ютерів. Квантові біти, або кубіти, є основними одиницями квантових комп’ютерів.
По суті, квантові біти працюють інакше. Двійковий біт, іноді відомий як традиційний біт, — це перемикач, який може мати значення 0 або 1.
Ми отримуємо поточний стан біта, коли вимірюємо його. Кубіти є винятком із цього. Кубіти можна порівняти зі стрілками, що вказують у трьох вимірах.
Вони знаходяться в стані 0, якщо вони спрямовані вгору. Вони знаходяться в стані 1, якщо вони спрямовані вниз. Те саме стосується і класичних біт.
Однак вони також можуть вибрати стан суперпозиції.
Стрілка знаходиться в такому стані, коли вона вказує в будь-якому іншому напрямку. Суперпозиція 0 і 1 призводить до цього стану. Під час вимірювання Qubit все одно буде давати або 1, або 0.
Однак орієнтація стрілки визначає релевантну ймовірність.
Ви, швидше за все, отримаєте 1, якщо стрілка в основному вказує вниз, і 0, якщо вона вказує вгору.
У вас буде 50% шансів виграти для кожного, якщо стрілка знаходиться в центрі. У двох словах, це суперпозиція.
Заплутаність
Біти традиційного комп’ютера не залежать один від одного. Стан одного біта не впливає на стан іншого біта.
Кубіти в квантових комп’ютерах можуть заплутуватися один з одним. Це означає, що вони зливаються в один великий квантовий стан.
Для ілюстрації розглянемо два кубіти, які знаходяться в різних станах суперпозиції, але ще не переплутані. У цей час їх вірогідність не залежить одна від одної.
Коли ми заплутаємо їх, ми повинні відкинути ці незалежні ймовірності та визначити ймовірності всіх альтернативних станів, яких ми можемо уникнути, а саме 00, 01, 10 і 11.
Розподіл ймовірностей усієї системи змінюється, якщо напрямок стрілки на одному кубіті змінюється, оскільки кубіти переплутані.
Незалежність кубітів один від одного була втрачена. Кожен з них є складовою однієї і тієї ж великої держави. Незалежно від того, скільки у вас кубітів, це все одно так.
Існує можлива комбінація 2n станів для квантового комп’ютера з n кубітів.
У вас є розподіл ймовірностей між двома станами, наприклад, для одного кубіта. У вас є розподіл ймовірностей між чотирма станами для двох кубітів тощо. Основна відмінність між класичними та квантовими комп’ютерами полягає в цьому.
Класичні комп’ютери можна поставити в будь-який стан, але лише по одному. Усі ці стани можуть існувати одночасно на квантових комп’ютерах як суперпозиція.
Яку користь може отримати комп’ютер від перебування в усіх цих станах одночасно? У цей момент виникає останній елемент перешкоди.
Втручання
Для опису стану кубіта можна використовувати квантову хвильову функцію.
Фундаментальний математичний опис всього в квантовій фізиці забезпечується хвильовими функціями.
Коли багато кубітів переплутано, їх окремі хвильові функції об’єднуються разом, щоб утворити одну хвильову функцію, яка описує загальний стан квантового комп’ютера.
Інтерференція є результатом сумування цих хвильових функцій. Коли хвилі складаються разом, вони можуть конструктивно взаємодіяти та об’єднуватися, створюючи більшу хвилю, як це роблять брижі.
Вони також можуть деструктивно взаємодіяти, щоб протистояти один одному. Різна ймовірність різних станів визначається загальною хвильовою функцією квантового комп’ютера.
Ми можемо змінити ймовірність появи певних станів під час вимірювання квантового комп’ютера, змінюючи стани різних кубітів.
Незважаючи на те, що квантовий комп’ютер може існувати в кількох суперпозиціях станів одночасно, вимірювання виявляють лише один із цих станів.
Тому при використанні квантового комп’ютера для виконання обчислювальної роботи потрібне конструктивне втручання, щоб підвищити ймовірність отримання правильної відповіді, і деструктивне втручання, щоб знизити ймовірність отримання неправильної.
Тепер почнемо з Qiskit.
Що таке Qskit?
Qiskit — це фреймворк програмного забезпечення, що фінансується IBM, розроблений, щоб спростити будь-кому входити в сферу квантових обчислень.
Оскільки отримати квантові комп’ютери важко, ви можете придбати їх через постачальника хмарних технологій, наприклад IBM, використовуючи їхні інструменти Qiskit.
Він доступний безкоштовно, і весь його код доступний з відкритим вихідним кодом.
Існує онлайн підручник який навчає вас усім основам квантової фізики, що дуже корисно для тих, хто не знайомий з предметом. Для розробки інструментарію Qiskit використовується Python.
Отже, якщо ви знайомі з мовою програмування Python, ви впізнаєте багато коду.
Програмний фреймворк підходить для бажаючих дізнатися про квантові обчислення одночасно здобуваючи практичний досвід.
Найфундаментальнішим аспектом Qiskit є те, що він працює у два етапи. Одним із кроків є стадія конструювання, на якій ми створюємо кілька квантових схем і використовуємо ці схеми для вирішення проблеми.
Потім, завершивши етап побудови або досягнувши рішення, ми переходимо до наступного етапу, який відомий як етап виконання, на якому ми намагаємося запустити нашу збірку або рішення в різних серверних програмах (системі вектора стану, унітарній системі, відкритому ASM backend), і після завершення запуску ми обробляємо дані в збірці для отримання бажаного результату.
Початок роботи з Qskit
Ви можете локально інсталювати його на своєму персональному комп’ютері чи Jupyter Notebook, розміщеному в IBM. Напишіть наступний код для локальної інсталяції на комп’ютері Windows:
Нам потрібно зареєструватися тут, щоб отримати доступ до маркера API, який дозволяє нам використовувати квантові пристрої IBM, і тоді ми зможемо почати працювати з веб-сайтом компанії. Ви можете собі уявити, що це можна зробити, використовуючи встановлений Qiskit Jupyter Notebook, який працює онлайн.
Ви можете отримати доступ до нього, вибравши свій профіль у меню у верхньому правому куті сторінки, а потім вибравши інформацію про обліковий запис. Ви можете знайти свій маркер API у розділі про маркери API у формі ***. Його копіюють, а потім вводять у такий код:
Після виконання цього коду ваш маркер API буде збережено на вашому комп’ютері, що дозволить вам використовувати квантові пристрої IBM. Введіть наступне, щоб визначити, чи є у вас доступ до такого пристрою:
Якщо вищезгаданий код працює, ви зможете запускати код не лише на своєму комп’ютері, а й надсилаючи вбудовані квантові схеми на квантові пристрої IBM і отримуючи результати.
Отже, використовуючи бібліотеку схем, ми можемо розпочати розробку нашого першого квантового алгоритму. Ми починаємо з імпортування основних залежностей із Qiskit у наш проект.
Потім ми створюємо двокубітовий квантовий регістр і двобітовий звичайний регістр.
Тож тепер ми маємо як класичний, так і квантовий реєстр. Використовуючи ці два, ми можемо побудувати схему, і якщо в будь-який час протягом модифікації схеми ви захочете намалювати, як виглядає квантова схема, напишіть наступний код:
З малюнка видно, що схема складається з двох квантових і двох класичних бітів.
У цьому ланцюзі відсутні ворота, що робить його нецікавим. Тепер давайте побудуємо схему за допомогою квантових вентилів. Як класичний логічні ворота (Вентилі І, АБО) призначені для звичайних цифрових схем, квантові вентилі є основними компонентами квантових схем.
Застосування воріт Адамара до першого кубіта є першим кроком у створенні заплутаності. Потім, використовуючи наступний код, ми додамо двокубітну контрольовану операцію x:
Тепер, коли ці два оператори були використані для побудови нашої квантової схеми, настав час виміряти квантові біти (кубіти), провести ці вимірювання та зберегти їх у класичних бітах. Давайте створимо необхідний код для досягнення цього:
На діаграмі нижче зображено схему нашої схеми:
Потім схему потрібно запустити на традиційному комп’ютерному симуляторі. Схема завершена. І вивчіть результати цієї страти.
Інформація, отримана від виконання цієї схеми, зберігається в змінній результату. Давайте відобразимо ці результати за допомогою гістограми.
Ось що відбувається, коли ми запускаємо нашу квантову схему. Для чисел 00 і 11 ми отримуємо ймовірність близько 50%. Ваша початкова схема квантового комп’ютера була побудована. Щиро вітаю!
Застосування Qiskit Quantum Computing
Фінанси Qiskit
Qiskit Finance пропонує колекцію демонстраційних інструментів і програм. До них належать перекладачі Ising для оптимізації портфеля, постачальники даних для фактичних або випадкових даних, а також впровадження для ціноутворення різних фінансових варіантів або оцінки кредитного ризику.
Природа Qiskit
Додатки типу згортання білка та електронна/вібронна структура Qiskit Nature підтримує обчислення як для збудженого, так і для основного станів.
Він пропонує всі частини, необхідні для з’єднання класичних кодів і автоматичного перетворення в різні представлення, необхідні квантовим комп’ютерам.
Машинне навчання Qiskit
Квантовий навчання за допомогою машини Qiskit Machine Learning, а також фундаментальні квантові ядра та квантові нейронні мережі (QNN) як будівельні блоки надають методи, які використовують їх для вирішення різних проблем, таких як регресія та класифікація.
Це також дозволяє підключати QNN до PyTorch з метою включення квантових елементів у класичні операції.
Оптимізація Qskit
Qiskit Optimization пропонує весь спектр оптимізаційних послуг, включаючи високорівневе моделювання проблем оптимізації, автоматичний переклад проблем у різні необхідні представлення та набір простих методів квантової оптимізації.
Висновок
Підсумовуючи, хоча для найшвидшого доступного суперкомп’ютера потрібні роки, квантові комп’ютери можуть швидко зламати поточні методи шифрування.
Незважаючи на те, що квантові комп’ютери зможуть зламати багато методів шифрування, які використовуються сьогодні, очікується, що вони створять стійкі до злому замінники.
Проблеми оптимізації є сильною стороною квантових комп’ютерів. Для отримання додаткової інформації відвідайте Qiskit GitHub.
залишити коментар