안녕하세요 이번 시간엔 양자 컴퓨터에 대해 자세하게 알려드리고자 합니다.
먼저 요약하자면, 양자 컴퓨터(Quantum Computer)는 양자역학 원리를 활용하여
데이터를 처리하는 혁신적인 시스템, 미래형 최첨단 컴퓨터라고 보시면 이해하기 쉽습니다.
그렇다면 바로 기본적인 원리나 특징 등을 알아보겠습니다.
양자 컴퓨터(Quantum Computer)의 기본 원리
양자비트 또는 큐비트 (Qubit)에 대한 기본 이해
양자컴퓨터의 기본적인 요소는 ‘양자 비트 또는 큐비트(qubit)’입니다. 간단하게 이해해보자면
양자 비트 : 양자 컴퓨터와 양자 정보 처리에서 사용되는 기본 단위
큐비트 : 양자 컴퓨터 및 양자 정보 이론에서 사용되는 양자 비트의 약어 또는 기본 단위
“그냥 둘 다 비슷하다고 보면 됩니다.”
양자 비트의 경우 기본 정보 단위인 비트방식으로 정보를 유사하게 저장하고 전달하지만
양자역학의 원리를 활용해서 기존의 컴퓨터보다 빠르게 복잡하고 어려운 문제들을 쉽게 해결할 수 있습니다.
이것을 슈퍼 포지션(superposition)이라고 불리기도 합니다.
양자 병렬 처리(Quantum Parallelism)란 무엇일까?
앞서 설명드린 양자비트 또는 큐비트의 중첩상태와 양자얽힘을 활용해
동시에 여러 문제를 계산하고 풀 수 있는 능력을
양자 병렬 처리라고도 합니다.
그럼 이 원리에 대해서도 간단하게 알아보겠습니다
-중첩 상태 (Superposition)
중첩 상태란 즉, 원래의 기존(고전적인) 컴퓨터의 경우엔 0과 1만을 단순히 구분할 수 있었다면 ‘양자 컴퓨터는 0과 1을 동시에 나타낼 수 있다는 겁니다.’
예시로, 양자 비트의 상태를 |0⟩와 |1⟩로 나타내보면 = α|0⟩ + β|1⟩ (여기서 α와 β는 복소수입니다)
-양자 얽힘 (Quantum Entanglement)
서로 먼 거리에 떨어져 있음에도 불구하고 두 개 이상의 큐비트가 서로 얽혀있는 경우,
하나의 큐비트 상태가 다른 큐비트에 영향을 물리적으로 미치는 것입니다
쉽게 보자면, ‘두 개의 큐비트 A와 B가 얽혀 있을 때, A의 상태를 변경하면 B의 상태도 변경된다는 거죠’
양자 병렬 처리의 이점은?
고전(전통)적인 비트 컴퓨터에서는 하나의 비트가 한 번에 하나의 값을 처리하므로
N 비트로 이루어진 레지스터의 경우 2^N 가지 상태를 각각 처리해야하나
양자 컴퓨터는 N 개의 큐비트를 사용하여 2^N 개의 상태를 동시에 처리 (병렬) 할 수 있습니다.
양자 알고리즘의 활용
또한 양자 병렬 처리는 특히 양자 알고리즘에서 크게 활용될 수 있습니다.
양자 알고리즘은 중요한 계산 문제를 기본 알고리즘보다 효율적으로 해결할 수 있는 알고리즘을 의미합니다
대표적인 양자 알고리즘으로는 *쇼어 알고리즘과 그로버 알고리즘이 있으며,
이러한 알고리즘은 양자 병렬 처리의 이점을 활용하여 소인수 분해와 데이터베이스 검색 등에 적용됩니다
쇼어 알고리즘과 그로버 알고리즘이란?
쇼어 알고리즘은 양자컴퓨터를 활용해 현재 고전적(전통적)인 컴퓨터로는
풀기 어려운 정수/인수분해의 문제를 효율적으로 해결하는 알고리즘이라고 생각하면 됩니다.
그리고 양자 컴퓨팅 분야에서 가장 유명하고 중요한 알고리즘 중 하나로, 암호학 및 보안 분야에서는 중요한 도전 과제로 인식하기도 하는데요,
이것은 1994년에 피터 쇼어(Peter Shor)에 의해 처음으로 개발 되었습니다
쇼어알고리즘의 특징들을 잠깐 알아보고 갑시다.
-소인수분해 문제
소인수분해 문제라는 건 큰 정수를 소수인 인수들로 분해하는 과정을 의미합니다.
그 과정을 알고리즘은 ‘소인수분해를 간단하고 효율적이게 풀 수 있다는 것이죠’
EX) 15를 소인수분해하면 3과 5로 분해됩니다 (15 = 3 * 5)
-푸리에 변환 (Quantum Fourier Transform)
쇼어 알고리즘의 핵심 요소 중 하나는 양자 푸리에 변환(QFT)이라고 보셔도 됩니다.
이 변환을 사용한다면 (앞서 나온 중첩 상태와 얽힘을 활용) 주어진 정수 N에 대한 수학적으로 주기를 찾을 수 있습니다.
정수 N이 큰 소수의 곱으로 이루어진 경우, 이 주기를 찾는 것은 소인수분해에 관련해 중요한 정보를
훨씬 빠른 속도로 줄 수 있다는 것을 알 수 있습니다.
-시간 절약
쇼어 알고리즘은 일반 컴퓨터로는 수천 년이 걸릴 수 있는 큰 수의 소인수분해를 단 시간 안에 해결할 수 있습니다.
특히, 현재의 RSA 암호화와 같은 공개키 암호화 체계를 해독하는 데에 있어서 잠재적으로 위협이 될 수 있죠
그로버 알고리즘은 양자 컴퓨터를 사용하여 검색 문제를 효율적으로 해결하는 알고리즘이라고 생각하시면 됩니다.
1996년에 로이스 그로버(Lov Grover)에 의해 개발되었습니다.
이 알고리즘 같은 경우에는 정렬되지 않은 데이터베이스에서 원하는 항목을 빠르게 찾는 데 사용되고 있습니다
그렇다면 또 다른 그로버 알고리즘에 대해서도 잠깐 짚고 넘어가봅시다.
– 검색문제
앞서 설명드린 바와 같이, 그로버 알고리즘은 주어진 데이터베이스에서 특정 항목을 접근해 검색하고 찾는 문제를 해결하죠
허나, 데이터베이스의 항목은 정렬되어 있지 않다는 특징이 있습니다
– 오라클 (Oracle) 함수
검색 문제를 해결하기 위해 오라클 함수라고 불리는 함수를 사용하고 있습니다.
이 함수는 원하는 항목을 찾으면 1(예)을 반환하고, 그렇지 않으면 -1(아니오)을 반환합니다 (양자 컴퓨터에서의 중요한 부분 중 하나)
오라클 함수의 실제 구현은 검색하려는 항목과 데이터베이스의 각 항목을 비교해 일치 여부를 판단하는 방식으로 이루어져 있습니다.
– 그로버 반복 (Grover Iterations)
그로버 알고리즘의 핵심은 그로버 반복 과정을 수행하는 것입니다.
이렇게 반복을 더 많이 수행할수록 표시상태의 진폭은 증가하고, 올바른 것을 찾을 확률이 높아집니다.
– 암묵적 복잡도 절감
그로버 알고리즘은 고전(전통)적인 컴퓨터 알고리즘에 비해 제곱근 시간 안에 검색 문제를 해결할 수 있습니다
이는 데이터베이스의 크기가 커질수록 그로버 알고리즘의 이점이 더 커지게 됩니다.
양자 컴퓨터는 어떤 분야에서 활용되고 있을까?
암호 해독, 물질 과학, 화학 시뮬레이션, 금융 모델링 및
인공 지능 및 기계 학습, 데이터 압축 및 최적화 등 다양한 분야에 적용되고 있습니다.
양자컴퓨터의 개발 및 관련된 주요 대표 기업들
IBM, Google, Rigetti Computing
Honeywell Quantum Solutions, IonQ,
D-Wave Systems, Microsoft, Alibaba Cloud
위와 같은 기업들의 경우 양자 컴퓨터 기술들을 상용화하면서
다양한 분야를 위해 연구하고 계속해서 개발 및 발전하고 주도하고 있는 중입니다.
이렇게 양자 컴퓨터에 대해 알아보았습니다.
기술이 발전하면서 점점 양자 컴퓨팅에 대해서도 현재 여러 나라에서 많은 관심을 보이고 있습니다
앞으로 더 인간이 살아가면서 직접 해야될 여러 문제들을 쉽게 풀어줄 수 있다고 봅니다
조금 무섭긴 하네요
하지만 현실적으로 구현되어 상용화 되기까지엔 10년정도 걸린다고 합니다.
이 내용이 여러분들께 도움이 되셨으면 좋겠습니다. 그렇다면 여기서 포스팅 마치겠습니다


주파수도메인에서 위상으로 영상처리하면 결과가 강건해집니다.
홍릉과학출판사, “딥러닝을 위한 푸리에 영상처리”
http://hongpub.co.kr/shop/item.php?it_id=1679017270
추천 드립니다.