KR101745817B1 - 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치 및 방법 - Google Patents

유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치 및 방법 Download PDF

Info

Publication number
KR101745817B1
KR101745817B1 KR1020160015877A KR20160015877A KR101745817B1 KR 101745817 B1 KR101745817 B1 KR 101745817B1 KR 1020160015877 A KR1020160015877 A KR 1020160015877A KR 20160015877 A KR20160015877 A KR 20160015877A KR 101745817 B1 KR101745817 B1 KR 101745817B1
Authority
KR
South Korea
Prior art keywords
node
mss
information
hyper
hyper edge
Prior art date
Application number
KR1020160015877A
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 KR1020160015877A priority Critical patent/KR101745817B1/ko
Application granted granted Critical
Publication of KR101745817B1 publication Critical patent/KR101745817B1/ko

Links

Images

Classifications

    • G06F17/30958
    • G06F17/30333
    • G06F17/30336
    • G06F19/26
    • G06F19/708

Abstract

본 발명은 노드 정보, 하이퍼엣지 정보 및 시작 노드 정보를 수신하고, 시작 노드로부터 포워드 순회(forward traversal)를 하면서 모든 노드의 미니멀 시작 노드 집합(MSS; Minimal Source Set)을 확인하여 MSS 인덱스로 저장하고, 특정 노드에 대한 최소 크기의 시작 노드 집합을 요청 받으면, 상기 MSS 인덱스에서 상기 특정 노드에 대응하는 MSS 집합에서 최소 크기의 집합을 상기 특정 노드에 대한 최소 크기의 시작 노드 집합으로 제공하는 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치 및 방법에 관한 것 이다.

Description

