首页 / 专利库 / 电脑编程 / 量子计算 / 양자 연산 개념을 도입한 진화연산방법

양자 연산 개념을 도입한 진화연산방법

阅读:590发布:2021-02-23

专利汇可以提供양자 연산 개념을 도입한 진화연산방법专利检索,专利查询,专利分析的服务。并且PURPOSE: A generic quantum algorithm is which a quantum computing is introduced is provided to efficiently and rapidly perform a computing by representing linear superposition of states using probable qubit representation on the basis of concepts and principles of a quantum computing. CONSTITUTION: A generation t is set as 0(S10). A qubit individual set Q(t) is initialized(S11). A binary string set P(t) is calculated from the qubit individual set Q(t)(S12). The P(t) is estimated(S13). The optimal value among the P(t) is stored(S14). It is judged whether a computing is completed(S15). The generation t is increased as much as 1(S16). The binary string set P(t) is calculated from Q(t-1)(S17). The P(t) is estimated(S18). The Q(t) is updated using quantum gate U(t)(S19). The optimal value is selected among the P(t). In case that the optimal value selected is more suitable than the value stored, the optimal value is changed(S20).,下面是양자 연산 개념을 도입한 진화연산방법专利的具体信息内容。

  • 양자 연산의 큐빗, 상태의 중첩, 양자의 얽힘과 같은 개념과 원리를 바탕으로 하는 진화연산방법에 있어서,
    세대(generation) t를 0으로 하는 과정과,
    큐빗 개체 집합 Q(t)를 초기화하는 과정과,
    상기 Q(t)로부터 이진 스트링 집합 P(t)를 구하는 과정과,
    P(t)를 평가하는 과정과,
    P(t)중 최적의 해를 저장하는 과정과,
    연산 종료를 판단하는 과정과,
    t를 1 증가시키는 과정과,
    Q(t-1)로부터 이진 스트링 집합 P(t)를 구하는 과정과,
    P(t)를 평가하는 과정과,
    양자 게이트 U(t)를 사용하여 상기 Q(t)를 갱신(update)하는 과정과,
    상기 P(t) 중에서 최적의 해가 선택되고 저장되어 있는 최적의 해보다 더 적합한 경우 최적의 해가 교체되는 과정을 포함하는 것을 특징으로 하는 양자 개념을 도입한 진화 연산 방법(GQA).
  • 청구항 1에 있어서, 상기 큐빗 염색체의 집합 Q(t)는 다음의 식과 같은 것을 특징으로 하는 양자 개념을 도입한 진화 연산 방법.
    t : 세대(generation)
    n : 총 개체수(population size)
  • 청구항 2에 있어서, 상기 는 큐빗 염색체로서 다음의 식과 같이 정의 되는 것을 특징으로 하는 양자 개념을 도입한 진화 연산 방법.
    t : 세대(generation)
    m : 큐빗의 개수(즉, 큐빗 염색체의 스트링 길이)
    j=1,2,… ,n
  • 청구항 1 또는 청구항 2에 있어서, Q(t) 초기화 과정은 Q(t) 내의 모든 벡터 의 와 값을 로 초기화시키고, 하나의 큐빗 염색체 가 모든 가능한 상태를 같은 확률로 선형 중첩의 상태로써 다음 식과 같이 정의되는 것을 특징으로 하는 양자 개념을 도입한 진화 연산 방법.
    : 이진 스트링 으로 표현되는 번째 상태( 는 0 또는 1의 값)
  • 청구항 1에 있어서, 상기 이진 해의 집합 P(t)는 다음의 식으로 정의되는 것을 특징으로 하는 양자 개념을 도입한 진화 연산 방법.
    : 길이가 m인 이진 스트링
    t : 세대(generation)
    n : 총 개체수(population size)
  • 청구항 5에 있어서, 하나의 이진 해 은 길이가 m 인 이진 스트링이며, i 번째 비트(bit)는 큐빗 의 i 번째 확률인 과 의 값을 이용하여 결정하고, 또한 각 솔루션 은 적합도(fitness)의 측정을 위해 평가되며, 그리고 나서 초기의 가장 좋은 해는 이진 해 P(t) 중에서 선택되고 저장되는 것을 특징으로 하는 양자 개념을 도입한 진화 연산 방법.
  • 청구항 1에 있어서, 상기 양자 게이트는 이진 해의 집합과 저장된 최적의 해의 정보를 이용하여 형성될 수 있고, 실제적인 문제에 따라 결정될 수 있는 것을 특징으로 하는 양자 개념을 도입한 진화 연산 방법.
  • 说明书全文

    양자 연산 개념을 도입한 진화연산방법{Genetic Quantum Algorithm using quantum computing concept}

    본 발명은 양자 개념을 도입한 새로운 진화연산방법인 GQA(Genetic Quantum Algorithm)에 관한 것이다. 특히, 양자 컴퓨터의 기본적인 단위인 큐빗(qubit), 상태의 중첩(superposition of states), 양자의 얽힘(quantum entanglement) 등과 같은 양자 연산(quantum computing)의 개념과 원리를 바탕으로 하고, 확률적인 큐빗표현법(representation)을 사용하여 많은 해의 선형적인 중첩 상태를 표현할 수 있는 양자 역학 개념을 도입한 진화연산방법에 관한 것이다.

    양자 컴퓨터는 1980년대 초반에 제안되었고, 1980년대 말에 구체화되었다. 그 후 1990년대 초반부터 기존 컴퓨터보다 성능이 뛰어난 양자 컴퓨터에 대한 많은연구가 진행되어 왔다. 그러나 만약 실제 적인 문제를 풀 수 있는 퀀텀 알고리즘이 없다면 퀀텀 컴퓨터 하드웨어는 쓸모 없을지도 모른다. 이것은 운영체제 없는 컴퓨터에 비유할 수 있을 것이다. 많은 연구원들은 중요한 수치 연산 문제를 푸는데 있어서 기존의 어떠한 방법보다도 더 빠른 많은 새로운 퀀텀 알고리즘을 개발하기 위해 노력하고 있다. 그러나 현재까지 알려진 퀀텀 알고리즘은 불과 수 개에 지나지 않는다. 그럼에도 불구하고, 양자 연산이 많은 관심을 받고 있는 이유는 Shor의 소인수 분해 알고리즘이나 Grover의 데이터베이스 검색 알고리즘과 같은 몇 개의 퀀텀 알고리즘이 그 뛰어난 우수성을 입증했기 때문이다.

    1990년대 후반부터 기존의 진화 연산 방법과 양자 연산 방법을 접목시키는 연구를 시작하였다. 두 방법을 접목시키는 연구는 크게 두 가지로 나누어 볼 수 있다. 그 중의 한가지는 새로운 퀀텀 알고리즘을 유전자 프로그래밍(genetic programming)과 같은 자동 프로그래밍 방법(automatic programming technique)을 이용하여 생성해내는 연구이다. 이와 같은 연구는 새로운 퀀텀 알고리즘이 현재 몇개밖에 개발되어 있지 않은 것이 그 동기가 되었다. 다른 한가지는 진화 연산 방법에 대한 연구의 일종으로, 기존의 컴퓨터에서 사용할 수 있는 양자 역학의 개념을 도입한 진화 연산 방법에 연구이다. 이때 정상파(standing wave), 간섭성 (interference), 일관성(coherence) 등의 양자 역학 원리가 도입된다. 양자 컴퓨터에서는 모든 연산이 병렬로 처리되고, 연산 과정에서 상태는 확률적으로 존재하게 된다. 연산이 끝나고 결과 상태를 관측하는 순간에는 하나의 상태로 결정된다. 기존의 컴퓨터에서는 상태를 확률적으로 표현하는 것은 가능하지만, 연산을 병렬로처리하는 것은 불가능하다.

    이상에서 설명한 바와 같이 종래의 성능이 우수한 진화 연산방법에도 불구하고, 더 성능이 우수한 컴퓨팅 방법의 개발이 요구되었다.

    본 발명은 이와 같은 새로운 연산방법의 요구에 부응하기 위해서 개발된 것으로, 본 발명은 양자 연산 개념을 도입한 연산의 수렴성과 효율성이 뛰어난 진화 연산방법(GQA)을 제공하는데 있다.

    상기 본 발명의 목적을 달성하기 위한 기술적 사상으로서, 양자 연산의 큐빗, 상태의 중첩, 양자의 얽힘과 같은 개념과 원리를 바탕으로 하는 진화 방법에 있어서, 세대를 0으로 하는 과정과, 큐빗 염색체의 집합을 초기화하는 과정과, 상기 큐빗 염색체의 집합으로부터 이진 해의 집합을 구하는 과정과, 상기 이진 해의 집합의 각 이진 해가 평가되는 과정과, 최적의 해가 상기 이진 해의 집합중에서 선택되고 저장되는 과정과, 종료상태가 아님을 판단하여 다음의 과정들을 반복하도록 하는 과정과, 세대를 1 증가시키는 과정과, 상기 세대가 1 증가된 큐빗 염색체의 집합으로부터 이진 해의 집합을 구하는 과정과, 각 이진 해가 평가되는 과정과, 상기 큐빗 염색체의 집합이 적합한 양자 게이트의 적용에 의해 갱신되는 과정과, 상기 이진해의 집합 중에서 � ��적의 해가 선택되어 저장되어 있는 최적의 해보다 더 적합한 경우 최적의 해가 교체되는 과정으로 구성되는 것을 특징으로 하는 발명이 제시된다.

    도 1은 본 발명의 진화연산방법(GQA)의 개략적인 흐름도이다.

    도 2는 로테이션 게이트를 나타내는 구조도이다.

    도 3은 주머니(Knapsack) 문제에 대한 CGA와 본 발명의 GQA의 비교 결과를 나타내는 그래프이다.

    이하에서는 본 발명의 진화연산방법(GQA)에 대하여 첨부한 도면을 참조하면서 구성 및 작용을 상세히 설명하기로 한다.

    본 발명의 GQA는 큐빗과 양자 역학의 상태의 중첩 개념 등을 기반으로 한다. 양자 컴퓨터에서 정보를 나타내는 기본이 되는 가장 작은 단위를 큐빗(qubit)이라고 한다. 큐빗은 '1'의 상태나 '0'의 상태 또는 '0'과 '1'의 임의의 중첩 상태를 표현할 수 있다.

    큐빗의 상태를 표현하면 다음 식과 같다.

    이때 αβ 는 '0'과 '1'의 상태의 확률 크기를 구체화하는 복소수이다. 큐빗이 '0'의 상태에 있을 확률은

    이고, '1'의 상태에 있을 확률은 이 된다. 상태의 정규화에 의해 다음 식과 같은 조건을 보장한다.

    만약 m-큐빗 시스템이 있다면, 그 시스템은 2 m 가지의 상태를 동시에 표현 할 수 있게 된다. 그러나 양자 상태를 관측하는 순간에는 많은 상태 중에서 한 가지 상태만으로 관측되게 된다.

    다음은 본 발명의 GQA를 위한 새로운 표현법을 설명하기로 한다.

    진화연산에서 해를 염색체로 코딩하기 위한 표현법은 여러 가지가 있다. 기존의 표현법은 크게 3가지로 나누어 생각할 수 있다. 이진(binary) 표현법, 숫자 (numeric) 표현법, 기호(symbolic) 표현법이 그것이다. GQA에서는 큐빗의 개념을 바탕으로한 새로운 표현법을 이용한다. 하나의 큐빗은 수학식 1과 수학식 2의 의미를 갖는 한 쌍의 복소수 ( α , β )로 정의할 수 있으며, 다음 식과 같이 정의할 수 있다.

    그리고 m-큐빗의 표현은 다음 식과 같이 정의한다.

    이때

    의 조건을 만족한다. 이 표현법은 여러 상태의 중첩을 표현할 수 있는 장점을 갖는다. 예를 들어 다음 식과 같은 세 쌍의 크기를 갖는 3-큐빗 시스템이 있다고 가정하자.

    이 시스템의 상태는 다음 식과 같이 표현될 수 있다.

    위의 결과는 각 상태

    을 나타내는 확률이 각각 이 된다는 뜻이다. 이것은 수학식 5와 같은 3-큐빗 시스템이 동시에 네 가지의 상태를 나타낸다는 것을 의미한다.

    큐빗 표현법을 갖는 진화 연산은 위와 같이 여러 상태의 중첩을 표현할 수 있기 때문에 기존의 접근 방법보다 더 좋은 다양성(diversity)의 특성을 갖는다. 큐빗 표현법에서는 수학식 5와 같은 단 하나의 큐빗 염색체(chromosome)가 네 가지 상태를 표현하기에 충분하지만, 기존의 표현법에서는 적어도 네 가지의 염색 체(000),(001),(100),(101)를 필요로 하게 된다. 수렴성(convergence) 또한 큐빗 표현법에서 얻을 수 있다.

    또는 의 값이 1 또는 0으로 접근함에 따라, 그 큐빗 염색체는 하나의 상태로 수렴해 가게 되며, 점차로 다양성(diversity)은 사라지게 된다. 즉, 큐빗 표현법은 진화 연산에서의 탐사(exploration)와 개척 (exploitation) 두 가지 특성을 모두 포함할 수 있게 된다.

    도 1은 본 발명의 GQA의 흠름도이다.

    도 1에 도시된 바와 같이,

    세대(generation) t를 0으로 하는 과정(S10)과,

    큐빗 개체 집합 Q(t)를 초기화하는 과정(S11)과,

    상기 Q(t)로부터 이진 스트링 집합 P(t)를 구하는 과정(S12)과,

    P(t)를 평가하는 과정(S13)과,

    P(t)중 최적의 해를 저장하는 과정(S14)과,

    연산 종료를 판단하는 과정(S15)과,

    t를 1 증가시키는 과정(S16)과,

    Q(t-1)로부터 이진 스트링 집합 P(t)를 구하는 과정(S17)과,

    P(t)를 평가하는 과정(S18)과,

    양자 게이트 U(t)를 사용하여 상기 Q(t)를 갱신(update)하는 과정(S19)과,

    상기 P(t) 중에서 최적의 해가 선택되고 저장되어 있는 최적의 해보다 더 적합한 경우 최적의 해가 교체되는 과정(S20)으로 이루어진다.

    GQA는 유전자 알고리즘과 유사한 확률적인 알고리즘이다.

    GQA는 다음과 같은 개체군을 유지한다.

    , 이때

    t 는 세대(generation),

    n 은 총 개체수(population size)를 의미한다. 또한 는 큐빗 염색체로서 다음 식과 같이 정의될 수 있다.

    이때 m 은 큐빗의 개수, 즉, 큐빗 염색체의 스트링 길이를 말하고, j =1,2,… , n 이다.

    상기 스텝 12의 Q(t) 초기화 과정에서는, Q(t) 내의 모든 벡터

    의 와 값을 로 초기화시킨다. 이것은 하나의 큐빗 염색체 가 모든 가능한 상태를 같은 확률로 선형 중첩의 상태로 다음 식과 같이 표현한다는 것을 의미한다.

    이때

    는 이진 스트링 으로 표현되는 번째 상태를 말한다. ( 는 0 또는 1의 값을 갖는다.) 그 다음 스텝에서는 이진 해의 집합

    P(t)

    Q(t) 를 1관측함으로써 생성한다. 세대

    t 에서의 이진 해 집합은 으로 표현한다. 하나의 이진 해 은 길이가

    m 인 이진 스트링이며,

    i 번째 비트(bit)는 큐빗 의

    i 번째 확률인 과 의 값을 이용하여 결정한다. 또한 각 솔루션 은 적합도(fitness)의 측정을 위해 평가된다. 그리고 나서 초기의 가장 좋은 해는 이진 해

    P(t) 중에서 선택되고 저장된다.

    상기 스템 15이하의 루프 내에서는, 하나의 새로운 'update Q(t) ' 스텝이 추가된다. 앞에서 설명했던 절차와 마찬가지로 이진 해의 집합 P(t)Q ( t -1)의 관측행위에 의해 생성되고, 각 이진 해는 적합도(fitness)를 위해 평가된다. 다음 스텝인 'update Q(t) '에서는 큐빗 염색체의 집합 Q(t) 가 적합한 양자 게이트(quantum gate) U(t) 의 적용에 의해 갱신된다. 이때 양자 게이트는 이진 해 집합 P(t) 와 저장된 베스트 솔루션의 정보를 이용하여 형성할 수 있다. 적합한 양자 게이트는 실제적인 문제에 따라 결정될 수 있다. 예를 들어 후술하는 주머니(Knapsack) 문제를 위해 다음과 같은 로테이션 게이트를 사용할 것이다.

    이 스텝은 큐빗 염색체가 보다 적합한 상태로 수렴하도록 만들어 준다. 다음 스텝에서 P(t) 중에 가장 좋은 솔루션이 선택되고, 만약 그 솔루션이 현재 저장되어 있는 베스트 솔루션보다 더 적합할 경우에는 베스트 솔루션이 교체된다. 이진 솔루션의 집합 P(t) 는 루프의 마지막에 버려진다.

    마지막으로 몇몇 유전자 오퍼레이터가 적용될 수 있다. 하나의 개체에서 작은 변화를 주어 새로운 개체를 생성해 내는 돌연변이(mutation)와 두 개 또는 그 이상의 개체들을 서로 결합시켜 새로운 개체들을 생성하는 교배(crossover)를 그 예로 들 수 있다. 돌연변이와 교배 오퍼레이터는 선형 중첩된 상태들의 확률을 바꾸게 된다. 하지만 GQA는 큐빗 표현법에 의해 이미 다양성(diversity)을 갖고 있기 때문에, 그와 같은 오퍼레이터는 사용할 필요가 없다. 만약 돌연변이나 교배의 확률이 높다면, GQA의 성능은 현저하게 나빠질 것이다.

    GQA에서 개체수(Population size), 즉, 큐빗 염색체의 개수는 항상 유지된다. 이것은 양자 연산을 기반으로 하는 큐빗의 보존에 의한 것이다. GQA와 기존 진화 방법간의 차이점-예를 들어 큐빗 염색체 개수의 보존이나 큐빗 표현법-은 다양성(diversity)을 갖으면서 더 좋은 수렴성(convergence)을 보일 수 있게 만든다.

    이하에서는 본 발명의 GQA의 성능을 알아보기 위해 순열조합 최적화 문제의 일종인 주머니(Knapsack) 문제를 도입한다. 주머니(Knapsack) 문제는 많은 아이템 중에서 가장 이득이 되는 아이템의 조합을 고르는 문제로, 고를 수 있는 총 아이템의 용량이 제한되어 있다. 다시 정리하면, m 개의 아이템과 하나의 주머니(knapsack)가 있을 때, 다음 식의 이득

    을 최대로 하는 아이템들을 선택하는 문제이다.

    이때 주머니(knapsack)의 용량은 C이며, 다음 식의 조건을 만족해야 한다.

    이때

    이며,

    x

    i 는 0 또는 1의 값을 갖는다. 또한

    p

    i 는 아이템

    i 의 이득이며,

    w

    i 는 아이템

    i 의 무게를 나타내고,

    C 는 주머니의 총 제한 용량을 나타낸다.

    주머니(Knapsack) 문제를 위한 몇 개의 전통적인 GA 방법(유전자 알고리즘; Genetic Algorithm)에 대한 설명과 주머니(Knapsack) 문제를 위한 자세한 GQA에 대해 설명하기로 한다.

    여기서는 세 가지 전통적인 방법을 기술하고 테스트한다. 페널티(penalty) 함수를 기반으로 하는 방법, 리페어(repair) 방법을 기반으로 하는 알고리즘, 그리고 디코더(decoders)를 기반으로 하는 방법에 대해서 다룬다.

    페널티 함수를 기반으로 하는 모든 방법에 있어서, 길이가 m 인 이진 스트링은 하나의 염색체 x를 나타낸다. 각 스트링의 이득

    는 다음 식과 같이 결정된다.

    이때 Pen ( x)는 페널티 함수이다. 페널티 함수를 결정하기 위한 많은 가능한 전략들이 있다. 여기서는 다음 식과 같은 세 가지 종류-logarithmic 페널티, linear 페널티, quadratic 페널티-의 페널티 함수를 고려한다.

    이때

    는 max 이다.

    리페어(repair) 방법을 기반으로 하는 알고리즘에서는 각 스트링의 이득

    이 다음 식과 같이 결정된다.

    이때 x'는 원래의 벡터 x의 고쳐진 벡터이다. 본 실험에서는 원래의 염색체가 5%의 확률을 가지고 수정된다. 리페어 과정은 다음과 같이 나타낼 수 있다.

    여기서 고려된 두 가지의 리페어 방법은 단지 제거할 아이템을 고르는 셀렉션 과정에서만 차이가 있다.

    Rep 1 (random repair): 셀렉션 과정은 주머니에서 임의의 아이템을 선택한다.

    Rep 2 (greedy repair): 주머니 안의 모든 아이템은 무게당 이득의 비율이 작아지는 순서로 정렬되고, 셀렉션 과정에서는 제거할 아이템으로 항상 마지막 아이템을 선택한다.

    주머니(Knapsack) 문제를 위해 가능한 디코더(decoder)는 정수 표현법을 기반으로 한다. 각 염색체는 m 개의 정수의 벡터이며, 벡터의 i 번째 요소는 1과 m - i +1 사이의 정수이다. 이와 같이 차례를 나타내는 표현법은 아이템들의 리스트 L을 참조한다. 즉, 현재의 리스트로부터 적당한 순서에 해당하는 아이템을 선택하는 방법으로 벡터가 해석된다.

    다음은 디코딩(decoding) 방법을 나타낸다.

    여기서 고려된 두 가지의 디코딩 방법은 단지 'build' 과정에서만 차이가 있다.

    Dec 1 (random decoding): 'build' 과정에서 랜덤한 입력 파일의 아이템 순서를 그대로 갖는 리스트 L을 생성한다.

    Dec 2 (greedy decoding): 'build' 과정에서 무게당 이득의 비율이 작아지는 순서로 아이템의 리스트 L을 생성한다.

    이하에서는 주머니(Knapsack) 문제를 위한 GQA는 앞에서 제안한 기본 GQA 구조를 기반으로 하고, 리페어 방법을 포함하는 다음과 같은 과정으로 이루어진다.

    수학식 7과 같이 표현되는 길이가 m 인 큐빗 스트링은 선형 중첩된 해를 표현한다. i 번째 아이템은

    또는 의 확률을 가지고 선택될 수 있다. 큐빗 스트링의 길이는 아이템의 개수와 일치한다. 길이가

    m 인 이진 스트링은 큐빗 스트링으로부터 생성된다. 이진 스트링의 각각의 비트(bit)에 대해서는, 0과 1 사이의 랜덤 넘버 을 발생시켜 의 조건을 만족하면 이진 스트링의

    i 번째 비트를 1로 설정한다. 이진 스트링 x는 문제의 실질적인 해를 표현하며, 만약

    x

    i = 1 이면

    i 번째 아이템이 선택된 것을 의미한다. 이진 스트링 x는 다음과 같은 과정으로 생성된다:

    주머니(Knapsack) 문제를 위한 GQA에서 사용된 리페어 방법은 다음과 같이 구현되었다.

    이진 해 x의 이득은

    으로 평가되며, 큐빗 염색체 q의 업데이트 이후에 가장 좋은 솔루션 b를 찾는데 이용된다. 주머니(Knapsack) 문제를 위한 본 GQA에서는 큐빗 염색체 q를 갱신하기 위해 수학식 9와 같은 로테이션 게이트를 사용한다.

    i 번째 큐빗 값 는 다음과 같이 바뀌게 된다.

    위의 수학식 15를 도식화 하면 도 2와 같다. 본 주머니(Knapsack) 문제에서 는

    를 으로 결정한다. 실험에서 사용된 파라메터 값은 표 1과 같다. 예를 들어, 만약 조건 을 만족하고,

    x

    i

    b

    i 값이 각각 1과 0일 경우, 우리는 를 0.025π로, 는 상태 의 확률을 증가시키는 방향으로 의 조건에 따라 +1, -1, 또는 0으로 설정할 수 있다. 의 값은 수렴 속도에 영향을 미친다. 하지만 만약 값이 너무 크게 되면, 그 해는 발산하거나 지역 해(local optimum)에 머무를 수 있게(premature convergence) 된다. 부호 는 전역 최적해를 향한 수렴 방향을 결정하게 된다. 참조표(lookup table)는 수렴의 전략으로 사용될 수 있다.

    다음은 갱신(update) 과정을 나타낸다.

    end

    갱신(update) 과정은 적합한 양자 게이트들을 이용하여 다양한 방법으로 구현이 가능하다. 이것은 주어진 문제에 달려있다.

    이하에서는 상기 실험의 결과에 대하여 설명하기로 한다.

    모든 실험은 다음 식과 같은 strongly correlated 데이터 집합을 이용한다.

    또한 주머니의 용량은 다음 식과 같은 평균 용량을 사용한다.

    모든 사용하는 데이터 파일은 정렬되어 있지 않다. 8 가지 전통적인 유전자 알고리즘(CGA)의 개체수(population size)는 모두 100이다. 교배와 돌연변이의 확률은 각각 0.65와 0.05로 고정시켰다. GQA(1)과 GQA(10)의 개체수는 각각 1과 10이다. GQA(1)과 GQA(10)의 차이점은 개체수 밖에 없다. 알고리즘의 성능을 평가하기 위해서 500 세대 내에서의 가장 좋은 솔루션을 기록하고, 총 25번의 테스트를 수행했다. 또한 한 번 수행하는 걸리는 평균 시간을 측정하였다. 모든 실험은 펜티엄 III 500MHz 프로세서를 사용하였으며, 프로그래밍 툴로 Visual C++ 6.0을 이용하였다.

    표 2와 표 3은 GQA의 주머니 문제 실험 결과에 대한 도표이다.

    상기 표 2는 아이템 개수가 100개인 경우의 주머니(Knapsack) 문제의 실험 결과를 나타낸다. 다른 데이터 파일을 가지고 세 가지의 실험을 수행하였다. 결과를 보면, GQA는 모든 다른 CGA에 비해서 우수한 것을 확인할 수 있다. CGA중에서 선형 페널티 함수와 랜덤 리페어 방법을 동시에 적용한 알고리즘이 가장 우수한 결과를 보였다. 하지만 이 결과는 GQA(10) 뿐만 아니라 GQA(1) 보다도 나쁜 결과를 보이고 있다. 이것은 GQA 방법이 개체수(population size)가 작음에도 불구하고 더 좋은 결과를 보인다는 것을 입증해 준다. 즉, GQA는 많은 솔루션을 동시에 선형 중첩 상태로 표현할 수 있다는 것을 의미한다. 이 실험 결과로 판단해 보면, GQA는 CGA에 비해서 더 짧은 시간 안에 최적해에 가까운 솔루션을 찾을 수 있다.

    상기 표 3은 아이템의 개수가 각각 250, 500인 두 가지 경우의 실험 결과를 보이고 있다. GQA와의 비교를 위해 CGA를 대표하여 CGA 중에서 가장 우수했던 한 가지 방법만을 테스트하였다. 이 실험 결과도 또한 GQA의 우수성을 입증하고 있다.

    도 3은 주머니(Knapsack) 문제에 대한 CGA와 GQA의 비교로써, 세로축은 주머니(knapsack)의 이득, 가로축은 세대수를 의미한다. (a),(c),(e)는 최상 이득의 평균, (b),(d),(f)는 평균 이득의 평균을 나타낸다. 두 경우 모두 25번의 테스트 결과를 평균한 값이다.GQA(1), GQA(10), CGA 각각에 대해 25번의 테스트에 걸친 최상 이득의 평균과 모든 개체의 평균 이득의 평균의 추이를 100, 250, 500 아이템에 각각에 대해 보여준다. 수렴 속도 면에서나 최종 결과 면에서 모두 CGA에 비해 GQA가 우수한 성능을 나타내고 있음을 명백히 보여준다. 최상 이득 그림의 시작 부분을 보면, GQA(1)은 GQA(10)이나 CGA에 비해서 느린 수렴 속도를 보이고 있다. 이것은 개체수가 너무 작기 때문이다. 대략 50 세대 이후를 보면, GQA(10)과 GQA(1)은 모두 거의 일정한 수렴 속도를 유지하고 있는 반면에, CGA는 수렴 속도가 서서히 줄어들고 있다. 약 200 세대 이후, 비록 GQA의 수렴 속도가 줄어들었지만, CGA에 비해서는 더 빠른 수렴 속도를 보이고 있음을 확인할 수 있다. 이것은 GQA의 우수한 전역 탐색 능력 때문이다. 1000 세대에서, GQA의 최종 이득 값은 CGA에 비해 훨씬 더 크다. 수렴성의 경향은 population의 평균 이득의 평균 결과 그림에서 확실히 나타난다. 시작부분에서는 세 가지 방법이 모두 수렴 속도가 크다. 하지만 CGA는 바로 premature convergence로 인해 거의 상수에 가까운 이득을 유지하게 된다. 반면에 GQA는 거의 일정한 수렴 속도를 가지고 최적해 근처를 향해 증가하는 것을 확인할 수 있다. GQA는 1000세대가 될 때까지 CGA에서 흔히 발생하는 premature convergence를 보이지 않는다.

    실험 결과는 GQA의 효율성 및 응용성을 입증하며, 특히 도 3은 GQA의 우수한전역 탐색 능력과 뛰어난 수렴성을 보여준다.

    이상에서 설명한 바와 같이, 본 발명은 새로운 양자 개념을 도입한 진화연산 방법인 GQA로써, GQA는 큐빗, 상태의 중첩, 양자의 얽힘 등의 양자 연산의 원리와 개념을 바탕으로 한다. GQA는 여러 상태의 선형 중첩을 표현할 수 있고, 많은 개체를 포함할 필요가 없다.

    또한, GQA는 큐빗 표현법에 의한 다양성(diversity)에 의해 뛰어난 전역 탐색 능력을 갖는다.

    또한, 짧은 시간 내에 CGA보다 더 좋은 솔루션에 도달할 수 있다.

    본 발명의 GQA의 성능을 평가하기 위해 순열 조합 최적화 문제의 일종인 주머니(Knapsack) 문제를 도입한다. 실험은 GQA의 수렴성과 전역 탐색 능력이 CGA에 비해 우수하다는 것을 보여준다. 즉, 실험 결과는 GQA의 효율성과 응용성을 입증하고 있다.

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