주 콘텐츠로 건너뛰기

강좌 소개

시작하기 전에, 짧은 강좌 사전 설문조사를 완료해 주세요. 이 설문조사는 콘텐츠 품질과 사용자 경험 개선에 중요한 역할을 합니다.

Note: This survey is provided by IBM Quantum and relates to the original English content. To give feedback on doQumentation's website, translations, or code execution, please open a GitHub issue.

아래를 클릭하여 Olivia Lanes의 강좌 소개를 들으시거나, YouTube에서 별도 창으로 동영상을 열어보세요.

이 강좌에 대하여

Quantum Computing in Practice에 오신 것을 환영합니다. 이 강좌는 오늘날의 양자 컴퓨터와 그것을 최대한 활용하는 방법에 초점을 맞춥니다. 100개 이상의 Qubit을 가진 양자 프로세서를 운용하고 실험하기 위한 현실적인 잠재 활용 사례와 모범 사례를 다룹니다.

양자 유틸리티

양자 컴퓨팅의 시대가 흥미롭게 열리고 있습니다. 수년간의 이론적·실험적 연구 개발 끝에, 양자 컴퓨터는 이제 고전 컴퓨터와 경쟁하고 유틸리티를 입증할 수 있는 시점에 가까워지고 있습니다.

유틸리티는 양자 우위와는 다릅니다. 양자 우위란 양자 컴퓨터가 의미 있는 작업에서 고전 컴퓨터를 능가하는 것을 의미합니다. 고전 컴퓨터는 놀라운 성능과 적응력을 갖추고 있으며, 현실적으로 양자 컴퓨터는 아직 그것을 이길 수 없습니다. 우리는 고전 컴퓨팅에서 수십 년에 걸친 발전을 목격해 왔습니다. 컴퓨팅 하드웨어뿐만 아니라 고전 컴퓨터를 위한 알고리즘도 발전했으며, 전자 디지털 컴퓨팅 기술이 우리의 세계를 근본적으로 바꾸어 놓았음을 분명히 알 수 있습니다.

반면 양자 컴퓨팅은 개발의 다른 단계에 있습니다. 양자 컴퓨팅은 양자 역학적 시스템에 대한 극도의 제어를 요구하며 오늘날 기술의 한계를 밀어붙입니다. 따라서 이 새로운 기술을 완전히 터득하고 고전 컴퓨팅을 처음부터 능가하기를 현실적으로 기대하기는 어렵습니다. 그러나 양자 컴퓨터가 일부 선택된 작업에서 고전 컴퓨팅 방식과 경쟁하기 시작하고 있다는 징후가 나타나고 있으며, 이는 양자 유틸리티로 알려진 양자 컴퓨팅 기술 진화의 자연스러운 단계입니다.

기술이 발전하고 양자 컴퓨팅을 위한 새로운 방법이 개발됨에 따라, 그 이점은 점점 더 뚜렷해질 것으로 합리적으로 기대할 수 있습니다. 다만 여기에는 시간이 필요합니다. 이 과정에서 고전 컴퓨팅과의 상호작용이 반복될 가능성이 높습니다. 양자 컴퓨팅이 시연을 선보이면 고전 컴퓨팅이 응답하고, 다시 양자 컴퓨팅이 도전하는 패턴이 되풀이될 것입니다. 그리고 언젠가 양자 컴퓨터의 성능을 고전적으로 따라잡을 수 없게 될 때, 우리는 양자 우위를 달성했다고 가설을 세울 것입니다. 하지만 그때도 확신은 할 수 없습니다! 고전 컴퓨터에 대한 불가능 결과를 증명하는 것 자체가, 우리가 아는 한 불가능할 정도로 어려운 문제이기 때문입니다.

자연 시뮬레이션

고전 시뮬레이터, 즉 고전 컴퓨터에서 실행되며 물리 시스템을 시뮬레이션하는 컴퓨터 프로그램은 양자 역학적 시스템에 대한 예측을 할 수 있습니다. 그러나 고전 시뮬레이터는 양자적이지 않으며 양자 시스템을 직접 에뮬레이션할 수 없습니다. 대신 수학적 계산을 사용하여 양자 동작을 근사합니다. 시뮬레이션되는 시스템의 크기가 커질수록 이를 위한 오버헤드가 급격히 증가하며, 고전적으로 시뮬레이션 가능한 양자 시스템의 범위, 시뮬레이션에 필요한 시간, 결과의 정확도에 한계가 생깁니다.

