현대식 컴퓨터 발전의 한계와 해결 방안인 양자 컴퓨터에 대하여

양자 컴퓨팅은 영화에서 보던 타임머신같은 그런 기술이라 생각한다. 양자 컴퓨터가 왜 개쩌는 기술인지 알기위해서는 고전적인 컴퓨터의 원리를 이해해야한다.


현재 널리 사용되고 있는 컴퓨터는 단순히 소형의 아주 빠른 계산기이다.  왜 계산기인가? 컴퓨터는 2진수로 데이터를 표시한다. 아니, 2진수의 상태값인 0과 1 만을 저장한다. 그리고 그럴수밖에없다.  왜그런가하니 컴퓨터는 어짜피 전기로 작동하는 기계이고, 컴퓨터에 뭔가 일을 시키려면 기본적으로 전류가 흘러야 가능하다. 따라서 과거의 천재들은 전류의 흐름으로 의미있는 데이터를 만들수 있는지 없는지를 생각하게되고, 방법을 찾아낸다. 전류가 흐르는지 검사하는 장치를 두어 전류가 흐르면 1 high charge 흐르지 않으면 0 low charge 로 구분하는 것이다.
어찌 생각해보면 당연히 도달할수 밖에 없는 결과이다. 전류로 어떻게 3가지 4가지 상태값을 표현할 것인가?


그럼 전류가 흐르고 안흐르는 상태를 구분하는 0 과 1로 배틀그라운드 까지 어떤식으로 만들어지는 것일까? 2진수 체계에는 사칙연산이 된다는 사실을 기억하라. 주로 프로그래밍 언어 서적 맨앞쪽에 나오는 1의 보수가 어쩌니 음수가 어쩌니 하는 이야기  말이다. 컴퓨터는  전류가 흐르고 흐르는 않는 상태를 구분하는 기계 ( 이름은 트랜지스터이다. ) 를 적절히 배치하여 사칙연산이 가능하다. 이것이 컴퓨터가 하는 일들의 전부이고, 컴퓨터가 단지 소형의 아주 빠른 계산기인 이유이다.


자 이제 컴퓨터는 사칙연산이 가능하고 수의 표현이 가능하다는걸 이해했을 것이다. 즉. 1+0 또는 1*0 은 이제 컴퓨터가 할 수 있다.
여기서 당신은 수학과 세상의 관계 대해서 어떤 생각을 가지고 있는가? 왜 수학자들이 수백년의 역사가 지나도록 천재로 추앙받고 있는가? 사실 수학이 개쩌는 이유는 수학으로 현실세계에 일어나는 모든 물리적인 상황을 표현할 수 있기 때문이다.. 즉, 수학을 이용하면 컴퓨터안에서 현실세계를 그대로 복제가 가능하다. 구체적인 예가 없어서 잘 이해가 안되겠다면 이에 관해서는 아름다운 수학적 지식 카테고리를 참고하도록 하자


정리하면, 컴퓨터의 사칙연산능력과 숫자 저장능력에 천재들의 수학적 유산이 합쳐져 우리는 전류가 흐르는지 안흐르는지 밖에 구분 못하는 기계로 배틀그라운드를 즐기고 있는 것이다. (이것이 프로그래머가 수학을 모르면 안되는 이유이기도 하다.)


계산기 즉, 컴퓨터의 발전 방향은 아주 단순하고 명료하다. "소형화" 즉, 트랜지스터를 얼마나 작게 만드느냐가 얼마나 좋은 컴퓨터를 만드느냐를 결정한다. 트랜지스터가 작아지면 좀더 작은 공간안에 고밀도로 들어가게 되고, 컴퓨터의 계산능력이 향상되는것이 당연한게 아닌가?
그럼 현대 기술에서 트랜지스터는 얼마나 작아졌을까? 오늘날의 전형적인 트랜지스터의 크기는 대력 14나노미터 정도로 적혈구보다 500배 작다. 아무튼 존나작은것이다. 그럼 트랜지스터는 기술이 발전하면 무한정 작아질수 있을까? 아니다.
트랜지스터는 근본적인 한계가 있는데, 결국 전자들이 움직이는 것 즉, 전류를 통제해서 0과 1의 상태값을 만드는 기계이다. 즉, 아무리 아무리 아무리 작아져봐야 전류가 흐르는 것을 통제 할 수 있는 크기보다 작아질수 없다. 그런데 트랜지스터들이 원자 크기만큼 줄어든다면, 전자들은 양자터널효과라는 물리적 현상을 거쳐 막혀있는 통로를 그냥 통과해버린다!!! 0과 1을 구분할수 없는것이다. 그렇다. 트랜지스터는 작아지는데 한계가 있고, 이는 소형화의 발전이 물리학적으로 한계에 다다름을 의미한다.

그렇다면 양자 컴퓨터는 트랜지스터와 어떤 관련이 있을까? 양자 컴퓨터는 0과1 을 구분하는데 전류의 흐름 즉, 트랜지스터를 사용하지 않는다. 기존 컴퓨터의 물리적 한계와는 아무 상관이 없는 컴퓨터이고 아예 다른 방식을 사용한다. 아직 손뼉을 탁 치기에는 애매하다 더 알아보자.


