Какими могут быть квантовые игры для квантовых компьютеров — самых загадочных ЭВМ в мире
DOOM на них уже пытаются портировать.
Квантовый компьютер — это физическая система, использующая принципы квантовой механики для обработки информации. В отличие от классических компьютеров, которые оперируют битами (0 или 1), квантовые компьютеры используют кубиты, которые могут находиться в суперпозиции состояний и принимают значения 0 или 1 только после того, как их измерят.
Квантовый компьютер не похож на обычный ПК или сервер. Он больше напоминает большую морозильную камеру с золотистыми проводами внутри, а рядом с ним стоит громоздкая электроника. Управляется он через классический компьютер, а работать с ним могут только специально обученные инженеры.
Типичный квантовый компьютер, например от Intel или IBM, выглядит как большая лабораторная установка, а не привычный настольный или серверный компьютер.
Квантовые компьютеры обычно размещают в специализированных лабораториях, где поддерживаются особые условия:
- экранирование от электромагнитных помех (например, от мобильных телефонов);
- чистые помещения, чтобы избежать загрязнений;
- системы охлаждения (обычно жидкий гелий), охлаждающие среду до температуры близкой к абсолютному нулю;
- массивная управляющая электроника, занимающая целые серверные стойки.
Пример работы квантовых алгоритмов
Квантовые компьютеры — это не волшебная палочка, способная решать все задачи и переписывать реальность, как в новом сезоне «Чёрного зеркала». Однако в некоторых прикладных задачах квантовые машины демонстрируют свои сильные стороны и действительно превосходят классические на порядки. Один из самых известных примеров — разложение чисел на простые множители, что кардинально меняет подход к вопросам взлома и защиты криптосистем.
Я попробую объяснить непростую работу квантового компьютера на простых примерах. Допустим, у нас есть кодовый замок с комбинацией из 4 цифр (0000–9999), и мы знаем, что только один код открывает замок. Классический компьютер решает такие задачи методом перебора, и если ему повезёт, то верный вариант подберётся с первой попытки, а если нет — ему придётся перебрать все десять тысяч возможных значений. В среднем, это будет 5000 итераций.
Квантовый компьютер переводит все возможные значения шифра в равновероятную суперпозицию всех десяти тысяч комбинаций, применяя к ним так называемый H-гейт Адамара. Теперь в системе присутствуют все возможные пароли одновременно
Для объяснения принципа суперпозиции, представим, что у нас есть монета. Если её подбросить, она окажется в состоянии, когда одновременно может выпасть и орёл, и решка — это и есть суперпозиция состояний. Именно это делает H-гейт Адамара — переводит кубит в равновероятное состояние 0 и 1. Всякий раз, когда мы пытаемся выяснить результат броска монеты, мы разрушаем суперпозицию — там будет либо орёл, либо решка.
Далее используется квантовый оракул, который помечает правильный код, меняя его фазу (делая его «перевёрнутым» по знаку). Наша задача — найти этот правильный код среди прочих. Чтобы это не звучало как магия и подгонка под результат, попробую объяснить, что это за оракул такой.
Дело в том, что наличие правильного кода среди прочих — это часть условия задачи. Представьте, что мы крутим кодовый диск сейфа, подбирая комбинацию, пока наконец не услышим щелчок открываемого сейфа. Вот этот самый щелчок — и есть своего рода аналог оракула на бытовом уровне.
Нам нужно «всего лишь» найти этот код, отмеченный оракулом, среди 9999 других кодов. Для этого применяется алгоритм Гровера. Я не буду глубоко уходить в математику, просто поясню за волновую функцию и этого, надеюсь, будет достаточно для общего понимания.
Итак, для нашего сейфа у нас есть 10000 вариантов, каждый вариант имеет вероятность 1/10000. Это распределение вероятностей в математике описывается волновой функцией, где волна — это амплитуда вероятности, которая равна квадратному корню от этой вероятности, то есть 1/100.
Волна — это очень удобная метафора, чтобы объяснить что происходит дальше. Представьте волны в воде: если две волны синхронны, они усиливают друг друга. Если одна волна инвертирована относительно другой, они друг друга гасят. На этом принципе, кстати, работают наушники с шумоподавлением, но речь сейчас не об этом.
Оракул инвертирует «волну» правильного кода сейфа, меняя её фазу. С точки зрения математики это не меняет вероятность, потому что возводя отрицательную амплитуду в квадрат мы получаем то же самое значение что и для положительной амплитуды.
Дальше к волновой функции применяется математическое «отражение относительно среднего», что как бы создаёт усиление, которое постепенно выделяет правильный ответ среди всех возможных. Происходит квантовая интерференция: «волны вероятности» правильного ответа усиливают друг друга, а неправильных — взаимно гасятся. Это как если бы волны в бассейне, отражаясь от стен определённым образом, создавали высокий всплеск в одном конкретном месте.
Повторяя подобную операцию, мы увеличиваем амплитуду правильного ответа, и, соответственно, его вероятность.
Вы можете сказать «ок, вот оракул отмечает правильный вариант, вот он выделяется среди прочих, но что это нам даёт? Ведь мы же всё ещё не знаем значение этого варианта». Это похоже на чит, как будто мы подгоняем верный ответ. Но давайте попробуем представить ещё одну простую аналогию. Есть какая-то комбинация X, которая верная, она просто существует по условиям задачи. Мы не знаем, какая последовательность скрыта за этим вариантом, но когда мы «просеиваем» в этом сите вероятностей все варианты, в конце у нас остаётся только X. Мы не знаем, что это, но мы как бы «достаём X из сита, и смотрим что там».
И когда мы «смотрим», в этот момент мы производим измерение и схлопываем волновую функцию до единственного значения, получая именно тот вариант, который в текущий момент имеет максимальную вероятность среди прочих.
Итак, квантовые компьютеры дают не гарантированный, а вероятностный результат. Но что если выданный квантовым компьютером ответ оказался неверным? Делает ли это применение квантовых компьютеров ненадёжным в областях с высокими рисками?
Во-первых, тут фишка в том, что чем больше вариантов для перебора, тем выше вероятности, то есть вероятность успеха растёт с увеличением числа возможных вариантов. Для случая с подбросом монетки, где варианта всего два, мы имеем 50/50 после одной попытки, и 100% после второй. Но когда этих вариантов много, то чем больше их, тем ближе к 100% вероятность правильного ответа.
Во-вторых, чаще всего даже этого достаточно. Для областей с высокими рисками, таких как космос или медицина, всегда можно перестраховаться. Например, можно задействовать и классические алгоритмы для коррекции проверки результатов. К тому же всегда можно запустить алгоритм во второй раз. Не угадал с подбором пароля из тысячи символов? Ну и ладно, со второго раза почти наверняка повезёт. Это всё ещё будет быстрее, чем тратить годы на переборы с помощью классических методов.
Что могут сделать квантовые компьютеры для игр и чего не могут?
Теперь пришло время поднять действительно серьёзные вопросы. Как квантовые компьютеры могут повлиять на игровую индустрию?
Не так быстро. Квантовые компьютеры накладывают значительные ограничения на своё использование. Они требуют:
- сверхнизких температур (близких к абсолютному нулю), чтобы минимизировать тепловой шум и сохранить квантовые эффекты (суперпозицию и запутанность), а для этого, соответственно, нужна специальная криогенная система;
- сложной калибровки. Каждое квантовое вычисление требует очень точной настройки всех кубитов и операций на них. Например, нужно точно настраивать параметры импульсов микроволнового поля для манипулирования состояниями кубитов. Даже незначительные отклонения могут привести к ошибкам в вычислениях;
- защиты от шумов, то есть любых внешних воздействий;
- сложной системы поддержки работающих кубитов. Чем больше кубитов в квантовом компьютере, тем больше взаимодействий между ними, что увеличивает вероятность ошибок и требует более сложных методов управления и коррекции ошибок. Чем дальше, тем экспоненциально сложнее. Небольшие несовершенства будут накапливаться, и в итоге мы получим абсурд;
В перспективе, когда удастся создать устойчивые и масштабируемые квантовые процессоры, они станут революцией в вычислениях. Тем не менее, все эти сложности и ограничения означают что мы ещё очень не скоро поставим такой компьютер себе на стол. Возможно даже, никогда. Квантовые компьютеры будут работать в облаке, здесь без вариантов, а для доступа к играм, использующим квантовые вычисления, будет нужен доступ в онлайн.
Для любой игры, которая может использовать квантовый компьютер, подавляющее большинство её работы всё равно будет выполняться на обычном компьютере, однако некоторые специфические вычисления будут передаваться квантовому компьютеру. Но это дело отдалённого будущего, можно не ожидать увидеть это даже в следующем десятилетии.
Тем не менее, поиск потенциальных приложений квантовых компьютеров для этой эпохи в настоящее время является большой областью исследований: университетами, крупными компаниями и даже стартапами. Компания IBM выпустила QISKit — это нативный SDK (Software Development Kit) для их квантовых вычислительных систем, на котором многие добровольцы и исследователи пишут простенькие приложения. Сейчас — эпоха экспериментов, которые будут со временем становиться всё сложнее и дороже в разработке, прежде чем полный потенциал таких систем будет раскрыт.
Квантовые игры настоящего
С 2016 года мы имеем так называемую эпоху «квантовой готовности». Были созданы прототипы устройств, которые выложены в облаке для использования всеми. Но большинство из них не могут делать ничего такого, что нельзя было бы эмулировать на классическом компьютере.
Первая известная квантовая игра «Кот-Ножницы-Коробка» разработана в 2017 исследователем IBM Джеймсом Вуттоном. Суть её в следующем: вы и ваш квантовый оппонент выбирают один из двух вариантов. Если варианты совпадают, вы побеждаете. Если не совпадают — вы проигрываете. Ваш выбор и выбор вашего оппонента отсылаются квантовому рефери, который и решит исход игры. Это выглядит максимально просто и тупо, но что вы хотите, когда в вашем распоряжении не гигабайты памяти, а всего пять кубитов? Основная фишка здесь — осознание, что вы используете квантовый компьютер, передовую технологию на грани фантастики, чтобы играть в убогую копию «камень-ножницы-бумага». Если это не круто, то я не знаю, что тогда.
Ещё одна игра — квантовый «Морской бой» от того же автора. Она демонстрирует принцип квантовой запутанности, чтобы создать необычное поведение, где корабль может быть «целым» или «разрушенным» в зависимости от корреляций между измерениями двух квантовых битов. Игра тоже довольно простая. Один игрок размещает корабль в одном из шести возможных мест. Другой игрок имеет три бомбы, чтобы отправить корабль в небытие. Победитель определяется тем, выживет ли корабль или нет. Но при этом неповрежденный корабль будет примерно на 70% целым (в зависимости от «погоды»). Скорее всего это связано с «шумом», неидеальными условиями функционирования квантового компьютера, но для иммерсивности можно считать это просто «погодой», которая влияет на корабль и бомбы.
Через несколько месяцев автор выпустил новую версию этой игры.
Затем пошли эксперименты с процедурной генерацией. Например, вот процесс превращения пары пикселей в шахматную доску и поиска интересных подходов по ходу работы, используя эффекты квантовой интерференции.
Можно на этом не останавливаться и создать интересные текстуры для процедурно генерируемого ландшафта.
Является ли это революцией в генерации ландшафтов? Нет, но это первый шаг к тому, чтобы понять где квантовые компьютеры могут быть полезны в играх. Впереди ещё долгий путь, прежде чем AAA-студии начнут предлагать огромные суммы денег чтобы внедрить это в их игры.
2019 год — Qubit the Barbarian («Кубит-варвар»), игра-головоломка в лабиринте, которая иллюстрирует, как работают кубиты (находясь сразу в нескольких возможных состояниях).
К 2025 году уже были попытки портировать Doom на квантовый компьютер, пока безуспешные. Проект называется Quandoom, и в нём упрощается и вырезается всё, что только можно. Графика упрощена до базовых каркасных моделей, и многие особенности оригинальной игры были исключены или значительно изменены.
В общем, до запуска Doom на квантовом компьютере ещё очень далеко.
Квантовые игры будущего
Так какие игры возможны, когда будущее наступит и квантовые компьютеры станут доступны? Какие вообще возможности откроются, когда мы окажемся в последней из заявленных квантовых эпох? Мне кажется, квантовый гейминг будет развивать игровую индустрию в двух ключевых направлениях: «Более-лучше» и «Квантовые игровые механики».
«Квантовые механики» — появление специфических квантовых игровых механик, которые проблематично или невозможно реализовать с помощью классических алгоритмов.
Одним из примеров может быть использование квантового шума в качестве элемента геймплея. Например, головоломка, в которой квантовая «размытость» усложняет задачу по мере прохождения уровней. Паззлы в более поздних раундах требуют более сложных квантовых схем, а накопление шума увеличивает сложность.
Что касается «Более-лучше», то здесь название говорит само за себя. Сложно сказать, в каком состоянии будет индустрия видео-развлечений и искусственного интеллекта через пару десятков лет, но квантовые компьютеры сделают их ещё более производительными и уникальными, особенно по части генерации чего угодно — локаций, персонажей, квестов, текстур. Совмещая с существующими на тот момент технологиями и алгоритмами, и применяя при этом ещё ИИ, разработчики игр будущего будут обладать практически безграничным потенциалом!
Этот момент стоит подчеркнуть: квантовые вычисления открывают возможность для генерации действительно случайных чисел, которые не подчиняются никаким шаблонам. Это может привести к созданию по-настоящему непредсказуемых карт и встреч с персонажами, в отличие от современных игр, где элементы кажутся случайными (например, игровые события или диалоги), но на самом деле следуют определённым алгоритмам.
Помимо этого, квантовые компьютеры могли бы использоваться для оптимизации и QA, чтобы определить, можно ли пройти определённый участок случайно сгенерированного игрового мира — будь то физические препятствия, волны врагов или головоломки. А если можно, то какой путь будет самым оптимальным и увлекательным для игрока? Проще говоря, квантовые вычисления могут помочь определить наилучший маршрут от начала до конца. Квантовые компьютеры способны быстро решать задачу коммивояжёра, когда речь заходит об оптимизации игровых процессов.
Это может изменить подход к разработке, но что также вполне возможно, и что я считаю очень важным, сделает самого игрока важным участником разработки, а его игровой опыт — по настоящему уникальным.
Оптимизация, которую мы получим с использованием квантовых вычислений также связана с ещё одной потенциальной областью их применения: созданием гораздо более совершенного искусственного интеллекта. Именно ИИ управляет поведением неигровых персонажей (NPC), а значит, квантовый ИИ может сделать их намного более реалистичными, точными и детализированными, чем тех, что встречаются в современных играх. Мы не знаем, в каком состоянии ИИ будет через десятки лет, но мы можем предположить, что квантовые компьютеры значительно ускорят обучение нейросетей.
Конечно же, это всё спекуляции. Скорее всего, другие технологии — нейросети, облачные вычисления, новые архитектуры процессоров — значительно изменят игровую индустрию ещё до того, как квантовые компьютеры вообще успеют подойти к её порогу.
Полноценные квантовые машины, способные стабильно и эффективно справляться с универсальными задачами, — это перспектива не ближайших лет, а десятилетий. Сегодняшние квантовые прототипы всё ещё капризны, нестабильны и работают лишь с ограниченным классом задач, причём при очень специфических условиях.
Но это не повод вычёркивать квантовые технологии из картины будущего. Уже сейчас они меняют наше понимание вычислений и заставляют пересматривать устоявшиеся подходы. Кто знает, возможно, после выхода на пенсию у нас уже будет возможность сыграть в очередной шедевр от Bethesda, запущенный на квантовом железе.