양자컴퓨팅 프로그램이 실제 하드웨어에서 실행되는 과정

양자 프로그램을 고전 컴퓨터에서 논리회로로 작성한 뒤 Transpilation과 ISA 회로 변환, Job 제출, QPU 제어와 측정을 거쳐 고전 결과를 반환받는 전체 과정을 설명한 이미지

양자컴퓨팅에서 내가 만든 양자회로는 실제로 어떻게 실행될까요? 양자 프로그램은 논리 회로를 실제 장치의 큐비트 연결과 지원 연산에 맞게 바꾼 뒤 제어 시스템을 거쳐 실행되는데요. 복잡하지만 아래 글을 통해 쉽게 정리할 수 있을겁니다. 함께보시죠. 양자 프로그램을 실행하면 실제로 어떤 일이 일어날까? 양자컴퓨팅을 처음 공부하면 Python으로 양자회로를 작성한 뒤 실행 버튼을 누르면 코드가 그대로 양자컴퓨터 내부로 전달되는 … Read more

양자컴퓨팅 회로 최적화는 왜 필요할까? 게이트 수와 오류를 줄이는 원리

논리 양자회로를 실제 QPU의 큐비트 연결성과 Native Gate에 맞게 Transpile하고 불필요한 게이트와 SWAP, Circuit Depth를 줄이는 회로 최적화 과정을 설명한 이미지

양자컴퓨팅에서 양자회로는 보통 컴퓨터의 입력 처럼 작성한 모습 그대로 실제 장치에서 실행되지 않는 경우가 많습니다. 양자 하드웨어마다 직접 지원 게이트가 다르고, 큐비트의 연결구조도 제한이 있기 때문인데요. 왜 이 얘기를 하는지 아래에서 확인하시죠. 양자회로는 왜 작성한 그대로 실행하지 않을까? 양자컴퓨터 프로그램을 처음 배우면 X, H, CNOT 같은 게이트를 연결해 원하는 회로를 만든 뒤 그대로 양자컴퓨터에 보내면 … Read more

양자컴퓨팅에서 회로 실행 횟수가 중요한 이유, Shots는 많을수록 좋을까?

하나의 양자회로를 여러 번 실행하는 Shot 수에 따라 측정 히스토그램과 확률 추정의 통계적 오차가 달라지고 실행 횟수가 증가할수록 표본오차가 감소하는 원리를 설명한 이미지

양자컴퓨팅은 우리가 흔히 사용하는 컴퓨터와 달리 한 번 실행한다고해서 정확한 확률을 알 수 없습니다. 즉, 실제 확률이나 기대값을 알아내려면 같은 회로를 여러 번 실행해야 하는데요. 이를 shot이라고 합니다. 아래에서 Shot에 대해 알아봅니다. 입문자를 위한 핵심 용어정리 용어 의미 Shot 양자회로를 한 번 실행하고 측정하는 반복 단위 Sampling 반복 측정으로 결과의 통계적 분포를 추정하는 과정 Counts … Read more

양자컴퓨팅의 제어 연산은 어떻게 이루어질까? CNOT부터 Controlled-U까지

Control Qubit이 중첩 상태인 채 Controlled-U를 적용해 목표 큐비트에 조건부 연산을 수행하고 CNOT으로 Bell 얽힘 상태를 만드는 양자 제어 연산 설명 이미지

양자컴퓨팅에서 양자 제어 연산은 제어 큐비트가 중첩 상태인 채로 다른 큐비트의 연산과 연결되면서, 이 과정에서 얽힘과 조건부 위상 같은 양자적인 효과가 만들어지는 연산입니다. 이번 글에서는 제어 연산의 과정에 대해 정리해봤습니다. 함께보시죠. 양자컴퓨팅에서 제어 연산이란 무엇일까 양자회로를 공부하다 보면 CNOT, Controlled-Z, Controlled-U처럼 ‘Controlled’가 붙은 게이트를 자주 만나게 됩니다. 이름만 보면 고전 프로그램의 if문처럼 어떤 조건을 확인한 … Read more

양자컴퓨팅에서 다중 큐비트 게이트가 필요한 이유

단일 큐비트 연산과 CNOT·CZ·SWAP 같은 다중 큐비트 게이트를 비교하고 H와 CNOT으로 Bell 얽힘 상태를 만드는 과정을 설명한 이미지

양자컴퓨팅에서 큐비트를 각각 따로 조작하는 것만으로는 여러 큐비트 사이의 복잡한 관계를 만들 수 없습니다. 즉, 다중 큐비트 게이트가 있어야 조건부 연산과 얽힘을 이용한 본격적인 양자회로를 구성할 수 있는데요. 아래 글을 함께보시죠. 다중 큐비트 게이트는 왜 필요할까 양자컴퓨터의 큐비트 수가 늘어나면 단순히 여러 개의 단일 큐비트를 따로 계산하는 것에서 끝나지 않습니다. 서로 다른 큐비트의 상태를 하나의 … Read more

