KR102452629B1 - 최소한의 일시적 섭동을 사용해 부울리언 네트워크의 임의의 상태를 원하는 끌개의 끌개유역 경계 상태로 천이시키는 제어방법 - Google Patents

최소한의 일시적 섭동을 사용해 부울리언 네트워크의 임의의 상태를 원하는 끌개의 끌개유역 경계 상태로 천이시키는 제어방법 Download PDF

Info

Publication number
KR102452629B1
KR102452629B1 KR1020190101194A KR20190101194A KR102452629B1 KR 102452629 B1 KR102452629 B1 KR 102452629B1 KR 1020190101194 A KR1020190101194 A KR 1020190101194A KR 20190101194 A KR20190101194 A KR 20190101194A KR 102452629 B1 KR102452629 B1 KR 102452629B1
Authority
KR
South Korea
Prior art keywords
state
node
boolean network
nodes
basin
Prior art date
Application number
KR1020190101194A
Other languages
English (en)
Other versions
KR20210021790A (ko
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 KR1020190101194A priority Critical patent/KR102452629B1/ko
Publication of KR20210021790A publication Critical patent/KR20210021790A/ko
Application granted granted Critical
Publication of KR102452629B1 publication Critical patent/KR102452629B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B5/00ICT specially adapted for modelling or simulations in systems biology, e.g. gene-regulatory networks, protein interaction networks or metabolic networks
    • G16B5/10Boolean models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Biology (AREA)
  • Molecular Biology (AREA)
  • Biotechnology (AREA)
  • Physiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

부울리언 네트워크 초기상태로부터, 상기 초기상태가 포함되지 않은 원하는 제1끌개유역의 바운더리 상태를 결정하는 단계, 및 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태를 서로 비교하였을 때에 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하는 단계를 포함하며, 상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태인 것을 특징으로 하는, 부울리언 네트워크의 제어노드 결정방법을 공개한다.

Description

최소한의 일시적 섭동을 사용해 부울리언 네트워크의 임의의 상태를 원하는 끌개의 끌개유역 경계 상태로 천이시키는 제어방법{A control method for driving any state of a Boolean network to a boundary state of the basin of a desired attractor by using a minimum temporary perturbation}
본 발명은 최소한의 일시적 섭동을 사용하여 부울리언 네트워크의 상태를 원하는 끌개의 끌개유역의 경계 상태로 보내는 제어기술에 관한 것으로서, 컴퓨팅 장치에 의해 실행될 수 있는 기술에 관한 것이다.
원하지 않는 초기상태(ex: cancer state)에 있는 세포의 상태를 원하는 상태(ex: cell death state)로 변화시키기 위해서 한 종류의 약물 또는 여러 종류의 약물의 조합을 세포에 투여할 수 있다. 이때 더 적은 종류의 약물을 투약함으로써 동일한 효과를 얻을 수 있다면 비용적 측면 및 약물 부작용 최소화의 측면에서 더 바람직할 수 있다.
세포의 표현형의 변화는 생체분자 신호처리 네트워크에 의해 모델링되어 분석될 수 있다. 그리고 생체분자 신호처리 네트워크는 부울리언 네트워크로 모델링될 수도 있다. 부울리언 네트워크의 각 노드는 생체분자 신호처리 네트워크가 나타내는 각 분자에 대응할 수 있다. 대한민국 특허공개번호 10-2014-0032070 에는 부울리언 네트워크 및 상태천이 다이어그램(state transition diagram)에 대한 내용이 공개되어 있다.
상태천이 다이어그램 및 이와 함께 이용되는 끌개 지형(attractor landscape)이라는 기법과 함께 시스템의 동역학을 한눈에 파악할 수 있는 분석법이다. 상태천이 다이어그램을 이용하면 시스템의 모든 상태천이경로를 파악할 수 있으며, 끌개 지형을 통해 끌개(attractor) 및 그 끌개유역(basin)을 파악할 수 있다.
'부울리언 네트워크' 의 특정 끌개의 끌개유역을 찾기 위한 종래기술에서는, 시스템이 가질 수 있는 모든 상태에서, 주어진 갱신규칙을 적용하여 상기 특정 끌개까지의 상태천이경로를 계산하여 상기 특정 끌개로 수렴하는 상태천이경로를 찾는 과정을 이용하여 전체 특정 끌개유역의 상태천이 다이어그램을 얻는다.
상술한 내용은 본 발명의 이해를 돕기 위하여 본 발명의 발명자가 알고 있거나 연구한 내용을 바탕으로 기술한 것이다. 따라서 상술한 내용이 본 발명의 특허출원 이전에 불특정인에게 공개된 것이 당연한 것으로 간주하여서는 안 된다.
본 발명에서는 원하지 않는 초기상태에 있는 세포의 상태를 원하는 상태로 변화시키기 위해서 세포에 투여해야 할 약물의 조합을 결정할 수 있도록 하는 기술을 제공하고자 한다.
본 발명에서는 세포의 상태를 변화시키기 위하여 제어해야 하는 단백질을 결정하는 기술을 제공하고자 한다.
본 발명에서는 세포의 동역학 시스템을 모델링한 생체분자 신호처리 네트워크를 부울리언 네트워크로 모델링하였을 때에, 부울리언 네트워크의 원하지 않는 초기상태를 원하는 상태로 변화시키기 위하여 그 상태를 제어해야 하는 노드를 결정하는 기술을 제공하고자 한다. 이때 상기 부울리언 네트워크의 각 노드는 세포의 단백질을 나타낼 수 있다.
본 발명에서 사용되는 일부 용어들은 아래와 같이 정의될 수 있다.
- 상태(state): 부울리언 네트워크의 경우 각 노드는 0 또는 1의 값을 갖는데, 부울리언 네트워크의 '상태'는 모든 노드(node) 값의 순서쌍으로 표현될 수 있다. 이에 따르면, 부울리언 네트워크의 총 노드 수가 N개일 때 가능한 상태의 수는 2N개이다. 부울리언 네트워크는 특정 순간에 특정 상태를 가질 수 있으며, 시간이 흐름에 따라 상기 부울리언 네트워크의 상태는 변화할 수도 있고 그대로 남아 있을 수도 있다.
- 끌개(attractor): 부울리언 네트워크의 상태들 중 시간이 지나도 반복되는 상태의 집합을 '끌개'라고 지칭할 수 있다. 상기 끌개는 생명 시스템의 경우 암 또는 세포 사멸과 같은 상태를 의미하는 '표현형'에 대응될 수 있다.
- 상태천이경로(state transition trajectory): 외부 간섭 없이 부울리언 네트워크의 상태가 시간이 흐르면 변해가는 경로를 '상태천이경로'라고 지칭할 수 있다. 상태천이경로를 도식화하여 표현하는 경우, 부울리언 네트워크의 특정 과거 시점에서의 상태로부터 특정 미래 시점에서의 상태로 화살표를 그려 표현할 수 있다. 한 개의 상태천이경로는 시간에 따라 변화하는 다수의 상태들과 상기 다수의 상태들 간을 연결하는 화살표들로 표현될 수 있다.
- 끌개유역(basin): 특정 끌개로 향하는 모든 상태천이경로 상에 포함되는 모든 상태들로 이루어지는 집합을 '끌개유역'이라고 지칭할 수 있다. 특정 끌개유역에 포함된 모든 상태는 시간이 흐르면 상기 특정 끌개유역의 끌개 상태로 수렴될 수 있다.
- 터미널 상태(terminal state): 주어진 상태천이경로 상에서 과거상태를 갖지 않는 상태를 '터미널 상태'라고 지칭할 수 있다. 화살표들로 표시된 주어진 상태천이경로에서, 어떠한 화살표도 향하지 않는 상태를 상기 터미널 상태로 간주할 수도 있다. 터미널 상태에 연결된 화살표는 터미널 상태로부터 출발하게 된다.
- 해밍거리(Hamming distance): 두 개의 상태 사이에 값이 차이나는 노드의 개수를 상기 두 개의 상태 간의 '해밍거리'라고 지칭할 수 있다. 예컨대, 부울리언 네트워크의 총 노드 수가 N개일 때에, 상기 N개의 노드들이 갖는 값들의 조합에 의해 특정되는 상태들 중 제1상태와 제2상태를 서로 비교해 보았을 때에 그 값이 서로 다른 노드의 개수를 제1상태와 제2상태 간의 해밍거리라고 지칭할 수 있다. 구체적인 예로서, N=3이고, 제1상태가 '101'이고 제2상태가 '100'인 경우 상기 제1상태와 상기 제2상태 간의 해밍거리는 1이다. 또 다른 예로서, N=3이고, 제1상태가 '101'이고 제2상태가 '010'인 경우 상기 제1상태와 상기 제2상태 간의 해밍거리는 3이다. 본 발명의 일 실시예에서 상기 해밍거리는 일시적인 제어 시 필요한 제어노드의 개수인 것으로 간주될 수 있다.
- 바운더리(boundary): 원하는 제1끌개유역[DB]의 상태들 중에서, 원하지 않는 제2끌개유역[UB]에 포함된 원하지 않는 제2상태[US]로부터 최단 해밍거리에 있는 상태를 '바운더리 상태', 또는 '원하지 않는 제2상태[US]로부터의 원하는 제1끌개유역[DB]의 바운더리 상태'라고 지칭할 수 있다.상기 원하지 않는 제2상태[US]로부터의 원하는 제1끌개유역[DB]의 바운더리 상태는 한 개 또는 복수 개가 존재할 수 있다. 상기 바운더리 상태의 집합을 '바운더리' 또는 '원하지 않는 제2상태[US]로부터의 원하는 제1끌개유역[DB]의 바운더리' 라고 지칭할 수 있다.
본 명세서에 기재된 [] 안에 표시된 'D'는 '원하는(desired)'을 의미하는 것일 수 있고, 'U'는 '원하지 않는(undesired)'를 의미하는 것일 수 있고, 'B'는 '끌개유역(basin)'을 의미하는 것일 수 있고, 'S'는 '상태(state)'를 의미할 수 있다.
- 제어목적: 시스템의 상태를 일시적인 섭동을 통해 원하지 않는 제2상태[US]로부터 원하는 제1끌개로 최적으로 천이시키는 것을 본 발명의 일 실시예에 따른 '제어목적'으로 정의할 수 있다. 여기서 상기 제2상태[US]는, 상기 시스템에 있어서, 원하지 않는 제2끌개의 끌개유역인 제2끌개유역[UB]에 속하는 상태일 수 있다. 그리고 상기 제1끌개는 상기 시스템의 원하는 끌개 상태일 수 있다. 여기서 '최적'으로 천이시킨다는 것은 상기 원하지 않는 제2상태[US]를 상기 원하는 제1끌개유역[DB]의 바운더리로 천이하기 위하여 최소한의 노드의 값을 일시적으로 조절하는 것을 의미할 수 있다. 예컨대 상기 원하는 제1끌개유역[DB]의 바운더리로 천이하기 위하여 최소한 2개의 노드들의 값을 조절해야 하는 경우에 있어서, 상기 2개의 노드들의 값만을 조절한다면 최적으로 천이시키는 것이지만, 3개 이상의 노드들의 값들을 조절한다면 최적으로 천이시키는 것은 아니다.
- 일시적인 섭동(temporary perturbation): 노드의 값을 일시적으로 변경하는 것을 '일시적인 섭동'이라고 지칭할 수 있다. 한 개 이상의 노드의 값을 일시적으로 변경한 이후 섭동을 바로 멈추면, 부울리언 네트워크는 그 고유의 동역학에 따라 상태 변화가 이루어지게 된다. 본 발명의 일 실시예에서는 제어대상이 되는 노드를 일시적으로 섭동하지만, 비교 실시예에서는 제어대상이 되는 노드의 값을 강제적으로 지속적으로 고정하는 방식으로 섭동할 수 있다. 이러한 비교 실시예에 따르면 특정 노드의 값이 강제적으로 지속 고정되므로 부울리언 네트워크가 그 고유의 동역학에 따라 행동하지 않을 수 있다.
- 초기상태(initial state): 본 발명에서 일시적인 섭동의 제공이 필요한 또는 일시적인 섭동을 가해야 하는 상태로서, 예컨대 원하지 않는 제2끌개유역[UB]에 속해 있는 원하지 않는 제2상태[US]를 '초기상태'라고 지칭할 수도 있다. 이에 따르면 상기 바운더리 상태는 '초기상태로부터의 원하는 제1끌개유역[DB]의 바운더리 상태'라고 지칭할 수도 있다.
- 대칭노드: 대칭노드는 두 가지 종류로 분류될 수 있다. 첫째, '구조적 대칭노드'는 네트워크 구조만으로부터 결정되는 대칭노드로서 모든 끌개유역에서 항상 대칭노드이다. 둘째, '동역학적 대칭노드'는 구조적 대칭노드 외에 끌개 별로 동역학적 특성에 따라 나타나게 되는 추가적인 대칭노드이며, 구조적 대칭노드는 끌개유역을 계산하지 않아도 알 수 있지만 동역학적 대칭노드는 특정 끌개유역을 계산한 후에야 알 수 있다.
네트워크 구조에서 나가는 링크가 없는 노드는 '구조적 대칭노드'인 것으로 간주될 수 있다. 또한, 나가는 링크가 하나이고 상기 나가는 링크에 연결된 노드가 구조적 대칭노드인 경우에는 상기 노드 역시 구조적 대칭노드인 것으로 간주될 수 있다.
'대칭'에 대한 구체적 의미의 예로서, N=3이고 노드가 A, B, C가 있고 노드 A가 네트워크 구조로부터 찾은 구조적 대칭노드라고 하자. 특정 끌개유역에 상태 (A, B, C)=(0, b, c)가 있으면 상기 끌개유역에 상태 (A, B, C)=(1, b, c)가 반드시 존재한다. 노드 A가 이런 대칭성을 유발하기 때문에 대칭노드로 지칭할 수 있다.
또는, 구조적 대칭노드는 아니지만 특정 끌개의 끌개유역을 계산하면 상기 예(N=3, 노드 A, B, C)에서 기술한 대칭성을 만족시키는 노드가 존재할 수 있다. 끌개유역을 계산한 후에 알 수 있는 대칭노드이므로 '동역학적 대칭노드'로 지칭할 수 있다.
- 고정노드: 특정 끌개유역의 모든 상태들에 있어서 그 값이 항상 일정한 노드를 고정노드로 정의할 수 있다.
본 발명의 일 실시예에 따르면, 상기 제어목적을 달성을 위하여, 원하지 않는 초기상태로부터의 원하는 바운더리로 일시적인 섭동에 의해 상태를 천이시킨다.
본 발명의 일 관점에 따라, 부울리언 네트워크 초기상태로부터, 상기 초기상태가 포함되지 않은 원하는 제1끌개유역의 바운더리 상태를 결정하는 단계; 및 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태 중 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하는 단계;를 포함하며, 상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태인 것을 특징으로 하는, 부울리언 네트워크의 제어노드 결정방법이 제공될 수 있다.
이때, 상기 부울리언 네트워크의 제어노드 결정방법은 상기 초기상태에 있는 상기 부울리언 네트워크의 노드들 중 상기 제어노드를 섭동하는 단계를 더 포함할 수 있다.
이때, 상기 제어노드의 섭동은 일시적으로만 이루어질 수 있다.
이때, 상기 바운더리 상태를 결정하는 단계는, 상기 부울리언 네트워크의 노드들 중 대칭노드를 결정하는 단계(상기 대칭노드는 상기 부울리언 네트워크의 상태들이 갖는 값들을 노드 별로 평균하였을 때에 그 평균값이 0.5이면서, 그 노드를 제외한 나머지 끌개유역의 상태가 대칭을 이루는 노드); 상기 부울리언 네트워크의 노드들 중 고정노드를 결정하는 단계(상기 고정노드는 상기 제1끌개유역의 모든 상태들에 있어서 그 값이 항상 일정한 노드임); 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 부분해밍거리를 산출하는 단계(상기 부분해밍거리는, 상기 대칭노드 및 상기 고정노드를 제외한 노드인 비고정/비대칭 노드들만을 대상으로 산출한 해밍거리임); 및 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 상기 부분해밍거리들 중 최소거리를 갖는 상태를 상기 바운더리 상태인 것으로 결정하는 단계;를 포함할 수 있다.
이때, 상기 부울리언 네트워크는 생체분자 신호전달 네트워크를 모델링 한 것이며, 상기 부울리언 네트워크의 각 노드는 상기 생체분자 신호전달 네트워크의 각 분자에 대응할 수 있다.
이때, 상기 바운더리 상태를 결정하는 단계는, 상기 부울리언 네트워크의 노드들 중, 상기 제1끌개유역의 모든 상태들에 있어서 그 값이 항상 일정한 노드인 것으로 정의되는 고정노드를 결정하는 고정노드 결정단계; 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리를 산출하는 해밍거리 산출단계; 및 상기 제1끌개유역에 속한 상태들 중 상기 초기상태로부터 최소 해밍거리를 갖는 상태를 바운더리 상태인 것으로 결정하는 단계;를 포함할 수 있다. 이때, 상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리일 수 있다.
이때, 상기 해밍거리 산출단계는, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 부분해밍거리를 산출하는 단계를 더 포함하고, 상기 부분해밍거리는, 상기 대칭노드 및 상기 고정노드를 제외한 노드인 비고정 노드들 및 비대칭 노드들만을 대상으로 산출한 해밍거리이며, 상기 바운더리 상태인 것으로 결정하는 단계는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 상기 부분해밍거리들 중 최소거리를 갖는 상태를 상기 바운더리 상태인 것으로 결정하는 단계를 포함할 수 있다.
이때, 상기 부울리언 네트워크의 제어노드 결정방법은 상기 부울리언 네트워크의 노드들 중 대칭노드를 결정하는 단계를 더 포함할 수 있다. 이때, 상기 대칭노드는 상기 부울리언 네트워크의 구조에서, 나가는 링크를 갖지 않는 노드로서 정의되는 구조적 대칭노드를 포함하고, 상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드와 상기 대칭노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리일 수 있다.
이때, 상기 대칭노드는, 상기 부울리언 네트워크의 구조에서 나가는 링크를 한 개만 가지며, 상기 나가는 링크에 연결된 노드가 상기 구조적 대칭노드인 또 다른 구조적 대칭노드를 더 포함할 수 있다.
이때, 상기 대칭노드는, 상기 부울리언 네트워크의 상태들이 갖는 값들을 노드 별로 평균하였을 때에 그 평균값이 0.5이며, 그 노드를 기준으로 나머지 상태들이 대칭을 이루는 노드로서 정의되는 동역학적 대칭노드를 더 포함할 수 있다.
이때, 상기 부울리언 네트워크의 제어노드 결정방법은 상기 부울리언 네트워크의 노드들 중 대칭노드를 결정하는 단계를 더 포함할 수 있다. 이때, 상기 대칭노드는, 상기 부울리언 네트워크의 상태들이 갖는 값들을 노드 별로 평균하였을 때에 그 평균값이 0.5이며, 그 노드를 기준으로 나머지 상태들이 대칭을 이루는 노드로서 정의되는 동역학적 대칭노드를 포함하며, 상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드와 상기 대칭노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리일 수 있다.
이때, 상기 제1끌개유역에 속한 모든 상태를 결정하는 방법은, 상기 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하는 단계; 상기 부울리언 네트워크의 기준상태를 상기 제1끌개로 초기화하는 단계; 및 ① 상기 부울리언 네트워크의 상태의 갱신규칙인 제1갱신규칙 및 ② 상기 부울리언 네트워크의 기준상태를 기초로 상기 부울리언 네트워크의 직전상태를 계산하는 상태 역추적 단계로서, 상기 기준상태는 기준시점에서의 상기 부울리언 네트워크의 상태로 정의되며, 상기 직전상태는 상기 기준시점의 바로 이전의 시점인 직전시점에서의 상기 부울리언 네트워크의 상태로 정의되는, 상기 상태 역추적 단계를 포함할 수 있다. 이때, 상기 계산된 직전상태들 각각에 대하여, 상기 기준상태를 상기 계산된 직전상태로 갱신한 후 상기 상태 역추적 단계를 반복함으로써, 상기 제1끌개가 포함된 제1끌개유역의 모든 상태를 결정할 수 있다.
이때, 상기 계산된 직전상태들 중 터미널 상태인 것으로 결정된 것들에 대해서는, 상기 기준시점에서의 상기 제1네트워크의 상태로서의 자격을 부여하지 않으며, 그리고 상기 상태 역추적 단계를 반복하지 않도록 되어 있으며, 상기 터미널 상태는, 상기 터미널 상태가 포함된 상태천이경로 상에서 그 이전의 상태가 존재하지 않는 상태일 수 있다.
이때, 상기 부울리언 네트워크는 제1 부울리언 네트워크로부터 대칭노드가 제거된 것이며, 상기 부울리언 네트워크의 제1끌개는 상기 제1 부울리언 네트워크의 특정 끌개에서 상기 제거된 대칭노드의 값이 제거된 것일 수 있다.
본 발명의 다른 관점에 따라, 유선 또는 무선으로 외부 장치와 통신하는 통신 인터페이스 및 처리부를 포함하는 컴퓨팅 장치가 제공될 수 있다. 이때, 상기 처리부는, 상기 통신 인터페이스를 통해 상기 외부 장치로부터 부울리언 네트워크의 구조에 관한 정보, 상기 부울리언 네트워크의 초기상태에 관한 정보, 상기 부울리언 네트워크의 끌개들 중 상기 초기상태가 포함되지 않은 원하는 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하도록 되어 있고, 상기 초기상태로부터 상기 제1끌개유역의 바운더리 상태를 결정하도록 되어 있고, 그리고 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태 중 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하도록 되어 있다. 이때, 상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태이다.
본 발명의 또 다른 관점에 따라, 유선 또는 무선으로 외부 장치와 통신하는 통신 인터페이스 및 처리부를 포함하는 컴퓨팅 장치의 상기 처리부로 하여금, 상기 통신 인터페이스를 통해 상기 외부 장치로부터 부울리언 네트워크의 구조에 관한 정보, 상기 부울리언 네트워크의 초기상태에 관한 정보, 상기 부울리언 네트워크의 끌개들 중 상기 초기상태가 포함되지 않은 원하는 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하는 단계; 상기 초기상태로부터 상기 제1끌개유역의 바운더리 상태를 결정하는 단계; 및 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태 중 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하는 단계를 실행하도록 하는 프로그램이 기록되어 있는 컴퓨터 판독 가능한 논트랜지토리 저장장치가 제공될 수 있다. 이때, 상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태이다.
본 발명에 따르면 원하지 않는 초기상태에 있는 세포의 상태를 원하는 상태로 변화시키기 위해서 세포에 투여해야 할 약물의 조합을 결정할 수 있도록 하는 기술이 제공될 수 있다.
본 발명에 따르면 세포의 상태를 변화시키기 위하여 제어해야 하는 단백질을 결정하는 기술을 제공하고자 한다.
본 발명에 따르면 세포의 동역학 시스템을 모델링한 생체분자 신호처리 네트워크를 부울리언 네트워크로 모델링하였을 때에, 부울리언 네트워크의 원하지 않는 초기상태를 원하는 상태로 변화시키기 위하여 그 상태를 제어해야 하는 노드를 결정하는 기술을 제공할 수 있다.
도 1은 주어진 제1부울리언 네트워크가 갖는 특정 끌개유역에서 제1터미널 상태로부터 특정 끌개까지 시간의 흐름에 따라 변화하는 과정에 있는 일련의 상태들을 나타내는 제1상태천이경로와 상기 제1상태천이경로를 시간을 거슬러 올라가는 경로인 제1역-상태천이경로의 개념을 나타낸 것이다.
도 2는 제1부울리언 네트워크의 네트워크 구조의 일 예를 나타낸 것이다.
도 3은 도 2에 제시한 상기 제1부울리언 네트워크로부터 구조적 대칭노드를 제거하여 얻은 제1서브 네트워크를 나타낸 것이다.
도 4는 도 3에서 결정형 노드로 분류된 노드를 사각형으로 다시 표현한 것이다.
도 5는 제1서브 네트워크의 각 노드의 값 중 직전시점에서의 각 노드의 값을 좌측에 배치하고 상기 직전시점의 직후인 기준시점에서의 각 노드의 값을 우측에 배치하여, 기준시점에서의 각 노드의 값이 직전시점에서의 어떤 노드로부터 영향을 받는지를 도식화한 것이다.
도 6은 본 발명의 일 실시예에 따라, 주어진 제1 부울리언 네트워크의 특정 상태가 터미널 상태인지 여부를 판단하는 방법을 나타낸 순서도이다.
도 7은 본 발명의 일 실시예에 따라, 주어진 제1 부울리언 네트워크의 특정 끌개가 속한 특정 끌개유역의 모든 상태를 결정하는 방법을 나타낸 순서도이다.
도 8은 본 발명의 일 실시예에서 사용되는 몇 가지 용어의 이해를 돕기 위한 다이어그램이다.
도 9는 본 발명의 일 실시예에서 사용되는 터미널 상태, 바운더리 상태, 최소해밍거리, 해밍거리, 원하는 끌개, 끌개, 초기상태, 및 상태천이경로를 설명하기 위한 또 다른 다이어그램이다.
도 10은 도 9에 제시한 개념을 더 정교화 한 것으로서, 각 상태를 복수 개의 노드들의 값들의 조합으로 구체화하여 나타낸 것이다.
도 11은 본 발명의 일 실시예에 따라 부울리언 네트워크로 모델링되는 생체분자 신호전달 네트워크를 원하는 상태로 변화시키기 위한 제어노드를 결정하는 방법, 즉 제어목표가 되는 생체분자를 결정하는 방법을 나타낸 순서도이다.
도 12는 본 발명의 일 실시예에 따라 특정 초기상태로부터 제1끌개유역의 바운더리 상태를 결정하는 방법을 나타낸 순서도이다.
도 13에 나타낸 그래프는 21개 노드로 구성된 네트워크에서 특정 끌개의 끌개유역의 상태들을 나타내고, 상술한 대칭노드의 성질을 설명하기 위한 것이다.
도 14는 본 발명의 일 실시예의 개념을 설명하기 위한 또 다른 p53 네트워크의 예를 나타낸 것이다.
도 15a는 본 발명의 일 실시예에 따른 제어목표를 설명하기 위한 다이어그램이다.
도 15b는 초기상태 및 제1바운더리에 있어서, 고정노드들과 비고정/비대칭 노드들의 상태를 나열한 것이다.
도 15c는 초기상태 및 제2바운더리에 있어서, 고정노드들과 비고정/비대칭 노드들의 상태를 나열한 것이다.
도 16은 본 발명의 일 실시예에 따라 제공되는 컴퓨팅 장치 및 이와 통신하는 장치들을 나타낸 다이어그램이다.
이하, 본 발명의 실시예를 첨부한 도면을 참고하여 설명한다. 그러나 본 발명은 본 명세서에서 설명하는 실시예에 한정되지 않으며 여러 가지 다른 형태로 구현될 수 있다. 본 명세서에서 사용되는 용어는 실시예의 이해를 돕기 위한 것이며, 본 발명의 범위를 한정하고자 의도된 것이 아니다. 또한, 이하에서 사용되는 단수 형태들은 문구들이 이와 명백히 반대의 의미를 나타내지 않는 한 복수 형태들도 포함한다.
I. 본 발명의 일 실시에에 따라 특정 끌개유역의 모든 상태를 빠르게 결정하는 방법
도 1은 주어진 제1부울리언 네트워크가 갖는 특정 끌개유역에서 제1터미널 상태(1111)로부터 특정 끌개(1131)까지 시간의 흐름에 따라 변화하는 과정에 있는 일련의 상태들을 나타내는 제1상태천이경로(3101)와 상기 제1상태천이경로를 시간을 거슬러 올라가는 경로인 제1역-상태천이경로(R3101)의 개념을 나타낸 것이다.
도 1에서 점선으로 된 폐곡선은 상기 특정 끌개유역의 상태들 중 터미널 상태들을 나타낸 것이다.
본 발명의 일 실시예에서는 특정 끌개(1131)의 값을 알 수 있다는 전제하에, 특정 끌개(1131)로부터 시간의 흐름을 거슬러, 특정 끌개(1131)로부터 시작되는 모든 역-상태천이경로들을 산출함으로써 상기 특정 끌개유역의 모든 상태의 값을 결정할 수 있다.
본 발명의 일 실시예에 따른 단계(S11)에서, 주어진 제1부울리언 네트워크의 네트워크 구조를 획득할 수 있다.
도 2는 단계(S11)에서 제시한 상기 제1부울리언 네트워크의 네트워크 구조의 일 예를 나타낸 것이다. 도 2에 나타낸 예는 본 발명의 이해를 돕기 위하여 간단한 구조의 예를 나타낸 것이다.
본 발명의 일 실시예에 따른 단계(S12)에서 상기 제1부울리언 네트워크 중 구조적 대칭노드를 결정할 수 있다.
상기 구조적 대칭노드를 결정하는 방법은 별도로 후술한다.
도 2에 예시한 제1부울리언 네트워크에 있어서 구조적 대칭노드는 X5이다.
본 발명의 일 실시예에 따른 단계(S13)에서 상기 제1부울리언 네트워크의 구조로부터 상기 결정된 모든 구조적 대칭노드를 제거함으로써 얻을 수 있는 제1서브 네트워크를 결정한다.
도 3은 도 2에 제시한 상기 제1부울리언 네트워크로부터 상기 구조적 대칭노드를 제거하여 얻은 제1서브 네트워크를 나타낸 것이다.
본 발명의 일 실시예에 따른 단계(S14)에서 상기 제1서브 네트워크의 구조에 관한 정보를 기초로 상기 제1서브 네트워크의 상태의 갱신규칙인 제1갱신규칙을 결정할 수 있다.
예컨대 상기 제1갱신규칙은 구조적 대칭노드 X5이 없는 다음의 등식 1 (equation 1) 내지 등식 4와 같이 주어질 수 있다. 등식 1 내지 등식 4 각각은 두 개의 변을 갖는다. 좌측변은 기준시점(=미래시점)에서의 각 노드의 상태를 나타낸 것이고, 우측변은 상기 기준시점에 대한 직전시점(=과거시점)에서의 각 노드의 상태를 나타낸 것이다.
여기서 상기 직전시점에서의 상기 서브 네트워크의 상태는 다른 상태를 거치지 않고 상기 기준시점에서의 상기 서브 네트워크의 상태로 변화한다. 즉, 상기 직전시점은 상기 기준시점에 대한 직전시점이다.
[등식 1] X1 *=X3∨¬X4
[등식 2] X2 *=X1
[등식 3] X3 *=¬X2
[등식 4] X4 *=¬X1
본 발명의 일 실시예에 따른 단계(S21)에서 상기 제1갱신규칙으로부터 또는 상기 제1서브 네트워크의 구조에 관한 정보로부터, 임의의 제1노드의 직전시점(=과거시점)에서의 상태가 상기 제1서브 네트워크의 기준시점(=미래시점)에서의 상태에 의해 유일하게 결정되는지 여부를 결정하여, 유일하게 결정되는 경우에는 상기 제1노드를 결정형 노드로 분류하고, 유일하게 결정되지 않는 경우에는 상기 제1노드를 비결정형 노드로 분류할 수 있다.
등식 1 내지 등식 4에서 노드 X1과 노드 X2는 그 직전시점에서의 상태가 그 직후의 기준시점에서의 상태에 의해 유일하게 결정됨을 알 수 있다. 따라서 노드 X1과 노드 X2는 상기 결정형 노드로 분류된다.
등식 1 내지 등식 4에서 노드 X3과 노드 X4는 그 직전시점에서의 상태가 그 기준시점에서의 상태에 의해 유일하게 결정되지 않는다는 점을 알 수 있다. 따라서 노드 X3과 노드 X4는 상기 비결정형 노드로 분류된다.
도 4는 도 3에서 결정형 노드로 분류된 노드를 사각형으로 다시 표현한 것이다.
본 발명의 일 실시예에 따른 단계(S22)에서 상기 결정형 노드로 분류된 노드들 중 아웃바운드 링크가 복수 개인 노드를 판별노드로 분류할 수 있다.
도 3에 나타낸 제1서브 네트워크의 구조를 참조하면, 상기 결정형 노드들 중 노드 X1으로부터 나가는 아웃바운드 링크는 2개로서 복수 개이며, 상기 결정형 노드들 중 노드 X2로부터 나가는 아웃바운드 링크는 1개로서 복수 개가 아니다. 따라서 도 3에 나타낸 제1서브 네트워크의 경우에 있어서, 판별노드는 노드 X1이다.
도 5는 제1서브 네트워크의 각 노드의 값 중 직전시점에서의 각 노드의 값을 좌측에 배치하고 상기 직전시점의 직후인 기준시점에서의 각 노드의 값을 우측에 배치하여, 기준시점에서의 각 노드의 값이 직전시점에서의 어떤 노드로부터 영향을 받는지를 도식화한 것이다. 도 5의 구조는 도 3 또는 도 4의 링크로부터 쉽게 이해될 수 있다.
다른 예에 따른 서브 네트워크가 주어진 경우 판별노드가 없거나 또는 복수 개일 수도 있다.
상기 제1갱신규칙은 아래의 등식 5 내지 등식 8로 다시 제시될 수 있다. 아래의 등식 5 내지 등식 8 역시 상기 제1갱신규칙인 것으로 간주될 수 있다.
[등식 5] X3∨¬X4=X1 *
[등식 6] X1 =X2 *
[등식 7] ¬X2=X3 *
[등식 8] ¬X1=X4 *
상기 제1갱신규칙은 아래의 등식 9 내지 등식 12로 다시 제시될 수 있다. 아래의 등식 9 내지 등식 12 역시 상기 제1갱신규칙인 것으로 간주될 수 있다.
[등식 9] X3∨¬X4=X1 *
[등식 10] X1 =X2 *
[등식 11] X2=¬X3 *
[등식 12] X1=¬X4 *
본 발명의 일 실시예에 따른 단계(S23)에서 상기 제1갱신규칙에 포함된 각각의 등식(등식 1 내지 등식 4, 또는 등식 5 내지 등식 8, 또는 등식 9 내지 등식 12)의 양 변 중 상기 서브 네트워크의 상태인 과거상태(=직전상태)를 나타내는 제1변에 상기 판별노드가 포함되어 있는지를 확인할 수 있다.
예컨대, 등식 9 내지 등식 12에 있어서 상기 직전시점에서의 과거상태를 나타내는 제1변은 좌변과 우변 중 좌변이다.
본 발명의 일 실시예에 따른 단계(S24)에서 상기 제1갱신규칙에 포함된 등식들 중 상기 제1변에 상기 판별노드가 포함되어 있는 등식들을 선택할 수 있다.
예컨대, 단계(S22)의 예에서 판별노드는 노드 X1인데 등식 9 내지 등식 12에 있어서 좌변에 노드 X1이 포함된 등식은 등식 10 및 등식 12이다. 따라서 상기 선택된 등식은 등식 10 및 등식 12이다.
본 발명의 일 실시예에 따른 단계(S25)에서 상기 선택된 등식들을 이용하여, 상기 직전시점의 바로 다음 시점인 기준시점에서의 상기 서브 네트워크의 상태가 상술한 터미널 상태인지 여부를 판별하는 판별식을 결정할 수 있다.
예컨대 상기 선택된 등식은 등식 10 및 등식 12을 살펴보면, 유효한 과거 상태인 X1 값이 존재하려면, X1 =X2 * =X1=¬X4 *인 관계가 성립해야 한다. 즉, X2 * =¬X4 *인 관계가 성립해야만, 주어진 X1 *의 직전값인 X1가 유효하게 존재할 수 있다.
반대로 만일 상기 X2 * =¬X4 *인 관계가 성립하지 않는다면, 즉, X2 * =X4 *인 관계가 성립한다면, 주어진 X1 *의 직전값인 X1가 유효하게 존재하지 않는다고 볼 수 있다. 즉, 상기 제1서브 네트워크의 가능한 상태들 중 X2 * =X4 *인 관계가 성립하는 상태가 주어졌다면, 상기 주어진 상태보다 이전에 발생한 다른 값의 상태는 존재하지 않는다는 것을 알 수 있다. 그리고 상술한 정의에 의하여 상기 주어진 상태는 터미널 상태인 것으로 간주될 수 있다.
이때, 상기 X2 * =X4 *로 규정되는 식을 상술한 판별식인 것으로 정의할 수 있다. 아래의 등식 13은 상기 제1서브 네트워크에서 얻을 수 있는지 특정한 상태가 터미널 상태인지 여부를 판별하는 판별식이다.
서브 네트워크의 구조에 따라 판별식은 존재하지 않거나 또는 복수 개 존재할 수도 있다.
[등식 13 ] = [판별식] X2 * =X4 *
본 발명의 일 실시예에 따른 단계(S31)에서 상기 제1부울리언 네트워크의 특정 끌개를 획득할 수 있다.
예컨대, 상기 특정 끌개에서 상기 제1부울리언 네트워크의 각 노드(X1 내지 X5)가 갖는 값은 아래의 표 1 및 표 2와 같이 제시될 수 있다. 표 1 또는 표 2의 상태를 갖는 시점을 이하 제1시점 또는 기준시점으로 지칭할 수 있다.
기준시점에서의 제1부울리언 네트워크의 제1상태(예시)
X1 X2 X3 X4 X5
0 1 1 0 1
기준시점에서의 제1부울리언 네트워크의 제2상태(예시)
X1 X2 X3 X4 X5
1 0 0 1 1
본 발명의 일 실시예에 따른 단계(S32)에서 상기 제1부울리언 네트워크의 서브 네트워크인 제1서브 네트워크의 제1끌개를 획득할 수 있다.
예컨대, 상기 제1끌개에서 상기 제1서브 네트워크의 각 노드가 갖는 값은 아래의 표 3 및 표4와 같이 제시될 수 있다. 표 3 및 표 4의 상태를 갖는 시점을 이하 제1시점으로 지칭할 수 있다.
본 명세서에서 상기 제1시점에서의 상기 제1서브 네트워크의 상태를 '기준시점의 상태', 또는 '제1시점의 상태' 또는 '제1레이어의 상태'로 지칭할 수도 있다. 상기 제1끌개가 포인트 끌개(point attractor)인 경우, 상기 제1끌개의 끌개유역인 제1끌개유역에서의 상기 '기준시점의 상태'는 1개가 존재할 수 있다. 이와 비교하여, 상기 제1끌개가 사이클릭 끌개(cyclic attractor)인 경우, 상기 제1끌개의 끌개유역인 제1끌개유역에서의 상기 '기준시점의 상태'는 복수 개가 존재할 수 있다. 표 3 및 표 4는 상기 제1끌개가 사이클릭 끌개인 경우를 나타낸 것이다.
기준시점에서의 제1상태(예시)
X1 X2 X3 X4
0 1 1 0
기준시점에서의 제2상태(예시)
X1 X2 X3 X4
1 0 0 1
본 발명의 일 실시예에 따른 단계(S41)에서, ① 상기 제1서브 네트워크의 제1끌개의 값 및 ② 상기 제1갱신규칙을 이용하여, 상기 기준시점의 직전시점(=제2시점)에서의 상기 제1서브 네트워크의 상태들 중 어느 하나를 계산할 수 있다.
본 명세서에서 상기 기준시점의 직전시점인 제2시점에서의 상기 제1서브 네트워크의 상태를 '직전시점의 상태', '제2시점의 상태' 또는 '제2레이어의 상태'으로 지칭할 수 있다. 상기 직전시점의 상태는 없거나, 1개 이거나, 또는 복수 개 존재할 수 있다.
예컨대 표 3에 나타낸 ① 기준시점에서의 제1상태 {X1 , X2 , X3 , X4} = {0, 1, 1, 0}에 ② 상기 갱신규칙을 적용하여, 상기 기준시점의 직전시점에서의 상태 중 어느 하나인 '직전시점의 제1상태'를 계산하면, 표 5와 같이 제시될 수 있다.
직전시점에서의 제1상태(예시)
X1 X2 X3 X4
1 0 0 1
표 5에 제시한 직전시점에서의 제1상태는 상기 기준시점에서의 제2상태(=사이클릭 끌개)와 동일하다는 점을 알 수 있다. 따라서 사이클릭 끌개의 성질에 따라, 상기 직전시점보다 미리 발생한 시점인 제3시점에서의 상태는 다시 상기 기준시점에서의 제1상태와 동일하게 된다는 점을 이해할 수 있다.
표 4에 나타낸 기준시점에서의 제2상태 {X1 , X2 , X3 , X4} = {1, 0, 0, 1}에 상기 갱신규칙을 적용하여, 상기 기준시점의 직전시점에서의 상태 중 또 다른 어느 하나인 '직전시점의 제2상태'를 계산하면, 표 6과 같이 제시될 수 있다.
직전시점에서의 제2상태(예시)
X1 X2 X3 X4
0 1 1 0
표 6에 제시한 직전시점에서의 제2상태는 상기 기준시점에서의 제1상태(=사이클릭 끌개)와 동일하다는 점을 알 수 있다. 따라서 상기 직전시점보다 먼저 발생한 시점인 제3시점에서의 상태는 다시 상기 기준시점에서의 제2상태와 동일하게 된다는 점을 이해할 수 있다.
표 4에 나타낸 기준시점에서의 제2상태 {X1 , X2 , X3 , X4} = {1, 0, 0, 1}에 상기 갱신규칙을 적용하여, 상기 기준시점의 직전시점에서의 상태 중 또 다른 어느 하나인 '직전시점의 제3상태'를 계산하면, 표 7과 같이 제시될 수 있다.
직전시점에서의 제3상태(예시)
X1 X2 X3 X4
0 1 1 1
표 4에 나타낸 기준시점에서의 제2상태 {X1 , X2 , X3 , X4} = {1, 0, 0, 1}에 상기 갱신규칙을 적용하여, 상기 기준시점의 직전시점에서의 상태 중 또 다른 어느 하나인 '직전시점의 제4상태'를 계산하면, 표 8과 같이 제시될 수 있다.
직전시점에서의 제3상태(예시)
X1 X2 X3 X4
0 1 0 0
상술한 표 3 내지 표 8에 제시한 상태들을 정리하면, 기준시점(제1레이어 또는 제1시점)의 상태로는 {X1 , X2 , X3 , X4} = {0,1,1,0} 및 {X1 , X2 , X3 , X4} = {1, 0, 0, 1}의 2개가 존재함을 알 수 있다. 그리고 직전시점(제2레이어 또는 제2시점)의 상태로는 {X1 , X2 , X3 , X4} = {1, 0, 0, 1}, {X1 , X2 , X3 , X4} = {1, 0, 0, 1}, {X1 , X2 , X3 , X4} = {0,1,1,1}, 및 {X1 , X2 , X3 , X4} = {0,1,0,0}의 4개가 존재함을 알 수 있다.
이제 새롭게 산출된 상기 4개의 직전시점 상태들 각각이, 그 보다 앞선 시점에서의 상태들인 이전상태를 갖는지 여부를 반복하여 계산할 수 있다.
이때, 새롭게 산출된 상기 4개의 직전시점 상태들 중 상기 터미널 상태가 존재하는지 여부를 상기 판별식을 이용하여 확인할 수 있다. 이러한 확인 작업을 거치면, 터미널 상태인 것으로 확인된 직전시점 상태들에 대해서는, 상기 직전시점 상태들보다 앞서 발행한 이전상태의 상태들을 구하는 과정을 거칠 필요가 없으므로 컴퓨팅 파워가 감소된다. 즉, 아래의 단계(S51)을 실행할 수 있다.
본 발명의 일 실시예에 따른 단계(S51)에서는, 기준시점의 상태로부터 새롭게 산출된 직전시점의 상태들 중 상기 판별식을 만족하는 직전시점의 상태를 터미널 상태로 결정할 수 있다.
예컨대 상기 제1서브 네트워크에 대하여 도출된 상기 판별식은 상기 등식 13인데, 상기 직전시점의 상태들 {X1 , X2 , X3 , X4} = {1, 0, 0, 1}, {X1 , X2 , X3 , X4} = {1, 0, 0, 1}, {X1 , X2 , X3 , X4} = {0,1,1,1}, 및 {X1 , X2 , X3 , X4} = {0,1,0,0} 중, 상기 직전시점의 제3상태인 {X1 , X2 , X3 , X4} = {0,1,1,1}만이 상기 판별식을 만족한다. 따라서 상기 직전시점의 제3상태만이 터미널 상태인 것으로 결정할 수 있다.
본 발명의 일 실시예에 따른 단계(S61)에서, 상기 직전시점의 상태들 중, ① 터미널 상태가 아니며 ② 끌개(=제1끌개)가 아닌 것으로 결정된 상태에게, 새로운 기준시점의 상태로서의 자격을 부여하고, 상기 새로운 기준시점의 상태들 각각에 대하여 직전시점의 상태를 결정할 수 있다.
예컨대, 상기 4개의 직전시점의 상태들 중, 끌개(=제1끌개)인 것으로 판명된 {X1 , X2 , X3 , X4} = {1, 0, 0, 1}, {X1 , X2 , X3 , X4} = {1, 0, 0, 1}은 상기 새로운 기준시점의 상태로서의 자격을 부여받을 수 없다. 또한, 상기 4개의 직전시점의 상태들 중, 터미널 상태인 것으로 판명된 {X1 , X2 , X3 , X4} = {0,1,1,1}은 상기 새로운 기준시점의 상태로서의 자격을 부여받을 수 없다.
따라서 상기 4개의 직전시점의 상태들 중 오직 {X1 , X2 , X3 , X4} = {0,1,0,0}만이 상기 새로운 기준시점의 상태로서의 자격을 부여받을 수 없다.
따라서 {X1 , X2 , X3 , X4} = {0,1,0,0}을 기준시점의 상태로 삼아, 이에 대한 직전시점의 상태를 상기 갱신규칙에 따라 생성할 수 있다.
상술한 단계들을 반복하여, 상기 새로운 기준시점의 상태로서의 자격을 부여받을 수 있는 상태가 더 이상 발견되지 않으면 상기 제1서브 네트워크의 상기 제1끌개가 속한 끌개유역인 제1끌개유역에 포함된 모든 상태가 결정된 것으로 간주할 수 있다.
본 발명의 일 실시예에 따른 단계(S71)에서, 상기 확정된 제1끌개유역의 모든 상태값에, 상기 제거되었던 대칭노드의 값을 부가함으로써, 상기 제1 부울리언 네트워크의 상기 특정 끌개가 속한 특정 끌개유역의 모든 상태를 결정할 수 있다.
이때 상기 대칭노드의 값으로서 상기 대칭노드가 가질 수 있는 모든 값이 부가될 수 있다. 예컨대 제거되었던 대칭노드가 1개인 경우, 상기 제1 부울리언 네트워크의 상기 특정 끌개유역의 모든 상태들의 개수는, 상기 제1서브 네트워크의 상기 제1끌개유역의 모든 상태들의 개수의 2배일 수 있다.
도 6은 본 발명의 일 실시예에 따라, 주어진 제1 부울리언 네트워크의 특정 상태가 터미널 상태인지 여부를 판단하는 방법을 나타낸 순서도이다.
단계(S11)에서 주어진 제1부울리언 네트워크의 네트워크 구조를 획득할 수 있다.
단계(S12)에서 상기 제1부울리언 네트워크 중 구조적 대칭노드를 결정할 수 있다.
단계(S13)에서 상기 제1부울리언 네트워크의 구조로부터 상기 결정된 모든 구조적 대칭노드를 제거함으로써 얻을 수 있는 제1서브 네트워크를 결정한다.
단계(S14)에서 상기 제1서브 네트워크의 구조에 관한 정보를 기초로 상기 제1서브 네트워크의 상태의 갱신규칙인 제1갱신규칙을 결정할 수 있다.
단계(S21)에서 상기 제1갱신규칙으로부터 또는 상기 제1서브 네트워크의 구조에 관한 정보로부터, 임의의 제1노드의 직전시점(=과거시점)에서의 상태가 상기 제1서브 네트워크의 기준시점(=미래시점)에서의 상태에 의해 유일하게 결정되는지 여부를 결정하여, 유일하게 결정되는 경우에는 상기 제1노드를 결정형 노드로 분류하고, 유일하게 결정되지 않는 경우에는 상기 제1노드를 비결정형 노드로 분류할 수 있다.
단계(S22)에서 상기 결정형 노드로 분류된 노드들 중 아웃바운드 링크가 복수 개인 노드를 판별노드로 분류할 수 있다.
단계(S23)에서 상기 제1갱신규칙에 포함된 각각의 등식(등식 1 내지 등식 4, 또는 등식 5 내지 등식 8, 또는 등식 9 내지 등식 12)의 양 변 중 상기 서브 네트워크의 상태인 과거상태(=직전상태)를 나타내는 제1변에 상기 판별노드가 포함되어 있는지를 확인할 수 있다.
단계(S24)에서 상기 제1갱신규칙에 포함된 등식들 중 상기 제1변에 상기 판별노드가 포함되어 있는 등식들을 선택할 수 있다.
단계(S25)에서 상기 선택된 등식들을 이용하여, 상기 직전시점의 바로 다음 시점인 기준시점에서의 상기 서브 네트워크의 상태가 상술한 터미널 상태인지 여부를 판별하는 판별식을 결정할 수 있다.
도 7은 본 발명의 일 실시예에 따라, 주어진 제1 부울리언 네트워크의 특정 끌개가 속한 특정 끌개유역의 모든 상태를 결정하는 방법을 나타낸 순서도이다.
단계(S31)에서 상기 제1부울리언 네트워크의 특정 끌개를 획득할 수 있다.
단계(S32)에서 상기 제1부울리언 네트워크의 서브 네트워크인 제1서브 네트워크의 제1끌개를 획득할 수 있다.
단계(S41)에서, ① 상기 제1서브 네트워크의 제1끌개의 값 및 ② 상기 제1갱신규칙을 이용하여, 상기 기준시점의 직전시점(=제2시점)에서의 상기 제1서브 네트워크의 상태들 중 어느 하나를 계산할 수 있다.
단계(S51)에서는, 기준시점의 상태로부터 새롭게 산출된 직전시점의 상태들 중 상기 판별식을 만족하는 직전시점의 상태를 터미널 상태로 결정할 수 있다.
단계(S61)에서, 상기 직전시점의 상태들 중, ① 터미널 상태가 아니며 ② 끌개(=제1끌개)가 아닌 것으로 결정된 상태에게, 새로운 기준시점의 상태로서의 자격을 부여하고, 상기 새로운 기준시점의 상태들 각각에 대하여 직전시점의 상태를 결정할 수 있다.
단계(S71)에서, 상기 확정된 제1끌개유역의 모든 상태값에, 상기 제거되었던 대칭노드의 값을 부가함으로써, 상기 제1 부울리언 네트워크의 상기 특정 끌개가 속한 특정 끌개유역의 모든 상태를 결정할 수 있다.
II. 본 발명의 일 실시예에 따라 결정된 특정 끌개유역의 모든 상태에 관한 정보를 이용하여 구현할 수 있는 응용사례 - 원하지 않는 초기상태를 원하는 끌개로 변환시키는 방법
상술한 바와 같이, 본 발명의 일 실시예에 따르면, 부울리언 네트워크의 끌개 지형은 완전히 알지 못하더라도, 상기 부울리언 네트워크의 원하는 특정 끌개가 속한 특정 끌개유역의 모든 상태를 빠르게 결정할 수 있다. 이하, 이렇게 결정한 특정 끌개유역의 모든 상태를 이용하여 수행할 수 있는 응용사례를 제시한다.
본 발명의 일 실시예에 따르면, 원하지 않는 초기상태로부터의 원하는 바운더리로 일시적인 섭동에 의해 상태를 천이시키는 방법을 제공할 수 있다.
도 8은 본 발명의 일 실시예에서 사용되는 몇 가지 용어의 이해를 돕기 위한 다이어그램이다.
도 8에 나타낸 원(circle)들(1111, 1121, 1131, 1211)은 각각 부울리언 네트워크의 노드들의 값의 조합에 의해 구분되는 서로 다른 상태를 나타낸다. 상기 부울리언 네트워크는 상술한 도 1 내지 도 7에 설명한 제1 부울리언 네트워크일 수 있다.
상태(1111, 1121, 1131)은 원하는 제1끌개유역[DB]에 속하는 상태들이다.
상태(1211)는 원하지 않는 제2끌개유역[UB]에 속하는 원하지 않는 제2상태[US](1211)이다. 즉, 상태(1211)는 일시적인 섭동의 제공이 필요한 또는 일시적인 섭동을 가해야 하는 초기상태인 제1초기상태(1211)이다.
상태(1111, 1121, 1131)는 원하는 제1끌개유역[DB]에 존재하는 한 개 이상의 상태천이경로들 중 제1상태천이경로(3101) 상에 존재하는 상태들이다. 제1상태천이경로(3101)에는 도 8에 표시하지 않은 다른 상태들이 더 존재할 수 있다. 제1상태천이경로(3101)에 표시된 화살표는 시간의 흐름에 따른 상태 변화의 방향을 나타낸 것이다. 제1상태천이경로(3101) 상에서 상태는 상태(1111) --> 상태(1121) --> 상태(1131)의 순서로 변화한다.
특히, 상태(1111)는 시간 영역에서 그 이전의 상태가 존재하지 않는 터미널 상태(1111)를 나타내고, 상태(1121)는 원하지 않는 상태 (1211)로부터의 바운더리 상태를 나타내며, 상태(1131)는 원하는 제1끌개유역[DB]의 끌개인 원하는 제1끌개(1131)을 나타낸다.
참조번호 2101은 제1초기상태(1211)로부터 터미널 상태(1111)와 동일한 해밍거리 HD1를 갖는 상태들의 집합을 나타내며, 참조번호 2102는 제1초기상태(1211)로부터 제1끌개(1131)과 동일한 해밍거리 HD2를 갖는 상태들의 집합을 나타내며, 그리고 참조번호 2103은 제1초기상태(1211)로부터 바운더리 상태(1211)와 같이 최소해밍거리 mHD를 갖는 상태들의 집합을 나타낸다. 이때, mHD < HD1 < HD2인 관계가 성립한다.
도 8에서 상태천이경로(3101) 상에는 제1초기상태(1211)로부터의 제1끌개유역[DB]의 바운더리 상태(1121)가 존재하는 것으로 되어 있지만, 제1끌개유역[DB]의 도시되지 않은 또 다른 상태천이경로에는 제1초기상태(1211)로부터의 제1끌개유역[DB]의 바운더리 상태가 존재하지 않을 수도 있다.
도 9는 본 발명의 일 실시예에서 사용되는 터미널 상태, 바운더리 상태, 최소해밍거리, 해밍거리, 원하는 끌개, 끌개, 초기상태, 상태천이경로를 설명하기 위한 또 다른 다이어그램이다.
참조번호 3102, 3103, 3104, 및 3105는 각각 원하는 제1끌개유역[DB]에 포함된 서로 다른 상태천이경로를 나타낸다.
참조번호 1212는, 원하지 않는 제2끌개유역[UB]에 포함된 상태로서, 일시적인 섭동의 제공이 필요한 또는 일시적인 섭동을 가해야 하는 초기상태인 제2초기상태(1212)를 나타낸다.
참조번호 2201은 제2초기상태(1212)로부터 해밍거리 2를 갖는 상태들의 제1집합을 나타내며, 참조번호 2202는 제2초기상태(1212)로부터 해밍거리 3를 갖는 상태들의 제2집합을 나타내며, 참조번호 2203은 제2초기상태(1212)로부터 해밍거리 4를 갖는 상태들의 제3집합을 나타내며, 참조번호 2204는 제2초기상태(1212)로부터 해밍거리 5를 갖는 상태들의 제4집합을 나타내며, 그리고 참조번호 2206은 제2초기상태(1212)로부터 최소해밍거리 1을 갖는 제6집합[m]을 나타낸다. 도 9에 나타낸 예에서 터미널 상태(1112, 1113, 1114, 1115)는 각각 상기 제1집합, 상기 제2집합, 상기 제1집합, 및 상기 제1집합에 속한다. 도 9에 나타낸 예에서 원하는 제2끌개(1132)는 상기 제4집합에 속한다. 그리고 바운더리 상태(1123, 1125)는 모두 상기 제6집합[m]에 속한다.
도 9에 나타낸 모든 원들 중 제2초기상태(1212)를 제외한 다른 모든 원들은 원하는 제1끌개유역[DB]에 포함된 것이다.
도 10은 도 9에 제시한 개념을 더 정교화 한 것으로서, 각 상태를 복수 개의 노드들의 값들의 조합으로 구체화하여 나타낸 것이다.
도 10의 (a)는 주어진 부울리언 네트워크(100)의 예이다. 도 10의 (a)에서 영어 대문자 A, B, C, D, E, F, G를 둘러싼 각 원들은 상기 부울리언 네트워크(100)에 포함된 서로 다른 노드들을 의미한다. 즉, 도 10의 (a)에 제시된 부울리언 네트워크(100)는 총 7개의 노드들과 이 노드들을 연결하는 링크들에 의해 정의된다.
도 10의 (b)는 도 10의 (a)에 나타낸 부울리언 네트워크가 갖는 일 상태의 값을 도식화한 것이다. 도 10의 (b), 도 10의 (c), 및 도 10의 (d)에서 서로 붙어 있는 7개의 노드들의 집합은 한 개의 상태를 나타낸다.
도 10의 (b)에서, 가는 외곽선(101)의 노드는 부울리언 네트워크의 각 노드가 가질 수 있는 바이너리 값 0과 1중 제1바이너리값 '1'을 나타내고, 두꺼운 외곽선(102)의 노드는 제2바이너리값 '0'을 나타낸다. 도 10의 (b)의 예에서, 노드(B) 및 노드(G)는 상기 제2바이너리값을 갖고, 나머지 노드들은 상기 제1바이너리값을 갖는다.
도 10의 (c)에서, 상태(1133)는 원하는 제1끌개(1133)를 나타낸다. 원하는 제1끌개(1133)로 향하는 상태천이경로는 복수 개 존재하며 이들을 각각 참조번호 3106, 3107, 및 3108로 표시하였다. 도 10의 (c)에서, 원하는 제1끌개(1133)의 끌개유역인 원하는 제1끌개유역[DB]에 포함된 모든 상태를 알 수 있는 것으로 가정할 수 있으나, 도 10의 (c)에서는 이 중 원하는 제1끌개(1133) 및 일부 터미널 상태인 터미널 상태(1116)만을 나타내었다.
도 10의 (d)에서, 원하지 않는 끌개유역[UB]에 속한 원하지 않는 상태인 제2초기상태(1213)가 주어져 있다고 가정할 때에, 상기 제2초기상태(1213)으로부터의 상기 제1끌개유역[DB]의 바운더리 상태(1126)를 찾아낼 수 있다.
도 10의 (d)에 나타낸 예에서, 제2초기상태(1213)와 원하는 제1끌개(1133) 간의 해밍거리(HD)는 4인 것으로 되어 있으며, 제2초기상태(1213)와 바운더리 상태(1126) 간의 최소해밍거리(mHD)는 1인 것으로 되어 있다. 도 10의 (d)에 나타낸 예에서, 제2초기상태(1213)와 바운더리 상태(1126)는 노드(C)의 값만이 서로 다를 뿐이다. 따라서 제2초기상태(1213)의 노드(C)의 값만을 일시적으로 섭동시키면, 즉 일시적으로 변화시키면 주어진 부울리언 네트워크(100)의 상태가 원하는 끌개유역[DB]에 속한 상태인 상기 바운더리 상태(1126)로 변화하게 된다. 그 결과 주어진 부울리언 네트워크(100)의 상태는 상기 바운더리 상태(1126)가 속한 상태천이경로를 따라 결국 원하는 끌개(1133)의 상태에 도달하게 된다.
도 10에 나타낸 개념에 따라 본 발명의 일 실시예에 따른 제어노드의 결정방법을 도 11에 나타낸 순서도와 같이 설명할 수 있다.
도 11은 본 발명의 일 실시예에 따라 부울리언 네트워크로 모델링되는 생체분자 신호전달 네트워크를 원하는 상태로 변화시키기 위한 제어노드를 결정하는 방법, 즉 제어목표가 되는 생체분자를 결정하는 방법을 나타낸 순서도이다.
단계(S10)에서, 상기 부울리언 네트워크에 속한 끌개들 중 원하는 끌개인 제1끌개(ex: 1133)의 끌개유역인 제1끌개유역[DB]을 획득할 수 있다.
단계(S20)에서, 원하지 않는 끌개유역인 제2끌개유역[UB]에 속한 상태로서, 원하지 않는 상태인 제2 초기상태(ex: 1213)를 획득할 수 있다.
단계(S30)에서, 상기 초기상태로부터 상기 제1끌개유역[DB]의 바운더리 상태를 결정할 수 있다. 상기 바운더리는 상술한 정의에 따른 상태를 의미할 수 있다.
단계(S40)에서, 상기 초기상태와 상기 바운더리 상태 중 서로 다른 값을 갖는 노드들만을 일시적인 섭동을 가해야 하는 제어노드로서 선택할 수 있다.
단계(S50)에서, 상기 제어노드들에 대해서만 일시적인 섭동을 가함으로써, 상기 초기상태를 상기 제1끌개의 상태로 천이시킬 수 있다.
상기 단계(S10~S50)는 컴퓨팅 장치에 의해 수행될 수 있다. 상기 컴퓨팅 장치는 상기 단계(S10~S50)의 실행을 위해 필요한 자료들을 외부의 장치로부터 유무선 통신수단을 이용하여 획득할 수 있다.
이하, 상기 단계(S30)에서, 상기 초기상태로부터 상기 제1끌개유역[DB]의 바운더리 상태를 결정하는 구체적인 실시예를 도 12를 참조하여 설명한다.
도 12는 본 발명의 일 실시예에 따라 특정 초기상태로부터 제1끌개유역의 바운더리 상태를 결정하는 방법을 나타낸 순서도이다. 여기서 상기 특정 초기상태는 상기 제1끌개유역에 포함되지 않은 상태이다.
단계(S310)에서, 상기 부울리언 네트워크의 노드들 중 '대칭노드'(symmetric node)를 결정한다.
일 실시예에서, 상기 구조적 대칭노드는 부울리언 네트워크의 구조 정보로부터 결정할 수 있으므로, 그 결정을 위해 로직 계산을 하지 않아도 된다. 부울리언 네트워크의 각 노드에는 나가는 링크(outbound link) 및/또는 들어오는 링크(inbound link)가 연결되어 있을 수 있다. 이때, 나가는 링크가 없는 노드는 대칭노드인 것으로 간주될 수 있다. 또한, 나가는 링크가 하나인 또 다른 노드로서 상기 하나의 나가는 링크에 연결된 노드가 대칭노드인 경우에는 상기 또 다른 노드 역시 대칭노드인 것으로 간주될 수 있다.
예컨대 도 10의 (a)에 나타낸 부울리언 네트워크(100)의 노드 G에는 나가는 링크가 연결되어 있지 않다. 따라서 노드 G는 대칭노드이다. 또한 노드 F로부터 나가는 링크의 개수는 한 개이고, 이 링크에 연결된 다음 노드는 대칭노드인 노드 G이다. 따라서 노드 F 역시 대칭노드이다. 특정 끌개의 끌개유역을 계산한 후, 대칭성을 가지는 동역학적 대칭노드도 존재할 수 있다.
참고로, 어떤 끌개유역에 속한 상태들 중 대칭노드의 값이 0인 상태들의 개수와 대칭노드의 값이 1인 상태들의 개수는 서로 동일하다. 즉, 특정 끌개유역에서의 대칭노드가 갖는 상태들의 평균값이 0.5이다. 그리고 상기 대칭노드를 제외한 나머지 노드의 상태 분포가 대칭적으로 일치한다.
상기 대칭노드로 결정된 노드들은 일시적인 섭동을 사용하는 제어에 항상 참여하지 않는 노드이다. 즉 일시적인 섭동을 위한 제어대상이 아니다. 따라서 상술한 해밍거리의 산출 과정에서도 상기 대칭노드는 고려되지 않는다. 또는 상술한 해밍거리의 비교 과정에서도 상기 대칭노드는 제외될 수 있다.
임의의 부울리언 네트워크에는 상기 대칭노드가 한 개 이상 존재할 수도 있고 또는 전혀 존재하지 않을 수도 있다.
단계(S320)에서, 단계(S10)에서 정의된 원하는 제1끌개유역[DB]의 모든 상태들에 있어서 그 값이 항상 일정한 노드를 검색하여 상기 검색된 노드를 '고정노드'로 결정한다.
예컨대 도 10의 (a)에 나타낸 부울리언 네트워크(100)에서 노드 C가 상기 원하는 제1끌개유역[DB]에서의 고정노드일 수 있다.
임의의 끌개유역에는 고정노드가 한 개 이상 존재할 수도 있고 또는 전혀 존재하지 않을 수도 있다.
상기 제1끌개유역[DB]에서의 상기 고정노드의 값이, 상기 단계(S20)에 정의된 원하지 않는 상태인 초기상태(ex: 1213)에서의 상기 고정노드의 값과 동일한 경우에는, 상기 초기상태로부터 상기 원하는 제1끌개의 상태로 변화시키기 위해서는, 상기 고정노드에 대한 일시적인 섭동을 해서는 안 된다.
반대로 상기 제1끌개유역[DB]에서의 상기 고정노드의 값이, 상기 초기상태(ex: 1213)에서의 상기 고정노드의 값과 다른 경우에는, 상기 초기상태로부터 상기 원하는 제1끌개의 상태로 변화시키기 위해서는, 상기 고정노드에 대한 일시적인 섭동을 해야만 한다.
이제, 상기 부울리언 네트워크에 속한 노드들 중 상기 대칭노드 및 상기 고정노드를 제외한 나머지 노드들을 비고정/비대칭 노드(unfixed/asymmetric node)라고 정의할 수 있다.
단계(S330)에서. 상기 비고정/비대칭 노드들만을 대상으로, 상기 초기상태와 상기 원하는 제1끌개유역[DB]의 각각의 상태들 간의 해밍거리를 계산할 수 있다.
단계(S340)에서, 상기 계산된 해밍거리 중 최단 거리를 결정하고, 상기 제1끌개유역[DB]의 상태들 중 상기 최단거리를 갖는 상태들의 집합을 바운더리로 결정할 수 있다.
예컨대 도 10의 (a)에 나타낸 부울리언 네트워크(100)에서 비고정/비대칭 노드들은 노드 A, 노드 B, 노드 D, 및 노드 E일 수 있다.
상술한 단계(S310, S320, S330, S340)들에 따른 바운더리 상태 결정방법은, 본 발명의 일 실시예에 따른 것이다. 이와 달리, 상술한 고정노드, 대칭노드, 비고정/비대칭 노드들을 서로 구분하지 않고, 부울리언 네트워크에 포함된 모든 노드들을 대상으로 상기 초기상태와 상기 원하는 제1끌개유역[DB]의 각각의 상태들 간의 해밍거리를 계산하더라도 도 11에 나타낸 본 발명의 일 실시예에 따른 제어노드를 결정할 수 있다는 점을 이해할 수 있다. 다만, 상술한 단계(S310, S320, S330, S340)들에 따른 바람직한 실시예를 사용하지 않는 경우에는 바운더리 상태를 결정하기 위한 컴퓨팅 파워가 증가될 것이다.
도 13에 나타낸 그래프는 21개 노드로 구성된 네트워크에서 특정 끌개의 끌개유역의 상태들을 나타내고, 상술한 대칭노드의 성질을 설명하기 위한 것이다.
도 13에 나타낸 그래프의 가로축의 숫자 1부터 21은 21개의 노드들을 숫자로 나타낸 것이며, 21개의 값으로 구성된 각 행은 상기의 끌개 유역의 서로 다른 상태들을 나타낸 것이며, 그래프 중 어두운 부분은 각 상태에 있어서 각 노드가 갖는 값이 '1'인 경우를 나타낸 것이고, 그래프 중 밝은 부분은 각 상태에 있어서 각 노드가 갖는 값이 '0'인 경우를 나타낸 것이다.
도 13에서 노드 아이디가 20인 노드가 대칭노드이며, 상기 대칭노드가 각 상태에서 갖는 값을 그래프의 왼쪽에 별도로 표시하였다. 상기 대칭노드에 있어서 그 값이 '1'인 상태 수와 '0'인 상태 수가 서로 같다. 즉, 상기 부울리언 네트워크에서 상기 대칭노드의 상태 평균값은 0.5이다. 그리고 상기 대칭노드를 제외한 나머지 노드들 값 분포는 상기 대칭노드의 값을 기준으로 대칭을 이룬다는 점을 알 수 있다.상기의 두 가지 성질을 만족시키면 대칭노드가 된다.
상기의 두 가지 성질 때문에 원하지 않는 초기상태에서 상기 대칭노드 20을 무시하고 20개 노드만으로 구성된 상태에서 원하는 끌개유역까지의 해밍거리를 구하면 된다. 따라서 상기 대칭노드에 대한 섭동은 거리 감소에 영향을 주지 않는다. 즉, 상기 대칭노드는 상술한 일시적인 섭동을 위한 제어에 참여하지 않을 수 있다.
도 14는 본 발명의 일 실시예의 개념을 설명하기 위한 또 다른 p53 네트워크의 예를 나타낸 것이다.
도 14에서 p53 네트워크(110)의 네트워크 구조 중 제1영역(111)에 포함된 노드들은 모두 고정노드들이고, 제3영역(113)에 포함된 노드들은 모두 대칭노드들이며, 그리고 제2영역(112)에 포함된 노드들은 모두 비고정/비대칭 노드들이다.
p53 네트워크(110)의 원하는 끌개유역[DB]에서, 상기 대칭노드들이 갖는 상태들의 평균값은 0.5이고, 상기 고정노드들 중 PTEN 및 P53가 각각 갖는 상태들의 평균값은 1.0이고, 상기 고정노드들 중 PTEN 및 P53를 제외한 나머지 노드가 각각 갖는 상태들의 평균값은 0.0이며, 그리고 상기 비고정노드가 각각 갖는 상태들의 평균값은 0, 및 1.0이 아닌 값이고 상기 비대칭 노드는 평균값이 0.5가 아니거나 0.5가 되더라도 상기 대칭노드를 제외한 나머지 노드들 값 분포는 상기 대칭노드의 값을 기준으로 대칭을 이루지 않는다.
고정노드를 결정하는 상술한 방법과 같이, 제3영역(113)에서 Proliferation 노드로부터는 나가는 링크가 없다. 또한 P21 노드 및 CyclinD1 노드로부터 나가는 링크가 각각 하나이고, 이 링크에 연결된 노드는 대칭노드인 Proliferation 노드이다. 그리고 Bcatenin 노드로부터 나가는 링크가 하나이고, 이 링크에 연결된 노드는 대칭노드인 CyclinD1 노드이다. 따라서 제3영역(113)에 포함된 노드들은 상술한 정의에 따라 대칭노드인 것으로 결정될 수 있다.
상술한 해밍거리의 계산 및 비교는 제2영역(112)에 포함된 비고정/비대칭 노드들에 대해서만 수행될 수 있으며, 이로써 계산량을 감소시킬 수 있다.
도 15a는 본 발명의 일 실시예에 따른 제어목표를 설명하기 위한 다이어그램이다.
도 15a 내지 도 15c에 나타낸 원(circle)은 각 노드들을 나타내며, 어두운 바탕의 원은 '1'의 값을 갖는 상태를 나타내며, 밝은 바탕의 원은 '0'의 값을 갖는 상태를 나타낼 수 있다. 각 노드들은 각각 1 부터 21사이의 아이디를 가질 수 있다. 각 노드에 대한 아이디는 각 원의 내부에 표시되어 있다.
도 15a에서 참조번호 120은 부울리언 네트워크(120)의 구조를 나타낸다. 부울리언 네트워크(120)는 21개의 노드들 및 이들을 연결하는 링크들로 구성된다.
도 15a에서 참조번호 1214는 원하지 않는 끌개유역[UB]에 속한 원하지 않는 초기상태(1214)를 나타내며, 참조번호 1134는 원하는 끌개유역인 제1끌개유역[DB]에 속하는 원하는 제1끌개(1134)를 나타낸다.
도 15a에 나타낸 부울리언 네트워크(120)와 관련하여 다음의 전제를 먼저 이해할 필요가 있다.
첫째, 부울리언 네트워크(120)의 대칭노드들은 참조번호가 1 내지 4인 노드들이다. 이러한 대칭노드는 상술한 부울리언 네트워크의 구조 정보만으로 결정된 것이다. 상기 대칭노드들은 임의의 두 상태 간의 해밍거리의 계산 과정 및 제어노드의 선택 과정에서 고려되지 않을 수 있으며, 이로써 컴퓨팅 복잡도를 감소시킬 수 있다.
둘째, 원하는 제1끌개 (1134)가 포함되는 상기 원하는 제1끌개유역[DB]의 모든 상태들을 분석한 결과, 상기 제1끌개유역[DB]에 대한 고정노드들은 참조번호 5 내지 13인 노드들이다.
셋째, 원하는 제1끌개유역[DB]에 대한 비고정/비대칭 노드들은 참조번호 14 내지 21인 노드들이다.
이때, 초기상태(1214)와 상기 제1끌개유역[DB]에 속한 각각의 상태 간의 해밍거리는 상기 비고정/비대칭노드들, 즉, 노드(14~21)만을 대상으로 계산될 수 있다.
넷째, 도 15a에 나타낸 부울리언 네트워크(120)에서, 초기상태(1214)로부터의 상기 제1끌개유역[DB]의 바운더리 상태는 2개가 존재하며, 각각 도 15b 및 도 15c에 나타낸 제1바운더리(1127) 및 제2바운더리(1128)이다.
이제 도 15b 및 도 15c를 함께 참조하여 본 발명의 일 실시예에 따른 제어노드의 결정방법을 설명한다.
도 15b는 초기상태(1214) 및 제1바운더리(1127)에 있어서, 고정노드들(5~13)과 비고정/비대칭 노드들(14~21)의 상태를 나열한 것이다.
초기상태(1214)에서 고정노드(5, 7, 9, 12, 13) 및 비고정/비대칭 노드(15, 17, 21)의 값은 '0'이며, 고정노드(6, 8, 10, 11) 및 비고정/비대칭 노드(14, 16, 18, 19, 20)의 값은 '1'이다.
제1바운더리(1127)에서 고정노드(5, 6, 7, 9, 10, 12, 13) 및 비고정/비대칭 노드(15, 17, 18)의 값은 '0'이며, 고정노드(8, 11) 및 비고정/비대칭 노드(14, 16, 19, 20, 21)의 값은 '1'이다.
즉, 초기상태(1214)와 제1바운더리(1127)의 상태를 서로 비교하면 고정노드(6, 10) 및 비고정/비대칭 노드(18, 21)의 값만이 서로 다르다. 따라서 부울리언 네트워크(120)가 초기상태(1214)에 있을 때에, 고정노드(6, 10) 및 비고정/비대칭 노드(18, 21)의 값만을 일시적으로 섭동하면, 부울리언 네트워크(120)가 제1바운더리 상태(1127)로 상태변화하며, 결국 제1바운더리 상태(1127)가 속한 제1끌개유역[DB]의 끌개인 제1끌개(1134)로 그 상태가 변할 수 있다.
도 15c는 초기상태(1214) 및 제2바운더리(1128)에 있어서, 고정노드들(5~13)과 비고정/비대칭 노드들(14~21)의 상태를 나열한 것이다.
도 15b와 관련하여 설명한 바와 같이, 도 15c에서 초기상태(1214)와 제2바운더리(1128)의 상태를 서로 비교하면 고정노드(6, 10) 및 비고정/비대칭 노드(14, 21)의 값만이 서로 다르다. 따라서 부울리언 네트워크(120)가 초기상태(1214)에 있을 때에, 고정노드(6, 10) 및 비고정/비대칭 노드(14, 21)의 값만을 일시적으로 섭동하면, 부울리언 네트워크(120)가 제2바운더리상태(1128)로 상태변화하며, 결국 제2바운더리상태(1128)가 속한 제1끌개유역[DB]의 끌개인 제1끌개(1134)로 그 상태가 변할 수 있다.
도 15a 내지 도 15c를 통해 설명한 예는 바운더리 상태가 총 2개인 경우를 나타낸다. 이 예에서 도 15b와 같이 4개의 노드(6, 10, 18, 21)로 구성되는 제1세트의 노드들만을 섭동하거나, 또는 도 15c와 같이 4개의 노드(6, 10, 14, 21)로 구성되는 제2세트의 노드들만을 섭동함으로써 부울리언 네트워크(120)를 원하는 제1끌개(1134)의 상태로 변화시킬 수 있다.
이와 달리, 5개 이상의 노드들을 섭동시키더라도 초기상태(1214)를 제1끌개유역[DB]에 속한 임의의 상태로 변화시킬 수 있을 것이다. 그러나 상술한 본 발명의 일 실시예에 따르면, 가장 적은 수의 노드들만을 섭동함으로써 원하는 제1끌개(1134)의 상태로 변화시킬 수 있다. 각각의 노드는 서로 다른 단백질을 의미할 수 있으며, 서로 다른 단백질의 상태를 함께 섭동하기 위해서는 서도 다른 약물들을 함께 투여해야 할 수 있으므로 섭동해야 하는 노드들의 개수를 최소화함으로써 기술적인 좋은 효과를 얻을 수 있다.
III. 컴퓨팅 장치 및 장치들
도 16은 본 발명의 일 실시예에 따라 제공되는 컴퓨팅 장치 및 이와 통신하는 장치들을 나타낸 다이어그램이다.
컴퓨팅 장치(910)는, 유선으로 외부장치(940)으로 통신하거나 또는 유선 또는 무선으로 외부 장치(960, 970)와 통신하는 통신 인터페이스(930), 처리부(910), 및 저장부(920)를 포함할 수 있다.
외부장치(940)는 예컨대, USB, 외장형 하드디스크 등의 포터블 기록장치일 수 있다. 외부장치(960)는 자료를 담고 있는 데이터베이스 장치일 수 있다. 외부장치(970)는 내려 받기 가능한 명령코드를 기록해둔 장치일 수 있다.
네트워크(950)는 LAN, MAN, LTE, 무선통신, 근거리 무선 통신을 위한 네트워크 등 다양한 네트워크 중 하나일 수 있다.
처리부(910)는 CPU, MCU, FPGA, CUDA 프로세서 등 다양한 프로세싱 디바이스일 수 있다.
저장부(920)는 예컨대 컴퓨팅 장치(910)에 포함되어 있는 휘발성 메모리(ex: RAM) 및/또는 비휘발성의 저장소(ex: SDD, HDD)일 수 있다.
이때 상기 처리부(910)는, 상기 통신 인터페이스(930)를 통해 상기 외부 장치(940 또는 960)로부터 부울리언 네트워크의 구조에 관한 정보, 상기 부울리언 네트워크의 초기상태에 관한 정보, 상기 부울리언 네트워크의 끌개들 중 상기 초기상태가 포함되지 않은 원하는 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하도록 되어 있고,상기 초기상태로부터 상기 제1끌개유역의 바운더리 상태를 결정하도록 되어 있고, 그리고 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태 중 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하도록 되어 있을 수 있다. 이때, 상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태일 수 있다.
저장부(920) 또는 네트워크(950)를 통해 컴퓨팅 장치(900)에 연결되는 외부장치(970)는 프로그램이 기록되어 있는 컴퓨터 판독 가능한 논트랜지토리 저장장치일 수 있다. 이때, 상기 프로그램은 상기 컴퓨팅 장치(900)의 상기 처리부(910)로 하여금 상술한 기능들 및 단계들을 실행하도록 하는 명령어의 집합들로 구성된 것일 수 있다.
상술한 본 발명의 실시예들을 이용하여, 본 발명의 기술 분야에 속하는 자들은 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에 다양한 변경 및 수정을 용이하게 실시할 수 있을 것이다. 특허청구범위의 각 청구항의 내용은 본 명세서를 통해 이해할 수 있는 범위 내에서 인용관계가 없는 다른 청구항에 결합될 수 있다.

Claims (15)

  1. 컴퓨팅 장치가, 부울리언 네트워크의 초기상태로부터, 상기 초기상태가 포함되지 않은 원하는 제1끌개유역의 바운더리 상태를 결정하는 단계; 및
    상기 컴퓨팅 장치가, 상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태를 서로 비교하였을 때에 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하는 단계;
    를 포함하며,
    상기 부울리언 네트워크는 세포의 동역학 시스템을 모델링한 생체분자 신호전달 네트워크를 모델링 한 것이며, 상기 부울리언 네트워크의 각 노드는 상기 생체분자 신호전달 네트워크의 각 분자에 대응하고,
    상기 제어노드는 상기 생체분자 신호전달 네트워크를 원하는 상태로 변화시키기 위해 섭동하는 제어목표가 되는 노드이며,
    상기 초기상태는 상기 세포가 암세포인 상태이고, 상기 원하는 상태는 세포 사멸 상태이고,
    상기 제1끌개유역은 상기 부울리언 네트워크가 가질 수 있는 상태들 중 소정의 제1끌개로 향하는 모든 상태천이경로에 포함되는 모든 상태들로 이루어진 집합이며, 그리고
    상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태인 것을 특징으로 하는,
    부울리언 네트워크의 제어노드 결정방법.
  2. 제1항에 있어서,
    상기 컴퓨팅 장치가, 상기 초기상태에 있는 상기 부울리언 네트워크의 노드들 중 상기 제어노드를 섭동하는 단계를 더 포함하는,
    부울리언 네트워크의 제어노드 결정방법.
  3. 제2항에 있어서, 상기 제어노드의 값을 특정 값으로 변경하는 섭동을 수행한 이후에, 상기 부울리언 네트워크의 상태 변화가 상기 부울리언 네트워크 고유의 동역학에 따라 이루어지도록 하기 위하여 상기 섭동을 중단하는 것을 특징으로 하는, 부울리언 네트워크의 제어노드 결정방법.
  4. 제1항에 있어서,
    상기 바운더리 상태를 결정하는 단계는,
    상기 컴퓨팅 장치가, 상기 부울리언 네트워크의 노드들 중, 상기 제1끌개유역의 모든 상태들에 있어서 그 값이 항상 일정한 노드인 것으로 정의되는 고정노드를 결정하는 고정노드 결정단계;
    상기 컴퓨팅 장치가, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리를 산출하는 해밍거리 산출단계; 및
    상기 컴퓨팅 장치가, 상기 제1끌개유역에 속한 상태들 중 상기 초기상태로부터 최소 해밍거리를 갖는 상태를 바운더리 상태인 것으로 결정하는 단계;
    를 포함하며,
    상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리인 것을 특징으로 하는,
    부울리언 네트워크의 제어노드 결정방법.
  5. 제4항에 있어서,
    상기 컴퓨팅 장치가, 상기 부울리언 네트워크의 노드들 중 대칭노드를 결정하는 단계를 더 포함하며,
    상기 대칭노드는 상기 부울리언 네트워크의 구조에서, 나가는 링크를 갖지 않는 노드로서 정의되는 구조적 대칭노드를 포함하고,
    상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드와 상기 대칭노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리인,
    부울리언 네트워크의 제어노드 결정방법.
  6. 제5항에 있어서,
    상기 해밍거리 산출단계는, 상기 컴퓨팅 장치가, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 부분해밍거리를 산출하는 단계를 더 포함하고,
    상기 부분해밍거리는, 상기 대칭노드 및 상기 고정노드를 제외한 노드인 비고정 노드들 및 비대칭 노드들만을 대상으로 산출한 해밍거리이며,
    상기 바운더리 상태인 것으로 결정하는 단계는, 상기 컴퓨팅 장치가, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 상기 부분해밍거리들 중 최소거리를 갖는 상태를 상기 바운더리 상태인 것으로 결정하는 단계를 포함하는,
    부울리언 네트워크의 제어노드 결정방법.
  7. 제5항에 있어서, 상기 대칭노드는, 상기 부울리언 네트워크의 구조에서 나가는 링크를 한 개만 가지며, 상기 나가는 링크에 연결된 노드가 상기 구조적 대칭노드인 또 다른 구조적 대칭노드를 더 포함하는, 부울리언 네트워크의 제어노드 결정방법.
  8. 제7항에 있어서, 상기 대칭노드는, 상기 부울리언 네트워크의 상태들이 갖는 값들을 노드 별로 평균하였을 때에 그 평균값이 0.5이며, 그 노드를 기준으로 나머지 상태들이 대칭을 이루는 노드로서 정의되는 동역학적 대칭노드를 더 포함하는, 부울리언 네트워크의 제어노드 결정방법.
  9. 제4항에 있어서,
    상기 컴퓨팅 장치가, 상기 부울리언 네트워크의 노드들 중 대칭노드를 결정하는 단계를 더 포함하며,
    상기 대칭노드는, 상기 부울리언 네트워크의 상태들이 갖는 값들을 노드 별로 평균하였을 때에 그 평균값이 0.5이며, 그 노드를 기준으로 나머지 상태들이 대칭을 이루는 노드로서 정의되는 동역학적 대칭노드를 포함하며,
    상기 해밍거리는, 상기 부울리언 네트워크의 노드들 중 상기 고정노드와 상기 대칭노드를 제외한 노드들만을 대상으로 하여 산출한, 상기 초기상태와 상기 제1끌개유역에 포함된 각 상태 간의 해밍거리인,
    부울리언 네트워크의 제어노드 결정방법.
  10. 제1항에 있어서, 상기 제1끌개는 상기 부울리언 네트워크가 가질 수 있는 상태들 중 시간이 경과해도 반복되는 상태인, 부울리언 네트워크의 제어노드 결정방법.
  11. 제1항에 있어서,
    상기 제1끌개유역에 속한 모든 상태를 결정하는 방법은,
    상기 컴퓨팅 장치가, 상기 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하는 단계;
    상기 컴퓨팅 장치가, 상기 부울리언 네트워크의 기준상태를 상기 제1끌개로 초기화하는 단계; 및
    상기 컴퓨팅 장치가, ① 상기 부울리언 네트워크의 상태의 갱신규칙인 제1갱신규칙 및 ② 상기 부울리언 네트워크의 기준상태를 기초로 상기 부울리언 네트워크의 직전상태를 계산하는 상태 역추적 단계로서, 상기 기준상태는 기준시점에서의 상기 부울리언 네트워크의 상태로 정의되며, 상기 직전상태는 상기 기준시점의 바로 이전의 시점인 직전시점에서의 상기 부울리언 네트워크의 상태로 정의되는, 상기 상태 역추적 단계
    를 포함하며,
    상기 컴퓨팅 장치가, 상기 계산된 직전상태들 각각에 대하여, 상기 기준상태를 상기 계산된 직전상태로 갱신한 후 상기 상태 역추적 단계를 반복함으로써, 상기 제1끌개가 포함된 제1끌개유역의 모든 상태를 결정하는 것을 특징으로 하는,
    부울리언 네트워크의 제어노드 결정방법.
  12. 제11항에 있어서,
    상기 계산된 직전상태들 중 터미널 상태인 것으로 결정된 것들에 대해서는, 상기 기준시점에서의 상기 부울리언 네트워크의 상태로서의 자격을 부여하지 않으며, 그리고 상기 상태 역추적 단계를 반복하지 않도록 되어 있으며,
    상기 터미널 상태는, 상기 터미널 상태가 포함된 상태천이경로 상에서 그 이전의 상태가 존재하지 않는 상태인 것을 특징으로 하는,
    부울리언 네트워크의 제어노드 결정방법.
  13. 제11항에 있어서,
    상기 부울리언 네트워크는 제1 부울리언 네트워크로부터 대칭노드가 제거된 것이며,
    상기 부울리언 네트워크의 제1끌개는 상기 제1 부울리언 네트워크의 특정 끌개에서 상기 제거된 대칭노드의 값이 제거된 것을 특징으로 하는,
    부울리언 네트워크의 제어노드 결정방법.
  14. 유선 또는 무선으로 외부 장치와 통신하는 통신 인터페이스 및 처리부를 포함하는 컴퓨팅 장치로서,
    상기 처리부는,
    상기 통신 인터페이스를 통해 상기 외부 장치로부터 부울리언 네트워크의 구조에 관한 정보, 상기 부울리언 네트워크의 초기상태에 관한 정보, 상기 부울리언 네트워크의 끌개들 중 상기 초기상태가 포함되지 않은 원하는 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하도록 되어 있고,
    상기 초기상태로부터 상기 제1끌개유역의 바운더리 상태를 결정하도록 되어 있고, 그리고
    상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태를 서로 비교하였을 때에 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하도록 되어 있으며,
    상기 부울리언 네트워크는 세포의 동역학 시스템을 모델링한 생체분자 신호전달 네트워크를 모델링 한 것이며, 상기 부울리언 네트워크의 각 노드는 상기 생체분자 신호전달 네트워크의 각 분자에 대응하고,
    상기 제어노드는 상기 생체분자 신호전달 네트워크를 원하는 상태로 변화시키기 위해 섭동하는 제어목표가 되는 노드이며,
    상기 초기상태는 상기 세포가 암세포인 상태이고, 상기 원하는 상태는 세포 사멸 상태이고,
    상기 제1끌개유역은 상기 부울리언 네트워크가 가질 수 있는 상태들 중 소정의 제1끌개로 향하는 모든 상태천이경로에 포함되는 모든 상태들로 이루어진 집합이며, 그리고
    상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태인 것을 특징으로 하는,
    컴퓨팅 장치.
  15. 유선 또는 무선으로 외부 장치와 통신하는 통신 인터페이스 및 처리부를 포함하는 컴퓨팅 장치의 상기 처리부로 하여금,
    상기 통신 인터페이스를 통해 상기 외부 장치로부터 부울리언 네트워크의 구조에 관한 정보, 상기 부울리언 네트워크의 초기상태에 관한 정보, 상기 부울리언 네트워크의 끌개들 중 상기 초기상태가 포함되지 않은 원하는 제1끌개유역에 속한 제1끌개에 관한 정보를 획득하는 단계;
    상기 초기상태로부터 상기 제1끌개유역의 바운더리 상태를 결정하는 단계; 및
    상기 부울리언 네트워크의 노드들 중 상기 바운더리 상태와 상기 초기상태를 서로 비교하였을 때에 서로 다른 상태를 갖는 노드들을 제어노드로서 결정하는 단계
    를 실행하도록 하는 프로그램이 기록되어 있는 컴퓨터 판독 가능한 논트랜지토리 저장장치로서,
    상기 부울리언 네트워크는 세포의 동역학 시스템을 모델링한 생체분자 신호전달 네트워크를 모델링 한 것이며, 상기 부울리언 네트워크의 각 노드는 상기 생체분자 신호전달 네트워크의 각 분자에 대응하고,
    상기 제어노드는 상기 생체분자 신호전달 네트워크를 원하는 상태로 변화시키기 위해 섭동하는 제어목표가 되는 노드이며,
    상기 초기상태는 상기 세포가 암세포인 상태이고, 상기 원하는 상태는 세포 사멸 상태이고,
    상기 제1끌개유역은 상기 부울리언 네트워크가 가질 수 있는 상태들 중 소정의 제1끌개로 향하는 모든 상태천이경로에 포함되는 모든 상태들로 이루어진 집합이며, 그리고
    상기 바운더리 상태는, 상기 제1끌개유역에 속한 상태들 중, 상기 초기상태와 상기 제1끌개유역에 속한 각각의 상태들 간의 해밍거리들 중 최소해밍거리를 갖는 상태인 것을 특징으로 하는,
    컴퓨터 판독 가능한 논트랜지토리 저장장치.
KR1020190101194A 2019-08-19 2019-08-19 최소한의 일시적 섭동을 사용해 부울리언 네트워크의 임의의 상태를 원하는 끌개의 끌개유역 경계 상태로 천이시키는 제어방법 KR102452629B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190101194A KR102452629B1 (ko) 2019-08-19 2019-08-19 최소한의 일시적 섭동을 사용해 부울리언 네트워크의 임의의 상태를 원하는 끌개의 끌개유역 경계 상태로 천이시키는 제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190101194A KR102452629B1 (ko) 2019-08-19 2019-08-19 최소한의 일시적 섭동을 사용해 부울리언 네트워크의 임의의 상태를 원하는 끌개의 끌개유역 경계 상태로 천이시키는 제어방법

Publications (2)

Publication Number Publication Date
KR20210021790A KR20210021790A (ko) 2021-03-02
KR102452629B1 true KR102452629B1 (ko) 2022-10-11

Family

ID=75169633

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190101194A KR102452629B1 (ko) 2019-08-19 2019-08-19 최소한의 일시적 섭동을 사용해 부울리언 네트워크의 임의의 상태를 원하는 끌개의 끌개유역 경계 상태로 천이시키는 제어방법

Country Status (1)

Country Link
KR (1) KR102452629B1 (ko)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101483789B1 (ko) * 2012-09-05 2015-01-19 한국과학기술원 네트워크 특성 분석방법 및 이를 위한 저장매체와 장치
KR20170002060A (ko) * 2015-06-29 2017-01-06 삼성전자주식회사 표적 치료제의 표적 단백질 탐색 방법 및 장치
KR102029297B1 (ko) * 2017-04-11 2019-10-07 한국과학기술원 환자 맞춤형 치료를 위한 최적의 표적 항암 치료제 동정 플랫폼
KR102196064B1 (ko) * 2017-12-27 2020-12-29 한국과학기술원 네트워크의 구조만을 이용한 복잡한 신호전달네트워크의 신호흐름을 추정하는 방법 및 이를 위한 장치

Also Published As

Publication number Publication date
KR20210021790A (ko) 2021-03-02

Similar Documents

Publication Publication Date Title
Wang et al. Reinforcement learning to play an optimal Nash equilibrium in team Markov games
Zou et al. Solving multiobjective optimization problems using artificial bee colony algorithm
Bhatele et al. Identifying the culprits behind network congestion
US20140003228A1 (en) Optimizations in Multi-Destination Tree Calculations for Layer 2 Link State Protocols
CN110288199A (zh) 产品质量预测的方法
Yao et al. Structural controllability of temporal networks with a single switching controller
WO2019014894A1 (zh) 网络链路预测方法及装置
Zhu et al. Multi-scenario optimization using multi-criterion methods: A case study on byzantine agreement problem
JP6325762B1 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
Lung et al. A new evolutionary approach to minimax problems
Xie et al. How to stop consensus algorithms, locally?
KR102452629B1 (ko) 최소한의 일시적 섭동을 사용해 부울리언 네트워크의 임의의 상태를 원하는 끌개의 끌개유역 경계 상태로 천이시키는 제어방법
Khan Assessing different crossover operators for travelling salesman problem
Soriano-Sánchez et al. Smart pattern to generate small–world networks
KR102452630B1 (ko) 네트워크의 구조와 끌개유역 정보로부터 거리 비교의 복잡도를 최소화하면서 경계 상태를 찾는 최적의 방법
KR102320718B1 (ko) 부울리언 네트워크의 특정 끌개유역에 포함되는 모든 상태들을 결정하는 방법
Csar et al. Computing the Schulze Method for Large-Scale Preference Data Sets.
CN109347680B (zh) 一种网络拓扑重构方法、装置及终端设备
Volna et al. A Comparative Study To Evolutionary Algorithms.
Sagawa et al. Evolutionary multiobjective optimization including practically desirable solutions
Xu et al. MEA‐CNDP: A Membrane Evolutionary Algorithm for Solving Biobjective Critical Node Detection Problem
Cervantes et al. Toward self-adaptive ecosystems of services in dynamic environments
CN111866078A (zh) 一种动态异构p2p网络的组网方法及***
Abdou et al. Trade-off between diversity and convergence in multi-objective genetic algorithms
CN117811992B (zh) 一种网络不良信息传播抑制方法、装置、设备及存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant