
2025.07.11 / 넥스트플랫폼 동준상 프로
지난 6월말, 부산정보산업진흥원의 사업공고를 둘러보다가 우연히 IBM Qiskit 서머 스쿨 (개발자 프로그램) 모집 소식을 보고 참가신청을 했습니다. 공식 참가 접수는 이미 마감된 상태였지만 부산진흥원이 마련한 추가 시드 덕분에 다행히도 서머 스쿨 등록에 성공했습니다. 3년만에 재도전한 양자컴퓨팅 스터디, 이번엔 작은 성과라도 얻을 수 있을까요?
목차
- QGSS25 5일차: 현실적인 양자 문제 풀이를 위한 실용적 양자 알고리즘
- QGSS25 4일차: IBM의 양자 서킷 개발 여정, 큐빗에 대한 물리적 이해
- QGSS25 3일차: 기초 양자 알고리즘 – 도이치, 그로버, 쇼어 알고리즘
- QGSS25 2일차: 양자 시뮬레이션, Q&A, 특강: 양자머신 기반의 자연 시뮬레이션
- QGSS25 1일차: 양자역학, Q&A, Qiskit 실습 준비
- 4부. IBM 퀀텀 클라우드 계정 생성, 튜토리얼 리뷰
- 3부. QGSS25 수강생 안내서 확인 및 예습
- 2부. IBMId 회원 가입 및 Qiskit 예습
- 1부. IBM 퀀텀 개발자 프로그램 참가 신청
참고영상: QGSS25 IBM Qiskit 스터디 개요 소개 영상
참고영상: IBM Qiskit 핸즈온 영상 P1
QGSS25 5일차: 현실적인 양자 문제 풀이를 위한 실용적 양자 알고리즘
S1. Practical Quantum Algorithms: VQA, VQE, QAOA
- Lecture: Joana Fraxanet Morales
- VQA: Variational Quantum Algorithms
- VQA는? 현재의 제한된 양자 하드웨어에서도 실질적으로 사용할 수 있는 하이브리드 알고리즘. 일부 연산은 양자 컴퓨터가, 일부 연산은 고전 컴퓨터가 수행하며 서로 보완.
- 필요성: 현재 양자 컴퓨터는 오류가 많고 큐비트 수가 적기 때문에, 완전한 양자 알고리즘은 실행이 어려움.
- VQA는 잡음에 강하고, 얕은 회로(depth가 작음)를 사용하며, 다양한 문제에 유연하게 적용 가능.
- 적용분야: 양자 오류 정정, 조합 최적화 문제 (예: 물류, 네트워크 최적화 등), 양자 화학 시뮬레이션, 양자 회로 컴파일, 양자 머신러닝
- VQE: Variational Quantum Eigensolver
- VQE는? 특정 양자 시스템의 기저 에너지(Ground State Energy)를 찾는 데 사용되는 알고리즘. 양자화학, 재료 과학, 약물 설계에 유용.
- 필요성: 분자의 안정성이나 반응성 등을 예측하려면 기저 상태 에너지 계산이 필요
- 전통적인 컴퓨터로는 매우 복잡한 분자 시스템의 에너지를 정확히 계산하기 어려움
- VQE는 양자 상태로부터 기저 에너지를 효과적으로 추정 가능
- QAOA: Quantum Approximate Optimization Algorithm
- Variational Quantum Machine Learning
S2. Practical Quantum Techniques
- Practical Quantum Techniques
S3. Live Q&A With Joana Fraxanet Morales
- Live Q&A With Joana Fraxanet Morales
S4. Lab2: Cutting Through The Noise
- Cutting Through The Noise
QGSS25 4일차: IBM의 양자 서킷 개발 여정, 큐빗에 대한 물리적 이해
S1. The Evolution and Future of IBM Quantum Hardware
- with Holger Haas (Research Scientist)
- The Transmon
- Superconducting Qubit: Josephson Phase
- Readout Resonator






S2. Live Q&A Session
S3. The Physical Realization of Qubits
- with David DiVincenzo (RWTH Aachen)
Lab 2: Cutting Through the Noise
- with Alberto Maldonado Romo & Jorge Martinez
QGSS25 교재 모음
https://github.com/qiskit-community/qgss-2025-lecture-notes
- 1일: 양자역학의 기초 (Foundations of Quantum Mechanics)
- 2일: 양자컴퓨팅 특강 (Distinguished Lecture by John Preskill)
- 2일: 양자시뮬레이션 입문 (Introduction to Quantum Simulation)
- 3일: 양자알고리즘의 기초 (Foundational Quantum Algorithms Part I)
- 3일: 양자알고리즘의 기초 (Foundational Quantum Algorithms Part II)
- 4일: IBM 양자 하드웨어의 과거와 미래 (The Evolution and Future of IBM Quantum Hardware)

QGSS25 3일차: 기초 양자 알고리즘 – 도이치, 그로버, 쇼어 알고리즘
- Foundational Quantum Algorithms Part I
Deutsch’s Algorithm
Grover’s Algorithm - Foundational Quantum Algorithms Part II
Phase Estimation
Shor’s Algorithm - Q&A
D3 세션1: 기초 양자 알고리즘
John Watrous 선생님
Technical Director, IBM Qunatum Education
1. 도이치 알고리즘 (Deutsch’s Algorithm)

1.1 도이치 알고리즘 소개
- 문제 배경
- 어떤 함수 f:{0,1}→{0,1} 가 상수 함수인지 또는 균등 함수(balanced)인지 판단하는 문제
- 고전적으로는 두 번 평가해야 함: f(0), f(1)
- Deutsch의 질문
- “양자 컴퓨터는 이 문제를 한 번의 평가로 해결할 수 있을까?”
- 핵심 아이디어
- 양자 중첩과 간섭을 이용해 함수의 특성을 단 한 번의 계산으로 판별
1.2 도이치 알고리즘 흐름 요약
- 입력 상태 초기화
- 두 개의 큐비트 사용: ∣ψ0⟩=∣0⟩⊗∣1⟩
- Hadamard 게이트 적용
- 각 큐비트에 HHH 적용: ∣ψ1⟩=H⊗H(∣0⟩⊗∣1⟩)=21(∣0⟩+∣1⟩)⊗(∣0⟩−∣1⟩)