반면 양자 컴퓨터는 양자 시스템을 보다 직접적으로 에뮬레이션할 수 있으며, 그 결과 시스템 크기가 커져도 필요한 오버헤드가 훨씬 더 잘 확장됩니다. 사실 이것이 1980년대에 Richard Feynman이 양자 컴퓨터의 잠재력에 대한 연구를 처음 촉발시킨 아이디어였습니다. 이에 대해서는 나중에 더 자세히 살펴보겠습니다!

IBM® 연구진은 2023년에, 양자 컴퓨터가 특정 물리 모델의 시뮬레이션에서 최첨단 고전 기법과 경쟁할 수 있음을 처음으로 보여주는 논문을 발표했습니다. 그 결과는 여전히 고전 컴퓨터에서 실행되는 고급 기법으로 재현할 수 있지만, 브루트 포스 알고리즘을 능가했으며 또한 예측이 완전히 일치하지 않는 다양한 시뮬레이션 방법들이 비교할 수 있는 새로운 데이터 포인트를 제공합니다.

대형 양자 프로세서에 집중

IBM 양자 하드웨어를 이전에 사용해 보신 분들은 공개적으로 제공되던 소형 프로세서들이 오프라인으로 전환되고, 100개 이상의 Qubit을 가진 대형 프로세서들이 그 자리를 대체했음을 알아차리셨을 수 있습니다. 그 소형 프로세서들은 고전적으로 쉽게 시뮬레이션할 수 있었습니다. 따라서 발전하는 기술의 공개적인 디딤돌 역할을 했지만, 양자 유틸리티를 입증할 수는 없었습니다. 그것들로 할 수 있는 모든 것은 고전 시뮬레이션으로도 똑같이 쉽게 할 수 있었기 때문입니다.

그러나 약 100개의 Qubit에서는 더 이상 이것이 사실이 아닙니다. 이 크기의 양자 프로세서는 더 이상 고전적으로 시뮬레이션할 수 없습니다. 이는 고전 계산을 능가할 잠재력이 존재하는 새로운 양자 컴퓨팅 기술 시대로의 일종의 상전이를 나타냅니다. IBM이 집중하기로 선택한 곳이 바로 이곳입니다. 양자 계산 능력을 찾고 궁극적인 양자 우위를 향해 나아가는 것입니다.

우리는 사용자들이 이 새로운 장치들을 최대한 활용하고, 실험하며 한계를 밀어붙이고, 그 과정에서 얻은 교훈을 현재 개발 중인 차세대 양자 프로세서에 적용해 나가길 권장합니다. 이 강좌의 목적은 바로 여러분이 이를 실현할 수 있도록 돕는 것입니다!

대상 독자 및 강좌 목표

이 강좌는 양자 컴퓨터를 위한 새로운 애플리케이션을 개발하려는 분, 현재 양자 컴퓨팅 작업을 확장하고 싶은 분, 또는 워크플로에서 양자 프로세서를 활용하는 방법을 배우고자 하는 모든 분을 위한 것입니다. 물리학자나 컴퓨터 과학자뿐만 아니라 엔지니어, 화학자, 재료 과학자, 그리고 양자 컴퓨팅 하드웨어 숙달에 관심 있는 모든 분들도 포함됩니다.

이 강좌는 실습 중심이며 양자 컴퓨터의 실용적인 사용에 초점을 맞춥니다. 다음 주제와 기술들이 포함됩니다.

  • Qiskit Runtime을 통해 양자 프로세서에서 유틸리티 규모의 작업 실행하기
  • 오류 완화 기법을 사용하여 하드웨어 결과 개선하기
  • 근기한 양자 컴퓨터의 잠재적 응용 분야