유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치 및 방법{Apparatus and method for finding the minimum source sets in directed hypergraphs}
이하의 일 실시 예들은 유향 하이퍼그래프(directed hypergraph)에서 시작할 수 있는 노드(node)들이 정해져 있을 때, 임의의 노드(들)로 도달하기 위해 필요한 최소 크기의 시작 노드 집합을 찾기 위한 방법에 관한 것이다.
유향 하이퍼그래프는 기존의 유향 그래프(directed graph)와 달리 여러 개의 소스 노드(source node)와 여러 개의 타겟 노드(target node)를 연결할 수 있는 하이퍼엣지(hyperedge)를 가진다. 하지만 기존의 유향 그래프에 있는 간선(edge)과 마찬가지로 한 개의 소스 노드와 한 개의 타겟 노드를 연결할 수도 있다. 이런 하이퍼엣지로 인해 바이오인포메틱스(bioinformatics), 데이터베이스(database) 등 많은 분야에서 유향 그래프의 부족한 부분을 채우는 모델링(modeling) 도구로써 유향 하이퍼그래프를 사용하고 있다.
유향 하이퍼그래프에서 경로(path)는 이러한 하이퍼엣지를 이용하여 만들어진다. 경로 만드는 것을 노드를 방문하는 것으로 생각할 때, 하이퍼엣지의 타겟 노드에 가기 위해서는 하이퍼엣지의 소스 노드를 모두 방문해야 한다. 이러한 조건으로 인해 최소 시작 노드 집합을 찾는 것은 NP-Hard 문제이다. 여기서, NP-Hard 문제란 문제를 해결하는 다차 함수 시간 결정성 알고리즘이 존재한다면 만족성 문제로부터의 다차 함수 시간 변환이 가능한 문제를 의미한다.
종래의 특정 노드(들)로부터 거꾸로 시작 노드를 찾아가는 방법은 특정 노드(들)로부터 시작 노드들을 포함하는 모든 경로를 찾는 방법으로, 논문 "Enumerating precursor sets of target metabolites in a metabolic network. Lecture Notes in Computer Science"에 기술된 바 있다. 하지만 이 방법은 백워드 순회(backward traversal)와 비슷하며, 따라서 유향 하이퍼그래프의 노드와 하이퍼엣지 수가 조금만 커져도 최소 시작 노드 집합을 찾는데 시간을 많이 소요한다. 또한 다른 노드에 대해서 최소 시작 노드 집합을 찾을 때는 새로 경로를 찾아야 하므로 효율적이지 않다.
종래의 시작 노드로부터 특정 노드까지 도달하는 경로 중, 미니멀 경로(minimal path)를 찾는 방법은 논문 "Enumerating metabolic pathways for the production of heterologous target chemicals in chassis organisms"에 기술된 바 있으며, 이 방법 또한 모든 경로를 찾는다. 하지만, 이 방법은 임의의 노드에 대한 미니멀 경로를 찾는 것이 아니므로 다른 노드에 대해서는 새로 경로를 찾아야 한다.
본 발명은 상기와 같은 종래 기술의 문제점을 해결하고자 도출된 것으로서, 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾기 위해 미니멀 시작 노드 집합을 선계산하여 활용하는 장치 및 방법을 제공하는 것을 목적으로 한다.
구체적으로, 본 발명은 시작할 수 있는 노드들이 사전에 정해져 있을 때, 임의의 노드(들)로 도달하기 위해 필요한 최소 크기의 시작 노드 집합을 찾는 것으로, 임의의 노드(들)의 최소 시작 노드 집합을 효율적으로 찾기 위해서 사전에 미니멀 시작 노드 집합을 계산하고, 계산된 미니멀 시작 노드 집합을 이용해서 빠르게 최소 크기의 시작 노드 집합을 찾는 장치 및 방법을 제공하는 것을 목적으로 한다.
상기와 같은 목적을 달성하기 위하여, 본 발명의 일 실시 예에 따른 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 방법은, 노드 정보, 하이퍼엣지 정보 및 시작 노드 정보를 수신하는 단계; 시작 노드로부터 포워드 순회(forward traversal)를 하면서 모든 노드의 미니멀 시작 노드 집합(MSS; Minimal Source Set)을 확인하여 MSS 인덱스로 저장하는 단계; 및 특정 노드에 대한 최소 크기의 시작 노드 집합을 요청 받으면, 상기 MSS 인덱스에서 상기 특정 노드에 대응하는 MSS 집합에서 최소 크기의 집합을 상기 특정 노드에 대한 최소 크기의 시작 노드 집합으로 제공하는 단계를 포함한다.
이때, 상기 노드 정보는 노드 식별자 정보, 해당 노드에서 나아가는 하이퍼엣지 정보, 방문확인 정보, 및 노드의 MSS 정보를 포함하고, 상기 방문확인 정보는 초기값으로 미방문으로 설정되고, 상기 노드의 MSS 정보는 초기값으로 공집합을 가질 수 있다.
이때, 상기 하이퍼엣지 정보는 하이퍼엣지의 식별자 정보, 상기 하이퍼엣지의 소스 노드 정보, 상기 하이퍼엣지의 타겟 노드 정보, 상기 하이퍼엣지의 MSS 정보를 포함하고, 상기 하이퍼엣지의 MSS 정보는 초기값으로 공집합을 가질 수 있다.
이때, 상기 모든 노드의 미니멀 시작 노드 집합(MSS; Minimal Source Set)을 확인하여 상기 MSS 인덱스로 저장하는 단계는, 상기 시작 노드의 MSS를 계산하는 단계; 및 상기 시작 노드가 아닌 나머지 노드 각각의 MSS를 계산하는 단계를 포함할 수 있다.
이때, 상기 모든 노드의 미니멀 시작 노드 집합(MSS; Minimal Source Set)을 확인하여 상기 MSS 인덱스로 저장하는 단계는, 상기 시작 노드를 큐(queue)에 푸시(push)하는 단계; 상기 큐에 삽입된 상기 시작 노드에 포함된 MSS 정보에 해당 시작 노드를 추가하는 단계; 상기 큐에 삽입된 상기 시작 노드에 포함된 방문 정보를 방문으로 변경하는 단계; 상기 큐에서 노드를 팝(pop)하는 제1 단계; 상기 팝된 노드에서 나아가는 하이퍼엣지에 각각에 대해서, 상기 하이퍼엣지의 모든 소스 노드를 방문한 하이퍼엣지가 존재하는지 확인하는 제2 단계; 확인결과 상기 모든 소스 노드를 방문한 하이퍼엣지가 존재하면, 상기 모든 소스 노드를 방문한 하이퍼엣지의 MSS을 확인하는 제3 단계; 상기 모든 소스 노드를 방문한 하이퍼엣지의 타겟 노드에 포함된 MSS 정보를 통해서 저장된 타겟 노드의 MSS를 확인하는 제4 단계; 상기 하이퍼엣지의 MSS와 상기 저장된 타겟 노드의 MSS를 합집합하고, 최소 집합을 구하여 상기 타겟 노드의 MSS를 계산하는 제 5단계; 상기 타겟 노드의 방문 정보를 방문으로 변경하는 제 6단계; 상기 계산된 타겟 노드의 MSS와 상기 저장된 타겟 노드의 MSS가 다르면, 상기 타겟 노드의 MSS에 포함된 상기 MSS 정보에 상기 계산된 타겟 노드의 MSS를 저장하고, 상기 큐에 상기 타겟 노드가 존재하지 않으면, 상기 타겟 노드를 상기 큐에 푸시하는 제 7단계; 및 상기 큐에 노드가 존재하면 상기 제1 단계로 돌아가는 단계를 포함할 수 있다.
이때, 상기 시작 노드를 큐에 푸시하는 단계는, 상기 시작 노드들 중에서 상기 시작 노드로 들어오는 하이퍼엣지가 없는 시작 노드를 먼저 상기 큐에 푸시함을 특징으로 할 수 있다.
본 발명의 다른 일 실시 예에 따른 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치는, 노드 정보, 하이퍼엣지 정보 및 시작 노드 정보를 수신하는 수신부; 시작 노드로부터 포워드 순회(forward traversal)를 하면서 모든 노드의 미니멀 시작 노드 집합(MSS; Minimal Source Set)을 확인하여 MSS 인덱스로 저장하는 MSS 선처리부; 및 특정 노드에 대한 최소 크기의 시작 노드 집합을 요청 받으면, 상기 MSS 인덱스에서 상기 특정 노드에 대응하는 MSS 집합에서 최소 크기의 집합을 상기 특정 노드에 대한 최소 크기의 시작 노드 집합으로 제공하는 인터페이스부를 포함한다.
이때, 상기 노드 정보는 노드 식별자 정보, 해당 노드에서 나아가는 하이퍼엣지 정보, 방문확인 정보, 및 노드의 MSS 정보를 포함하고, 상기 방문확인 정보는 초기값으로 미방문으로 설정되고, 상기 노드의 MSS 정보는 초기값으로 공집합을 가질 수 있다.
이때, 상기 하이퍼엣지 정보는 하이퍼엣지의 식별자 정보, 상기 하이퍼엣지의 소스 노드 정보, 상기 하이퍼엣지의 타겟 노드 정보, 상기 하이퍼엣지의 MSS 정보를 포함하고, 상기 하이퍼엣지의 MSS 정보는 초기값으로 공집합을 가질 수 있다.
본 발명은 단순히 특정 노드로부터 거꾸로 최소 시작 노드 집합을 찾는 방법이 아닌 사전에 미니멀 시작 노드 집합을 구축함으로써, 모든 노드들의 최소 크기의 시작 노드 집합을 빠르게 찾는 방법에 관한 것으로, 모든 경로를 찾지 않고 포워드 순회를 하며 사전 정보를 만들기 때문에 종래의 기술보다 효율적이다.
본 발명은 화합물, 유전자, 질병의 관계를 나타내는 유향 하이퍼그래프와 같은 데이터에도 적용할 수 있으며, 하이퍼그래프에서 특정 질병에 작용하는 화합물의 최소 조합을 찾고자 할 때, 인덱스를 만들어 모든 질병에 대한 최소 화합물의 조합을 쉽게 찾을 수 있다. 따라서 유향 하이퍼그래프로 표현된 데이터는 본 발명의 내용을 매우 유용하게 사용할 수 있다.
도 1은 실시 예에 따른 유향 하이퍼그래프의 예를 도시한 도면이다.
도 2는 도 1에서 노드의 집합 {a, b, c}으로부터 노드 h로 가는 경로를 트리로 표현한 예를 도시한 도면이다.
도 3은 실시 예에 따라 시작 가능한 시작 노드들이 a, b, c, d, f 일 때, 모든 노드의 미니멀 시작 노드 집합들을 도시한 도면이다.
도 4는 실시 예에 따라 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 검색 장치의 구성을 도시한 도면이다.
도 5는 실시 예에 따라 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 과정을 도시한 흐름도이다.
도 6은 실시 예에 따라 유향 하이퍼그래프의 모든 노드에 대해서 미니멀 시작 노드 집합을 사전에 확인하는 과정을 도시한 흐름도이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.
본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시예들을 특정한 개시형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~사이에"와 "바로~사이에" 또는 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
이하에서는, 본 발명의 일 실시 예에 따른 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치 및 방법을 첨부된 도 1 내지 도 6을 참조하여 상세히 설명한다.
본 발명에서 이용하는 유향 하이퍼그래프는 다음과 같이 정의할 수 있다. 유향 하이퍼그래프 H는 <V, E> 이다. 여기서 V는 노드 집합을 나타내고, E는 하이퍼엣지 집합을 나타낸다. 본 발명에서는 하이퍼엣지가 하나의 타겟 노드를 갖는 것으로 한다. 그러면, 하이퍼엣지 <S, t>는 소스 노드 집합 S와 타겟 노드 t를 가지는 순서쌍으로 볼 수 있다.
도 1은 실시 예에 따른 유향 하이퍼그래프의 예를 도시한 도면이다.
도 1을 참조하면, 유향 하이퍼그래프 H는 a(101), b(102), c(103), d(104), e(105), f(106), g(107), h(108)의 노드를 포함하고, 노드는 하이퍼엣지(110, 120, 130, 140, 150)로 연결된다.
유향 하이퍼그래프 H는 <V, E>로 표현될 수 있다. 여기서, 노드를 나타내는 V는 V={a, b, c, d, e, f, g, h}가 되고, 하이퍼엣지를 나타내는 E는 E={<abc, e>, <bc, f>, <d, g>, …}가 될 수 있다. 여기서, <abc, e>는 하이퍼엣지(110)이고, 마찬가지로 <d, g>도 하이퍼엣지(130)이다.
유향 하이퍼그래프에서 소스 집합(source set) X로부터 타겟 노드 y로 가는 경로가 존재한다면, 트리(tree) Txy 형태가 된다. 이 트리는 다음과 같이 재귀적으로 정의될 수 있다.
첫째로, 만약 y ∈ X라면, Tx,y 는 빈 트리이다.
둘째로, 만약
Figure 112016013764743-pat00001
Figure 112016013764743-pat00002
라면, Tx,y 는 하이퍼엣지 <Z, y>가 루트(root)인 서브트리(subtree) Tx,zi(zi ∈ Z)를 갖는다.
도 2는 도 1에서 노드의 집합 {a,b,c}으로부터 노드 h로 가는 경로를 트리로 표현한 예를 도시한 도면이다.
도 2를 참조하면, 트리 구조 Tabc,h는 <eg, h>(200)를 루트로 가진다. 그리고 노드 집합 {a, b, c}으로부터 노드 e로 가는 경로를 왼쪽 서브트리(203)로 가지며 오른쪽 서브트리(202)는 노드 집합 {a, b, c}으로부터 노드 g로 가는 경로를 나타낸다.
한편, 특정 노드 v의 미니멀 시작 노드 집합(MSS; Minimal Source Set)은 시작 노드들에서 노드 v로 가는 경로를 만들 때, 불필요한 시작 노드 없이 구성된 시작 노드들의 부분 집합이다. 즉, 이 부분집합의 어떠한 진 부분집합도 노드 v에 도달할 수 없다.
도 3은 실시 예에 따라 시작 가능한 시작 노드들이 a, b, c, d, f일 때, 모든 노드의 미니멀 시작 노드 집합들을 도시한 도면이다.
도 3을 참조하면, 본 발명의 실시 예에 따른 도 1의 유향 하이퍼그래프와 사전에 정해진 시작 노드들(300), 그리고 각 노드들의 MSS의 모임(301 - 308)을 확인할 수 있다.
도 3에 나타난 MSS 'bc, f'(306)는 집합의 모임 {{b, c}, {f}}을 간략히 표현한 것이다. 여기서 노드 f의 MSS 중 {a, b, c}이 아니라 {b, c}인 것은 노드 a가 불필요하기 때문이다. 여기서 노드 v가 시작 노드라면, {v}가 노드 v의 MSS가 된다.
노드 v의 모든 MSS의 모임을 mss(v)라 하면, mss(v)는 MSS들을 선계산한 결과이다. 그리고, 모든 노드에 대해 MSS의 선계산한 결과를 MSS 인덱스라 한다. 이것은 모든 노드 v에 대해 (v, mss(v))들의 집합을 말한다. 이러한 MSS 인덱스가 있다면 임의의 노드 t의 최소 시작 노드 집합을 찾을 때 mss(t) 에 있는 집합 중, 최소 크기의 집합을 찾으면 된다.
이러한 MSS 인덱스를 구축하기 위해 MSS 조합 연산자를 다음과 같이 정의한다.
MSS 조합 연산자 *는 다음과 같이 정의된다.
[수학식 1]
Figure 112016013764743-pat00003
노드 g의 MSS(307)는 {bc, d, f}이다. 여기서 상기된 바와 같이 bc는 {b, c}를 간략히 나타낸 것이므로 실제로는 모임 {{b, c}, {d}, {f}}을 의미한다. 그러면 노드 g의 최소 시작 노드 집합은 {d}와 {f}가 된다. 만약 대상 노드 집합 {e, f}에 대한 최소 시작 노드 집합은 위의 조합연산자를 다음과 같이 이용하여 찾을 수 있다.
[수학식 2]
Figure 112016013764743-pat00004
이처럼 최소 시작 노드 집합을 찾고가 하는 노드가 n개(n≥2)라면, n개의 노드에 대응하는 MSS 인덱스를 조합해야 한다.
한편, 하이퍼엣지의 MSS를 아래 <수학식 3>과 같이 정의하면, 노드의 MSS는 그 노드를 향하는 하이퍼엣지의 MSS를 합집합 하여 계산할 수 있다
하이퍼엣지 e의 소스 노드들을 v1, …, vk라 할 때, 하이퍼엣지 e의 MSS는 mss(e)라 하면, 다음의 <수학식 3>과 같이 정의할 수 있다.
[수학식 3]
Figure 112016013764743-pat00005
그러면 노드 v를 향하는 하이퍼엣지들을 e1, e2, …, ek라 할 때, 만약 노드 v가 시작 노드라면, 노드 v의 MSS는 아래 <수학식 4>와 같이 정의할 수 있다.
[수학식 4]
Figure 112016013764743-pat00006
노드 v가 시작 노드가 아니라면, 노드 v의 MSS는 아래 <수학식 5>와 같이 정의할 수 있다.
[수학식 5]
Figure 112016013764743-pat00007
위의 <수학식 4>와 <수학식 5>를 이용하여 노드 v의 MSS를 계산할 수 있다.
도 4는 실시 예에 따라 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 검색 장치의 구성을 도시한 도면이다.
도 4를 참조하면, 본 발명의 검색 장치(400)는 수신부(410), 저장부(420), MSS 선처리부(430), 인터페이스부(440)와 연계하여 특정 노드에 대한 최소 크기의 시작 노드 집합으로 제공할 수 있다.
수신부(410)는 노드 정보, 하이퍼엣지 정보 및 시작 노드 정보를 수신한다.
이때, 노드 정보는 노드 식별자 정보, 해당 노드에서 나아가는 하이퍼엣지 정보, 방문확인 정보, 및 노드의 MSS 정보를 포함할 수 있다. 그리고, 수신시 방문확인 정보는 초기값으로 미방문으로 설정된다.
그리고, 하이퍼엣지 정보는 하이퍼엣지의 식별자 정보, 하이퍼엣지의 소스 노드 정보, 하이퍼엣지의 타겟 노드 정보, 하이퍼엣지의 MSS 정보를 포함할 수 있다. 그리고, 하이퍼엣지의 MSS 정보는 초기값으로 공집합으로 설정된다.
저장부(420)는 수신부(410)를 통해 수신한 노드 정보, 하이퍼엣지 정보 및 시작 노드 정보를 저장한다.
MSS 선처리부(430)는 시작 노드로부터 포워드 순회(forward traversal)를 하면서 모든 노드의 미니멀 시작 노드 집합(MSS; Minimal Source Set)을 확인하여 저장부(420)에 MSS 인덱스로 저장한다. MSS 선처리부(430)는 시작 노드의 MSS를 계산을 상술한 <수학식 4>을 이용하여 계산하고, 시작 노드가 아닌 나머지 노드 각각의 MSS를 상술한 <수학식 5>를 이용하여 계산할 수 있다. MSS 선처리부(430)의 세부 과정은 도 6을 참조하여 보다 상세히 후술한다.
인터페이스부(440)는 특정 노드에 대한 최소 크기의 시작 노드 집합을 요청 받으면, 저장부(420)에 각 노드에 저장된 MSS 정보를 이용해서 특정 노드에 대응하는 MSS 집합을 검색하고, 검색된 MSS 집합에서 최소 크기의 집합을 특정 노드에 대한 최소 크기의 시작 노드 집합으로 제공할 수 있다.
이하, 상기와 같이 구성된 본 발명에 따른 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 방법을 아래에서 도면을 참조하여 설명한다.
도 5는 실시 예에 따라 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 과정을 도시한 흐름도이다.
도 5를 참조하면, 검색 장치(400)는 노드 정보, 하이퍼엣지 정보 및 시작 노드 정보를 수신한다(510).
이때, 노드 정보는 노드 식별자 정보, 해당 노드에서 나아가는 하이퍼엣지 정보, 방문확인 정보, 및 노드의 MSS 정보를 포함할 수 있다. 그리고, 수신시 방문확인 정보는 초기값으로 미방문으로 설정된다.
그리고, 하이퍼엣지 정보는 하이퍼엣지의 식별자 정보, 하이퍼엣지의 소스 노드 정보, 하이퍼엣지의 타겟 노드 정보, 하이퍼엣지의 MSS 정보를 포함할 수 있다. 그리고, 하이퍼엣지의 MSS 정보는 초기값으로 공집합으로 설정된다.
그리고, 검색 장치(400)는 시작 노드로부터 포워드 순회(forward traversal)를 하면서 모든 노드의 미니멀 시작 노드 집합(MSS; Minimal Source Set)을 확인하여 저장부(420)에 MSS 인덱스로 저장한다(520). 520단계에서 검색 장치(400)는 시작 노드의 MSS를 계산을 상술한 <수학식 4>을 이용하여 계산하고, 시작 노드가 아닌 나머지 노드 각각의 MSS를 상술한 <수학식 5>를 이용하여 계산할 수 있다. 520단계의 상세한 과정은 도 6을 참조하여 후술한다.
그리고, 검색 장치(400)는 특정 노드에 대한 최소 크기의 시작 노드 집합을 요청 받으면(530), 각 노드에 저장된 MSS 정보를 이용해서 특정 노드에 대응하는 MSS 집합을 검색하고, 검색된 MSS 집합에서 최소 크기의 집합을 특정 노드에 대한 최소 크기의 시작 노드 집합으로 제공한다(540).
도 6은 실시 예에 따라 유향 하이퍼그래프의 모든 노드에 대해서 미니멀 시작 노드 집합을 사전에 확인하는 과정을 도시한 흐름도이다.
도 6을 참조하면, 검색 장치(400)는 시작 노드를 큐에 푸시한다(610). 이때, 검색 장치(400)는 시작 노드들 중에서 시작 노드로 들어오는 하이퍼엣지가 없는 시작 노드를 먼저 상기 큐에 푸시한다.
그리고, 검색 장치(400)는 큐에 삽입된 시작 노드에 포함된 MSS 정보에 해당 시작 노드를 추가한다(612).
그리고, 검색 장치(400)는 큐에 삽입된 시작 노드에 포함된 방문 정보를 방문으로 변경한다(614).
그리고, 검색 장치(400)는 큐에서 노드를 팝(pop)한다(616).
그리고, 검색 장치(400)는 팝된 노드에서 나아가는 하이퍼엣지에 각각에 대해서, 하이퍼엣지의 모든 소스 노드를 방문한 하이퍼엣지가 존재하는지 확인한다(618).
618단계의 확인결과 모든 소스 노드를 방문한 하이퍼엣지가 존재하면, 검색 장치(400)는 모든 소스 노드를 방문한 하이퍼엣지의 MSS을 확인한다(620). 하이퍼엣지가 모든 소스 노드를 방문했는지 여부는 하이퍼엣지에 포함된 소스 노드 정보를 확인하여 소스 노드가 무엇인지 확인하고, 소스 노드 각각의 방문 정보를 확인하여 방문 여부를 확인할 수 있다. 하이퍼엣지의 MSS는 상술한 <수학식 3>과 같이 계산되며, 하이퍼엣지에 포함된 하이퍼엣지의 MSS 정보에 저장될 수 있다.
그리고, 검색 장치(400)는 모든 소스 노드를 방문한 하이퍼엣지의 타겟 노드에 포함된 MSS 정보를 통해서 저장된 타겟 노드의 MSS를 확인한다(622). 이때, 타겟 노드의 MSS는 초기값으로 공집합이 저장된다.
그리고, 검색 장치(400)는 하이퍼엣지의 MSS와 저장된 타겟 노드의 MSS를 합집합하고, 미니멀(minimal) 집합을 구하여 타겟 노드의 MSS를 계산한다(624).
그리고, 검색 장치(400)는 타겟 노드의 방문 정보를 방문으로 변경한다(626).
그리고, 검색 장치(400)는 계산된 타겟 노드의 MSS와 저장된 타겟 노드의 MSS가 같은지 확인한다(628).
628단계의 확인결과, 계산된 타겟 노드의 MSS와 저장된 타겟 노드의 MSS가 다르면, 검색 장치(400)는 타겟 노드의 MSS에 포함된 MSS 정보에 계산된 타겟 노드의 MSS를 갱신한다(630).
그리고, 검색 장치(400)는 큐에 해당 타겟 노드가 존재하는지 확인한다(632).
632단계의 확인결과, 큐에 해당 타겟 노드가 존재하지 않으면, 검색 장치(400)는 타겟 노드를 큐에 푸시(push)한다(634).
한편, 618단계의 확인결과 모든 소스 노드를 방문한 하이퍼엣지가 존재하지 않거나, 628단계의 확인결과, 계산된 타겟 노드의 MSS와 저장된 타겟 노드의 MSS가 같거나, 632단계의 확인결과, 큐에 해당 타겟 노드가 존재하거나 또는, 634단계 이후에, 검색 장치(400)는 큐에 노드가 존재하는지 확인한다(636).
636단계의 확인결과 큐에 노드가 존재하면, 검색 장치(400)는 616단계로 돌아간다. 636단계의 확인결과 큐에 노드가 존재하지 않으면, 검색 장치(400)는 도 6의 알고리즘을 종료한다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
400; 최소 크기의 시작 노드 집합을 찾는 장치
410; 수신부
420; 저장부
430; MSS 선처리부
440; 인터페이스부