- Oracle UfU_fUf 적용: Uf∣x⟩∣y⟩=∣x⟩∣y⊕f(x)⟩
- 마지막 Hadamard와 측정: 첫 번째 큐비트에 HHH 적용 후 측정
1.3 작동 방식 시각화
- 전체 회로 구조
|0> ──H────●────H───M──→ 결과에 따라 f가 상수인지 균등인지 판별
|1> ──H────Uf─────────

- 결과 해석
- 측정 결과가
|0⟩
: f(0)=f(1) → 상수 함수 - 측정 결과가
|1⟩
: f(0)≠f(1) → 균등 함수
- 측정 결과가
1.4 입문자를 위한 직관적 설명
- 도이치 알고리즘이 빠른 이유
- 고전적 접근은 두 번의 함수 호출 필요
- 양자는 두 입력을 동시에 계산하는 효과를 냄
- Deutsch Algorithm의 의미
- 최초의 양자 알고리즘
- 이후 Deutsch–Jozsa, Grover, Shor 등의 발전으로 이어짐
- 실습 팁 (Qiskit)
QuantumCircuit(2, 1)
으로 구성ccx
,cx
, 사용자 정의 oracle 함수로 Uf 구현

도이치 알고리즘 이해에 도움을 준 포스트
https://computing-jhson.tistory.com/53
2. Grover’s Algorithm
“검색 문제를 빠르게 해결하는 양자 알고리즘”
2.1 그로버 알고리즘의 유용성
- 고전 컴퓨터는 비정렬된 데이터베이스에서 원하는 값을 찾을 때 평균적으로 N2\frac{N}{2}2N번, 최악의 경우 NNN번을 시도해야 합니다.
- 예) 자물쇠 비밀번호가 4자리일 때, 0000부터 9999까지 하나씩 시도해야 함 → 10,000개 탐색
Grover의 알고리즘은 N\sqrt{N}N번만 시도해도 정답을 찾을 확률이 매우 높아집니다!
2.2 그로버 알고리즘 핵심 아이디어
개념 | 설명 |
---|---|
양자 중첩 | 가능한 모든 값을 동시에 시도 (평행 탐색) |
Oracle | 정답을 알려주는 함수, 정답에만 -1의 위상을 부여 |
Amplitude Amplification | 정답의 확률 진폭을 점점 키우는 과정 |
측정 | 최종적으로 정답일 확률이 가장 높은 상태로 수렴 |
2.3 그로버 알고리즘 동작 순서
- 모든 상태를 균등한 중첩 상태로 초기화
→ Hadamard 게이트 사용 - Oracle 적용
→ 정답 상태에만 위상 반전 (phase flip) - 확률 증폭 (Diffusion Operator)
→ 전체 상태의 평균보다 낮은 진폭은 내려가고, 높은 진폭은 올라감 - 이 과정을 약 N\sqrt{N}N번 반복
- 측정
→ 정답 상태가 가장 높은 확률로 출력됨
2.4 그로버 알고리즘에 대한 직관적 예시
🔍 문제: 4개의 상자 중 정답이 하나!
- 상태: ∣00⟩,∣01⟩,∣10⟩,∣11⟩|00⟩, |01⟩, |10⟩, |11⟩∣00⟩,∣01⟩,∣10⟩,∣11⟩
- 고전 탐색: 최대 4번 확인
- Grover: 단 1번의 반복으로 정답 확률을 100%로 올릴 수 있음
2.5 그로버 알고리즘 요약 정리
항목 | 내용 |
---|---|
목적 | 비정렬 데이터에서 빠르게 원하는 항목 검색 |
속도 | 고전적 O(N)O(N)O(N) → 양자적 O(N)O(\sqrt{N})O(N) |
주요 기술 | 중첩 상태, Oracle, 진폭 증폭 |
대표 사례 | 암호 해독, 최적화, 퍼즐 문제 등 |

3. Phase Estimation, Eigenvectors (고유벡터), (고윳값)
3.1 고유벡터(Eigenvector)와 고윳값(Eigenvalue)란?
- 선형대수의 개념이지만, 양자계에서도 매우 중요해요.
- 어떤 행렬 AAA 가 어떤 벡터 v⃗\vec{v}v에 작용했을 때,
그 방향은 변하지 않고 크기만 변하는 경우가 있어요.
Av⃗=λv⃗
- 여기서:
- v⃗ → 고유벡터 (eigenvector)
- λ → 고윳값 (eigenvalue)
직관적 예시
- 종이 위의 어떤 화살표 v⃗가 있다고 생각해보세요.
- 어떤 조작 AAA를 했더니 방향은 그대로인데 길이가 2배가 되었어요.
- 이때 v⃗는 고유벡터, 고윳값은 2입니다.
3.2 양자역학에서 고유벡터, 고윳값이 중요한 이유
- 양자 알고리즘에서는 어떤 유니터리 행렬 UUU 에 대해
고유벡터와 고윳값을 구하는 것이 핵심이 되는 경우가 많아요.

