KR20240033467A - 양자 어닐링에 기반하여 문제에 대한 솔루션을 계산하는 방법 및 장치 - Google Patents

양자 어닐링에 기반하여 문제에 대한 솔루션을 계산하는 방법 및 장치 Download PDF

Info

Publication number
KR20240033467A
KR20240033467A KR1020220112143A KR20220112143A KR20240033467A KR 20240033467 A KR20240033467 A KR 20240033467A KR 1020220112143 A KR1020220112143 A KR 1020220112143A KR 20220112143 A KR20220112143 A KR 20220112143A KR 20240033467 A KR20240033467 A KR 20240033467A
Authority
KR
South Korea
Prior art keywords
value
qubits
qubit
solution
clause
Prior art date
Application number
KR1020220112143A
Other languages
English (en)
Inventor
김창준
이기훈
최보현
이준구
한동수
이증락
이윤헌
Original Assignee
주식회사 엘지유플러스
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 엘지유플러스, 한국과학기술원 filed Critical 주식회사 엘지유플러스
Priority to KR1020220112143A priority Critical patent/KR20240033467A/ko
Priority to PCT/IB2023/061161 priority patent/WO2024052890A1/ko
Publication of KR20240033467A publication Critical patent/KR20240033467A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/60Quantum algorithms, e.g. based on quantum optimisation, quantum Fourier or Hadamard transforms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/40Physical realisations or architectures of quantum processors or components for manipulating qubits, e.g. qubit coupling or qubit control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B82NANOTECHNOLOGY
    • B82YSPECIFIC USES OR APPLICATIONS OF NANOSTRUCTURES; MEASUREMENT OR ANALYSIS OF NANOSTRUCTURES; MANUFACTURE OR TREATMENT OF NANOSTRUCTURES
    • B82Y10/00Nanotechnology for information processing, storage or transmission, e.g. quantum computing or single electron logic

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Artificial Intelligence (AREA)
  • Nanotechnology (AREA)
  • Chemical & Material Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)
  • Complex Calculations (AREA)

Abstract

본 명세서의 일 실시예에 따른 양자 어닐링(annealing)에 기반하여 문제(problem)에 대한 솔루션(solution)을 계산 방법은, 설정된 문제에 대해 통계적 분석을 수행하여 특정 큐비트의 값을 고정하는 것을 포함한다.

Description

양자 어닐링에 기반하여 문제에 대한 솔루션을 계산하는 방법 및 장치{METHOD AND APPARATUS FOR CALCULATING A SOLUTION TO A PROBLEM BASED ON QUANTUM ANNEALING}
본 발명은 양자 컴퓨터를 이용하여 문제에 대한 솔루션을 계산하는 방법 및 장치에 관한 것이다.
양자 어닐링은 주로 이진 조합 최적화에 사용되고 있으며, 실질적으로 이징 모델(Ising Model)을 구현한 한 초전도체 기반의 양자 어닐러가 사용되고 있다. 하지만 기술적 한계로 인하여 이징 모델을 구성하는 각각 큐비트들의 초기화 및 조작에 어려움을 겪고 있으며, 이로 인해 발생하는 에러는 사용자가 프로그래밍한 모델을 정확하게 계산하지 못하여 부정확한 결과를 야기시킨다. 따라서 이러한 에러를 보정하기 위하여 여러 방법론들이 제시되고 있다.
- 편향된 오류 기반 양자 오류 정정 부호 최적화 방법 및 장치 (등록특허 10-2361858, 등록일자 2022년 02월 08일) 그래프 상태를 이용한 양자 오류 정정 부호의 생성 방법 및 장치 (공개특허 10-1768066, 등록일자 2017년 08월 08일) 양자 프로세싱 디바이스 및 방법 (공개특허 10-2018-0022925, 공개일자 2018년 03월 06일)
Nested quantum annealing correction, Walter Vinci, Tameem Albash, Daniel A Lidar (tps://doi.org/10.1038/npjqi.2016.17.) Multi-qubit correction for quantum annealers, Ayanzadeh, Ramin, Dorband, John, Halem, Milton, Finin, Tim (https://doi.org/10.1038/s41598-021-95482-w)
본 발명이 이루고자 하는 기술적 과제는, 종래기술들의 문제점을 보완하기 위하여 큐비트의 반복 인코딩을 없애는 한편, 양자 어닐러로부터 기대하는. 계산 복잡도의 이득을 유지하기 위하여 반복적인 후처리 작업 간, 통계적인 분석을 바탕으로 주어진 문제의 사이즈를 줄이는 데 있다.
본 발명의 기술적 과제는 상술된 기술적 과제에 제한되지 않으며, 다른 기술적 과제들이 본 발명의 실시예로부터 유추될 수 있다.
본 발명은 양자 어닐링(annealing)에 기반하여 문제(problem)에 대한 솔루션(solution)을 계산하는 방법 및 장치를 제공한다.
본 발명의 일 양태로서, 양자 어닐링(annealing)에 기반하여 문제(problem)에 대한 솔루션(solution)을 계산하는 방법으로서, 양자 어닐링을 통해 복수의 큐비트(Qubit)들을 포함하는 샘플 세트(sample set)를 획득하는 단계; 통계적 분석에 기반하여 상기 복수의 큐비트들 중 특정 큐비트의 값을 고정하는 단계; 및 상기 고정된 특정 큐비트 값을 기반으로 문제에 대한 솔루션을 계산하는 단계; 를 포함하는, 솔루션 계산 방법이 제공된다.
본 발명의 다른 일 양태로서, 양자 어닐링(annealing)에 기반하여 문제(problem)에 대한 솔루션(solution)을 계산하기 위한 장치에 있어서, 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 동작 가능하도록 연결되고, 실행될 경우 상기 적어도 하나의 프로세서가 특정 동작을 수행하도록 하는 명령들(instructions)을 저장하는 적어도 하나의 메모리; 를 포함하고, 상기 특정 동작은: 양자 어닐링(annealing)에 기반하여 문제(problem)에 대한 솔루션(solution)을 계산하기 위한 장치에 있어서, 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 동작 가능하도록 연결되고, 실행될 경우 상기 적어도 하나의 프로세서가 특정 동작을 수행하도록 하는 명령들(instructions)을 저장하는 적어도 하나의 메모리; 를 포함하고, 상기 특정 동작은: 양자 어닐링을 통해 복수의 큐비트(Qubit)들을 포함하는 샘플 세트(sample set)를 획득하는 단계; 통계적 분석에 기반하여 상기 복수의 큐비트들 중 특정 큐비트의 값을 고정하는 단계; 및 상기 고정된 특정 큐비트 값을 기반으로 문제에 대한 솔루션을 계산하는 단계; 를 포함하는, 솔루션 계산 장치가 제공된다.
본 발명의 다른 일 양태로서, 적어도 하나의 프로세서가 동작을 수행하도록 하는 적어도 하나의 컴퓨터 프로그램을 포함하는 컴퓨터 판독가능한 비휘발성 저장 매체로서, 상기 동작은: 양자 어닐링을 통해 복수의 큐비트(Qubit)들을 포함하는 샘플 세트(sample set)를 획득하는 단계; 통계적 분석에 기반하여 상기 복수의 큐비트들 중 특정 큐비트의 값을 고정하는 단계; 및 상기 고정된 특정 큐비트 값을 기반으로 문제에 대한 솔루션을 계산하는 단계; 를 포함하는, 저장 매체가 제공된다.
상기 방법들 및 장치들에 있어서, 상기 고정된 특정 큐비트의 값에 기반하여 상기 문제의 크기(size)가 감소될 수 있다.
상기 방법들 및 장치들에 있어서, 상기 감소된 크기의 문제에 대해, 상기 획득 및 고정이 반복적으로 수행될 수 있다.
상기 방법들 및 장치들에 있어서, 상기 통계적 분석은, 상기 큐비트들 각각의 편향성이 시스템 에너지의 상태에 미치는 영향을 분석하는 것을 포함할 수 있다.
상기 방법들 및 장치들에 있어서, 상기 통계적 분석은: 상기 샘플 세트 내에서 상기 큐비트들 각각이 0과 1중 어느 값을 가지는지 카운트(count)하고; 상기 큐비트들 각각이 0과 1중 어떤 값에 편향되어 있는지에 대한 편향성을 도출하여 상기 큐비트들의 최적값을 추정하고; 상기 편향성이 임계값 이상인 특정 큐비트에 대해 시스템 에너지의 상태에 미치는 영향을 계산하는 것을 포함하며, 상기 영향의 계산 결과에 기반하여, 상기 특정 큐비트의 값이 고정될 수 있다.
상기 방법들 및 장치들에 있어서, 상기 편향성은 상기 큐비트들 각각의 카운트 값을 전체 샘플 세트의 개수로 나누는 동작을 통해 도출될 수 있다.
상기 방법들 및 장치들에 있어서, 상기 영향은, 상기 특정 큐비트의 값이 0인 경우의 시스템 에너지 값과 상기 특정 큐비트의 값이 1인 경우의 시스템 에너지 값을 비교함을 통해 계산될 수 있다.
상기 방법들 및 장치들에 있어서, 상기 통계적 분석은, 상기 큐비트들 중 일부 큐비트들의 조합에 대해 수행될 수 있다.
상기 솔루션 계산 장치는 양자 컴퓨터를 포함할 수 있다.
상술한 본 발명의 양태들은 본 발명의 바람직한 실시예들 중 일부에 불과하며, 본원 발명의 기술적 특징들이 반영된 다양한 실시예들이 당해 기술분야의 통상적인 지식을 가진 자에 의해 이하 상술할 본 발명의 상세한 설명을 기반으로 도출되고 이해될 수 있다.
본 발명의 일 실시예에 따르면, 양자 어닐러가 가지고있는 오류들의 근본적인 원인을 파악할 필요가 없이, high-level 간단한 어닐링 결과 분석을 통하여 각 큐비트의 최적값을 추측함과 동시에 문제의 사이즈를 줄여, 차후 진행하는 반복적인 어닐링 작업의 결과의 질적인 향상을 기대할 수 있다.
본 발명의 기술적 효과는 상술된 기술적 효과에 제한되지 않으며, 다른 기술적 효과들이 본 발명의 실시예로부터 유추될 수 있다.
도 1은, 단말이 접속 가능한 NTN의 시나리오들을 예시한다.
도 2는 솔루션 계산 장치의 주요 구성을 도시하는 블록도이다.
도 3은 본 발명의 일 실시 예에 따른 솔루션 계산 방법을 도시한 흐름도이다.
본 발명의 과제 해결 수단의 특징 및 이점을 보다 명확히 하기 위하여, 첨부된 도면에 도시된 본 발명의 특정 실시 예를 참조하여 본 발명을 더 상세하게 설명한다.
다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
이하의 설명 및 도면에서 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원 시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
또한, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 명세서에 기재된 "부", "기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, "일(a 또는 an)", "하나(one)", "그(the)" 및 유사 관련어는 본 발명을 기술하는 문맥에 있어서(특히, 이하의 청구항의 문맥에서) 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다.
본 개시의 다양한 예에서, "/" 및 ","는 "및/또는"을 나타내는 것으로 해석되어야 한다. 예를 들어, "A/B"는 "A 및/또는 B"를 의미할 수 있다. 나아가, "A, B"는 "A 및/또는 B"를 의미할 수 있다. 나아가, "A/B/C"는 "A, B 및/또는 C 중 적어도 어느 하나"를 의미할 수 있다. 나아가, "A, B, C"는 "A, B 및/또는 C 중 적어도 어느 하나"를 의미할 수 있다.
본 개시의 다양한 예에서, "또는"은 "및/또는"을 나타내는 것으로 해석되어야 한다. 예를 들어, "A 또는 B"는 "오직 A", "오직 B", 및/또는 "A 및 B 모두"를 포함할 수 있다. 다시 말해, "또는"은 "부가적으로 또는 대안적으로"를 나타내는 것으로 해석되어야 한다.
상술한 용어들 이외에, 이하의 설명에서 사용되는 특정 용어들은 본 발명의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 본 발명의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.
아울러, 본 발명의 범위 내의 실시 예들은 컴퓨터 실행가능 명령어 또는 컴퓨터 판독가능 매체에 저장된 데이터 구조를 가지거나 전달하는 컴퓨터 판독가능 매체를 포함한다. 이러한 컴퓨터 판독가능 매체는, 범용 또는 특수 목적의 컴퓨터 시스템에 의해 액세스 가능한 임의의 이용 가능한 매체일 수 있다. 예로서, 이러한 컴퓨터 판독 가능 매체는 RAM, ROM, EPROM, CD-ROM 또는 기타 광 디스크 저장장치, 자기 디스크 저장장치 또는 기타 자기 저장장치, 또는 컴퓨터 실행가능 명령어, 컴퓨터 판독가능 명령어 또는 데이터 구조의 형태로 된 소정의 프로그램 코드 수단을 저장하거나 전달하는 데에 이용될 수 있고, 범용 또는 특수 목적 컴퓨터 시스템에 의해 액세스 될 수 있는 임의의 기타 매체와 같은 물리적 저장 매체를 포함할 수 있지만, 이에 한정되지 않는다.
아울러, 본 발명은 퍼스널 컴퓨터, 랩탑 컴퓨터, 핸드헬드 장치, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그램 가능한 가전제품(programmable consumer electronics), 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 모바일 전화, PDA, 페이저(pager), 양자 컴퓨터 등을 포함하는 다양한 유형의 컴퓨터 시스템 구성을 가지는 네트워크 컴퓨팅 환경에서 실시될 수 있다. 본 발명은 또한 네트워크를 통해 유선 데이터 링크, 무선 데이터 링크, 또는 유선 및 무선 데이터 링크의 조합으로 링크된 로컬 및 원격 컴퓨터 시스템 모두가 태스크를 수행하는 분산형 시스템 환경에서 실행될 수 있다. 분산형 시스템 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치에 위치될 수 있다.
또한, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
본 개시의 실시예들을 구체적으로 설명함에 있어서, 특정 시스템의 예를 주된 대상으로 할 것이지만, 본 명세서에서 청구하고자 하는 주요한 요지는 유사한 기술적 배경을 가지는 여타의 통신 시스템 및 서비스에도 본 명세서에 개시된 범위를 크게 벗어나지 아니하는 범위에서 적용 가능하며, 이는 당해 기술분야에서 숙련된 기술적 지식을 가진 자의 판단으로 가능할 것이다.
그러면 이제, 본 발명의 실시 예에 따른 양자 어닐링(annealing)에 기반하여 문제(problem)에 대한 솔루션(solution)을 계산하는 방법 및 장치에 대하여 도면을 참조하여 상세하게 설명하도록 한다.
먼저 본 발명의 실시 예에 따른 솔루션 계산 방법에 대해 개략적으로 설명하도록 한다.
큐비트(또는 양자 비트)는 양자 컴퓨팅의 기본 정보 단위이다. 이진 비트는 기존 컴퓨팅의 기본 정보 단위로, 0과 1 중 하나를 나타내었다. 반면, 큐비트는 양자 역학 현상을 이용하여 두 상태의 선형 조합을 구현할 수 있다. 큐비트는 0일 확률이 확실한 상태와 1일 확률이 확실한 상태의 두 가지 상태 중첩으로 0과 1의 임의 비율을 나타낼 수 있다. 예를 들어, 큐비트는 0일 확률이 3/10, 1일 확률이 7/10인 상태를 나타낼 수 있다. 큐비트는 포획된 이온, 광자, 인공 또는 실제 원자, 준입자 등을 통해 구현될 수 있다.
양자 어닐링은 최대값(또는 최소값)을 최단 시간 내에 찾아야 하는 최적화 문제를 효과적으로 해결한다. 기존 컴퓨팅의 '힐 클라이밍(hill-climbing)'은 현재 솔루션보다 조금 더 나은 솔루션을 찾기 위해 매개변수를 반복적으로 변경하여 로컬 최대값(local maximum)을 파악하는 접근 방식이다. 문제는 여기서 찾은 '로컬 최대값'이 목표(global maximum)와 가장 가까운 값은 아닐 수도 있다는 점이다. 반면, 양자 어닐링은 더 높은 다른 언덕으로 건너가서 목표에 다다르는 방법을 제공한다. 양자 어닐링이라는 이름은 시뮬레이티드 어닐링(simulated annealing)이라는 고전 컴퓨팅 기법에서 유래했다. 접근 방식은 서로 비슷하지만 올라야 할 더 높은 언덕을 찾기 위해 양자 어닐링은 물리적 양자 현상을 이용하고 시뮬레이티드 어닐링은 난수를 이용한다는 점이 다르다.
구체적인 예를 들면, 양자 어닐러는 금속 나이오븀(Nb)을 가공하여 생성된 금속 링(ring)을 포함할 수 있다. 복수의 링들이 양자 어닐러를 위해 사용된다. 금속 링에 흐르는 전류의 방향에 따라, 금속 링을 통해 표현되는 큐비트 값이 1 또는 0이 될 수 있다. 예를 들어, 전류가 반시계 방향으로 흐른다면 큐비트 값이 1, 전류가 시계 방향으로 흐른다면 큐비트 값이 0일 수 있다.
금속 링의 온도가 절대영도가 되면, 금속 링은 초전도체가 되며, 양 방향으로 전류가 흐르게 되어, 0과 1의 중첩 상태가 표현될 수 있다.
금속 링들이 중첩 상태일 때, 횡(橫) 방향으로 자기장이 걸리면, 금속 링의 온도가 상승하여 초전도체의 효과가 없어진다. 이후 자기장이 점차 약화되면, 각 금속 링들 간 상호작용이 발생된다. 각 금속 링들 간 상호 작용에 따라, 각 금속 링들에는 전류가 시계 방향 또는 반시계 방향 중 하나로 흐르게 된다. 각 금속 링들 간의 상호 작용을 조절하면, 각 금속 링들 별 전류 방향이 조절될 수 있다. 동일한 방향으로 전류가 흐르는 금속 링들이 많을수록 높은 신호가 측정된다.
금속 링들 간 상호 작용의 조합을 바꾸어 가며 신호 측정을 반복하면, 최적화된 조합이 도출될 수 있다.
양자 어닐러(annealer)는 조합 최적화에 사용되는 휴리스틱한 방법론 중 하나이다. 휴리스틱(heuristics) 또는 발견법(發見法)이란 불충분한 시간이나 정보로 인하여 합리적인 판단을 할 수 없거나, 체계적이면서 합리적인 판단이 굳이 필요하지 않은 상황에서 빠르게 해답을 도출할 수 있도록 구성된 간편추론의 방법이다.
양자 어닐러는 기존의 고전적인 어닐링 방법과 비교하여 양자 터널 효과를 사용하여 주어진 시스템의 바닥 상태 에너지를 찾아낸다. 본 발명에서, 양자 어닐러는 특정 장치 내에 프로그램 형태로 구현된 양자 어닐링 모듈일 수 있다. 또는, 양자 어닐러는, 본 발명의 실시 예에 따른 솔루션 계산 장치와 연결된 별도의 장치일 수도 있다. 양자 터널 효과를 사용 시, 고전 어닐링을 비롯한 여러 방법론과 비교하여 이득을 기대할 수 있다. 다만 현재 기술적 한계로 인하여 양자 어닐러의 성능의 최대치를 끌어내는데 어려움이 있다.
외부 환경의 노이즈(noise), 양자 결맞음 현상, 어닐러 내 큐비트(Qubit)들 간의 연결성의 한계, 큐비트 조작 정밀도의 한계 등, 여러가지 복합적인 이유들로 인하여 양자 어닐러에서 에러(error)가 발생될 수 있다. 에러로 인해, 양자 어닐러는 사용자가 초기에 프로그래밍하고 의도한 바와 다르게 부정확한 결과를 출력한다.
에러의 요인들을 각각 모두 파악하고 해결하기에는 실질적으로 많은 어려움이 있다. 본 발명에서 제시하는 방법을 통하여 상위 레벨(high-level)에서 간편한 방법으로 양자 어닐링의 결과의 에러를 완화하고자 한다.
또한, 양자 어닐링을 비롯한 휴리스틱한 방법론들은 특성상 같은 문제를 반복적으로 계산하여 최적의 해에 가까운 답을 도출해내는데, 문제의 사이즈가 클수록 반복적인 연산 과정에 있어서 커다란 장애 요소가 된다.
본 발명의 핵심은, 양자 어닐링 결과의 통계적 분석을 통하여 큐비트의 최적값을 추정한 후, 반복적인 어닐링 과정에서 해당 큐비트의 값을 고정함으로써 문제의 사이즈를 점진적으로 줄이는데 있다.
본 발명의 방법을 통하여 반복적인 계산 과정에서 문제의 사이즈를 점진적으로 줄여 결과적으로 양자 어닐러의 탐색 공간(search space)를 줄임으로써, 연산 시간상의 이득뿐 아니라 연산 결과물의 질 또한 향상될 수 있다.
이하, 도 1을 참조하여 본 발명의 일 실시 예에 따른 솔루션 계산 방법에 대해 설명한다.
도 1을 참조하면, 솔루션을 구해야 할 문제 H에 대해, 솔루션 계산 장치(이하, 장치로 약칭한다)는 양자 어닐러를 사용하여 샘플링을 수행하고, n개의 샘플 세트를 획득한다. 예를 들어, 도 1의 n개의 행이 n개의 샘플 세트에 해당한다. 생략된 부분을 제외하면, 도 1에는 5개의 샘플 세트가 예시로 나타나 있다.
이후, 장치는 전체 샘플세트 내 큐비트들 각각이, 0과 1 중 어떤 값을 가지는지 카운트한다. 도 1을 참조하면, 도시된 범위 내에서, n개의 샘플들 중 첫 번째 큐비트는 5개의 1 값을 가지며, 두 번째 큐비트는 2개의 1 값과 3개의 0 값을 가진다. 세 번째 큐비트 및 네 번째 큐비트는 각각 3개의 1값과 2개의 0값을 가진다. 다섯 번째 큐비트는 5개의 0 값을 가진다.
장치는, 각 큐비트의 카운트 값을 전체 샘플 세트의 개수로 나누어, 큐비트과 통계적으로 0과 1 중 어떤 값에 편향되어 있는지 확인하고, 큐비트의 최적값을 추정한다. 예를 들어, 첫 번째 큐비트의 경우, 5개의 샘플 세트 중 5개의 값이 1이므로, 카운트 값 5를 5로 나누어, 큐비트 값의 1에 대한 통계적 편향도는 1임이 확인된다. 마찬가지로, 첫 번째 큐비트의 큐비트 값의 0에 대한 통계적 편향도는 0임이 확인된다. 두 번째 큐비트의 경우, 2개의 1 값을 가지므로, 카운트 값 2를 샘플 세트의 수 5로 나누면, 큐비트 값의 1에 대한 편향도는 2/5임이 확인된다. 다섯 번째 큐비트의 경우, 0개의 1 값이 카운트되므로, 카운트 값 0을 5로 나누면, 큐비트 값의 1에 대한 편향도는 0임이 확인된다.
장치는, 임계값(Threshold)을 정하고, 각 큐비트의 편향성이 해당 임계값 이상인 경우, 해당 큐비트가 전체 시스템 에너지의 상태에 미치는 영향을 계산한다. 임계값은, 예를 들어 0 또는 1에 대해 편향도 1로 설정될 수 있다. 도 1을 참조하면, 첫 번째 및 다섯 번째 큐비트들이 임계값 이상인 큐비트들에 해당한다.
장치는, 편향성이 임계값 이상인 큐비트가 시스템 에너지에 미치는 영향이 바닥 상태의 에너지에 가까워질 경우, 편향성이 임계값 이상인 큐비트의 값을 고정한다. 다시 말해서, 편향성이 임계값 이상인 큐비트가 시스템 에너지에 미치는 영향의 계산 결과에 기반하여, 편향성이 임계값 이상인 큐비트의 값이 고정된다. 구체적으로, 편향성이 임계값 이상인 특정 큐비트가 시스템 에너지에 미치는 영향은, 특정 큐비트가 0일 때의 시스템 에너지 값과 1일 때의 시스템 에너지 값을 비교함을 통해 계산될 수 있다.
예를 들어, 도 1의 첫 번째 큐비트 및 다섯 번째 큐비트 중 첫 번째 큐비트가 시스템 에너지에 미치는 영향은, 첫 번째 큐비트가 0일 때의 시스템 에너지 값과 1일 때의 시스템 에너지 값을 비교함을 통해 계산될 수 있다. 첫 번째 큐비트가 0일 때의 시스템 에너지 값이 1일 때의 시스템 에너지 값보다 작으면, 오류가 있는 것이므로 첫 번째 큐비트의 값은 1로 고정되지 않는다. 첫 번째 큐비트가 1일 때의 시스템 에너지 값이 0일 때의 시스템 에너지 값보다 작으면, 첫 번째 큐비트의 값은 1로 고정된다.
다섯 번째 큐비트도 마찬가지로, 다섯 번째 큐비트가 0일 때의 시스템 에너지 값과 1일 때의 시스템 에너지 값을 비교함을 통해 계산될 수 있다. 다섯 번째 큐비트가 0일 때의 시스템 에너지 값이 1일 때의 시스템 에너지 값보다 작으면, 다섯 번째 큐비트의 값은 1로 고정된다. 다섯 번째 큐비트가 1일 때의 시스템 에너지 값이 0일 때의 시스템 에너지 값보다 작으면, 오류가 있는 것이므로 다섯 번째 큐비트의 값은 0으로 고정되지 않는다.
장치는, 고정된 큐비트 값을 기반으로 문제의 사이즈를 줄인다. 도 1을 참조하면, 문제 H에서 고정된 큐비트들은 오프셋 형태로 문제에 반영될 수 있다.
장치는, 추가 어닐링을 진행하며 전체 과정을 반복한다.
이상으로, 도 1을 참조하여 본 발명의 일 실시 예에 따른 솔루션 계산 방법에 대해 설명하였다.
본 명세서에서, 획득된 샘플 세트 내에서 일련의 처리 과정을 거쳐 큐비트의 값이 고정될 때, 해당 처리 과정은 통계적 분석으로 지칭될 수 있다.
도 1을 참조하여 설명된 과정 중 도출된 큐비트의 최적값이, 문제에 대한 솔루션에 해당할 수 있다. 반복에 의해 고정된 큐비트들의 수가 늘어나면, 문제의 크기, 즉 양자 어닐러가 탐색할 탐색 공간은 줄어들게 되며, 큐비트들의 최적값을 추정하는데 소요되는 시간은 감소되면서 최적값에 대한 정확도는 증가될 수 있다.
또한, 장치는 단일 큐비트의 최적값을 추정하는 것뿐만 아니라, 큐비트들의 조합/클러스터의 형태의 통계적인 패턴을 보고 해당 조합의 최적값을 추정할 수 있다. 장치가 큐비트들의 조합의 형태를 분석할 경우, 추가 분석을 통하여 시스템 내의 양자적 얽힘 현상에 대해서도 유추해 볼 수 있을 것으로 기대된다.
예를 들어, 장치는 전체 샘플 세트에서 큐비트들의 조합이 어떤 형태를 가지는지 카운트한다.
큐비트들의 조합을 2개 조합 단위로 설정하는 경우, 장치는 큐비트들의 조합이 00, 01, 10, 11 중 어디에 속하는지를 카운트할 수 있다. 예를 들어, 도 1에서 처음 두 큐비트들의 조합에 대해, 2개의 11 조합과 3개의 10 조합이 카운트된다.
큐비트들의 조합을 3개 조합 단위로 설정하는 경우, 장치는 큐비트들의 조합이 000, 001, 010, 011, 100, 101, 110, 111 중 어디에 속하는지를 카운트할 수 있다. 예를 들어, 도 1에서 처음 세 큐비트들의 조합에 대해, 1개의 110 조합, 2개의 101 조합, 1개의 111 조합, 1개의 100 조합이 카운트된다.
장치는, 큐비트들의 조합을 기준으로 통계적 분석을 수행하여 큐비트들의 값을 정할 수 있다.
이상으로, 본 발명의 일 실시 예에 따른 솔루션 계산 방법에 대해 설명하였다. 이하, 도 2를 통해 본 발명의 일 실시 예에 따른 솔루션 계산 자치에 대해 설명한다.
도 2는 솔루션 계산 장치(300)의 주요 구성을 도시하는 블록도이다.
도 2를 참조하면, 본 발명에 따른 솔루션 계산 장치(300)는 입력 모듈(310), 출력 모듈(330), 양자 어닐링 모듈(350), 저장 모듈(370), 제어 모듈(390)을 포함하여 구성될 수 있다.
입력모듈(310)은 음성 및/또는 문자 정보 등의 다양한 정보를 입력 받고, 각종 기능을 설정 및 솔루션 계산 장치(300)의 기능 제어와 관련하여 입력되는 신호를 제어 모듈(390)로 전달한다. 또한, 입력 모듈(310)은 사용자의 터치 또는 조작에 따른 입력 신호를 발생하는 키패드와 터치패드 및/또는 사용자 발화에 따른 음성에 대한 입력 신호를 발생하는 마이크 중 적어도 하나를 포함하여 구성될 수 있다. 이때, 입력 모듈(310)은 출력 모듈(330)와 함께 하나의 터치패널(또는 터치스크린(touch screen))의 형태로 구성되어 입력과 표시 기능을 동시에 수행할 수 있다. 또한, 입력 모듈(310)은 키보드, 키패드, 마우스, 조이스틱 등과 같은 입력 장치 외에도 향후 개발될 수 있는 모든 형태의 입력 수단이 사용될 수 있다. 특히, 본 발명에 따른 입력 모듈(310)은 사용자로부터 입력되는 입력 정보를 감지하여 제어 모듈(390)로 전달한다.
특히, 본 발명에서 솔루션 계산 장치(300)는 입력 모듈(310)을 통해 솔루션을 계산해야 할 문제를 입력받을 수 있다.
출력 모듈(330)은 솔루션 계산 장치(300)의 기능 수행 중에 발생하는 일련의 동작상태 및 동작결과 등에 대한 정보를 표시한다. 또한, 출력 모듈(330)은 솔루션 계산 장치(300)의 메뉴 및 사용자가 입력한 사용자 데이터 등을 표시할 수 있다. 여기서, 출력 모듈(390)은 액정표시장치(LCD, Liquid Crystal Display), 초박막 액정표시장치(TFT-LCD, Thin Film Transistor LCD), 발광다이오드(LED, Light Emitting Diode), 유기 발광다이오드(OLED, Organic LED), 능동형 유기발광다이오드(AMOLED, Active Matrix OLED), 레티나 디스플레이(Retina Display), 플렉시블 디스플레이(Flexible display) 및 3차원(3 Dimension) 디스플레이 등으로 구성될 수 있다. 또한, 출력 모듈(390)은 전기 신호를 소리의 형태로 출력하는 스피커를 포함할 수 있다. 이때, 출력 모듈(330)이 터치스크린(Touch screen) 형태로 구성된 경우, 출력 모듈(330)은 입력 모듈(310)의 기능 중 일부 또는 전부를 수행할 수 있다.
특히, 본 발명에서 솔루션 계산 장치(300)는 도출한 솔루션을 출력 모듈(330)을 통해 사용자 인식할 수 있는 형태의 그래픽, 텍스트, 사운드 등을 사용하여 표시할 수 있다.
양자 어닐러 모듈(350)은 앞서 설명된 양자 어닐러의 기능을 수행하기 위한 모듈이다. 양자 어닐러 모듈(350)은 입력 모듈(310)를 통해 입력된 문제에 대해 양자 어닐링을 수행하여, 샘플 세트를 구성할 수 있다.
저장 모듈(370)은 데이터를 저장하기 위한 장치로, 주 기억 장치 및 보조 기억 장치를 포함하고, 솔루션 계산 장치(300)의 기능 동작에 필요한 응용 프로그램을 저장한다. 저장 모듈(370)은 RAM(Random Access Memory), DRAM(Dynamic RAM), ROM(Read Only Memory), 플래시 메모리(flash memory), 휘발성 메모리(volatile memory), 비-휘발성 메모리(non-volatile memory) 및/또는 이들의 조합으로 구성될 수 있다. 이러한 저장 모듈(370)은 크게 프로그램 영역과 데이터 영역을 포함할 수 있다. 여기서, 솔루션 계산 장치(300)는 사용자의 요청에 상응하여 각 기능을 활성화하는 경우, 제어 모듈(390)의 제어 하에 해당 응용 프로그램들을 실행하여 각 기능을 제공하게 된다.
본 발명에 따른 저장 모듈(370)은 솔루션 계산 장치(300)를 부팅시키는 운영체제, 다양한 어플리케이션 프로그램, 솔루션 계산 장치(300)에 매칭되는 사용자 정보 등을 저장할 수 있다. 특히, 본 발명에 따른 저장 모듈(370)은 본 발명에 따른 솔루션 계산 방법 제공하기 위한 솔루션 계산 프로그램(371)을 저장할 수 있다.
제어 모듈(390)은 운영 체제(OS, Operation System) 및 각 구성을 구동시키는 프로세스 장치가 될 수 있다. 예를 들어, 제어 모듈(390)은 하나 이상의 프로세서 집합으로 구성될 수 있다. 또한, 제어 모듈(390)은 통신 제어 프로세서, 어플리케이션 프로세서(Application processor), ECU(Electronic Control Unit), 그래픽 처리 프로세서, 메모리 제어 프로세서 등의 집합으로 구성될 수 있다.
제어 모듈(390)은 입력 모듈(310)을 통해 입력받은 신호를 스스로 도 1에서 설명된 동작들 중 하나 이상의 조합을 통해 처리하여 출력 모듈(330)을 통해 출력하도록 제어하며, 이 과정에서 발생하는 정보 또는 데이터 등을 저장 모듈(370)에 저장하도록 제어할 수 있다.
도시되지는 않았으나, 솔루션 계산 장치(300)는 통신 모듈을 더 포함할 수 있다. 통신 모듈(미도시)은 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF 송신 수단과 수신되는 신호를 저잡음 증폭하고 주파수를 하강 변환하는 RF 수신 수단, 특정 통신 방식에 따른 통신 프로토콜을 처리하기 위한 데이터 처리 수단 등을 포함한다. 이러한 통신 모듈(미도시)는 무선통신 모듈(미도시) 및 유선통신 모듈(미도시) 중 적어도 하나를 포함할 수 있다. 그리고, 무선통신 모듈은 무선 통신 방법에 따라 데이터를 송수신하기 위한 구성이며, 솔루션 계산 장치(300)가 무선 통신을 이용하는 경우, 무선망 통신 모듈, 무선 랜 통신 모듈 및 무선 팬 통신 모듈 중 어느 하나를 이용하여 입력된 문제 및 도출된 솔루션을 외부 장치와 송수신할 수 있다.
앞서 설명된 바와 같이, 도 2를 통해 설명된 모듈들은 물리적으로 단일 장치 내에 포함될 수도 있다. 또한 분산형 컴퓨팅 환경에서 물리적으로 분리된 각 모듈이 유/무선으로 연결된 형태로 구성될 수도 있다.
이상, 본 발명에 따른 솔루션 계산 장치(300)의 구성 및 동작 방법에 대해 설명하였다.
이하, 본 발명의 일 실시 예에 따른 솔루션 계산 방법을 흐름도를 통해 살펴보도록 하겠다.
도 3은 본 발명의 일 실시 예에 따른 솔루션 계산 방법을 도시한 흐름도이다.
도 3을 참조하면, 본 발명의 일 실시 예에 따른 솔루션 계산 방법은, 솔루션 계산 장치(300)에 의해 수행되며, 양자 어닐링을 통해 복수의 큐비트들을 포함하는 샘플 세트를 획득하는 단계(S501), 통계적 분석에 기반하여 복수의 큐비트들 중 특정 큐비트의 값을 고정하는 단계(S503), 고정된 특정 큐비트 값을 기반으로 문제에 대한 솔루션을 계산하는 단계(S505)를 포함하여 구성될 수 있다.
상기 샘플 세트는, 사용자에 의해 입력된 문제 또는 본 발명의 통계적 분석 과정에 의해 사이즈가 축소된 문제에 대한 양자 어닐링을 통해 획득될 수 있다.
통계적 분석은, 앞서 도 1과 관련하여 설명된 바와 같이, 큐비트들 각각의 편향성이 시스템 에너지의 상태에 미치는 영향을 분석하는 과정을 포함할 수 있다.
구체적으로, 통계적 분석은, 샘플 세트 내에서 큐비트들 각각이 0과 1중 어느 값을 가지는지 카운트하고, 큐비트들 각각이 0과 1중 어떤 값에 편향되어 있는지에 대한 편향성을 도출하여 상기 큐비트들의 최적값을 추정하고, 편향성이 임계값 이상인 특정 큐비트에 대해 시스템 에너지의 상태에 미치는 영향을 계산하는 것을 포함할 수 있다.
솔루션 계산 장치(300)는, 편향성이 임계값 이상인 특정 큐비트가 시스템 에너지의 상태에 미치는 영향의 계산 결과에 기반하여, 특정 큐비트의 값을 고정한다. 솔루션 계산 장치(300)는, 편향성이 임계값 이상인 특정 큐비트가 시스템 에너지의 상태에 미치는 영향을, 상기 특정 큐비트의 값이 0인 경우의 시스템 에너지 값과 상기 특정 큐비트의 값이 1인 경우의 시스템 에너지 값을 비교함을 통해 계산한다.
솔루션 계산 장치(300)는, 큐비트들 각각의 카운트 값을 전체 샘플 세트의 개수로 나누는 동작을 통해 편향성을 도출한다.
솔루션 계산 장치(300)는, 특정 큐비트의 값을 고정함으로써, 문제의 크기를 감소시킬 수 있다. 솔루션 계산 장치(300)는, 크기가 감소된 문제에 대해 양자 어닐링을 수행하여 제2 샘플 세트를 획득하고, 획득된 제2 샘플 세트에 대한 통계적 분석을 수행하여 제2 특정 큐비트의 값을 고정할 수 있다. 제2 특정 큐비트의 값이 고정됨으로써, 문제의 크기는 더 감소된다. 솔루션 계산 장치(300)는, 크기가 더 감소된 문제에 대한 제3 샘플 세트를 획득하는 등, 일련의 과정을 반복 수행할 수 있다.
솔루션 계산 장치(300)는, 문제의 크기가 일정 크기 이하로 감소된 경우 혹은 큐비트들의 최적값이 일정 횟수 이상 동일하게 도출된 경우, 추정된 최적값을 솔루션으로 출력할 수 있다.
이상으로, 본 발명의 일 실시 예에 따른 솔루션 계산 방법을 흐름도를 통해 설명하였다.
필수적이지는 않으나, 솔루션 계산 장치(300)는 통신 모듈을 통해 지상 통신망과 연결될 수 있다. 지상 통신망은 시스템 구현 방식에 따라 이더넷(Ethernet), xDSL(ADSL, VDSL), HFC(Hybrid Fiber Coaxial Cable), FTTC(Fiber to The Curb), FTTH(Fiber To The Home) 등의 유선 통신 방식을 이용할 수도 있고, WLAN(Wireless LAN), 와이파이(Wi-Fi), 와이브로(Wibro), 와이맥스(Wimax), HSDPA(High Speed Downlink Packet Access), LTE(Long Term Evolution), LTE-A (Long Term Evolution Advanced), NR (New RAT) 등의 무선 통신 방식을 이용할 수도 있다.
아울러, 이러한 통신망은 예컨대, 다수의 접속망(미도시) 및 코어망(미도시)을 포함하며, 외부망, 예컨대 인터넷망(미도시)을 포함하여 구성될 수 있다. 여기서, 접속망(미도시)은 솔루션 계산 장치와 유무선 통신을 수행하는 접속망으로서, 예를 들어, BS(Base Station), BTS(Base Transceiver Station), NodeB, eNodeB, gNodeB 등과 같은 다수의 기지국과, BSC(Base Station Controller), RNC(Radio Network Controller)와 같은 기지국 제어기로 구현될 수 있다.
또한, 접속망(미도시)과 함께 모바일 망을 구성하는 코어망(미도시)은 접속망(미도시)과 외부 망, 예컨대, 인터넷망(미도시)을 연결하는 역할을 수행한다.
이러한 코어망(미도시)은, 접속망(미도시) 간의 이동성 제어 및 스위칭 등의 이동통신 서비스를 위한 주요 기능을 수행하는 네트워크 시스템으로서, 서킷 교환(circuit switching) 또는 패킷 교환(packet switching)을 수행하며, 모바일 망 내에서의 패킷 흐름을 관리 및 제어한다. 또한, 코어망(미도시)은 주파수간 이동성을 관리하고, 접속망(미도시) 및 코어망(미도시) 내의 트래픽 및 다른 네트워크, 예컨대 인터넷망(미도시)과의 연동을 위한 역할을 수행할 수도 있다. 이러한 코어망(미도시)은 SGW(Serving GateWay), PGW(PDN GateWay), MSC(Mobile Switching Center), HLR(Home Location Register), MME(Mobile Mobility Entity)와 HSS(Home Subscriber Server) 등을 더 포함하여 구성될 수도 있다.
또한, 인터넷망(미도시)은 TCP/IP 프로토콜에 따라서 정보가 교환되는 통상의 공개된 통신망, 즉 공용망을 의미한다.
한편, 본 발명의 각 장치에 탑재되는 메모리는 그 장치 내에서 정보를 저장한다. 일 구현예의 경우, 메모리는 컴퓨터로 판독 가능한 매체이다. 일 구현 예에서, 메모리는 휘발성 메모리 유닛일 수 있으며, 다른 구현예의 경우, 메모리는 비휘발성 메모리 유닛일 수도 있다. 일 구현예의 경우, 저장장치는 컴퓨터로 판독 가능한 매체이다. 다양한 서로 다른 구현 예에서, 저장장치는 예컨대 하드디스크 장치, 광학디스크 장치, 혹은 어떤 다른 대용량 저장장치를 포함할 수도 있다.
비록 본 명세서와 도면에서는 예시적인 장치 구성을 기술하고 있지만, 본 명세서에서 설명하는 기능적인 동작과 주제의 구현물들은 다른 유형의 디지털 전자 회로로 구현되거나, 본 명세서에서 개시하는 구조 및 그 구조적인 등가물들을 포함하는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로 구현되거나, 이들 중 하나 이상의 결합으로 구현 가능하다. 본 명세서에서 설명하는 주제의 구현물들은 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 본 발명에 따른 장치의 동작을 제어하기 위하여 혹은 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 혹은 이들 중 하나 이상의 조합일 수 있다.
아울러, 본 발명의 솔루션 계산 방법을 실행 시 발생되는 다양한 정보는 컴퓨팅 시스템에 관련된 임의의 컴퓨터 판독가능 매체에 저장되고 액세스될 수 있다. 예를 들면, 이러한 프로그램 모듈들의 일부 및 관련 프로그램 데이터의 일부는, 시스템 메모리에 저장하기 위해, 오퍼레이팅 시스템, 애플리케이션 프로그램, 프로그램 모듈, 및/또는 프로그램 데이터에 포함될 수 있다.
또한, 하드 디스크와 같은 대용량(mass) 저장 장치가 컴퓨팅 시스템에 연결되면, 이러한 프로그램 모듈 및 관련 프로그램 데이터는 대용량 저장 장치에 저장될 수 있다. 네트워크 환경에서, 본 발명과 관련된 프로그램 모듈 또는 그 일부는 입출력 인터페이스의 모뎀 또는 네트워크 인터페이스를 통해 연결된 원격 컴퓨터 시스템에 저장될 수 있다. 이러한 모듈의 실행은 분산형 환경에서 수행될 수 있다.
이상에서 설명한 바와 같이, 본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
본 명세서에서 설명한 주제의 특정한 실시형태를 설명하였다. 기타의 실시형태들은 이하의 청구항의 범위 내에 속한다. 예컨대, 청구항에서 인용된 동작들은 상이한 순서로 수행되면서도 여전히 바람직한 결과를 성취할 수 있다. 일 예로서, 첨부도면에 도시한 프로세스는 바람직한 결과를 얻기 위하여 반드시 그 특정한 도시된 순서나 순차적인 순서를 요구하지 않는다. 특정한 구현 예에서, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다.
본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 통상의 기술자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 통상의 기술자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.
따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
본 발명은 양자 어닐링에 기반하여 문제에 대한 솔루션을 계산하는 방법 및 장치에 대한 것이다. 본 발명에 의하면, 양자 컴퓨터를 사용하여 문제의 솔루션을 도출함에 있어, 통계적 분석을 통해 기존보다 신속하며 신뢰도가 높은 솔루션이 도출되도록 할 수 있다.
따라서 본 발명은 양자 어닐링에 기반하여 문제에 대한 솔루션을 계산하는 방법 및 장치의 제공을 통해 관련 산업 발전에 이바지할 수 있으며, 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있다.

Claims (24)

  1. 양자 어닐링(annealing)에 기반하여 문제(problem)에 대한 솔루션(solution)을 계산하는 방법으로서,
    양자 어닐링을 통해 복수의 큐비트(Qubit)들을 포함하는 샘플 세트(sample set)를 획득하는 단계;
    통계적 분석에 기반하여 상기 복수의 큐비트들 중 특정 큐비트의 값을 고정하는 단계; 및
    상기 고정된 특정 큐비트 값을 기반으로 문제에 대한 솔루션을 계산하는 단계; 를 포함하는,
    솔루션 계산 방법.
  2. 제1항에 있어서,
    상기 고정된 특정 큐비트의 값에 기반하여 상기 문제의 크기(size)가 감소되는,
    솔루션 계산 방법.
  3. 제2항에 있어서,
    상기 감소된 크기의 문제에 대해, 상기 획득 및 고정이 반복적으로 수행되는,
    솔루션 계산 방법.
  4. 제1항에 있어서,
    상기 통계적 분석은, 상기 큐비트들 각각의 편향성이 시스템 에너지의 상태에 미치는 영향을 분석하는 것을 포함하는,
    솔루션 계산 방법.
  5. 제1항에 있어서,
    상기 통계적 분석은:
    상기 샘플 세트 내에서 상기 큐비트들 각각이 0과 1중 어느 값을 가지는지 카운트(count)하고;
    상기 큐비트들 각각이 0과 1중 어떤 값에 편향되어 있는지에 대한 편향성을 도출하여 상기 큐비트들의 최적값을 추정하고;
    상기 편향성이 임계값 이상인 특정 큐비트에 대해 시스템 에너지의 상태에 미치는 영향을 계산하는 것을 포함하며,
    상기 영향의 계산 결과에 기반하여, 상기 특정 큐비트의 값이 고정되는,
    솔루션 계산 방법.
  6. 제5항에 있어서,
    상기 편향성은 상기 큐비트들 각각의 카운트 값을 전체 샘플 세트의 개수로 나누는 동작을 통해 도출되는,
    솔루션 계산 방법.
  7. 제5항에 있어서,
    상기 영향은, 상기 특정 큐비트의 값이 0인 경우의 시스템 에너지 값과 상기 특정 큐비트의 값이 1인 경우의 시스템 에너지 값을 비교함을 통해 계산되는,
    솔루션 계산 방법.
  8. 제1항에 있어서,
    상기 통계적 분석은, 상기 큐비트들 중 일부 큐비트들의 조합에 대해 수행되는,
    솔루션 계산 방법.
  9. 양자 어닐링(annealing)에 기반하여 문제(problem)에 대한 솔루션(solution)을 계산하기 위한 장치에 있어서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 동작 가능하도록 연결되고, 실행될 경우 상기 적어도 하나의 프로세서가 특정 동작을 수행하도록 하는 명령들(instructions)을 저장하는 적어도 하나의 메모리; 를 포함하고,
    상기 특정 동작은:
    양자 어닐링을 통해 복수의 큐비트(Qubit)들을 포함하는 샘플 세트(sample set)를 획득하는 단계;
    통계적 분석에 기반하여 상기 복수의 큐비트들 중 특정 큐비트의 값을 고정하는 단계; 및
    상기 고정된 특정 큐비트 값을 기반으로 문제에 대한 솔루션을 계산하는 단계; 를 포함하는,
    솔루션 계산 장치.
  10. 제9항에 있어서,
    상기 고정된 특정 큐비트의 값에 기반하여 상기 문제의 크기(size)가 감소되는,
    솔루션 계산 장치.
  11. 제10항에 있어서,
    상기 감소된 크기의 문제에 대해, 상기 획득 및 고정이 반복적으로 수행되는,
    솔루션 계산 장치.
  12. 제9항에 있어서,
    상기 통계적 분석은, 상기 큐비트들 각각의 편향성이 시스템 에너지의 상태에 미치는 영향을 분석하는 것을 포함하는,
    솔루션 계산 장치.
  13. 제9항에 있어서,
    상기 통계적 분석은:
    상기 샘플 세트 내에서 상기 큐비트들 각각이 0과 1중 어느 값을 가지는지 카운트(count)하고;
    상기 큐비트들 각각이 0과 1중 어떤 값에 편향되어 있는지에 대한 편향성을 도출하여 상기 큐비트들의 최적값을 추정하고;
    상기 편향성이 임계값 이상인 특정 큐비트에 대해 시스템 에너지의 상태에 미치는 영향을 계산하는 것을 포함하며,
    상기 영향의 계산 결과에 기반하여, 상기 특정 큐비트의 값이 고정되는,
    솔루션 계산 장치.
  14. 제13항에 있어서,
    상기 편향성은 상기 큐비트들 각각의 카운트 값을 전체 샘플 세트의 개수로 나누는 동작을 통해 도출되는,
    솔루션 계산 장치.
  15. 제13항에 있어서,
    상기 영향은, 상기 특정 큐비트의 값이 0인 경우의 시스템 에너지 값과 상기 특정 큐비트의 값이 1인 경우의 시스템 에너지 값을 비교함을 통해 계산되는,
    솔루션 계산 장치.
  16. 제9항에 있어서,
    상기 통계적 분석은, 상기 큐비트들 중 일부 큐비트들의 조합에 대해 수행되는,
    솔루션 계산 장치.
  17. 적어도 하나의 프로세서가 동작을 수행하도록 하는 적어도 하나의 컴퓨터 프로그램을 포함하는 컴퓨터 판독가능한 비휘발성 저장 매체로서, 상기 동작은:
    양자 어닐링을 통해 복수의 큐비트(Qubit)들을 포함하는 샘플 세트(sample set)를 획득하는 단계;
    통계적 분석에 기반하여 상기 복수의 큐비트들 중 특정 큐비트의 값을 고정하는 단계; 및
    상기 고정된 특정 큐비트 값을 기반으로 문제에 대한 솔루션을 계산하는 단계; 를 포함하는,
    저장 매체.
  18. 제17항에 있어서,
    상기 고정된 특정 큐비트의 값에 기반하여 상기 문제의 크기(size)가 감소되는,
    저장 매체.
  19. 제18항에 있어서,
    상기 감소된 크기의 문제에 대해, 상기 획득 및 고정이 반복적으로 수행되는,
    저장 매체.
  20. 제17항에 있어서,
    상기 통계적 분석은, 상기 큐비트들 각각의 편향성이 시스템 에너지의 상태에 미치는 영향을 분석하는 것을 포함하는,
    저장 매체.
  21. 제17항에 있어서,
    상기 통계적 분석은:
    상기 샘플 세트 내에서 상기 큐비트들 각각이 0과 1중 어느 값을 가지는지 카운트(count)하고;
    상기 큐비트들 각각이 0과 1중 어떤 값에 편향되어 있는지에 대한 편향성을 도출하여 상기 큐비트들의 최적값을 추정하고;
    상기 편향성이 임계값 이상인 특정 큐비트에 대해 시스템 에너지의 상태에 미치는 영향을 계산하는 것을 포함하며,
    상기 영향의 계산 결과에 기반하여, 상기 특정 큐비트의 값이 고정되는,
    저장 매체.
  22. 제21항에 있어서,
    상기 편향성은 상기 큐비트들 각각의 카운트 값을 전체 샘플 세트의 개수로 나누는 동작을 통해 도출되는,
    저장 매체.
  23. 제21항에 있어서,
    상기 영향 은, 상기 특정 큐비트의 값이 0인 경우의 시스템 에너지 값과 상기 특정 큐비트의 값이 1인 경우의 시스템 에너지 값을 비교함을 통해 계산되는,
    저장 매체.
  24. 제17항에 있어서,
    상기 통계적 분석은, 상기 큐비트들 중 일부 큐비트들의 조합에 대해 수행되는,
    저장 매체.
KR1020220112143A 2022-09-05 2022-09-05 양자 어닐링에 기반하여 문제에 대한 솔루션을 계산하는 방법 및 장치 KR20240033467A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220112143A KR20240033467A (ko) 2022-09-05 2022-09-05 양자 어닐링에 기반하여 문제에 대한 솔루션을 계산하는 방법 및 장치
PCT/IB2023/061161 WO2024052890A1 (ko) 2022-09-05 2023-11-06 양자 어닐링에 기반하여 문제에 대한 솔루션을 계산하는 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220112143A KR20240033467A (ko) 2022-09-05 2022-09-05 양자 어닐링에 기반하여 문제에 대한 솔루션을 계산하는 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20240033467A true KR20240033467A (ko) 2024-03-12

Family

ID=90192227

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220112143A KR20240033467A (ko) 2022-09-05 2022-09-05 양자 어닐링에 기반하여 문제에 대한 솔루션을 계산하는 방법 및 장치

Country Status (2)

Country Link
KR (1) KR20240033467A (ko)
WO (1) WO2024052890A1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101768066B1 (ko) 2016-06-13 2017-08-14 고려대학교 산학협력단 그래프 상태를 이용한 양자 오류 정정 부호의 생성 방법 및 장치
KR20180022925A (ko) 2015-06-29 2018-03-06 우니버지테트 인스부르크 양자 프로세싱 디바이스 및 방법
KR102361858B1 (ko) 2020-11-17 2022-02-14 고려대학교 산학협력단 편향된 오류 기반 양자 오류 정정 부호 최적화 방법 및 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9588940B2 (en) * 2013-12-05 2017-03-07 D-Wave Systems Inc. Sampling from a set of spins with clamping
JP7287705B2 (ja) * 2018-08-31 2023-06-06 プレジデント アンド フェローズ オブ ハーバード カレッジ プログラム可能原子アレイを使用した組合せ最適化問題のための量子コンピューター計算
WO2020259813A1 (en) * 2019-06-25 2020-12-30 Parity Quantum Computing GmbH Method of computing a solution to a computational problem using a quantum system and apparatus for computing solutions to computational problems

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180022925A (ko) 2015-06-29 2018-03-06 우니버지테트 인스부르크 양자 프로세싱 디바이스 및 방법
KR101768066B1 (ko) 2016-06-13 2017-08-14 고려대학교 산학협력단 그래프 상태를 이용한 양자 오류 정정 부호의 생성 방법 및 장치
KR102361858B1 (ko) 2020-11-17 2022-02-14 고려대학교 산학협력단 편향된 오류 기반 양자 오류 정정 부호 최적화 방법 및 장치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Multi-qubit correction for quantum annealers, Ayanzadeh, Ramin, Dorband, John, Halem, Milton, Finin, Tim (https://doi.org/10.1038/s41598-021-95482-w)
Nested quantum annealing correction, Walter Vinci, Tameem Albash, Daniel A Lidar (tps://doi.org/10.1038/npjqi.2016.17.)

Also Published As

Publication number Publication date
WO2024052890A1 (ko) 2024-03-14

Similar Documents

Publication Publication Date Title
US10096121B2 (en) Human-shape image segmentation method
US10103949B2 (en) Count tracking in distributed environments
KR20210036845A (ko) 실내 위치추정을 위한 준지도 변분 오토인코더
WO2018102240A1 (en) Joint language understanding and dialogue management
US11626932B1 (en) Radio signal processing network model search
CN108235247B (zh) 一种节点定位方法及其装置
US10783452B2 (en) Learning apparatus and method for learning a model corresponding to a function changing in time series
JP2020525872A (ja) インフルエンザ予測モデルの生成方法、装置及びコンピュータ可読記憶媒体
CN111628946A (zh) 一种信道估计的方法以及接收设备
US11622364B2 (en) Basic service set color-based effective isotropic radiated power assignment for enterprise networks
KR20240033467A (ko) 양자 어닐링에 기반하여 문제에 대한 솔루션을 계산하는 방법 및 장치
WO2020230043A1 (en) Feature vector feasibilty estimation
Syambas et al. Fast heuristic algorithm for travelling salesman problem
JP6874238B2 (ja) 光学系設計支援システム、光学系設計支援方法および光学系設計支援プログラム
KR20240050025A (ko) 양자 어닐러에서 이진 변수를 큐비트에 매핑하는 방법 및 장치
JP7447985B2 (ja) 学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラム
CN111767204B (zh) 溢出风险检测方法、装置及设备
CN111860898A (zh) 一种设备更新决策的方法、装置及电子设备
Zahedi et al. Adaptive compressive measurement design using approximate dynamic programming
Ly-Tu et al. A new resampling parameter algorithm for Kullback-Leibler distance with adjusted variance and gradient data based on particle filter
US20230156658A1 (en) Position estimation
KR102624237B1 (ko) 로봇팔의 도메인 적응 장치 및 방법
CN111767980B (zh) 模型优化方法、装置及设备
US20230342193A1 (en) Task processing method, task processing device, and computer program product
JP6175194B2 (ja) 無線信号の最適方向の決定