이 강좌는 양자 컴퓨팅의 입문 이론을 다루지 않으며, Qubit과 양자 Circuit에 대한 기본적인 친숙함을 갖추고 있다고 가정합니다. 이 플랫폼의 양자 정보의 기초 강좌가 이 내용을 다루고 있으며, 양자 컴퓨팅이 처음인 분들에게는 먼저 수강하는 것을 권장합니다.

컴퓨테이션의 이야기

양자 컴퓨팅은 초기 단계에 있는 흥미로운 신기술이지만, 수천 년 전으로 거슬러 올라가는 긴 이야기 속 하나의 장에 불과합니다. 이것은 컴퓨테이션물리 세계와의 다면적인 연결에 관한 이야기입니다.

고대부터 이어진 컴퓨팅 장치

고대부터 인류는 컴퓨테이션을 수행할 필요가 있었습니다. 즉, 특정 규칙과 제약에 따라 정보를 처리함으로써 의사소통, 건설, 상업, 과학, 그리고 삶의 다양한 측면을 가능하게 해야 했습니다. 우리는 물리 세계에서 도움을 구했고, 기발한 발견들을 통해 계산을 돕는 장치들을 만들어 왔습니다.

아주 오래전에는 나무, 뼈, 매듭 지어진 줄로 만든 장치들이 정보를 저장하고 계산을 도왔습니다. 레버, 기어, 기타 기계 장치로 만들어진 기계식 장치들은 초기 천문 시계에서 계산기로, 그리고 바퀴와 회전 디스크를 이용해 방정식을 푸는 미분 해석기와 같은 정교한 컴퓨팅 장치로 발전했습니다. 심지어 문자 기술도 이 이야기에서 중요한 역할을 했는데, 사람들이 그렇지 않으면 수행할 수 없었을 계산을 가능하게 해 주었습니다.

오늘날 컴퓨터를 생각할 때 우리는 전자 디지털 컴퓨터를 떠올리는 경향이 있습니다. 하지만 이것은 사실 비교적 최근의 기술입니다. 전자 디지털 컴퓨터는 1940년대에 처음 만들어졌습니다. (이에 반해, 수메르의 주판은 기원전 2700년에서 2300년 사이에 발명된 것으로 알려져 있습니다.) 그 이후로 기술은 급격히 발전했고 컴퓨터는 이제 어디서나 볼 수 있습니다. 가정과 직장, 그 사이를 오가는 탈것에서도 찾아볼 수 있으며, 많은 사람들이 어디를 가든 컴퓨터를 携帯하고 다닙니다.

또한 우리에게는 슈퍼컴퓨터가 있습니다. 슈퍼컴퓨터는 강력한 클래식 프로세서들을 병렬로 연결한 대규모 집합체입니다. 인류가 어려운 문제를 풀기 위해 만들어 낸 최고의 도구 중 하나이며, 그 성능과 신뢰성은 계속해서 향상되고 있습니다. 하지만 그럼에도 불구하고, 문제 자체의 내재적인 계산 난이도로 인해 이 거대한 기계들조차 결코 풀 수 없는 중요한 계산 문제들이 존재합니다.

물리 세계와의 연결

컴퓨터에는 많은 용도가 있습니다. 컴퓨터의 중요한 용도 중 하나는 물리 세계에 대해 배우고 그 패턴을 더 잘 이해하는 것입니다. 이 분야에서 역사적인 활용 사례로는 일식과 조석 예측, 천체의 운동 이해, 그리고 (비교적 더 최근에는) 폭발 모델링 등이 있습니다. 오늘날 세계 어디서나 물리학 연구실에는 컴퓨터가 없는 곳이 없습니다.

더 넓게 보면, 물리학과 컴퓨테이션은 항상 서로 얽혀 있었습니다. 컴퓨테이션은 진공 속에서는 존재할 수 없습니다. 정보는 매체를 필요로 하며, 계산을 하려면 어떤 방식으로든 물리 세계를 활용해야 합니다. 컴퓨터 과학자(이자 IBM 직원)인 롤프 란다우어는 수십 년 전에 정보가 물리적이며 물리적인 표현을 통해서만 존재한다는 사실을 인식했습니다. 란다우어의 원리는 정보와 열역학 법칙 사이의 연결을 확립하지만, 실제로는 훨씬 더 많은 연결이 존재합니다.

물리 세계를 이해하는 것이 물리학이라는 학문의 목표이지만, 사실 이는 양방향 관계입니다. 물리 세계에 대한 이해를 통해 우리는 새로운 기술을 활용하여 계산을 도울 수 있고, 그 기술을 통해 물리 세계에 대해 계속해서 배워 나갑니다. 이는 본질적으로 물리학과 컴퓨팅 기술을 스스로의 힘으로 끌어올리는 것과 같습니다.

무어의 법칙

무어의 법칙은 집적 회로의 최대 트랜지스터 수가 약 2년마다 두 배로 증가한다는 관찰입니다. 지난 50여 년 동안 우리는 이 추세를 관찰했을 뿐만 아니라 그 혜택을 누려 왔습니다. 칩에 더 많은 트랜지스터가 집적될수록 더 복잡한 계산을 수행할 수 있고 더 빠르게 처리할 수 있습니다. 이것이 바로 컴퓨터가 시간이 지남에 따라 점점 더 강력해진 이유입니다.

하지만 무어의 "법칙"은 필연적으로 끝을 맞이하고 있습니다. 이것이 언제 일어날지에 대해서는 전문가들 사이에서도 의견이 엇갈리며, 이미 끝났다고 주장하는 이들도 있습니다. 하지만 컴퓨팅 부품의 소형화에는 이론적인 한계가 있기 때문에 이것이 결국 끝나야 한다는 것은 확실합니다. 트랜지스터를 원자보다 작게 만들 수는 없으니까요! 과장된 말처럼 들릴 수 있지만, 이것이 바로 우리가 다가가고 있는 벽입니다.

해결책은 "그래, 이게 최선이야"라고 포기하는 것이 아닙니다. 이는 인간의 본성에 어긋납니다. 대신 우리는 새로운 컴퓨팅 도구를 위해 물리 세계를 바라봐야 하며, 바로 이 지점에서 양자 컴퓨팅이 등장합니다.

양자 컴퓨팅

양자역학과 컴퓨팅

양자역학은 20세기 초에 발견되었으며, 이미 컴퓨팅 분야에서 중요한 역할을 해왔습니다. 실제로 양자역학에 대한 이해는 현대 컴퓨터를 가능하게 하는 데 일부 기여했습니다. 예를 들어 양자역학이 없었다면 솔리드 스테이트 하드 드라이브가 발명되었을지 상상하기 어렵습니다.

이론으로서의 양자 컴퓨팅

Richard Feynman이 1982년 양자 컴퓨터의 개념을 처음 제안했을 때, 그의 초점은 양자역학 시스템을 시뮬레이션하는 것이었습니다. 이를 수행하는 데 필요한 계산은 일반 컴퓨터에게는 너무 어려운 것처럼 보였습니다. 하지만 양자역학적 세계관에 따라 작동하는 컴퓨터라면 그 시스템을 직접 에뮬레이션할 수 있을지도 모른다는 생각이었습니다.

오늘날 이것은 양자 컴퓨팅에서 가장 유망한 방향 중 하나입니다. 우리의 이해에 따르면 자연은 고전적이지 않고 양자적입니다. 따라서 양자 컴퓨터는 자연을 이해하는 데 있어 귀중한 도구가 될 수 있습니다. 반면 고전 컴퓨터는 자연에서 실제로 일어나는 일을 근사할 수밖에 없으며, 경우에 따라서는 그 근사가 매우 제한적일 수 있습니다.