양자컴퓨터의 결과는 어떻게 읽을까? 측정값 해석법 완전 정리

양자컴퓨터에서 측정된 비트 문자열을 반복 실행 횟수와 확률 분포로 변환하고 오류를 점검해 최종 결과를 해석하는 과정을 보여주는 인포그래픽

양자컴퓨터는 정답 하나가 아니라 반복 측정을 통한 확률 분포를 출력합니다. 이번 포스팅에서는 계산 결과 해석의 알고리즘부터 측정결과를 해석하는 방법까지 초보자가 쉽게 알수있도록 정리했습니다. 아래글을 통해 함께 학습해보시죠. 양자컴퓨팅 계산 결과를 해석하는 방법 완전 정리 양자컴퓨터는 계산이 끝났다고 해서 정답 하나를 곧바로 화면에 보여주지 않습니다. 양자회로의 마지막 상태를 측정하면 0과 1로 이루어진 비트 문자열 하나가 나오며, … Read more

양자컴퓨팅 프로세서 내부 구조와 작동 원리 쉽게 이해하기

양자 프로세서 내부에서 큐비트 초기화와 게이트 제어, 얽힘, 간섭, 측정 및 결과 분석이 이루어지는 과정을 보여주는 인포그래픽

양자 프로세서 내부에서는 큐비트 초기화, 게이트 제어, 얽힘과 간섭, 측정이 연속적으로 이루어집니다. 이번 포스팅에서는 양자컴퓨팅 작동 시 계산 흐름이 실제 어떻게 이뤄지는지 흐름을 정리하였습니다. 아래 글을 참고하시죠. 양자컴퓨팅 프로세서 내부에서는 어떤 일이 일어날까 일반 컴퓨터의 프로세서 안에서는 트랜지스터가 전기 신호를 빠르게 켜고 끄며 명령을 처리합니다. 반면 양자컴퓨팅 프로세서에서는 큐비트를 특정 상태로 준비하고, 정밀한 제어 신호를 … Read more

양자컴퓨터는 정말 동시에 계산할까? 대부분 틀리는 핵심 개념

양자컴퓨터가 여러 상태를 동시에 표현하지만 하나의 결과만 출력하는 구조를 보여주는 인포그래픽

‘양자컴퓨터가 모든 경우를 동시에 계산한다’는 말에는 설명할 점이 있습니다. 양자 게이트는 중첩된 입력의 각 성분에 선형적으로 작용하지만, 마지막 측정에서 그 모든 성분의 답을 각각 읽을 수는 없습니다. 병렬 연산이라는 말의 의미를 상태 변화, 간섭, 출력으로 나눠 보겠습니다. 한 큐비트에 H 게이트를 두 번 적용하기 처음 상태가 |0⟩일 때 아다마르(H) 게이트를 한 번 적용하면 (|0⟩+|1⟩)/√2가 됩니다. … Read more

양자컴퓨터는 왜 빠를까? 계산 시간이 줄어드는 진짜 이유

양자컴퓨터가 중첩과 간섭을 통해 계산 시간을 줄이는 과정을 보여주는 인포그래픽

양자컴퓨터가 모든 문제를 더 빨리 푸는 것은 아닙니다. 속도 향상은 문제의 구조에 맞는 양자 알고리즘을 설계했을 때 기대할 수 있습니다. 이 글은 정렬되지 않은 항목에서 정답 하나를 찾는 문제를 예로 들어, ‘빠르다’가 정확히 무엇을 뜻하는지 설명합니다. 속도를 비교하려면 문제와 기준부터 정한다 찾을 곳이 N개이고 어느 항목이 정답인지 확인하는 함수만 있다고 가정해 봅시다. 순서나 색인 같은 … Read more

양자컴퓨터 성능은 깊이에 달렸다? 회로 깊이의 진짜 의미

회로 깊이(Circuit Depth)는 병렬 실행 가능한 게이트를 같은 층에 놓았을 때 필요한 층의 수입니다. 실행 시간과 오류에 영향을 줄 수 있지만, 깊이 하나만으로 회로의 성능을 판단할 수는 없습니다. 양자컴퓨팅 회로 깊이가 성능에 미치는 영향 완전 정리 양자컴퓨터에서 성능을 결정하는 중요한 요소 중 하나는 바로 ‘회로 깊이(Circuit Depth)’입니다. 깊이는 병렬 실행을 반영한 게이트 층의 수이며, 장비에서 … Read more