- 여기서 ∣ψ⟩은 고유벡터,
e2πiϕ는 복소수 형태의 고윳값
3.3 Phase Estimation Algorithm (위상 추정 알고리즘)
- 주어진 유니터리 연산자 UUU 와 그 고유벡터 ∣ψ⟩에 대해
고윳값의 위상 ϕ를 추정
- 제어 큐비트 nnn개와 타겟 큐비트 준비
- 제어 큐비트: 위상 정보를 저장할 레지스터
- 타겟 큐비트: 고유벡터 ∣ψ⟩ 상태
- Hadamard 게이트 적용 → 제어 큐비트 전부를 중첩 상태로
- 제어-U 연산 반복
- U20,U21,…,U2n−1을 제어 상태에 따라 적용
- 역 QFT (Quantum Fourier Transform) 적용
- 제어 큐비트 측정
- 고윳값 e2πiϕ의 위상 ϕ를 이진수 형태로 얻음
3.4 Phase Estimation의 용도
응용 분야 | 설명 |
---|---|
Shor’s Algorithm | 소인수분해 알고리즘의 핵심 단계 |
양자 시뮬레이션 | 분자의 에너지 고유상태 구하기 |
양자 머신러닝 | 고유공간 분석, 스펙트럼 분석 |
Hamiltonian Diagonalization | 물리계의 에너지 고윳값 추정 |
3.5 요약 정리
항목 | 내용 |
---|---|
고유벡터 | 연산에 의해 방향이 변하지 않는 벡터 |
고윳값 | 고유벡터가 얼마나 늘어나거나 줄어드는지를 나타냄 |
Phase Estimation | 양자 연산의 고윳값(위상)을 추정하는 알고리즘 |
주요 활용 | Shor, 양자시뮬레이션, 화학 계산, 머신러닝 등 |
4. Shor’s Algorithm
4.1 무엇을 위한 알고리즘인가요?
- 정수의 소인수분해를 매우 빠르게 수행하는 양자 알고리즘
- 예) 15 = 3 × 5 같이, 큰 수를 소수들의 곱으로 분해하는 문제
4.2 왜 중요한가요?
- 현재 인터넷 보안에 널리 쓰이는 RSA 암호는 소인수분해가 어려운 성질에 기반함
- 고전 컴퓨터로는 매우 큰 수(예: 2048비트)의 소인수분해가 사실상 불가능
- Shor는 이를 양자컴퓨터로 빠르게 해결할 수 있다는 것을 증명했어요
🔐 Shor 알고리즘은 암호기술에 가장 직접적인 영향을 줄 수 있는 양자 알고리즘입니다.
4.3 Shor 알고리즘의 아이디어 요약
💡 “인수분해 문제”를 주기(period)를 찾는 문제로 바꿔서 풀어요!
예를 들어, 어떤 정수 NNN을 인수분해하고 싶다고 할 때:
- 임의의 수 aaa (단, 1<a<N1 < a < N1<a<N)를 선택
- f(x)=axmod Nf(x) = a^x \mod Nf(x)=axmodN 이라는 함수를 정의
- 이 함수는 일정한 주기 rrr를 가집니다: f(x)=f(x+r)f(x) = f(x + r)f(x)=f(x+r)
- 이 rrr을 알면, gcd(ar/2±1,N)\gcd(a^{r/2} \pm 1, N)gcd(ar/2±1,N)을 통해 인수를 구할 수 있어요!
🎯 핵심: 이 “주기 rrr”를 양자컴퓨터로 빠르게 찾을 수 있다!
4.4 전체 흐름 정리 (입문자용 단계 요약)
단계 | 설명 |
---|---|
1️⃣ 문제 설정 | 큰 수 NNN을 소인수분해하고자 함 |
2️⃣ 임의의 수 aaa 선택 (1 < a < N) | |
3️⃣ gcd(a,N)\gcd(a, N)gcd(a,N) 계산 → 이미 인수 나오면 끝! | |
4️⃣ 함수 f(x)=axmod Nf(x) = a^x \mod Nf(x)=axmodN 정의 | |
5️⃣ 양자 알고리즘(Phase Estimation) 으로 주기 rrr 계산 | |
6️⃣ rrr이 짝수이고 ar/2≢−1mod Na^{r/2} \not\equiv -1 \mod Nar/2≡−1modN이면: | |
→ gcd(ar/2±1,N)\gcd(a^{r/2} ± 1, N)gcd(ar/2±1,N) 구해서 인수 추출 | |
7️⃣ 실패했으면 다른 aaa로 다시 시도 |
4.5 입문자를 위한 시각적 비유
🎰 슬롯머신을 돌리는 대신, 양자컴퓨터는 수많은 슬롯을 동시에 돌리고,
확률이 가장 높은 결과를 한 번에 보여줘요.
이 과정에서 ‘주기’ 라는 패턴을 빠르게 포착할 수 있는 게 핵심입니다.
4.6 요약
항목 | 설명 |
---|---|
문제 | 큰 수 NNN의 소인수 구하기 |
고전 알고리즘 | 지수시간 (너무 오래 걸림) |
Shor 알고리즘 | 양자 알고리즘으로 다항 시간에 해결 가능 |
핵심 기술 | 주기 찾기 + 위상 추정 (Quantum Fourier Transform 사용) |
응용 | RSA 암호 해독 가능 → 보안에 직접적 영향 |
4.7 문제 풀이 예시
- 15를 소인수분해
- a=2a = 2a=2 선택 → f(x)=2xmod 15f(x) = 2^x \mod 15f(x)=2xmod15
- 주기 r=4r = 4r=4
- 2r/2=42^{r/2} = 42r/2=4, gcd(4−1,15)=3\gcd(4-1,15) = 3gcd(4−1,15)=3, gcd(4+1,15)=5\gcd(4+1,15) = 5gcd(4+1,15)=5
- 👉 정답: 3과 5
QGSS25 2일차: 양자 시뮬레이션 입문
- 21:00 / 양자 시뮬레이션 입문 (Introduction to Quantum Simulation)
- 23:00 / 라이브 Q&A (Kaelyn Ferris)
- 01:00 / John Preskill (Caltech) 교수님의 특강 – Feynman’s Dream: Simulating Nature with Quantum Machines
D2 세션1: Intro to Quantum Simulation (Kaelyn Ferris)
양자 시뮬레이션의 이론적 기초부터 Qiskit을 활용한 실습 방법

D2 세션2: Kaelyn Ferris 라이브 Q&A


🔹 1. Core Concept (양자 시뮬레이션을 위한 기초 이론)
🌌 양자역학의 기본 가정 (Postulates of Quantum Mechanics)
- **상태(State)**는 힐베르트 공간(Hilbert Space)에서의 벡터로 표현됨.
- **측정(Measurement)**은 연산자(Observable)를 통해 이루어지며, 측정값은 연산자의 고유값(Eigenvalue).
- 측정 확률은 해당 상태의 고유벡터(Eigenvector)로의 투영의 제곱인 진폭(Amplitude) 제곱으로 결정됨.
- 파동함수 표현: ket |ψ⟩, bra ⟨ψ|, 상태벡터
- 직교성과 완비성: 정규 직교 기저(orthonormal basis)가 상태공간을 완전히 표현함 (Spanning Set)
- 시간 진화(Time Evolution): 슈뢰딩거 방정식으로 기술 iℏddt∣ψ(t)⟩=H^∣ψ(t)⟩i\hbar \frac{d}{dt}|\psi(t)\rangle = \hat{H}|\psi(t)\rangleiℏdtd∣ψ(t)⟩=H^∣ψ(t)⟩
- 해밀토니안(Hamiltonian): 에너지 연산자로, 시스템의 동역학을 결정함.
- 선형 연산자(Linear Operators): 행렬 표현 사용
- 예: 복소켤레(Complex Conjugate), 내적(Inner Product), 텐서곱(Tensor Product), 에르미트(Hermitian)
🔹 2. Quantum Simulation 방법론
고유상태 해법 (Eigenstate Solvers)
- Pauli 행렬을 사용해 간단한 해밀토니안 구축
- 고유값 문제를 풀어 에너지 준위를 계산
양자 동역학 (Quantum Dynamics)
- 시간에 따른 양자 상태의 변화 분석
- 예: 허버드 모델의 시간 진화
상전이(Phase Transition)
- 파라미터 변화에 따른 양자 시스템의 급격한 상태 변화 모사
🔹 3. 고전적 접근 방식 (Classical Approaches to Q Sim)
- 텐서 네트워크(Tensor Networks): 다체계 양자 시스템의 상태를 효율적으로 표현
- 밀도 범함수 이론(Density Functional Theory): 전자구조 계산에서 사용되는 근사 방법
🔹 4. 시뮬레이션 절차 (Simulating Quantum Systems)
- 모델 시스템 선정: 예) 1D 허버드 모델
- 해밀토니안 작성(Hamiltonian Mapping)
- 물리 시스템을 수학적으로 표현
- QPU에서 실행 가능하게 매핑 필요
- VQE (변분적 양자 고유값 해법)
- 고전/양자 하이브리드 접근으로 바닥상태 에너지 추정
- 샘플 기반 양자 대각화(Sample-based Quantum Diagonalization)
- 측정 기반으로 행렬 고윳값 근사
🔹 5. 실습 예시
Qiskit 활용 코드 예제
FermiHubbard-Example.ipynb
- 1D 허버드 모델의 시간 진화를 시뮬레이션
- Qiskit의
qiskit-nature
모듈과FermionicOperator
활용
✍️ 세션1 요점 정리
구분 | 내용 |
---|---|
핵심이론 | 양자상태, 해밀토니안, 측정, 파동함수, 슈뢰딩거 방정식 등 |
시뮬레이션 주제 | 고유값 해석, 동역학, 상전이 |
고전적 방법 | Tensor Networks, DFT |
주요 기술 | VQE, QPU 매핑, Sample-based Diagonalization |
실습 | 1D Hubbard Model – Qiskit 기반 시간 진화 시뮬레이션 |


PDF 다운로드 | Intro to Quantum Simulation by Kaelyn Ferris
https://drive.google.com/file/d/1XLIVTOCM_lJ64GTw_NOGm2c_glfPrb-J/view?usp=sharing



코드 다운로드 | QGSS25-D1-LAB1 (250708 / 동준상.넥스트플랫폼).ipynb
https://colab.research.google.com/drive/1D_3G-SWatRqWwQAxf8AgSVPT4Uz7fFYM?usp=sharing
D2 세션3: John Preskill (Caltech) 특강
페인만의 꿈: 양자머신으로 자연을 시뮬레이션하기
Feynman’s Dream: Simulating Nature with Quantum Machines




PDF 다운로드 | Preskill IBM Qiskit Summer School 2025
https://drive.google.com/file/d/1rKMGYp9dpXUOubS6jnb6A9OAMHmSaOAP/view?usp=sharing
QGSS25 1일차: 양자역학, Q&A, Qiskit 실습 준비
드디어 1일차 수업날입니다. (늘 그렇듯) 예습도 제대로 안 했는데 오늘 밤 9시부터 강의가 시작되네요. 부산정보산업진흥원 담당자께서도, IBM 담당자께서도 수강 공지 메일을 보내셨군요.


온라인 수강 미션 클리어 후 (8월초 예정인) 오프라인 3일 수업도 잘 마치면 시험비 (200달러) 할인 혜택도 제공하는군요.
오늘 밤 네 시간 동안 진행될 강의 내용은 아래와 같습니다.
- 양자역학의 기초
- 올리비아 레인 선생님과 라이브 Q&A
- 실습1: 유명한 양자역학 실험을 Qiskit으로 구현하기
7.7 (월) 1일차 | 08:00 (21:00) | – Foundation of Quantum Mechanics |
10:00 (23:00) | – Live Q&A With Olivia Lanes | |
12:00 (01:00) | – Lab1: Recreating Famous Experiments at Home |






1. 양자역학의 기초: 입문자를 위한 8가지 핵심 개념
1.1 양자역학이란 무엇인가?
- 정의: 미시 세계의 물리 현상을 설명하는 이론 (원자, 전자, 광자 등)
- 고전역학과의 차이점: 결정론 vs 확률론
- 필요성: 반도체, 레이저, MRI, 양자컴퓨팅 등의 기반 이론
- 양자컴퓨팅과의 관계: 정보 단위와 계산 모델이 기존 컴퓨터와 전혀 다름
1.2 양자 상태와 중첩(Superposition)
- 고전 비트 vs 양자 비트(Qubit)
- 비트: 0 또는 1
- 큐비트: 0과 1의 중첩 상태
- 수학적으로는
|ψ⟩ = α|0⟩ + β|1⟩
(단, |α|² + |β|² = 1) - 시각적 비유: 동전을 공중에 던졌을 때 ‘회전 중 상태’와 유사
1.3 측정과 확률
- 측정이란?: 중첩 상태가 **확정된 상태(0 또는 1)**로 바뀌는 행위
- 확률 해석: α² = 0이 될 확률, β² = 1이 될 확률
- 측정 전까지는 결과를 알 수 없음 (슈뢰딩거의 고양이)
- 파동함수의 붕괴란? 측정 순간 상태가 특정 값으로 수축됨
1.4 얽힘(Entanglement)
- 정의: 두 큐비트 이상이 물리적으로 연결되어 서로의 상태가 동기화되는 현상
- 예시: 한 큐비트가 0이면 다른 하나도 0 (또는 1)
- 고전적인 통신으로 설명 불가 → 양자 통신, 양자 암호화의 핵심
- 대표 상태: 벨 상태 (Bell state)
1.5 양자 게이트와 회로
- 양자 게이트: 큐비트의 상태를 변화시키는 연산 도구
- X 게이트 (NOT)
- H 게이트 (Hadamard: 중첩 생성)
- CNOT 게이트 (얽힘 생성)
- 양자 회로: 여러 게이트를 조합한 연산 설계도
- 게이트는 모두 역행렬 존재 (가역적)
1.6 양자 상태의 수학적 표현
- Dirac 표기법:
|0⟩
,|1⟩
,|ψ⟩
(브라-켓 표기) - 벡터 표현:
- |0⟩ = [1, 0]
- |1⟩ = [0, 1]
- H|0⟩ = (1/√2) * [1, 1]
- 선형대수학이 핵심 도구: 행렬 곱, 텐서곱, 내적, 유니터리 행렬 등
1.7 불확정성 원리와 양자 직관
- 하이젠베르크 불확정성 원리: 위치와 운동량은 동시에 정확히 알 수 없음
- 측정 불가능성과 노이즈의 본질
- 양자 직관이 필요한 이유
- 일상적인 상식과 다르므로 직관 훈련이 필요
- 실험 기반의 신뢰가 이론보다 선행됨
1.8 양자역학이 바꿔 놓은 세상
- 기술 응용 사례:
- 트랜지스터, 레이저, GPS, 양자센서
- 양자컴퓨터의 등장:
- 문제 해결 패러다임의 전환 (양자 우월성)
- Qiskit과의 연결고리:
- 이론 → 실험 → 코딩으로 이어지는 실전형 학습
- 입문자가 오늘 꼭 기억해야 할 한마디:
“양자역학은 이해하는 것이 아니라, 익숙해지는 것이다.”
2. Qiskit 실습 준비 및 연습
2.1 Qiskit 설치
bashCopyEditpip install qiskit
IBM Quantum 계정 연결 필요시
bashCopyEditpip install qiskit[visualization]
2.2 Qiskit 기본 구성요소
구성요소 | 설명 |
---|---|
QuantumCircuit | 양자회로 (큐비트와 게이트들의 집합) |
Aer | 시뮬레이터 백엔드 (로컬 실행용) |
execute | 회로를 시뮬레이터 또는 실제 IBM 양자컴퓨터에서 실행 |
transpile | 실행 최적화를 위한 회로 변환 |
plot_histogram | 측정 결과 시각화 |
2.3 예제1: 큐비트 1개에 Hadamard 게이트 → 중첩 상태 생성
pythonCopyEditfrom qiskit import QuantumCircuit, Aer, execute
from qiskit.visualization import plot_histogram
import matplotlib.pyplot as plt
# 1큐비트 회로 생성
qc = QuantumCircuit(1, 1) # (큐비트 수, 클래식 비트 수)
qc.h(0) # Hadamard 게이트 적용 → |+⟩ 상태
qc.measure(0, 0) # 큐비트 0을 고전비트 0에 측정
# 시뮬레이터에서 실행
simulator = Aer.get_backend('qasm_simulator')
job = execute(qc, simulator, shots=1024)
result = job.result()
# 결과 출력
counts = result.get_counts(qc)
print(counts)
plot_histogram(counts)
plt.show()
실행결과
{ '0': 512, '1': 512 }
(확률적으로 0과 1이 거의 반반 나옴)- 중첩 상태에서 측정 → 확률 분포
2.4 예제2: 큐비트 2개에 얽힘 상태 (Bell state) 생성
pythonCopyEditfrom qiskit import QuantumCircuit, Aer, execute
from qiskit.visualization import plot_histogram
import matplotlib.pyplot as plt
qc = QuantumCircuit(2, 2)
qc.h(0) # 1번 큐비트를 중첩
qc.cx(0, 1) # 제어-NOT 게이트로 얽힘 생성
qc.measure([0,1], [0,1])
simulator = Aer.get_backend('qasm_simulator')
job = execute(qc, simulator, shots=1024)
counts = job.result().get_counts()
print(counts)
plot_histogram(counts)
plt.show()
실행결과
{ '00': 510, '11': 514 }
(서로 얽힌 상태 → 00 또는 11만 나옴)- 얽힘(Entanglement) 상태가 잘 구현된 예
2.5 예제3: 양자 NOT 게이트 (X-gate) 동작 확인
pythonCopyEditqc = QuantumCircuit(1, 1)
qc.x(0) # X게이트 적용 (|0⟩ → |1⟩)
qc.measure(0, 0)
job = execute(qc, Aer.get_backend('qasm_simulator'), shots=1024)
result = job.result().get_counts()
print(result)
실행결과
{ '1': 1024 }
→ 항상 1이 나옴
정리: Qiskit 실습을 통해 배울 수 있는 양자역학 개념
양자 개념 | 코드 구현 방식 |
---|---|
중첩 | h() 게이트 |
얽힘 | h() + cx() 게이트 |
측정 | measure() 명령 |
확률적 결과 | shots 매개변수 활용 |
시각화 | plot_histogram() |
1일차 실습
Lab 0: Hello Quantum World! 예제 파일
https://github.com/qiskit-community/qgss-2025/blob/main/lab-0/lab0-ko.ipynb


실습을 위해서는 API 키 외에, 퀀텀 인스턴스의 CRN 필요



# API 키를 저장하여 답안을 제출하고 양자컴퓨터에 접속하는 데에 사용합니다 your_api_key = "이문장을지우고API키를붙여넣으세요" your_crn = "이문장을지우고CRN을붙여넣으세요" from qiskit_ibm_runtime import QiskitRuntimeService QiskitRuntimeService.save_account( channel="ibm_quantum_platform", token=your_api_key, instance=your_crn, name="qgss-2025", overwrite=True )







1일차 실습 완성 파일 다운로드
QGSS25-D1-LAB0.ipynb
https://colab.research.google.com/drive/1fNl1rk4OTMJRYk3TnpasRMXsqxp_9JQ9?usp=sharing

1일차 강의후기 – crowdcast에서 강의한다는 사실을 강의 시작 직전에 알게 됨 ㅜㅜ – 라이브 스트리밍 도중 몇 번 튕김 발생 >> 이후 안정 – 인트로 5분 세션 종료 –> 영상 클립 생성 –> 대기 –> 다소 혼란스러움 – 5분여 세션하고 나니 어느새 9:30 – 인도 친구들 압도적으로 많음 – 채팅창에 자기 이력서 올려두고 ‘나 좀 써줘’하며 영업하는 친구들도^^ – 그러자 다른 인도 친구들 질색팔색^^ – 채팅창에 링크드인 프로필 링크 올리느라 바쁨 – 라이브 강의가 아니라고 분개하는 인도 친구들 – 녹화 강의면 미리 배포해도 되지 않았냐는 불만 – 라이브 Q&A만 라이브^^ – 세션 3 끝내고 거의 1시간 30분후 세션 4 시작 >> 나는 그 시간에 Lab0 실습 – 초반 1137 –> 1340 –> 1425 –> 1810명 접속 |
4부. IBM 퀀텀 클라우드 계정 생성, 튜토리얼 리뷰
서머스쿨 시작 3일전, 몇 가지 추가 사항에 대한 준비 메일을 받았고요

요약하면,
“랩을 시작하기 전 IBM Cloud, qBraid 환경 설정, Lab 0 실행을 완료해 주세요!”
퀀텀 실행 환경을 이용하기 위해 아래와 같은 준비가 필요해요.
QGSS25 시작 전 필수 준비 요약
- IBM Cloud 체험판 등록
- 신용카드 없이 30일 무료 체험 시작 가능
- 기간 종료 전 카드 미등록 시 계정 비활성화
- qBraid 환경 사용
- 윈도우 사용자 등에게 권장
- 사전 구성된 클라우드 Jupyter 환경 제공
- 설정 가이드는 별도 링크 참조
- 랩 0 (Lab 0)
- 환경 세팅 및 코드 실행 테스트
- IBM Cloud 계정 설정, Python 패키지 설치 포함
- GitHub 저장소에서 제공
- Qiskit Functions 체험판
- 프리미엄 사용자 대상, 별도 신청 필요
- 관리자 승인 필수, 사용 안내는 추후 제공
하라는 대로 (30일) 무료 계정도 만들어서 접속도 하고
IBM Quantum Platform
https://quantum.cloud.ibm.com/

Qiskit 다큐먼트도 보고
입문자를 위한 Qiskit 소개 / Intro to Qiskit
https://quantum.cloud.ibm.com/docs/en/guides

Qiskit에서 말하는 ‘헬로 월드’가 뭔지도 알게 됐습니다.
Qiskit으로 만드는 첫 번째 퀀텀 프로그램 / Hello world of Qiskit
https://quantum.cloud.ibm.com/docs/en/tutorials/hello-world

Colab에서 보는 게 편하실지도 모를 분들을 위해
코드 다운로드 | hello-qiskit (250704 / jay.nextplatform).ipynb
https://colab.research.google.com/drive/1lpFT0JK9CBZE-nt8P9wHEgHRI4EUoSaE?usp=sharing

오늘은 영상이 길어서 미뤄뒀던 헬로 월드, 프리머티브 정리해야겠네요.
EP3. Qiskit으로 ‘Hello World’ 출력 연습
EP4. Qiskit의 프리머티브 (Primitive) 활용
3부. QGSS25 수강생 안내서 확인 및 예습

다음주 월요일 QGSS25 (2025년 하계 IBM 양자컴퓨팅 오픈스쿨) 강의 시작을 앞두고 수강생 안내서를 받았어요.

QGSS25 소개
Qiskit Global Summer School 2025
양자 컴퓨팅의 과거, 현재, 그리고 미래 (The Past, Present, and Future of Quantum)
- 전 세계 참가자를 위한 2주간의 양자컴퓨팅 집중 프로그램
- 2025년 ‘국제 양자의 해(International Year of Quantum)’ 기념
- 기초 이론부터 최신 기술, 미래 전망까지 아우르는 커리큘럼
- 수강생 전원: 구글 크롬 사용 필수

프로그램 개요
QGSS25 주요 구성
- 18회 강의 + 2회 패널토론
- 필수 실습 4개 + 커뮤니티 랩 4개
- Premium 전용 랩 8개 (IBM Quantum Network 대상)
- 실시간/사후 시청 가능, 자유로운 진도 운영
- 최소 35시간 권장, 협업 포함 시 약 45시간 예상
수강 준비 & 자료
수강 전 준비사항
- 양자컴퓨팅 기본 이해
- Qiskit 활용 경험 필요
추천 학습자료
- Qiskit 유튜브 채널
- Qiskit 설치 가이드, Hello World, Primitives 소개
- Discord 내 추천 자료 & learning.quantum.ibm.com

강사진 소개
세계 각국 IBM Quantum 소속 연구진 강의
- Holger Haas, Olivia Lanes, John Watrous
- Kaelyn Ferris, Majo Lozano, Patrick Rall 외
- 양자 알고리즘, 하드웨어, 교육 분야의 전문가 구성

랩 개발진
실습 과제를 설계한 랩 전문가들
- Tomas Jochym-O’Connor, Sophy Shin
- Yuri Kobayashi, Kifumi Numata (APAC 리드)
- James Weaver, Alberto Romo 외
- IBM Quantum Workforce & Education 중심
특별 초청 연사
세계적인 석학들의 강연
- John Preskill (Caltech)
- David DiVincenzo (Forschungszentrum Jülich)
- Barbara Terhal (TU Delft, QuTech)
- Jerry Chow (IBM Fellow, Quantum Systems)

실습 및 수강 방법
실습 가이드
- Lab 0은 Discord에서 사전 제공 (사전 준비용)
- Lab 1~4는 7월 7일부터 열림
- Qiskit 기반 실습 포함, 성적 반영
강의 참여
- 각 세션 후 라이브 Q&A
- 적극적인 메모 & 질문 권장
- Discord 통해 피드백 및 토론 가능
커뮤니티 & 수료
Discord 커뮤니티
- 7월 1일부터 오픈
- 실시간 토론, 도움 요청, 네트워킹
수료증 발급 조건
- 필수 과제 제출 및 평가 기준 충족
- 행동강령(Code of Conduct) 준수 필수

PDF 다운로드 | IBM QGSS 2025 Attendee Guide (19p / 1.2MB)
https://drive.google.com/file/d/1WzWd2JCtbQfRquebtOwTAf8f2EAvDB2o/view?usp=sharing
Qiskit 예습
주말엔 IBM이 추천하는 Qiskit 학습자료로 예습 좀 해야겠네요.



Qiskit 유튜브 채널
https://www.youtube.com/@qiskit
EP1. Qiskit 시작하기
1. 시리즈 소개 및 목표
- 목표: 최신 양자컴퓨팅 기술을 실무에 활용할 수 있도록 학습
- 중심 도구: Qiskit 1.0
- 오픈소스, 무료 양자컴퓨팅 개발 키트
- 양자 회로 설계 → 알고리즘 구성 → 실제 양자 컴퓨터 실행 → 대규모 워크플로우 관리
- 배경: Qiskit은 6년 전부터 개발되어왔고, 이번에 1.0 정식 버전으로 전환
2. 양자컴퓨팅에서 Qiskit을 사용하는 이유
- 양자컴퓨팅의 진화:
- Utility Era 진입 → 신뢰도와 규모가 향상
- 과학적 탐구에 양자컴퓨터가 실질적으로 활용되기 시작
- 활용 사례:
- IBM 127 큐비트 칩 전체 사용
- 수천 개 게이트, 수만~수십만 회 회로 실행
- 기술 트렌드:
- Circuit Cutting, Error Mitigation 등 양자-고전 연산 협업 증가
3. Qiskit 1.0의 3가지 핵심 가치
- 고성능
- 속도 개선, 메모리 최적화
- 100+ 큐비트, 수천 게이트 회로도 빠르게 처리 가능
- 간결성
- 불필요한 패키지 제거, 구조 단순화
qiskit.algorithms
분리,opflow
모듈 제거 등
- 안정성
- 버그 수정 지원 기간: 6개월 → 18개월로 연장
- 호환성 유지 보장
4. 새로운 기능 ① – 프리미티브(Primitives)
- Sampler / Estimator 모델 도입
- 기존
backend.run()
방식 대체 - 더 일관적이고 안정적인 하드웨어 접근 제공
- 기존
- 실제 양자 하드웨어 실행의 기본 인터페이스로 자리잡음
- 프로그래밍과 실험 설계의 효율성 향상
5. 새로운 기능 ② – 동적 회로 & 확장성
- 동적 회로 지원
- 복잡한 논리 연산 구현
- 얽힘 상태 생성, 장거리 게이트 구현, 오류 정정 기반 마련
- 생태계 확장성 강화
- 사용자 정의 트랜스파일러 플러그인 개발
- 커뮤니티와 코드 공유 용이
- 연구자/개발자의 커스터마이징 자유도 ↑
EP2. Qiskit 설치하기
1. Miniconda 설치
- 간편한 Python 실행환경 구성 및 패키지관리
2. 개발환경: VSCode
3. VSCode:
- 터미널 열고 새 미니콘다 환경 생성
- 실습폴더 cwq (coding with qiskit) 생성
conda create – name cwq
conda activate cwq
conda install pip
pip install qiskit
pip install matplotlib
pip install qiskit_ibm_runtime
pip install pylatexenc
4. VSCode: 새 파이썬 노트북 파일 생성
- 파일 이름: qiskit-ep-2-installation.ipynb
- 커널 변경: cwq (Python 3.~)
import qiskit
qiskit.version
5. Qiskit in Github 둘러보기
6. quantum.ibm.com 접속
- API Token 복사
7. VSCode
from qiskit_ibm_runtime import QiskitRuntimeService
service = QiskitRuntimeService(channel = “ibm_quantum”, token = “YOUR API Token”)
QiskitRuntimeService.save_account(channel = “ibm_quantum”, token = “YOUR API Token”)
backend = service.backend(name = “ibm_brisbane”)
backend.num_qubits
2부. IBMId 회원 가입 및 Qiskit 예습
IBM Qiskit 서머 스쿨 개강 안내
안녕하세요, Qiskit 학생 여러분
2025년 Qiskit 글로벌 서머 스쿨: 양자 컴퓨팅의 과거, 현재, 미래에 등록해 주셔서 감사합니다!
올해 프로그램은 2025년 7월 7일부터 22일까지 진행되며, 시작하기 전에 등록된 IBM ID 가 있어야 여름 학교 실습실에 접속할 수 있습니다. Qiskit 글로벌 여름 학교 등록 시 사용하신 이메일 주소가 IBM ID에 사용한 이메일 주소와 동일한지 확인해 주세요.Qiskit 글로벌 서머 스쿨 1주일 전에 최종 과정 일정과 추가 행사 정보가 담긴 공식 참석자 가이드를 보내드립니다. 또한, 올해 서머 스쿨 전용 디스코드도 개설됩니다. 그때까지 아래 자료를 확인하여 과정 준비를 도와주세요.
Qiskit 유튜브 채널을 방문하세요
a) Qiskit 소개 b) Qiskit 설치 방법 c) 안녕하세요 월드 d) 원시형
곧 Discord에서 여러분을 뵙기를 기대합니다!
IBM 양자컴퓨팅 플랫폼 대시보드
https://quantum.ibm.com

IBM 양자컴퓨팅 플랫폼 실무문서https://quantum.cloud.ibm.com/docs/en/guides

1부. IBM 퀀텀 개발자 프로그램 참가 신청
2022년 양자컴퓨팅 실무 입문서 ‘Learn Quantum Computing with Python and Q#‘ (사라 카이저 등 공저 / 에이콘출판 / 미출간) 번역 이후 양자컴퓨팅에 대한 약간의 실무적 이해는 확보했지만, 해당 기술에 대해 좀 더 깊은 인연이 없는 상황이 아쉬웠는데 우연히 정보진흥기관의 IBM Qiskit 서머 스쿨 모집 공고를 보게됐어요.
IBM 퀀텀 개발자 자격증 취득 프로그램 참가자 모집 공고
http://busanit.or.kr/board/view.asp?bidx=17617&bcode=notice&ipage=2&sword=&search_txt=