Claims (12)

  1. 노드 정보, 하이퍼엣지 정보 및 시작 노드 정보를 수신하는 단계;
    시작 노드로부터 포워드 순회(forward traversal)를 하면서 모든 노드의 미니멀 시작 노드 집합(MSS; Minimal Source Set)을 확인하여 MSS 인덱스로 저장하는 단계; 및
    특정 노드에 대한 최소 크기의 시작 노드 집합을 요청 받으면, 상기 MSS 인덱스에서 상기 특정 노드에 대응하는 MSS 집합에서 최소 크기의 집합을 상기 특정 노드에 대한 최소 크기의 시작 노드 집합으로 제공하는 단계
    를 포함하고,
    상기 모든 노드의 미니멀 시작 노드 집합(MSS; Minimal Source Set)을 확인하여 상기 MSS 인덱스로 저장하는 단계는,
    상기 시작 노드를 큐에 푸시하는 단계;
    상기 큐에 삽입된 상기 시작 노드에 포함된 MSS 정보에 해당 시작 노드를 추가하는 단계;
    상기 큐에 삽입된 상기 시작 노드에 포함된 방문 정보를 방문으로 변경하는 단계;
    상기 큐에서 노드를 팝하는 제1 단계;
    상기 팝된 노드에서 나아가는 하이퍼엣지에 각각에 대해서, 상기 하이퍼엣지의 모든 소스 노드를 방문한 하이퍼엣지가 존재하는지 확인하는 제2 단계;
    확인결과 상기 모든 소스 노드를 방문한 하이퍼엣지가 존재하면, 상기 모든 소스 노드를 방문한 하이퍼엣지의 MSS을 확인하는 제3 단계;
    상기 모든 소스 노드를 방문한 하이퍼엣지의 타겟 노드에 포함된 MSS 정보를 통해서 저장된 타겟 노드의 MSS를 확인하는 제4 단계;
    상기 하이퍼엣지의 MSS와 상기 저장된 타겟 노드의 MSS를 합집합하고, 최소(minimal) 집합을 구하여 상기 타겟 노드의 MSS를 계산하는 제 5단계;
    상기 타겟 노드의 방문 정보를 방문으로 변경하는 제 6단계;
    상기 계산된 타겟 노드의 MSS와 상기 저장된 타겟 노드의 MSS가 다르면, 상기 타겟 노드의 MSS에 포함된 상기 MSS 정보에 상기 계산된 타겟 노드의 MSS를 저장하고, 상기 큐에 상기 타겟 노드가 존재하지 않으면, 상기 타겟 노드를 상기 큐에 푸시하는 제 7단계; 및
    상기 큐에 노드가 존재하면 상기 제1 단계로 돌아가는 단계
    를 포함하는 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 방법.
  2. 제1항에 있어서,
    상기 노드 정보는,
    노드 식별자 정보, 해당 노드에서 나아가는 하이퍼엣지 정보, 방문확인 정보, 및 노드의 MSS 정보를 포함하고,
    상기 방문확인 정보는 초기값으로 미방문으로 설정되고,
    상기 노드의 MSS 정보는 초기값으로 공집합을 가지는
    유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 방법.
  3. 제1항에 있어서,
    상기 하이퍼엣지 정보는,
    하이퍼엣지의 식별자 정보, 상기 하이퍼엣지의 소스 노드 정보, 상기 하이퍼엣지의 타겟 노드 정보, 상기 하이퍼엣지의 MSS 정보를 포함하고,
    상기 하이퍼엣지의 MSS 정보는 초기값으로 공집합을 가지는
    유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 방법.
  4. 제1항에 있어서,
    상기 모든 노드의 미니멀 시작 노드 집합(MSS; Minimal Source Set)을 확인하여 상기 MSS 인덱스로 저장하는 단계는,
    상기 시작 노드의 MSS를 계산하는 단계; 및
    상기 시작 노드가 아닌 나머지 노드 각각의 MSS를 계산하는 단계
    를 포함하는 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 방법.
  5. 제4항에 있어서,
    상기 시작 노드의 MSS를 계산하는 단계는,
    아래 <수학식 5>를 통해서 상기 시작 노드의 MSS 를 계산하는 단계
    를 포함하는 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 방법.
    [수학식 5]
    Figure 112016013764743-pat00008

    여기서, v는 시작 노드를 나타내고, e1, e2, …, ek는 v로 들어가는 하이퍼엣지를 나타낸다.
  6. 제4항에 있어서,
    상기 시작 노드가 아닌 나머지 노드 각각의 MSS를 계산하는 단계는,
    아래 <수학식 6>을 통해서 상기 나머지 노드의 MSS를 계산하는 단계
    를 포함하는 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 방법.
    [수학식 6]
    Figure 112016013764743-pat00009

    여기서, v는 상기 나머지 노드를 나타내고, e1, e2, …, ek는 v로 들어가는 하이퍼엣지를 나타낸다.
  7. 삭제
  8. 제1항에 있어서,
    상기 시작 노드를 큐에 푸시하는 단계는,
    상기 시작 노드들 중에서 상기 시작 노드로 들어오는 하이퍼엣지가 없는 시작 노드를 먼저 상기 큐에 푸시함을 특징으로 하는
    유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 방법.
  9. 제1항 내지 제6항 및 제8항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.
  10. 노드 정보, 하이퍼엣지 정보 및 시작 노드 정보를 수신하는 수신부;
    시작 노드로부터 포워드 순회(forward traversal)를 하면서 모든 노드의 미니멀 시작 노드 집합(MSS; Minimal Source Set)을 확인하여 MSS 인덱스로 저장하는 MSS 선처리부; 및
    특정 노드에 대한 최소 크기의 시작 노드 집합을 요청 받으면, 상기 MSS 인덱스에서 상기 특정 노드에 대응하는 MSS 집합에서 최소 크기의 집합을 상기 특정 노드에 대한 최소 크기의 시작 노드 집합으로 제공하는 인터페이스부
    를 포함하고,
    상기 MSS 선처리부는,
    상기 시작 노드를 큐에 푸시하고, 상기 큐에 삽입된 상기 시작 노드에 포함된 MSS 정보에 해당 시작 노드를 추가하고, 상기 큐에 삽입된 상기 시작 노드에 포함된 방문 정보를 방문으로 변경하고, 상기 큐에서 노드를 팝하는 제1 과정, 상기 팝된 노드에서 나아가는 하이퍼엣지에 각각에 대해서, 상기 하이퍼엣지의 모든 소스 노드를 방문한 하이퍼엣지가 존재하는지 확인하는 제2 과정, 확인결과 상기 모든 소스 노드를 방문한 하이퍼엣지가 존재하면, 상기 모든 소스 노드를 방문한 하이퍼엣지의 MSS을 확인하는 제3 과정, 상기 모든 소스 노드를 방문한 하이퍼엣지의 타겟 노드에 포함된 MSS 정보를 통해서 저장된 타겟 노드의 MSS를 확인하는 제4 과정, 상기 하이퍼엣지의 MSS와 상기 저장된 타겟 노드의 MSS를 합집합하고, 최소(minimal) 집합을 구하여 상기 타겟 노드의 MSS를 계산하는 제 5과정, 상기 타겟 노드의 방문 정보를 방문으로 변경하는 제 6과정, 상기 계산된 타겟 노드의 MSS와 상기 저장된 타겟 노드의 MSS가 다르면, 상기 타겟 노드의 MSS에 포함된 상기 MSS 정보에 상기 계산된 타겟 노드의 MSS를 저장하고, 상기 큐에 상기 타겟 노드가 존재하지 않으면, 상기 타겟 노드를 상기 큐에 푸시하는 제 7과정, 상기 큐에 노드가 존재하지 않을 때까지 상기 제1 과정에서 상기 제 7과정까지의 과정을 반복해서 수행하는
    유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치.
  11. 제10항에 있어서,
    상기 노드 정보는,
    노드 식별자 정보, 해당 노드에서 나아가는 하이퍼엣지 정보, 방문확인 정보, 및 노드의 MSS 정보를 포함하고,
    상기 방문확인 정보는 초기값으로 미방문으로 설정되고,
    상기 노드의 MSS 정보는 초기값으로 공집합을 가지는
    유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치.
  12. 제10항에 있어서,
    상기 하이퍼엣지 정보는,
    하이퍼엣지의 식별자 정보, 상기 하이퍼엣지의 소스 노드 정보, 상기 하이퍼엣지의 타겟 노드 정보, 상기 하이퍼엣지의 MSS 정보를 포함하고,
    상기 하이퍼엣지의 MSS 정보는 초기값으로 공집합을 가지는
    유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치.
KR1020160015877A 2016-02-11 2016-02-11 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치 및 방법 KR101745817B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160015877A KR101745817B1 (ko) 2016-02-11 2016-02-11 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160015877A KR101745817B1 (ko) 2016-02-11 2016-02-11 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치 및 방법

Publications (1)

Publication Number Publication Date
KR101745817B1 true KR101745817B1 (ko) 2017-06-09

Family

ID=59219831

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160015877A KR101745817B1 (ko) 2016-02-11 2016-02-11 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101745817B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101480670B1 (ko) * 2014-03-28 2015-01-15 경희대학교 산학협력단 대용량 그래프 데이터베이스에서 최단 경로를 탐색하는 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101480670B1 (ko) * 2014-03-28 2015-01-15 경희대학교 산학협력단 대용량 그래프 데이터베이스에서 최단 경로를 탐색하는 방법

Similar Documents

Publication Publication Date Title
US11403284B2 (en) System for data sharing platform based on distributed data sharing environment based on block chain, method of searching for data in the system, and method of providing search index in the system
US10733055B1 (en) Methods and apparatus related to graph transformation and synchronization
CA2956078C (en) Data lineage summarization
CN104937552B (zh) 并行数据库和分布式文件系统上的数据分析平台
US9037677B2 (en) Update protocol for client-side routing information
CN109194707B (zh) 分布式图嵌入的方法及装置
KR102340277B1 (ko) 고효율 부정확 컴퓨팅 스토리지 장치
EP2653985A2 (en) Client-side query statement routing in distributed database
US9400767B2 (en) Subgraph-based distributed graph processing
MX2013015009A (es) Fusion logica eficiente a traves de corrientes fisicamente divergentes.
JP2007513426A (ja) 異種コンピュータシステムにわたる複雑計算
KR102175183B1 (ko) 기업 데이터 통합 관리 방법, 장치, 및 시스템
WO2015180340A1 (zh) 一种数据挖掘方法及装置
JP2007199804A (ja) データベース管理方法、データベース管理プログラム、データベース管理装置、および、データベース管理システム
KR20120008488A (ko) 다항식 기반의 데이터 변환 및 이용을 위한 방법, 장치 및 컴퓨터 판독가능 저장 매체
JP2018147301A (ja) 計算機システム及び処理の割当方法
KR101745817B1 (ko) 유향 하이퍼그래프에서 최소 크기의 시작 노드 집합을 찾는 장치 및 방법
US9880923B2 (en) Model checking device for distributed environment model, model checking method for distributed environment model, and medium
KR101324387B1 (ko) 동적 분산형 디바이스 네트워크에서 데이터 서명을 결정하기 위한 방법, 장치, 및 컴퓨터 프로그램 제품
US9367937B2 (en) Apparatus and method for effective graph clustering of probabilistic graphs
US20150347507A1 (en) Hierarchical query plans in an elastic parallel database management system
US8762898B1 (en) Double patterning aware routing without stitching
US8160092B1 (en) Transforming a declarative description of a packet processor
KR101757251B1 (ko) 집계질의를 처리하기 위한 장치 및 그 방법
CN103562918A (zh) 用于到存储器内数据网格的派遣的数据库查询的拦截

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant