출판사 제공 책 소개
출판사 제공 책 소개
2020년 대한민국학술원 우수학술도서 선정도서 ★ 이 책에서 다루는 내용 ★ ■ IBM Q Experience를 사용해 프로그램과 실험을 시각적으로 작성해서 클라우드상의 양자 시뮬레이터 및 실제 양자 장치에 제출하는 방법 ■ IBM Q Experience의 REST API를 사용해 프로그램을 원격으로 실행하는 방법 ■ 고전 컴퓨터보다 성능이 우수한 알고리즘을 작성하는 방법 ■ 인증, 원격 장치 열거, 양자 프로세서에 관한 정보 조회 ■ 클라우드에서 원격으로 실험을 열거 및 실행할 수 있는 Node.js REST 클라이언트를 구축하는 방법 ■ 양자 숫자 생성기 작성 ■ 양자 순간 이동의 발견 ■ 고전적인 전함 게임의 양자 버전을 예제로 사용해 단일 큐빗 연산의 심화 학습 ■ 위조 동전 문제 ★ 이 책의 구성 ★ 1장, 양자역학의 기이하고 놀라운 세계 모든 것은 1930년대 어쩔 수 없이 천재라고 여겨진 막스 플랑크(Max Planck)로부터 시작됐다. 플랑크는 빛 스펙트럼의 에너지 분포에 대한 새로운 해석을 제시했다. 광자의 에너지는 고전 물리학자들이 믿는 것처럼 연속적인 함수로 기술되는 것이 아니고 플랑크가 양자(quanta)라고 부른 덩어리로 기술된다고 어쩔 수 없이 가정했다. 20세기 과학에서 가장 위대한 혁명, 즉 양자역학을 태동시킨 것이다. 1장은 본격적인 탐구에 들어가기 전의 애피타이저로, 2명의 물리학 거장 알버트 아인슈타인과 닐스 보어 간의 의견 충돌을 소개한다. 1930년대에 양자역학은 혁명적인 이론이었으므로 20세기 최고의 물리학자였던 아인슈타인을 포함해 많은 과학자가 받아들이기를 꺼려했다. 노벨물리학상 수상자이기도 했던 아인슈타인은 양자역학의 확률적 속성을 결코 받아들이지 않았다. 이 때문에 양자역학의 거두였던 닐스 보어와의 관계에 균열이 발생했다. 두 사람은 수십 년에 걸쳐 논쟁을 벌였으며, 끝끝내 의견차를 좁히지 못했다. 양자역학은 70년 동안 이론적, 실험적으로 수많은 도전을 받았으나 항상 논쟁에서 승리했다. 1장을 통해 두 명의 위대한 물리학자 사이의 흥미로운 이야기와 함께 양자역학의 바탕이 된 이론, 실험, 그리고 그 결과를 탐구한다. 2장, 양자 컴퓨팅: 현실의 구조 자체를 바꾼다 1980년대 또 다른 위대한 물리학자 리처드 파인만은 양자역학의 원리를 이용해 문제를 더 빨리 해결할 수 있는 컴퓨터, 즉 양자 컴퓨터를 제안한다. 양자 컴퓨터를 제작하기 위한 경쟁은 이미 시작됐다. 2장에서는 일반적인 용어를 사용해서 양자 컴퓨터의 기본적인 아키텍처, 즉 양자 계산의 기본 단위인 큐빗(qubit)을 탐구한다. 큐빗은 거의 마법과 같은 성질을 갖고 있는데, 바로 중첩(superposition)이다. 놀랍게도 큐빗은 동시에 0과 1, 두 개의 상태를 가질 수 있다. 이 개념은 우리가 살고 있는 거시적 규모에서는 이해하기 어렵다. 하지만 원자 규모에서는 현실 세계의 상식이 통하지 않으며, 이 사실은 70년 이상 실험적으로 입증됐다. 중첩 덕분에 양자 컴퓨터는 비교적 적은 수의 큐빗으로 대규모 계산을 수행해서 고전적인 컴퓨터를 능가할 수 있다. 상식을 뛰어넘는 큐빗의 또 다른 놀라운 성질은 큐빗의 얽힘(entanglement)이다. 얽힘은 알면 알수록 물리 법칙이 아니라 부두교 주술처럼 보이는 현상이다. 서로 얽힌 큐빗을 관찰하는 순간, 시간과 공간의 제약을 넘어서 빛의 속도보다 빠르게 상태 정보가 전송된다! 상식으로는 이해할 수 없는 현상이다. 2장에서는 양자 컴퓨터의 물리적 구성 요소인 양자 게이트와 초전도 루프, 이온 덫, 위상학 끈 등의 다양한 큐빗 설계 원리를 탐구한다. 또한 양자 컴퓨터 개발에 나선 주요 기업들의 현재 상황뿐 아니라 양자 어닐링과 같이 조금 다른 유형의 양자 계산을 소개한다. 3장, IBM Q Experience 시작: 유일무이한 클라우드 양자 컴퓨팅 플랫폼 3장에서는 IBM Q Experience에 발을 담근다. IBM Q Experience는 일반 대중이 사용할 수 있는 최초의 클라우드 양자 컴퓨팅 플랫폼으로, 실제 양자 장치 혹은 시뮬레이터를 제공한다. 전통적으로 실제 양자 장치는 연구 목적으로만 사용됐지만, 수십 년간 양자 컴퓨터를 개발해 온 IBM의 좋은 사람들이 일반에게 공개한 덕분에 우리들도 양자 컴퓨터를 사용할 수 있게 됐다. 시각적 작성 도구인 컴포저를 사용해 양자 회로를 만드는 방법과 여러분의 프로그래밍 열정을 위해 파이썬 SDK를 사용한 프로그램 작성 방법을 배운다. 그런 다음 실제 회로를 실행하고, 결과를 조사하고, 양자 프로그래머로서의 새로운 경력을 쌓기 위한 첫걸음을 내딛는다. IBM이 최초의 클라우드 양자 컴퓨팅 플랫폼을 내놓았지만 경쟁자들도 바짝 뒤쫓고 있다. 가까운 미래에 다른 IT업체들도 클라우드 양자 플랫폼을 발표할 것이다. 지금이야말로 배워야 할 때다. 4장, QISKit: 파이썬으로 양자 프로그램을 작성할 수 있는 멋진 SDK QISKit은 Quantum Information Software Kit의 약자로, 클라우드 또는 로컬 시뮬레이터에서 양자 프로그램을 작성하기 위한 파이썬 SDK다. 4장에서는 먼저 PC에 파이썬 SDK를 설치하는 방법을 배운다. 다음으로 선형 대수학을 사용해 양자 게이트를 기술하고 내부적으로 어떤 일이 일어나는지 더 깊이 이해한다. 이는 첫 번째 양자 프로그램을 작성하기 전의 애피타이저며, 첫 번째 양자 프로그램은 파이썬 SDK의 구문에 익숙해지기 위해 아주 간단한 프로그램을 사용한다. 마지막으로 실제 양자 장치에서 실행한다. 물론 컴포저에서 시각적인 도구를 사용해 양자 프로그램을 작성할 수도 있다. 양자 프로그램의 기본 구성 요소인 양자 게이트에 대해 자세히 이해하는 것이 중요하다. 4장에서는 이와 관련된 모든 내용을 다룬다. 5장, 시동을 켜시오: 양자 난수, 양자 텔레포테이션, 초고밀도 코딩 5장에서는 양자 시스템의 뛰어난 정보처리 능력 3가지를 설명한다. 양자 난수 생성은 진정한 무작위성을 제공하는 양자역학의 성질을 탐색한다. 매우 간단한 논리 게이트와 파이썬 SDK를 사용해 양자 난수 생성을 어떻게 달성할 수 있는지 배운다. 다음으로 서로 관련을 갖는 정보처리 프로토콜인 초고밀도 코딩과 양자 텔레포테이션을 설명한다. 이 프로토콜들은 이름만큼이나 불가사의한 특징이 있다. 이 프로토콜들의 비밀을 발견하고, 컴포저에서 회로를 작성하고, 파이썬을 사용해 원격으로 실행하며, 최종적으로 결과를 해석하고 검증한다. 6장, 양자 게임으로 놀아보자 6장에서는 양자 컴퓨터로 기본적인 게임을 구현하는 방법을 학습한다. 이를 위해 QISKit 파이썬 튜토리얼과 함께 배포되는 전형적인 양자 전함 게임을 사용한다. 전반부에서는 게임의 동작 원리를 주로 살펴보지만 여기서 멈추지 않는다. 후반부에서는 게임의 외관을 대폭 업그레이드함으로써 한 단계 진화한다. 웹 브라우저 기반의 사용자 인터페이스, 이벤트를 소비하고 양자 시뮬레이터로 보내는 아파치 CGI 인터페이스 등의 기능을 추가하면서 양자 전함 게임을 클라우드에 배포한다. 클라우드의 웹 브라우저로 양자 전함 게임을 플레이하면서 친구와 가족을 감동시키자. 7장, 게임 이론: 양자역학에서 확률은 언제나 호의적이다 게임 이론은 양자역학에서도 신기하다. 7장에서는 고전적 알고리즘에 비해 양자 알고리즘의 놀라운 힘을 보여주는 2개의 게임 퍼즐인 위조 동전 퍼즐과 머민-페레즈 매직스퀘어를 살펴본다. 위조 동전 퍼즐의 경우 양자 알고리즘은 양팔 저울을 제한된 횟수만큼 사용해 가짜 동전을 찾을 때 고전적 알고리즘보다 4차 속도 향상을 보여준다. 머민-페레즈 매직스퀘어는 양자 의사(pseudo) 텔레파시, 즉 게임을 하는 플레이어들