이를 이해하는 한 가지 방법은 풍동(wind tunnel)에 대한 비유입니다. 유체 역학은 수학적으로 시뮬레이션하고 예측하기가 매우 어렵습니다. 예를 들어, 자동차가 바람 속을 달리는 모습을 시뮬레이션하는 것은 비용이 너무 많이 들고 비현실적이기 때문에, 자동차 제조업체는 실제로 바람이 부는 터널을 만들어 자동차를 그 안으로 통과시켜 성능을 테스트합니다. 즉, 바람을 시뮬레이션하는 것이 아니라 실제 바람을 만들어 내는 것입니다. 자연 세계를 연구하기 위해 양자 컴퓨터를 구축하는 것은 바람이 자동차에 미치는 영향을 연구하기 위해 풍동을 건설하는 것과 비슷합니다. 양자 컴퓨터는 분자 수준에서 자연의 법칙을 직접 에뮬레이션할 수 있는데, 이는 양자 컴퓨터 자체가 그 법칙에 따라 작동하기 때문입니다. 다시 말해, 수식과 계산으로 자연을 시뮬레이션하는 것이 아니라 자연을 에뮬레이션하는 것입니다.

이후 다른 연구자들이 Feynman의 아이디어를 발전시켰으며, 이미 개발이 진행 중이던 양자 정보 이론과 연결했습니다. 양자 정보 및 계산 분야가 탄생한 것입니다. 이 분야는 이후 풍부하고 다학제적인 연구 분야로 발전했으며, 통신, 계산, 암호학을 포함하는 다양한 이론적 환경에서 고전 정보 및 계산에 비해 양자가 갖는 수많은 이점이 밝혀졌습니다.

실제로서의 양자 컴퓨팅

실용적인 관점에서, 이러한 이론적 이점을 실제 이점으로 전환하기 위해서는 두 가지가 필요합니다. 바로 장치 자체와 그 잠재력을 발휘하기 위한 방법론입니다.

고전 컴퓨터와 달리, 아무도 양자 컴퓨터를 뒷주머니에 넣고 다니지 않습니다. 불과 얼마 전까지만 해도 양자 컴퓨터로 실험하고 싶다면 직접 구축하고 유지 관리해야 했으며 (대개 대학이나 연구 시설의 허름한 지하 실험실에서), 기껏해야 몇 개의 매우 노이즈가 많은 Qubit만 사용할 수 있었습니다. 하지만 이제는 그렇지 않습니다. 2016년 IBM Quantum®은 최초의 양자 프로세서를 클라우드에 올렸습니다. 당시에는 Qubit이 5개에 불과하고 오류율도 꽤 높았지만, 그 이후로 많은 발전이 이루어졌습니다. 현재 기술 상태는 아래 섹션에서 요약하겠습니다.

양자 컴퓨터를 구축하는 것 외에도 효과적으로 사용하기 위한 방법론을 개발해야 합니다. 양자 알고리즘과 프로토콜의 이론적 발전은 강력한 잠재력을 시사하지만, 양자 컴퓨팅의 실용적인 활용 방법을 찾는 과제는 여전히 우리 앞에 놓여 있습니다. 오늘날의 양자 컴퓨터는 알려진 이론적 이점을 실제 이점으로 전환하는 데 필요한 내결함성 계산을 아직 수행할 수 없습니다. 하지만 고전 컴퓨터 시뮬레이션의 범위를 넘어서고 있으며, 이 사실을 컴퓨팅 파워로 활용하는 것을 목표로 할 수 있습니다.

이러한 발전과 함께 우리는 새로운 계산 도구를 갖게 되었으며, 이를 어떻게 활용할지는 우리에게 달려 있습니다.

잠재적 응용 분야

양자 컴퓨팅이 자동차가 바람 속에서 어떻게 성능을 발휘하는지 연구하는 데 유용할 것으로 기대되지는 않습니다. 하지만 배터리 설계나 특정 화학 반응에 관련된 물리적 과정처럼, 양자 컴퓨터가 자연을 에뮬레이션하는 능력이 양자 우위로 이어질 수 있는 분야들이 있습니다. 더 일반적으로, 우리 사회와 밀접하게 관련된 문제들을 포함하여 최첨단 슈퍼컴퓨터조차 다루기에 너무 어렵거나 비용이 많이 드는 문제들이 많습니다. 양자 컴퓨팅이 모든 문제에 해결책을 제공하지는 않겠지만, 일부 문제에는 해결책을 제시할 수 있습니다.

다음 세 가지 응용 분야는 양자 오류 수정 및 내결함성 구현 이전, 즉 노이즈가 있는 양자 컴퓨팅 시대의 목표를 나타냅니다.

  • 최적화
  • 자연 시뮬레이션
  • 데이터에서 구조 찾기 (머신 러닝 포함)

이 주제들은 강좌 후반부에서 더 자세히 논의하겠습니다.

기술 현황

양자 컴퓨터 구축은 어려운 기술적 도전이며, 소형 양자 컴퓨터가 공개된 지 불과 8년밖에 되지 않았습니다. 그 8년 동안 우리는 여러 측면에서 진전을 이루었습니다.

현재 수많은 IBM 양자 프로세서가 클라우드를 통해 접근 가능하며, 모두 100개 이상의 Qubit을 보유하고 있습니다. 하지만 중요한 것은 프로세서의 크기만이 아닙니다. 그것은 우리가 중요하게 여기는 지표 중 하나일 뿐입니다. Gate 품질도 크게 향상되었으며, 내결함성 시스템 개발을 향해 나아가는 동시에 양자 시스템 고유의 오류를 줄이고 완화하는 방법도 도입했습니다. 규모, 품질, 속도 — 이 세 가지 기본 지표가 성능 향상을 추적하는 데 핵심적입니다.

  • 크기. Qubit이 많을수록 분명히 좋지만, 수를 늘리는 것이 성능을 저하시키지 않는 경우에만 해당됩니다 (그렇지 않을 수도 있습니다). 실제로 우리가 원하는 것은 원치 않을 때 크로스톡을 통해 서로 간섭하지 않는 고품질의 Qubit을 더 많이 보유하는 것입니다. Qubit들이 서로 연결되는 방식도 중요하며, 이를 최적화하는 방법을 찾는 것은 초전도 Qubit Circuit에서 하나의 도전 과제입니다.

  • 품질. 시간이 지남에 따른 성능 향상을 추적하기 위해 관찰하는 또 다른 중요한 지표는 2-Qubit Gate 충실도입니다. 단일 Qubit에서 실행되는 Gate는 2-Qubit Gate만큼 오류가 발생하기 쉽지 않으므로, 후자가 더 큰 우려 사항입니다. (2-Qubit Gate는 또한 Qubit 간의 얽힘을 생성하는 역할을 하기 때문에 중요하며, 이 얽힘이 양자 컴퓨팅에 힘을 부여하는 물리 현상 중 하나라고 가설되고 있습니다.)

  • 속도. 마지막은 속도와 효율성입니다. 간단히 말해, 프로그램을 실행하는 데 걸리는 시간(양자 및 고전 부분 모두 포함)이 가능한 한 짧아야 합니다.

결론

양자 컴퓨팅 분야에서 일하기에 정말 흥미로운 시대입니다. 역사상 처음으로 우리는 고전 컴퓨팅의 한계를 넘어선 컴퓨팅 영역을 탐구하기 시작할 수 있게 되었습니다.

T.J. Watson은 일찍이 전 세계적으로 단 몇 대의 컴퓨터만 필요할 것이라고 예언한 것으로 유명합니다. 지금 돌아보면 그 예측이 얼마나 틀렸는지 웃음이 나오지만, 우리는 그것이 사후지식의 혜택 덕분임을 인정해야 합니다. 그리고 인간으로서 우리는 미래 기술의 잠재력을 터무니없이 과소평가하는 경향이 있다는 점도 인정해야 합니다. 이제 우리가 양자 컴퓨팅의 초기 개척자로서 역할을 맡게 된 만큼, 이 점을 항상 염두에 두어야 합니다.

양자 컴퓨팅은 흔히 고전 컴퓨팅과 대조되어 그것과 완전히 다르고 경쟁 관계에 있는 것으로 여겨집니다. 하지만 더 넓은 시각으로 바라보면 양자 컴퓨팅은 오랜 이야기 속의 또 하나의 장(章)에 불과합니다. 새로운 계산 방법을 추구하고 자연이 제공하는 힘을 활용하는 것은 인간의 본성입니다. 우리는 수 세기 동안 그래왔습니다. 양자 컴퓨팅은 이 도전에서 우리에게 새로운 도구를 제공하며, 그 힘을 어떻게 활용할 것인지 발견하는 것은 우리의 몫입니다.