Qiskit Global Summer School은 무엇?
- Qiskit Global Summer School은 IBM이 매년 전 세계 학생과 연구자를 대상으로 개최하는 양자 컴퓨팅 교육 프로그램
- Qiskit 오픈소스 프레임워크를 활용해 양자 알고리즘, 양자 하드웨어, 양자 머신러닝 등을 실습 중심으로 학습
- 강의는 온라인으로 제공되고 IBM 양자 시스템 기반 실험 기회 제공

열흘동안 네 시간의 온라인 강의와 삼일간의 오프라인 강의가 혼합된 강의였는데, 저는 열흘의 일정 가운데 이틀정도 외부 일정이 있고 미룰 수도 없어서 참여를 망설였지만 한국 시간으론 21시~01시까지 진행되는 과정이어서 (오히려) 저는 좋았어요.

공고 확인 당시 글로벌 공식 참가신청은 마감된 상태 (Registrations closed)였지만

해당 기관에서 추가 시드를 확보한 상태여서 신청을 할 수 있었어요. (부산정보산업진흥원 담당자께 감사 감사드려요)

IBM | Qiskit Global Summer School 2025: The Past, Present, and Future of Quantum Computing
https://www.ibm.com/quantum/blog/qiskit-summer-school-2025


양자컴퓨팅에 대한 시험을 치면 100점 만점에 30점은 받지 않을까하는 생각으로 스스로의 능력치를 별 세 개 정도로 표시했어요. 3년전쯤 양자컴퓨팅 파이썬 입문서를 4~5개월 번역하면서 목차에 있는 내용을 본 적은 있는거 같다는 느낌이 들어요.

어쨌든 일단 접수는 성공했네요^^
양자컴퓨팅 개발자 인증자격 중에는 ‘IBM Qiskit 양자컴퓨팅 인증 개발자 (IBM Certified Associate Developer)‘ 자격증이 글로벌 IT 엔지니어들에게 많은 관심을 받고 있다는 얘기를 들었고요, 이번 글로벌 서머 스쿨도 금새 신청이 마감됐다고도 하더라구요.
물론, 프로그램 참여신청은 했지만 누구나 그렇듯 저도 이번 IBM 공식 온오프라인 강의를 수강하지 못할 수 있으니까 또 다른 대비책도 찾아봤고요, 다른 인증자격 시험이 그렇듯 IBM Qiskit 개발자 시험도 다양한 시험대비 콘텐츠를 활용할 수 있네요.
IBM | Preparing for the Qiskit developer certification exam
https://slides.com/javafxpert/prep-qiskit-dev-cert-exam

해당 모듈에 대응되는 덤프를 세일즈하는 사이트도 있네요.
KoreaDumps | C1000-112 무료샘플문제 (IBM Fundamentals of Quantum Computation Using Qiskit v0.2X Developer)
https://www.koreadumps.com/C1000-112-practice-test.html

2부. IBM Qiskit 양자컴퓨팅 개발자 시험 및 출제영역
Qiskit 개발자는 어떤 사람? 양자 컴퓨팅 개념에 대한 기본 지식을 갖추고 Qiskit 오픈 소스 소프트웨어 개발 키트(SDK)를 사용하여 양자 연산식을 표현할 수 있는 전문가로서 Python 기반 Qiskit SDK를 사용하여 IBM Quantum 컴퓨터 및 시뮬레이터에서 양자 컴퓨팅 프로그램을 개발하고 실행 역량을 지녀야 한다고 하네요. (부담 크네요^^;)
IBM Certified Associate Developer – Quantum Computation using Qiskit v0.2X
https://www.ibm.com/training/certification/ibm-certified-associate-developer-quantum-computation-using-qiskit-v02x-C0010300
Qiskit 개발자에게 요구되는 세부적인 핵심 역량
- Qiskit SDK를 사용하여 양자 회로의 결과 정의, 실행 및 시각화
- 단일 큐비트 게이트와 블로흐 구에서의 회전을 이해
- 다양한 다중 큐비트 게이트와 양자 회로에서의 효과를 이해
- qiskit.circuit, qiskit.execute, qiskit.providers, qiskit.qasm, qiskit.quantum_info, qiskit.tools, qiskit.visualization 패키지에 있는 범용 클래스, 함수 등 기본적인 Qiskit SDK 기능 활용 가능

출제 영역 분석
섹션 1: 양자 회로에서 작업 수행 (47%)
- 다중 큐비트 양자 레지스터 구축
- 고전 레지스터에서 양자 회로 측정
- 단일 큐비트 게이트 사용
- 다중 큐비트 게이트 사용
- 장벽 작업 사용
- 회로 깊이 반환
- 양자 회로 확장
- 회로에 대한 OpenQASM 문자열 반환
섹션 2: 실험 실행 (3%)
- 양자 회로 실험 실행
섹션 3: BasicAer 구현: Python 시뮬레이터 (3%)
- 사용 가능한 시뮬레이터 활용
섹션 4: Qasm 구현 (1%)
- QASM 파일과 문자열 읽기
섹션 5: 양자 정보 비교 및 대조 (10%)
- 고전적 레지스터와 양자 레지스터 활용
- 연산자 활용
- 충실도 측정
섹션 6: 실험 결과 반환 (7%)
- 실험 히스토그램 데이터 반환 및 이해
- 실험 상태 벡터 반환 및 이해
- 실험 유니터리 반환 및 이해
섹션 7: Qiskit 도구 사용 (1%)
- 작업 인스턴스의 상태 모니터링
섹션 8: 시스템 정보 표시 및 사용 (3%)
- Qiskit 버전을 중심으로 작업 수행
- quiskit_backend_overview 획득 정보 활용
섹션 9: 시각화 구성 (19%)
- 회로 그리기
- 데이터 히스토그램 출력
- Bloch 다중 벡터 출력
- 블로흐 벡터 출력
- QSphere 출력
- 밀도 행렬 출력
- 오류율 포함 게이트 맵 출력
섹션 10: Aer Provider에 액세스 (6%)
- statevector_simulator 백엔드 접근
- qasm_simulator 백엔드 액세스
- unitary_simulator 백엔드 접근

지속적으로 업데이트되는 포스트입니다. / 첫 포스팅: 250628 / 이 포스트에 대한 문의 및 요청: naebon@naver.com