0이나 1을 저장하는 단위를 비트Bit 라고 한다. 컴퓨터의 용량 단위가 비트인 이유이고 비트는 반드시 0 또는 1로 정해져 있다. 양자 컴퓨터는 비트 대신에 큐비트Qubit 를 사용한다. 큐비트는 0과 1로 지정되기 전 상태를 가질수 있는데, 이 상태를 중첩Superposition 이라고 한다. 이 상태는 큐빗이 관측되기 전까지는 중첩 상태를 유지하다가 이를 측정하면 0또는 1의 명확한 상태로 와해Collapse 되는 특성이 있다.

큐비트가 비트에 비해서 혁명적인가?
4비트의 가능한 조합 :

비트는 하나당 두개의 상태값을 가질 수 있고, 이에 따른 4비트가 저장할수 있는 용량은 0혹은 1이 4개 들어있는 4비트이다. (하나만 사용할수 있는 16가지의 조합이 있다는 의미이다) 하지만 중첩상태의 큐비트에서는 0과 1이 결정된 것이 아니니 4개의 큐비트로 위의 16가지 조합을 동시에 가지는 것이 가능하다!







늘 그렇듯 숫자는 기하급수 적으로 늘어나게 된다. 중첩 큐비트 단 20개로 100만개의 값을 동시에 저장할 수 있게 되는 것이다.

여기서 부터 이해가 좀 힘들다. 나도 이해를 못했기 때문에 나중에 자세히 업데이트 하도록 하겠다. 대충은 이렇다 (틀릴수 있음, 읽기 난해할수있음)

그럼 양자 컴퓨터로 실질적으로 우리가 원하는 결과를 연산하는 방법은 무엇인가?
중첩상태의 큐비트를 양자 게이트를 통해 중첩의 입력값을 이용하여, 확률의 원리로 또다른 중첩 결과값을 도출하는데, 이는 양자 컴퓨터에서의 결과 값 또한 중첩 큐비트의 결과 값으로 나오므로, 결과가 항상 옳지는 않음을 의미한다. 즉 원하는 답을 얻기 위해서는 중첩과 얽힘(양자의 또다란특성),  그리고 확률 알고리즘의 적절한 조화를 통해 원하는 답을 고전의 컴퓨터보다 더 효율적으로 얻을 수 있다. 고전 컴퓨터는 맞는 답이 나올때까지 하나하나 계산하는 무식한 방법을 속도로 때운다. 물론 이를 보완하기 위한 여러 탐색 알고리즘들이 나와 있지만, 특정 한계치를 넘을 순 없다. 양자 컴퓨터는 이보다 훨씬 효율적이라는 것이다.


따라서 양자 컴퓨터는 다음 영역들을 효과적으로 대체할수있다.

1. 데이터베이스 검색 : 양자 컴퓨터는 데이터베이스 검색을 동시에 진행하므로 하나하나 대조하는 고전 컴퓨터에 비해 매우 효율적이다.
2. IT보안 : 당신의 롤 비밀번호를 생각해보자. 특수문자, 대소문자, 숫자가 비밀 번호에 활용될수 있는데 결국 비밀번호의 경우의 수는 한정되어 있다. 그럼에도 문제가 없는것은 경우의 수가 매우많기 때문에 고전 컴퓨터의 하나하나 대조하는 방식으로는 해킹하는데 무리가 있다. 하지만 양자 컴퓨터는 데이터베이스 검색과 비슷한 맥락으로 이를 순식간에 처리한다.
3. 시뮬레이션 : 분자 시뮬레이션 같은 계산량이 엄청난 시뮬레이션은 고전 컴퓨터로 하기에는 무리가 있지만, 이 분야에 양자 컴퓨터를 활용하면 보다 정확하고 빠른 시뮬레이션으로 각 업계의 발전에 많은 도움이 될 수 있다.

이제 양자 컴퓨터에 대해 조금은 이해가 되었는가?
아직 양자컴퓨터는 미지의 영역이고, 특유의 확률 알고리즘 때문에 위의 특정분야 말고 다른 영역에서는 고전 컴퓨터가 훨씬 효율적일 수 있다. 즉, 아직까지는 특수목적형 컴퓨터로써 활용되고 있다는 점이다. 상용화된 양자 컴퓨터는 캐나다의 D-Wave Systems 라는 회사에서 양자 터널링을 이용한 컴퓨터를 판매 하기는 하지만, 이는 완벽한 양자 컴퓨터와는 거리가 멀다는 의견도 있다. (그래도 NASA, Google 에서 사가긴 했음)

마지막으로 양자 컴퓨터의 개발 현황을 알아보자.

최근 일련의 물리학자들이 주축이 되어, 대규모 양자 컴퓨터 '건설' 계획을 추진하고 있다는 기사가 나왔다.
BBC 기사

2017년 3월 7일IBM에서 상용화 가능한 범용 양자컴퓨터 “IBM Q”를 몇 년 이내로 공개할 것이라고 발표하였다.
http://www-03.ibm.com/press/us/en/pressrelease/51740.wss

2017년 5월 3일 중국과학원이 세계 최초의 양자계산기를 개발했다고 공식적으로 발표했다. 실제 성능에 대한 자료가 있는 위키러는 추가바람.

2017년 9월 11일 중국이 세계 최대의 양자연구소를 지어 그 연구 결과물을 적군 암호 해독 등 군사 분야에 응용할 계획을 하고 있다.

2017년 10월 23일 IBM에서 49큐비트 양자컴퓨터 시뮬레이션에 성공했다고 발표했다. 이제는 양자우위의 차원을 넘어섰다는 평가다. 다만, 유용하게끔 되기까지는 시간이 걸린다고 한다. #1 #2